ultralytics 8.3.123__py3-none-any.whl → 8.3.125__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.
Files changed (45) hide show
  1. tests/test_python.py +5 -8
  2. ultralytics/__init__.py +1 -1
  3. ultralytics/cfg/__init__.py +7 -14
  4. ultralytics/cfg/default.yaml +2 -2
  5. ultralytics/data/base.py +1 -2
  6. ultralytics/data/loaders.py +3 -4
  7. ultralytics/data/utils.py +8 -9
  8. ultralytics/engine/exporter.py +7 -7
  9. ultralytics/engine/model.py +7 -4
  10. ultralytics/engine/trainer.py +2 -2
  11. ultralytics/engine/tuner.py +3 -3
  12. ultralytics/hub/session.py +1 -1
  13. ultralytics/models/sam/model.py +2 -1
  14. ultralytics/models/sam/modules/tiny_encoder.py +2 -3
  15. ultralytics/models/sam/predict.py +4 -1
  16. ultralytics/models/yolo/model.py +3 -3
  17. ultralytics/nn/autobackend.py +4 -4
  18. ultralytics/nn/tasks.py +7 -7
  19. ultralytics/solutions/analytics.py +9 -8
  20. ultralytics/solutions/config.py +104 -0
  21. ultralytics/solutions/heatmap.py +1 -1
  22. ultralytics/solutions/object_blurrer.py +1 -1
  23. ultralytics/solutions/object_cropper.py +2 -2
  24. ultralytics/solutions/parking_management.py +2 -2
  25. ultralytics/solutions/security_alarm.py +1 -1
  26. ultralytics/solutions/solutions.py +6 -9
  27. ultralytics/solutions/speed_estimation.py +4 -4
  28. ultralytics/solutions/trackzone.py +1 -1
  29. ultralytics/solutions/vision_eye.py +1 -1
  30. ultralytics/trackers/track.py +2 -2
  31. ultralytics/utils/__init__.py +115 -59
  32. ultralytics/utils/benchmarks.py +4 -8
  33. ultralytics/utils/checks.py +4 -3
  34. ultralytics/utils/dist.py +2 -1
  35. ultralytics/utils/downloads.py +6 -1
  36. ultralytics/utils/metrics.py +6 -2
  37. ultralytics/utils/plotting.py +11 -5
  38. ultralytics/utils/torch_utils.py +10 -5
  39. {ultralytics-8.3.123.dist-info → ultralytics-8.3.125.dist-info}/METADATA +1 -1
  40. {ultralytics-8.3.123.dist-info → ultralytics-8.3.125.dist-info}/RECORD +44 -44
  41. {ultralytics-8.3.123.dist-info → ultralytics-8.3.125.dist-info}/WHEEL +1 -1
  42. ultralytics/cfg/solutions/default.yaml +0 -24
  43. {ultralytics-8.3.123.dist-info → ultralytics-8.3.125.dist-info}/entry_points.txt +0 -0
  44. {ultralytics-8.3.123.dist-info → ultralytics-8.3.125.dist-info}/licenses/LICENSE +0 -0
  45. {ultralytics-8.3.123.dist-info → ultralytics-8.3.125.dist-info}/top_level.txt +0 -0
ultralytics/utils/dist.py CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  import os
4
4
  import shutil
5
- import socket
6
5
  import sys
7
6
  import tempfile
8
7
 
@@ -20,6 +19,8 @@ def find_free_network_port() -> int:
20
19
  Returns:
21
20
  (int): The available network port number.
22
21
  """
22
+ import socket
23
+
23
24
  with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
24
25
  s.bind(("127.0.0.1", 0))
25
26
  return s.getsockname()[1] # port
@@ -8,7 +8,6 @@ from multiprocessing.pool import ThreadPool
8
8
  from pathlib import Path
9
9
  from urllib import parse, request
10
10
 
11
- import requests
12
11
  import torch
13
12
 
14
13
  from ultralytics.utils import LOGGER, TQDM, checks, clean_url, emojis, is_online, url2file
@@ -203,6 +202,8 @@ def check_disk_space(url="https://ultralytics.com/assets/coco8.zip", path=Path.c
203
202
  Returns:
204
203
  (bool): True if there is sufficient disk space, False otherwise.
205
204
  """
205
+ import requests # slow import
206
+
206
207
  try:
207
208
  r = requests.head(url) # response
208
209
  assert r.status_code < 400, f"URL error for {url}: {r.status_code} {r.reason}" # check response
@@ -244,6 +245,8 @@ def get_google_drive_file_info(link):
244
245
  >>> link = "https://drive.google.com/file/d/1cqT-cJgANNrhIHCrEufUYhQ4RqiWG_lJ/view?usp=drive_link"
245
246
  >>> url, filename = get_google_drive_file_info(link)
246
247
  """
248
+ import requests # slow import
249
+
247
250
  file_id = link.split("/d/")[1].split("/view")[0]
248
251
  drive_url = f"https://drive.google.com/uc?export=download&id={file_id}"
249
252
  filename = None
@@ -388,6 +391,8 @@ def get_github_assets(repo="ultralytics/assets", version="latest", retry=False):
388
391
  Examples:
389
392
  >>> tag, assets = get_github_assets(repo="ultralytics/assets", version="latest")
390
393
  """
394
+ import requests # slow import
395
+
391
396
  if version != "latest":
392
397
  version = f"tags/{version}" # i.e. tags/v6.2
393
398
  url = f"https://api.github.com/repos/{repo}/releases/{version}"
