coralnet-toolbox 0.0.72__py2.py3-none-any.whl → 0.0.74__py2.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 (57) hide show
  1. coralnet_toolbox/Annotations/QtAnnotation.py +28 -69
  2. coralnet_toolbox/Annotations/QtMaskAnnotation.py +408 -0
  3. coralnet_toolbox/Annotations/QtMultiPolygonAnnotation.py +72 -56
  4. coralnet_toolbox/Annotations/QtPatchAnnotation.py +165 -216
  5. coralnet_toolbox/Annotations/QtPolygonAnnotation.py +497 -353
  6. coralnet_toolbox/Annotations/QtRectangleAnnotation.py +126 -116
  7. coralnet_toolbox/AutoDistill/QtDeployModel.py +23 -12
  8. coralnet_toolbox/CoralNet/QtDownload.py +2 -1
  9. coralnet_toolbox/Explorer/QtDataItem.py +1 -1
  10. coralnet_toolbox/Explorer/QtExplorer.py +159 -17
  11. coralnet_toolbox/Explorer/QtSettingsWidgets.py +160 -86
  12. coralnet_toolbox/IO/QtExportTagLabAnnotations.py +30 -10
  13. coralnet_toolbox/IO/QtImportTagLabAnnotations.py +21 -15
  14. coralnet_toolbox/IO/QtOpenProject.py +46 -78
  15. coralnet_toolbox/IO/QtSaveProject.py +18 -43
  16. coralnet_toolbox/MachineLearning/DeployModel/QtDetect.py +22 -11
  17. coralnet_toolbox/MachineLearning/DeployModel/QtSegment.py +22 -10
  18. coralnet_toolbox/MachineLearning/ExportDataset/QtBase.py +61 -24
  19. coralnet_toolbox/MachineLearning/ExportDataset/QtClassify.py +5 -1
  20. coralnet_toolbox/MachineLearning/ExportDataset/QtDetect.py +19 -6
  21. coralnet_toolbox/MachineLearning/ExportDataset/QtSegment.py +21 -8
  22. coralnet_toolbox/MachineLearning/ImportDataset/QtBase.py +42 -22
  23. coralnet_toolbox/MachineLearning/VideoInference/QtBase.py +0 -4
  24. coralnet_toolbox/QtAnnotationWindow.py +42 -14
  25. coralnet_toolbox/QtEventFilter.py +19 -2
  26. coralnet_toolbox/QtImageWindow.py +134 -86
  27. coralnet_toolbox/QtLabelWindow.py +14 -2
  28. coralnet_toolbox/QtMainWindow.py +122 -9
  29. coralnet_toolbox/QtProgressBar.py +52 -27
  30. coralnet_toolbox/Rasters/QtRaster.py +59 -7
  31. coralnet_toolbox/Rasters/RasterTableModel.py +42 -14
  32. coralnet_toolbox/SAM/QtBatchInference.py +0 -2
  33. coralnet_toolbox/SAM/QtDeployGenerator.py +22 -11
  34. coralnet_toolbox/SAM/QtDeployPredictor.py +10 -0
  35. coralnet_toolbox/SeeAnything/QtBatchInference.py +19 -221
  36. coralnet_toolbox/SeeAnything/QtDeployGenerator.py +1634 -0
  37. coralnet_toolbox/SeeAnything/QtDeployPredictor.py +107 -154
  38. coralnet_toolbox/SeeAnything/QtTrainModel.py +115 -45
  39. coralnet_toolbox/SeeAnything/__init__.py +2 -0
  40. coralnet_toolbox/Tools/QtCutSubTool.py +18 -2
  41. coralnet_toolbox/Tools/QtResizeSubTool.py +19 -2
  42. coralnet_toolbox/Tools/QtSAMTool.py +222 -57
  43. coralnet_toolbox/Tools/QtSeeAnythingTool.py +223 -55
  44. coralnet_toolbox/Tools/QtSelectSubTool.py +6 -4
  45. coralnet_toolbox/Tools/QtSelectTool.py +27 -3
  46. coralnet_toolbox/Tools/QtSubtractSubTool.py +66 -0
  47. coralnet_toolbox/Tools/QtWorkAreaTool.py +25 -13
  48. coralnet_toolbox/Tools/__init__.py +2 -0
  49. coralnet_toolbox/__init__.py +1 -1
  50. coralnet_toolbox/utilities.py +137 -47
  51. coralnet_toolbox-0.0.74.dist-info/METADATA +375 -0
  52. {coralnet_toolbox-0.0.72.dist-info → coralnet_toolbox-0.0.74.dist-info}/RECORD +56 -53
  53. coralnet_toolbox-0.0.72.dist-info/METADATA +0 -341
  54. {coralnet_toolbox-0.0.72.dist-info → coralnet_toolbox-0.0.74.dist-info}/WHEEL +0 -0
  55. {coralnet_toolbox-0.0.72.dist-info → coralnet_toolbox-0.0.74.dist-info}/entry_points.txt +0 -0
  56. {coralnet_toolbox-0.0.72.dist-info → coralnet_toolbox-0.0.74.dist-info}/licenses/LICENSE.txt +0 -0
  57. {coralnet_toolbox-0.0.72.dist-info → coralnet_toolbox-0.0.74.dist-info}/top_level.txt +0 -0
@@ -1,23 +1,24 @@
1
- coralnet_toolbox/QtAnnotationWindow.py,sha256=ZlaYYAMNqu95SJhduQxH1K0YP7mOkMv3BzGQwemfByg,39518
1
+ coralnet_toolbox/QtAnnotationWindow.py,sha256=WOfi4BhXt3rtH0PnJZ0tDPpjn-wq66n8MoMqKFg-T2M,40727
2
2
  coralnet_toolbox/QtConfidenceWindow.py,sha256=L5hR23uW91GpqnsNS9R1XF3zCTe2aU7w0iDoQMV0oyE,16190
3
- coralnet_toolbox/QtEventFilter.py,sha256=KKC9de3e66PvGVgiML8P7MZ9-r7vvHidPJJYpcbTwyM,6696
4
- coralnet_toolbox/QtImageWindow.py,sha256=vLziMSEWFfVRSBN0nUNkosgk3LiNxZDqPwbinz9ZivQ,49356
5
- coralnet_toolbox/QtLabelWindow.py,sha256=-4GCk4pTY9g4ADH1iE__4xwqT-7UR_7VCT8v-bJzerk,50869
6
- coralnet_toolbox/QtMainWindow.py,sha256=z_Erak0fJC4x962rsFgK3IwjLQYVUe6rayzQzfJtkhw,114372
3
+ coralnet_toolbox/QtEventFilter.py,sha256=qL3-FzQ2iZX1yITJb2mjn9_Q09nNNqKsgx-oCz4aT9Y,7717
4
+ coralnet_toolbox/QtImageWindow.py,sha256=OagopE-6RNULQ7EMlIpY1Ex5Fv9oGvLjGiTdvTSS11s,51542
5
+ coralnet_toolbox/QtLabelWindow.py,sha256=O-mLtE6ycuuGloYYZX0Z9JYZtsBMmspqNeJWslrjfFc,51419
6
+ coralnet_toolbox/QtMainWindow.py,sha256=ctwSZiPql-nafxNacifHdZtNnIY-u-xvhKWptC7aBTk,122154
7
7
  coralnet_toolbox/QtPatchSampling.py,sha256=Ehj06auBGfQwIruLNYQjF8eFOCpl8G72p42UXXb2mUo,29013
