hsldevcom/jore4-map-matchingjore4-map-matching是一个基于Docker容器化的地图匹配服务,旨在将原始GPS轨迹数据或位置序列精确匹配到道路网络,解决轨迹漂移、数据噪声等问题,为交通数据分析和智能交通系统提供高质量的基础数据处理能力。该服务与HSLdevcom的Jore4交通管理系统深度集成,支持多种数据格式和自定义匹配参数。
bashdocker run -d \ --name jore4-map-matching \ -p 8080:8080 \ -e SPRING_PROFILES_ACTIVE=prod \ -e ROAD_NETWORK_DB_URL=jdbc:postgresql://db-host:5432/jore4_roads \ -e ROAD_NETWORK_DB_USER=dbuser \ -e ROAD_NETWORK_DB_PASSWORD=dbpass \ hsldevcom/jore4-map-matching:latest
yamlversion: '3.8' services: map-matching: image: hsldevcom/jore4-map-matching:latest container_name: jore4-map-matching ports: - "8080:8080" environment: - SPRING_PROFILES_ACTIVE=prod - LOG_LEVEL=INFO - MATCHING_PRECISION=medium - ROAD_NETWORK_DB_URL=jdbc:postgresql://road-db:5432/jore4_roads - ROAD_NETWORK_DB_USER=mapuser - ROAD_NETWORK_DB_PASSWORD=securepass depends_on: - road-db restart: unless-stopped road-db: image: postgis/postgis:14-3.3 volumes: - road-network-data:/var/lib/postgresql/data environment: - POSTGRES_DB=jore4_roads - POSTGRES_USER=mapuser - POSTGRES_PASSWORD=securepass volumes: road-network-data:
| 环境变量名 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
SPRING_PROFILES_ACTIVE | 运行环境配置文件 | default | default, prod, test |
LOG_LEVEL | 日志输出级别 | INFO | DEBUG, INFO, WARN, ERROR |
MATCHING_PRECISION | 匹配精度级别 | medium | low, medium, high |
INPUT_FORMAT | 默认输入数据格式 | geojson | geojson, csv, gpx |
ROAD_NETWORK_DB_URL | 道路网络数据库JDBC连接串 | - | 需用户指定 |
ROAD_NETWORK_DB_USER | 数据库访问用户名 | - | 需用户指定 |
ROAD_NETWORK_DB_PASSWORD | 数据库访问密码 | - | 需用户指定 |
MAX_BATCH_SIZE | 批量处理最大轨迹数 | 100 | 10-1000 |
bashcurl -X POST http://localhost:8080/api/v1/match \ -H "Content-Type: application/json" \ -d @single-trajectory.geojson
请求体示例(GeoJSON格式):
json{ "type": "Feature", "geometry": { "type": "LineString", "coordinates": [ [24.9384, 60.1699], [24.9390, 60.1702], [24.9395, 60.1705] ] }, "properties": { "timestamp": "2023-10-01T12:00:00Z", "vehicle_id": "BUS-1234" } }
bashcurl -X POST http://localhost:8080/api/v1/match/batch \ -H "Content-Type: application/json" \ -d @batch-trajectories.json
json{ "requestId": "req-7f92b34", "status": "completed", "matchedFeatures": [ { "type": "Feature", "geometry": { "type": "LineString", "coordinates": [ [24.9383, 60.1698], [24.9389, 60.1701], [24.9394, 60.1704] ] }, "properties": { "originalId": "BUS-1234", "matchQuality": 0.94, "processingTimeMs": 187, "matchedRoadSegments": ["road-567", "road-568"] } } ], "totalProcessed": 1, "successRate": 1.0 }
GET /health 接口检查服务就绪状态MAX_BATCH_SIZE 和容器资源限制(CPU/内存)application-prod.properties 挂载自定义配置)POST /api/v1/match/asyncmanifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务