[190ca4]: / __pycache__ / val.cpython-311.pyc

Download this file

164 lines (161 with data), 29.6 kB

§

¢—eÜPãóø—dZddlZddlZddlZddlZddlZddlmZddlZ	ddl
Z
ddlmZee¦« 
¦«ZejdZee¦«ejvr#ej ee¦«¦«eej eej¦«¦«¦«ZddlmZddlmZddlmZddlmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+dd	l,m-Z-m.Z.m/Z/dd
l0m1Z1m2Z2m3Z3ddl4m5Z5m6Z6d„Z7d
„Z8d„Z9e6¦«ddddddddddddddddedzdddddded¦«de¦«dfd„¦«Z:d„Z;d„Z<e=dkre;¦«Z>e<e>¦«dSdS)aç
Validate a trained YOLOv5 detection model on a detection dataset

Usage:
    $ python val.py --weights yolov5s.pt --data coco128.yaml --img 640

Usage - formats:
    $ python val.py --weights yolov5s.pt                 # PyTorch
                              yolov5s.torchscript        # TorchScript
                              yolov5s.onnx               # ONNX Runtime or OpenCV DNN with --dnn
                              yolov5s_openvino_model     # OpenVINO
                              yolov5s.engine             # TensorRT
                              yolov5s.mlmodel            # CoreML (macOS-only)
                              yolov5s_saved_model        # TensorFlow SavedModel
                              yolov5s.pb                 # TensorFlow GraphDef
                              yolov5s.tflite             # TensorFlow Lite
                              yolov5s_edgetpu.tflite     # TensorFlow Edge TPU
                              yolov5s_paddle_model       # PaddlePaddle
éN)ÚPath)Útqdm)ÚDetectMultiBackend)Ú	Callbacks)Úcreate_dataloader)ÚLOGGERÚTQDM_BAR_FORMATÚProfileÚ
check_datasetÚcheck_img_sizeÚcheck_requirementsÚ
check_yamlÚcoco80_to_coco91_classÚcolorstrÚincrement_pathÚnon_max_suppressionÚ
print_argsÚscale_boxesÚ	xywh2xyxyÚ	xyxy2xywh)ÚConfusionMatrixÚap_per_classÚbox_iou)Úoutput_to_targetÚplot_imagesÚplot_val_study)Ú
select_deviceÚsmart_inference_modecó—tj|¦«gd¢}| ¦«D]ؐ^}}}ttj|¦« dd¦«¦«|z d¦« ¦«}|r|g|¢|‘Rn|g|¢R}	t|d¦«5}
|
 dt|	¦«z ¦«|	zdz¦«ddd¦«n#1swxYwYŒÙdS)N)érr rr ééÿÿÿÿÚaz%g ú
)	ÚtorchÚtensorÚtolistrÚviewÚopenÚwriteÚlenÚrstrip)ÚprednÚ	save_confÚshapeÚfileÚgnÚxyxyÚconfÚclsÚxywhÚlineÚfs           ú2/home/iml/Desktop/Talha/YOLOV5_Model/yolov5/val.pyÚsave_one_txtr92sW€å	ŒeÑ	Ô	˜\˜\˜\Ô	*€BØ!ŸLšL™NœNð@ð@шˆtSݝ%œ, tÑ,Ô,×1Ò1°!°QÑ7Ô7Ñ8Ô8¸2Ñ=×CÒCÀBÑGÔG×NÒNÑPÔPˆØ%.Ð@Ð!dÐ!˜DÐ!Ð!Ð!°S°L¸4°L°LˆÝ
$˜‰_Œ_ð	@ Ø
GŠGUS ™YœYÑ&×.Ò.Ñ0Ô0°4Ñ7¸$Ñ>Ñ?Ô?Ð?ð	@ð	@ð	@ñ	@ô	@ð	@ð	@ð	@ð	@ð	@ð	@øøøð	@ð	@ð	@ð	@øð@ð@sÂ4>C>Ã>D	ÄD	c
ó—|j ¦«rt|j¦«n|j}t|dd…dd…f¦«}|dd…dd…fxx|dd…dd…fdzzcc<t	| ¦«| ¦«¦«D]V\}}| ||t|d¦«d„|D¦«t|dd¦«dœ¦«ŒWdS)Nr!éécó.—g|]}t|d¦«‘ŒS)é)Úround©Ú.0Úxs  r8ú
<listcomp>z!save_one_json.<locals>.<listcomp>Es €Ð,Ð,Ð, Q•U˜1˜a‘[”[Ð,Ð,Ð,ó)Úimage_idÚcategory_idÚbboxÚscore)ÚstemÚ	isnumericÚintrÚzipr'Úappendr?)r-ÚjdictÚpathÚ	class_maprEÚboxÚpÚbs        r8Ú
save_one_jsonrT<s€à!%¤×!4Ò!4Ñ!6Ô!6ÐEs4”9‰~Œ~ˆ~¸D¼I€HÝ
E˜!˜!˜!˜R˜a˜R˜%”LÑ
!Ô
!€C؈ˆˆˆ2ˆAˆ2ˆ€J€J„J#aaa˜˜˜e”*˜q‘.Ñ €J€JJݐE—L’L‘N”N C§J¢J¡L¤LÑ1Ô1ð&ð&‰ˆˆ1Ø
ŠØ Ø$¥S¨¨1¬¡Y¤YÔ/Ø,Ð,¨!Ð,Ñ,Ô,ݘ1˜Qœ4 ‘^”^ð	%ð%ñ	&ô	&ð	&ð	&ð&ð&rDcól—tj|jd|jdf¦« t¦«}t|dd…dd…f|dd…dd…f¦«}|dd…dd…f|dd…dfk}t
t|¦«¦«D]i}tj	|||k|z¦«}|djdr1tj
tj|d¦«||d|dfdd…dffd¦« ¦« 
¦«}|djddkr…||dd…df ¦«ddd…}|tj|dd…dfd¬	¦«d}|tj|dd…dfd¬	¦«d}d||dd…df t ¦«|f<Œktj|tj|j¬
¦«S)zì
    Return correct prediction matrix.

    Arguments:
        detections (array[N, 6]), x1, y1, x2, y2, conf, class
        labels (array[M, 5]), class, x1, y1, x2, y2
    Returns:
        correct (array[N, 10]), for 10 IoU levels
    rNr r!r<r;r"T)Úreturn_index©ÚdtypeÚdevice)ÚnpÚzerosr/ÚastypeÚboolrÚranger+r%ÚwhereÚcatÚstackÚcpuÚnumpyÚargsortÚuniquerKr&rY)	Ú
