How theta-limited/openathena-legacy-python works
OpenAthena is a legacy Python tool that estimates a ground target’s location from drone camera metadata and terrain elevation. Its principal workflow extracts image position and camera orientation, loads a GeoTIFF elevation model, resolves the camera’s line of sight against terrain, and reports target coordinates; it can also publish Cursor on Target (CoT) messages. A separate find-me mode supports relative bearing-and-distance targeting for search teams. The graph follows documented calls and references; some module behavior is unsampled, so uncertain connections are omitted.
Main entry points: getTarget.py Target Resolver · parseImage.py Image Metadata Parser · find_me_mode.py Find-Me Mode · parseGeoTIFF.py Elevation Sampler
Components 13
Image Processing
- Image Metadata Parser
src/parseImage.py - Find-Me Mode
src/find_me_mode.py
Terrain Targeting
- Target Resolver
src/getTarget.py - Elevation Sampler
src/parseGeoTIFF.py - Runtime Settings
src/config.py
Coordinate Conversion
- WGS84-SK42 Translator
src/WGS84_SK42_Translator.py - Gauss-Kruger Projector
src/SK42_Gauss_Kruger.py
Target Outputs
- CoT Publisher
src/cursor_on_target.py
Other components
- Operator
- Drone Image
- GeoTIFF DEM
- Target Location
- UDP Multicast Network
Connections 16
- Operator → Image Metadata Parser: submits image
src/parseImage.py - Drone Image → Image Metadata Parser: provides metadata
src/parseImage.py - Image Metadata Parser → Target Resolver: resolves target
src/parseImage.py - Operator → GeoTIFF DEM: selects terrain
README.md - GeoTIFF DEM → Elevation Sampler: provides elevations
src/parseGeoTIFF.py - Image Metadata Parser → WGS84-SK42 Translator: converts coordinates
src/parseImage.py - Image Metadata Parser → Gauss-Kruger Projector: projects coordinates
src/parseImage.py - Gauss-Kruger Projector → WGS84-SK42 Translator: uses translator
src/SK42_Gauss_Kruger.py - Target Resolver → Elevation Sampler: samples elevation
src/getTarget.py - Target Resolver → CoT Publisher: sends target
src/getTarget.py - Target Resolver → Target Location: returns coordinates
src/getTarget.py - CoT Publisher → UDP Multicast Network: multicasts message
src/cursor_on_target.py - Operator → Find-Me Mode: enters relative target
src/find_me_mode.py - Find-Me Mode → Elevation Sampler: loads terrain
src/find_me_mode.py - Find-Me Mode → Target Resolver: resolves target
src/find_me_mode.py - Target Resolver → Runtime Settings: reads settings
src/getTarget.py