OTVision 0.6.7__py3-none-any.whl → 0.6.9__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 (49) hide show
  1. OTVision/abstraction/pipes_and_filter.py +4 -4
  2. OTVision/application/buffer.py +5 -12
  3. OTVision/application/config.py +18 -0
  4. OTVision/application/config_parser.py +68 -11
  5. OTVision/application/detect/current_object_detector.py +2 -4
  6. OTVision/application/detect/update_detect_config_with_cli_args.py +16 -0
  7. OTVision/application/event/__init__.py +0 -0
  8. OTVision/application/event/new_otvision_config.py +6 -0
  9. OTVision/application/event/new_video_start.py +9 -0
  10. OTVision/application/{detect/detection_file_save_path_provider.py → otvision_save_path_provider.py} +8 -7
  11. OTVision/application/track/ottrk.py +203 -0
  12. OTVision/application/track/tracking_run_id.py +35 -0
  13. OTVision/application/video/__init__.py +0 -0
  14. OTVision/application/video/generate_video.py +15 -0
  15. OTVision/config.py +2 -0
  16. OTVision/detect/builder.py +35 -22
  17. OTVision/detect/cli.py +44 -1
  18. OTVision/detect/detected_frame_buffer.py +13 -1
  19. OTVision/detect/detected_frame_producer.py +14 -0
  20. OTVision/detect/detected_frame_producer_factory.py +39 -0
  21. OTVision/detect/file_based_detect_builder.py +39 -3
  22. OTVision/detect/otdet.py +109 -41
  23. OTVision/detect/otdet_file_writer.py +52 -29
  24. OTVision/detect/rtsp_based_detect_builder.py +35 -3
  25. OTVision/detect/rtsp_input_source.py +134 -37
  26. OTVision/detect/video_input_source.py +46 -14
  27. OTVision/detect/yolo.py +12 -8
  28. OTVision/domain/cli.py +10 -0
  29. OTVision/domain/detect_producer_consumer.py +3 -3
  30. OTVision/domain/frame.py +12 -0
  31. OTVision/domain/input_source_detect.py +4 -6
  32. OTVision/domain/object_detection.py +4 -6
  33. OTVision/domain/time.py +2 -2
  34. OTVision/domain/video_writer.py +30 -0
  35. OTVision/helpers/date.py +16 -0
  36. OTVision/plugin/ffmpeg_video_writer.py +298 -0
  37. OTVision/plugin/generate_video.py +24 -0
  38. OTVision/track/builder.py +2 -5
  39. OTVision/track/id_generator.py +1 -3
  40. OTVision/track/parser/chunk_parser_plugins.py +1 -19
  41. OTVision/track/parser/frame_group_parser_plugins.py +19 -74
  42. OTVision/track/stream_ottrk_file_writer.py +116 -0
  43. OTVision/track/track.py +2 -1
  44. OTVision/version.py +1 -1
  45. {otvision-0.6.7.dist-info → otvision-0.6.9.dist-info}/METADATA +6 -5
  46. {otvision-0.6.7.dist-info → otvision-0.6.9.dist-info}/RECORD +48 -36
  47. OTVision/application/detect/detected_frame_producer.py +0 -24
  48. {otvision-0.6.7.dist-info → otvision-0.6.9.dist-info}/WHEEL +0 -0
  49. {otvision-0.6.7.dist-info → otvision-0.6.9.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: OTVision
3
- Version: 0.6.7
3
+ Version: 0.6.9
4
4
  Summary: OTVision is a core module of the OpenTrafficCam framework to perform object detection and tracking.
5
5
  Project-URL: Homepage, https://opentrafficcam.org/
6
6
  Project-URL: Documentation, https://opentrafficcam.org/overview/
@@ -17,21 +17,22 @@ Classifier: Operating System :: OS Independent
17
17
  Classifier: Programming Language :: Python :: 3
18
18
  Requires-Python: >=3.11
19
19
  Requires-Dist: av==13.0.0
20
+ Requires-Dist: ffmpeg-python==0.2.0
20
21
  Requires-Dist: fire==0.7.0
21
22
  Requires-Dist: geopandas==1.0.1
22
23
  Requires-Dist: ijson==3.3.0
23
- Requires-Dist: more-itertools==10.5.0
24
+ Requires-Dist: more-itertools==10.7.0
24
25
  Requires-Dist: moviepy==1.0.3
25
26
  Requires-Dist: numpy==1.26.4; sys_platform == 'win32'
26
27
  Requires-Dist: numpy==2.1.1; sys_platform != 'win32'
27
28
  Requires-Dist: opencv-python==4.10.0.84
28
29
  Requires-Dist: pandas==2.2.3
29
30
  Requires-Dist: pyyaml==6.0.2
30
- Requires-Dist: torch==2.3.1
31
- Requires-Dist: torchvision==0.18.1
31
+ Requires-Dist: torch==2.7.1
32
+ Requires-Dist: torchvision==0.22.1
32
33
  Requires-Dist: tqdm==4.67.1
33
34
  Requires-Dist: ujson==5.10.0
34
- Requires-Dist: ultralytics==8.3.94
35
+ Requires-Dist: ultralytics==8.3.159
35
36
  Description-Content-Type: text/markdown
36
37
 
37
38
  # OTVision
@@ -1,64 +1,73 @@
1
1
  OTVision/__init__.py,sha256=CLnfgTlVHM4_nzDacvy06Z_Crc3hU6usd0mUyEvBf24,781
2
- OTVision/config.py,sha256=0ecnI0N2rS2q0Ld6gBpK4iU2iyuUw683XWjj4g-L1m4,5336
2
+ OTVision/config.py,sha256=D4NIio27JG9hZk7yHI6kNKiMxKeKa_MGfrKNDdEH370,5389
3
3
  OTVision/dataformat.py,sha256=BHF7qHzyNb80hI1EKfwcdJ9bgG_X4bp_hCXzdg7_MSA,1941
4
- OTVision/version.py,sha256=FMJEQ4Oc-KD5z3-00dYgMptQRxDN5LgvDe6DvUmDwwI,175
4
+ OTVision/version.py,sha256=7tay3MZvaKP1TfrBOGIk7bf5JUEEGJMOrkbKSwKXmIo,175
5
5
  OTVision/abstraction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  OTVision/abstraction/defaults.py,sha256=ftETDe25gmr563RPSbG6flcEiNiHnRb0iXK1Zj_zdNg,442
7
7
  OTVision/abstraction/observer.py,sha256=ZFGxUUjI3wUpf5ogXg2yDe-QjCcXre6SxH5zOogOx2U,1350
8
- OTVision/abstraction/pipes_and_filter.py,sha256=rzYaWDalXnlMbfpkgI91a0FL0q1llUlCRuIQsidYDv8,940
8
+ OTVision/abstraction/pipes_and_filter.py,sha256=pzK80ZV03_n6V-bZ9_Etu-aLqZACHgBbhTBZRnhz71M,887
9
9
  OTVision/application/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- OTVision/application/buffer.py,sha256=eoK3Rfvc_72cQD3EAASzmxhznjmnIFFh3LX9fqAzXyU,1166
11
- OTVision/application/config.py,sha256=FFNmwiwZnAqDax8xIJhVhW_wK1FKrhaSzBgYXjcAoq0,13080
12
- OTVision/application/config_parser.py,sha256=CLBTEKDqREbEpf6-N7ZDPu8EV4OgWbaGfAJAPWLbhwA,9162
10
+ OTVision/application/buffer.py,sha256=qJQlNBQtriN2pqC1kfpOKk222_YHG0HNRzwC2DKBJQ0,743
11
+ OTVision/application/config.py,sha256=tTFVo2iJt3zCJ_p06FCeQOJ_NbuwmPd60ttrh-6fANI,13670
12
+ OTVision/application/config_parser.py,sha256=UKbKNy7vXldGHWN5UFg6Q0YN3PjPGevMw033i0R_VfU,11407
13
13
  OTVision/application/configure_logger.py,sha256=1TzHB-zm7vGTPtUp7m28ne4WxOyiUYeChLZU-ZPyOVQ,623
14
14
  OTVision/application/frame_count_provider.py,sha256=zN_75IM-w9Xlc5rT8OArhiWhPHR8mUfFhdzhSmQQuaM,693
15
15
  OTVision/application/get_config.py,sha256=kFRTFQ1eLzBZCIkLrsf0wk7pWIlnUQRXvoZsl0QttVM,829
16
16
  OTVision/application/get_current_config.py,sha256=iqtY10FRpn2FgLsasejjlyPFP3NrQJNKkEGo8PE5tc8,311
17
+ OTVision/application/otvision_save_path_provider.py,sha256=lUzjQ92Qjvxf9sbaZX591FuEaUW5gFAq4GpgmN1k_tM,2179
17
18
  OTVision/application/update_current_config.py,sha256=iW1rpCClTHn8tnmVSpLVxdEB0nh1O_JCyxEqog0r0NU,333
18
19
  OTVision/application/detect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
- OTVision/application/detect/current_object_detector.py,sha256=J4U5k1s902agN90FYR4M_gO8MYYa_5XkYGREjStWCxQ,1343
20
+ OTVision/application/detect/current_object_detector.py,sha256=P8BqThQGVBUMDzJ3WdNrOCEkB9h-wXqannZ9g_PYZXM,1302
20
21
  OTVision/application/detect/current_object_detector_metadata.py,sha256=xai0UBEzxr-rxXCc8mTmNDECds7mdsw2sem5HZxvQ4Q,1017
21
22
  OTVision/application/detect/detected_frame_factory.py,sha256=sW_l0xaPz44_lPEmCPKz4Xg1Mv4ZGKN9CyBCG_iN8dQ,1007
22
- OTVision/application/detect/detected_frame_producer.py,sha256=LD4AnQG04YGE68TpxmaRuWRZeCZfhp8oixk6SHTru7c,906
23
- OTVision/application/detect/detection_file_save_path_provider.py,sha256=nUyzgR7imrH8PkUl_72kdUDiolPXq1_RQqbpFwLI5Cs,2165
24
23
  OTVision/application/detect/factory.py,sha256=UCnLtgpWdNqwwjW0v2yzKF9Gacx6gewjTyy43wXs2Jg,938
25
24
  OTVision/application/detect/get_detect_cli_args.py,sha256=gezr17im8SwbuXW1suCodWRrFs8lSljNKu76SbWBgkY,265
26
25
  OTVision/application/detect/timestamper.py,sha256=us9l1GaPnSfMrUZQ5UEDBPX787ypeUiUtpOZm3JpgM0,653
27
- OTVision/application/detect/update_detect_config_with_cli_args.py,sha256=_8vaFfqqtq1tjj8twArqPKOmQBiCzdBnEKhSRNjX_yQ,3769
26
+ OTVision/application/detect/update_detect_config_with_cli_args.py,sha256=tRT4jB-ynhZ24HvA7c6pyvNDcwIs_M6w-o4k2hCONPQ,4393
27
+ OTVision/application/event/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
+ OTVision/application/event/new_otvision_config.py,sha256=Xt2YcuPfn57VUYW1nYrH1-oCpEjufuvQTJvh8QxaYdc,98
29
+ OTVision/application/event/new_video_start.py,sha256=Ydkao4v3fagJUvXASkvxgmplRb7PYY88cmj-bSxmzfk,148
28
30
  OTVision/application/track/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
31
  OTVision/application/track/get_track_cli_args.py,sha256=uebHGDB6xzttak_Z4Nos08Ay69QKT2JypfHwn1dLpIM,553
32
+ OTVision/application/track/ottrk.py,sha256=h7fkgBagCcQI9M7rI7Q4fF34pvRugAmJLnIcbdMoTyo,6711
33
+ OTVision/application/track/tracking_run_id.py,sha256=9_RgQSHR-IMgAM4LawtJWxNcVyw_E6qkZdVes3JVV0g,961
30
34
  OTVision/application/track/update_current_track_config.py,sha256=pCFNuGl6rqpsUUGm2i1kjLSuuITVXv2R79Xf81n45as,1667
31
35
  OTVision/application/track/update_track_config_with_cli_args.py,sha256=5MDr2ih4xHzZ0kI6TSQ2C4mcWsPXW2PB80kA22-M_5I,2273
36
+ OTVision/application/video/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
+ OTVision/application/video/generate_video.py,sha256=4zazQoRdwefF_R-sUcnbP-23NTWgn_aYdQJrhtJ5Ni4,513
32
38
  OTVision/convert/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
39
  OTVision/convert/convert.py,sha256=UUfzpbtMlxlJgKE6XeT5nyNqK26-K02bQDhq3o7KrXE,11050
34
40
  OTVision/detect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- OTVision/detect/builder.py,sha256=P2RbTTffetz0gBfNKKYBOKuXEJyGRk3HDyclYAXBGxY,7166
36
- OTVision/detect/cli.py,sha256=_fB_4UH_AhxUFxKDgzErieiviUZ1u51Zb66YRIXUXVE,6052
41
+ OTVision/detect/builder.py,sha256=Q6xeeP1ulxRKGvVevr-pPcFhixZHcQ9CpRvjkRWDGxg,7641
42
+ OTVision/detect/cli.py,sha256=3yf0G_B9cVm2CAz7AFzG10Cctv4ogMOxRHWEg8SZHss,7562
37
43
  OTVision/detect/detect.py,sha256=YaVS-DJXdEmh-OzwE31UPNl2uk7mcFyO_CKKTgMeiuM,1328
38
- OTVision/detect/detected_frame_buffer.py,sha256=TrLbImpvCm1B09Z3c000e2uDO5WguyVwoMmFAqH8Zvk,1505
39
- OTVision/detect/file_based_detect_builder.py,sha256=C6BqVuknbJzX-B4N4nSwJgEpt9Nf79Oen8H6so9AflU,754
40
- OTVision/detect/otdet.py,sha256=-8rZGY9NVRAwIHeVcNCjm665SmnW5UVIO_PSKdHegDA,6274
41
- OTVision/detect/otdet_file_writer.py,sha256=idgPKwhgEd18HT7HshaT304JPlSw0kT4Isn2gWJRaSk,4304
44
+ OTVision/detect/detected_frame_buffer.py,sha256=zZZZBcpNcKApPMX4xoLeq7xszDCvxA3eOF_umrwo0N4,1931
45
+ OTVision/detect/detected_frame_producer.py,sha256=thMg5nZNiArUpQI7ctGTQy8A2jxsZs5MJFJpkBPAzNk,530
46
+ OTVision/detect/detected_frame_producer_factory.py,sha256=HiFAHWTvilwyibDrzMv9skwu901d9QW3zvjc3q4Pp80,1576
47
+ OTVision/detect/file_based_detect_builder.py,sha256=G72GFhF2BCXO3fwfC9pXkbJPhRFfU6RphLRQs3ugCUQ,2315
48
+ OTVision/detect/otdet.py,sha256=cIwCBVFYWma7oJynoaT0eyIAZw-M2iH1xkvjy6-TwEM,8475
49
+ OTVision/detect/otdet_file_writer.py,sha256=mGygzanR2WwIBBouUQYRVtYwtVAlLJZJtmshVwWTgdY,5164
42
50
  OTVision/detect/pyav_frame_count_provider.py,sha256=w7p9iM3F2fljV8SD7q491gQhIHANbVczqtalcUiKj-E,453
43
- OTVision/detect/rtsp_based_detect_builder.py,sha256=5-jg4ivJhiWi3PVIILVThorDNKg-i4Z-rFqZ2n01RDY,1322
44
- OTVision/detect/rtsp_input_source.py,sha256=11R6ogEJ8tNBi7qYdV3RzlP_Bp1jojSnQe_tpDBvZBs,7552
51
+ OTVision/detect/rtsp_based_detect_builder.py,sha256=P47nKU2C1PJQmokgacv04DzJ-7eG6CUbqqg3bdQhXTQ,2662
52
+ OTVision/detect/rtsp_input_source.py,sha256=nF7AyRcbZlvYwPghvi3QbRPCHU9KTtcgtWiUdAAR4Jg,10806
45
53
  OTVision/detect/timestamper.py,sha256=VvDTzHu9fTI7qQL9x775Gc27r47R8D5Pb040ffwO04k,5288
46
- OTVision/detect/video_input_source.py,sha256=GLzG4LeZNYcOE1tHyebL51HxBHzJOVaDfJKsLiAtu4A,8775
47
- OTVision/detect/yolo.py,sha256=Ksj8X7DZmONalaMB_iz-AtXwhEk4Fu7nZNzrXpqfhQw,10451
54
+ OTVision/detect/video_input_source.py,sha256=tyvaku4EIwCjCAQyA3lXKFtzVMF325CbrDdn24mfZl0,10124
55
+ OTVision/detect/yolo.py,sha256=JDnnPO-YO30tu61sw80K9qJS6_aYqdR2dQHAhtJ3tl0,10551
48
56
  OTVision/detect/plugin_av/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
57
  OTVision/detect/plugin_av/rotate_frame.py,sha256=4wJqTYI2HRlfa4p2Ffap33vLmKIzE_EwFvQraEkQ4R8,1055
50
58
  OTVision/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
- OTVision/domain/cli.py,sha256=VNZZ_zc1x6RzndQlOFp5HSeWTg_VAiF1G3IhYymdrzA,1781
59
+ OTVision/domain/cli.py,sha256=INiw1dxQNO4XI6GGCIMhX2G08ig68FNS04fdtMt3gNs,2061
52
60
  OTVision/domain/current_config.py,sha256=Q38NCktoGNU1Z_miXNoJXLH8-NDbVszwVOMGR1aAwWM,286
53
- OTVision/domain/detect_producer_consumer.py,sha256=gD7NwscQZLmCxMDZpZkGql0oMrpGHDBBNvdTXs58Vvw,855
61
+ OTVision/domain/detect_producer_consumer.py,sha256=z2N4aXv0mlH-EZxoNUxKYyn7o4aB638YZMbExz9NgZI,840
54
62
  OTVision/domain/detection.py,sha256=SZLP-87XE3NcTkeYz7GTqp4oPMiqI1P5gILp1_yHtxY,3761
55
- OTVision/domain/frame.py,sha256=Hv1v9cegfhVGgl2MB4uKYbvngfkOLrvES_w4gD0HtMo,6410
56
- OTVision/domain/input_source_detect.py,sha256=9DzkTg5dh7_KmxE9oxdmxrcTYhvZY8hHLZwhrh7Gz2o,1245
57
- OTVision/domain/object_detection.py,sha256=kyrTbP9sZBKtGo54vCNfluDMM8wpWZST9Oqf8m8Q1y4,1394
63
+ OTVision/domain/frame.py,sha256=1H0Cqg_LvO9BEwzGRkvRyJm6AauR_yS6kq0PHujonZk,6791
64
+ OTVision/domain/input_source_detect.py,sha256=pdFnQ2xG1P4-KFWMS7a2-blx0hmR6N8Zza8GSMq4CDo,1081
65
+ OTVision/domain/object_detection.py,sha256=oCazkbarKPBMzvQ3VeY2HQpWMUOgLeJBxXT52kl1syM,1327
58
66
  OTVision/domain/serialization.py,sha256=S7gb648z_W8U3Fb6TSk7hVU4qHlGwOZ7D6FeYSLXQwM,257
59
- OTVision/domain/time.py,sha256=gVjhWNRhYKDp11CcCYHlymlWbhGEIFjWlUwVDat77eY,327
67
+ OTVision/domain/time.py,sha256=_6a4zDbhXU7DmK7PdBYWRrrO2yQ4D68qtSYLTwnwWMQ,302
68
+ OTVision/domain/video_writer.py,sha256=iYt-QXu8jaNSIwdbpEjc5hsEtHveUgqbmxme7iZNVLA,910
60
69
  OTVision/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
61
- OTVision/helpers/date.py,sha256=XK0fmXMombQ2CJ2_RXjk-bc-R8qqXRK2rDmCMBi0_G0,854
70
+ OTVision/helpers/date.py,sha256=L99CFQ7u34RwGDisFlrQoopZnkOOggQGDehWUi8kLiY,1347
62
71
  OTVision/helpers/files.py,sha256=G7zoOHzWIYrMmkjgHJHkZbh2hcGtnwZomuspthG2GsE,18444
63
72
  OTVision/helpers/formats.py,sha256=YLo_QLA2nhVREyv5N-xNW20c4nIL7DIF40E1lrsAyLE,4365
64
73
  OTVision/helpers/input_types.py,sha256=d94IYX0e-ersz3bl8xy9SklGUom-LjPUQ-BRsOmpH68,649
@@ -66,12 +75,15 @@ OTVision/helpers/log.py,sha256=fOSMTXQRQ3_3zzYL8pDlx85IXPwyDsI2WGpK-V_R47Q,4985
66
75
  OTVision/helpers/machine.py,sha256=8Bz_Eg7PS0IL4riOVeJcEIi5D9E8Ju8-JomTkW975p8,2166
67
76
  OTVision/helpers/video.py,sha256=xyI35CiWXqoeGd3HeLhZUPxrLz8GccWyzHusxoweJr4,1480
68
77
  OTVision/plugin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
+ OTVision/plugin/ffmpeg_video_writer.py,sha256=Q-exHN7aRoGEXAMyab-EGOqoKDL8ccwpB9IZhr1tjag,10428
79
+ OTVision/plugin/generate_video.py,sha256=Jxk8iQBP8YhobRIRJ535yW3gx0h4d7H8oz0rULRPgcc,840
69
80
  OTVision/plugin/yaml_serialization.py,sha256=LjJ_QLJPClRwsaw7ooagWT7LBW08OvSb527jbex1qIQ,557
70
81
  OTVision/track/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
71
- OTVision/track/builder.py,sha256=kHGV8Bb7Uh_SbVP1-tT5p68yzBqiWEeLmjM_P6wnE3A,4868
82
+ OTVision/track/builder.py,sha256=iDq9-QxU8c3CQQd5HDPzT2qkXWIyFl0fk658KQ7Soh0,4905
72
83
  OTVision/track/cli.py,sha256=Lzmij9vMuaArB8MerDcGlaefwKMgRWNWov1YLGWA6SI,4294
73
- OTVision/track/id_generator.py,sha256=qv9SZnI72sXc5ePBIke8TAB6trVs0RU1vgiAqFtpxoo,287
74
- OTVision/track/track.py,sha256=7v_qJ-J3RoU6MNLSVjwM61TFjki6YyctSOhzvE8Z8WY,2303
84
+ OTVision/track/id_generator.py,sha256=2Lkegjhz8T2FXiK1HaiS_FbNZrJjIWzHi407-IoKAHg,241
85
+ OTVision/track/stream_ottrk_file_writer.py,sha256=SyIVo2NVhrVWPbneK4Wi1cZcG6BwlzeBObYRl7_1G-A,4526
86
+ OTVision/track/track.py,sha256=iMOaukcHnPhRiU1eEccaeGEKLzBQoilaUPRVmkmt0rk,2357
75
87
  OTVision/track/exporter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
76
88
  OTVision/track/exporter/filebased_exporter.py,sha256=sdaWY4CxjawyeEKG329T92Bodf1E8wjnXuXocv0Ppgo,986
77
89
  OTVision/track/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -81,8 +93,8 @@ OTVision/track/model/filebased/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
81
93
  OTVision/track/model/filebased/frame_chunk.py,sha256=rXhQCHXWGJbePy5ZW3JZCdltGz5mZxFdcrW0mgez-2k,6771
82
94
  OTVision/track/model/filebased/frame_group.py,sha256=f-hXS1Vc5U_qf2cgNbYVeSTZ3dg5NUJhasOEHuuX1HE,2977
83
95
  OTVision/track/parser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
- OTVision/track/parser/chunk_parser_plugins.py,sha256=X86W_TBQN20ldZIEuv63FSvWBacG0wEaD0YkC9jcJVg,3142
85
- OTVision/track/parser/frame_group_parser_plugins.py,sha256=TWnGhM-N7ldN8LHZ1YYecEjn4xo2o91PyOGgr4Jzh9M,5479
96
+ OTVision/track/parser/chunk_parser_plugins.py,sha256=iHAuxnoBQvwQ2j6RYfLZgk-EmsBgU0q29bYnf4kAJIM,2607
97
+ OTVision/track/parser/frame_group_parser_plugins.py,sha256=CMl_muqSKl4scIm4URluGZtPbQmMk1JfbJm3d5Yod9g,3815
86
98
  OTVision/track/tracker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
99
  OTVision/track/tracker/filebased_tracking.py,sha256=H3WYbsSca-67898diBoixpLjBqQDnOSiqnbvvySE6fc,6576
88
100
  OTVision/track/tracker/tracker_plugin_iou.py,sha256=AecE4CXRf4qUdN3_AvSFcsW4so-zDUGAVXqzfjSb-i0,7517
@@ -98,7 +110,7 @@ OTVision/view/view_helpers.py,sha256=a5yV_6ZxO5bxsSymOmxdHqzOEv0VFq4wFBopVRGuVRo
98
110
  OTVision/view/view_track.py,sha256=vmfMqpbUfnzg_EsWiL-IIKNOApVF09dzSojHpUfYY6M,5393
99
111
  OTVision/view/view_transform.py,sha256=HvRd8g8geKRy0OoiZUDn_oC3SJC5nuXhZf3uZelfGKg,5473
100
112
  OTVision/view/helpers/OTC.ico,sha256=G9kwlDtgBXmXO3yxW6Z-xVFV2q4nUGuz9E1VPHSu_I8,21662
101
- otvision-0.6.7.dist-info/METADATA,sha256=kt20s58WTB5nfTZK6ow-iXvXmiBlOQmRk0Dks_PalDE,6228
102
- otvision-0.6.7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
103
- otvision-0.6.7.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
104
- otvision-0.6.7.dist-info/RECORD,,
113
+ otvision-0.6.9.dist-info/METADATA,sha256=I_ZMKZa7QoZMILbvCvjoIjwg1jSa4HXV7znqEQlOCtE,6265
114
+ otvision-0.6.9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
115
+ otvision-0.6.9.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
116
+ otvision-0.6.9.dist-info/RECORD,,
@@ -1,24 +0,0 @@
1
- from typing import Generator
2
-
3
- from OTVision.abstraction.pipes_and_filter import Filter
4
- from OTVision.domain.detect_producer_consumer import DetectedFrameProducer
5
- from OTVision.domain.frame import DetectedFrame, Frame
6
- from OTVision.domain.input_source_detect import InputSourceDetect
7
-
8
-
9
- class SimpleDetectedFrameProducer(DetectedFrameProducer):
10
-
11
- def __init__(
12
- self,
13
- input_source: InputSourceDetect,
14
- detection_filter: Filter[Frame, DetectedFrame],
15
- detected_frame_buffer: Filter[DetectedFrame, DetectedFrame],
16
- ) -> None:
17
- self._input_source = input_source
18
- self._detection_filter = detection_filter
19
- self._detected_frame_buffer = detected_frame_buffer
20
-
21
- def produce(self) -> Generator[DetectedFrame, None, None]:
22
- return self._detected_frame_buffer.filter(
23
- self._detection_filter.filter(self._input_source.produce())
24
- )