1use chrono::{DateTime, Utc};
4use ort::session::Session;
5use serde::{Deserialize, Serialize};
6
7#[derive(Serialize, Deserialize, Debug, Clone, Copy)]
9pub struct Gps {
10 pub lat: f64,
11 pub long: f64,
12 pub alt: f64,
13 pub heading: f64,
14
15 #[serde(with = "chrono::serde::ts_milliseconds")]
16 pub time: DateTime<Utc>,
17}
18
19pub struct Model {
21 pub model: Session,
22 pub input_size: i32,
23}
24
25#[derive(Debug, Serialize, Deserialize, Clone, Copy)]
27pub struct BoxDetection {
28 pub x1: f32, pub y1: f32, pub x2: f32, pub y2: f32, pub class_index: i32, pub conf: f32, }
35pub type Detections = Vec<BoxDetection>;
36
37pub struct MatInfo {
39 pub width: f32, pub height: f32, pub scaled_size: f32, }
43
44#[derive(Debug, Clone)]
46pub struct Object {
47 pub lat: f64,
48 pub long: f64,
49 pub class: i32,
50 pub confidence: f32,
51}