8
- coralnet_toolbox/QtProgressBar.py,sha256=pnozUOcVjfO_yTS9z8wOMPcrrrOtG_FeCknTcdI6eyk,6250
8
+ coralnet_toolbox/QtProgressBar.py,sha256=kFcq0ftj4Hljesev-jwWMLVc_OOjlOwQrGc4r2yGMAs,7877
9
9
  coralnet_toolbox/QtWorkArea.py,sha256=YXRvHQKpWUtWyv_o9lZ8rmxfm28dUOG9pmMUeimDhQ4,13578
10
- coralnet_toolbox/__init__.py,sha256=-OIPFY1gy8COaSsB29_2bWyVd3ro4BAdKgI2eIvHhPY,207
10
+ coralnet_toolbox/__init__.py,sha256=-Nkdnt5uSinCh5WRxHXkS1YzGoDzWz665VAoGrCk-IQ,207
11
11
  coralnet_toolbox/main.py,sha256=6j2B_1reC_KDmqvq1C0fB-UeSEm8eeJOozp2f4XXMLQ,1573
12
- coralnet_toolbox/utilities.py,sha256=eUkxXuWaNFH83LSW-KniwujkXKJ2rK04czx3k3OPiAY,27115
13
- coralnet_toolbox/Annotations/QtAnnotation.py,sha256=-3ASbjl1dXw9U731vyCgwyiyZT9zOD5Mvp1jt-7bCnA,29242
14
- coralnet_toolbox/Annotations/QtMultiPolygonAnnotation.py,sha256=ErAT31gw-zhEVNxkPRpyB9uw-NSpPh-ShCBxpscXdRw,15579
15
- coralnet_toolbox/Annotations/QtPatchAnnotation.py,sha256=67fNnK_-muyhGZdGB0kBDx-JGuflv1TM6q5ikfW_zOk,20076
16
- coralnet_toolbox/Annotations/QtPolygonAnnotation.py,sha256=1EkZEJlO4VZ4so01Sat2T8LeO1LNs7HbGJLO-G2_73Q,26886
17
- coralnet_toolbox/Annotations/QtRectangleAnnotation.py,sha256=TgeawekA3jNBlCmZBRqXYRHoZqch7pWM-NSBBPG6S60,21404
12
+ coralnet_toolbox/utilities.py,sha256=apbVfWlySSUG0BMSVzpAUWwasQeFsI6afuOHpUSu-nI,30961
13
+ coralnet_toolbox/Annotations/QtAnnotation.py,sha256=4KxqDe_WPMGK18OYHZ1NqWzV87ARv8MnLAQdHFXo-Yg,27527
14
+ coralnet_toolbox/Annotations/QtMaskAnnotation.py,sha256=Hs8p-Lxv4OYqcx4Y7dayer1KxTaX-G0kuQe-W2JuGIE,16269
15
+ coralnet_toolbox/Annotations/QtMultiPolygonAnnotation.py,sha256=u0vPQPeaBCEdw5lMFygpBbjDKDSjvtV7Jkj03MDfj8M,16463
16
+ coralnet_toolbox/Annotations/QtPatchAnnotation.py,sha256=huoCsPloSA5uCZxG7pwIoO02GcHFDwW8-VohLxbCVnY,16608
17
+ coralnet_toolbox/Annotations/QtPolygonAnnotation.py,sha256=D8VajJ1pBtb5NOSYIspAxonkiVWn0yuWSNo8vRjreSw,33371
18
+ coralnet_toolbox/Annotations/QtRectangleAnnotation.py,sha256=FnKDHRNg_v9pUEqhdyvbGBGSxtNww3AZU_rulYU0878,21357
18
19
  coralnet_toolbox/Annotations/__init__.py,sha256=bpMldC70tT_lzMrOdBNDkEhG9dCX3tXEBd48IrcUg3E,419
19
20
  coralnet_toolbox/AutoDistill/QtBatchInference.py,sha256=k871aW3XRX8kc4BDaS1aipbPh9WOZxgmilF2c4KOdVA,5646
20
- coralnet_toolbox/AutoDistill/QtDeployModel.py,sha256=6alhzvA3KYEeLaQj-Qhs9GicjNQyVoQbnvgZ3lxGnCU,25162
21
+ coralnet_toolbox/AutoDistill/QtDeployModel.py,sha256=Fycm7wuydUfr1E2CUy00ridiI2JaNDZqAeoVB_HVydY,25923
21
22
  coralnet_toolbox/AutoDistill/__init__.py,sha256=-cJSCr3HSVcybbkvdSZY_zz9EDLESq9A3gisHu3gIgM,206
22
23
  coralnet_toolbox/AutoDistill/Models/GroundingDINO.py,sha256=xG20nLOrKjtzRhZznIIdwFXxBJ7RCeQ7h1z0V0J6trE,2781
23
24
  coralnet_toolbox/AutoDistill/Models/OWLViT.py,sha256=disVxSQ80sS4SVYdwrQocFP_LN6YDQQhzfeORWe4veU,2572
@@ -33,19 +34,19 @@ coralnet_toolbox/Common/QtOverlapInput.py,sha256=O9Dvwe4YmYSmf-W5fhAhl5kOIFsLa3A
33
34
  coralnet_toolbox/Common/QtTileSizeInput.py,sha256=qxts1ufiG6cGFJWEa8DFB9wHV9AVw5dgE5OyLMJMHP8,3164
34
35
  coralnet_toolbox/Common/QtUpdateImagePaths.py,sha256=_hJYx6hXdAOfH_m77f75AQduQ0WlzOU_rcWvhmD83T8,6748
35
36
  coralnet_toolbox/CoralNet/QtAuthenticate.py,sha256=Y__iY0Kcosz6AOV7dlJBwiB6Hte40wHahHe-OmRngZA,13267
36
- coralnet_toolbox/CoralNet/QtDownload.py,sha256=HBb8TpZRIEFirGIaIAV1v8qg3fL4cP6Bf-hUiqXoiLE,48516
37
+ coralnet_toolbox/CoralNet/QtDownload.py,sha256=YGu_-4SCmTw8TJC6qSuZr6OGfesKHOgy1nWMioE1ECI,48552
37
38
  coralnet_toolbox/CoralNet/__init__.py,sha256=ILkAZh6mlAK1UaCCZjCB9JZxd-oY4cIgfnIC8UgjjIU,188
38
- coralnet_toolbox/Explorer/QtDataItem.py,sha256=fNpCHJSxMzHL2XpBXtPwKchSbmY7H0HWzL1Kbs4W1Ts,14920
39
- coralnet_toolbox/Explorer/QtExplorer.py,sha256=vAtGTNsEUcy14-_XJuOocH7xdAlesHm5faN9AINaEvg,131591
39
+ coralnet_toolbox/Explorer/QtDataItem.py,sha256=mRcQ0GlriEjhbFV_khbuFNMEJhIyFxD_uIC5v1L03cw,14885
40
+ coralnet_toolbox/Explorer/QtExplorer.py,sha256=mj09zkRFAw6AgepxXa0A2qTtR3iWlgCyphy5Bf2FoDU,138517
40
41
  coralnet_toolbox/Explorer/QtFeatureStore.py,sha256=3VwGezs1stmu65Z4ZQpvY27rGEIJq_prERWkFwMATBo,7378
41
- coralnet_toolbox/Explorer/QtSettingsWidgets.py,sha256=unm23yP329cVL84aOvy20DBt3YBHVLU85rnfN9VUF8A,27649
42
+ coralnet_toolbox/Explorer/QtSettingsWidgets.py,sha256=g4ZHpNVj5fTt6TmPBJqS-7NGTLGQm-dkt5iubbU6VyY,31474
42
43
  coralnet_toolbox/Explorer/__init__.py,sha256=wZPhf2oaUUyIQ2WK48Aj-4q1ENIZG2dGl1HF_mjhI6w,116
