usecrate::types::BoundingBox;useimage::DynamicImage;usestd::error::Error;/// Trait for extracting appearance features (embeddings) from images.
////// This allows decoupling the tracker logic (DeepSORT) from the model execution
/// (ONNX, PyTorch via Python, etc.).
pubtraitAppearanceExtractor{/// Extract features for a list of bounding boxes from a given image.
////// # Arguments
/// * `image` - The full frame image.
/// * `bboxes` - List of bounding boxes to extract features for.
////// # Returns
/// A vector of feature vectors (embeddings), one for each bounding box.
fnextract(&mutself,
image:&DynamicImage,
bboxes:&[BoundingBox],
)->Result<Vec<Vec<f32>>, Box<dyn Error>>;}