geoai-py 0.23.0__tar.gz → 0.25.0__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 (85) hide show
  1. {geoai_py-0.23.0 → geoai_py-0.25.0}/PKG-INFO +3 -2
  2. {geoai_py-0.23.0 → geoai_py-0.25.0}/README.md +2 -1
  3. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/__init__.py +5 -1
  4. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/moondream.py +748 -0
  5. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/utils.py +1877 -327
  6. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai_py.egg-info/PKG-INFO +3 -2
  7. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai_py.egg-info/SOURCES.txt +2 -0
  8. {geoai_py-0.23.0 → geoai_py-0.25.0}/mkdocs.yml +1 -0
  9. {geoai_py-0.23.0 → geoai_py-0.25.0}/pyproject.toml +2 -2
  10. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/README.md +123 -181
  11. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/dialogs/samgeo.py +292 -5
  12. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/metadata.txt +3 -3
  13. geoai_py-0.25.0/qgis_plugin/package_plugin.py +296 -0
  14. geoai_py-0.25.0/tests/test_moondream.py +199 -0
  15. {geoai_py-0.23.0 → geoai_py-0.25.0}/.dockerignore +0 -0
  16. {geoai_py-0.23.0 → geoai_py-0.25.0}/.editorconfig +0 -0
  17. {geoai_py-0.23.0 → geoai_py-0.25.0}/.gitignore +0 -0
  18. {geoai_py-0.23.0 → geoai_py-0.25.0}/.pre-commit-config.yaml +0 -0
  19. {geoai_py-0.23.0 → geoai_py-0.25.0}/CITATION.cff +0 -0
  20. {geoai_py-0.23.0 → geoai_py-0.25.0}/Dockerfile +0 -0
  21. {geoai_py-0.23.0 → geoai_py-0.25.0}/LICENSE +0 -0
  22. {geoai_py-0.23.0 → geoai_py-0.25.0}/MANIFEST.in +0 -0
  23. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/__init__.py +0 -0
  24. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/catalog_models.py +0 -0
  25. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/catalog_tools.py +0 -0
  26. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/geo_agents.py +0 -0
  27. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/map_tools.py +0 -0
  28. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/stac_models.py +0 -0
  29. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/agents/stac_tools.py +0 -0
  30. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/auto.py +0 -0
  31. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/change_detection.py +0 -0
  32. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/classify.py +0 -0
  33. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/detectron2.py +0 -0
  34. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/dinov3.py +0 -0
  35. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/download.py +0 -0
  36. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/extract.py +0 -0
  37. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/geoai.py +0 -0
  38. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/hf.py +0 -0
  39. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/landcover_train.py +0 -0
  40. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/landcover_utils.py +0 -0
  41. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/map_widgets.py +0 -0
  42. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/sam.py +0 -0
  43. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/segment.py +0 -0
  44. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/segmentation.py +0 -0
  45. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/timm_segment.py +0 -0
  46. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/timm_train.py +0 -0
  47. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/tools/__init__.py +0 -0
  48. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/tools/cloudmask.py +0 -0
  49. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/tools/multiclean.py +0 -0
  50. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/tools/sr.py +0 -0
  51. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai/train.py +0 -0
  52. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai_py.egg-info/dependency_links.txt +0 -0
  53. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai_py.egg-info/entry_points.txt +0 -0
  54. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai_py.egg-info/requires.txt +0 -0
  55. {geoai_py-0.23.0 → geoai_py-0.25.0}/geoai_py.egg-info/top_level.txt +0 -0
  56. {geoai_py-0.23.0 → geoai_py-0.25.0}/pytest.ini +0 -0
  57. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/LICENSE +0 -0
  58. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/__init__.py +0 -0
  59. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/_geoai_lib.py +0 -0
  60. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/dialogs/__init__.py +0 -0
  61. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/dialogs/map_tools.py +0 -0
  62. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/dialogs/moondream.py +0 -0
  63. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/dialogs/segmentation.py +0 -0
  64. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/dialogs/update_checker.py +0 -0
  65. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/geoai_plugin.py +0 -0
  66. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/icons/about.svg +0 -0
  67. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/icons/gpu.svg +0 -0
  68. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/icons/icon.png +0 -0
  69. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/icons/moondream.svg +0 -0
  70. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/icons/samgeo.png +0 -0
  71. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/geoai_plugin/icons/segment.svg +0 -0
  72. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/install.py +0 -0
  73. {geoai_py-0.23.0 → geoai_py-0.25.0}/qgis_plugin/install.sh +0 -0
  74. {geoai_py-0.23.0 → geoai_py-0.25.0}/requirements.txt +0 -0
  75. {geoai_py-0.23.0 → geoai_py-0.25.0}/requirements_docs.txt +0 -0
  76. {geoai_py-0.23.0 → geoai_py-0.25.0}/setup.cfg +0 -0
  77. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/__init__.py +0 -0
  78. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/create_test_data.py +0 -0
  79. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_classify.py +0 -0
  80. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_download.py +0 -0
  81. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_extract.py +0 -0
  82. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_fixtures.py +0 -0
  83. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_geoai.py +0 -0
  84. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_segment.py +0 -0
  85. {geoai_py-0.23.0 → geoai_py-0.25.0}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: geoai-py