detectionsÚlabelsÚiouvÚcorrectÚiouÚ
correct_classÚirBÚmatchess	         r8Ú
process_batchrnIs€õŒh˜
Ô(¨Ô+¨T¬Z¸¬]Ð;Ñ<Ô<×CÒCÅDÑIÔI€GÝ
&˜˜˜˜A˜B˜B˜”- ¨A¨A¨A¨r°¨r¨EÔ!2Ñ
3Ô
3€Cؘ1˜1˜1˜a ˜c˜6”N j°°°°A°Ô&6Ò6€MÝ
•3t‘9”9Ñ
Ô
ð	9ñ	9ˆÝŒK˜  Q¤š¨=Ñ8Ñ9Ô9ˆØˆQŒ4Œ:aŒ=ñ	9Ý”i¥¤¨Q°Ñ!2Ô!2°C¸¸!¼¸aÀ¼d¸
´OÀAÀAÀAÀtÀGÔ4LÐ MÈqÑQÔQ×UÒUÑWÔW×]Ò]Ñ_Ô_ˆGؐŒtŒz˜!Œ}˜qÒ Ð Ø! '¨!¨!¨!¨Q¨$¤-×"7Ò"7Ñ"9Ô"9¸$¸$¸B¸$Ô"?Ô@Ø!¥"¤)¨G°A°A°A°q°D¬MÈÐ"MÑ"MÔ"MÈaÔ"PÔQà!¥"¤)¨G°A°A°A°q°D¬MÈÐ"MÑ"MÔ"MÈaÔ"PÔQØ48ˆGG˜A˜A˜A˜q˜D”M×(Ò(­Ñ-Ô-¨qÐ0Ñ1ùÝŒ<˜¥u¤z¸$¼+ÐFÑFÔFÐFrDé é€çü©ñÒMbP?ç333333ã?é,ÚvalÚéFúruns/valÚexpTcó<‡c‡d—|du}|rht| ¦«¦«jdddf\}}}}||jdkz}|r| ¦«n| ¦«nÜt
||¬¦«}tt|¦«|z|¬¦«}|
r|dzn| 	dd¬¦«t|||||¬¦«}|j|j|j
|jf\} }}}t|| ¬	¦«}|j}|r|j}n(|j}|s|sd
}t%jd|›d|›d
¦«t)|¦«}| ¦«|jdk}!t-| d¦«t0¦«o(|d dt4j›d¦«}"|
rd
nt9|d¦«}#t;jddd|¬¦«}$|$ ¦«}%|s’|r'|
s%|j j!}&|&|#ksJ|›d|&›d|#›d¦«‚| "|rd
n|d||f¬¦«|dkrdnd|f\}'}(|dvr|nd}tG||||| |
|'|(|	tI|›d¦«¬¦	«	d }d ŠctK|#¬!¦«})tM|d"¦«r|j'n|j(j'}*t-|*tRtTf¦«rtWtY|*¦«¦«}*|"rt[¦«ntSt]d#¦«¦«}+d$d%z},d&\
}-}.}/}0}1}2}3}4}5}6t_|¬¦«t_|¬¦«t_|¬¦«f}7t;j0d|¬¦«}8ggggf\}9}:};}<| 1d'¦«te||,tf¬(¦«}=tY|=¦«D]~\}>\}?Šd}@}A| 1d)¦«|7d 5|!r,|? 4|d¬*¦«}?‰d 4|¦«Šd|r|? ¦«n|? ¦«}?|?d+z}?|?j5\}B}C}D}Eddd¦«n#1swxYwY|7d
5|r||?¦«n||?|¬,¦«df\}F}Gddd¦«n#1swxYwY|r|8||G‰d¦«d
z
}8‰ddd…d-d…fxxt;j6|E|D|E|Df|¬¦«zcc<|rˆdfd.„t]|B¦«D¦«ng}H|7d-5to|F|||Hd|
|¬/¦«}Fddd¦«n#1swxYwYtY|F¦«D]‡\}I}J‰d‰ddd…d f|Ikd
d…f}K|Kj5d |Jj5d }M}Lt|@|I¦«|A|Id }O}Nt;j0|M|%t:j8|¬0¦«}P‰cd
z
Šc|Md kr_|Lr\|: 9|Pgt;j0d1|¬¦«¢|Kdd…d f‘R¦«|r!|) :d|Kdd…d f¬2¦«Œé|
r	d |Jdd…d3f<|J ;¦«}Qty|?|Ij5d
d…|Qdd…dd4…f|O|A|Id
¦«|Lr˜t{|Kdd…d
d3…f¦«}Rty|?|Ij5d
d…|R|O|A|Id
¦«t;j>|Kdd…d d
…f|Rfd
¦«}Stu|Q|S|$¦«}P|r|) :|Q|S¦«|: 9|P|Jdd…d4f|Jdd…d3f|Kdd…d ff¦«|
r;|dz 	dd¬¦«t|Q||O|dz|Nj@›d5z¬6¦«|rtƒ|Q|9|N|+¦«| 1d7|J|Q|N|*|?|I¦«Œ‰|rG|>dkrAt…|?‰d|@|d8|>›d9z|*¦«t…|?t‡|F¦«|@|d8|>›d:z|*¦«| 1d;|>|?‰d|@|A|F¦«Œ€d<„t‰|:ŽD¦«}:t‹|:¦«r¤|:d  F¦«rŠt|:|||*d=œŽ\}-}.}/}0}1};}<|;dd…d f|; Hd
¦«};}5|/ H¦«|0 H¦«|5 H¦«|; H¦«f\}2}3}4}6t“jJ|:d Kt8¦«|#¬>¦«}Td?}Ut%j|Ud@‰c|T L¦«|2|3|4|6fz¦«|T L¦«d krt%jMdA|›dB¦«|s|#dCkrn|sl|#d
krft‹|:¦«rWtY|<¦«D]G\}V}Wt%j|U|*|W‰c|T|W|/|V|0|V|5|V|;|Vfz¦«ŒHtUˆcfdD„|7D¦«¦«}X|s |d||f}Ot%jdE|O›|Xz¦«|rU|) N|tS|* O¦«¦«¬F¦«| 1dG|T|-|.|/|0|1|;|5|<|)¦«|rùt‹|9¦«ré|1tt-|tR¦«r|d n|¦«j@ndH}Yt1tdI¦«¦«}Zt4jP Q|Z¦«s't4jP R|dJdKdL¦«}Zt1||Y›dMz¦«}[t%jdN|[›dO¦«t§|[dP¦«5}\t©jU|9|\¦«ddd¦«n#1swxYwY	t­dQ¦«d dRlWmX}]d dSlYmZ}^|]|Z¦«}_|_ [|[¦«}J|^|_|JdT¦«}`|"r dU„|j\j]D¦«|`j^__|` `¦«|` a¦«|` b¦«|`jcdd-…\}6}4n.#tÈ$r!}at%jdV|a›¦«Yd}a~and}a~awwxYw| ¦«|sc|
r8dWt‹tS| edX¦«¦«¦«›dY|dz›ndH},t%jdZtId[|¦«›|,›¦«t“j0|#¦«|6z}btY|<¦«D]\}V}W|;|V|b|W<Œ|2|3|4|6g|8 f¦«t‹|¦«z g¦«¢R|b|XfS)\NTFrb)Ú
batch_size)Úexist_okrg)Úparentsr{)rYÚdnnÚdataÚfp16)Úsr z-Forcing --batch-size 1 square inference (1,3,ú,z) for non-PyTorch modelsrtÚcocozval2017.txtÚncgà?gffffffî?é
)rYz (z< classes) trained on different --data than what you passed (zV classes). Pass correct combination of --weights and --data that are trained together.r>)ÚimgszÚspeed)çF©ÚtrainrtÚtestz: )ÚpadÚrectÚworkersÚprefixr)rƒÚnamesièz%22s%11s%11s%11s%11s%11s%11s)ÚClassÚImagesÚ	InstancesÚPÚRÚmAP50zmAP50-95)
r‡r‡r‡r‡r‡r‡r‡r‡r‡r‡Úon_val_start)ÚdescÚ
bar_formatÚon_val_batch_start)Únon_blockingéÿ)Úaugmentr;cóD•—g|]}‰‰dd…df|kdd…f‘ŒS)Nrr ©)rArlÚtargetss  €r8rCzrun.<locals>.<listcomp>Ûs8ø€Ð
AÐ
AÐ
A°!ˆgg˜a˜a˜a ˜d”m qÒ(¨!¨"¨"Ð,Ô-Ð
AÐ
AÐ
ArD)rgÚmulti_labelÚagnosticÚmax_detrW)r;r)rfrgr<r!ú.txt)r0Úon_val_image_endÚ	val_batchz_labels.jpgz	_pred.jpgÚon_val_batch_endcó€—g|];}tj|d¦« ¦« ¦«‘Œ<S)r)r%r`rbrcr@s  r8rCzrun.<locals>.<listcomp>s:€Ð@Ð@Ð@¨qUŒYq˜!‰_Œ_×
 Ò
 Ñ
"Ô
"×
(Ò
(Ñ
*Ô
*Ð@Ð@Ð@rD)ÚplotÚsave_dirr)Ú	minlengthz$%22s%11i%11i%11.3g%11.3g%11.3g%11.3gÚallu"WARNING ⚠️ no labels found in z, set, can not compute metrics without labelsé2c3ó2•K—|]}|j‰zdzV—ŒdS)g@@N)Út)rArBÚseens  €r8ú	<genexpr>zrun.<locals>.<genexpr>'s.øèè€Ð
+Ð
+ 1ˆaŒcD‰j˜3ÑÐ
+Ð
+Ð
+Ð
+Ð
+Ð
+rDzKSpeed: %.1fms pre-process, %.1fms inference, %.1fms NMS per image at shape )r©rÚ
on_val_endruz3../datasets/coco/annotations/instances_val2017.jsonrOÚannotationszinstances_val2017.jsonz_predictions.jsonz&
Evaluating pycocotools mAP... saving ú...Úwzpycocotools>=2.0.6)ÚCOCO)ÚCOCOevalrGcóP—g|]#}tt|¦«j¦«‘Œ$Srž)rKrrIr@s  r8rCzrun.<locals>.<listcomp>Es(€Ð%]Ð%]Ð%]¸A¥c­$¨q©'¬'¬,Ñ&7Ô&7Ð%]Ð%]Ð%]rDzpycocotools unable to run: r$zlabels/*.txtz labels saved to zResults saved to Úbold)hÚnextÚ
parametersrYÚtypeÚhalfÚfloatrrrÚmkdirrÚstrideÚptÚjitÚenginerrrzrÚinforÚevalÚ
isinstanceÚgetÚstrÚendswithÚosÚseprKr%ÚlinspaceÚnumelÚmodelrƒÚwarmuprrrÚhasattrrÚmoduleÚlistÚtupleÚdictÚ	enumeraterr^r
r[Úrunrr	Útor/r&rr]rMrnÚclonerrr`r9rIrTrrrLr+ÚanyrÚmeanrZÚbincountr\ÚsumÚwarningr¨ÚvaluesrOÚexistsÚjoinr)ÚjsonÚdumpr
Úpycocotools.cocorµÚpycocotools.cocoevalr¶ÚloadResÚdatasetÚim_filesÚparamsÚimgIdsÚevaluateÚ
accumulateÚ	summarizeÚstatsÚ	ExceptionÚglobrbr')er~Úweightsrzr…Ú
conf_thresÚ	iou_thresr¢ÚtaskrYrÚ
single_clsrœÚverboseÚsave_txtÚsave_hybridr.Ú	save_jsonÚprojectÚnamer{r¼r}rÍÚ
dataloaderr©ÚplotsÚ	callbacksÚcompute_lossÚtrainingrÀrÁrÂr¿ÚcudaÚis_cocorƒrhÚniouÚncmr‹rŒÚconfusion_matrixrrPr€ÚtpÚfprRÚrÚf1ÚmpÚmrÚmap50Úap50ÚmapÚdtÚlossrNrìÚapÚap_classÚpbarÚbatch_iÚimÚpathsÚshapesÚnbÚ_ÚheightÚwidthÚpredsÚ	train_outÚlbÚsiÚpredrgÚnlÚnprrOr/rir-ÚtboxÚlabelsnÚntÚpfrlÚcr®r´Ú	anno_jsonÚ	pred_jsonr7rµr¶ÚannorÄÚeÚmapsr¯rŸse                                                                                                   @@r8rÕrÕcscøø€ð@˜DÐ €HØð#Ý"& u×'7Ò'7Ñ'9Ô'9Ñ":Ô":Ô"AÀ4ÈÐPUÐ"UшC˜Ø”˜uÒ$Ñ$ˆØÐ/ˆ
Š
‰Œˆ %§+¢+¡-¤-øøå˜v°*Ð=Ñ=Ô=ˆõ"¥$ w¡-¤-°$Ñ"6ÀÐJÑJÔJˆØ (Ð	6ˆHÑ	Ð	¨h×=Ò=ÀdÐUYÐ=ÑZÔZÐZõ# 7°6¸sÈÐTXÐYÑYÔYˆØ"'¤,°´¸%¼)ÀUÄ\Ð"QшC˜Ý˜u¨Ð/Ñ/Ô/ˆØŒzˆØð	uØÔ)ˆJˆJà”\ˆFØð
u˜#ð
uؐ
Ý”ÐsÈEÐsÐsÐTYÐsÐsÐsÑtÔtÐtõ˜TÑ"Ô"ˆð
‡J‚JL„L€LØŒ;˜%Ò€DݘŸš %™œ­#Ñ.Ô.Ðc°4¸´;×3GÒ3GÐHbÍrÌvÐHbÐHbÐHbÑ3cÔ3c€GØÐ	-ˆˆc $ t¤*™oœo€BÝŒ>˜#˜t R°Ð7Ñ7Ô7€D؏:Š:‰<Œ<€DððHØ
ð	wjð	wØ”+”.ˆCؘ"’999 ðwðw¨CðwðwÐmoðwðwðw‘9”99à
Š Ð3˜A˜A¨°Q¸¸uÐEˆÑFÔFÐFØ$(¨G¢O OLL¸#¸r¸‰	ˆˆTØÐ7Ð7Ð7ˆtˆt¸UˆÝ& t¨D¤zØ',Ø'1Ø'-Ø'1Ø+.Ø,0Ø/6Ý.6¸$°{°{°{Ñ.CÔ.CðEñEôEðFGôHˆ
ð
€DÝ&¨"Ð-Ñ-Ô-ÐÝ" 5¨'Ñ2Ô2ÐJˆEŒKˆK¸¼Ô8J€Eݐ%$¥˜Ñ'Ô'ð'Ý•Y˜uÑ%Ô%Ñ&Ô&ˆØ,3ÐJÕ&Ñ(Ô(Ð(½½eÀD¹k¼kÑ9JÔ9J€IØ	Ð _Ñ_€AØ1aÑ.€BˆˆAˆq"b˜"˜e T¨3Ý	˜Ð	Ñ	Ô	¥°Ð!7Ñ!7Ô!7½ÈÐ9OÑ9OÔ9OÐ	O€BÝŒ;q Ð(Ñ(Ô(€DØ!# R¨¨R Ñ€Eˆ5"hØ
‡M‚M.Ñ!Ô!Ð!ݐ
 ­Ð?Ñ?Ô?€DÝ1:¸4±´ðJVñJVÑ-ˆÑ-"g˜u f؏
Š
Ð*Ñ+Ô+Ð+Ø
ŒUð	,ð	,Øð
-Ø—U’U˜6°UÑ5Ô5Ø!Ÿ*š* VÑ,Ô,Ø"Ð2—’‘”¨¯ª©
¬
ˆBØ#‰IˆBØ#%¤8Ñ ˆB6˜5ð
	,ð	,ð	,ñ	,ô	,ð	,ð	,ð	,ð	,ð	,ð	,øøøð	,ð	,ð	,ð	,ðŒUð	að	aØ,8Ð`˜u˜u R™yœy˜y¸u¸uÀRÐQXÐ?YÑ?YÔ?YÐ[_Ð>`ÑˆE9ð	að	að	añ	aô	að	að	að	að	að	að	aøøøð	að	að	að	aðð	8ØLL ¨GÑ4Ô4°QÔ7Ñ7ˆDð	122ˆˆŒ%œ,¨¨v°u¸fÐ'EÈfÐUÑUÔUÑUˆˆ‰ØEPÐ
XÐ
AÐ
AÐ
AÐ
Aµu¸R±y´yÐ
AÑ
AÔ
AÐ
AÐVXˆØ
ŒUð	9ð	9Ý'¨Ø(2Ø(1Ø/1Ø48Ø1;Ø07ð
9ñ9ô9ˆEð	9ð	9ð	9ñ	9ô	9ð	9ð	9ð	9ð	9ð	9ð	9øøøð	9ð	9ð	9ð	9õ" %Ñ(Ô(ð$	Pñ$	P‰HˆBØ˜W Q Q Q¨ Tœ]¨bÒ0°!°"°"Ð4Ô5ˆFØ”l 1”o t¤z°!¤}ˆBݘu Rœy™/œ/¨6°"¬:°a¬=%ˆDÝ”k # tµ5´:ÀfÐMÑMÔMˆGØA‰IˆDàaŠxˆxØð]Ø—L’L 'Ð!]­E¬K¸ÀvÐ,NÑ,NÔ,NÐ!]ÐPVÐWXÐWXÐWXÐZ[ÐW[ÔP\Ð!]Ð!]Ñ^Ô^Ð^Øð]Ø(×6Ò6À$ÈvÐVWÐVWÐVWÐYZÐVZÌ|Ð6Ñ\Ô\Ð\Øðð
ؐQQQ˜T‘
Ø—J’J‘L”LˆEÝ˜˜2œœ Q R RÔ(¨%°°°°2°A°2°¬,¸¸vÀb¼zÈ!¼}ÑMÔMÐMðð
CÝ  ¨¨¨¨1¨Q¨3¨¤Ñ0Ô0Ý˜B˜rœFœL¨¨¨Ô,¨d°E¸6À"¼:Àa¼=ÑIÔIÐIÝœ) V¨A¨A¨A¨q°¨s¨F¤^°TÐ$:¸AÑ>Ô>Ý'¨¨w¸Ñ=Ô=ØðCØ$×2Ò2°5¸'ÑBÔBÐBØLŠL˜' 4¨¨¨¨1¨¤:¨t°A°A°A°q°D¬z¸6À!À!À!ÀQÀ$¼<ÐHÑIÔIÐIðð
eؘHÑ$×+Ò+°DÀ4Ð+ÑHÔHÐHݘU I¨u¸8ÀhÑ;NÐTXÔT]ÐQcÐQcÐQcÑ;cÐdÑdÔdÐdØð
=ݘe U¨D°)Ñ<Ô<Ð<ØMŠMÐ,¨d°E¸4ÀÈÈ2ÌÑOÔOÐOÑOðð	nW˜q’[[Ý˜˜G U¨HÐ7WÀ7Ð7WÐ7WÐ7WÑ,WÐY^Ñ_Ô_Ð_Ý˜Õ,¨UÑ3Ô3°U¸HÐGeÐSZÐGeÐGeÐGeÑ<eÐglÑmÔmÐmà
Š
Ð(¨'°2°wÀÀvÈuÑUÔUÐUÑUð
AÐ@µC¸°KÐ@Ñ@Ô@€EÝ
ˆ5z„zðHe˜A”h—l’l‘n”nðHÝ)5°uÀ5ÐS[ÐchÐ)iÐ)iÐ)iÑ&ˆˆB1b˜"˜hؐaaa˜d”8˜RŸWšW Q™ZœZˆbˆØŸVšV™XœX q§v¢v¡x¤x°·²±´¸b¿gºg¹i¼iÐGшˆBsÝ	ŒU˜1”X—_’_¥SÑ)Ô)°RÐ	8Ñ	8Ô	8€Bð
,€BÝ
„Ke˜T 2§6¢6¡8¤8¨R°°U¸CÐ@Ñ@ÑAÔAÐAØ	‡v‚vx„x1‚}€}ÝŒÐn¸DÐnÐnÐnÑoÔoÐoð	ðRB˜’GG HG°2¸²6°6½cÀ%¹j¼j°6ݘhÑ'Ô'ð	Rð	R‰DˆAˆqÝŒK˜˜e Aœh¨¨b°¬e°Q°q´T¸1¸Q¼4ÀÀaÄÈ"ÈQÌ%ÐPÑPÑQÔQÐQÐQõ	Ð
+Ð
+Ð
+Ð
+¨Ð
+Ñ
+Ô
+Ñ+Ô+€AØðoؘQ  uÐ-ˆÝŒÐiÐbgÐiÐiÐlmÑmÑnÔnÐnð
ð`Ø×Ò xµt¸E¿LºL¹N¼NÑ7KÔ7KÐÑLÔLÐL؏
Š
l B¨¨B°°1°b¸"¸dÀHÐN^Ñ_Ô_Ð_ðñ;•S˜‘Z”Zñ;ØOVÐObDz¨'µ4Ñ8Ô8ÐE˜”¸gÑFÔFÔKÐKÐhjˆÝÐRÑSÔSÑTÔTˆ	ÝŒw~Š~˜iÑ(Ô(ð	\ÝœŸš T¨&¤\°=ÐBZÑ[Ô[ˆIݘ aÐ#:Ð#:Ð#:Ñ:Ñ;Ô;ˆ	ÝŒÐL¸iÐLÐLÐLÑMÔMÐMÝ
)˜SÑ
!Ô
!ð	  QÝŒIe˜QÑÔÐð	 ð	 ð	 ñ	 ô	 ð	 ð	 ð	 ð	 ð	 ð	 øøøð	 ð	 ð	 ð	 ð	;ÝÐ3Ñ4Ô4Ð4Ø-Ð-Ð-Ð-Ð-Ð-Ø5Ð5Ð5Ð5Ð5Ð5à4˜	‘?”?ˆDØ—<’< 	Ñ*Ô*ˆDؐ8˜D $¨Ñ/Ô/ˆDØð
^Ø%]Ð%]ÀÔASÔA\Ð%]Ñ%]Ô%]”Ô"ØMŠM‰OŒOˆOØOŠOÑÔÐØNŠNÑÔÐØœ B Q Bœ‰JˆCøÝð	;ð	;ð	;ÝŒKÐ9°aÐ9Ð9Ñ:Ô:Ð:Ð:Ð:Ð:Ð:Ð:øøøøð	;øøøð
‡K‚KM„M€MØðIØemÐuÐa••T˜(Ÿ-š-¨Ñ7Ô7Ñ8Ô8Ñ9Ô9ÐaÐaÈHÐW_ÑL_ÐaÐaÐaÐsuˆÝŒÐG­°¸Ñ(BÔ(BÐGÀAÐGÐGÑHÔHÐHÝ
Œ8B‰<Œ<˜#Ñ€Dݘ(Ñ#Ô#ðð‰ˆˆ1ؐQ”%ˆˆQ‰ˆØE˜3ÐI $§(¢(¡*¤*­s°:©¬Ñ">×!FÒ!FÑ!HÔ!HÐIÐIÈ4ÐQRÐRÐRsbÏ4A*Q*Ñ*Q.	Ñ1Q.	Ñ= R)Ò)R-	Ò0R-	Ô UÕU	Õ
U	în;î;n?ïn?ïB8rò
r+ò
r&ò&r+cóî—tj¦«}| dttdzd¬¦«| ddttdzd¬	¦«| d
t
dd¬¦«| d
ddt
dd¬¦«| dtdd¬¦«| dtdd¬¦«| dt
dd¬¦«| ddd¬¦«| dd d!¬¦«| d"t
d#d$¬¦«| d%d&d'¬(¦«| d)d&d*¬(¦«| d+d&d,¬(¦«| d-d&d.¬(¦«| d/d&d0¬(¦«| d1d&d2¬(¦«| d3d&d4¬(¦«| d5td6zd7¬¦«| d8d9d7¬¦«| d:d&d;¬(¦«| d<d&d=¬(¦«| d>d&d?¬(¦«| ¦«}t|j	¦«|_	|xj
|j	 d@¦«zc_
|xj|j
zc_tt|¦«¦«|S)ANz--datazdata/coco128.yamlzdataset.yaml path)r»ÚdefaultÚhelpz	--weightsú+z
yolov5s.ptz
model path(s))Únargsr»r,r-z--batch-sizeroz
batch sizez--imgszz--imgz
--img-sizerpzinference size (pixels)z--conf-thresrqzconfidence thresholdz--iou-thresrrzNMS IoU thresholdz	--max-detrszmaximum detections per imagez--taskrtz train, val, test, speed or study)r,r-z--deviceruz%cuda device, i.e. 0 or 0,1,2,3 or cpuz	--workersrvz-max dataloader workers (per RANK in DDP mode)z--single-clsÚ
store_trueztreat as single-class dataset)Úactionr-z	--augmentzaugmented inferencez	--verbosezreport mAP by classz
--save-txtzsave results to *.txtz
--save-hybridz-save label+prediction hybrid results to *.txtz--save-confz%save confidences in --save-txt labelsz--save-jsonzsave a COCO-JSON results filez	--projectrwzsave to project/namez--namerxz
--exist-okz*existing project/name ok, do not incrementz--halfz!use FP16 half-precision inferencez--dnnz!use OpenCV DNN for ONNX inferencez	coco.yaml)ÚargparseÚArgumentParserÚadd_argumentrÇÚROOTrKr½Ú
parse_argsrr~r÷rÈrõrörÚvars)ÚparserÚopts  r8Ú	parse_optr:Xs
€Ý
Ô
$Ñ
&Ô
&€FØ
×Ò˜¥sµDÐ;NÑ4NÐUhÐÑiÔiÐiØ
×Ò˜¨3µSÅ$ÈÑBUÐ\kÐÑlÔlÐlØ
×Ò˜­S¸"À<ÐÑPÔPÐPØ
×Ò˜	 7¨L½sÈCÐVoÐÑpÔpÐpØ
×Ò˜­U¸EÐH^ÐÑ_Ô_Ð_Ø
×Ò˜
­E¸3ÐEXÐÑYÔYÐYØ
×Ò˜­#°sÐA_ÐÑ`Ô`Ð`Ø
×Ò˜¨%Ð6XÐÑYÔYÐYØ
×Ò˜
¨BÐ5\ÐÑ]Ô]Ð]Ø
×Ò˜­#°qÐ?nÐÑoÔoÐoØ
×Ò˜¨|ÐBaÐÑbÔbÐbØ
×Ò˜¨LÐ?TÐÑUÔUÐUØ
×Ò˜¨LÐ?TÐÑUÔUÐUØ
×Ò˜¨\Ð@WÐÑXÔXÐXØ
×Ò˜°ÐCrÐÑsÔsÐsØ
×Ò˜
¨lÐAhÐÑiÔiÐiØ
×Ò˜
¨lÐA`ÐÑaÔaÐaØ
×Ò˜­T°JÑ->ÐE[ÐÑ\Ô\Ð\Ø
×Ò˜¨%Ð6LÐÑMÔMÐMØ
×Ò˜¨\Ð@lÐÑmÔmÐmØ
×Ò˜¨Ð<_ÐÑ`Ô`Ð`Ø
×Ò˜¨Ð;^ÐÑ_Ô_Ð_Ø
×
Ò
Ñ
Ô
€Cݘ#œ(Ñ#Ô#€C„HØ€M„MS”X×&Ò& {Ñ3Ô3Ñ3€M„MØ€L„LC”OÑ#€L„LݍtC‰yŒyÑÔÐØ€JrDc	ó—ttdzd¬¦«|jdvr^|jdkrt	jd|j›d¦«|jrt	jd¦«tdit|¦«¤ŽdSt|j
t¦«r|j
n|j
g}tj
 ¦«o
