pub struct Mat_<T> { /* private fields */ }
Expand description
This struct is freely convertible into and from Mat
using into
and try_from
methods. You might want
to convert Mat
to Mat_
before calling typed methods (like at
, data_typed
) when more performance is
required because this way you will skip the data type checks (still WIP, not all methods are covered).
Implementations
sourceimpl<T: DataType> Mat_<T>
impl<T: DataType> Mat_<T>
pub fn into_untyped(self) -> Mat
pub fn as_untyped(&self) -> &Mat
pub fn as_raw_Mat_(&self) -> *const c_void
pub fn as_raw_mut_Mat_(&mut self) -> *mut c_void
pub fn at(&self, i0: i32) -> Result<&T>
pub fn at_mut(&mut self, i0: i32) -> Result<&mut T>
pub fn data_typed(&self) -> Result<&[T]>
pub fn data_typed_mut(&mut self) -> Result<&mut [T]>
Trait Implementations
sourceimpl<T> Boxed for Mat_<T>
impl<T> Boxed for Mat_<T>
sourceimpl<T> MatTrait for Mat_<T>
impl<T> MatTrait for Mat_<T>
fn as_raw_mut_Mat(&mut self) -> *mut c_void
sourcefn set_rows(&mut self, val: i32)
fn set_rows(&mut self, val: i32)
the number of rows and columns or (-1, -1) when the matrix has more than 2 dimensions
sourcefn set_cols(&mut self, val: i32)
fn set_cols(&mut self, val: i32)
the number of rows and columns or (-1, -1) when the matrix has more than 2 dimensions
sourcefn set_to(
&mut self,
value: &dyn ToInputArray,
mask: &dyn ToInputArray
) -> Result<Mat>
fn set_to(
&mut self,
value: &dyn ToInputArray,
mask: &dyn ToInputArray
) -> Result<Mat>
Sets all or some of the array elements to the specified value. Read more
sourceunsafe fn create_rows_cols(&mut self, rows: i32, cols: i32, typ: i32) -> Result<()>
unsafe fn create_rows_cols(&mut self, rows: i32, cols: i32, typ: i32) -> Result<()>
Allocates new array data if needed. Read more
sourceunsafe fn create_size(&mut self, size: Size, typ: i32) -> Result<()>
unsafe fn create_size(&mut self, size: Size, typ: i32) -> Result<()>
Allocates new array data if needed. Read more
sourceunsafe fn create_nd(&mut self, sizes: &[i32], typ: i32) -> Result<()>
unsafe fn create_nd(&mut self, sizes: &[i32], typ: i32) -> Result<()>
Allocates new array data if needed. Read more
sourceunsafe fn create_nd_vec(&mut self, sizes: &Vector<i32>, typ: i32) -> Result<()>
unsafe fn create_nd_vec(&mut self, sizes: &Vector<i32>, typ: i32) -> Result<()>
Allocates new array data if needed. Read more
sourcefn release(&mut self) -> Result<()>
fn release(&mut self) -> Result<()>
Decrements the reference counter and deallocates the matrix if needed. Read more
sourcefn deallocate(&mut self) -> Result<()>
fn deallocate(&mut self) -> Result<()>
internal use function, consider to use ‘release’ method instead; deallocates the matrix data
sourcefn reserve(&mut self, sz: size_t) -> Result<()>
fn reserve(&mut self, sz: size_t) -> Result<()>
Reserves space for the certain number of rows. Read more
sourcefn reserve_buffer(&mut self, sz: size_t) -> Result<()>
fn reserve_buffer(&mut self, sz: size_t) -> Result<()>
Reserves space for the certain number of bytes. Read more
sourcefn resize_with_default(&mut self, sz: size_t, s: Scalar) -> Result<()>
fn resize_with_default(&mut self, sz: size_t, s: Scalar) -> Result<()>
Changes the number of matrix rows. Read more
sourcefn push_back(&mut self, m: &Mat) -> Result<()>
fn push_back(&mut self, m: &Mat) -> Result<()>
Adds elements to the bottom of the matrix. Read more
sourcefn pop_back(&mut self, nelems: size_t) -> Result<()>
fn pop_back(&mut self, nelems: size_t) -> Result<()>
Removes elements from the bottom of the matrix. Read more
sourcefn adjust_roi(
&mut self,
dtop: i32,
dbottom: i32,
dleft: i32,
dright: i32
) -> Result<Mat>
fn adjust_roi(
&mut self,
dtop: i32,
dbottom: i32,
dleft: i32,
dright: i32
) -> Result<Mat>
Adjusts a submatrix size and position within the parent matrix. Read more
sourcefn ptr_mut(&mut self, i0: i32) -> Result<*mut u8>
fn ptr_mut(&mut self, i0: i32) -> Result<*mut u8>
Returns a pointer to the specified matrix row. Read more
sourcefn ptr_2d_mut(&mut self, row: i32, col: i32) -> Result<*mut u8>
fn ptr_2d_mut(&mut self, row: i32, col: i32) -> Result<*mut u8>
Returns a pointer to the specified matrix row. Read more
sourcefn ptr_3d_mut(&mut self, i0: i32, i1: i32, i2: i32) -> Result<*mut u8>
fn ptr_3d_mut(&mut self, i0: i32, i1: i32, i2: i32) -> Result<*mut u8>
Returns a pointer to the specified matrix row. Read more
sourcefn ptr_nd_mut(&mut self, idx: &[i32]) -> Result<*mut u8>
fn ptr_nd_mut(&mut self, idx: &[i32]) -> Result<*mut u8>
Returns a pointer to the specified matrix row. Read more
sourcefn at_mut<T: DataType>(&mut self, i0: i32) -> Result<&mut T>
fn at_mut<T: DataType>(&mut self, i0: i32) -> Result<&mut T>
Returns a reference to the specified array element. Read more
sourcefn at_2d_mut<T: DataType>(&mut self, row: i32, col: i32) -> Result<&mut T>
fn at_2d_mut<T: DataType>(&mut self, row: i32, col: i32) -> Result<&mut T>
Returns a reference to the specified array element. Read more
sourcefn at_3d_mut<T: DataType>(&mut self, i0: i32, i1: i32, i2: i32) -> Result<&mut T>
fn at_3d_mut<T: DataType>(&mut self, i0: i32, i1: i32, i2: i32) -> Result<&mut T>
Returns a reference to the specified array element. Read more
sourcefn at_nd_mut<T: DataType>(&mut self, idx: &[i32]) -> Result<&mut T>
fn at_nd_mut<T: DataType>(&mut self, idx: &[i32]) -> Result<&mut T>
Returns a reference to the specified array element. Read more
sourcefn at_pt_mut<T: DataType>(&mut self, pt: Point) -> Result<&mut T>
fn at_pt_mut<T: DataType>(&mut self, pt: Point) -> Result<&mut T>
Returns a reference to the specified array element. Read more
sourcefn update_continuity_flag(&mut self) -> Result<()>
fn update_continuity_flag(&mut self) -> Result<()>
internal use method: updates the continuity flag
sourceimpl<T> MatTraitConst for Mat_<T>
impl<T> MatTraitConst for Mat_<T>
fn as_raw_Mat(&self) -> *const c_void
sourcefn rows(&self) -> i32
fn rows(&self) -> i32
the number of rows and columns or (-1, -1) when the matrix has more than 2 dimensions
sourcefn cols(&self) -> i32
fn cols(&self) -> i32
the number of rows and columns or (-1, -1) when the matrix has more than 2 dimensions
fn dataend(&self) -> *const u8
fn datalimit(&self) -> *const u8
fn mat_size(&self) -> MatSize
fn mat_step(&self) -> MatStep
sourcefn get_umat(
&self,
access_flags: AccessFlag,
usage_flags: UMatUsageFlags
) -> Result<UMat>
fn get_umat(
&self,
access_flags: AccessFlag,
usage_flags: UMatUsageFlags
) -> Result<UMat>
retrieve UMat from Mat Read more
sourcefn row(&self, y: i32) -> Result<Mat>
fn row(&self, y: i32) -> Result<Mat>
Creates a matrix header for the specified matrix row. Read more
sourcefn col(&self, x: i32) -> Result<Mat>
fn col(&self, x: i32) -> Result<Mat>
Creates a matrix header for the specified matrix column. Read more
sourcefn row_bounds(&self, startrow: i32, endrow: i32) -> Result<Mat>
fn row_bounds(&self, startrow: i32, endrow: i32) -> Result<Mat>
Creates a matrix header for the specified row span. Read more
sourcefn row_range(&self, r: &Range) -> Result<Mat>
fn row_range(&self, r: &Range) -> Result<Mat>
Creates a matrix header for the specified row span. Read more
sourcefn col_bounds(&self, startcol: i32, endcol: i32) -> Result<Mat>
fn col_bounds(&self, startcol: i32, endcol: i32) -> Result<Mat>
Creates a matrix header for the specified column span. Read more
sourcefn col_range(&self, r: &Range) -> Result<Mat>
fn col_range(&self, r: &Range) -> Result<Mat>
Creates a matrix header for the specified column span. Read more
sourcefn try_clone(&self) -> Result<Mat>
fn try_clone(&self) -> Result<Mat>
Creates a full copy of the array and the underlying data. Read more
sourcefn copy_to(&self, m: &mut dyn ToOutputArray) -> Result<()>
fn copy_to(&self, m: &mut dyn ToOutputArray) -> Result<()>
Copies the matrix to another one. Read more
sourcefn copy_to_masked(
&self,
m: &mut dyn ToOutputArray,
mask: &dyn ToInputArray
) -> Result<()>
fn copy_to_masked(
&self,
m: &mut dyn ToOutputArray,
mask: &dyn ToInputArray
) -> Result<()>
Copies the matrix to another one. Read more
sourcefn convert_to(
&self,
m: &mut dyn ToOutputArray,
rtype: i32,
alpha: f64,
beta: f64
) -> Result<()>
fn convert_to(
&self,
m: &mut dyn ToOutputArray,
rtype: i32,
alpha: f64,
beta: f64
) -> Result<()>
Converts an array to another data type with optional scaling. Read more
sourcefn assign_to(&self, m: &mut Mat, typ: i32) -> Result<()>
fn assign_to(&self, m: &mut Mat, typ: i32) -> Result<()>
Provides a functional form of convertTo. Read more
sourcefn reshape(&self, cn: i32, rows: i32) -> Result<Mat>
fn reshape(&self, cn: i32, rows: i32) -> Result<Mat>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
sourcefn reshape_nd(&self, cn: i32, newsz: &[i32]) -> Result<Mat>
fn reshape_nd(&self, cn: i32, newsz: &[i32]) -> Result<Mat>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
sourcefn reshape_nd_vec(&self, cn: i32, newshape: &Vector<i32>) -> Result<Mat>
fn reshape_nd_vec(&self, cn: i32, newshape: &Vector<i32>) -> Result<Mat>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
sourcefn mul(&self, m: &dyn ToInputArray, scale: f64) -> Result<MatExpr>
fn mul(&self, m: &dyn ToInputArray, scale: f64) -> Result<MatExpr>
Performs an element-wise multiplication or division of the two matrices. Read more
sourcefn cross(&self, m: &dyn ToInputArray) -> Result<Mat>
fn cross(&self, m: &dyn ToInputArray) -> Result<Mat>
Computes a cross-product of two 3-element vectors. Read more
sourcefn dot(&self, m: &dyn ToInputArray) -> Result<f64>
fn dot(&self, m: &dyn ToInputArray) -> Result<f64>
Computes a dot-product of two vectors. Read more
sourcefn locate_roi(&self, whole_size: &mut Size, ofs: &mut Point) -> Result<()>
fn locate_roi(&self, whole_size: &mut Size, ofs: &mut Point) -> Result<()>
Locates the matrix header within a parent matrix. Read more
sourcefn is_continuous(&self) -> bool
fn is_continuous(&self) -> bool
Reports whether the matrix is continuous or not. Read more
sourcefn is_submatrix(&self) -> bool
fn is_submatrix(&self) -> bool
returns true if the matrix is a submatrix of another matrix
sourcefn elem_size1(&self) -> size_t
fn elem_size1(&self) -> size_t
Returns the size of each matrix element channel in bytes. Read more
sourcefn total_slice(&self, start_dim: i32, end_dim: i32) -> Result<size_t>
fn total_slice(&self, start_dim: i32, end_dim: i32) -> Result<size_t>
Returns the total number of array elements. Read more
sourcefn check_vector(
&self,
elem_channels: i32,
depth: i32,
require_continuous: bool
) -> Result<i32>
fn check_vector(
&self,
elem_channels: i32,
depth: i32,
require_continuous: bool
) -> Result<i32>
Parameters Read more
sourcefn ptr(&self, i0: i32) -> Result<*const u8>
fn ptr(&self, i0: i32) -> Result<*const u8>
Returns a pointer to the specified matrix row. Read more
sourcefn ptr_2d(&self, row: i32, col: i32) -> Result<*const u8>
fn ptr_2d(&self, row: i32, col: i32) -> Result<*const u8>
Returns a pointer to the specified matrix row. Read more
sourcefn ptr_3d(&self, i0: i32, i1: i32, i2: i32) -> Result<*const u8>
fn ptr_3d(&self, i0: i32, i1: i32, i2: i32) -> Result<*const u8>
Returns a pointer to the specified matrix row. Read more
sourcefn ptr_nd(&self, idx: &[i32]) -> Result<*const u8>
fn ptr_nd(&self, idx: &[i32]) -> Result<*const u8>
Returns a pointer to the specified matrix row. Read more
sourcefn at<T: DataType>(&self, i0: i32) -> Result<&T>
fn at<T: DataType>(&self, i0: i32) -> Result<&T>
Returns a reference to the specified array element. Read more
sourcefn at_2d<T: DataType>(&self, row: i32, col: i32) -> Result<&T>
fn at_2d<T: DataType>(&self, row: i32, col: i32) -> Result<&T>
Returns a reference to the specified array element. Read more
sourcefn at_3d<T: DataType>(&self, i0: i32, i1: i32, i2: i32) -> Result<&T>
fn at_3d<T: DataType>(&self, i0: i32, i1: i32, i2: i32) -> Result<&T>
Returns a reference to the specified array element. Read more
sourceimpl<T> ToInputArray for Mat_<T>
impl<T> ToInputArray for Mat_<T>
fn input_array(&self) -> Result<_InputArray>
sourceimpl<T> ToInputOutputArray for Mat_<T>
impl<T> ToInputOutputArray for Mat_<T>
fn input_output_array(&mut self) -> Result<_InputOutputArray>
sourceimpl<T> ToOutputArray for Mat_<T>
impl<T> ToOutputArray for Mat_<T>
fn output_array(&mut self) -> Result<_OutputArray>
Auto Trait Implementations
impl<T> RefUnwindSafe for Mat_<T>where
T: RefUnwindSafe,
impl<T> Send for Mat_<T>where
T: Send,
impl<T> !Sync for Mat_<T>
impl<T> Unpin for Mat_<T>where
T: Unpin,
impl<T> UnwindSafe for Mat_<T>where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more