3
- Version: 0.23.0
3
+ Version: 0.25.0
4
4
  Summary: A Python package for using Artificial Intelligence (AI) with geospatial data
5
5
  Author-email: Qiusheng Wu <giswqs@gmail.com>
6
6
  License: MIT License
@@ -89,6 +89,7 @@ The package provides five core capabilities:
89
89
  3. Model training for tasks such as classification, detection, and segmentation.
90
90
  4. Inference pipelines for applying models to new geospatial datasets.
91
91
  5. Interactive visualization through integration with [Leafmap](https://github.com/opengeos/leafmap/) and [MapLibre](https://github.com/eoda-dev/py-maplibregl).
92
+ 6. Seamless QGIS integration via a dedicated GeoAI plugin, enabling users to run AI-powered geospatial workflows directly within the QGIS desktop environment, without writing code.
92
93
 
93
94
  GeoAI addresses the growing demand for accessible AI tools in geospatial research by providing high-level APIs that abstract complex machine learning workflows while maintaining flexibility for advanced users. The package supports multiple data formats (GeoTIFF, JPEG2000,GeoJSON, Shapefile, GeoPackage) and includes automatic device management for GPU acceleration when available. With over 10 modules and extensive notebook examples, GeoAI serves as both a research tool and educational resource for the geospatial AI community.
94
95
 
@@ -96,7 +97,7 @@ GeoAI addresses the growing demand for accessible AI tools in geospatial researc
96
97
 
97
98
  The integration of artificial intelligence with geospatial data analysis has become increasingly critical across numerous scientific disciplines, from environmental monitoring and urban planning to disaster response and climate research. However, applying AI techniques to geospatial data presents unique challenges including data preprocessing complexities, specialized model architectures, and the need for domain-specific knowledge in both machine learning and geographic information systems.
98
99
 
99
- Existing solutions often require researchers to navigate fragmented ecosystems of tools, combining general-purpose machine learning libraries with specialized geospatial packages, leading to steep learning curves and reproducibility challenges. While packages like TorchGeo and TerraTorch provide excellent foundational tools for geospatial deep learning, there remains a gap for comprehensive, high-level interfaces that can democratize access to advanced AI techniques for the broader geospatial community.
100
+ Existing solutions often require researchers to navigate fragmented ecosystems of tools, combining general-purpose machine learning libraries with specialized geospatial packages, leading to steep learning curves and reproducibility challenges. While packages like [TorchGeo](https://github.com/torchgeo/torchgeo), [TerraTorch](https://github.com/terrastackai/terratorch), and [SRAI](https://github.com/kraina-ai/srai) provide excellent foundational tools for geospatial deep learning, there remains a gap for comprehensive, high-level interfaces that can democratize access to advanced AI techniques for the broader geospatial community.
100
101
 
101
102
  GeoAI addresses this need by providing a unified, user-friendly interface that abstracts the complexity of integrating multiple AI frameworks with geospatial data processing workflows. It lowers barriers for: (1) geospatial researchers who need accessible AI workflows without deep ML expertise; (2) AI practitioners who want streamlined geospatial preprocessing and domain-specific datasets; and (3) educators seeking reproducible examples and teaching-ready workflows.
102
103
 
@@ -24,6 +24,7 @@ The package provides five core capabilities:
24
24
  3. Model training for tasks such as classification, detection, and segmentation.
25
25
  4. Inference pipelines for applying models to new geospatial datasets.
26
26
  5. Interactive visualization through integration with [Leafmap](https://github.com/opengeos/leafmap/) and [MapLibre](https://github.com/eoda-dev/py-maplibregl).
27
+ 6. Seamless QGIS integration via a dedicated GeoAI plugin, enabling users to run AI-powered geospatial workflows directly within the QGIS desktop environment, without writing code.
27
28
 
28
29
  GeoAI addresses the growing demand for accessible AI tools in geospatial research by providing high-level APIs that abstract complex machine learning workflows while maintaining flexibility for advanced users. The package supports multiple data formats (GeoTIFF, JPEG2000,GeoJSON, Shapefile, GeoPackage) and includes automatic device management for GPU acceleration when available. With over 10 modules and extensive notebook examples, GeoAI serves as both a research tool and educational resource for the geospatial AI community.
29
30
 
@@ -31,7 +32,7 @@ GeoAI addresses the growing demand for accessible AI tools in geospatial researc
31
32
 
32
33
  The integration of artificial intelligence with geospatial data analysis has become increasingly critical across numerous scientific disciplines, from environmental monitoring and urban planning to disaster response and climate research. However, applying AI techniques to geospatial data presents unique challenges including data preprocessing complexities, specialized model architectures, and the need for domain-specific knowledge in both machine learning and geographic information systems.
33
34
 
34
- Existing solutions often require researchers to navigate fragmented ecosystems of tools, combining general-purpose machine learning libraries with specialized geospatial packages, leading to steep learning curves and reproducibility challenges. While packages like TorchGeo and TerraTorch provide excellent foundational tools for geospatial deep learning, there remains a gap for comprehensive, high-level interfaces that can democratize access to advanced AI techniques for the broader geospatial community.
35
+ Existing solutions often require researchers to navigate fragmented ecosystems of tools, combining general-purpose machine learning libraries with specialized geospatial packages, leading to steep learning curves and reproducibility challenges. While packages like [TorchGeo](https://github.com/torchgeo/torchgeo), [TerraTorch](https://github.com/terrastackai/terratorch), and [SRAI](https://github.com/kraina-ai/srai) provide excellent foundational tools for geospatial deep learning, there remains a gap for comprehensive, high-level interfaces that can democratize access to advanced AI techniques for the broader geospatial community.
35
36
 
36
37
  GeoAI addresses this need by providing a unified, user-friendly interface that abstracts the complexity of integrating multiple AI frameworks with geospatial data processing workflows. It lowers barriers for: (1) geospatial researchers who need accessible AI workflows without deep ML expertise; (2) AI practitioners who want streamlined geospatial preprocessing and domain-specific datasets; and (3) educators seeking reproducible examples and teaching-ready workflows.
37
38
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  __author__ = """Qiusheng Wu"""
4
4
  __email__ = "giswqs@gmail.com"
5
- __version__ = "0.23.0"
5
+ __version__ = "0.25.0"
6
6
 
7
7
 
8
8
  import os
@@ -153,6 +153,10 @@ try:
153
153
  moondream_query,
154
154
  moondream_detect,
155
155
  moondream_point,
156
+ moondream_caption_sliding_window,
157
+ moondream_query_sliding_window,
158
+ moondream_detect_sliding_window,
159
+ moondream_point_sliding_window,
156
160
  )
157
161
  from .map_widgets import moondream_gui
158
162
  except ImportError: