pub struct BoundingBox {
pub left: f32,
pub top: f32,
pub width: f32,
pub height: f32,
pub confidence: f32,
}Expand description
Bounding box in the format (left, top, width, height)
Fields§
§left: f32§top: f32§width: f32§height: f32§confidence: f32Implementations§
Source§impl BoundingBox
impl BoundingBox
pub fn new(left: f32, top: f32, width: f32, height: f32) -> Self
pub fn new_with_confidence( left: f32, top: f32, width: f32, height: f32, confidence: f32, ) -> Self
pub fn as_xyaah(&self) -> Universal2DBox
pub fn intersection(l: &BoundingBox, r: &BoundingBox) -> f64
Trait Implementations§
Source§impl Clone for BoundingBox
impl Clone for BoundingBox
Source§fn clone(&self) -> BoundingBox
fn clone(&self) -> BoundingBox
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BoundingBox
impl Debug for BoundingBox
Source§impl Default for BoundingBox
impl Default for BoundingBox
Source§fn default() -> BoundingBox
fn default() -> BoundingBox
Returns the “default value” for a type. Read more
Source§impl From<&BoundingBox> for Universal2DBox
impl From<&BoundingBox> for Universal2DBox
Source§fn from(f: &BoundingBox) -> Self
fn from(f: &BoundingBox) -> Self
Converts to this type from the input type.
Source§impl From<BoundingBox> for Universal2DBox
impl From<BoundingBox> for Universal2DBox
Source§fn from(f: BoundingBox) -> Self
fn from(f: BoundingBox) -> Self
Converts to this type from the input type.
Source§impl ObservationAttributes for BoundingBox
impl ObservationAttributes for BoundingBox
type MetricObject = f32
fn calculate_metric_object( left: &Option<&Self>, right: &Option<&Self>, ) -> Option<Self::MetricObject>
Source§impl ObservationMetric<BBoxAttributes, BoundingBox> for IOUMetric
impl ObservationMetric<BBoxAttributes, BoundingBox> for IOUMetric
Source§fn metric(
&self,
mq: &MetricQuery<'_, BBoxAttributes, BoundingBox>,
) -> MetricOutput<f32>
fn metric( &self, mq: &MetricQuery<'_, BBoxAttributes, BoundingBox>, ) -> MetricOutput<f32>
calculates the distance between two features. Read more
Source§fn optimize(
&mut self,
_feature_class: u64,
_merge_history: &[u64],
attrs: &mut BBoxAttributes,
features: &mut Vec<Observation<BoundingBox>>,
prev_length: usize,
is_merge: bool,
) -> Result<()>
fn optimize( &mut self, _feature_class: u64, _merge_history: &[u64], attrs: &mut BBoxAttributes, features: &mut Vec<Observation<BoundingBox>>, prev_length: usize, is_merge: bool, ) -> Result<()>
the method is used every time, when a new observation is added to the feature storage as well as when
two tracks are merged. Read more
Source§fn postprocess_distances(
&self,
unfiltered: Vec<ObservationMetricOk<OA>>,
) -> Vec<ObservationMetricOk<OA>>
fn postprocess_distances( &self, unfiltered: Vec<ObservationMetricOk<OA>>, ) -> Vec<ObservationMetricOk<OA>>
The postprocessing is run just before the executor returns calculated distances. Read more
Source§impl PartialEq for BoundingBox
impl PartialEq for BoundingBox
Source§impl TrackAttributes<BBoxAttributes, BoundingBox> for BBoxAttributes
impl TrackAttributes<BBoxAttributes, BoundingBox> for BBoxAttributes
type Update = BBoxAttributesUpdate
type Lookup = NoopLookup<BBoxAttributes, BoundingBox>
Source§fn compatible(&self, _other: &BBoxAttributes) -> bool
fn compatible(&self, _other: &BBoxAttributes) -> bool
The method is used to evaluate attributes of two tracks to determine whether tracks are compatible
for distance calculation. When the attributes are compatible, the method returns
true. Read moreSource§fn merge(&mut self, other: &BBoxAttributes) -> Result<()>
fn merge(&mut self, other: &BBoxAttributes) -> Result<()>
When the tracks are merged, their attributes are merged as well. The method defines the approach to merge attributes. Read more
Source§fn baked(
&self,
_observations: &ObservationsDb<BoundingBox>,
) -> Result<TrackStatus>
fn baked( &self, _observations: &ObservationsDb<BoundingBox>, ) -> Result<TrackStatus>
The method is used by storage to determine when track is ready/not ready/wasted. Look at TrackStatus. Read more
Source§impl TryFrom<&Universal2DBox> for BoundingBox
impl TryFrom<&Universal2DBox> for BoundingBox
Source§impl<const X: usize> TryFrom<KalmanState<X>> for BoundingBox
impl<const X: usize> TryFrom<KalmanState<X>> for BoundingBox
Source§impl TryFrom<Universal2DBox> for BoundingBox
impl TryFrom<Universal2DBox> for BoundingBox
impl Copy for BoundingBox
Auto Trait Implementations§
impl Freeze for BoundingBox
impl RefUnwindSafe for BoundingBox
impl Send for BoundingBox
impl Sync for BoundingBox
impl Unpin for BoundingBox
impl UnwindSafe for BoundingBox
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.