43
44
  coralnet_toolbox/IO/QtExportAnnotations.py,sha256=xeaS0BukC3cpkBIGT9DXRqHmvHhp-vOU47h6EoANpNg,4474
44
45
  coralnet_toolbox/IO/QtExportCoralNetAnnotations.py,sha256=4royhF63EmeOlSIBX389EUjjvE-SF44_maW6qm52mdA,2778
45
46
  coralnet_toolbox/IO/QtExportGeoJSONAnnotations.py,sha256=9HkHjQTRtH4VnYa50c5pyqQz30R_6gIH5i3xFF6kDWI,27759
46
47
  coralnet_toolbox/IO/QtExportLabels.py,sha256=Vsav0wd1EK4g065aEWvxyNuvvM9BFB7UXxz6IJzwVBU,2588
47
48
  coralnet_toolbox/IO/QtExportMaskAnnotations.py,sha256=U-2sQyA154La5-QCovkJkrz_2-2bmuZytTw05VKinCE,24268
48
- coralnet_toolbox/IO/QtExportTagLabAnnotations.py,sha256=Hy75lSnbw3uPQWD1xf1I_kJGRQD5IIdanCoeE2CYSMM,10524
49
+ coralnet_toolbox/IO/QtExportTagLabAnnotations.py,sha256=JL4r1a6_PUjCzWQjMxOzxtkF2gyqIttpD14OxEcW-dA,11330
49
50
  coralnet_toolbox/IO/QtExportTagLabLabels.py,sha256=e6OL8UNtLRAJrovfs1cxVz0k2bHuJXdVmO-A0OVpgSk,3164
50
51
  coralnet_toolbox/IO/QtExportViscoreAnnotations.py,sha256=AUTzVB-N9uwlQPSds74YXyPVZzEHph7HDq01R88OBJY,19166
51
52
  coralnet_toolbox/IO/QtImportAnnotations.py,sha256=LYFmlsANRTdQqcQsIXfbWiTGNJcaeIzsi9dHdUANfzk,8317
@@ -54,11 +55,11 @@ coralnet_toolbox/IO/QtImportCoralNetLabels.py,sha256=FKOawTboEEAC7M8KbyEtX7fXOoF
54
55
  coralnet_toolbox/IO/QtImportFrames.py,sha256=7azCV-0dYTeySeXvlcawzwxswXNzxHU3u3nnaA0VoWs,45774
55
56
  coralnet_toolbox/IO/QtImportImages.py,sha256=apgv16dzcg-j6ugimvG_Houtu3m--Y9jyAZgB-k7BrQ,4260
56
57
  coralnet_toolbox/IO/QtImportLabels.py,sha256=_xzm-TDoFVgAbjdBwvOscVskPcLN_z054P5IkT73ohU,3291
57
- coralnet_toolbox/IO/QtImportTagLabAnnotations.py,sha256=os4D7SLy6BkzZ1DlWSA_QOoREXUuji0I7XGZS1az5GQ,12321
58
+ coralnet_toolbox/IO/QtImportTagLabAnnotations.py,sha256=AH970q5HYiBLfud8NHxxcfm58pyOX5qwic3x4bF5GlQ,12781
58
59
  coralnet_toolbox/IO/QtImportTagLabLabels.py,sha256=cCqFBOrAlnbiOL0xFY8G_FSTmeVsnYWh-bmVE-rfg0k,3927
59
60
  coralnet_toolbox/IO/QtImportViscoreAnnotations.py,sha256=TYlDzCLMXizoHFRiaofNdE-t9Cr7sJGj5NFsVUi6cjU,11871
60
- coralnet_toolbox/IO/QtOpenProject.py,sha256=aiQ8J7ROv8D1cPaMRaRr7arMxou4_-w5IJ7fTzWNS1o,15841
61
- coralnet_toolbox/IO/QtSaveProject.py,sha256=TRUfg9AnyHe79mqNzV4Pzw60RVd65xEjxzBb_-ttzXM,11397
61
+ coralnet_toolbox/IO/QtOpenProject.py,sha256=1nsntv5mlC6hmtLbquebIOuTAn6wNNgJVZTCulp14LQ,15060
62
+ coralnet_toolbox/IO/QtSaveProject.py,sha256=g7Uydya1Rcvh6GX3NfpQUgyZzs0wUDq1sJnmihx-8cM,10441
62
63
  coralnet_toolbox/IO/__init__.py,sha256=M3KH90zIoOVoPu1nDS-gvoVV3O24S_KM-4CvxXR-nfw,1538
63
64
  coralnet_toolbox/Icons/1.png,sha256=Ygcz3idjoa-RNaPXQXbHfw853DhnpD6iBa3nNFVimJ4,180
64
65
  coralnet_toolbox/Icons/2.png,sha256=S7cRq3avukptAyhk3gE6Mcfy4dNsTSu0BAhqN5KxZXw,260
@@ -126,20 +127,20 @@ coralnet_toolbox/MachineLearning/Community/cfg/segment/yolo11-p2.yaml,sha256=H2P
126
127
  coralnet_toolbox/MachineLearning/Community/cfg/segment/yolo11-p6.yaml,sha256=jg2PDDeIPvBG_QXNOMyro7LYLy0HNZ5F4s7fiAg0xys,3283
127
128
  coralnet_toolbox/MachineLearning/DeployModel/QtBase.py,sha256=ZK2p9euv9AM2hhpAYWyVLcIk_8UwMVgeTAEYQbXWJBw,12609
128
129
  coralnet_toolbox/MachineLearning/DeployModel/QtClassify.py,sha256=4YSEENGY2pZpiFqt1tfr-m1oHhP9V4uID8gdOVkZwwI,6331
129
- coralnet_toolbox/MachineLearning/DeployModel/QtDetect.py,sha256=RL_S88RxX0c7FBSy0Mmzeq7AErIyjRh-k0SjzTcjczU,14930
130
- coralnet_toolbox/MachineLearning/DeployModel/QtSegment.py,sha256=jL2tdLzOixdJ9pwloqJH2Bq6FOew3yg1ebBrLFrr5_Q,14658
130
+ coralnet_toolbox/MachineLearning/DeployModel/QtDetect.py,sha256=Ccocp-ZAZHnqCxsUYeqBcWgTR0LePKquGC83h8FEUSA,15691
131
+ coralnet_toolbox/MachineLearning/DeployModel/QtSegment.py,sha256=uwgqvtcCRUSPiafc6_uNw-LDYioYWJwC95joRYl2Ems,15452
131
132
  coralnet_toolbox/MachineLearning/DeployModel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
132
133
  coralnet_toolbox/MachineLearning/EvaluateModel/QtBase.py,sha256=stOQlB9NP1kZLwfQipA8J8_EzcgKi-9rvxar_AyWwjc,11526
133
134
  coralnet_toolbox/MachineLearning/EvaluateModel/QtClassify.py,sha256=EsUBbSxcoOymO3ezPUI1X0M_g9x7Y2oVU5myflet7pw,2268
134
135
  coralnet_toolbox/MachineLearning/EvaluateModel/QtDetect.py,sha256=i9Xy6564ChWKvHga-VOmzKtbXybt8eq9E8pGgGU69qY,2253
135
136
  coralnet_toolbox/MachineLearning/EvaluateModel/QtSegment.py,sha256=4SYBwo8B83XgYeS29PFB95Lz5xANuBpu-4dWN17jeQA,2250
136
137
  coralnet_toolbox/MachineLearning/EvaluateModel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