@@ -5,7 +5,6 @@ import math
5
5
  import warnings
6
6
  from pathlib import Path
7
7
 
8
- import matplotlib.pyplot as plt
9
8
  import numpy as np
10
9
  import torch
11
10
 
@@ -418,7 +417,8 @@ class ConfusionMatrix:
418
417
  names (tuple): Names of classes, used as labels on the plot.
419
418
  on_plot (func): An optional callback to pass plots path and data when they are rendered.
420
419
  """
421
- import seaborn # scope for faster 'import ultralytics'
420
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
421
+ import seaborn
422
422
 
423
423
  array = self.matrix / ((self.matrix.sum(0).reshape(1, -1) + 1e-9) if normalize else 1) # normalize columns
424
424
  array[array < 0.005] = np.nan # don't annotate (would appear as 0.00)
@@ -479,6 +479,8 @@ def plot_pr_curve(px, py, ap, save_dir=Path("pr_curve.png"), names={}, on_plot=N
479
479
  names (dict, optional): Dictionary mapping class indices to class names.
480
480
  on_plot (callable, optional): Function to call after plot is saved.
481
481
  """
482
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
483
+
482
484
  fig, ax = plt.subplots(1, 1, figsize=(9, 6), tight_layout=True)
483
485
  py = np.stack(py, axis=1)
484
486
 
