o
    ߥi                     @   s   d dl mZ d dlmZmZ d dlZd dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZmZ ejejejdG d	d
 d
e
ZdS )    N)AnyDict)Models)
TorchModel)MODELS)RDE_VOS)	ModelFileTasks)module_namec                       s8   e Zd Zdef fddZdeeef fddZ  ZS )VideoObjectSegmentation	model_dirc                    s\   t  j|g|R i | t|tj}tj|dd}t | _	| j	j
|dd | j	  d S )Ncpu)map_locationT)strict)super__init__ospjoinr   TORCH_MODEL_FILEtorchloadr   modelload_state_dicteval)selfr   argskwargs
model_pathparams	__class__ h/home/ubuntu/.local/lib/python3.10/site-packages/modelscope/models/cv/video_object_segmentation/model.pyr      s   z VideoObjectSegmentation.__init__inputsc                 C   s
   |  |S )N)r   )r   r#   r!   r!   r"   forward   s   
zVideoObjectSegmentation.forward)	__name__
__module____qualname__strr   r   r   r$   __classcell__r!   r!   r   r"   r      s    r   )os.pathpathr   typingr   r   r   modelscope.metainfor   modelscope.models.baser   modelscope.models.builderr   ;modelscope.models.cv.video_object_segmentation.eval_networkr   modelscope.utils.constantr   r	   register_modulevideo_object_segmentationr   r!   r!   r!   r"   <module>   s   