giga-spatial 0.6.0__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 (47) hide show
  1. giga_spatial-0.6.0.dist-info/METADATA +141 -0
  2. giga_spatial-0.6.0.dist-info/RECORD +47 -0
  3. giga_spatial-0.6.0.dist-info/WHEEL +5 -0
  4. giga_spatial-0.6.0.dist-info/licenses/LICENSE +661 -0
  5. giga_spatial-0.6.0.dist-info/top_level.txt +1 -0
  6. gigaspatial/__init__.py +1 -0
  7. gigaspatial/config.py +226 -0
  8. gigaspatial/core/__init__.py +0 -0
  9. gigaspatial/core/io/__init__.py +5 -0
  10. gigaspatial/core/io/adls_data_store.py +325 -0
  11. gigaspatial/core/io/data_api.py +113 -0
  12. gigaspatial/core/io/data_store.py +147 -0
  13. gigaspatial/core/io/local_data_store.py +92 -0
  14. gigaspatial/core/io/readers.py +265 -0
  15. gigaspatial/core/io/writers.py +128 -0
  16. gigaspatial/core/schemas/__init__.py +0 -0
  17. gigaspatial/core/schemas/entity.py +244 -0
  18. gigaspatial/generators/__init__.py +2 -0
  19. gigaspatial/generators/poi.py +636 -0
  20. gigaspatial/generators/zonal/__init__.py +3 -0
  21. gigaspatial/generators/zonal/base.py +370 -0
  22. gigaspatial/generators/zonal/geometry.py +439 -0
  23. gigaspatial/generators/zonal/mercator.py +78 -0
  24. gigaspatial/grid/__init__.py +1 -0
  25. gigaspatial/grid/mercator_tiles.py +286 -0
  26. gigaspatial/handlers/__init__.py +40 -0
  27. gigaspatial/handlers/base.py +761 -0
  28. gigaspatial/handlers/boundaries.py +305 -0
  29. gigaspatial/handlers/ghsl.py +772 -0
  30. gigaspatial/handlers/giga.py +145 -0
  31. gigaspatial/handlers/google_open_buildings.py +472 -0
  32. gigaspatial/handlers/hdx.py +241 -0
  33. gigaspatial/handlers/mapbox_image.py +208 -0
  34. gigaspatial/handlers/maxar_image.py +291 -0
  35. gigaspatial/handlers/microsoft_global_buildings.py +548 -0
  36. gigaspatial/handlers/ookla_speedtest.py +199 -0
  37. gigaspatial/handlers/opencellid.py +290 -0
  38. gigaspatial/handlers/osm.py +356 -0
  39. gigaspatial/handlers/overture.py +126 -0
  40. gigaspatial/handlers/rwi.py +157 -0
  41. gigaspatial/handlers/unicef_georepo.py +806 -0
  42. gigaspatial/handlers/worldpop.py +266 -0
  43. gigaspatial/processing/__init__.py +4 -0
  44. gigaspatial/processing/geo.py +1054 -0
  45. gigaspatial/processing/sat_images.py +39 -0
  46. gigaspatial/processing/tif_processor.py +477 -0
  47. gigaspatial/processing/utils.py +49 -0
