megadetector 10.0.15__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.
- megadetector/__init__.py +0 -0
- megadetector/api/__init__.py +0 -0
- megadetector/api/batch_processing/integration/digiKam/setup.py +6 -0
- megadetector/api/batch_processing/integration/digiKam/xmp_integration.py +465 -0
- megadetector/api/batch_processing/integration/eMammal/test_scripts/config_template.py +5 -0
- megadetector/api/batch_processing/integration/eMammal/test_scripts/push_annotations_to_emammal.py +125 -0
- megadetector/api/batch_processing/integration/eMammal/test_scripts/select_images_for_testing.py +55 -0
- megadetector/classification/__init__.py +0 -0
- megadetector/classification/aggregate_classifier_probs.py +108 -0
- megadetector/classification/analyze_failed_images.py +227 -0
- megadetector/classification/cache_batchapi_outputs.py +198 -0
- megadetector/classification/create_classification_dataset.py +626 -0
- megadetector/classification/crop_detections.py +516 -0
- megadetector/classification/csv_to_json.py +226 -0
- megadetector/classification/detect_and_crop.py +853 -0
- megadetector/classification/efficientnet/__init__.py +9 -0
- megadetector/classification/efficientnet/model.py +415 -0
- megadetector/classification/efficientnet/utils.py +608 -0
- megadetector/classification/evaluate_model.py +520 -0
- megadetector/classification/identify_mislabeled_candidates.py +152 -0
- megadetector/classification/json_to_azcopy_list.py +63 -0
- megadetector/classification/json_validator.py +696 -0
- megadetector/classification/map_classification_categories.py +276 -0
- megadetector/classification/merge_classification_detection_output.py +509 -0
- megadetector/classification/prepare_classification_script.py +194 -0
- megadetector/classification/prepare_classification_script_mc.py +228 -0
- megadetector/classification/run_classifier.py +287 -0
- megadetector/classification/save_mislabeled.py +110 -0
- megadetector/classification/train_classifier.py +827 -0
- megadetector/classification/train_classifier_tf.py +725 -0
- megadetector/classification/train_utils.py +323 -0
- megadetector/data_management/__init__.py +0 -0
- megadetector/data_management/animl_to_md.py +161 -0
- megadetector/data_management/annotations/__init__.py +0 -0
- megadetector/data_management/annotations/annotation_constants.py +33 -0
- megadetector/data_management/camtrap_dp_to_coco.py +270 -0
- megadetector/data_management/cct_json_utils.py +566 -0
- megadetector/data_management/cct_to_md.py +184 -0
- megadetector/data_management/cct_to_wi.py +293 -0
- megadetector/data_management/coco_to_labelme.py +284 -0
- megadetector/data_management/coco_to_yolo.py +701 -0
- megadetector/data_management/databases/__init__.py +0 -0
- megadetector/data_management/databases/add_width_and_height_to_db.py +107 -0
- megadetector/data_management/databases/combine_coco_camera_traps_files.py +210 -0
- megadetector/data_management/databases/integrity_check_json_db.py +563 -0
- megadetector/data_management/databases/subset_json_db.py +195 -0
- megadetector/data_management/generate_crops_from_cct.py +200 -0
- megadetector/data_management/get_image_sizes.py +164 -0
- megadetector/data_management/labelme_to_coco.py +559 -0
- megadetector/data_management/labelme_to_yolo.py +349 -0
- megadetector/data_management/lila/__init__.py +0 -0
- megadetector/data_management/lila/create_lila_blank_set.py +556 -0
- megadetector/data_management/lila/create_lila_test_set.py +192 -0
- megadetector/data_management/lila/create_links_to_md_results_files.py +106 -0
- megadetector/data_management/lila/download_lila_subset.py +182 -0
- megadetector/data_management/lila/generate_lila_per_image_labels.py +777 -0
- megadetector/data_management/lila/get_lila_annotation_counts.py +174 -0
- megadetector/data_management/lila/get_lila_image_counts.py +112 -0
- megadetector/data_management/lila/lila_common.py +319 -0
- megadetector/data_management/lila/test_lila_metadata_urls.py +164 -0
- megadetector/data_management/mewc_to_md.py +344 -0
- megadetector/data_management/ocr_tools.py +873 -0
- megadetector/data_management/read_exif.py +964 -0
- megadetector/data_management/remap_coco_categories.py +195 -0
- megadetector/data_management/remove_exif.py +156 -0
- megadetector/data_management/rename_images.py +194 -0
- megadetector/data_management/resize_coco_dataset.py +665 -0
- megadetector/data_management/speciesnet_to_md.py +41 -0
- megadetector/data_management/wi_download_csv_to_coco.py +247 -0
- megadetector/data_management/yolo_output_to_md_output.py +594 -0
- megadetector/data_management/yolo_to_coco.py +984 -0
- megadetector/data_management/zamba_to_md.py +188 -0
- megadetector/detection/__init__.py +0 -0
- megadetector/detection/change_detection.py +840 -0
- megadetector/detection/process_video.py +479 -0
- megadetector/detection/pytorch_detector.py +1451 -0
- megadetector/detection/run_detector.py +1267 -0
- megadetector/detection/run_detector_batch.py +2172 -0
- megadetector/detection/run_inference_with_yolov5_val.py +1314 -0
- megadetector/detection/run_md_and_speciesnet.py +1604 -0
- megadetector/detection/run_tiled_inference.py +1044 -0
- megadetector/detection/tf_detector.py +209 -0
- megadetector/detection/video_utils.py +1379 -0
- megadetector/postprocessing/__init__.py +0 -0
- megadetector/postprocessing/add_max_conf.py +72 -0
- megadetector/postprocessing/categorize_detections_by_size.py +166 -0
- megadetector/postprocessing/classification_postprocessing.py +1943 -0
- megadetector/postprocessing/combine_batch_outputs.py +249 -0
- megadetector/postprocessing/compare_batch_results.py +2110 -0
- megadetector/postprocessing/convert_output_format.py +403 -0
- megadetector/postprocessing/create_crop_folder.py +629 -0
- megadetector/postprocessing/detector_calibration.py +570 -0
- megadetector/postprocessing/generate_csv_report.py +522 -0
- megadetector/postprocessing/load_api_results.py +223 -0
- megadetector/postprocessing/md_to_coco.py +428 -0
- megadetector/postprocessing/md_to_labelme.py +351 -0
- megadetector/postprocessing/md_to_wi.py +41 -0
- megadetector/postprocessing/merge_detections.py +392 -0
- megadetector/postprocessing/postprocess_batch_results.py +2140 -0
- megadetector/postprocessing/remap_detection_categories.py +226 -0
- megadetector/postprocessing/render_detection_confusion_matrix.py +677 -0
- megadetector/postprocessing/repeat_detection_elimination/find_repeat_detections.py +206 -0
- megadetector/postprocessing/repeat_detection_elimination/remove_repeat_detections.py +82 -0
- megadetector/postprocessing/repeat_detection_elimination/repeat_detections_core.py +1665 -0
- megadetector/postprocessing/separate_detections_into_folders.py +795 -0
- megadetector/postprocessing/subset_json_detector_output.py +964 -0
- megadetector/postprocessing/top_folders_to_bottom.py +238 -0
- megadetector/postprocessing/validate_batch_results.py +332 -0
- megadetector/taxonomy_mapping/__init__.py +0 -0
- megadetector/taxonomy_mapping/map_lila_taxonomy_to_wi_taxonomy.py +491 -0
- megadetector/taxonomy_mapping/map_new_lila_datasets.py +211 -0
- megadetector/taxonomy_mapping/prepare_lila_taxonomy_release.py +165 -0
- megadetector/taxonomy_mapping/preview_lila_taxonomy.py +543 -0
- megadetector/taxonomy_mapping/retrieve_sample_image.py +71 -0
- megadetector/taxonomy_mapping/simple_image_download.py +231 -0
- megadetector/taxonomy_mapping/species_lookup.py +1008 -0
- megadetector/taxonomy_mapping/taxonomy_csv_checker.py +159 -0
- megadetector/taxonomy_mapping/taxonomy_graph.py +346 -0
- megadetector/taxonomy_mapping/validate_lila_category_mappings.py +83 -0
- megadetector/tests/__init__.py +0 -0
- megadetector/tests/test_nms_synthetic.py +335 -0
- megadetector/utils/__init__.py +0 -0
- megadetector/utils/ct_utils.py +1857 -0
- megadetector/utils/directory_listing.py +199 -0
- megadetector/utils/extract_frames_from_video.py +307 -0
- megadetector/utils/gpu_test.py +125 -0
- megadetector/utils/md_tests.py +2072 -0
- megadetector/utils/path_utils.py +2872 -0
- megadetector/utils/process_utils.py +172 -0
- megadetector/utils/split_locations_into_train_val.py +237 -0
- megadetector/utils/string_utils.py +234 -0
- megadetector/utils/url_utils.py +825 -0
- megadetector/utils/wi_platform_utils.py +968 -0
- megadetector/utils/wi_taxonomy_utils.py +1766 -0
- megadetector/utils/write_html_image_list.py +239 -0
- megadetector/visualization/__init__.py +0 -0
- megadetector/visualization/plot_utils.py +309 -0
- megadetector/visualization/render_images_with_thumbnails.py +243 -0
- megadetector/visualization/visualization_utils.py +1973 -0
- megadetector/visualization/visualize_db.py +630 -0
- megadetector/visualization/visualize_detector_output.py +498 -0
- megadetector/visualization/visualize_video_output.py +705 -0
- megadetector-10.0.15.dist-info/METADATA +115 -0
- megadetector-10.0.15.dist-info/RECORD +147 -0
- megadetector-10.0.15.dist-info/WHEEL +5 -0
- megadetector-10.0.15.dist-info/licenses/LICENSE +19 -0
- megadetector-10.0.15.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: megadetector
|
|
3
|
+
Version: 10.0.15
|
|
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-Expression: MIT
|
|
8
|
+
Project-URL: Homepage, https://github.com/agentmorris/MegaDetector
|
|
9
|
+
Project-URL: Documentation, https://megadetector.readthedocs.io
|
|
10
|
+
Project-URL: Bug Reports, https://github.com/agentmorris/MegaDetector/issues
|
|
11
|
+
Project-URL: Source, https://github.com/agentmorris/MegaDetector
|
|
12
|
+
Keywords: camera traps,conservation,wildlife,ai,megadetector
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Requires-Python: <3.14,>=3.9
|
|
15
|
+
Description-Content-Type: text/markdown
|
|
16
|
+
License-File: LICENSE
|
|
17
|
+
Requires-Dist: mkl==2024.0; sys_platform != "darwin"
|
|
18
|
+
Requires-Dist: numpy>=1.26.4
|
|
19
|
+
Requires-Dist: Pillow>=9.5
|
|
20
|
+
Requires-Dist: tqdm>=4.64.0
|
|
21
|
+
Requires-Dist: jsonpickle>=3.0.2
|
|
22
|
+
Requires-Dist: humanfriendly>=2.1
|
|
23
|
+
Requires-Dist: matplotlib>=3.8.0
|
|
24
|
+
Requires-Dist: opencv-python>=4.8.0
|
|
25
|
+
Requires-Dist: requests>=2.31.0
|
|
26
|
+
Requires-Dist: fastquadtree>=1.1.2
|
|
27
|
+
Requires-Dist: scikit-learn>=1.3.1
|
|
28
|
+
Requires-Dist: pandas>=2.1.1
|
|
29
|
+
Requires-Dist: python-dateutil
|
|
30
|
+
Requires-Dist: send2trash
|
|
31
|
+
Requires-Dist: clipboard
|
|
32
|
+
Requires-Dist: dill
|
|
33
|
+
Requires-Dist: ruff
|
|
34
|
+
Requires-Dist: pytest
|
|
35
|
+
Requires-Dist: ultralytics-yolov5==0.1.1
|
|
36
|
+
Requires-Dist: yolov9pip==0.0.4
|
|
37
|
+
Dynamic: license-file
|
|
38
|
+
|
|
39
|
+
# MegaDetector
|
|
40
|
+
|
|
41
|
+
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).
|
|
42
|
+
|
|
43
|
+
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).
|
|
44
|
+
|
|
45
|
+
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.
|
|
46
|
+
|
|
47
|
+
## Installation
|
|
48
|
+
|
|
49
|
+
Install with:
|
|
50
|
+
|
|
51
|
+
`pip install megadetector`
|
|
52
|
+
|
|
53
|
+
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.
|
|
54
|
+
|
|
55
|
+
## Package reference
|
|
56
|
+
|
|
57
|
+
See [megadetector.readthedocs.io](https://megadetector.readthedocs.io).
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
## Examples of things you can do with this package
|
|
61
|
+
|
|
62
|
+
### Run MegaDetector on one image and count the number of detections
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
from megadetector.utils import url_utils
|
|
66
|
+
from megadetector.visualization import visualization_utils as vis_utils
|
|
67
|
+
from megadetector.detection import run_detector
|
|
68
|
+
|
|
69
|
+
# This is the image at the bottom of this page, it has one animal in it
|
|
70
|
+
image_url = 'https://github.com/agentmorris/MegaDetector/raw/main/images/orinoquia-thumb-web.jpg'
|
|
71
|
+
temporary_filename = url_utils.download_url(image_url)
|
|
72
|
+
|
|
73
|
+
image = vis_utils.load_image(temporary_filename)
|
|
74
|
+
|
|
75
|
+
# This will automatically download MDv5a; you can also specify a filename.
|
|
76
|
+
model = run_detector.load_detector('MDV5A')
|
|
77
|
+
|
|
78
|
+
result = model.generate_detections_one_image(image)
|
|
79
|
+
|
|
80
|
+
detections_above_threshold = [d for d in result['detections'] if d['conf'] > 0.2]
|
|
81
|
+
print('Found {} detections above threshold'.format(len(detections_above_threshold)))
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Run MegaDetector on a folder of images
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
from megadetector.detection.run_detector_batch import \
|
|
88
|
+
load_and_run_detector_batch, write_results_to_file
|
|
89
|
+
from megadetector.utils import path_utils
|
|
90
|
+
import os
|
|
91
|
+
|
|
92
|
+
# Pick a folder to run MD on recursively, and an output file
|
|
93
|
+
image_folder = os.path.expanduser('~/megadetector_test_images')
|
|
94
|
+
output_file = os.path.expanduser('~/megadetector_output_test.json')
|
|
95
|
+
|
|
96
|
+
# Recursively find images
|
|
97
|
+
image_file_names = path_utils.find_images(image_folder,recursive=True)
|
|
98
|
+
|
|
99
|
+
# This will automatically download MDv5a; you can also specify a filename.
|
|
100
|
+
results = load_and_run_detector_batch('MDV5A', image_file_names)
|
|
101
|
+
|
|
102
|
+
# Write results to a format that Timelapse and other downstream tools like.
|
|
103
|
+
write_results_to_file(results,
|
|
104
|
+
output_file,
|
|
105
|
+
relative_path_base=image_folder,
|
|
106
|
+
detector_file=detector_filename)
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Contact
|
|
110
|
+
|
|
111
|
+
Contact <a href="cameratraps@lila.science">cameratraps@lila.science</a> with questions.
|
|
112
|
+
|
|
113
|
+
## Gratuitous animal picture
|
|
114
|
+
|
|
115
|
+
<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=u1ixTnLYv-ke9ZxrqVcFE6Tgvf5qzU0tGU7Zd7Nz0j4,28709
|
|
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=w-dDbW7pcItdjmZcJXSW-NQVT5MZedxvySjrPCyEP5E,26905
|
|
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=hXrMlfnM1hTjXNgKKIOxajkDGFZJ89B5xgOcY2WPmo8,35875
|
|
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=LpFuYmDGwnnyi4grJGHI1m4WfmSGt7FOUkIN-pf_KRQ,18982
|
|
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=wWU-y3Hzfb_2J7ztxA1cWamn7q3_BhrSGeXs15JZJJk,5900
|
|
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=O0mfBqTV5tkegnamns2hGV8hfLTkdJ8YKE18SsL0AeY,92579
|
|
79
|
+
megadetector/detection/run_inference_with_yolov5_val.py,sha256=0cjgsWEEF4WTk_FRwApLeO3yG1CB8Ly_NLRVtN2QTp4,53750
|
|
80
|
+
megadetector/detection/run_md_and_speciesnet.py,sha256=BzsRg9C9SdjGTEfzyT8EDhua_Raf1ziQxCqQT5G7trU,62703
|
|
81
|
+
megadetector/detection/run_tiled_inference.py,sha256=W10cer-1EEwR5KmDQiMNkajIz1DVBv-WW8_XlclV9P0,41370
|
|
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=pdNFaeHMkVNdojPMre-rzd_qFHT0mjLurErmMWOzjwo,79013
|
|
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=wHmyQZVCO1PtGirwyILlt5IT1_XMRR4HmCDj1YlM0tk,87722
|
|
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=ci9mX2B_sJTQzECb4vV-GioWaxxg1wbknRPcfN9Dr9Q,6014
|
|
112
|
+
megadetector/taxonomy_mapping/prepare_lila_taxonomy_release.py,sha256=kk0oGBKLQ5a2tY-itNYMq5kpkM9jMM5A3ToghqeQ0B4,5084
|
|
113
|
+
megadetector/taxonomy_mapping/preview_lila_taxonomy.py,sha256=Jx5Az-rSHWpZTPobLA-etB5HyQt4fNlo6YK892vyYEg,17545
|
|
114
|
+
megadetector/taxonomy_mapping/retrieve_sample_image.py,sha256=YZcOsu15ZSQCZSzkYPw80Rk6eCfnDjKg5y2wyYKkybY,1866
|
|
115
|
+
megadetector/taxonomy_mapping/simple_image_download.py,sha256=eE84rMpTwC7kMilXpcK6gBvUXHf7lUX7n5RiPxa8ixc,6949
|
|
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=UTLTbAxOHrSyZUXqqrruoo2vGHruR3v5QOvrjEKpvXM,60722
|
|
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=WFf_4reJNVIaozX2NrjlCfkgID5Hcj49G2q4KQyZhcQ,105675
|
|
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=IDAOfXw9xpCNx4wYco62cdJ2ik4S1O_6mObPajB7Nog,28548
|
|
133
|
+
megadetector/utils/wi_platform_utils.py,sha256=zpYEos0bQQ6hoxMthcOBsCgp9VjvxWGxCjCQl4tXlRA,37688
|
|
134
|
+
megadetector/utils/wi_taxonomy_utils.py,sha256=n_jf7_KhR_jLpoq7eobZy-4uk1XIyKIyQktJqavIXZ0,67873
|
|
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=lM8r3ql3EDgUsDT3HTjo8ZJ2QqgeOls6SplC6mVB-B4,77144
|
|
140
|
+
megadetector/visualization/visualize_db.py,sha256=5c1sQICHddYp0Ei9axz30L8qqMoJxtbMUohkMppPapI,24870
|
|
141
|
+
megadetector/visualization/visualize_detector_output.py,sha256=rXLGXdiHh_bHwrRCQ0DQ8s1GloO32--OCuWDD6RGpQo,21342
|
|
142
|
+
megadetector/visualization/visualize_video_output.py,sha256=Sezaswbeg4wjDlaWyOWNLXnJJhb3JPR_YOX8wyKNAbc,24143
|
|
143
|
+
megadetector-10.0.15.dist-info/licenses/LICENSE,sha256=RMa3qq-7Cyk7DdtqRj_bP1oInGFgjyHn9-PZ3PcrqIs,1100
|
|
144
|
+
megadetector-10.0.15.dist-info/METADATA,sha256=bTL0gP-q01BwG6FL-5rbaQDO9xm_YjSGf3iKNDRKOV4,5235
|
|
145
|
+
megadetector-10.0.15.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
146
|
+
megadetector-10.0.15.dist-info/top_level.txt,sha256=wf9DXa8EwiOSZ4G5IPjakSxBPxTDjhYYnqWRfR-zS4M,13
|
|
147
|
+
megadetector-10.0.15.dist-info/RECORD,,
|
|
@@ -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
|