|jd	k|_|jd
kr>d\|_|_|_|D]$|_
tdit|¦«¤dd
i¤ŽŒ%dS|jdkr|D]Ø|_
dt'|j¦«j›dt'|j
¦«j›d}tt-ddd¦«¦«g}}|D]`|_t	jd|›d|j›d¦«tdit|¦«¤dd
i¤Ž\}}}| ||z¦«Œat3j||d¬¦«ŒÙt7jgd¢¦«t9|¬¦«dSt;d|j›d¦«‚)Nzrequirements.txt)ÚtensorboardÚthop)Úexcluderˆrqu$WARNING ⚠️ confidence threshold z! > 0.001 produces invalid resultsu`WARNING ⚠️ --save-hybrid will return high mAP from hybrid labels, not from predictions alonerbr†)gÐ?gÍÌÌÌÌÌÜ?FrûFÚstudyÚstudy_rr£éi€é€z	
Running z	 --imgsz r³z%10.4g)Úfmt)rLz-rz	study.zipzstudy_*.txt)rBz--task z2 not in ("train", "val", "test", "speed", "study")rž)r
r5ròrðrrÃrörÕr7rÅrïrÑr%rÿÚis_availablerYr¼rñr÷rr~rIr^r…rMrZÚsavetxtÚ
subprocessrÚNotImplementedError)r9rïr7rBÚyrrr®s        r8ÚmainrIxs}€Ý•tÐ0Ñ0Ð:QÐRÑRÔRÐRà
„xÐ+Ð+Ð+ØŒ>˜EÒ!Ð!ÝŒKÐp¸s¼~ÐpÐpÐpÑqÔqÐqØŒ?ð	|ÝŒKÐzÑ{Ô{Ð{ÝÐЍd3‰iŒiÐÐÐÐÐõ",¨C¬K½Ñ!>Ô!>ÐQ#”++ÀSÄ[ÀMˆÝ”:×*Ò*Ñ,Ô,ÐD°´¸uÒ1DˆŒØŒ8wÒÐà;LÑ8ˆCŒN˜CœM¨3¬=Ø&ð
.ð
.”ÝÐ-Ð-•d˜3‘i”iÐ-Ð- uÐ-Ð-Ð-Ð-Ð-ð
.ð
.ðŒX˜Ò
 Ñ
 à&ð
/ð
/”ØOT #¤(™^œ^Ô0ÐOÐOµ4¸¼Ñ3DÔ3DÔ3IÐOÐOÐOÝE # z°3Ñ7Ô7Ñ8Ô8¸"1Ø!"ð$ð$C”IÝ”KÐ G¨QÐ GÐ G¸¼Ð GÐ GÐ GÑHÔHÐHÝ!Ð;Ð;¥D¨¡I¤IÐ;Ð;°UÐ;Ð;Ð;‘GAq˜!Ø—H’H˜Q ™U‘O”OOOÝ”
˜1˜a XÐ.Ñ.Ô.Ð.Ð.ÝŒNÐDÐDÐDÑEÔEÐEÝ˜QÐÑÔÐÐÐå%Ð&l°´Ð&lÐ&lÐ&lÑmÔmÐmrDÚ__main__)?Ú__doc__r2ràrÉrFÚsysÚpathlibrrcrZr%rÚ__file__ÚresolveÚFILEr|r5rÇrOrMÚrelpathÚcwdÚ
models.commonrÚutils.callbacksrÚutils.dataloadersrÚ
utils.generalrr	r
rrr
rrrrrrrrrÚ
utils.metricsrrrÚutils.plotsrrrÚutils.torch_utilsrrr9rTrnrÕr:rIÚ__name__r9ržrDr8ú<module>r[soðððð(€€€Ø€€€Ø	€	€	€	ØÐÐÐØ
€
€
€
ØÐÐÐÐÐàÐÐÐØ€€€ØÐÐÐÐÐà€tˆH~„~×ÒÑԀ؄|A„€Ø€3€t9„9C”HÐÐØ„H‡O‚OCC˜‘I”IÑÔÐØ€tˆBŒGOŠO˜D ( $¤(¡*¤*Ñ-Ô-Ñ.Ô.€à,Ð,Ð,Ð,Ð,Ð,Ø%Ð%Ð%Ð%Ð%Ð%Ø/Ð/Ð/Ð/Ð/Ð/ðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðJðAÐ@Ð@Ð@Ð@Ð@Ð@Ð@Ð@Ð@ØEÐEÐEÐEÐEÐEÐEÐEÐEÐEØAÐAÐAÐAÐAÐAÐAÐAð@ð@ð@ð
&ð
&ð
&ðGðGðGð4ÐÑÔðØØØØØØ
ØØØØØØØØØØzÑ!Ø
ØØ
ØØØØb‘”ØØ)‘+”+Øð9qSðqSðqSñÔðqSðhððð@ nð nð nðFˆzÒÐØ
ˆ)‰+Œ+€CØ€DˆI„I€I€I€IðÐrD