CoolFace
Apppublic

Aluode/PerceptionLabPortable

sourceHugging Faceupdated 9mo agoView on Hugging Face
0likes
SpiderImagePlugin.cpython-310.pyc73 linesDownload Raw Back to __pycache__
1o

2��Yi�)�@sddlmZddlZddlZddlZddlmZmZmZddl	m3Z4mZddlm
Z
dZd8dd
�Zgd�Zd9dd�Zd:dd�ZGdd�dej�Zd;d<dd�Zd=d!d"�Zd>d'd(�Zd>d)d*�Ze5�eje�e6�eje�ed+k�reej�d,kred-�e��ejdZ ee �s�ed.�e��e7�!e ��eZ"ed/e"���ed0e"j���ed1e"j#���ed2e"j$���ed3d4d5�ee"�%��eej�d,kr�ejd,Z&e"�'e8j(j)�Z*ed6ej+�,e ��d7e&�d4��e*�-e&ej�Wd�dSWd�dS1s�wYdSdS)?�)�annotationsN)�IO�Any�cast�)�Image�	ImageFile)�
DeferredErrorF�fr�return�intc	Cs:zt|�}||dkrWdSWdSttfyYdSw)Nrr)r�9ValueError�
OverflowError)r10�i�r�E:\DocsHouse\542 percep lab latest\PerceptionLab\PerceptionLab_Portable\python_embed\Lib\site-packages\PIL/SpiderImagePlugin.py�isInt0s�r)r�i����i����i����i�����t�tuple[float, ...]cCstd|}dD]}t||�sdSqt|d�}|tvrdSt|d�}t|d�}t|d�}|||kr8dS|S)N��c)r����
��rrrrr)rr�iforms)r�hr�iform�labrec�labbyt�lenbytrrr�isSpiderHeaderDs�r$�filename�strcCsht|d��
}|�d�}Wd�n1swYt�d|�}t|�}|dkr2t�d|�}t|�}|S)N�rb�\z>23frz<23f)�open�read�struct�unpackr$)r%�fpr11r�hdrlenrrr�
isSpiderImageXs�r/c@sxeZdZdZdZdZddd�Zedd	d12��Zed dd
��Z	ddd�Z13d!dd�Zd"d#dd�Ze
r5ddlmZd$dd�ZdS)%�SpiderImageFileZSPIDERzSpider 2D imageFr�Nonec1415Cs�d}|jdus	J�|j�|�}z*d|_t�d|�}t|�}|dkr.d|_t�d|�}t|�}|dkr8d}t|��WntjyM}zd}t|�|�d}~wwd|}t|d�}|dkrbd	}t|��t|d16�t|d�f|_	t|d�|_17t|d
�|_|j18dkr�|jdkr�|}	d|_nD|j19dkr�|jdkr�t|d20�t|d�d|_
||_t|d�|_|d}	d|_n|j21dkr�|jdkr�||j}	d|_22nd}t|��|jr�d|_nd|_d|_t�dd|j|	|j�g|_|j|_dS)N�lrz>27frz<27fznot a valid Spider filerrznot a Spider 2D imagerr����z inconsistent stack header valueszF;32BFzF;32F�F�raw�rr)r-r*Z	bigendianr+r,r$�SyntaxError�errorr�_size�istack�	imgnumber�_nimages�imgbytesr.�	stkoffset�rawmode�_moder�_Tile�sizeZtile�_fp)23�self�nr24rr.�msg�err �offsetrrr�_openhs`�25��26zSpiderImageFile._openrcCs|jS�N�r?�rGrrr�n_frames�szSpiderImageFile.n_frames�boolcCs27|jdkS�NrrNrOrrr�is_animated�s28zSpiderImageFile.is_animatedcCs|jdkrdS|jdS)Nrr)r>rOrrr�tell�s2930zSpiderImageFile.tell�framecCsr|jdkrd}t|��|�|�sdSt|jt�r|jj�|j||j|j|_	|j|_31|j32�|j	�|��dS)Nrz#attempt to seek in a non-stack file)
r=�EOFErrorZ_seek_check�33isinstancerFr	�exr.r@rAr-�seekrL)rGrUrIrrrrY�s3435zSpiderImageFile.seek���depth�Image.Imagecsl|��}t|dt�s
J�ttttf|�\}}d�||kr$|||��|�|���fdd���d�S)Nrrcs|��SrMr)r��b�mrr�<lambda>�sz.SpiderImageFile.convert2byte.<locals>.<lambda>�L)�36getextremarW�floatr�tuple�point�convert)rGr[Zextrema�minimum�maximumrr]r�convert2byte�s37zSpiderImageFile.convert2byter��ImageTk�ImageTk.PhotoImagecCsddlm}|j|��dd�S)Nrrj�)�palette)�rkZ38PhotoImageri)rGrkrrr�tkPhotoImage�szSpiderImageFile.tkPhotoImageN)rr1)rr)rrQ)rUrrr1)rZ)r[rrr\)rrl)�__name__�39__module__�__qualname__�format�format_descriptionZ!_close_exclusive_fp_after_loadingrL�propertyrPrSrTrYri�
TYPE_CHECKINGrorkrprrrrr0cs40<414243r0�filelist�list[str] | None�list[Image.Image] | Nonec	Cs�|dus44t|�dkrdSg}|D]Q}tj�|�s td|���qz"t�|��}t|t�s.J�|�	�}Wd�n1s<wYWnt45yVt|�sTt|�d��Yqw||jd<|�
|�q|S)zJcreate a list of :py:class:`~PIL.Image.Image` objects for use in a montageNrzunable to find z is not a Spider image filer%)�len�os�path�exists�printrr)rWr0ri�	Exceptionr/�info�append)rxZ	byte_imgsZimg�imZbyte_imrrr�loadImageSeries�s*46���47r�r�r\�list[bytes]cCs�|j\}}|d}td|�}d|dkr|d7}||}t|d�}|dkr)gSdg|}d|d<t|�|d<t|�|d	<d|d48<t|�|d<t|�|d<t|�|d
<t|�|d<|dd�}|�d�dd�|D�S)Nr5irrrgg�?rrrrrrcSsg|]}t�d|��qS)r49)r+�pack)�.0�vrrr�50<listcomp>sz$makeSpiderHeader.<locals>.<listcomp>)rErrcr�)r�ZnsamZnrowr#r!r"Znvalues�hdrrrr�makeSpiderHeader�s*515253r�r-�	IO[bytes]�str | bytesr1c54Csh|jdkr55|�d�}t|�}t|�dkrd}t|��|�|�d}t�||t�dd|j	d|�g�dS)Nr7rmzError creating Spider headerzF;32NFr8r9r)56�moderfr�r{�OSError�57writelinesr�_saverDrE)r�r-r%r�rIrBrrrr�s585960&r�cCsDtj�|�d}t|t�r|��n|}t�tj	|�t61|||�dSrR)r|r}�splitextrW�bytes�decoderZregister_extensionr0rtr�)r�r-r%Zfilename_ext�extrrr�_save_spider#sr��__main__rz7Syntax: python3 SpiderImagePlugin.py [infile] [outfile]z$input image must be in Spider formatzimage: zformat: zsize: zmode: z62max, min: � )�endzsaving a flipped version of z as )r63rrr)rrrr)r%r&rrrM)rxryrrz)r�r\rr�)r�r\r-r�r%r�rr1).�64__future__rr|r+�sys�typingrrrrorrZ_utilr	rwrrr$r/r0r�r�r�r�Z
register_openrtZ
register_saverqr{�argvr�exitr%r)r�rEr�rb�outfileZ	transposeZ	TransposeZFLIP_LEFT_RIGHTZ
transposed_imr}�basename�saverrrr�<module>s^"6566	67w686970717273���"��
Aluode/PerceptionLabPortable · CoolFace