https://github.com/starwit/vision-api
Data model for Starwit's Awareness Engine
https://github.com/starwit/vision-api
sae vision-api
Last synced: 5 months ago
JSON representation
Data model for Starwit's Awareness Engine
- Host: GitHub
- URL: https://github.com/starwit/vision-api
- Owner: starwit
- License: agpl-3.0
- Created: 2023-05-10T07:34:34.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-08-29T07:27:36.000Z (10 months ago)
- Last Synced: 2025-08-29T11:16:53.526Z (10 months ago)
- Topics: sae, vision-api
- Language: Python
- Homepage:
- Size: 293 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Vision API repository
This repo contains the main data model for the Starwit Awareness Engine (SAE). See umbrella repo here: https://github.com/starwit/starwit-awareness-engine
## How-To Use
### Python / Poetry
- Add the following to your `pyproject.toml` dependencies section\
`visionapi = { git = "https://github.com/starwit/vision-api.git", subdirectory = "python/visionapi", tag = "3.5.3" }`
### Java / Maven
- Add dependency to your project:
```xml
de.starwit
vision-api
3.5.3
```
- Add maven repository to your `~/.m2/settings.xml` (adapt example / your config as necessary):
```xml
github
github
central
https://repo1.maven.org/maven2
github
https://maven.pkg.github.com/starwit/vision-api
true
github
YOUR_GITHUB_USER
GITHUB_TOKEN_WITH_PACKAGE_READ_PERMISSIONS
```
## Tools & Setup
* Install protoc via pipx:
```
sudo apt install pipx
pipx install protoc-wrapper==31.1.0
```
* ! If you change protoc version, you need to change protobuf version in `java\visionapi\pom.xml`, `python\visionapi\pyproject.toml` and protoc version in `Makefile`
## How-To Update
1. Make desired changes in `./visionapi`
2. Increase version in `./VERSION`
3. Run `make`
4. Make sure that there are no old leftover files in the generated projects
5. Describe change in changelog section below
5. Commit, tag with version and push
```
// Commit stuff, like git add, git commit and such
git tag
git push
git push
```
## Changelog
### 3.5.3
- Add `protobuf-java-util` to java library
- No protocol changes
### 3.5.2
- No changes
### 3.5.1
- Add `class_name` to `DetectionCount`
### 3.5.0
- Add `ModelMetadata` containing `class_names` mapping to `SaeMessage`
### 3.4.0
- Add `MessageType` field `type` to all top-level messages
- Add `TypeMessage` as a dummy to deserialize type field
### 3.3.0
- Add `PositionMessage` to represent position information from a GNSS receiver
### 3.2.1
- Add `DetectionCountMessage` to summarize detection data
### 3.2.0
- Add `source_id` to messages (to distinguish which source the messages are generated from)
- Add `IncidentMessage.source_id`
- Add `AnomalyMessage.source_id`
### 3.1.0
- Add camera location field to all messages (as type `GeoCoordinate`)
- Add `SaeMessage.frame.camera_location`
- Add `AnomalyMessage.camera_location`
- Add `IncidentMessage.camera_location`