Struct BoundingBox
pub struct BoundingBox { /* private fields */ }Expand description
Struct for storing the bounding box point of an image.
Implementations§
§impl BoundingBox
impl BoundingBox
pub fn new(x1: f64, y1: f64, x2: f64, y2: f64) -> BoundingBox
pub fn from_xywh_coordinates(
center_x: f64,
center_y: f64,
width: f64,
height: f64,
) -> BoundingBox
pub fn from_xywh_coordinates( center_x: f64, center_y: f64, width: f64, height: f64, ) -> BoundingBox
Construct the BoundingBox struct from center_x, center_y, width, and height values.
pub fn from_megadetector_coordinates(
min_x: f64,
min_y: f64,
width: f64,
height: f64,
) -> BoundingBox
pub fn from_megadetector_coordinates( min_x: f64, min_y: f64, width: f64, height: f64, ) -> BoundingBox
Constructs the BoundingBox struct from given min_x, min_y, width and height
values.
pub fn from_xyxy_tensor(
tensor: ArrayBase<ViewRepr<&f32>, Dim<[usize; 1]>>,
) -> Result<BoundingBox, Error>
pub fn from_xyxy_tensor( tensor: ArrayBase<ViewRepr<&f32>, Dim<[usize; 1]>>, ) -> Result<BoundingBox, Error>
Tries to convert an ArrayView1 in format of (x1, y1, x2, y2) to the bounding box struct.
pub fn from_xywh_tensor(
tensor: ArrayBase<ViewRepr<&f32>, Dim<[usize; 1]>>,
) -> Result<BoundingBox, Error>
pub fn from_xywh_tensor( tensor: ArrayBase<ViewRepr<&f32>, Dim<[usize; 1]>>, ) -> Result<BoundingBox, Error>
Tries to convert a ArrayView1 in format of (center_y, center_y, width, height) to the bounding box struct.
pub fn area(&self) -> f64
pub fn as_xyxy_bounding_box(&self) -> (f64, f64, f64, f64)
pub fn as_xyxy_bounding_box(&self) -> (f64, f64, f64, f64)
Returns the values of the coordinates in a form of (x1, y1, x2, y2) tuple format.
pub fn as_xywh_bounding_box(&self) -> (f64, f64, f64, f64)
pub fn as_xywh_bounding_box(&self) -> (f64, f64, f64, f64)
Returns the values of the coordinates in a form of (center_x, center_y, width, height)
tuple format.
pub fn as_megadetector_bounding_box(&self) -> (f64, f64, f64, f64)
pub fn as_megadetector_bounding_box(&self) -> (f64, f64, f64, f64)
Returns the values of the coordinates in a form on (x1, y1, width, height) tuple
format.
pub fn normalize(self, width: u32, height: u32) -> BoundingBox
pub fn normalize(self, width: u32, height: u32) -> BoundingBox
Normalize the BoundingBox to be under 0..1 by the given width and height.
pub fn scale(
self,
resized_width: u32,
resized_height: u32,
width: u32,
height: u32,
) -> BoundingBox
pub fn scale( self, resized_width: u32, resized_height: u32, width: u32, height: u32, ) -> BoundingBox
Rescales BoundingBox to the given width and height.
Function is copied from yolov5 scale_boxes function.
pub fn x1(&self) -> f64
pub fn y1(&self) -> f64
pub fn x2(&self) -> f64
pub fn y2(&self) -> f64
Trait Implementations§
§impl Clone for BoundingBox
impl Clone for BoundingBox
§fn clone(&self) -> BoundingBox
fn clone(&self) -> BoundingBox
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for BoundingBox
impl Debug for BoundingBox
§impl<'de> Deserialize<'de> for BoundingBox
impl<'de> Deserialize<'de> for BoundingBox
§fn deserialize<D>(
deserializer: D,
) -> Result<BoundingBox, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<BoundingBox, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
§impl Display for BoundingBox
impl Display for BoundingBox
§impl PartialEq for BoundingBox
impl PartialEq for BoundingBox
§impl Serialize for BoundingBox
impl Serialize for BoundingBox
§fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
impl Copy for BoundingBox
impl StructuralPartialEq 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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 more