- coralnet_toolbox/MachineLearning/ExportDataset/QtBase.py,sha256=-BrgCRYaJvjz0SCIryYsZb-WNneOd99nTAST54toIGo,28046
138
- coralnet_toolbox/MachineLearning/ExportDataset/QtClassify.py,sha256=DoZyMxNOmE-wX4qlW1j1EJ2SjIT3X1kk5GIWBnjIRJE,9498
139
- coralnet_toolbox/MachineLearning/ExportDataset/QtDetect.py,sha256=b8I8eCbHFo1l0dJEF7Rqy2HCb76uqcb4UjaAXFsrIUY,6085
140
- coralnet_toolbox/MachineLearning/ExportDataset/QtSegment.py,sha256=dVMq2S6SHJpV9bi9f6Sp36KKBeTqONYYhpLj8iHjvik,6108
138
+ coralnet_toolbox/MachineLearning/ExportDataset/QtBase.py,sha256=PZH5eb2cFVLR3DRx2rxzfg9F3zDBCvWoq6R6ALm0BuI,29653
139
+ coralnet_toolbox/MachineLearning/ExportDataset/QtClassify.py,sha256=5LB8m2zJ24hjcvOL3uorGdqoZf2bpPxqB18THQlkh4Q,9669
140
+ coralnet_toolbox/MachineLearning/ExportDataset/QtDetect.py,sha256=ptZ0rUoZ1Tc0RGjKuXU15ZTM87m3gO8vLu6I7w5PVgs,6669
141
+ coralnet_toolbox/MachineLearning/ExportDataset/QtSegment.py,sha256=7sDczfciPPbGgMdb6D9pZn27DHs_Spg1bd-bc9_hI7Y,6696
141
142
  coralnet_toolbox/MachineLearning/ExportDataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
142
- coralnet_toolbox/MachineLearning/ImportDataset/QtBase.py,sha256=xRYutV3GUHqMLFaw79_x_7ED6el8mzohwDd3L7_h2ao,23950
143
+ coralnet_toolbox/MachineLearning/ImportDataset/QtBase.py,sha256=2dy9KirW-LlN0SILlq1LGvAYGutlSnWqVHnPFeJN32Q,25261
143
144
  coralnet_toolbox/MachineLearning/ImportDataset/QtDetect.py,sha256=1YQFAgfuPUUZ18fXbvs4GP9Mrp_-9kfeDdmJHEA5e7I,1121
144
145
  coralnet_toolbox/MachineLearning/ImportDataset/QtSegment.py,sha256=D4bef57dCQa4nJWf8cUphrUILvbfT-a34C-rgpxi814,1163
145
146
  coralnet_toolbox/MachineLearning/ImportDataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -159,7 +160,7 @@ coralnet_toolbox/MachineLearning/TuneModel/QtDetect.py,sha256=fqnYHiJcuU1W9uiOJh
159
160
  coralnet_toolbox/MachineLearning/TuneModel/QtSegment.py,sha256=2ShgQaeiT9D3G_o4MXXuOUpaJUhhRXEyr16bQp3oAfQ,3172
160
161
  coralnet_toolbox/MachineLearning/TuneModel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
162
  coralnet_toolbox/MachineLearning/TuneModel/tuner.py,sha256=AiX-ozWE9sg5kyO3rvt86VobjRiYqoGk2nB4FvrI8ZI,36929
162
- coralnet_toolbox/MachineLearning/VideoInference/QtBase.py,sha256=EwVUzS9Ls-lcIyKEvONKMyW-90Bjo0HG-m0XLh3pMbw,21204
163
+ coralnet_toolbox/MachineLearning/VideoInference/QtBase.py,sha256=sVjNDq55qfjlb8izfeC12v0W-vtu_brDjjdkDEjATXE,21086
163
164
  coralnet_toolbox/MachineLearning/VideoInference/QtClassify.py,sha256=1L9oPtsoV8SoM922htF7xvp5HylISoJLVubRXI7kESg,5637
164
165
  coralnet_toolbox/MachineLearning/VideoInference/QtDetect.py,sha256=3z4iJ9bzdKXqQmivB73ORE6FuLApLPBUa8914t-JPnA,2765
165
166
  coralnet_toolbox/MachineLearning/VideoInference/QtInference.py,sha256=1nq-XRcg7bIMKT-fb-CpMUF7BKC71JW2D4jl1KufJ0A,37633
@@ -174,9 +175,9 @@ coralnet_toolbox/MachineLearning/VideoInference/YOLO3D/detection_model.py,sha256
174
175
  coralnet_toolbox/MachineLearning/VideoInference/YOLO3D/load_camera_params.py,sha256=0eduzfUuT_C852D9LWykMN1tGf962lk6Q2qjiJyxcQA,4430
175
176
  coralnet_toolbox/MachineLearning/VideoInference/YOLO3D/run.py,sha256=Aumo6RkwJ1wzAloCuhNjgyFnb4z5YeRlME8N_6IdfCU,23463
176
177
  coralnet_toolbox/Rasters/ImageFilter.py,sha256=EhH1YoVjC29ER4qU4t9xwybeX9E012fLq04iPFfbaz4,7928
177
- coralnet_toolbox/Rasters/QtRaster.py,sha256=acvlWojJctwYuT0rUBmL8gkp5vMdYpofK24suUUVZG0,16201
178
+ coralnet_toolbox/Rasters/QtRaster.py,sha256=qWqhKiZbBnv0JnCQvPXx6fQYENgSA7sp3vBUj4fdnhA,18435
178
179
  coralnet_toolbox/Rasters/RasterManager.py,sha256=GuTeuty3x4k8DWZ34FQ4BTNwRfjWu0lEhv3NfF2t5u4,6534
179
- coralnet_toolbox/Rasters/RasterTableModel.py,sha256=IMZXQMT3XTARuL8o5lKLqEdF059WWhWlg6TaTPSn7Fo,13087
180
+ coralnet_toolbox/Rasters/RasterTableModel.py,sha256=vgSCjzqK2u_9DyRjz2ecZAUmIh9eDfcPWl8vglGg4Sc,14546
180
181
  coralnet_toolbox/Rasters/__init__.py,sha256=Pi88uDQbtWxwHfJFdlsvbkwGNhtlyM_013l8bbJlFfw,428
181
182
  coralnet_toolbox/Results/CombineResults.py,sha256=QrHyKhMrjNDtQ98PQabUflHhyv_8KXTGqU30tw9amV8,4523
182
183
  coralnet_toolbox/Results/ConvertResults.py,sha256=uh7tfJxDiH_cJHxWsr8KQQOcsfzC59-k6PQDVtl3ZaY,6015
@@ -184,14 +185,15 @@ coralnet_toolbox/Results/MapResults.py,sha256=sDieekB93RVKvD-9mW1zRsHOs85shYVIQk
184
185
  coralnet_toolbox/Results/Masks.py,sha256=C-zoobRaWXP_QdGcL7ZgSxytHOBdHIBUbQuGnoMZthE,5183
185
186
  coralnet_toolbox/Results/ResultsProcessor.py,sha256=q_UZNYggpZyY4_P6RpDLbY1ygNH49GXlP1s9ZFI3yF0,17261
186
187
  coralnet_toolbox/Results/__init__.py,sha256=WPdlq8aXzjrdQo5T3UqFh7jxge33iNEHiSRAmm0eJuw,630
