megadetector 10.0.13__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 megadetector might be problematic. Click here for more details.

Files changed (147) hide show
  1. megadetector/__init__.py +0 -0
  2. megadetector/api/__init__.py +0 -0
  3. megadetector/api/batch_processing/integration/digiKam/setup.py +6 -0
  4. megadetector/api/batch_processing/integration/digiKam/xmp_integration.py +465 -0
  5. megadetector/api/batch_processing/integration/eMammal/test_scripts/config_template.py +5 -0
  6. megadetector/api/batch_processing/integration/eMammal/test_scripts/push_annotations_to_emammal.py +125 -0
  7. megadetector/api/batch_processing/integration/eMammal/test_scripts/select_images_for_testing.py +55 -0
  8. megadetector/classification/__init__.py +0 -0
  9. megadetector/classification/aggregate_classifier_probs.py +108 -0
  10. megadetector/classification/analyze_failed_images.py +227 -0
  11. megadetector/classification/cache_batchapi_outputs.py +198 -0
  12. megadetector/classification/create_classification_dataset.py +626 -0
  13. megadetector/classification/crop_detections.py +516 -0
  14. megadetector/classification/csv_to_json.py +226 -0
  15. megadetector/classification/detect_and_crop.py +853 -0
  16. megadetector/classification/efficientnet/__init__.py +9 -0
  17. megadetector/classification/efficientnet/model.py +415 -0
  18. megadetector/classification/efficientnet/utils.py +608 -0
  19. megadetector/classification/evaluate_model.py +520 -0
  20. megadetector/classification/identify_mislabeled_candidates.py +152 -0
  21. megadetector/classification/json_to_azcopy_list.py +63 -0
  22. megadetector/classification/json_validator.py +696 -0
  23. megadetector/classification/map_classification_categories.py +276 -0
  24. megadetector/classification/merge_classification_detection_output.py +509 -0
  25. megadetector/classification/prepare_classification_script.py +194 -0
  26. megadetector/classification/prepare_classification_script_mc.py +228 -0
  27. megadetector/classification/run_classifier.py +287 -0
  28. megadetector/classification/save_mislabeled.py +110 -0
  29. megadetector/classification/train_classifier.py +827 -0
  30. megadetector/classification/train_classifier_tf.py +725 -0
  31. megadetector/classification/train_utils.py +323 -0
  32. megadetector/data_management/__init__.py +0 -0
  33. megadetector/data_management/animl_to_md.py +161 -0
  34. megadetector/data_management/annotations/__init__.py +0 -0
  35. megadetector/data_management/annotations/annotation_constants.py +33 -0
  36. megadetector/data_management/camtrap_dp_to_coco.py +270 -0
  37. megadetector/data_management/cct_json_utils.py +566 -0
  38. megadetector/data_management/cct_to_md.py +184 -0
  39. megadetector/data_management/cct_to_wi.py +293 -0
  40. megadetector/data_management/coco_to_labelme.py +284 -0
  41. megadetector/data_management/coco_to_yolo.py +702 -0
  42. megadetector/data_management/databases/__init__.py +0 -0
  43. megadetector/data_management/databases/add_width_and_height_to_db.py +107 -0
  44. megadetector/data_management/databases/combine_coco_camera_traps_files.py +210 -0
  45. megadetector/data_management/databases/integrity_check_json_db.py +528 -0
  46. megadetector/data_management/databases/subset_json_db.py +195 -0
  47. megadetector/data_management/generate_crops_from_cct.py +200 -0
  48. megadetector/data_management/get_image_sizes.py +164 -0
  49. megadetector/data_management/labelme_to_coco.py +559 -0
  50. megadetector/data_management/labelme_to_yolo.py +349 -0
  51. megadetector/data_management/lila/__init__.py +0 -0
  52. megadetector/data_management/lila/create_lila_blank_set.py +556 -0
  53. megadetector/data_management/lila/create_lila_test_set.py +187 -0
  54. megadetector/data_management/lila/create_links_to_md_results_files.py +106 -0
  55. megadetector/data_management/lila/download_lila_subset.py +182 -0
  56. megadetector/data_management/lila/generate_lila_per_image_labels.py +777 -0
  57. megadetector/data_management/lila/get_lila_annotation_counts.py +174 -0
  58. megadetector/data_management/lila/get_lila_image_counts.py +112 -0
  59. megadetector/data_management/lila/lila_common.py +319 -0
  60. megadetector/data_management/lila/test_lila_metadata_urls.py +164 -0
  61. megadetector/data_management/mewc_to_md.py +344 -0
  62. megadetector/data_management/ocr_tools.py +873 -0
  63. megadetector/data_management/read_exif.py +964 -0
  64. megadetector/data_management/remap_coco_categories.py +195 -0
  65. megadetector/data_management/remove_exif.py +156 -0
  66. megadetector/data_management/rename_images.py +194 -0
  67. megadetector/data_management/resize_coco_dataset.py +663 -0
  68. megadetector/data_management/speciesnet_to_md.py +41 -0
  69. megadetector/data_management/wi_download_csv_to_coco.py +247 -0
  70. megadetector/data_management/yolo_output_to_md_output.py +594 -0
  71. megadetector/data_management/yolo_to_coco.py +876 -0
  72. megadetector/data_management/zamba_to_md.py +188 -0
  73. megadetector/detection/__init__.py +0 -0
  74. megadetector/detection/change_detection.py +840 -0
  75. megadetector/detection/process_video.py +479 -0
  76. megadetector/detection/pytorch_detector.py +1451 -0
  77. megadetector/detection/run_detector.py +1267 -0
  78. megadetector/detection/run_detector_batch.py +2159 -0
  79. megadetector/detection/run_inference_with_yolov5_val.py +1314 -0
  80. megadetector/detection/run_md_and_speciesnet.py +1494 -0
  81. megadetector/detection/run_tiled_inference.py +1038 -0
  82. megadetector/detection/tf_detector.py +209 -0
  83. megadetector/detection/video_utils.py +1379 -0
  84. megadetector/postprocessing/__init__.py +0 -0
  85. megadetector/postprocessing/add_max_conf.py +72 -0
  86. megadetector/postprocessing/categorize_detections_by_size.py +166 -0
  87. megadetector/postprocessing/classification_postprocessing.py +1752 -0
  88. megadetector/postprocessing/combine_batch_outputs.py +249 -0
  89. megadetector/postprocessing/compare_batch_results.py +2110 -0
  90. megadetector/postprocessing/convert_output_format.py +403 -0
  91. megadetector/postprocessing/create_crop_folder.py +629 -0
  92. megadetector/postprocessing/detector_calibration.py +570 -0
  93. megadetector/postprocessing/generate_csv_report.py +522 -0
  94. megadetector/postprocessing/load_api_results.py +223 -0
  95. megadetector/postprocessing/md_to_coco.py +428 -0
  96. megadetector/postprocessing/md_to_labelme.py +351 -0
  97. megadetector/postprocessing/md_to_wi.py +41 -0
  98. megadetector/postprocessing/merge_detections.py +392 -0
  99. megadetector/postprocessing/postprocess_batch_results.py +2077 -0
  100. megadetector/postprocessing/remap_detection_categories.py +226 -0
  101. megadetector/postprocessing/render_detection_confusion_matrix.py +677 -0
  102. megadetector/postprocessing/repeat_detection_elimination/find_repeat_detections.py +206 -0
  103. megadetector/postprocessing/repeat_detection_elimination/remove_repeat_detections.py +82 -0
  104. megadetector/postprocessing/repeat_detection_elimination/repeat_detections_core.py +1665 -0
  105. megadetector/postprocessing/separate_detections_into_folders.py +795 -0
  106. megadetector/postprocessing/subset_json_detector_output.py +964 -0
  107. megadetector/postprocessing/top_folders_to_bottom.py +238 -0
  108. megadetector/postprocessing/validate_batch_results.py +332 -0
  109. megadetector/taxonomy_mapping/__init__.py +0 -0
  110. megadetector/taxonomy_mapping/map_lila_taxonomy_to_wi_taxonomy.py +491 -0
  111. megadetector/taxonomy_mapping/map_new_lila_datasets.py +213 -0
  112. megadetector/taxonomy_mapping/prepare_lila_taxonomy_release.py +165 -0
  113. megadetector/taxonomy_mapping/preview_lila_taxonomy.py +543 -0
  114. megadetector/taxonomy_mapping/retrieve_sample_image.py +71 -0
  115. megadetector/taxonomy_mapping/simple_image_download.py +224 -0
  116. megadetector/taxonomy_mapping/species_lookup.py +1008 -0
  117. megadetector/taxonomy_mapping/taxonomy_csv_checker.py +159 -0
  118. megadetector/taxonomy_mapping/taxonomy_graph.py +346 -0
  119. megadetector/taxonomy_mapping/validate_lila_category_mappings.py +83 -0
  120. megadetector/tests/__init__.py +0 -0
  121. megadetector/tests/test_nms_synthetic.py +335 -0
  122. megadetector/utils/__init__.py +0 -0
  123. megadetector/utils/ct_utils.py +1857 -0
  124. megadetector/utils/directory_listing.py +199 -0
  125. megadetector/utils/extract_frames_from_video.py +307 -0
  126. megadetector/utils/gpu_test.py +125 -0
  127. megadetector/utils/md_tests.py +2072 -0
  128. megadetector/utils/path_utils.py +2832 -0
  129. megadetector/utils/process_utils.py +172 -0
  130. megadetector/utils/split_locations_into_train_val.py +237 -0
  131. megadetector/utils/string_utils.py +234 -0
  132. megadetector/utils/url_utils.py +825 -0
  133. megadetector/utils/wi_platform_utils.py +968 -0
  134. megadetector/utils/wi_taxonomy_utils.py +1759 -0
  135. megadetector/utils/write_html_image_list.py +239 -0
  136. megadetector/visualization/__init__.py +0 -0
  137. megadetector/visualization/plot_utils.py +309 -0
  138. megadetector/visualization/render_images_with_thumbnails.py +243 -0
  139. megadetector/visualization/visualization_utils.py +1940 -0
  140. megadetector/visualization/visualize_db.py +630 -0
  141. megadetector/visualization/visualize_detector_output.py +479 -0
  142. megadetector/visualization/visualize_video_output.py +705 -0
  143. megadetector-10.0.13.dist-info/METADATA +134 -0
  144. megadetector-10.0.13.dist-info/RECORD +147 -0
  145. megadetector-10.0.13.dist-info/WHEEL +5 -0
  146. megadetector-10.0.13.dist-info/licenses/LICENSE +19 -0
  147. megadetector-10.0.13.dist-info/top_level.txt +1 -0
