JettChenT/earthkit
GitHub: JettChenT/earthkit
一款集成多种前沿 AI 模型的地理定位工具包,支持图像地理推测、OSM 自然语言查询和跨视角地理匹配。
Stars: 75 | Forks: 11
# EarthKit
一个精巧的地理定位工具包
## 主要功能
- **Sift**:用于浏览坐标详情并通过 AI 增强其元数据的界面(包括 GeoCLIP 等 ML 模型、视觉位置识别,以及 gpt-4o 等视觉语言模型)。设计灵感来源于 [Elicit](https://elicit.com/)。
- **Overpass Query**:通过自然语言查询 [Overpass Turbo](https://overpass-turbo.eu) 的界面,并提供 OSM 特性和位置建议。我们使用 RAG + 上下文学习来生成更好的查询,遵循与 [Overpass NL](https://arxiv.org/pdf/2308.16060) 类似的方法。灵感来源于 [Bellingcat OSM Search](https://osm-search.bellingcat.com/) 和 [Cursor](https://www.cursor.com/)。
- **Geo Estimation**:在用户提供的图像上运行 [geoestimation](https://paperswithcode.com/task/photo-geolocation-estimation) 领域的 SOTA 模型:[GeoClip](https://github.com/VicenteVivan/geo-clip),并渲染预测结果的热力图。
- **Satellite & Streetview Geolocation**:(实验性功能,因为 Modal 上的冷启动时间太慢)将用户目标图像与卫星或街景图像进行匹配以确定它们的相似程度。使用 [EigenPlaces](https://github.com/gmberton/EigenPlaces) 进行街景地理定位(地面级别),使用 [Sample4Geo](https://github.com/Skyy93/Sample4Geo) 进行卫星地理定位(跨视图)。
## 通用架构选择
- Frontend:Next.JS + Vercel
- Database:Redis(将来会考虑使用 postgres 进行数据存储)
- Backend + AI/ML Endpoints:Modal
- Authentication:Clerk
## 代码库结构
- `client/`:我们前端的 NextJS 代码库
- `ml/`:基于 Modal 和 FastAPI 的后端 + AI/ML 端点代码库。使用 [rye](https://rye-up.com/) 进行包管理。
## 自托管
Earthkit 将支持自托管。目前我仍在记录自托管流程的文档。
标签:Apex, AV绕过, DLL 劫持, ESC4, FastAPI, GeoCLIP, GEOINT, Modal, OpenStreetMap, OSINT, OSM, Overpass, Python, RAG, VLM, 二进制发布, 人工智能, 代码示例, 元数据增强, 全栈, 卫星地图, 图像识别, 地理定位, 地理空间情报, 坐标查询, 大语言模型, 工具箱, 开源工具, 搜索引擎查询, 数据分析, 无后门, 机器学习, 检索增强生成, 深度学习, 照片定位, 用户模式Hook绕过, 街景, 视觉定位, 计算机视觉, 逆向工具