o
    h                     @   sV   d dl mZ d dlmZ d dlmZmZ d dlmZ	 ddl
mZ G dd dejZd	S )
    )OrderedDict)Optional)nnTensor)
functional   )_log_api_usage_oncec                	       sZ   e Zd ZdgZddejdejdeej ddf fddZdede	e
ef fd	d
Z  ZS )_SimpleSegmentationModelaux_classifierNbackbone
classifierreturnc                    s(   t    t|  || _|| _|| _d S N)super__init__r   r   r   r
   )selfr   r   r
   	__class__ l/home/www/facesmatcher.com/frenv_anti/lib/python3.10/site-packages/torchvision/models/segmentation/_utils.pyr      s
   

z!_SimpleSegmentationModel.__init__xc                 C   s   |j dd  }| |}t }|d }| |}tj||ddd}||d< | jd ur@|d }| |}tj||ddd}||d< |S )NoutZbilinearF)sizemodeZalign_cornersZaux)shaper   r   r   FZinterpolater
   )r   r   Zinput_shapefeaturesresultr   r   r   forward   s   



z _SimpleSegmentationModel.forwardr   )__name__
__module____qualname__Z__constants__r   Moduler   r   r   dictstrr   __classcell__r   r   r   r   r	   
   s    *"r	   N)collectionsr   typingr   Ztorchr   r   Ztorch.nnr   r   utilsr   r#   r	   r   r   r   r   <module>   s    