a
    ze                     @   sT   d Z ddlZddlmZ g dZdd Zdd Zdd	 Zd
d Z	dd Z
dd ZdS )a  
'''
///////////////////////////////////////
3D LiDAR Object Detection - ADAS
Pranav Durai
//////////////////////////////////////
'''
# Description: some utilities of torch (conversion)
-----------------------------------------------------------------------------------
    N)convert2cpuconvert2cpu_longto_cpureduce_tensorto_python_float_sigmoidc                 C   s   t |  | S N)torchFloatTensorsizecopy_Z
gpu_matrix r   H/home/opencvuniv/work/pranav/ADAS_2_LIDAR/SFA3D/sfa/utils/torch_utils.pyr      s    r   c                 C   s   t |  | S r   )r	   
LongTensorr   r   r   r   r   r   r      s    r   c                 C   s   |    S r   )detachcpu)tensorr   r   r   r      s    r   c                 C   s&   |   }tj|tjjd || }|S )N)op)clonedist
all_reduce	reduce_opSUM)r   
world_sizertr   r   r   r      s    r   c                 C   s   t | dr|  S | d S d S )Nitemr   )hasattrr   )tr   r   r   r   %   s    
r   c                 C   s   t j|  dddS )Ng-C6?gH.?)minmax)r	   clampsigmoid_)xr   r   r   r   ,   s    r   )__doc__r	   torch.distributeddistributedr   __all__r   r   r   r   r   r   r   r   r   r   <module>   s   