187
- coralnet_toolbox/SAM/QtBatchInference.py,sha256=zG0vVPBIozZQu043hwjI3_gjlwx-iWeikhu3QxMam4U,6931
188
- coralnet_toolbox/SAM/QtDeployGenerator.py,sha256=CcedOASyV_jLJyqsLRdkeGKBY8Y_AjwWt2-_xgLcdk4,25789
189
- coralnet_toolbox/SAM/QtDeployPredictor.py,sha256=D1DyqjLXQDTNiLp9OVgsiI97fMFftab_goEkQvDH1DU,23516
188
+ coralnet_toolbox/SAM/QtBatchInference.py,sha256=UyuYLfPF4JrOmmuMOzshbKDEEribV669d9LURmuu6gg,6866
189
+ coralnet_toolbox/SAM/QtDeployGenerator.py,sha256=1zzzLuN6Dqe0tVoc3KosaFfYh39HeJ1OCOH0GvqRZDg,26550
190
+ coralnet_toolbox/SAM/QtDeployPredictor.py,sha256=m8ZmK5ZVcNHz-i7sYkW7jCa8ZAgEMtN12S21h4is-OM,23966
190
191
  coralnet_toolbox/SAM/__init__.py,sha256=Zxd75pFMrt5DfSmNNVSsQeCucIQ2rVaEiS0hT_OVIMM,293
191
- coralnet_toolbox/SeeAnything/QtBatchInference.py,sha256=1UMogdTWgO3eEwTquJpIYjILUbjkhLEHFDGsHSGzY-I,16200
192
- coralnet_toolbox/SeeAnything/QtDeployPredictor.py,sha256=Op-bK1VNppqGM3uoWH4y54YAfcohnlCEhgPXE5dnw9I,25936
193
- coralnet_toolbox/SeeAnything/QtTrainModel.py,sha256=s4bgraoHIqTtcHdbpMoYoZ9cpHpIP1Nfay1cFQPc3lY,25071
194
- coralnet_toolbox/SeeAnything/__init__.py,sha256=1fVjXVLpQQVw0JLzc6l3HiGVRNa6hztxAMrXc1pFbDI,284
192
+ coralnet_toolbox/SeeAnything/QtBatchInference.py,sha256=k3aftVzva84yATB4Su5DSI0lhkHDggUg3mVAx4AHmjw,7134
193
+ coralnet_toolbox/SeeAnything/QtDeployGenerator.py,sha256=OvzCDYpsT2RlfR03JBUANaQt5B7ffP6jlk0qcbYC_cw,67836
194
+ coralnet_toolbox/SeeAnything/QtDeployPredictor.py,sha256=0hjtxrKMN26XyRMoUxFKhnmcBY9vnhfndBdAhXrqGHs,24765
195
+ coralnet_toolbox/SeeAnything/QtTrainModel.py,sha256=dQ6ZkeIr1migU-edGO-gQMENVP4o7WJsIANlSVhFK8k,28031
196
+ coralnet_toolbox/SeeAnything/__init__.py,sha256=4OgG9-aQ6_RZ942-Ift_q-kkp14kObMT4lDIIx9YSxQ,366
195
197
  coralnet_toolbox/Tile/QtTileBatchInference.py,sha256=chSo-TOwpnAgIQpTetZnbhWQIBzbDJO01xAQ3z0-ubk,10730
196
198
  coralnet_toolbox/Tile/QtTileCreation.py,sha256=Cw6q0ZVXx0hU4uMuXA3OZ3_5bKu6oQgnlMFwaXSZbS0,39963
197
199
  coralnet_toolbox/Tile/__init__.py,sha256=BlV-1bO9u-olfNAIvukUMPRzlw8dx-ayjrjMRQ-bSsk,463
@@ -200,25 +202,26 @@ coralnet_toolbox/Tile/TileDataset/QtClassify.py,sha256=JmaHxrvivp-BXAcXnzNmJYgKR
200
202
  coralnet_toolbox/Tile/TileDataset/QtDetect.py,sha256=om4Y11RSTVSGIO131kgTztnpG-biJb6KCw4i89c_d9c,670
201
203
  coralnet_toolbox/Tile/TileDataset/QtSegment.py,sha256=93tVBXqf3ehrt7i6d0MP3BnBbpVrsczrhQOuaVh8_bc,679
202
204
  coralnet_toolbox/Tile/TileDataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
203
- coralnet_toolbox/Tools/QtCutSubTool.py,sha256=Dpfhbv_ppuKAZFAi3aT6QApxA95AuEN2_SlIxXjYzWM,5765
205
+ coralnet_toolbox/Tools/QtCutSubTool.py,sha256=3mO8VLrS_sKuEukGQljF_gX8PMdf1za-dxudB6lyCGI,6456
204
206
  coralnet_toolbox/Tools/QtMoveSubTool.py,sha256=K5uXEGGl8nwKvGI0DBGZ8ILZsxWf22HVSfyLr0hKhuE,2165
205
207
  coralnet_toolbox/Tools/QtPanTool.py,sha256=q0g5Ryse6mIZ_Ss4qJw5NNwgoLuQQBIyQTXNFL643-s,3062
206
208
  coralnet_toolbox/Tools/QtPatchTool.py,sha256=57vFeR2jQ_VQRlMEIC_mH8NigUqOlVvmhaVkXDvd_Gw,5574
207
209
  coralnet_toolbox/Tools/QtPolygonTool.py,sha256=yxnkwK3rb52pWCq7a3iAABhHUSS_a3vkL7G7Ev0uLDA,9174
208
210
  coralnet_toolbox/Tools/QtRectangleTool.py,sha256=gYOOsn1WRHLG0YzkKmmM7OzLpuLNh8GWIZ4MloXoLDc,7218
209
- coralnet_toolbox/Tools/QtResizeSubTool.py,sha256=derPy4adRj758-xYtjL-_35yGBOjoSe_DRE48HpdQpA,5836
210
- coralnet_toolbox/Tools/QtSAMTool.py,sha256=TQ--xcR76lymFS0YVo5Gi4ay_tIsIEecYpLDMRBPLWQ,26174
211
- coralnet_toolbox/Tools/QtSeeAnythingTool.py,sha256=2uxyX_chOIXcmW6oBlb6XlgbRmSwSaQXmkmgOtFrqI4,30606
212
- coralnet_toolbox/Tools/QtSelectSubTool.py,sha256=xKtXYCwezLq3YZQLsSTG3mxs_ZRjLiPrYl-0ebgq-GA,3125
213
- coralnet_toolbox/Tools/QtSelectTool.py,sha256=rSzM9s7pMxrLqvcWgIcEnpEQhYHU6TbGUna8ZaamakA,19957
211
+ coralnet_toolbox/Tools/QtResizeSubTool.py,sha256=cWJDx8PEtxoCLQKuyEyZ6ccBzFKau9j1djrSSpDgaq8,6524
212
+ coralnet_toolbox/Tools/QtSAMTool.py,sha256=PKSQU0gBsbI5rDCHRs46fUsS8QDkaqYT7aF8CEreNBQ,34068
213
+ coralnet_toolbox/Tools/QtSeeAnythingTool.py,sha256=ZjqaM0At7MCB5R0wgibph75FkH2ZIePfRnXQUQko6wE,38515
214
+ coralnet_toolbox/Tools/QtSelectSubTool.py,sha256=_FIjLhnEVY19Q87jhRKXGdghNfMBxxy_sECAIUo0BZA,3294
215
+ coralnet_toolbox/Tools/QtSelectTool.py,sha256=qAXRIGmjdzWjaH6GwhvlQSodZuFa6OnyckzNVfVDG2w,20983
214
216
  coralnet_toolbox/Tools/QtSubTool.py,sha256=H25FoFqywdi6Bl35MfpEXGrr48ZTgdRRvHMxUy1tqN4,1601
217
+ coralnet_toolbox/Tools/QtSubtractSubTool.py,sha256=u9zbkila7hJ_AEhWRM6e_z0OgGs5xqO5zbqVetvCAEU,2682
215
218
  coralnet_toolbox/Tools/QtTool.py,sha256=2MCjT151gYBN8KbsK0GX4WOrEg1uw3oeSkp7Elw1AUA,2531
