pub struct DetectionModel { /* private fields */ }Expand description
This class represents high-level API for object detection networks.
DetectionModel allows to set params for preprocessing input image. DetectionModel creates net from file with trained weights and config, sets preprocessing input, runs forward pass and return result detections. For DetectionModel SSD, Faster R-CNN, YOLO topologies are supported.
Implementations§
Source§impl DetectionModel
 
impl DetectionModel
Sourcepub fn new_def(model: &str) -> Result<DetectionModel>
 
pub fn new_def(model: &str) -> Result<DetectionModel>
Create detection model from network represented in one of the supported formats. An order of @p model and @p config arguments does not matter.
§Parameters
- model: Binary file contains trained weights.
- config: Text file contains network configuration.
§Note
This alternative version of [new] function uses the following default values for its arguments:
- config: “”
Sourcepub fn new_1(network: &impl NetTraitConst) -> Result<DetectionModel>
 
pub fn new_1(network: &impl NetTraitConst) -> Result<DetectionModel>
pub fn default() -> Result<DetectionModel>
Trait Implementations§
Source§impl Boxed for DetectionModel
 
impl Boxed for DetectionModel
Source§unsafe fn from_raw(
    ptr: <DetectionModel as OpenCVFromExtern>::ExternReceive,
) -> Self
 
unsafe fn from_raw( ptr: <DetectionModel as OpenCVFromExtern>::ExternReceive, ) -> Self
Wrap the specified raw pointer Read more
Source§fn into_raw(
    self,
) -> <DetectionModel as OpenCVTypeExternContainer>::ExternSendMut
 
fn into_raw( self, ) -> <DetectionModel as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying raw pointer while consuming this wrapper. Read more
Source§fn as_raw(&self) -> <DetectionModel as OpenCVTypeExternContainer>::ExternSend
 
fn as_raw(&self) -> <DetectionModel as OpenCVTypeExternContainer>::ExternSend
Return the underlying raw pointer. Read more
Source§fn as_raw_mut(
    &mut self,
) -> <DetectionModel as OpenCVTypeExternContainer>::ExternSendMut
 
fn as_raw_mut( &mut self, ) -> <DetectionModel as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying mutable raw pointer Read more
Source§impl Clone for DetectionModel
 
impl Clone for DetectionModel
Source§impl Debug for DetectionModel
 
impl Debug for DetectionModel
Source§impl DetectionModelTrait for DetectionModel
 
impl DetectionModelTrait for DetectionModel
fn as_raw_mut_DetectionModel(&mut self) -> *mut c_void
Source§fn set_nms_across_classes(&mut self, value: bool) -> Result<DetectionModel>
 
fn set_nms_across_classes(&mut self, value: bool) -> Result<DetectionModel>
nmsAcrossClasses defaults to false,
such that when non max suppression is used during the detect() function, it will do so per-class.
This function allows you to toggle this behaviour. Read more
Source§fn get_nms_across_classes(&mut self) -> Result<bool>
 
fn get_nms_across_classes(&mut self) -> Result<bool>
Getter for nmsAcrossClasses. This variable defaults to false,
such that when non max suppression is used during the detect() function, it will do so only per-class
Source§impl DetectionModelTraitConst for DetectionModel
 
impl DetectionModelTraitConst for DetectionModel
fn as_raw_DetectionModel(&self) -> *const c_void
Source§impl Drop for DetectionModel
 
impl Drop for DetectionModel
Source§impl From<DetectionModel> for Model
 
impl From<DetectionModel> for Model
Source§fn from(s: DetectionModel) -> Self
 
fn from(s: DetectionModel) -> Self
Converts to this type from the input type.
Source§impl ModelTrait for DetectionModel
 
impl ModelTrait for DetectionModel
fn as_raw_mut_Model(&mut self) -> *mut c_void
fn set(&mut self, unnamed: &impl ModelTraitConst)
fn set_1(&mut self, unnamed: Model)
Source§fn set_input_size_1(&mut self, width: i32, height: i32) -> Result<Model>
 
fn set_input_size_1(&mut self, width: i32, height: i32) -> Result<Model>
Set input size for frame. Read more
Source§fn set_input_mean(&mut self, mean: Scalar) -> Result<Model>
 
fn set_input_mean(&mut self, mean: Scalar) -> Result<Model>
Set mean value for frame. Read more
Source§fn set_input_scale(&mut self, scale: Scalar) -> Result<Model>
 
fn set_input_scale(&mut self, scale: Scalar) -> Result<Model>
Set scalefactor value for frame. Read more
Source§fn set_input_swap_rb(&mut self, swap_rb: bool) -> Result<Model>
 
fn set_input_swap_rb(&mut self, swap_rb: bool) -> Result<Model>
Set flag swapRB for frame. Read more
Source§fn set_output_names(&mut self, out_names: &Vector<String>) -> Result<Model>
 
fn set_output_names(&mut self, out_names: &Vector<String>) -> Result<Model>
Set output names for frame. Read more
Source§fn set_input_params(
    &mut self,
    scale: f64,
    size: Size,
    mean: Scalar,
    swap_rb: bool,
    crop: bool,
) -> Result<()>
 
fn set_input_params( &mut self, scale: f64, size: Size, mean: Scalar, swap_rb: bool, crop: bool, ) -> Result<()>
Set preprocessing parameters for frame. Read more
Source§fn set_input_params_def(&mut self) -> Result<()>
 
fn set_input_params_def(&mut self) -> Result<()>
Set preprocessing parameters for frame. Read more
fn get_network__1(&mut self) -> Result<Net>
Source§impl ModelTraitConst for DetectionModel
 
impl ModelTraitConst for DetectionModel
fn as_raw_Model(&self) -> *const c_void
Source§fn predict(
    &self,
    frame: &impl ToInputArray,
    outs: &mut impl ToOutputArray,
) -> Result<()>
 
fn predict( &self, frame: &impl ToInputArray, outs: &mut impl ToOutputArray, ) -> Result<()>
Given the @p input frame, create input blob, run net and return the output @p blobs. Read more
fn get_network_(&self) -> Result<Net>
impl Send for DetectionModel
Auto Trait Implementations§
impl Freeze for DetectionModel
impl RefUnwindSafe for DetectionModel
impl !Sync for DetectionModel
impl Unpin for DetectionModel
impl UnwindSafe for DetectionModel
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<Mat> ModifyInplace for Matwhere
    Mat: Boxed,
 
impl<Mat> ModifyInplace for Matwhere
    Mat: Boxed,
Source§unsafe fn modify_inplace<Res>(
    &mut self,
    f: impl FnOnce(&Mat, &mut Mat) -> Res,
) -> Res
 
unsafe fn modify_inplace<Res>( &mut self, f: impl FnOnce(&Mat, &mut Mat) -> Res, ) -> Res
Helper function to call OpenCV functions that allow in-place modification of a 
Mat or another similar object. By passing
a mutable reference to the Mat to this function your closure will get called with the read reference and a write references
to the same Mat. This is unsafe in a general case as it leads to having non-exclusive mutable access to the internal data,
but it can be useful for some performance sensitive operations. One example of an OpenCV function that allows such in-place
modification is imgproc::threshold. Read more