@@ -0,0 +1,141 @@
1
+ Metadata-Version: 2.4
2
+ Name: giga-spatial
3
+ Version: 0.6.0
4
+ Summary: A package for spatial data download & processing
5
+ Home-page: https://github.com/unicef/giga-spatial
6
+ Author: Utku Can Ozturk
7
+ Author-email: utkucanozturk@gmail.com
8
+ License: AGPL-3.0-or-later
9
+ Keywords: gigaspatial,spatial,geospatial,gis,remote sensing,data processing,download,openstreetmap,osm,ghsl,grid,point of interest,POI,raster,vector,school connectivity,unicef,giga,mapping,analysis,python
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: License :: OSI Approved :: GNU Affero General Public License v3
12
+ Classifier: Operating System :: OS Independent
13
+ Requires-Python: >=3.10
14
+ Description-Content-Type: text/markdown
15
+ License-File: LICENSE
16
+ Requires-Dist: azure-storage-blob>=12.22.0
17
+ Requires-Dist: delta_sharing==1.2.0
18
+ Requires-Dist: duckdb==1.2.0
19
+ Requires-Dist: geopandas>=1.0.1
20
+ Requires-Dist: mercantile==1.2.1
21
+ Requires-Dist: numpy>=2.2.2
22
+ Requires-Dist: pandas>=2.2.3
23
+ Requires-Dist: pycountry==24.6.1
24
+ Requires-Dist: pydantic>=2.10.6
25
+ Requires-Dist: rasterio==1.3.10
26
+ Requires-Dist: Requests==2.32.3
27
+ Requires-Dist: scipy==1.15.1
28
+ Requires-Dist: Shapely>=2.0.7
29
+ Requires-Dist: tqdm==4.65.0
30
+ Requires-Dist: OWSLib==0.32.1
31
+ Requires-Dist: pydantic-settings>=2.7.1
32
+ Requires-Dist: hdx-python-api>=6.3.8
33
+ Requires-Dist: bs4==0.0.2
34
+ Dynamic: author
35
+ Dynamic: author-email
36
+ Dynamic: classifier
37
+ Dynamic: description
38
+ Dynamic: description-content-type
39
+ Dynamic: home-page
40
+ Dynamic: keywords
41
+ Dynamic: license
42
+ Dynamic: license-file
43
+ Dynamic: requires-dist
44
+ Dynamic: requires-python
45
+ Dynamic: summary
46
+
47
+ <div style="padding-left: 20px; padding-right: 10px;">
48
+ <a href="https://giga.global/">
49
+ <img src="https://s41713.pcdn.co/wp-content/uploads/2018/11/2020.05_GIGA-visual-identity-guidelines_v1-25.png" alt="Giga logo" title="Giga" align="right" height="60" style="padding-top: 10px;"/>
50
+ </a>
51
+
52
+ # GigaSpatial
53
+
54
+ # ![GigaSpatial logo](https://github.com/unicef/giga-spatial/blob/main/docs/assets/logo.png)
55
+ Giga is a UNICEF-ITU initiative to connect every school to the Internet and every young person to information, opportunity and choice.
56
+ Giga maps schools’ Internet access in real time, creates models for innovative financing, and supports governments contracting for connectivity.
57
+
58
+ ---
59
+
60
+ ## About GigaSpatial
61
+
62
+ **GigaSpatial** is a Python package developed as part of the Giga Applied Science Team to handle geospatial data efficiently. It provides tools for downloading, processing, and analyzing geospatial data, enabling users to work with datasets such as OpenStreetMap (OSM) and the Global Human Settlement Layer (GHSL). The package is designed to support Giga's mission by providing robust geospatial capabilities for mapping and analyzing school connectivity.
63
+
64
+ ### Key Features
65
+ - **Data Downloading**: Download geospatial data from various sources.
66
+ - **Data Processing**: Process and transform geospatial data, such as GeoTIFF files and vector data.
67
+ - **View Generators**: Enrich the spatial context and map data into grid or POI (Point of Interest) locations.
68
+ - **Grid System**: Create and manipulate grid-based geospatial data for analysis and modeling.
69
+ - **Data Storage**: Store and retrieve geospatial data in various formats.
70
+ - **Configuration Management**: Easily configure paths, API keys, and other settings using environment variables or manual setup.
71
+
72
+ ---
73
+
74
+ ## Supported Datasets
75
+
76
+ The `gigaspatial` package supports data from the following providers:
77
+
78
+ <div align="center">
79
+ <img src="https://github.com/unicef/giga-spatial/blob/main/docs/assets/datasets.png" alt="Dataset Providers" style="width: 70%; height: auto;"/>
80
+ </div>
81
+
82
+ ---
83
+
84
+ ### View Generators
85
+
86
+ The **view generators** in GigaSpatial are designed to enrich the spatial context of school locations and map data into grid or POI locations. This enables users to analyze and visualize geospatial data in meaningful ways.
87
+
88
+ ### Key Capabilities
89
+ 1. **Spatial Context Enrichment**:
90
+ - Automatic attribution of geospatial variables to school locations.
91
+ - Contextual layers for environmental, infrastructural, and socioeconomic factors.
92
+ - Multi-resolution data availability for different analytical needs.
93
+
94
+ 2. **Mapping to Grid or POI Locations**:
95
+ - Map geospatial data to grid cells for scalable analysis.
96
+ - Map data to POI locations for detailed, location-specific insights.
97
+
98
+ ---
99
+
100
+ ## Why Use GigaSpatial?
101
+ - **Efficient Geospatial Handling**: Streamline the process of downloading, processing, and analyzing geospatial data.
102
+ - **Scalable Analysis**: Map data to grid cells or POI locations for both scalable and detailed insights.
103
+ - **Open Source**: Contribute to and benefit from a collaborative, transparent, and innovative geospatial toolset.
104
+
105
+ ## Why Open Source?
106
+
107
+ At Giga, we believe in the power of open-source technologies to accelerate progress and innovation. By keeping our tools and systems open, we:
108
+ - Encourage collaboration and contributions from a global community.
109
+ - Ensure transparency and trust in our methodologies.
110
+ - Empower others to adopt, adapt, and extend our tools to meet their needs.
111
+
112
+ ## How to Contribute
113
+
114
+ We welcome contributions to our repositories! Whether it's fixing a bug, adding a feature, or improving documentation, your input helps us move closer to our goal of universal school connectivity.
115
+
116
+ ### Steps to Contribute
117
+ 1. Fork the repository you'd like to contribute to.
118
+ 2. Create a new branch for your changes.
119
+ 3. Submit a pull request with a clear explanation of your contribution.
120
+
121
+ To go through the contribtution guidelines in detail you can visit the following link.
122
+
123
+ [Click here for the detailed Contribution guidelines](https://github.com/unicef/giga-spatial/blob/main/CONTRIBUTING.md)
124
+
125
+ ---
126
+
127
+ ## Code of Conduct
128
+
129
+ At Giga, we're committed to maintaining an environment that's respectful, inclusive, and harassment-free for everyone involved in our project and community. We welcome contributors and participants from diverse backgrounds and pledge to uphold the standards.
130
+
131
+ [Click here for the detailed Code of Conduct.](https://github.com/unicef/giga-spatial/blob/main/CODE_OF_CONDUCT.md)
132
+
133
+ ---
134
+
135
+ ## Stay Connected
136
+
137
+ To learn more about Giga and our mission, visit our official website: [Giga.Global](https://giga.global)
138
+
139
+ ## Join Us
140
+
141
+ Join us in creating an open-source future for education! 🌍
@@ -0,0 +1,47 @@
1
+ giga_spatial-0.6.0.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
2
+ gigaspatial/__init__.py,sha256=cID1jLnC_vj48GgMN6Yb1FA3JsQ95zNmCHmRYE8TFhY,22
3
+ gigaspatial/config.py,sha256=UC8vjlVUaVaCz_fSu0l3_4O6SOllnkapcpayFvE3TYs,7969
4
+ gigaspatial/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
+ gigaspatial/core/io/__init__.py,sha256=y4QNWx6US1-adTuAO_NZwLmjzSQj25HNDL5hUGvEHZc,263
6
+ gigaspatial/core/io/adls_data_store.py,sha256=Zv-D_8d_2h57HnCUTJb0JWWjXqR_0XH4F8Nu_UFZK9E,11975
7
+ gigaspatial/core/io/data_api.py,sha256=3HMstau3zH3JPRUW0t83DZt74N39bt-jsfAyrUUFMoc,3944
8
+ gigaspatial/core/io/data_store.py,sha256=mi8fy78Dtwj4dpKkyDM6kTlna1lfCQ5ro2hUAOFr83A,3223
9
+ gigaspatial/core/io/local_data_store.py,sha256=hcu7DNYa3AL6sEPMqguzxWal_bnP7CIpbwpoiyf5TCw,2933
10
+ gigaspatial/core/io/readers.py,sha256=gqFKGRCsAP_EBXipqGtT8MEV-x0u6SrCqaSiOC5YPTA,9284
11
+ gigaspatial/core/io/writers.py,sha256=asb56ZHQEWO2rdilIq7QywDRk8yfebecWv1KwzUpaXI,4367
12
+ gigaspatial/core/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ gigaspatial/core/schemas/entity.py,sha256=QAhEW0-JgdWh9pjKGbB5ArvqtVK85ayYZJPgjdb-IKw,8590
14
+ gigaspatial/generators/__init__.py,sha256=dGxmWHwkvjYopdlE9d4tEaQtn4uh391zZ7NhOG5OVTk,153
15
+ gigaspatial/generators/poi.py,sha256=meP_bnGnKout8ik1G2XSCyKM0RhegCZg-5woVXLqIog,26509
16
+ gigaspatial/generators/zonal/__init__.py,sha256=6bDVRRxim5qpdTE_b2dLeWmrTrDSZBnM7gn5MztCbGk,233
17
+ gigaspatial/generators/zonal/base.py,sha256=up3k5ApPn9387DRu34VIJqA1_6lWdi5UpGVjcQQIDsE,15346
18
+ gigaspatial/generators/zonal/geometry.py,sha256=XPcX5lT7X7Z1vn72sN-VKLb2hDP9F_w3LwdRNecmJn0,18339
19
+ gigaspatial/generators/zonal/mercator.py,sha256=R_KlaqF4lnc0cRqVfcNVO8i0Re21_6w7pnclVKSohcY,3125
20
+ gigaspatial/grid/__init__.py,sha256=H8SnNAMDafJXJ9bUp2zU0Z3t6s8niqY5rGP5nFhnbLA,45
21
+ gigaspatial/grid/mercator_tiles.py,sha256=Z_3M4sy1tyxywAo2wmBb6niBP3x-IWgwMkmUp8LOSDg,10492
22
+ gigaspatial/handlers/__init__.py,sha256=gh6LIzqr2fASX4fEzQ20v1j_IhnYpym-lcgOkAGHrdE,1430
23
+ gigaspatial/handlers/base.py,sha256=rL94c3wDjsqzLp4na8FfYXW6tNjVGX6v4M-Ce4LrAro,26413
24
+ gigaspatial/handlers/boundaries.py,sha256=184Ytmf3eBWR-BKcuAUDSg8MJSrcPw0L17qLIkUwxHI,11071
25
+ gigaspatial/handlers/ghsl.py,sha256=EgFbrqh9Sb86dx4LlOXU804zi-yRCUqqSZWmmvxkRuU,27747
26
+ gigaspatial/handlers/giga.py,sha256=2aP1EenDAQXn-h-uCyuVxEVZvAFEvrL17_z0MiS8FDs,4867
27
+ gigaspatial/handlers/google_open_buildings.py,sha256=Liqk7qJhDtB4Ia4uhBe44LFcf-XVKBjRfj-pWlE5erY,16594
28
+ gigaspatial/handlers/hdx.py,sha256=8VAEHfO8UgvEx6_Xdx0_vNsPqO18z5Iiq6TjuEbg05k,8789
29
+ gigaspatial/handlers/mapbox_image.py,sha256=M_nkJ_b1PD8FG1ajVgSycCb0NRTAI_SLpHdzszNetKA,7786
30
+ gigaspatial/handlers/maxar_image.py,sha256=g5YVGV-8JjeG9bGBOp7ZfKani22J4izXX4hnB9A99Jk,10272
31
+ gigaspatial/handlers/microsoft_global_buildings.py,sha256=bQ5WHIv3v0wWrZZUbZkKPRjgdlqIxlK7CV_0zSvdrTw,20292
32
+ gigaspatial/handlers/ookla_speedtest.py,sha256=EcvSAxJZ9GPfzYnT_C85Qgy2ecc9ndf70Pklk53OdC8,6506
33
+ gigaspatial/handlers/opencellid.py,sha256=KuJqd-5-RO5ZzyDaBSrTgCK2ib5N_m3RUcPlX5heWwI,10683
34
+ gigaspatial/handlers/osm.py,sha256=sLNMkOVh1v50jrWw7Z0-HILY5QTQjgKCHCeAfXj5jA8,14084
35
+ gigaspatial/handlers/overture.py,sha256=lKeNw00v5Qia7LdWORuYihnlKEqxE9m38tdeRrvag9k,4218
36
+ gigaspatial/handlers/rwi.py,sha256=g37bUd4Y02r8m53ZkjASCscg0mejMH5820HAh8PQZqQ,6032
37
+ gigaspatial/handlers/unicef_georepo.py,sha256=ODYNvkU_UKgOHXT--0MqmJ4Uk6U1_mp9xgehbTzKpX8,31924
38
+ gigaspatial/handlers/worldpop.py,sha256=oJ39NGajXi0rn829ZoFiaeG4_wavyPvljdActpxs12I,9850
39
+ gigaspatial/processing/__init__.py,sha256=QDVL-QbLCrIb19lrajP7LrHNdGdnsLeGcvAs_jQpdRM,183
40
+ gigaspatial/processing/geo.py,sha256=D-S3IlhQwLIxrCcxy6NhNmKLrOIjoRHfK_eZJGKpe2U,36947
41
+ gigaspatial/processing/sat_images.py,sha256=YUbH5MFNzl6NX49Obk14WaFcr1s3SyGJIOk-kRpbBNg,1429
42
+ gigaspatial/processing/tif_processor.py,sha256=4qCNx6ODtVsYm6lbSToIdUCrduIrPsWFBAABTQ2Vs24,17259
43
+ gigaspatial/processing/utils.py,sha256=HC85vGKQakxlkoQAkZmeAXWHsenAwTIRn7jPKUA7x20,1500
44
+ giga_spatial-0.6.0.dist-info/METADATA,sha256=aiay3xH1NKvaG4NlKw_IYoES1jNnNZk1P_5mxXjr2uY,6297
45
+ giga_spatial-0.6.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
46
+ giga_spatial-0.6.0.dist-info/top_level.txt,sha256=LZsccgw6H4zXT7m6Y4XChm-Y5LjHAwZ2hkGN_B3ExmI,12
47
+ giga_spatial-0.6.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.9.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+