216
- coralnet_toolbox/Tools/QtWorkAreaTool.py,sha256=-CDrEPenOdSI3sf5wn19Cip4alE1ef7WsRDxQFDkHlc,22162
219
+ coralnet_toolbox/Tools/QtWorkAreaTool.py,sha256=ApsIiEbkyWFWKW6qnFPPnL_Wgs2xa_Edif5kZU5_n8M,22733
217
220
  coralnet_toolbox/Tools/QtZoomTool.py,sha256=F9CAoABv1jxcUS7dyIh1FYjgjOXYRI1xtBPNIR1g62o,4041
218
- coralnet_toolbox/Tools/__init__.py,sha256=218iQ8IFXIkKXiUDVYtXk9e08UY9-LhHjcryaJAanQ0,797
219
- coralnet_toolbox-0.0.72.dist-info/licenses/LICENSE.txt,sha256=AURacZ_G_PZKqqPQ9VB9Sqegblk67RNgWSGAYKwXXMY,521
220
- coralnet_toolbox-0.0.72.dist-info/METADATA,sha256=cOB6wtxUBZcPWkW0L9v3LCWIsI_NOaaiKo9RyQJl15M,18152
221
- coralnet_toolbox-0.0.72.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
222
- coralnet_toolbox-0.0.72.dist-info/entry_points.txt,sha256=oEeMoDlJ_2lq95quOeDHIx9hZpubUlSo80OLtgbcrbM,63
223
- coralnet_toolbox-0.0.72.dist-info/top_level.txt,sha256=SMWPh4_9JfB8zVpPOOvjucV2_B_hvWW7bNWmMjG0LsY,17
224
- coralnet_toolbox-0.0.72.dist-info/RECORD,,
221
+ coralnet_toolbox/Tools/__init__.py,sha256=UYStZw1eA_yJ07IVli1MYSvk0pSCs1aS169LcQo630s,867
222
+ coralnet_toolbox-0.0.74.dist-info/licenses/LICENSE.txt,sha256=AURacZ_G_PZKqqPQ9VB9Sqegblk67RNgWSGAYKwXXMY,521
223
+ coralnet_toolbox-0.0.74.dist-info/METADATA,sha256=MQd5g1S0o1V9ZkhTUe1Ky13Jk_7bK2hn4CqLL4YoFcw,15083
224
+ coralnet_toolbox-0.0.74.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
225
+ coralnet_toolbox-0.0.74.dist-info/entry_points.txt,sha256=oEeMoDlJ_2lq95quOeDHIx9hZpubUlSo80OLtgbcrbM,63
226
+ coralnet_toolbox-0.0.74.dist-info/top_level.txt,sha256=SMWPh4_9JfB8zVpPOOvjucV2_B_hvWW7bNWmMjG0LsY,17
227
+ coralnet_toolbox-0.0.74.dist-info/RECORD,,
@@ -1,341 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: coralnet-toolbox
3
- Version: 0.0.72
4
- Summary: Tools for annotating and developing ML models for benthic imagery
5
- Author-email: Jordan Pierce <jordan.pierce@noaa.gov>
6
- License: MIT License
7
- Project-URL: Homepage, https://github.com/Jordan-Pierce/CoralNet-Toolbox
8
- Keywords: CoralNet-Toolbox
9
- Classifier: Intended Audience :: Developers
10
- Classifier: License :: OSI Approved :: MIT License
11
- Classifier: Natural Language :: English
12
- Classifier: Programming Language :: Python :: 3.10
13
- Requires-Python: <3.11,>=3.10
14
- Description-Content-Type: text/markdown
15
- License-File: LICENSE.txt
16
- Requires-Dist: PyQt5>=5.15.11
17
- Requires-Dist: pyqtdarktheme
18
- Requires-Dist: pyqtgraph
19
- Requires-Dist: ultralytics>=8.3.152
20
- Requires-Dist: lap>=0.5.12
21
- Requires-Dist: open-clip-torch>=2.20.0
22
- Requires-Dist: supervision>=0.24.0
23
- Requires-Dist: scikit-learn
24
- Requires-Dist: umap-learn
25
- Requires-Dist: faiss-cpu
26
- Requires-Dist: pycocotools
27
- Requires-Dist: ujson
28
- Requires-Dist: timm==0.9.2
29
- Requires-Dist: autodistill
30
- Requires-Dist: transformers>=4.5.0
31
- Requires-Dist: x-segment-anything>=0.0.8
32
- Requires-Dist: yolo-tiling>=0.0.19
33
- Requires-Dist: roboflow
34
- Requires-Dist: rasterio
35
- Requires-Dist: requests
36
- Requires-Dist: selenium>=4.15.2
37
- Requires-Dist: beautifulsoup4>=4.12.2
38
- Requires-Dist: webdriver_manager
39
- Requires-Dist: dill
40
- Requires-Dist: seaborn
41
- Provides-Extra: all
42
- Requires-Dist: coralnet-toolbox[extra]; extra == "all"
43
- Dynamic: license-file
44
-
45
- # CoralNet-Toolbox 🪸🧰
46
-
47
- <div align="center">
48
- <p>
49
- <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/CoralNet_Toolbox.png" alt="CoralNet-Toolbox">
50
- </p>
51
- </div>
52
-
53
- <div align="center">
54
-
55
- [![python-version](https://img.shields.io/pypi/pyversions/CoralNet-Toolbox.svg)](https://pypi.org/project/CoralNet-Toolbox)
56
- [![version](https://img.shields.io/pypi/v/CoralNet-Toolbox.svg)](https://pypi.python.org/pypi/CoralNet-Toolbox)
57
- [![pypi-passing](https://github.com/Jordan-Pierce/CoralNet-Toolbox/actions/workflows/pypi.yml/badge.svg)](https://pypi.org/project/CoralNet-Toolbox)
58
- [![windows](https://github.com/Jordan-Pierce/CoralNet-Toolbox/actions/workflows/windows.yml/badge.svg)](https://pypi.org/project/CoralNet-Toolbox)
59
- [![macos](https://github.com/Jordan-Pierce/CoralNet-Toolbox/actions/workflows/macos.yml/badge.svg)](https://pypi.org/project/CoralNet-Toolbox)
60
- [![ubuntu](https://github.com/Jordan-Pierce/CoralNet-Toolbox/actions/workflows/ubuntu.yml/badge.svg)](https://pypi.org/project/CoralNet-Toolbox)
61
- </div>
62
-
63
- <div align="center">
64
- <table>
65
- <tr>
66
- <td align="center" width="33%">
67
- <h3>🔍 Annotation</h3>
68
- <p>Create patches, rectangles, and polygons with AI assistance</p>
69
- </td>
70
- <td align="center" width="33%">
71
- <h3>🧠 AI-Powered</h3>
72
- <p>Leverage SAM, YOLOE, and various foundation models</p>
73
- </td>
74
- <td align="center" width="33%">
75
- <h3>🚀 Complete Workflow</h3>
76
- <p>From data collection to model training and deployment</p>
77
- </td>
78
- </tr>
79
- </table>
80
- </div>
81
-
82
- ## 🚦 Quick Start
83
-
84
- Running the following command will install the `coralnet-toolbox`, which you can then run from the command line:
85
- ```bash
86
- # cmd
87
-
88
- # Install
89
- pip install coralnet-toolbox
90
-
91
- # Run
92
- coralnet-toolbox
93
- ```
94
-
95
- ## 📚 Guides
96
-
97
- For further information and instructions, please see the following guides:
98
- - [Overview](https://jordan-pierce.github.io/CoralNet-Toolbox/overview)
99
- - [Installation](https://jordan-pierce.github.io/CoralNet-Toolbox/installation)
100
- - [Usage](https://jordan-pierce.github.io/CoralNet-Toolbox/usage)
101
- - Community Provided:
102
- - [Patch-based Image Classifier](https://jordan-pierce.github.io/CoralNet-Toolbox/classify)
103
-
104
- <details open>
105
- <summary><h2><b>🎥 Watch the Video Demos</b></h2></summary>
106
- <p align="center">
107
- <a href="https://youtube.com/playlist?list=PLG5z9IbwhS5NQT3B2jrg3hxQgilDeZak9&feature=shared">
108
- <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/toolbox_qt.PNG" alt="Video Title" width="90%">
109
- </a>
110
- </p>
111
- </details>
112
-
113
- ## ⏩ TL;Dr
114
-
115
- The `CoralNet-Toolbox` is an unofficial codebase that can be used to augment processes associated with those on
116
- [CoralNet](https://coralnet.ucsd.edu/).
117
-
118
- It uses✨[`Ultralytics`](https://github.com/ultralytics/ultralytics)🚀 as a base, which is an open-source library for
119
- computer vision and deep learning built in `PyTorch`. For more information on their `AGPL-3.0` license, see
120
- [here](https://github.com/ultralytics/ultralytics/blob/main/LICENSE).
121
-
122
- ### 🚀 Supported Models
123
-
124
- The `toolbox` integrates a variety of state-of-the-art models to help you create rectangle and polygon annotations efficiently. Below is a categorized overview of the supported models and frameworks:
125
-
126
- <div align="center">
127
-
128
- | Category | Models |
129
- |-------------------------|---------------------------------------------------------------------------------------------------------|
130
- | **Trainable** | - 🦾 [YOLOv3](https://docs.ultralytics.com/models/) <br> - 🦈 [YOLOv4](https://docs.ultralytics.com/models/) <br> - 🦅 [YOLOv5](https://docs.ultralytics.com/models/) <br> - 🐬 [YOLOv6](https://docs.ultralytics.com/models/) <br> - 🐢 [YOLOv7](https://docs.ultralytics.com/models/) <br> - 🐙 [YOLOv8](https://docs.ultralytics.com/models/) <br> - 🐠 [YOLOv9](https://docs.ultralytics.com/models/) <br> - 🦑 [YOLOv10](https://docs.ultralytics.com/models/) <br> - 🚀 [YOLO11](https://docs.ultralytics.com/models/) <br> - 🐳 [YOLO12](https://docs.ultralytics.com/models/) |
131
- | **Segment Anything** | - 🪸 [SAM](https://github.com/facebookresearch/segment-anything) <br> - 🌊 [CoralSCOP](https://github.com/zhengziqiang/CoralSCOP) <br> - ⚡ [FastSAM](https://github.com/CASIA-IVA-Lab/FastSAM) <br> - 🔁 [RepViT-SAM](https://github.com/THU-MIG/RepViT) <br> - ✂️ [EdgeSAM](https://github.com/chongzhou96/EdgeSAM) <br> - 📱 [MobileSAM](https://github.com/ChaoningZhang/MobileSAM) |
132
- | **Visual Prompting** | - 👁️ [YOLOE](https://github.com/THU-MIG/yoloe) <br> - 🤖 [AutoDistill](https://github.com/autodistill): <br> &nbsp;&nbsp;&nbsp;• 🦒 Grounding DINO <br> &nbsp;&nbsp;&nbsp;• 🦉 OWLViT <br> &nbsp;&nbsp;&nbsp;• ⚡ OmDetTurbo |
133
-
134
- </div>
135
-
136
- These models enable fast, accurate, and flexible annotation workflows for a wide range of use cases for patch-based image classification, object detection, instance segmentation.
137
-
138
- ## 🛠️ Toolbox Features
139
-
140
- <div align="center">
141
-
142
- | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Patches.gif" alt="Patch Annotation Tool" width="256" height="256"/><br><sub>**Patch Annotation**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Rectangles.gif" alt="Rectangle Annotation Tool" width="256" height="256"/><br><sub>**Rectangle Annotation**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Polygons.gif" alt="Polygon Annotation Tool" width="256" height="256"/><br><sub>**(Multi) Polygon Annotation**</sub> |
143
- |:--:|:--:|:--:|
144
- | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Classification.gif" alt="Patch-based Image Classification" width="256" height="256"/><br><sub>**Image Classification**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Object_Detection.gif" alt="Object Detection" width="256" height="256"/><br><sub>**Object Detection**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Instance_Segmentation.gif" alt="Instance Segmentation" width="256" height="256"/><br><sub>**Instance Segmentation**</sub> |
145
- | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Segment_Anything.gif" alt="Segment Anything Model (SAM)" width="256" height="256"/><br><sub>**Segment Anything (SAM)**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Classifying_Polygons.gif" alt="Polygon Classification" width="256" height="256"/><br><sub>**Polygon Classification**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Work_Areas.gif" alt="Region-based Detection" width="256" height="256"/><br><sub>**Region-based Detection**</sub> |
146
- | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Cut.gif" alt="Cut" width="256" height="256"/><br><sub>**Cut**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Combine.gif" alt="Combine" width="256" height="256"/><br><sub>**Combine**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Simplify.gif" alt="Simplify" width="256" height="256"/><br><sub>**Simplify**</sub> |
147
- | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/See_Anything.gif" alt="See Anything (YOLOE)" width="256" height="256"/><br><sub>**See Anything (YOLOE)**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Classifying_Orthomosaics.gif" alt="Patch-based LAI Classification" width="256" height="256"/><br><sub>**LAI Classification**</sub> | |
148
-
149
- <br>
150
-
151
- | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Analytics.gif" alt="Video Inference" width="450"/><br><sub>**Video Inference**</sub> | <img src="https://raw.githubusercontent.com/Jordan-Pierce/CoralNet-Toolbox/refs/heads/main/figures/tools/Explorer.gif" alt="Explorer" width="450"/><br><sub>**Explorer**</sub> |
152
- |:--:|:--:|
153
-
154
- </div>
155
-
156
- </div>
157
-
158
- Enhance your CoralNet experience with these tools:
159
- - 📥 [Download](https://www.youtube.com/watch?v=Ds9JZATmCmw): Retrieve Source data (images and annotations) from CoralNet
160
- - 🎬 Rasters: Import images, or extract frames directly from video files
161
- - ✏️ Annotate: Create annotations freely
162
- - 👁️ Visualize: See CoralNet and CPCe annotations superimposed on images
163
- - 🔬 Sample: Sample patches using various methods (Uniform, Random, Stratified)
164
- - 🧩 Patches: Create patches (points)
165
- - 🔳 Rectangles: Create rectangles (bounding boxes)
166
- - 🟣 Polygons: Create polygons (instance masks)
167
- - 👨‍👩‍👧‍👦 MultiPolygons: Combine multiple, non-overlapping polygons (i.e, genets)
168
- - ✍️ Edit: Cut and Combine polygons and rectangles
169
- - 🦾 SAM: Use `FastSAM`, `CoralSCOP`, `RepViT-SAM`, `EdgeSAM`, `MobileSAM`, and `SAM` to create polygons
170
- - Uses [`xSAM`](https://github.com/Jordan-Pierce/xSAM)
171
- - 👷‍♂️ Work areas: Perform region-specific detections / segmentations with any model
172
- - 👀 YOLOE (See Anything): Detect similar appearing objects using visual prompts automatically
173
- - 🧪 AutoDistill: Use `AutoDistill` to access the following for creating rectangles and polygons:
174
- - Uses `Grounding DINO`, `OWLViT`, `OmDetTurbo`
175
- - 📻 Tune: Tune hyperparameters to identify ideal training conditions
176
- - 🧠 Train: Build local patch-based classifiers, object detection, and instance segmentation models
177
- - 🧙‍♂️ Deploy: Use trained models for predictions
178
- - 📊 Evaluation: Evaluate model performance
179
- - 🚀 Optimize: Productionize models for faster inferencing
180
- - ⚙️ Batch Inference: Perform predictions on multiple images, automatically
181
- - 🎞️ Video Inference: Perform predictions on a video in real-time, record the output and analytics
182
- - 🔮 [Explorer](https://youtu.be/68eZt5l_7nA): Cluster, view, and re-label annotations using embeddings, mapped from feature-space
183
- - ↔️ I/O: Import and Export annotations from / to CoralNet, Viscore, and TagLab
184
- - Export annotations as [GeoJSONs](https://datatracker.ietf.org/doc/html/rfc7946), segmentation masks
185
- - 📸 YOLO: Import and Export YOLO datasets for machine learning
186
- - 🧱 Tile Dataset: Tile existing Detection / Segmentation datasets
187
- - Uses [`yolo-tiling`](https://github.com/Jordan-Pierce/yolo-tiling)
188
- - 🏗️ Tile Inference: Pre-compute multiple work areas for an entire image
189
-
190
- ### 📝 TODO
191
- - 🤗 Model Zoo: Download `Ultralytics` models from `HuggingFace` for use in `toolbox`
192
- - 🦊 BioCLIP, MobileCLIP (AutoDistill): Automatically classify annotations
193
- - 📦 [Toolshed: Access tools from the old repository](https://github.com/Jordan-Pierce/CoralNet-Toolshed)
194
-
195
- ## 💾 **How to Install**
196
-
197
- ### 🐍 Anaconda
198
-
199
- It's recommended to use `Anaconda` to create an environment for the `toolbox`:
200
- ```bash
201
- # cmd
202
-
203
- # Create and activate an environment
204
- conda create --name coralnet10 python=3.10 -y
205
- conda activate coralnet10
206
- ```
207
-
208
- ### 📦 Install
209
-
210
- Once this has finished, install the `toolbox` using `uv`:
211
-
212
- ```bash
213
- # cmd
214
-
215
- # Install uv first
216
- pip install uv
217
-
218
- # Install with uv
219
- uv pip install coralnet-toolbox
220
- ```
221
-
222
- Although fast, `uv` is still relatively new; if this fails, simply fall back to using `pip`:
223
-
224
- ```bash
225
- # cmd
226
-
227
- # Install
228
- pip install coralnet-toolbox
229
- ```
230
-
231
- ### ⚡ CUDA
232
-
233
- If you have `CUDA`, you should install the versions of `cuda-nvcc` and `cudatoolkit` that you
234
- need, and then install the corresponding versions of `torch` and `torchvision`. Below is an example of how that can be
235
- done using `CUDA` version 11.8:
236
- ```bash
237
- # cmd
238
-
239
- # Example for CUDA 11.8
240
- conda install nvidia/label/cuda-11.8.0::cuda-nvcc -y
241
- conda install nvidia/label/cuda-11.8.0::cuda-toolkit -y
242
-
243
- # Example for torch w/ CUDA 11.8
244
- uv pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118 --upgrade
245
- ```
246
-
247
- If `CUDA` is installed on your computer, and `torch` was built with it properly, you should see a `🐇` icon in the
248
- `toolbox` instead of a `🐢`; if you have multiple `CUDA` devices available, you should see a `🚀` icon,
249
- and if you're using a Mac with `Metal`, you should see an `🍎` icon (click on the icon to see the device information).
250
-
251
- See here for more details on versions for the following:
252
- - [`cuda-nvcc`](https://anaconda.org/nvidia/cuda-nvcc)
253
- - [`cudatoolkit`](https://anaconda.org/nvidia/cuda-toolkit)
254
- - [`torch`](https://pytorch.org/get-started/locally/)
255
-
256
- ### ▶️ Run
257
-
258
- Finally, you can run the `toolbox` from the command line:
259
-
260
- ```bash
261
- # cmd
262
-
263
- # Run
264
- coralnet-toolbox
265
- ```
266
-
267
- ### **How to Upgrade**
268
-
269
- When opening the `toolbox`, you will be notified if there is an update available, and you have the _option_ to do so,
270
- if you so choose. To upgrade, run the following command from your terminal:
271
-
272
- ```bash
273
- # cmd
274
-
275
- uv pip install -U coralnet-toolbox==[enter_newest_version_here]
276
- ```
277
-
278
- Again, fall back to using just `pip` and not `uv` if this fails.
279
-
280
- ## 🌊 Success Stories
281
-
282
- Using the `toolbox`? Share your successes and we can feature your work to help others learn!
283
-
284
- ## 🐠 [**About CoralNet**](https://coralnet.ucsd.edu/source/)
285
-
286
- Coral reefs are vital ecosystems that support a wide range of marine life and provide numerous
287
- benefits to humans. However, they are under threat due to climate change, pollution, overfishing,
288
- and other factors. CoralNet is a platform designed to aid researchers and scientists in studying
289
- these important ecosystems and their inhabitants.
290
-
291
- CoralNet allows users to upload photos of coral reefs and annotate them with detailed information
292
- about the coral species and other features present in the images. The platform also provides tools
293
- for analyzing the annotated images, and create patch-based image classifiers.
294
-
295
- The CoralNet-Toolbox is an unofficial tool developed to augment processes associated with analyses that
296
- use CoralNet and Coral Point Count (CPCe).
297
-
298
- ## 🏁 **Conclusion**
299
-
300
- In summary, this repository provides a range of tools that can assist with interacting with
301
- CoralNet and performing various tasks related to analyzing annotated images. These tools can be
302
- useful for researchers and scientists working with coral reefs, as well as for students and
303
- hobbyists interested in learning more about these important ecosystems.
304
-
305
- ## 📝 Citation
306
-
307
- If used in project or publication, please attribute your use of this repository with the following:
308
-
309
- ```
310
- @misc{CoralNet-Toolbox,
311
- author = {Pierce, Jordan and Edwards, Clinton and Rojano, Sarah and Cook, Sophie and Sweeney, Edward and Costa, Bryan and Vieham, Shay and Battista, Tim},
312
- title = {CoralNet-Toolbox},
313
- year = {2023},
314
- howpublished = {\url{https://github.com/Jordan-Pierce/CoralNet-Toolbox}},
315
- note = {GitHub repository}
316
- }
317
- ```
318
-
319
- ---
320
-
321
- ## ⚠️ Disclaimer
322
-
323
- This repository is a scientific product and is not official communication of the National
324
- Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA
325
- GitHub project code is provided on an 'as is' basis and the user assumes responsibility for its
326
- use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from
327
- the use of this GitHub project will be governed by all applicable Federal law. Any reference to
328
- specific commercial products, processes, or services by service mark, trademark, manufacturer, or
329
- otherwise, does not constitute or imply their endorsement, recommendation or favoring by the
330
- Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC
331
- bureau, shall not be used in any manner to imply endorsement of any commercial product or activity
332
- by DOC or the United States Government.
333
-
334
- ## 📝 License
335
-
336
- Software code created by U.S. Government employees is not subject to copyright in the United States
337
- (17 U.S.C. §105). The United States/Department of Commerce reserve all rights to seek and obtain
338
- copyright protection in countries other than the United States for Software authored in its
339
- entirety by the Department of Commerce. To this end, the Department of Commerce hereby grants to
340
- Recipient a royalty-free, nonexclusive license to use, copy, and create derivative works of the
341
- Software outside of the United States.