ultralytics 8.2.16__py3-none-any.whl → 8.2.18__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ultralytics might be problematic. Click here for more details.
- ultralytics/__init__.py +1 -1
- ultralytics/engine/results.py +6 -4
- ultralytics/solutions/__init__.py +18 -0
- ultralytics/solutions/ai_gym.py +53 -79
- ultralytics/solutions/distance_calculation.py +66 -71
- ultralytics/solutions/heatmap.py +95 -133
- ultralytics/solutions/object_counter.py +62 -82
- ultralytics/solutions/parking_management.py +22 -9
- ultralytics/solutions/queue_management.py +63 -82
- ultralytics/solutions/speed_estimation.py +50 -68
- ultralytics/utils/__init__.py +1 -1
- ultralytics/utils/callbacks/wb.py +1 -1
- ultralytics/utils/checks.py +3 -2
- ultralytics/utils/plotting.py +40 -42
- {ultralytics-8.2.16.dist-info → ultralytics-8.2.18.dist-info}/METADATA +1 -1
- {ultralytics-8.2.16.dist-info → ultralytics-8.2.18.dist-info}/RECORD +20 -20
- {ultralytics-8.2.16.dist-info → ultralytics-8.2.18.dist-info}/LICENSE +0 -0
- {ultralytics-8.2.16.dist-info → ultralytics-8.2.18.dist-info}/WHEEL +0 -0
- {ultralytics-8.2.16.dist-info → ultralytics-8.2.18.dist-info}/entry_points.txt +0 -0
- {ultralytics-8.2.16.dist-info → ultralytics-8.2.18.dist-info}/top_level.txt +0 -0
ultralytics/utils/plotting.py
CHANGED
|
@@ -378,7 +378,7 @@ class Annotator:
|
|
|
378
378
|
cv2.polylines(self.im, [points], isClosed=False, color=color, thickness=track_thickness)
|
|
379
379
|
cv2.circle(self.im, (int(track[-1][0]), int(track[-1][1])), track_thickness * 2, color, -1)
|
|
380
380
|
|
|
381
|
-
def queue_counts_display(self, label, points=None, region_color=(255, 255, 255), txt_color=(0, 0, 0)
|
|
381
|
+
def queue_counts_display(self, label, points=None, region_color=(255, 255, 255), txt_color=(0, 0, 0)):
|
|
382
382
|
"""
|
|
383
383
|
Displays queue counts on an image centered at the points with customizable font size and colors.
|
|
384
384
|
|
|
@@ -387,14 +387,14 @@ class Annotator:
|
|
|
387
387
|
points (tuple): region points for center point calculation to display text
|
|
388
388
|
region_color (RGB): queue region color
|
|
389
389
|
txt_color (RGB): text display color
|
|
390
|
-
fontsize (float): text fontsize
|
|
391
390
|
"""
|
|
391
|
+
|
|
392
392
|
x_values = [point[0] for point in points]
|
|
393
393
|
y_values = [point[1] for point in points]
|
|
394
394
|
center_x = sum(x_values) // len(points)
|
|
395
395
|
center_y = sum(y_values) // len(points)
|
|
396
396
|
|
|
397
|
-
text_size = cv2.getTextSize(label, 0, fontScale=
|
|
397
|
+
text_size = cv2.getTextSize(label, 0, fontScale=self.sf, thickness=self.tf)[0]
|
|
398
398
|
text_width = text_size[0]
|
|
399
399
|
text_height = text_size[1]
|
|
400
400
|
|
|
@@ -413,13 +413,12 @@ class Annotator:
|
|
|
413
413
|
label,
|
|
414
414
|
(text_x, text_y),
|
|
415
415
|
0,
|
|
416
|
-
fontScale=
|
|
416
|
+
fontScale=self.sf,
|
|
417
417
|
color=txt_color,
|
|
418
418
|
thickness=self.tf,
|
|
419
419
|
lineType=cv2.LINE_AA,
|
|
420
420
|
)
|
|
421
421
|
|
|
422
|
-
### Parking management utils
|
|
423
422
|
def display_objects_labels(self, im0, text, txt_color, bg_color, x_center, y_center, margin):
|
|
424
423
|
"""
|
|
425
424
|
Display the bounding boxes labels in parking management app.
|
|
@@ -445,7 +444,6 @@ class Annotator:
|
|
|
445
444
|
cv2.rectangle(im0, (rect_x1, rect_y1), (rect_x2, rect_y2), bg_color, -1)
|
|
446
445
|
cv2.putText(im0, text, (text_x, text_y), 0, self.sf, txt_color, self.tf, lineType=cv2.LINE_AA)
|
|
447
446
|
|
|
448
|
-
# Parking lot and object counting app
|
|
449
447
|
def display_analytics(self, im0, text, txt_color, bg_color, margin):
|
|
450
448
|
"""
|
|
451
449
|
Display the overall statistics for parking lots
|
|
@@ -459,12 +457,12 @@ class Annotator:
|
|
|
459
457
|
|
|
460
458
|
horizontal_gap = int(im0.shape[1] * 0.02)
|
|
461
459
|
vertical_gap = int(im0.shape[0] * 0.01)
|
|
462
|
-
|
|
463
460
|
text_y_offset = 0
|
|
464
|
-
|
|
465
461
|
for label, value in text.items():
|
|
466
462
|
txt = f"{label}: {value}"
|
|
467
|
-
text_size = cv2.getTextSize(txt, 0,
|
|
463
|
+
text_size = cv2.getTextSize(txt, 0, self.sf, self.tf)[0]
|
|
464
|
+
if text_size[0] < 5 or text_size[1] < 5:
|
|
465
|
+
text_size = (5, 5)
|
|
468
466
|
text_x = im0.shape[1] - text_size[0] - margin * 2 - horizontal_gap
|
|
469
467
|
text_y = text_y_offset + text_size[1] + margin * 2 + vertical_gap
|
|
470
468
|
rect_x1 = text_x - margin * 2
|
|
@@ -472,9 +470,7 @@ class Annotator:
|
|
|
472
470
|
rect_x2 = text_x + text_size[0] + margin * 2
|
|
473
471
|
rect_y2 = text_y + margin * 2
|
|
474
472
|
cv2.rectangle(im0, (rect_x1, rect_y1), (rect_x2, rect_y2), bg_color, -1)
|
|
475
|
-
cv2.putText(
|
|
476
|
-
im0, txt, (text_x, text_y), 0, int(self.sf * 1.5), txt_color, int(self.tf * 1.5), lineType=cv2.LINE_AA
|
|
477
|
-
)
|
|
473
|
+
cv2.putText(im0, txt, (text_x, text_y), 0, self.sf, txt_color, self.tf, lineType=cv2.LINE_AA)
|
|
478
474
|
text_y_offset = rect_y2
|
|
479
475
|
|
|
480
476
|
@staticmethod
|
|
@@ -518,7 +514,9 @@ class Annotator:
|
|
|
518
514
|
cv2.circle(self.im, (int(x_coord), int(y_coord)), radius, (0, 255, 0), -1, lineType=cv2.LINE_AA)
|
|
519
515
|
return self.im
|
|
520
516
|
|
|
521
|
-
def plot_angle_and_count_and_stage(
|
|
517
|
+
def plot_angle_and_count_and_stage(
|
|
518
|
+
self, angle_text, count_text, stage_text, center_kpt, color=(104, 31, 17), txt_color=(255, 255, 255)
|
|
519
|
+
):
|
|
522
520
|
"""
|
|
523
521
|
Plot the pose angle, count value and step stage.
|
|
524
522
|
|
|
@@ -527,16 +525,17 @@ class Annotator:
|
|
|
527
525
|
count_text (str): counts value for workout monitoring
|
|
528
526
|
stage_text (str): stage decision for workout monitoring
|
|
529
527
|
center_kpt (int): centroid pose index for workout monitoring
|
|
530
|
-
|
|
528
|
+
color (tuple): text background color for workout monitoring
|
|
529
|
+
txt_color (tuple): text foreground color for workout monitoring
|
|
531
530
|
"""
|
|
531
|
+
|
|
532
532
|
angle_text, count_text, stage_text = (f" {angle_text:.2f}", f"Steps : {count_text}", f" {stage_text}")
|
|
533
|
-
font_scale = 0.6 + (line_thickness / 10.0)
|
|
534
533
|
|
|
535
534
|
# Draw angle
|
|
536
|
-
(angle_text_width, angle_text_height), _ = cv2.getTextSize(angle_text, 0,
|
|
535
|
+
(angle_text_width, angle_text_height), _ = cv2.getTextSize(angle_text, 0, self.sf, self.tf)
|
|
537
536
|
angle_text_position = (int(center_kpt[0]), int(center_kpt[1]))
|
|
538
537
|
angle_background_position = (angle_text_position[0], angle_text_position[1] - angle_text_height - 5)
|
|
539
|
-
angle_background_size = (angle_text_width + 2 * 5, angle_text_height + 2 * 5 + (
|
|
538
|
+
angle_background_size = (angle_text_width + 2 * 5, angle_text_height + 2 * 5 + (self.tf * 2))
|
|
540
539
|
cv2.rectangle(
|
|
541
540
|
self.im,
|
|
542
541
|
angle_background_position,
|
|
@@ -544,19 +543,19 @@ class Annotator:
|
|
|
544
543
|
angle_background_position[0] + angle_background_size[0],
|
|
545
544
|
angle_background_position[1] + angle_background_size[1],
|
|
546
545
|
),
|
|
547
|
-
|
|
546
|
+
color,
|
|
548
547
|
-1,
|
|
549
548
|
)
|
|
550
|
-
cv2.putText(self.im, angle_text, angle_text_position, 0,
|
|
549
|
+
cv2.putText(self.im, angle_text, angle_text_position, 0, self.sf, txt_color, self.tf)
|
|
551
550
|
|
|
552
551
|
# Draw Counts
|
|
553
|
-
(count_text_width, count_text_height), _ = cv2.getTextSize(count_text, 0,
|
|
552
|
+
(count_text_width, count_text_height), _ = cv2.getTextSize(count_text, 0, self.sf, self.tf)
|
|
554
553
|
count_text_position = (angle_text_position[0], angle_text_position[1] + angle_text_height + 20)
|
|
555
554
|
count_background_position = (
|
|
556
555
|
angle_background_position[0],
|
|
557
556
|
angle_background_position[1] + angle_background_size[1] + 5,
|
|
558
557
|
)
|
|
559
|
-
count_background_size = (count_text_width + 10, count_text_height + 10 +
|
|
558
|
+
count_background_size = (count_text_width + 10, count_text_height + 10 + self.tf)
|
|
560
559
|
|
|
561
560
|
cv2.rectangle(
|
|
562
561
|
self.im,
|
|
@@ -565,13 +564,13 @@ class Annotator:
|
|
|
565
564
|
count_background_position[0] + count_background_size[0],
|
|
566
565
|
count_background_position[1] + count_background_size[1],
|
|
567
566
|
),
|
|
568
|
-
|
|
567
|
+
color,
|
|
569
568
|
-1,
|
|
570
569
|
)
|
|
571
|
-
cv2.putText(self.im, count_text, count_text_position, 0,
|
|
570
|
+
cv2.putText(self.im, count_text, count_text_position, 0, self.sf, txt_color, self.tf)
|
|
572
571
|
|
|
573
572
|
# Draw Stage
|
|
574
|
-
(stage_text_width, stage_text_height), _ = cv2.getTextSize(stage_text, 0,
|
|
573
|
+
(stage_text_width, stage_text_height), _ = cv2.getTextSize(stage_text, 0, self.sf, self.tf)
|
|
575
574
|
stage_text_position = (int(center_kpt[0]), int(center_kpt[1]) + angle_text_height + count_text_height + 40)
|
|
576
575
|
stage_background_position = (stage_text_position[0], stage_text_position[1] - stage_text_height - 5)
|
|
577
576
|
stage_background_size = (stage_text_width + 10, stage_text_height + 10)
|
|
@@ -583,10 +582,10 @@ class Annotator:
|
|
|
583
582
|
stage_background_position[0] + stage_background_size[0],
|
|
584
583
|
stage_background_position[1] + stage_background_size[1],
|
|
585
584
|
),
|
|
586
|
-
|
|
585
|
+
color,
|
|
587
586
|
-1,
|
|
588
587
|
)
|
|
589
|
-
cv2.putText(self.im, stage_text, stage_text_position, 0,
|
|
588
|
+
cv2.putText(self.im, stage_text, stage_text_position, 0, self.sf, txt_color, self.tf)
|
|
590
589
|
|
|
591
590
|
def seg_bbox(self, mask, mask_color=(255, 0, 255), det_label=None, track_label=None):
|
|
592
591
|
"""
|
|
@@ -626,29 +625,30 @@ class Annotator:
|
|
|
626
625
|
line_color (RGB): Distance line color.
|
|
627
626
|
centroid_color (RGB): Bounding box centroid color.
|
|
628
627
|
"""
|
|
629
|
-
|
|
630
|
-
|
|
628
|
+
|
|
629
|
+
(text_width_m, text_height_m), _ = cv2.getTextSize(f"Distance M: {distance_m:.2f}m", 0, self.sf, self.tf)
|
|
630
|
+
cv2.rectangle(self.im, (15, 25), (15 + text_width_m + 10, 25 + text_height_m + 20), line_color, -1)
|
|
631
631
|
cv2.putText(
|
|
632
632
|
self.im,
|
|
633
633
|
f"Distance M: {distance_m:.2f}m",
|
|
634
634
|
(20, 50),
|
|
635
635
|
0,
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
636
|
+
self.sf,
|
|
637
|
+
centroid_color,
|
|
638
|
+
self.tf,
|
|
639
639
|
cv2.LINE_AA,
|
|
640
640
|
)
|
|
641
641
|
|
|
642
|
-
(text_width_mm, text_height_mm), _ = cv2.getTextSize(f"Distance MM: {distance_mm:.2f}mm", 0,
|
|
643
|
-
cv2.rectangle(self.im, (15, 75), (15 + text_width_mm + 10, 75 + text_height_mm + 20),
|
|
642
|
+
(text_width_mm, text_height_mm), _ = cv2.getTextSize(f"Distance MM: {distance_mm:.2f}mm", 0, self.sf, self.tf)
|
|
643
|
+
cv2.rectangle(self.im, (15, 75), (15 + text_width_mm + 10, 75 + text_height_mm + 20), line_color, -1)
|
|
644
644
|
cv2.putText(
|
|
645
645
|
self.im,
|
|
646
646
|
f"Distance MM: {distance_mm:.2f}mm",
|
|
647
647
|
(20, 100),
|
|
648
648
|
0,
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
649
|
+
self.sf,
|
|
650
|
+
centroid_color,
|
|
651
|
+
self.tf,
|
|
652
652
|
cv2.LINE_AA,
|
|
653
653
|
)
|
|
654
654
|
|
|
@@ -656,7 +656,7 @@ class Annotator:
|
|
|
656
656
|
cv2.circle(self.im, centroids[0], 6, centroid_color, -1)
|
|
657
657
|
cv2.circle(self.im, centroids[1], 6, centroid_color, -1)
|
|
658
658
|
|
|
659
|
-
def visioneye(self, box, center_point, color=(235, 219, 11), pin_color=(255, 0, 255)
|
|
659
|
+
def visioneye(self, box, center_point, color=(235, 219, 11), pin_color=(255, 0, 255)):
|
|
660
660
|
"""
|
|
661
661
|
Function for pinpoint human-vision eye mapping and plotting.
|
|
662
662
|
|
|
@@ -665,13 +665,11 @@ class Annotator:
|
|
|
665
665
|
center_point (tuple): center point for vision eye view
|
|
666
666
|
color (tuple): object centroid and line color value
|
|
667
667
|
pin_color (tuple): visioneye point color value
|
|
668
|
-
thickness (int): int value for line thickness
|
|
669
|
-
pins_radius (int): visioneye point radius value
|
|
670
668
|
"""
|
|
671
669
|
center_bbox = int((box[0] + box[2]) / 2), int((box[1] + box[3]) / 2)
|
|
672
|
-
cv2.circle(self.im, center_point,
|
|
673
|
-
cv2.circle(self.im, center_bbox,
|
|
674
|
-
cv2.line(self.im, center_point, center_bbox, color,
|
|
670
|
+
cv2.circle(self.im, center_point, self.tf * 2, pin_color, -1)
|
|
671
|
+
cv2.circle(self.im, center_bbox, self.tf * 2, color, -1)
|
|
672
|
+
cv2.line(self.im, center_point, center_bbox, color, self.tf)
|
|
675
673
|
|
|
676
674
|
|
|
677
675
|
@TryExcept() # known issue https://github.com/ultralytics/yolov5/issues/5395
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ultralytics
|
|
3
|
-
Version: 8.2.
|
|
3
|
+
Version: 8.2.18
|
|
4
4
|
Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
|
5
5
|
Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
6
6
|
Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
ultralytics/__init__.py,sha256=
|
|
1
|
+
ultralytics/__init__.py,sha256=UvIkLkGIahFV3Ubeoke_5aRikBkOXwN5EWZEYJ8uR3M,633
|
|
2
2
|
ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
|
|
3
3
|
ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
|
|
4
4
|
ultralytics/cfg/__init__.py,sha256=lR6jykSO_0cigsjrqSyFj_8JG_LvYi796viasyWhcfs,21358
|
|
@@ -81,7 +81,7 @@ ultralytics/engine/__init__.py,sha256=mHtJuK4hwF8cuV-VHDc7tp6u6D1gHz2Z7JI8grmQDT
|
|
|
81
81
|
ultralytics/engine/exporter.py,sha256=2troO7ah3gAhHyQ2VCjFvaK9NBc6uleIVft5IRBjeFM,58122
|
|
82
82
|
ultralytics/engine/model.py,sha256=IE6HE9VIzqO3DscxSLexub0LUR673eiPFrCPCt6ozEE,40103
|
|
83
83
|
ultralytics/engine/predictor.py,sha256=wQRKdWGDTP5A6CS0gTC6U3RPDMhP3QkEzWSPm6eqCkU,17022
|
|
84
|
-
ultralytics/engine/results.py,sha256=
|
|
84
|
+
ultralytics/engine/results.py,sha256=1ZY6eXb5uHmDShAXPmXZ-117ZlqeffEZLd2LqFgg8Ik,30975
|
|
85
85
|
ultralytics/engine/trainer.py,sha256=P5XbPxh5hj4TLwuKeriuAlvcBWmILStm40-SgPrYvLk,35149
|
|
86
86
|
ultralytics/engine/tuner.py,sha256=iZrgMmXSDpfuDu4bdFRflmAsscys2-8W8qAGxSyOVJE,11844
|
|
87
87
|
ultralytics/engine/validator.py,sha256=Y21Uo8_Zto4qjk_YqQk6k7tyfpq_Qk9cfjeXeyDRxs8,14643
|
|
@@ -153,14 +153,14 @@ ultralytics/nn/modules/conv.py,sha256=Ywe87IhuaS22mR2JJ9xjnW8Sb-m7WTjxuqIxV_Dv8l
|
|
|
153
153
|
ultralytics/nn/modules/head.py,sha256=3N_4zW1UvhI1jCrIxIkNYxQDdiW6HxtxpaNAAudq6NU,22236
|
|
154
154
|
ultralytics/nn/modules/transformer.py,sha256=AxD9uURpCl-EqvXe3DiG6JW-pBzB16G-AahLdZ7yayo,17909
|
|
155
155
|
ultralytics/nn/modules/utils.py,sha256=779QnnKp9v8jv251ESduTXJ0ol8HkIOLbGQWwEGQjhU,3196
|
|
156
|
-
ultralytics/solutions/__init__.py,sha256=
|
|
157
|
-
ultralytics/solutions/ai_gym.py,sha256=
|
|
158
|
-
ultralytics/solutions/distance_calculation.py,sha256=
|
|
159
|
-
ultralytics/solutions/heatmap.py,sha256=
|
|
160
|
-
ultralytics/solutions/object_counter.py,sha256=
|
|
161
|
-
ultralytics/solutions/parking_management.py,sha256
|
|
162
|
-
ultralytics/solutions/queue_management.py,sha256=
|
|
163
|
-
ultralytics/solutions/speed_estimation.py,sha256=
|
|
156
|
+
ultralytics/solutions/__init__.py,sha256=Ogwo0ckEqzULTiRopo6ZeqjBwlHgsg2WYyO_rGARtQA,490
|
|
157
|
+
ultralytics/solutions/ai_gym.py,sha256=xpKBX37VmAjJpSPUfC8w1IQ0wqOcURAeWZ_3LoVrXSs,4639
|
|
158
|
+
ultralytics/solutions/distance_calculation.py,sha256=pSIkyytHGRAaNzIrkkNkiOnSVWU1PYvURlCIV_jRORA,6505
|
|
159
|
+
ultralytics/solutions/heatmap.py,sha256=AHXnmXhoQ95ph74zsdrvX_Lfy3wF0SsH0MIeTixE7Qg,10386
|
|
160
|
+
ultralytics/solutions/object_counter.py,sha256=htcQGWJX1y-vXVV1yUiTDT3sm8ByItjSNfu2Rl2IEmk,10808
|
|
161
|
+
ultralytics/solutions/parking_management.py,sha256=b0ZyIspCULKO0OIYHEi7x2BqMBQR-QPmOxDfcfuU2ho,9696
|
|
162
|
+
ultralytics/solutions/queue_management.py,sha256=ECm6gLZplmE9Cm-zdOazHBBDcW-vvr8nx2M28fcPbts,6787
|
|
163
|
+
ultralytics/solutions/speed_estimation.py,sha256=kjqMSHGTHMZaNgTKNKWULxnJQNsvhq4WMUphMVlBjsc,6768
|
|
164
164
|
ultralytics/trackers/__init__.py,sha256=j72IgH2dZHQArMPK4YwcV5ieIw94fYvlGdQjB9cOQKw,227
|
|
165
165
|
ultralytics/trackers/basetrack.py,sha256=-vBDD-Q9lsxfTMK2w9kuqWGrYbRMmaBCCEbGGyR53gE,3675
|
|
166
166
|
ultralytics/trackers/bot_sort.py,sha256=39AvhYVbT7izF3--rX_e6Lhgb5czTA23gw6AgnNcRds,8601
|
|
@@ -170,10 +170,10 @@ ultralytics/trackers/utils/__init__.py,sha256=mHtJuK4hwF8cuV-VHDc7tp6u6D1gHz2Z7J
|
|
|
170
170
|
ultralytics/trackers/utils/gmc.py,sha256=vwcPA1n5zjPaBGhCDt8ItN7rq_6Sczsjn4gsXJfRylU,13688
|
|
171
171
|
ultralytics/trackers/utils/kalman_filter.py,sha256=0oqhk59NKEiwcJ2FXnw6_sT4bIFC6Wu5IY2B-TGxJKU,15168
|
|
172
172
|
ultralytics/trackers/utils/matching.py,sha256=UxhSGa5pN6WoYwYSBAkkt-O7xMxUR47VuUB6PfVNkb4,5404
|
|
173
|
-
ultralytics/utils/__init__.py,sha256=
|
|
173
|
+
ultralytics/utils/__init__.py,sha256=AjzSdFGfEPMPyFFX9JaONkmI5xgWLHFMO77aBA0ghpM,39518
|
|
174
174
|
ultralytics/utils/autobatch.py,sha256=ygZ3f2ByIkcujB89ENcTnGWWnAQw5Pbg6nBuShg-5t4,3863
|
|
175
175
|
ultralytics/utils/benchmarks.py,sha256=PlnUqhl2Om7jp7bKICDj9a2ABpJSl31VFI3ESnGdme8,23552
|
|
176
|
-
ultralytics/utils/checks.py,sha256=
|
|
176
|
+
ultralytics/utils/checks.py,sha256=lca-tqMVbMgsHXb_g-LaVqXv6zoDKFXHqc2SXvO0njM,28124
|
|
177
177
|
ultralytics/utils/dist.py,sha256=3HeNbY2gp7vYhcvVhsrvTrQXpQmgT8tpmnzApf3eQRA,2267
|
|
178
178
|
ultralytics/utils/downloads.py,sha256=cmO2Ev1DV1m_lYgQ2yGDG5xVRIBVS_z9nS_Frec_NeU,21496
|
|
179
179
|
ultralytics/utils/errors.py,sha256=GqP_Jgj_n0paxn8OMhn3DTCgoNkB2WjUcUaqs-M6SQk,816
|
|
@@ -183,7 +183,7 @@ ultralytics/utils/loss.py,sha256=ejXnPEIAzNEoNz2UjW0_fcdeUs9Hy-jPzUrJ3FiIIwE,327
|
|
|
183
183
|
ultralytics/utils/metrics.py,sha256=XPD-xP0fchR8KgCuTcihV2-n0EK1cWi3-53BWN_pLuA,53518
|
|
184
184
|
ultralytics/utils/ops.py,sha256=wZCWx7dm5GJNIJHyZaFJRetGcQ7prdv-anplqq9figQ,33309
|
|
185
185
|
ultralytics/utils/patches.py,sha256=SgMqeMsq2K6JoBJP1NplXMl9C6rK0JeJUChjBrJOneo,2750
|
|
186
|
-
ultralytics/utils/plotting.py,sha256=
|
|
186
|
+
ultralytics/utils/plotting.py,sha256=47mfSDCP7Pt3jT_IlgnIwIH3wcBeSh04lbzep_F2wPc,48207
|
|
187
187
|
ultralytics/utils/tal.py,sha256=xuIyryUjaaYHkHPG9GvBwh1xxN2Hq4y3hXOtuERehwY,16017
|
|
188
188
|
ultralytics/utils/torch_utils.py,sha256=6AjQsncSsXZ3Cf_YzxWBeEBbks9s7gvPVpU6-dV3psg,26771
|
|
189
189
|
ultralytics/utils/triton.py,sha256=gg1finxno_tY2Ge9PMhmu7PI9wvoFZoiicdT4Bhqv3w,3936
|
|
@@ -198,10 +198,10 @@ ultralytics/utils/callbacks/mlflow.py,sha256=AVuYE4UKA5Eeg8sffbkCOe4tGgtCvBlGG4D
|
|
|
198
198
|
ultralytics/utils/callbacks/neptune.py,sha256=5Z3ua5YBTUS56FH8VQKQG1aaIo9fH8GEyzC5q7p4ipQ,3756
|
|
199
199
|
ultralytics/utils/callbacks/raytune.py,sha256=ODVYzy-CoM4Uge0zjkh3Hnh9nF2M0vhDrSenXnvcizw,705
|
|
200
200
|
ultralytics/utils/callbacks/tensorboard.py,sha256=Z1veCVcn9THPhdplWuIzwlsW2yF7y-On9IZIk3khM0Y,4135
|
|
201
|
-
ultralytics/utils/callbacks/wb.py,sha256=
|
|
202
|
-
ultralytics-8.2.
|
|
203
|
-
ultralytics-8.2.
|
|
204
|
-
ultralytics-8.2.
|
|
205
|
-
ultralytics-8.2.
|
|
206
|
-
ultralytics-8.2.
|
|
207
|
-
ultralytics-8.2.
|
|
201
|
+
ultralytics/utils/callbacks/wb.py,sha256=DViD0KeXH_i3eVT_CLR4bZFs1TMMUZBVBBYIS3aUfp0,6745
|
|
202
|
+
ultralytics-8.2.18.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
|
|
203
|
+
ultralytics-8.2.18.dist-info/METADATA,sha256=bs7_wNBjYCpAoRHxVVuUYHc20zfgcr-O5_DDLLVKpBw,40694
|
|
204
|
+
ultralytics-8.2.18.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
205
|
+
ultralytics-8.2.18.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
|
|
206
|
+
ultralytics-8.2.18.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
|
|
207
|
+
ultralytics-8.2.18.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|