@@ -0,0 +1,134 @@
1
+ Metadata-Version: 2.4
2
+ Name: megadetector
3
+ Version: 10.0.13
4
+ Summary: MegaDetector is an AI model that helps conservation folks spend less time doing boring things with camera trap images.
5
+ Author-email: Your friendly neighborhood MegaDetector team <cameratraps@lila.science>
6
+ Maintainer-email: Your friendly neighborhood MegaDetector team <cameratraps@lila.science>
7
+ License: MIT License
8
+
9
+ Permission is hereby granted, free of charge, to any person obtaining a copy
10
+ of this software and associated documentation files (the "Software"), to deal
11
+ in the Software without restriction, including without limitation the rights
12
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
+ copies of the Software, and to permit persons to whom the Software is
14
+ furnished to do so, subject to the following conditions:
15
+
16
+ The above copyright notice and this permission notice shall be included in all
17
+ copies or substantial portions of the Software.
18
+
19
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
25
+ SOFTWARE.
26
+
27
+ Project-URL: Homepage, https://github.com/agentmorris/MegaDetector
28
+ Project-URL: Documentation, https://megadetector.readthedocs.io
29
+ Project-URL: Bug Reports, https://github.com/agentmorris/MegaDetector/issues
30
+ Project-URL: Source, https://github.com/agentmorris/MegaDetector
31
+ Keywords: camera traps,conservation,wildlife,ai,megadetector
32
+ Classifier: Programming Language :: Python :: 3
33
+ Requires-Python: <3.14,>=3.9
34
+ Description-Content-Type: text/markdown
35
+ License-File: LICENSE
36
+ Requires-Dist: mkl==2024.0; sys_platform != "darwin"
37
+ Requires-Dist: numpy>=1.26.4
38
+ Requires-Dist: Pillow>=9.5
39
+ Requires-Dist: tqdm>=4.64.0
40
+ Requires-Dist: jsonpickle>=3.0.2
41
+ Requires-Dist: humanfriendly>=2.1
42
+ Requires-Dist: matplotlib>=3.8.0
43
+ Requires-Dist: opencv-python>=4.8.0
44
+ Requires-Dist: requests>=2.31.0
45
+ Requires-Dist: fastquadtree>=1.1.2
46
+ Requires-Dist: scikit-learn>=1.3.1
47
+ Requires-Dist: pandas>=2.1.1
48
+ Requires-Dist: python-dateutil
49
+ Requires-Dist: send2trash
50
+ Requires-Dist: clipboard
51
+ Requires-Dist: dill
52
+ Requires-Dist: ruff
53
+ Requires-Dist: pytest
54
+ Requires-Dist: ultralytics-yolov5==0.1.1
55
+ Requires-Dist: yolov9pip==0.0.4
56
+ Dynamic: license-file
57
+
58
+ # MegaDetector
59
+
60
+ This package is a pip-installable version of the support/inference code for [MegaDetector](https://github.com/agentmorris/MegaDetector/?tab=readme-ov-file#megadetector), an object detection model that helps conservation biologists spend less time doing boring things with camera trap images. Complete documentation for this Python package is available at [megadetector.readthedocs.io](https://megadetector.readthedocs.io).
61
+
62
+ If you aren't looking for the Python package specifically, and you just want to learn more about what MegaDetector is all about, head over to the [MegaDetector repo](https://github.com/agentmorris/MegaDetector/?tab=readme-ov-file#megadetector).
63
+
64
+ If you don't want to run MegaDetector, and you just want to use the utilities in this package - postprocessing, manipulating large volumes of camera trap images, etc. - you may want to check out the [megadetector-utils](https://pypi.org/project/megadetector-utils/) package, which is identical to this one, but excludes all of the PyTorch/YOLO dependencies, and is thus approximately one zillion times smaller.
65
+
66
+ ## Installation
67
+
68
+ Install with:
69
+
70
+ `pip install megadetector`
71
+
72
+ MegaDetector model weights aren't downloaded at the time you install the package, but they will be (optionally) automatically downloaded the first time you run the model.
73
+
74
+ ## Package reference
75
+
76
+ See [megadetector.readthedocs.io](https://megadetector.readthedocs.io).
77
+
78
+
79
+ ## Examples of things you can do with this package
80
+
81
+ ### Run MegaDetector on one image and count the number of detections
82
+
83
+ ```
84
+ from megadetector.utils import url_utils
85
+ from megadetector.visualization import visualization_utils as vis_utils
86
+ from megadetector.detection import run_detector
87
+
88
+ # This is the image at the bottom of this page, it has one animal in it
89
+ image_url = 'https://github.com/agentmorris/MegaDetector/raw/main/images/orinoquia-thumb-web.jpg'
90
+ temporary_filename = url_utils.download_url(image_url)
91
+
92
+ image = vis_utils.load_image(temporary_filename)
93
+
94
+ # This will automatically download MDv5a; you can also specify a filename.
95
+ model = run_detector.load_detector('MDV5A')
96
+
97
+ result = model.generate_detections_one_image(image)
98
+
99
+ detections_above_threshold = [d for d in result['detections'] if d['conf'] > 0.2]
100
+ print('Found {} detections above threshold'.format(len(detections_above_threshold)))
101
+ ```
102
+
103
+ ### Run MegaDetector on a folder of images
104
+
105
+ ```
106
+ from megadetector.detection.run_detector_batch import \
107
+ load_and_run_detector_batch, write_results_to_file
108
+ from megadetector.utils import path_utils
109
+ import os
110
+
111
+ # Pick a folder to run MD on recursively, and an output file
112
+ image_folder = os.path.expanduser('~/megadetector_test_images')
113
+ output_file = os.path.expanduser('~/megadetector_output_test.json')
114
+
115
+ # Recursively find images
116
+ image_file_names = path_utils.find_images(image_folder,recursive=True)
117
+
118
+ # This will automatically download MDv5a; you can also specify a filename.
119
+ results = load_and_run_detector_batch('MDV5A', image_file_names)
120
+
121
+ # Write results to a format that Timelapse and other downstream tools like.
122
+ write_results_to_file(results,
123
+ output_file,
124
+ relative_path_base=image_folder,
125
+ detector_file=detector_filename)
126
+ ```
127
+
128
+ ## Contact
129
+
130
+ Contact <a href="cameratraps@lila.science">cameratraps@lila.science</a> with questions.
131
+
132
+ ## Gratuitous animal picture
133
+
134
+ <img src="https://github.com/agentmorris/MegaDetector/raw/main/images/orinoquia-thumb-web_detections.jpg"><br/>Image credit University of Minnesota, from the [Orinoquía Camera Traps](http://lila.science/datasets/orinoquia-camera-traps/) data set.
@@ -0,0 +1,147 @@
1
+ megadetector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ megadetector/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ megadetector/api/batch_processing/integration/digiKam/setup.py,sha256=7P1X3JYrBDXmLUeLRrzxNfDkL5lo-pY8nXsp9Cz8rOI,203
4
+ megadetector/api/batch_processing/integration/digiKam/xmp_integration.py,sha256=dbib8WseSrNpLnSTKvnmEseii5ls5WAi1C612ovmwps,17796
5
+ megadetector/api/batch_processing/integration/eMammal/test_scripts/config_template.py,sha256=UnvrgaFRBu59MuVUJa2WpG8ebcOJWcNeZEx6GWuYLzc,73
6
+ megadetector/api/batch_processing/integration/eMammal/test_scripts/push_annotations_to_emammal.py,sha256=86MluxfHY5JsslX0OWgmVUyuPP6DMDE-o6kYKdlTtMI,3583
7
+ megadetector/api/batch_processing/integration/eMammal/test_scripts/select_images_for_testing.py,sha256=z8DkkV9VU69HFPEwwTVDQI9BSJa72TMoqwRt6ZiilNo,1376
8
+ megadetector/classification/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ megadetector/classification/aggregate_classifier_probs.py,sha256=ScRlN7yV6qOES8hDwyAylKQ92Vn-klbdPGqDbPM3pGw,3417
10
+ megadetector/classification/analyze_failed_images.py,sha256=dsNajqn4c-yL6vUelxqhotdNBFLHzaONfJkMAdwX7QI,8426
11
+ megadetector/classification/cache_batchapi_outputs.py,sha256=m4HrRg2XSP1oP_1YTzPSOydnhyR1pWu0m2LbIXUUWwE,6304
12
+ megadetector/classification/create_classification_dataset.py,sha256=Sv79ocsy1sWAWzzkKg4tWruQD434faOpJGBHb4Kt3XY,25404
13
+ megadetector/classification/crop_detections.py,sha256=LWT3zzNKfJNwTVKl1-nM_qzjkdCuFjEmPRDsSZ0MV4Y,20387
14
+ megadetector/classification/csv_to_json.py,sha256=j_edQLiMyDvpZFxYDNh-BAvzwSM4zbbQEXMIH-44nAs,5894
15
+ megadetector/classification/detect_and_crop.py,sha256=Y3T1gr2DJr6LEg17QXoBvhYMihnMAmbKJ-gBmmwoMd8,36925
16
+ megadetector/classification/evaluate_model.py,sha256=x51dfebVtsObAcLafXq7xMJv7hOiwiXHM-Cg06sUAyw,19323
17
+ megadetector/classification/identify_mislabeled_candidates.py,sha256=NvLAUk5VgwyyPKMxY875V5k2iRsl-Eh_sAuZRjtgc4c,5011
18
+ megadetector/classification/json_to_azcopy_list.py,sha256=Om8efCzRwlfA5LRXtzOgdrY0P5YDofs0vuewQvKNmsA,1669
19
+ megadetector/classification/json_validator.py,sha256=EOwX2aV_GDhkz6EQqkq6iC08IuBlNiUiR4OMUXuSGWo,26417
20
+ megadetector/classification/map_classification_categories.py,sha256=VFSBQhZjJMwMDZwv-rFHs4cE3q5GionqLYumjBypZhw,10661
21
+ megadetector/classification/merge_classification_detection_output.py,sha256=N4HhGSKZz_YbgY8SNtxxjw3S-CvpwfpIEsj2WCpUD7M,20163
22
+ megadetector/classification/prepare_classification_script.py,sha256=hD_vdd4oMBimz4rTkuTVI51dYnlDXHaAoBdL7FvXan4,6361
23
+ megadetector/classification/prepare_classification_script_mc.py,sha256=e9wLNy3EGLrUBSdhDacoa4Y9ciY1CI6YnYy9gaE7k-U,7061
24
+ megadetector/classification/run_classifier.py,sha256=JKMdeD33yo-CY6lyTfPZmOWnvr_Ft-vDbysfdSiXSX4,9323
25
+ megadetector/classification/save_mislabeled.py,sha256=hoxYmGbfGxEwvuH9JcYDW8NOs8CxCx0K4UtMHDaG0KI,3386
26
+ megadetector/classification/train_classifier.py,sha256=ksAcLpIn-D1sq8jdJjpjru8cUNXLhEoNVJsfWRayfLA,32334
27
+ megadetector/classification/train_classifier_tf.py,sha256=sXJ9i_BhEam5ndxm65cwe3CaZIFTg5-eEdKGhMpEhHo,28051
28
+ megadetector/classification/train_utils.py,sha256=BNOnGl2dNegsQdOYzfq5IE3hsS2gL3eUd9q-Tgimf_E,11293
29
+ megadetector/classification/efficientnet/__init__.py,sha256=e-jfknjzCc5a0CSW-TaZ2vi0SPU1OMIsayoz2s94QAo,182
30
+ megadetector/classification/efficientnet/model.py,sha256=o7m379-FVeHrioW1HSJ48fLUqH9MMlf4b1BwktL2EoQ,17120
31
+ megadetector/classification/efficientnet/utils.py,sha256=76SQdh0zK7CFcwTW4kiechCGMHSftPT0tC1PtqNRLZI,24756
32
+ megadetector/data_management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
+ megadetector/data_management/animl_to_md.py,sha256=N9SYd-1nXavY-T9kVmfSdBNaCVH_Lvavq4gBXGgsC5w,4615
34
+ megadetector/data_management/camtrap_dp_to_coco.py,sha256=HoCGMzZTEvnudnAjbOr-mCizXHmc8mMNSUChy_Q9PkI,9673
35
+ megadetector/data_management/cct_json_utils.py,sha256=SsTVQKS0bEOLkOUB5K51Bkr579xuDbF5eDoBp0AJxyQ,20006
36
+ megadetector/data_management/cct_to_md.py,sha256=kCRFiD5y6TpDGkQW7XyIJnxOr4bUSiRpBY5l90DyO_0,5151
37
+ megadetector/data_management/cct_to_wi.py,sha256=0WO757yJ0lEG74gOuadym-YBb16uso_4T38CfY3jbXw,9594
38
+ megadetector/data_management/coco_to_labelme.py,sha256=uYJ60XoZfHUEfLzj-EjLyeNM590skNnMp-IThWwNISo,8683
39
+ megadetector/data_management/coco_to_yolo.py,sha256=HJPi948FShnP9tOonWBrbgP1IfiJvHdbYBNeF3TGHEc,28647
40
+ megadetector/data_management/generate_crops_from_cct.py,sha256=ijQCTpqRA6e4CVYEeY5xPs5h3vqh5DKLB-5ttij7Ed0,5501
41
+ megadetector/data_management/get_image_sizes.py,sha256=r_gg1BC0ibhRFO3APkbGjwyVh4YAXkGFRKK88Y6cfa8,5717
42
+ megadetector/data_management/labelme_to_coco.py,sha256=DlgYZ7Qc57xDpxnvv7OSdW_QRU9d7bTxyYMCf_tA9UU,21119
43
+ megadetector/data_management/labelme_to_yolo.py,sha256=gQ3c2-U8v0KE4sf8MboLfbqar_kBiKhyQw4CgproXy4,12579
44
+ megadetector/data_management/mewc_to_md.py,sha256=09XHEykIG-whGkgEIkho7xfVuPlic1TYTKGAufv_tto,12637
45
+ megadetector/data_management/ocr_tools.py,sha256=ak-R4f_xjoyVqpLCYgbtN6aktD4FtNo8MbJmwpEsUF8,31369
46
+ megadetector/data_management/read_exif.py,sha256=1ytsUFs9DkExyiXlr3m4lCAAZZcbKf69hKa250_NmVI,31043
47
+ megadetector/data_management/remap_coco_categories.py,sha256=BBfnUzvV5V1yZa6dvXYiAYPyTxmXLX0hX0-izXw3WIM,7091
48
+ megadetector/data_management/remove_exif.py,sha256=NW3XU8supNHlxh7lDK37RNMy1WiNKaNeA7jQcQM0l1Y,4270
49
+ megadetector/data_management/rename_images.py,sha256=29MS4rxHI7Esym0VDmMYyMi7e9__hOkcRcy8k0Tyd04,6632
50
+ megadetector/data_management/resize_coco_dataset.py,sha256=FDq2sw6YD1VQtchsKp90_N5FsY5xpmX9gFV8obUlXtU,26739
51
+ megadetector/data_management/speciesnet_to_md.py,sha256=VlbqmuFJbXNQeHs7ndrWgwo6dK8sMXqHFWaeKNOaOq4,1436
52
+ megadetector/data_management/wi_download_csv_to_coco.py,sha256=rhqWSEmDiXs1GbHavoNwdGSqk01-a-4xmz7z7x1Qjs4,7973
53
+ megadetector/data_management/yolo_output_to_md_output.py,sha256=6O7Of-zFcZkJRuJucl1si2Z_7s2KfwQ7dKudpHomwJA,22562
54
+ megadetector/data_management/yolo_to_coco.py,sha256=FWnAfDYmCRB5LPAgycz63douzp1BtrA8X5izNpRCKhI,31348
55
+ megadetector/data_management/zamba_to_md.py,sha256=f6hK0pdVY0FhN_7DqKhY5BswYps7fO-Hy5ojmRvntok,5314
56
+ megadetector/data_management/annotations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
+ megadetector/data_management/annotations/annotation_constants.py,sha256=Fp_uaFQbMzhjMBcXOBUuTA9eOmenjPboMQojPQUaJjI,951
58
+ megadetector/data_management/databases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
+ megadetector/data_management/databases/add_width_and_height_to_db.py,sha256=EYfFGPkXyFz6ZGQfXjCK3pNXLBg0hu73wiACdEEB0E0,2964
60
+ megadetector/data_management/databases/combine_coco_camera_traps_files.py,sha256=HiQjvkdiCfAxH3giV1qst_Fxi4rvXRqwcUeammz_NJs,6629
61
+ megadetector/data_management/databases/integrity_check_json_db.py,sha256=jerYxmpiJvwAJLSOItuWQsbX7RKmM8J_uwDtefuko6w,17416
62
+ megadetector/data_management/databases/subset_json_db.py,sha256=1oTohzopppvydslh-9IL4s4G-Hy5Xl0vigCfWxMrhHY,6137
63
+ megadetector/data_management/lila/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
64
+ megadetector/data_management/lila/create_lila_blank_set.py,sha256=tApCL4XN1Vzl6YvcdI6SY4TZbHeCyHLzNYweFfX0sy0,19490
65
+ megadetector/data_management/lila/create_lila_test_set.py,sha256=CTYXEpxhGmIu5UH0wTSkY4-BEzGLXS8lb4yXeqeigFU,5705
66
+ megadetector/data_management/lila/create_links_to_md_results_files.py,sha256=XrtbM1MJtN-4PKzViGkDov8Rw-lJogF1E8_hHh6wR9U,3687
67
+ megadetector/data_management/lila/download_lila_subset.py,sha256=coLlmga7r5I37L_YxjUoERLC1JAGUjcED16oWtd072Y,5339
68
+ megadetector/data_management/lila/generate_lila_per_image_labels.py,sha256=fN8RlV_2QMtasBKIqT5ceL-hxhZ4Vx1xA9R-EvnVe74,25868
69
+ megadetector/data_management/lila/get_lila_annotation_counts.py,sha256=1U-49HVsgc_rmN1KrocI1mwFvS61FPxA9I_DyzS9YMg,5534
70
+ megadetector/data_management/lila/get_lila_image_counts.py,sha256=Jz89nNHwghguMJBUs1v_ZN5VPwg9zH9ggat-6ZsUfQ4,3518
71
+ megadetector/data_management/lila/lila_common.py,sha256=KDFzbSdidC4kIaJ2Rc1PCbwf97HB7psnGPzkqNQmwxs,10808
72
+ megadetector/data_management/lila/test_lila_metadata_urls.py,sha256=q3FAHgqHqtz4T2Nz_JcFiPMq8XdPAZqppIkpqF-Dtv8,5255
73
+ megadetector/detection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
+ megadetector/detection/change_detection.py,sha256=SjLRJf4jz5brOU-D7zGPHDDQ3LM-5F1u-RjYzIQ6tUw,28795
75
+ megadetector/detection/process_video.py,sha256=8yhD3p7AnenWqn8Se9L5w5Vcp0PURj5ycU4GbirDWrc,17891
76
+ megadetector/detection/pytorch_detector.py,sha256=B-ymeD25wvkdrPD4pdsMXPx00JmxSOMJT4hULDGeuaw,60692
77
+ megadetector/detection/run_detector.py,sha256=vyq8hnlcalrUQq7EPm4U1HrjVJYvQSWOM7ELng8M094,47923
78
+ megadetector/detection/run_detector_batch.py,sha256=dY8VghmimDZj32TCbawnT5LZNQFxO03W4rjKy6OFCEM,91456
79
+ megadetector/detection/run_inference_with_yolov5_val.py,sha256=0cjgsWEEF4WTk_FRwApLeO3yG1CB8Ly_NLRVtN2QTp4,53750
80
+ megadetector/detection/run_md_and_speciesnet.py,sha256=YQDlBfHM4mkX800OrEBUaWjc3rANkKpWrH1AgoAS9os,56410
81
+ megadetector/detection/run_tiled_inference.py,sha256=abo6sDC_ttwA28sqh29dZDb6c9BuB0WUsKVopL8xPQI,41122
82
+ megadetector/detection/tf_detector.py,sha256=SaxfXrumjeGnNuFGSQTe9KbX2B-WdV4ydgvAGbqhTis,8150
83
+ megadetector/detection/video_utils.py,sha256=6VyB3TYtE3C8e2VrK5JJpttyWi0iqdd3QYrg1BbkkRg,54055
84
+ megadetector/postprocessing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
+ megadetector/postprocessing/add_max_conf.py,sha256=E26gbpl0HbkmSiWvA7gQYcb7j2FezWXCcqm24XtumEo,1738
86
+ megadetector/postprocessing/categorize_detections_by_size.py,sha256=t1VklGGlNw8Ks-CYIZuGaIrErtILZTWx-3cYnDBhgCc,5391
87
+ megadetector/postprocessing/classification_postprocessing.py,sha256=joJC8-ZSxARluDn5eJjHIa3pUe33xImVqBVjyLIhT5o,70728
88
+ megadetector/postprocessing/combine_batch_outputs.py,sha256=w4JKTVSzQ4dl6Iba97sMx4LOE9C52O61bFGlptz3YRc,8495
89
+ megadetector/postprocessing/compare_batch_results.py,sha256=4QmpyNeYnZNTDOWcrb6z4enR0es0sxbpXO_xbhgD8rc,85446
90
+ megadetector/postprocessing/convert_output_format.py,sha256=4mQyFR_ORvobnCqJTD-IL9BKPoJP8FKv5fnw_vSUUp8,14572
91
+ megadetector/postprocessing/create_crop_folder.py,sha256=sQZWkYqyqRJRz3zIv8EMylLUM85V1zEli3llt8BOR1M,23362
92
+ megadetector/postprocessing/detector_calibration.py,sha256=UFjJ8D6tMghatLRj3CyrtJ7vrPIJkULMNsYMIj98j2M,20495
93
+ megadetector/postprocessing/generate_csv_report.py,sha256=ZDYr2O_V2-Zj6dxDyXt2Uhyy6CdCO58n-xL1reDaNrw,19539
94
+ megadetector/postprocessing/load_api_results.py,sha256=TYvLyjPkiohuH7Ci2RX9yT-revSarPEEwnzD6GutK_E,8014
95
+ megadetector/postprocessing/md_to_coco.py,sha256=SNN47Mp1btvZOoQAWkDJ3rc4d27MrPiEJBUUHw9r66M,16899
96
+ megadetector/postprocessing/md_to_labelme.py,sha256=qriJp13h36X3udqMVUGH0f7oySZiB5NOT5tfjwZVmY8,12096
97
+ megadetector/postprocessing/md_to_wi.py,sha256=Qgoy8AwW7qmkYopJWL66PegTbf--htyI6-VP_lk6deI,1233
98
+ megadetector/postprocessing/merge_detections.py,sha256=WOr9TyezKKgSjgFaCg99-kTS_YkTUcwgE04ZzfBXIPo,15700
99
+ megadetector/postprocessing/postprocess_batch_results.py,sha256=EEeuRPd_hdAQ_nFt5sgGG9gZNDeLW6_RgRo6bWVCnJo,84673
100
+ megadetector/postprocessing/remap_detection_categories.py,sha256=qL7doGWMNKO6arFzdmcd05AhY243CtWnVeXEdjmv49A,8005
101
+ megadetector/postprocessing/render_detection_confusion_matrix.py,sha256=KpUcHercKmnyjbgrn7Gq3yeq7ZrVICeYQvcqVUCUaog,26441
102
+ megadetector/postprocessing/separate_detections_into_folders.py,sha256=KxLITz7fz_w6PYalcBF0E4UWJ0tkHC1KqKyTlNADD4g,32439
103
+ megadetector/postprocessing/subset_json_detector_output.py,sha256=k0wIiIMRZai93dBqCJzCFNPi4kytWchyISHtRSpslQc,35303
104
+ megadetector/postprocessing/top_folders_to_bottom.py,sha256=LvmU-bNU2p6FAUe02c5sD9Xb9czdymCyaNTD8lpzCt4,6373
105
+ megadetector/postprocessing/validate_batch_results.py,sha256=fq8tm2dH6vTFc4fAFpoyMTwszUyZG8DQw46OO7d8w2c,12060
106
+ megadetector/postprocessing/repeat_detection_elimination/find_repeat_detections.py,sha256=XgVeyga8iSC01MAjXxb2rn-CgJTYHqC_gfxxEoSn4aw,9420
107
+ megadetector/postprocessing/repeat_detection_elimination/remove_repeat_detections.py,sha256=m1XWw7CjQC9TtxBycZnPExeSdS6YlYoRHBdRu5rxNkQ,2832
108
+ megadetector/postprocessing/repeat_detection_elimination/repeat_detections_core.py,sha256=0QiCRky_KDQt7c5SXrdG3gKrB0m_xymNjO6I6jQa6sk,66869
109
+ megadetector/taxonomy_mapping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
110
+ megadetector/taxonomy_mapping/map_lila_taxonomy_to_wi_taxonomy.py,sha256=cutQ4rtZ6T3WtnpHxUd9A5tM5f3bdyUdMMbe8Qss8eA,17694
111
+ megadetector/taxonomy_mapping/map_new_lila_datasets.py,sha256=QI-l57HzrtLLGzeCj3nGwuhongcWMcKOMiFnTt2tBvI,6001
112
+ megadetector/taxonomy_mapping/prepare_lila_taxonomy_release.py,sha256=kk0oGBKLQ5a2tY-itNYMq5kpkM9jMM5A3ToghqeQ0B4,5084
113
+ megadetector/taxonomy_mapping/preview_lila_taxonomy.py,sha256=izG8KlpuPKdfith6sxCtTpEojTC0K0cgteAs8MC5B_I,17530
114
+ megadetector/taxonomy_mapping/retrieve_sample_image.py,sha256=YZcOsu15ZSQCZSzkYPw80Rk6eCfnDjKg5y2wyYKkybY,1866
115
+ megadetector/taxonomy_mapping/simple_image_download.py,sha256=sxmt8LGOd0rQCLpJhu3XI_tqzI_b3U1iVl5d9sK9Ygc,6875
116
+ megadetector/taxonomy_mapping/species_lookup.py,sha256=gLUAaMiENAXhiKGNSvBD6aM4vTJL2npzeOZ0oGRaaQs,34491
117
+ megadetector/taxonomy_mapping/taxonomy_csv_checker.py,sha256=PIQh-5q43ibSgT6CdG1iwfZXZx_zOHWSv7AiHnql8d4,4782
118
+ megadetector/taxonomy_mapping/taxonomy_graph.py,sha256=GjrDZq7HesF40cUA9sPz7bGKojRdM2KBFvcUPy69hp4,12203
119
+ megadetector/taxonomy_mapping/validate_lila_category_mappings.py,sha256=sAKYreO1FDMxWl_0IvkmaGhiuS4OtzzMvSosovpugNc,2415
120
+ megadetector/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
+ megadetector/tests/test_nms_synthetic.py,sha256=oY6xmT1sLSSN7weQJ8TPTaZgAiSiZ6s43EffUhwLWIw,14707
122
+ megadetector/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
123
+ megadetector/utils/ct_utils.py,sha256=G8jIBebc3GuYq1GYm0x16qqXIBlXTZkDhAJwVpxq3lY,60708
124
+ megadetector/utils/directory_listing.py,sha256=ZTwryqP_02XSHlsaVNCo7qyLGM4EKB-2NYxcmQpQEwM,6573
125
+ megadetector/utils/extract_frames_from_video.py,sha256=reNYpkTy2pI8qPGYp8Q4yyWpOSsq5Ii48KRViKN040s,12322
126
+ megadetector/utils/gpu_test.py,sha256=-k8zLRkMvrV9iheXXyxckgk0nc2kseNCR1Mu2JAsHA4,3596
127
+ megadetector/utils/md_tests.py,sha256=UqrFImy1nfH94JwxzRRW70SPgPui7UdoYEqmS8dCc8o,80330
128
+ megadetector/utils/path_utils.py,sha256=G0QnShwRageCldgjn1gsCpv6sCJyeaqgR5DQY8det-E,104397
129
+ megadetector/utils/process_utils.py,sha256=gQcpH9WYvGPUs0FhtJ5_Xvl6JsvoGz8_mnDQk0PbTRM,5673
130
+ megadetector/utils/split_locations_into_train_val.py,sha256=eqMPUtDmPYmMjnwU4pL_Bf5QpYMoByfuvo1KSJ3Q1Rk,10167
131
+ megadetector/utils/string_utils.py,sha256=OejBfVWdmc-uHaCTfQN5PChsd1tMuiRJVRHQV0xZWt8,6533
132
+ megadetector/utils/url_utils.py,sha256=D-8Shg5M4EjonS67qsCjqpzDKksPC6E7fY-4mjnRj1M,28548
133
+ megadetector/utils/wi_platform_utils.py,sha256=zpYEos0bQQ6hoxMthcOBsCgp9VjvxWGxCjCQl4tXlRA,37688
134
+ megadetector/utils/wi_taxonomy_utils.py,sha256=RKEzIF1mNwtaFcXkYCntXGAQtjgkfGjz0KPCV_Uqx1Q,67570
135
+ megadetector/utils/write_html_image_list.py,sha256=GN9_GSHqaYPKfeRo0htxA-IFOIybQhLkqLcRQnMRUA8,9028
136
+ megadetector/visualization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
+ megadetector/visualization/plot_utils.py,sha256=-3MY0Vl23s7majkU_QyASXLkTPWp7QfsVANP0I56cbU,11031
138
+ megadetector/visualization/render_images_with_thumbnails.py,sha256=nHO4WAbBYk6MX1PuKucAFOhUU-SVDMFKNtHiQ61dpvI,8555
139
+ megadetector/visualization/visualization_utils.py,sha256=5V9ghifYsnfq_kbQxvY4LixXRcAoieea8VihD41PB08,76144
140
+ megadetector/visualization/visualize_db.py,sha256=5DALo1kux_tM5nJay2HwYChjzSSZXhp8y6rrjM39mnU,24870
141
+ megadetector/visualization/visualize_detector_output.py,sha256=zYwP9_BqPqOyMgXoYFWl_wgW4ipoJGxR_-vJCTMeBEo,20446
142
+ megadetector/visualization/visualize_video_output.py,sha256=Sezaswbeg4wjDlaWyOWNLXnJJhb3JPR_YOX8wyKNAbc,24143
143
+ megadetector-10.0.13.dist-info/licenses/LICENSE,sha256=RMa3qq-7Cyk7DdtqRj_bP1oInGFgjyHn9-PZ3PcrqIs,1100
144
+ megadetector-10.0.13.dist-info/METADATA,sha256=HUQY8bsLnNMIR-aYd1lFa9xfkAcAY_fQXlDLntEm4uk,6492
145
+ megadetector-10.0.13.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
146
+ megadetector-10.0.13.dist-info/top_level.txt,sha256=wf9DXa8EwiOSZ4G5IPjakSxBPxTDjhYYnqWRfR-zS4M,13
147
+ megadetector-10.0.13.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.9.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,19 @@
1
+ MIT License
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ megadetector