coralnet-toolbox 0.0.22__tar.gz

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 (162) hide show
  1. coralnet_toolbox-0.0.22/.editorconfig +21 -0
  2. coralnet_toolbox-0.0.22/.gitallowed +2 -0
  3. coralnet_toolbox-0.0.22/.github/ISSUE_TEMPLATE/bug_report.md +24 -0
  4. coralnet_toolbox-0.0.22/.github/ISSUE_TEMPLATE/config.yml +0 -0
  5. coralnet_toolbox-0.0.22/.github/ISSUE_TEMPLATE/feature_request.md +18 -0
  6. coralnet_toolbox-0.0.22/.github/workflows/docs-build.yml +55 -0
  7. coralnet_toolbox-0.0.22/.github/workflows/docs.yml +31 -0
  8. coralnet_toolbox-0.0.22/.github/workflows/installation.yml +31 -0
  9. coralnet_toolbox-0.0.22/.github/workflows/macos.yml +42 -0
  10. coralnet_toolbox-0.0.22/.github/workflows/pypi.yml +30 -0
  11. coralnet_toolbox-0.0.22/.github/workflows/ubuntu.yml +44 -0
  12. coralnet_toolbox-0.0.22/.github/workflows/windows.yml +34 -0
  13. coralnet_toolbox-0.0.22/.gitignore +132 -0
  14. coralnet_toolbox-0.0.22/LICENSE.txt +5 -0
  15. coralnet_toolbox-0.0.22/MANIFEST.in +7 -0
  16. coralnet_toolbox-0.0.22/PKG-INFO +245 -0
  17. coralnet_toolbox-0.0.22/README.md +210 -0
  18. coralnet_toolbox-0.0.22/coralnet_toolbox/Annotations/QtAnnotation.py +372 -0
  19. coralnet_toolbox-0.0.22/coralnet_toolbox/Annotations/QtPatchAnnotation.py +212 -0
  20. coralnet_toolbox-0.0.22/coralnet_toolbox/Annotations/QtPolygonAnnotation.py +445 -0
  21. coralnet_toolbox-0.0.22/coralnet_toolbox/Annotations/QtRectangleAnnotation.py +284 -0
  22. coralnet_toolbox-0.0.22/coralnet_toolbox/Annotations/__init__.py +11 -0
  23. coralnet_toolbox-0.0.22/coralnet_toolbox/AutoDistill/Models/GroundingDINOModel.py +120 -0
  24. coralnet_toolbox-0.0.22/coralnet_toolbox/AutoDistill/Models/__init__.py +5 -0
  25. coralnet_toolbox-0.0.22/coralnet_toolbox/AutoDistill/QtBatchInference.py +130 -0
  26. coralnet_toolbox-0.0.22/coralnet_toolbox/AutoDistill/QtDeployModel.py +466 -0
  27. coralnet_toolbox-0.0.22/coralnet_toolbox/AutoDistill/__init__.py +9 -0
  28. coralnet_toolbox-0.0.22/coralnet_toolbox/CoralNet/__init__.py +0 -0
  29. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtExportAnnotations.py +89 -0
  30. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtExportCoralNetAnnotations.py +61 -0
  31. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtExportLabels.py +43 -0
  32. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtExportTagLabAnnotations.py +195 -0
  33. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtExportViscoreAnnotations.py +64 -0
  34. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtImportAnnotations.py +130 -0
  35. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtImportCoralNetAnnotations.py +176 -0
  36. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtImportImages.py +57 -0
  37. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtImportLabels.py +56 -0
  38. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtImportTagLabAnnotations.py +272 -0
  39. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/QtImportViscoreAnnotations.py +303 -0
  40. coralnet_toolbox-0.0.22/coralnet_toolbox/IO/__init__.py +25 -0
  41. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/__init__.py +30 -0
  42. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/add.png +0 -0
  43. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/all.png +0 -0
  44. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/apple.png +0 -0
  45. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/coral.png +0 -0
  46. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/edit.png +0 -0
  47. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/lock.png +0 -0
  48. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/opaque.png +0 -0
  49. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/parameters.png +0 -0
  50. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/patch.png +0 -0
  51. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/polygon.png +0 -0
  52. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/rabbit.png +0 -0
  53. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/rectangle.png +0 -0
  54. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/remove.png +0 -0
  55. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/rocket.png +0 -0
  56. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/sam.png +0 -0
  57. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/select.png +0 -0
  58. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/settings.png +0 -0
  59. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/slicer.png +0 -0
  60. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/transparent.png +0 -0
  61. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/turtle.png +0 -0
  62. coralnet_toolbox-0.0.22/coralnet_toolbox/Icons/unlock.png +0 -0
  63. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/BatchInference/QtBase.py +180 -0
  64. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/BatchInference/QtClassify.py +148 -0
  65. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/BatchInference/QtDetect.py +43 -0
  66. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/BatchInference/QtSegment.py +43 -0
  67. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/BatchInference/__init__.py +0 -0
  68. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ConfusionMatrix.py +336 -0
  69. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/DeployModel/QtBase.py +356 -0
  70. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/DeployModel/QtClassify.py +135 -0
  71. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/DeployModel/QtDetect.py +169 -0
  72. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/DeployModel/QtSegment.py +167 -0
  73. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/DeployModel/__init__.py +0 -0
  74. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/EvaluateModel/QtBase.py +237 -0
  75. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/EvaluateModel/QtClassify.py +55 -0
  76. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/EvaluateModel/QtDetect.py +47 -0
  77. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/EvaluateModel/QtSegment.py +47 -0
  78. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/EvaluateModel/__init__.py +0 -0
  79. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ExportDataset/QtBase.py +685 -0
  80. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ExportDataset/QtClassify.py +131 -0
  81. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ExportDataset/QtDetect.py +140 -0
  82. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ExportDataset/QtSegment.py +140 -0
  83. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ExportDataset/__init__.py +0 -0
  84. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ImportDataset/QtBase.py +403 -0
  85. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ImportDataset/QtDetect.py +32 -0
  86. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ImportDataset/QtSegment.py +32 -0
  87. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/ImportDataset/__init__.py +0 -0
  88. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/MergeDatasets/QtBase.py +332 -0
  89. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/MergeDatasets/QtClassify.py +18 -0
  90. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/MergeDatasets/__init__.py +0 -0
  91. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/OptimizeModel/QtBase.py +237 -0
  92. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/OptimizeModel/__init__.py +0 -0
  93. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TileDataset/QtBase.py +630 -0
  94. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TileDataset/QtDetect.py +17 -0
  95. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TileDataset/QtSegment.py +17 -0
  96. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TileDataset/__init__.py +0 -0
  97. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TrainModel/QtBase.py +586 -0
  98. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TrainModel/QtClassify.py +64 -0
  99. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TrainModel/QtDetect.py +68 -0
  100. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TrainModel/QtSegment.py +63 -0
  101. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/TrainModel/__init__.py +0 -0
  102. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/WeightedDataset.py +168 -0
  103. coralnet_toolbox-0.0.22/coralnet_toolbox/MachineLearning/__init__.py +54 -0
  104. coralnet_toolbox-0.0.22/coralnet_toolbox/QtAnnotationWindow.py +663 -0
  105. coralnet_toolbox-0.0.22/coralnet_toolbox/QtConfidenceWindow.py +225 -0
  106. coralnet_toolbox-0.0.22/coralnet_toolbox/QtEventFilter.py +103 -0
  107. coralnet_toolbox-0.0.22/coralnet_toolbox/QtImageWindow.py +756 -0
  108. coralnet_toolbox-0.0.22/coralnet_toolbox/QtLabelWindow.py +724 -0
  109. coralnet_toolbox-0.0.22/coralnet_toolbox/QtMainWindow.py +1472 -0
  110. coralnet_toolbox-0.0.22/coralnet_toolbox/QtPatchSampling.py +361 -0
  111. coralnet_toolbox-0.0.22/coralnet_toolbox/QtProgressBar.py +74 -0
  112. coralnet_toolbox-0.0.22/coralnet_toolbox/ResultsProcessor.py +466 -0
  113. coralnet_toolbox-0.0.22/coralnet_toolbox/SAM/QtBatchInference.py +192 -0
  114. coralnet_toolbox-0.0.22/coralnet_toolbox/SAM/QtDeployGenerator.py +434 -0
  115. coralnet_toolbox-0.0.22/coralnet_toolbox/SAM/QtDeployPredictor.py +598 -0
  116. coralnet_toolbox-0.0.22/coralnet_toolbox/SAM/__init__.py +11 -0
  117. coralnet_toolbox-0.0.22/coralnet_toolbox/Slicer/QtSlicer.py +31 -0
  118. coralnet_toolbox-0.0.22/coralnet_toolbox/Slicer/QtSlicerDialog.py +68 -0
  119. coralnet_toolbox-0.0.22/coralnet_toolbox/Slicer/__init__.py +0 -0
  120. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtPanTool.py +42 -0
  121. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtPatchTool.py +70 -0
  122. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtPolygonTool.py +99 -0
  123. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtRectangleTool.py +105 -0
  124. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtSAMTool.py +498 -0
  125. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtSelectTool.py +339 -0
  126. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtTool.py +44 -0
  127. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/QtZoomTool.py +64 -0
  128. coralnet_toolbox-0.0.22/coralnet_toolbox/Tools/__init__.py +19 -0
  129. coralnet_toolbox-0.0.22/coralnet_toolbox/__init__.py +8 -0
  130. coralnet_toolbox-0.0.22/coralnet_toolbox/main.py +27 -0
  131. coralnet_toolbox-0.0.22/coralnet_toolbox/utilities.py +182 -0
  132. coralnet_toolbox-0.0.22/coralnet_toolbox.egg-info/PKG-INFO +245 -0
  133. coralnet_toolbox-0.0.22/coralnet_toolbox.egg-info/SOURCES.txt +160 -0
  134. coralnet_toolbox-0.0.22/coralnet_toolbox.egg-info/dependency_links.txt +1 -0
  135. coralnet_toolbox-0.0.22/coralnet_toolbox.egg-info/entry_points.txt +2 -0
  136. coralnet_toolbox-0.0.22/coralnet_toolbox.egg-info/requires.txt +21 -0
  137. coralnet_toolbox-0.0.22/coralnet_toolbox.egg-info/top_level.txt +1 -0
  138. coralnet_toolbox-0.0.22/docs/index.md +92 -0
  139. coralnet_toolbox-0.0.22/docs/installation.md +85 -0
  140. coralnet_toolbox-0.0.22/docs/overrides/main.html +11 -0
  141. coralnet_toolbox-0.0.22/docs/usage.md +153 -0
  142. coralnet_toolbox-0.0.22/figures/CoralNet_Toolbox.png +0 -0
  143. coralnet_toolbox-0.0.22/figures/SegmentEverything.gif +0 -0
  144. coralnet_toolbox-0.0.22/figures/toolbox_qt.PNG +0 -0
  145. coralnet_toolbox-0.0.22/mkdocs.yml +78 -0
  146. coralnet_toolbox-0.0.22/notebooks/ReefFutures_MIR.ipynb +862 -0
  147. coralnet_toolbox-0.0.22/notebooks/ReefFutures_MIR_DepthMaps.ipynb +856 -0
  148. coralnet_toolbox-0.0.22/notebooks/ReefFutures_Palmyra.ipynb +873 -0
  149. coralnet_toolbox-0.0.22/notebooks/ToYOLO.ipynb +85 -0
  150. coralnet_toolbox-0.0.22/pyproject.toml +78 -0
  151. coralnet_toolbox-0.0.22/requirements.txt +15 -0
  152. coralnet_toolbox-0.0.22/requirements_dev.txt +29 -0
  153. coralnet_toolbox-0.0.22/scripts/Classification_Dataset_Creation.py +62 -0
  154. coralnet_toolbox-0.0.22/scripts/Depth_Maps.py +107 -0
  155. coralnet_toolbox-0.0.22/scripts/Plot_Distribution.py +57 -0
  156. coralnet_toolbox-0.0.22/scripts/Raw_Predictions.py +97 -0
  157. coralnet_toolbox-0.0.22/scripts/SAM_Tests.py +175 -0
  158. coralnet_toolbox-0.0.22/scripts/Subset_Dataset.py +122 -0
  159. coralnet_toolbox-0.0.22/scripts/Wiener_Index.py +124 -0
  160. coralnet_toolbox-0.0.22/setup.cfg +4 -0
  161. coralnet_toolbox-0.0.22/tests/__init__.py +1 -0
  162. coralnet_toolbox-0.0.22/tests/test_coralnet_toolbox.py +3 -0