@@ -515,6 +517,8 @@ def plot_mc_curve(px, py, save_dir=Path("mc_curve.png"), names={}, xlabel="Confi
515
517
  ylabel (str, optional): Y-axis label.
516
518
  on_plot (callable, optional): Function to call after plot is saved.
517
519
  """
520
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
521
+
518
522
  fig, ax = plt.subplots(1, 1, figsize=(9, 6), tight_layout=True)
519
523
 
520
524
  if 0 < len(names) < 21: # display per-class legend if < 21 classes
@@ -6,7 +6,6 @@ from pathlib import Path
6
6
  from typing import Callable, Dict, List, Optional, Union
7
7
 
8
8
  import cv2
9
- import matplotlib.pyplot as plt
10
9
  import numpy as np
11
10
  import torch
12
11
  from PIL import Image, ImageDraw, ImageFont
@@ -534,8 +533,9 @@ def plot_labels(boxes, cls, names=(), save_dir=Path(""), on_plot=None):
534
533
  save_dir (Path, optional): Directory to save the plot.
535
534
  on_plot (Callable, optional): Function to call after plot is saved.
536
535
  """
537
- import pandas # scope for faster 'import ultralytics'
538
- import seaborn # scope for faster 'import ultralytics'
536
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
537
+ import pandas
538
+ import seaborn
539
539
 
540
540
  # Filter matplotlib>=3.7.2 warning and Seaborn use_inf and is_categorical FutureWarnings
541
541
  warnings.filterwarnings("ignore", category=UserWarning, message="The figure layout has changed to tight")
@@ -819,7 +819,8 @@ def plot_results(file="path/to/results.csv", dir="", segment=False, pose=False,
819
819
  >>> from ultralytics.utils.plotting import plot_results
820
820
  >>> plot_results("path/to/results.csv", segment=True)
821
821
  """
822
- import pandas as pd # scope for faster 'import ultralytics'
822
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
823
+ import pandas as pd
823
824
  from scipy.ndimage import gaussian_filter1d
824
825
 
825
826
  save_dir = Path(file).parent if file else Path(dir)
@@ -878,6 +879,8 @@ def plt_color_scatter(v, f, bins=20, cmap="viridis", alpha=0.8, edgecolors="none
878
879
  >>> f = np.random.rand(100)
879
880
  >>> plt_color_scatter(v, f)
880
881
  """
882
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
883
+
881
884
  # Calculate 2D histogram and corresponding colors
882
885
  hist, xedges, yedges = np.histogram2d(v, f, bins=bins)
883
886
  colors = [
@@ -903,7 +906,8 @@ def plot_tune_results(csv_file="tune_results.csv"):
903
906
  Examples:
904
907
  >>> plot_tune_results("path/to/tune_results.csv")
905
908
  """
906
- import pandas as pd # scope for faster 'import ultralytics'
909
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
910
+ import pandas as pd
907
911
  from scipy.ndimage import gaussian_filter1d
908
912
 
909
913
  def _save_one_file(file):
@@ -980,6 +984,8 @@ def feature_visualization(x, module_type, stage, n=32, save_dir=Path("runs/detec
980
984
  n (int, optional): Maximum number of feature maps to plot.
981
985
  save_dir (Path, optional): Directory to save results.
982
986
  """
987
+ import matplotlib.pyplot as plt # scope for faster 'import ultralytics'
988
+
983
989
  for m in {"Detect", "Segment", "Pose", "Classify", "OBB", "RTDETRDecoder"}: # all model heads
984
990
  if m in module_type:
985
991
  return
@@ -30,11 +30,6 @@ from ultralytics.utils import (
30
30
  )
31
31
  from ultralytics.utils.checks import check_version
32
32
 
33
- try:
34
- import thop
35
- except ImportError:
36
- thop = None # conda support without 'ultralytics-thop' installed
37
-
38
33
  # Version checks (all default to version>=min_version)
39
34
  TORCH_1_9 = check_version(torch.__version__, "1.9.0")
40
35
  TORCH_1_13 = check_version(torch.__version__, "1.13.0")
@@ -404,6 +399,11 @@ def get_flops(model, imgsz=640):
404
399
  Returns:
405
400
  (float): The model FLOPs in billions.
406
401
  """
402
+ try:
403
+ import thop
404
+ except ImportError:
405
+ thop = None # conda support without 'ultralytics-thop' installed
406
+
407
407
  if not thop:
408
408
  return 0.0 # if not installed return 0.0 GFLOPs
409
409
 
@@ -811,6 +811,11 @@ def profile_ops(input, ops, n=10, device=None, max_num_obj=0):
811
811
  >>> m2 = nn.SiLU()
812
812
  >>> profile_ops(input, [m1, m2], n=100) # profile over 100 iterations
813
813
  """
814
+ try:
815
+ import thop
816
+ except ImportError:
817
+ thop = None # conda support without 'ultralytics-thop' installed
818
+
814
819
  results = []
815
820
  if not isinstance(device, torch.device):
816
821
  device = select_device(device)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ultralytics
3
- Version: 8.3.123
3
+ Version: 8.3.125
4
4
  Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
6
6
  Maintainer-email: Ultralytics <hello@ultralytics.com>
@@ -5,13 +5,13 @@ tests/test_cuda.py,sha256=vCpPMAkEUQrQMVe4oMwGZQVOiuujEAkZ2zturNXFF-4,6256
5
5
  tests/test_engine.py,sha256=aGqZ8P7QO5C_nOa1b4FOyk92Ysdk5WiP-ST310Vyxys,4962
6
6
  tests/test_exports.py,sha256=dhZn86LdbapW15RthQF870LGxDjC1MUZhlGdBgPmgIQ,9716
7
7
  tests/test_integrations.py,sha256=dQteeRsRVuT_p5-T88-7jqT65Zm9iAXkyKg-KQ1_TQ8,6341
8
- tests/test_python.py,sha256=NDIqkKt-awgjq45y29xopZLhX8kkknqYz81Wm7ixqXo,25495
8
+ tests/test_python.py,sha256=hkOJc0Ejin3Bywyw0BT4pPex5hwwfbmw0K5ChRtvdvw,25398
9
9
  tests/test_solutions.py,sha256=BIvg9zW0a_ggEmrPKgB_Y0MncveH-eYuN5KlqdJ6nHs,5726
10
- ultralytics/__init__.py,sha256=FzBnkV__4DhnrF8Rs0JzvAR9A3VOlusTeRBaIY30-Do,730
10
+ ultralytics/__init__.py,sha256=4QZuLQ9zDL-596BL2iVx4dIiVPri_412418f6UrtZDQ,730
11
11
  ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
12
12
  ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
13
- ultralytics/cfg/__init__.py,sha256=ZXbvd-lyu0IIwVYAN6NH3KbQ5MLC5865Lh2c7IDkNSw,39675
14
- ultralytics/cfg/default.yaml,sha256=zSiCmQp_HRlh0gZe_AZSjNQNe1aNDoX2vcNUo5oJs2Q,8306
13
+ ultralytics/cfg/__init__.py,sha256=We3ti0mvUQrGRmUPcufDGboW0YAO3nSRYuoWxGagk3M,39462
14
+ ultralytics/cfg/default.yaml,sha256=ceGQ1n6gAhImYs5xwn4uWrX4jzQffVbNnKcWOScy-k0,8296
15
15
  ultralytics/cfg/datasets/Argoverse.yaml,sha256=_xlEDIJ9XkUo0v_iNL7FW079BoSeZtKSuLteKTtGbA8,3275
16
16
  ultralytics/cfg/datasets/DOTAv1.5.yaml,sha256=SHND_CFkojxw5iQD5Mcgju2kCZIl0gW2ajuzv1cqoL0,1224
17
17
  ultralytics/cfg/datasets/DOTAv1.yaml,sha256=j_DvXVQzZ4dQmf8I7oPX4v9xO3WZXztxV4Xo9VhUTsM,1194
@@ -99,35 +99,34 @@ ultralytics/cfg/models/v9/yolov9e.yaml,sha256=Olr2PlADpkD6N1TiVyAJEMzkrA7SbNul1n
99
99
  ultralytics/cfg/models/v9/yolov9m.yaml,sha256=WcKQ3xRsC1JMgA42Hx4xzr4FZmtE6B3wKvqhlQxkqw8,1411
100
100
  ultralytics/cfg/models/v9/yolov9s.yaml,sha256=j_v3JWaPtiuM8aKJt15Z_4HPRCoHWn_G6Z07t8CZyjk,1391
101
101
  ultralytics/cfg/models/v9/yolov9t.yaml,sha256=Q8GpSXE7fumhuJiQg4a2SkuS_UmnXqp-eoZxW_C0vEo,1375
102
- ultralytics/cfg/solutions/default.yaml,sha256=c-9thwI7y7VmIoIM6AW70Z0r825SToH2h7gSCsUoAak,1664
103
102
  ultralytics/cfg/trackers/botsort.yaml,sha256=TpRaK5kH_-QbjCQ7ekM4s_7j8I8ti3q8Hs7WDz4rEwA,1215
104
103
  ultralytics/cfg/trackers/bytetrack.yaml,sha256=6u-tiZlk16EqEwkNXaMrza6PAQmWj_ypgv26LGCtPDg,886
105
104
  ultralytics/data/__init__.py,sha256=nAXaL1puCc7z_NjzQNlJnhbVhT9Fla2u7Dsqo7q1dAc,644
106
105
  ultralytics/data/annotator.py,sha256=VEwb11FsEZm75qlEp8XDHFGKW0_rGsEaFDaBVd771Kw,2902
107
106
  ultralytics/data/augment.py,sha256=hAnd6yvlauJYk0Ek3_rTPc0RC8sTUfTk_GogMeH61MA,129231
108
- ultralytics/data/base.py,sha256=uMh_xzs6ci1hciDLpbVW2ZQr7js0o8jctE8KhL2T7Z4,19015
107
+ ultralytics/data/base.py,sha256=bsASjxdkvojkFjas-JfFNSpBjo0GRAbYKDh64Y2hCH4,19015
109
108
  ultralytics/data/build.py,sha256=FVIkgLGv5n1C7SRDrQiKOMDcI7V59WmEihKslzvEISg,9651
110
109
  ultralytics/data/converter.py,sha256=znXH2XTdo0Q4NDHMny1ydVBvrxKn2kbbwI-X5bn1MlQ,26890
111
110
  ultralytics/data/dataset.py,sha256=hbsjhmZBO-T1_gkUAm128kKowdwsLNwnK2lhnzmxJB8,34826
112
- ultralytics/data/loaders.py,sha256=o844tZlfZEhXop16t-hwaEQHhbfP3_bQMS0whF_NSos,28531
111
+ ultralytics/data/loaders.py,sha256=MRu9ylvwLfBxX2eH4wRNvk4rNyUEIHBb8c0QyDOX-8c,28488
113
112
  ultralytics/data/split.py,sha256=6LHB1z8woXurWjXfM-Zm2thRr1KXvzR18CFJA-SDUvE,4677
114
113
  ultralytics/data/split_dota.py,sha256=ihG56YfNFZJDq1r7Zcgk8fKzde3gn21W0f67ub6nT68,11879
115
- ultralytics/data/utils.py,sha256=HET4rbj4iUcjen0t8E_Qo_9S9RGPVQRYL-j0KI0qflI,35269
114
+ ultralytics/data/utils.py,sha256=rScK5o-WgcjZ-x-WOHv5EnPWfl2-ZHCg-EdDImND9xs,35263
116
115
  ultralytics/data/scripts/download_weights.sh,sha256=0y8XtZxOru7dVThXDFUXLHBuICgOIqZNUwpyL4Rh6lg,595
117
116
  ultralytics/data/scripts/get_coco.sh,sha256=UuJpJeo3qQpTHVINeOpmP0NYmg8PhEFE3A8J3jKrnPw,1768
118
117
  ultralytics/data/scripts/get_coco128.sh,sha256=qmRQl_hOKrsdHrTrnyQuFIH01oDz3lfaz138OgGfLt8,650
119
118
  ultralytics/data/scripts/get_imagenet.sh,sha256=hr42H16bM47iT27rgS7MpEo-GeOZAYUQXgr0B2cwn48,1705
120
119
  ultralytics/engine/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
121
- ultralytics/engine/exporter.py,sha256=56PU45SvNhYym9JiJctZXO5NkW-cwzTu5o7yIqx13Fc,70251
122
- ultralytics/engine/model.py,sha256=wS1cwgv0iyhsslMAZYMGlYDWitDIRW96d7MxwW-Sw5o,52817
120
+ ultralytics/engine/exporter.py,sha256=aaZ_-np1q0klWtDXp6CxVjyiZ0DDXx-8Pqg4jZSByuE,70246
121
+ ultralytics/engine/model.py,sha256=37qGh6aqqPTUyMfpsvBQMaZ1Av7eJDe6mfRl9GvlfKg,52860
123
122
  ultralytics/engine/predictor.py,sha256=YJ5l-0qIpr6JAJxowswtZ0IqmXBqVTvAA9vR40v0sCM,21752
124
123
  ultralytics/engine/results.py,sha256=-JPBn_YMyZv6HhdlyhjRIZCcMf41LTyWID7JrEP64rc,79632
125
- ultralytics/engine/trainer.py,sha256=fdB8H6brnnQAL-ZFP6nmNmKMze0_qy0OT3jJg1B5uhQ,38864
126
- ultralytics/engine/tuner.py,sha256=IyFKsh4Q4a1DsjfK02DdN9cufAiBDhdhIq7F7ddguys,12646
124
+ ultralytics/engine/trainer.py,sha256=1J_by51vXccnF-uCB_40eUsuPLDexCEWv4775v7RrAQ,38859
125
+ ultralytics/engine/tuner.py,sha256=zEW1UpLlZ6N4xbvS7MxICkshRlaFgLNfuADA0VfRpao,12629
127
126
  ultralytics/engine/validator.py,sha256=jfV81wuFDgrVVXEcPzgOpxAPrAZn-1LgpKwu9l_1-ts,17050
128
127
  ultralytics/hub/__init__.py,sha256=wDtAUKdfqob95tfFHgDJFXcsNSDSdoIQkJTm-CfIUTI,6616
129
128
  ultralytics/hub/auth.py,sha256=_bGQVLTgP-ina4fQxq2M7qkj9zKKfxb99_VWgN3S_4k,5549
130
- ultralytics/hub/session.py,sha256=OPPIF6kljByP3hzMwUz4ti4NjI4PHSrbXMktJQzRIJc,18709
129
+ ultralytics/hub/session.py,sha256=Hohzn2L2QJTYszIHqwxnsK4V-0MOU-8ldMIfpxMtLSE,18708
131
130
  ultralytics/hub/utils.py,sha256=luSqI4Ym7A1NRFrDsryPTDrlFL8FJdWQ9Zyrl9d-Abs,9661
132
131
  ultralytics/hub/google/__init__.py,sha256=rV9_KoRBwYlwyx3QLaBp1opw5Sjrbgl0YoDHtXoHIMw,8429
133
132
  ultralytics/models/__init__.py,sha256=DqQFFYJ4IQlqIDb61H1HzcnZU7SuHN-43bw94-l-YAQ,309
@@ -148,22 +147,22 @@ ultralytics/models/rtdetr/val.py,sha256=4KsGuWOsik7JXpU8mUY6ts7_wWuPvcNSxiAGIiGS
148
147
  ultralytics/models/sam/__init__.py,sha256=iR7B06rAEni21eptg8n4rLOP0Z_qV9y9PL-L93n4_7s,266
149
148
  ultralytics/models/sam/amg.py,sha256=r_duG0DCeCyTYfhcVh-ti10FPMl4VGL4SKc8yvbQpNU,11050
150
149
  ultralytics/models/sam/build.py,sha256=Vhml3zBGDcRO-efauNdM0ZlKTV10ADAj_aT823lPJv8,12515
151
- ultralytics/models/sam/model.py,sha256=19zgkysRYJ-9hKSAv0pQk-G7dW0ndZz_VFW7-WzCIx0,7111
152
- ultralytics/models/sam/predict.py,sha256=hWZs3rP96F3bUTx93HqhQA1phCLdh_oQkqlMZuU95Cg,82376
150
+ ultralytics/models/sam/model.py,sha256=XWeFKNuSTuc7mgGnCQpSMgRVeLD7TedUiUtrTjiS8SY,7135
151
+ ultralytics/models/sam/predict.py,sha256=tT_-v2dJInrZaOse1V7q8PoHtUDsrNjhopn0FRlImtg,82453
153
152
  ultralytics/models/sam/modules/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
154
153
  ultralytics/models/sam/modules/blocks.py,sha256=Kj9bWyP1E96JPllJS8cJ2FSxPdkQChZdvogm3OPPF2E,45935
155
154
  ultralytics/models/sam/modules/decoders.py,sha256=4Ijtkl7g_UmLMNEGokt1C05T05MkUczFIRJIUX0gDDc,25654
156
155
  ultralytics/models/sam/modules/encoders.py,sha256=uXP-CMjtTRCGD2hkbDfXjKSrW0l6Lj_pyx3ZwztYZcw,37614
157
156
  ultralytics/models/sam/modules/memory_attention.py,sha256=2HWCr7GrXMRX_V3RTfz44i2W44owpStPZU8Jq2hM0gE,12964
158
157
  ultralytics/models/sam/modules/sam.py,sha256=PJxBIfJdJTe-NLWZZgmSWbnvHhyQjzr7gXNarjqBNJE,52628
159
- ultralytics/models/sam/modules/tiny_encoder.py,sha256=p6386bsmIwgZq1wfV7h6dcnI6955SBO2bBrp0HwjnYQ,40837
158
+ ultralytics/models/sam/modules/tiny_encoder.py,sha256=1TDefN-f6QEOEDRZGIrRZYI2T9iYf7f1l-Y6kOdr1O4,40865
160
159
  ultralytics/models/sam/modules/transformer.py,sha256=YRhoriZ-j37kxq19kArfv2DSOz2Jj9DAbs2mcOBVORw,14674
161
160
  ultralytics/models/sam/modules/utils.py,sha256=3PatFjbgO1uasMZXXLJw23CrjuYTW7BS9NM4aXom-zY,16294
162
161
  ultralytics/models/utils/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
163
162
  ultralytics/models/utils/loss.py,sha256=FShJFvzFBk0HRepRhiSVNz9J-Cq08FxkSNXhLppycI0,19993
164
163
  ultralytics/models/utils/ops.py,sha256=SuBnwwgUTqByNHpufobGLW72yO2cyfZFi14KAFWSjjw,13613
165
164
  ultralytics/models/yolo/__init__.py,sha256=or0j5xvcM0usMlsFTYhNAOcQUri7reD0cD9JR5b7zDk,307
166
- ultralytics/models/yolo/model.py,sha256=8TbfllTKxvNzr4MlMAFfTV8s-144AUSNUyO_7Ps6aKA,14277
165
+ ultralytics/models/yolo/model.py,sha256=tZoatV-pWVi4ADyYoesui_3qr-QLdbRpFMMG55CsY_k,14272
167
166
  ultralytics/models/yolo/classify/__init__.py,sha256=9--HVaNOfI1K7rn_rRqclL8FUAnpfeBrRqEQIaQw2xM,383
168
167
  ultralytics/models/yolo/classify/predict.py,sha256=JV9szginTQ9Lpob0FozhKMiEIu1vVaYg4YItuVK2AFM,4081
169
168
  ultralytics/models/yolo/classify/train.py,sha256=rv2CJv9fzvtHf2q4l5g0RsjplWKeLpz637kKqjtrLNY,9737
@@ -193,8 +192,8 @@ ultralytics/models/yolo/yoloe/train.py,sha256=St3zw_XWRol9pODWU4lvKlJnWYr1lmWQNu
193
192
  ultralytics/models/yolo/yoloe/train_seg.py,sha256=l0SOMQQd0Y_EBBHhTNekgrQsftqhYyK4oWTdCg1dLrE,4633
194
193
  ultralytics/models/yolo/yoloe/val.py,sha256=oA8cVT3pBXF6aPZy7ITq0mDcktRuIgks8tTtqMRISyY,8431
195
194
  ultralytics/nn/__init__.py,sha256=rjociYD9lo_K-d-1s6TbdWklPLjTcEHk7OIlRDJstIE,615
196
- ultralytics/nn/autobackend.py,sha256=ng6CUi82BrV6qGVsif_U_1E4foL19N7isB7tQGECTGE,39314
197
- ultralytics/nn/tasks.py,sha256=EwRC70qA3eP8Xp-gGP8OuN-q8LCGDrq1iRue7ncRSV4,62916
195
+ ultralytics/nn/autobackend.py,sha256=03DGRLuVDJ8T2zWFqmAX0eOhy42bhIRS7KdpSII8bEE,39309
196
+ ultralytics/nn/tasks.py,sha256=0rnM6Z01BUnRtUwCkTwVsPxZ_D3A5tNbBjd7aEoxxns,62943
198
197
  ultralytics/nn/text_model.py,sha256=8_7SRejKZA4Pi-ha0gjcWrQDDCDMBhtwlg8pPMWgjDE,13145
199
198
  ultralytics/nn/modules/__init__.py,sha256=dXLtIk9rt944WfsTdpgEdWOg3HQEHdwQztuZ6WNJygs,3144
200
199
  ultralytics/nn/modules/activation.py,sha256=PvXZkA9AzEntR575JkFORdmtcRwATyy0lje-uHA5_8w,2210
@@ -205,48 +204,49 @@ ultralytics/nn/modules/transformer.py,sha256=tC80QKFaLtWZo0zVNTuORX4pOu6HVs2wS0v
205
204
  ultralytics/nn/modules/utils.py,sha256=rn8yTObZGkQoqVzjbZWLaHiytppG4ffjMME4Lw60glM,6092
206
205
  ultralytics/solutions/__init__.py,sha256=pjNYva0qnw-4hf_tTLx_dgIfg24XrYLLp3kygPj95rs,1113
207
206
  ultralytics/solutions/ai_gym.py,sha256=QRrZGMka83NY4B9gU3N2GxTaomo0WmTMNLxkNZTxo9U,5763
208
- ultralytics/solutions/analytics.py,sha256=O8dXdDTpHPRlz2vAGMvef1NfWUXBvoYt2G_TQI_UjoQ,11983
207
+ ultralytics/solutions/analytics.py,sha256=u-khRAViGupjq9mkuAFCl9G3yE8hXfXASfKZd_SQZ-8,12111
208
+ ultralytics/solutions/config.py,sha256=ogXWpE0LhVXHz05M2ChrVu5usIxsRy2yxraHuSyc_V0,5330
209
209
  ultralytics/solutions/distance_calculation.py,sha256=E13siGlQTqaGCk0xULk5Q86PwxiBAL4XWp83kQPb0YE,5751
210
- ultralytics/solutions/heatmap.py,sha256=dagbZ0Vn4UdywNyiAypYW5v1uzOWf521QrkzmqyeCEc,5626
210
+ ultralytics/solutions/heatmap.py,sha256=lXYptA_EbypipF7YJMjsxxBzLAgsroLcdqypvNAhduA,5569
211
211
  ultralytics/solutions/instance_segmentation.py,sha256=HxzFf752PwjAjZhrf8BzI-gEey_f9mjxTOqJsLHSIB8,3498
212
- ultralytics/solutions/object_blurrer.py,sha256=OCLHCZul8cQOxK-HTV48rCWmgr_na8x9F9jf8FSAQgk,3954
212
+ ultralytics/solutions/object_blurrer.py,sha256=0oSDdziKBw4ZxEwD4nGNrOcNPFs3bAux39RIJ87vVUE,3947
213
213
  ultralytics/solutions/object_counter.py,sha256=7u8OkFye91R9tf1Ar19ttXhKcoB6ziyi0pZfbHaQJ5U,10044
214
- ultralytics/solutions/object_cropper.py,sha256=RNk_v_XRXm9Ye2TsKG5CPd3TDsRaiODWpy8MvYqkSLs,3382
215
- ultralytics/solutions/parking_management.py,sha256=SiVxRl44OxxYUXIzNOxOBqtaFJSRRpD_gTsNyvB1n5o,13277
214
+ ultralytics/solutions/object_cropper.py,sha256=L6QZC5as_cUT42TMzeyXmkHa7vBi2UpNFf_-Jc7C1G0,3316
215
+ ultralytics/solutions/parking_management.py,sha256=BV-2lpSfgmK7fib3DnPSZ5rtLdy11c8pBQm-72iTetc,13289
216
216
  ultralytics/solutions/queue_management.py,sha256=p1-cuI_rs4ygtlBryXjE65NYG2bnZXhp3ylggFnWcRs,4344
217
217
  ultralytics/solutions/region_counter.py,sha256=Zn35YRXNzhBk27D9MLOHBYe2L1o6H2ey3mEwCXofB_E,5418
218
- ultralytics/solutions/security_alarm.py,sha256=mbUtqoLgjAWz9k3pjMoEZY_PR-lhjiic1NK90FhEJkw,6250
219
- ultralytics/solutions/solutions.py,sha256=OZAmwmqCOK8SI5dpZFrzUkrPIUFGMcgPL5zV4ymzkzU,32688
220
- ultralytics/solutions/speed_estimation.py,sha256=dbHzj9NWrcuMXYbBJAZNcQ3D9zjKV8PsNkU6orOqf7Q,5344
218
+ ultralytics/solutions/security_alarm.py,sha256=cmUWvz7U9IAxlOr-QCIU_j95lc2c8eUx9wI04t1vDFU,6251
219
+ ultralytics/solutions/solutions.py,sha256=MV2sKr0mHVMh-dT2SmiYkYLFCdoNz-2VA0z4a7fWK_8,32503
220
+ ultralytics/solutions/speed_estimation.py,sha256=r7S5nGIx8PTV-zC4zCI36lQD2DVy5cen5cTXItfQIHo,5318
221
221
  ultralytics/solutions/streamlit_inference.py,sha256=M0ppTFInqSPrdytZBLH8x-XoA7zFc7PaRQ51wHG9ppU,9846
222
- ultralytics/solutions/trackzone.py,sha256=efko4U8zT8lyNLLo9zF543rTXHefeYthxf9GV3c2TiU,3860
223
- ultralytics/solutions/vision_eye.py,sha256=DHf3pQzNqP71oYx3QXflvcGsg4nEYJCD1SOdSOxiWBk,2965
222
+ ultralytics/solutions/trackzone.py,sha256=mfklnZcVRqI3bbhPiHF2iSoV6INcd10wwwGP4tlK7L0,3854
223
+ ultralytics/solutions/vision_eye.py,sha256=7YrMqZkR28LLNHWxX3Ye78GvPdXXuouQAmgMdGwRLQ4,2953
224
224
  ultralytics/trackers/__init__.py,sha256=Zlu_Ig5osn7hqch_g5Be_e4pwZUkeeTQiesJCi0pFGI,255
225
225
  ultralytics/trackers/basetrack.py,sha256=LYvWB5d7Woyrz_RlxaopjV07RQKH3sff_lZJfMcMxcA,4450
226
226
  ultralytics/trackers/bot_sort.py,sha256=rpaj7X8COT0Vi5GFR9z-CGSBgJ7gTfFx2wTSZFTnhco,11466
227
227
  ultralytics/trackers/byte_tracker.py,sha256=D7JQ_6V8OUMQryxTrAr010UXMSaboQnI7T1xppzHXYg,20921
228
- ultralytics/trackers/track.py,sha256=wuja3-xceuhaTEJyD2VqRBJUodPEM7-4iK47MkxshjM,4830
228
+ ultralytics/trackers/track.py,sha256=ghFyAaXg1fp7QPX_SDWkH05cx07xnAlhUypkT3djXD0,4825
229
229
  ultralytics/trackers/utils/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
230
230
  ultralytics/trackers/utils/gmc.py,sha256=dz3I5LbIv7h1__Xg7rGHecQFE32VFTe54tUnxb8F0Z8,14466
231
231
  ultralytics/trackers/utils/kalman_filter.py,sha256=A0CqOnnaKH6kr0XwuHzyHmIU6aJAjJYxF9jVlNBKZHo,21326
232
232
  ultralytics/trackers/utils/matching.py,sha256=7eIufSdeN7cXuFMjvcfvz0Ldq84m4YKZl5IGxBR8IIo,7169
233
- ultralytics/utils/__init__.py,sha256=qV5nw3ED1NuSCoYwW3WpT6BTLeCnoH7KJgbPZU_3Sbo,50422
233
+ ultralytics/utils/__init__.py,sha256=mmLPuinPhaSyvSfDdsyADIjlJQ2ow5z3OhYFo2NxwE0,52679
234
234
  ultralytics/utils/autobatch.py,sha256=kg05q2qKg74y_Uq2vvr01i3KhLfpVR7sT0IXBt3_kyI,4921
235
- ultralytics/utils/benchmarks.py,sha256=GXcatQqAUCBg3lSmzR5ZEZDYWdPREtFapHP-S4wj7G4,30357
236
- ultralytics/utils/checks.py,sha256=5bkna--ZH4FJDZtgef_K4xgjiKOZqCarTqIE4Z0vwJU,32628
237
- ultralytics/utils/dist.py,sha256=e-DK_YowV7D9rDGQyWR9Kaosxp2eWe2EogSWnnUMthc,4098
238
- ultralytics/utils/downloads.py,sha256=IvHng2-bApoyi-QMvesGwMmFNqEFiXPIKiiW16Q-U4M,22220
235
+ ultralytics/utils/benchmarks.py,sha256=Tcmq8e04Gw5nNtV4vXIWnr7zfV21PQ6Tqg_0srbt-fc,30162
236
+ ultralytics/utils/checks.py,sha256=NtDOmKMmsiOiOecjBoaLFQLp2K_kr7LFFO-gxSBDgYU,32688
237
+ ultralytics/utils/dist.py,sha256=aytW0JEkcA5ZTZucV92ot7Bn-apiej8aLk3QNWicjAc,4103
238
+ ultralytics/utils/downloads.py,sha256=Rn8xDwn2bzgBqiYz3Xn0rm3MWjk4T-QUd2Ajlu1EpQ4,22312
239
239
  ultralytics/utils/errors.py,sha256=vY9h2evFSrHnZdHJVVrmm8Zzw4qVDLyo9DeYW5g0dFk,1573
240
240
  ultralytics/utils/export.py,sha256=1MgT6rSuofvLRR-J01EQvfHylzyO_b5BDM13imypQzA,8814
241
241
  ultralytics/utils/files.py,sha256=0K4O1cgqRiXaDw7EQK13TqA5SME_RrvfDVQSPetNr5w,8042
242
242
  ultralytics/utils/instance.py,sha256=UOEsXR9V-bXNRk6BTonASBEgeMqvzzAk4S7VdXZJUAM,18090
243
243
  ultralytics/utils/loss.py,sha256=zIDWS_0AOH-yEYLcsfmFRUkApPIZhu2ENsB0UwJYIuw,37607
244
- ultralytics/utils/metrics.py,sha256=uv5O-2Ft8wYfTvDedFxiUqMZ6Nr2CL6I9ybGZiK3e2s,53773
244
+ ultralytics/utils/metrics.py,sha256=L0d1nOqxuc_TuveiIchGclkahsUkXOpbYpwjQ8ZVzyw,53937
245
245
  ultralytics/utils/ops.py,sha256=YFwPrKlPcgEmgAWqnJVR0Ccx5NQgp5e3P-YYHwVSP0k,34779
246
246
  ultralytics/utils/patches.py,sha256=6rVT-l8WDp_Py3O-gZdv9t3PnrYRRkrX_lF3mZ1XS8c,4928
247
- ultralytics/utils/plotting.py,sha256=5QPK1y-gm4T1mK3sjfRZhIUJAyP05D1cJ7h9wHPTifU,46616
247
+ ultralytics/utils/plotting.py,sha256=8n9G1RvFAv4fk09iqZt7D-VXUqfAHoOTBcGXE7BHEE0,46807
248
248
  ultralytics/utils/tal.py,sha256=P5nPoR9qNnFuDIda0fsn8WP6m1V8r7EbvXUuhNRFFTA,20805
249
- ultralytics/utils/torch_utils.py,sha256=iaf7aJaZUadjBRvOs0vN2iIEePXIE8024anUOVkxPqE,39036
249
+ ultralytics/utils/torch_utils.py,sha256=SOdT9asxyQ-MEJGZQIH_Va9jcbonjISeHOwiFg1gRYE,39180
250
250
  ultralytics/utils/triton.py,sha256=xK9Db_ZUVDnIK1u76S2G-6ulIBsLfj9HN_YOaSrnMuU,5304
251
251
  ultralytics/utils/tuner.py,sha256=0Bp7l5dWZe1RzdvAIa11wQoX6eoAaoNRcA-EAnpofbk,6755
252
252
  ultralytics/utils/callbacks/__init__.py,sha256=hzL63Rce6VkZhP4Lcim9LKjadixaQG86nKqPhk7IkS0,242
@@ -260,9 +260,9 @@ ultralytics/utils/callbacks/neptune.py,sha256=JaI95Cj2kIjUhlEEOiDN0-Drc-fDelLhNI
260
260
  ultralytics/utils/callbacks/raytune.py,sha256=A8amUGpux7dYES-L1iSeMoMXBySGWCD1aUqT7vcG-pU,1284
261
261
  ultralytics/utils/callbacks/tensorboard.py,sha256=jgYnym3cUQFAgN1GzTyO7l3jINtfAh8zhrllDvnLuVQ,5339
262
262
  ultralytics/utils/callbacks/wb.py,sha256=iDRFXI4IIDm8R5OI89DMTmjs8aHLo1HRCLkOFKdaMG4,7507
263
- ultralytics-8.3.123.dist-info/licenses/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
264
- ultralytics-8.3.123.dist-info/METADATA,sha256=kC_n3rFeiSOMo5st7xOemdh851cEtByxNnwucTt52_s,37180
265
- ultralytics-8.3.123.dist-info/WHEEL,sha256=wXxTzcEDnjrTwFYjLPcsW_7_XihufBwmpiBeiXNBGEA,91
266
- ultralytics-8.3.123.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
267
- ultralytics-8.3.123.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
268
- ultralytics-8.3.123.dist-info/RECORD,,
263
+ ultralytics-8.3.125.dist-info/licenses/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
264
+ ultralytics-8.3.125.dist-info/METADATA,sha256=Z_UvZKfIDM36rzOfTtP77x_sD2rdAApQONjqSwDs6KI,37180
265
+ ultralytics-8.3.125.dist-info/WHEEL,sha256=GHB6lJx2juba1wDgXDNlMTyM13ckjBMKf-OnwgKOCtA,91
266
+ ultralytics-8.3.125.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
267
+ ultralytics-8.3.125.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
268
+ ultralytics-8.3.125.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.1.0)
2
+ Generator: setuptools (80.3.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,24 +0,0 @@
1
- # Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
2
-
3
- # Global configuration YAML with settings and arguments for Ultralytics Solutions
4
- # For documentation see https://docs.ultralytics.com/solutions/
5
-
6
- # Object counting settings --------------------------------------------------------------------------------------------
7
- region: # list[tuple[int, int]] object counting, queue or speed estimation region points.
8
- show_in: True # (bool) flag to display objects moving *into* the defined region
9
- show_out: True # (bool) flag to display objects moving *out of* the defined region
10
-
11
- # Heatmaps settings ----------------------------------------------------------------------------------------------------
12
- colormap: # (int | str) colormap for heatmap, Only OPENCV supported colormaps can be used.
13
-
14
- # Workouts monitoring settings -----------------------------------------------------------------------------------------
15
- up_angle: 145.0 # (float) Workouts up_angle for counts, 145.0 is default value.
16
- down_angle: 90 # (float) Workouts down_angle for counts, 90 is default value. Y
17
- kpts: [6, 8, 10] # (list[int]) keypoints for workouts monitoring, i.e. for push-ups kpts have values of [6, 8, 10].
18
-
19
- # Analytics settings ---------------------------------------------------------------------------------------------------
20
- analytics_type: "line" # (str) analytics type i.e "line", "pie", "bar" or "area" charts.
21
- json_file: # (str) parking system regions file path.
22
-
23
- # Security alarm system settings ---------------------------------------------------------------------------------------
24
- records: 5 # (int) Total detections count to send an email about security