a
    Nc                     @   s   d dl T d dlZd dlZd dlZd dlmZ d dlmZ d dlZ	d dl
mZ d dlmZ d dlmZ d dlZejejdZd	d
 ZdS )    )*N)keras)
device_lib)Image)pyplot)settingsz;MachineLearningModels/odLeaves_transferlearning_50epochs.ptc              
      s<  t jjddtd}| jj}||}|  t| t	dD ]}d| d}g }t	|D ]}tj
||}t|}tj
tjd}	dd	lm   fd
d}
d}d}|}|  tjjj|	d|
id}|||f}tj|dd}|d }t|d||df}||}|d d  }|| q\d}d}|D ]"}|dk r4d}||k r4|}q4d| }|dkrz8tjj| j| j d}|j!|k r||_!d|_"|#  W n. tj$y   tjj%| j| j |dd Y n0 nHztjj| j| j d}W n. tj$y   tjj%| j| j ddd Y n0 t&'d| d | (  q<d S )Nzultralytics/yolov5Zcustom)pathzruns/detectzruns/detect/z/crops/leafzHMachineLearningModels/applescabdls_advanced_tuned_mobilenetv2_adam_20.h5r   )backendc                    s    j | ddS )N   )	max_value)Zrelu)xK @/var/www/html/django/DPS/api/scabDetection/scabDetectionModel.pyrelu6*   s    z!scabDetectionModel.<locals>.relu6      r   )Zcustom_objectsZint32)Zdtypeg     o@   Fg
ףp=
?T)tree_id
mission_id)r   r   probability_scabhas_scab/))torchZhubload	leafModel	image_urir   Zcropprintoslistdirjoinr   openr   STATIC_ROOTZtensorflow.kerasr	   tfr   modelsZ
load_modelresizenpZasarrayZreshapeZpredictitemappend	TreeStateobjectsgetr   r   r   r   saveDoesNotExistcreateshutilrmtreedelete)photomodelimgresultsZfolder	directoryZprobabilitiesitems	file_pathscabDetectionModelr   Z
image_sizeZimage_channelsZscabdatanumberZhasScabZlowestProbabilityZprobabilityr   stater   r   r   r:      sb    




 r:   )gardens.modelsr   r   Z
tensorflowr$   r   Ztensorflow.python.clientr   Znumpyr'   PILr   Z
matplotlibr   Zpltdjango.confr   r0   r   r!   r#   r   r:   r   r   r   r   <module>   s   