@@ -0,0 +1,21 @@
1
+ # http://editorconfig.org
2
+
3
+ root = true
4
+
5
+ [*]
6
+ indent_style = space
7
+ indent_size = 4
8
+ trim_trailing_whitespace = true
9
+ insert_final_newline = true
10
+ charset = utf-8
11
+ end_of_line = lf
12
+
13
+ [*.bat]
14
+ indent_style = tab
15
+ end_of_line = crlf
16
+
17
+ [LICENSE]
18
+ insert_final_newline = false
19
+
20
+ [Makefile]
21
+ indent_style = tab
@@ -0,0 +1,2 @@
1
+ "Jordan Pierce"
2
+ "jordan.pierce@noaa.gov"
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: Bug Report
3
+ about: Create a bug report to help us improve
4
+ labels: bug
5
+ ---
6
+
7
+ <!-- Please search existing issues to avoid creating duplicates. -->
8
+
9
+ ### Environment Information
10
+
11
+ - coralnet_toolbox version:
12
+ - Python version:
13
+ - Operating System:
14
+
15
+ ### Description
16
+
17
+ Describe what you were trying to get done.
18
+ Tell us what happened, what went wrong, and what you expected to happen.
19
+
20
+ ### What I Did
21
+
22
+ ```
23
+ If there was a crash, please include the traceback here.
24
+ ```
@@ -0,0 +1,18 @@
1
+ ---
2
+ name: Feature Request
3
+ about: Submit a feature request to help us improve
4
+ labels: Feature Request
5
+ ---
6
+
7
+ <!-- Please search existing issues to avoid creating duplicates. -->
8
+
9
+ ### Description
10
+
11
+ Describe the feature (e.g., new functions/tutorials) you would like to propose.
12
+ Tell us what can be achieved with this new feature and what's the expected outcome.
13
+
14
+ ### Source code
15
+
16
+ ```
17
+ Paste your source code here if have sample code to share.
18
+ ```
@@ -0,0 +1,55 @@
1
+ name: docs-build
2
+ on:
3
+ pull_request:
4
+ branches:
5
+ - main
6
+ - master
7
+
8
+ jobs:
9
+ deploy:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+ with:
14
+ fetch-depth: 0
15
+ - uses: actions/setup-python@v5
16
+ with:
17
+ python-version: "3.10"
18
+
19
+ - name: Install GDAL
20
+ run: |
21
+ python -m pip install --upgrade pip
22
+ pip install --find-links=https://girder.github.io/large_image_wheels --no-cache GDAL pyproj
23
+ - name: Test GDAL installation
24
+ run: |
25
+ python -c "from osgeo import gdal"
26
+ gdalinfo --version
27
+ - name: Install dependencies
28
+ run: |
29
+ pip install --no-cache-dir Cython
30
+ pip install -r requirements.txt -r requirements_dev.txt
31
+ pip install .
32
+ - name: Discover typos with codespell
33
+ run: codespell --skip="*.csv,*.geojson,*.json,*.js,*.html,*cff,*.pdf,./.git" --ignore-words-list="aci,acount,hist"
34
+ - name: PKG-TEST
35
+ run: |
36
+ python -m unittest discover tests/
37
+ - name: Build docs
38
+ run: |
39
+ mkdocs build
40
+ # - name: Deploy to Netlify
41
+ # uses: nwtgck/actions-netlify@v2.0
42
+ # with:
43
+ # publish-dir: "./site"
44
+ # production-branch: main
45
+
46
+ # github-token: ${{ secrets.GITHUB_TOKEN }}
47
+ # deploy-message: "Deploy from GitHub Actions"
48
+ # enable-pull-request-comment: true
49
+ # enable-commit-comment: false
50
+ # overwrites-pull-request-comment: true
51
+ # env:
52
+ # NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
53
+ # NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
54
+ # timeout-minutes: 10
55
+
@@ -0,0 +1,31 @@
1
+ name: docs
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ - master
7
+ jobs:
8
+ deploy:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ with:
13
+ fetch-depth: 0
14
+ - uses: actions/setup-python@v5
15
+ with:
16
+ python-version: "3.10"
17
+
18
+ - name: Install dependencies
19
+ run: |
20
+ python -m pip install --upgrade pip
21
+ pip install --user --no-cache-dir Cython
22
+ pip install --user -r requirements.txt -r requirements_dev.txt
23
+ pip install .
24
+ - name: Discover typos with codespell
25
+ run: |
26
+ codespell --skip="*.csv,*.geojson,*.json,*.js,*.html,*cff,./.git" --ignore-words-list="aci,hist"
27
+ - name: PKG-TEST
28
+ run: |
29
+ python -m unittest discover tests/
30
+ - run: mkdocs gh-deploy --force
31
+
@@ -0,0 +1,31 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+
12
+ name: Linux installation
13
+ jobs:
14
+ test-ubuntu:
15
+ runs-on: ubuntu-latest
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ python-version: ["3.10"]
20
+
21
+ steps:
22
+ - uses: actions/checkout@v4
23
+ - name: Set up Python
24
+ uses: actions/setup-python@v5
25
+ with:
26
+ python-version: ${{ matrix.python-version }}
27
+
28
+ - name: Install package
29
+ run: pip install .
30
+ - name: Test import
31
+ run: python -c "import coralnet_toolbox; print('coralnet_toolbox import successful')"
@@ -0,0 +1,42 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+ name: macOS build
12
+ jobs:
13
+ test-macOS:
14
+ runs-on: ${{ matrix.os }}
15
+ name: ${{ matrix.os }} (${{ matrix.python-version}})
16
+
17
+ strategy:
18
+ fail-fast: false
19
+ matrix:
20
+ os: ["macOS-latest"]
21
+ python-version: ["3.10"]
22
+
23
+ steps:
24
+ - name: Checkout code
25
+ uses: actions/checkout@v4
26
+
27
+ - name: Set up Python
28
+ uses: actions/setup-python@v5
29
+ with:
30
+ python-version: ${{ matrix.python-version}}
31
+ - name: Install GDAL
32
+ run: |
33
+ brew install gdal
34
+ - name: Test GDAL installation
35
+ run: |
36
+ gdalinfo --version
37
+ - name: Install dependencies
38
+ run: |
39
+ python -m pip install --upgrade pip
40
+ pip install --no-cache-dir Cython
41
+ pip install -r requirements.txt
42
+ pip install .
@@ -0,0 +1,30 @@
1
+ # This workflows will upload a Python Package using Twine when a release is created
2
+ # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
3
+
4
+ name: pypi
5
+
6
+ on:
7
+ release:
8
+ types: [created]
9
+
10
+ jobs:
11
+ deploy:
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v5
18
+ with:
19
+ python-version: "3.x"
20
+ - name: Install dependencies
21
+ run: |
22
+ python -m pip install --upgrade pip
23
+ pip install setuptools wheel twine build
24
+ - name: Build and publish
25
+ env:
26
+ TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
27
+ TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
28
+ run: |
29
+ python -m build
30
+ twine upload dist/*
@@ -0,0 +1,44 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+ name: Linux build
12
+ jobs:
13
+ py-check:
14
+ runs-on: ${{ matrix.config.os }}
15
+ name: ${{ matrix.config.os }} (${{ matrix.config.py }})
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ config:
20
+ - { os: ubuntu-latest, py: "3.10" }
21
+ steps:
22
+ - name: Checkout Code
23
+ uses: actions/checkout@v4
24
+ - name: Setup Python
25
+ uses: actions/setup-python@v5
26
+ with:
27
+ python-version: ${{ matrix.config.py }}
28
+ - name: Install GDAL
29
+ run: |
30
+ python -m pip install --upgrade pip
31
+ pip install --no-cache-dir Cython
32
+ pip install --find-links=https://girder.github.io/large_image_wheels --no-cache GDAL
33
+ - name: Test GDAL installation
34
+ run: |
35
+ python -c "from osgeo import gdal"
36
+ gdalinfo --version
37
+ - name: Install dependencies
38
+ run: |
39
+ pip install --user -r requirements.txt
40
+ pip install .
41
+ - name: PKG-TEST
42
+ run: |
43
+ python -m unittest discover tests/
44
+
@@ -0,0 +1,34 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+ name: Windows build
12
+ jobs:
13
+ test-windows:
14
+ runs-on: windows-latest
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+ - name: Install miniconda
18
+ uses: conda-incubator/setup-miniconda@v2
19
+ with:
20
+ auto-activate-base: true
21
+ python-version: "3.10"
22
+
23
+ - name: Install GDAL
24
+ run: conda install -c conda-forge gdal --yes
25
+ - name: Test GDAL installation
26
+ run: |
27
+ python -c "from osgeo import gdal"
28
+ gdalinfo --version
29
+ - name: Install dependencies
30
+ run: |
31
+ python -m pip install --upgrade pip
32
+ pip install --no-cache-dir Cython
33
+ pip install -r requirements.txt
34
+ pip install .
@@ -0,0 +1,132 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ private/
4
+ *.py[cod]
5
+ *$py.class
6
+
7
+ # C extensions
8
+ *.so
9
+
10
+ # Distribution / packaging
11
+ .Python
12
+ env/
13
+ build/
14
+ develop-eggs/
15
+ dist/
16
+ downloads/
17
+ private/
18
+ eggs/
19
+ .eggs/
20
+ lib/
21
+ lib64/
22
+ parts/
23
+ sdist/
24
+ var/
25
+ wheels/
26
+ *.egg-info/
27
+ .installed.cfg
28
+ *.egg
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .coverage
44
+ .coverage.*
45
+ .cache
46
+ nosetests.xml
47
+ coverage.xml
48
+ *.cover
49
+ .hypothesis/
50
+ .pytest_cache/
51
+
52
+ # Translations
53
+ *.mo
54
+ *.pot
55
+
56
+ # Django stuff:
57
+ *.log
58
+ local_settings.py
59
+
60
+ # Flask stuff:
61
+ instance/
62
+ .webassets-cache
63
+
64
+ # Scrapy stuff:
65
+ .scrapy
66
+
67
+ # Sphinx documentation
68
+ docs/_build/
69
+
70
+ # PyBuilder
71
+ target/
72
+
73
+ # Jupyter Notebook
74
+ .ipynb_checkpoints
75
+
76
+ # pyenv
77
+ .python-version
78
+
79
+ # celery beat schedule file
80
+ celerybeat-schedule
81
+
82
+ # SageMath parsed files
83
+ *.sage.py
84
+
85
+ # dotenv
86
+ .env
87
+
88
+ # virtualenv
89
+ .venv
90
+ venv/
91
+ ENV/
92
+
93
+ # Spyder project settings
94
+ .spyderproject
95
+ .spyproject
96
+
97
+ # Rope project settings
98
+ .ropeproject
99
+
100
+ # mkdocs documentation
101
+ /site
102
+
103
+ # mypy
104
+ .mypy_cache/
105
+
106
+ # IDE settings
107
+ .vscode/
108
+
109
+ # Visual Studio Code
110
+ *egg-info
111
+ *.vscode
112
+ launch.json
113
+
114
+ # PyCharm
115
+ *.idea
116
+
117
+ # Models
118
+ *.hd
119
+ *.hdf5
120
+ *.pt
121
+ *.pth
122
+ *.torchscript
123
+ *.bin
124
+ *.engine
125
+ *.onnx
126
+ *__pycache__/
127
+ *.amltmp
128
+ *.amlignore
129
+ *.ipynb_aml_checkpoints
130
+
131
+ # Local
132
+ data/
@@ -0,0 +1,5 @@
1
+ Software code created by U.S. Government employees is not subject to copyright in the United States (17 U.S.C. §105).
2
+ The United States/Department of Commerce reserve all rights to seek and obtain copyright protection in countries
3
+ other than the United States for Software authored in its entirety by the Department of Commerce. To this end, the
4
+ Department of Commerce hereby grants to Recipient a royalty-free, nonexclusive license to use, copy, and create
5
+ derivative works of the Software outside of the United States.
@@ -0,0 +1,7 @@
1
+ include LICENSE
2
+ include README.md
3
+ include requirements.txt
4
+
5
+ recursive-exclude * __pycache__
6
+ recursive-exclude * *.py[co]
7
+