
    
Ng4                    J    d dl mZ d dlZd dlZd dlmZ  G d de          ZdS )    )annotationsN)OpRunc                      e Zd Zdd	dZdS )
ImageDecoderRGBencoded
np.ndarrayreturntuple[np.ndarray]c                   	 dd l }n"# t          $ r}t          d          |d }~ww xY w|j                            t	          j        |                                                    }|dk    r%t          j        |          d d d d d d df         }nt|dk    rt          j        |          }nY|dk    r@|	                    d          }t          j        |          }t          j
        |d	          }nt          d
|d          |fS )Nr   zYPillow must be installed to use the reference implementation of the ImageDecoder operatorBGRr   	GrayscaleL   )axiszpixel_format=z is not supported.)	PIL.ImageImportErrorImageopenioBytesIOtobytesnparrayconvertexpand_dims
ValueError)selfr   pixel_formatPILeimgdecodeds          _/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/reference/ops/op_image_decoder.py_runzImageDecoder._run   s$   	 	 	 	k 	 innRZ(9(9::;;5  hsmmAAAqqq$$B$J/GGU""hsmmGG[((++c""ChsmmGnW1555GGO\OOOPPPzs    
&!&N)r   )r   r	   r
   r   )__name__
__module____qualname__r&        r%   r   r      s-              r+   r   )
__future__r   r   numpyr   onnx.reference.op_runr   r   r*   r+   r%   <module>r/      st   
 # " " " " " 				     ' ' ' ' ' '    5     r+   