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.
Implementations§
source§impl<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
sourcepub fn data_typed(&self) -> Result<&[T]>
pub fn data_typed(&self) -> Result<&[T]>
See [Mat::data_typed]
sourcepub fn data_typed_mut(&mut self) -> Result<&mut [T]>
pub fn data_typed_mut(&mut self) -> Result<&mut [T]>
See [Mat::data_typed_mut]
Trait Implementations§
source§impl<T> Boxed for Mat_<T>
impl<T> Boxed for Mat_<T>
source§impl<T> MatTrait for Mat_<T>
impl<T> MatTrait for Mat_<T>
fn as_raw_mut_Mat(&mut self) -> *mut c_void
source§fn 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
source§fn 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
source§fn set_u(&mut self, val: &impl UMatDataTraitConst)
fn set_u(&mut self, val: &impl UMatDataTraitConst)
interaction with UMat
fn set_size(&mut self, val: MatSize)
source§fn set_matexpr(&mut self, expr: &impl MatExprTraitConst) -> Result<()>
fn set_matexpr(&mut self, expr: &impl MatExprTraitConst) -> Result<()>
assignment operators Read more
source§fn row_mut(&mut self, y: i32) -> Result<BoxedRefMut<'_, Mat>>
fn row_mut(&mut self, y: i32) -> Result<BoxedRefMut<'_, Mat>>
Creates a matrix header for the specified matrix row. Read more
source§fn col_mut(&mut self, x: i32) -> Result<BoxedRefMut<'_, Mat>>
fn col_mut(&mut self, x: i32) -> Result<BoxedRefMut<'_, Mat>>
Creates a matrix header for the specified matrix column. Read more
source§fn row_bounds_mut(
&mut self,
startrow: i32,
endrow: i32
) -> Result<BoxedRefMut<'_, Mat>>
fn row_bounds_mut( &mut self, startrow: i32, endrow: i32 ) -> Result<BoxedRefMut<'_, Mat>>
Creates a matrix header for the specified row span. Read more
source§fn row_range_mut(
&mut self,
r: &impl RangeTraitConst
) -> Result<BoxedRefMut<'_, Mat>>
fn row_range_mut( &mut self, r: &impl RangeTraitConst ) -> Result<BoxedRefMut<'_, Mat>>
@overload Read more
source§fn col_bounds_mut(
&mut self,
startcol: i32,
endcol: i32
) -> Result<BoxedRefMut<'_, Mat>>
fn col_bounds_mut( &mut self, startcol: i32, endcol: i32 ) -> Result<BoxedRefMut<'_, Mat>>
Creates a matrix header for the specified column span. Read more
source§fn col_range_mut(
&mut self,
r: &impl RangeTraitConst
) -> Result<BoxedRefMut<'_, Mat>>
fn col_range_mut( &mut self, r: &impl RangeTraitConst ) -> Result<BoxedRefMut<'_, Mat>>
@overload Read more
source§fn diag_def_mut(&mut self) -> Result<BoxedRefMut<'_, Mat>>
fn diag_def_mut(&mut self) -> Result<BoxedRefMut<'_, Mat>>
Extracts a diagonal from a matrix Read more
source§fn diag_mut(&mut self, d: i32) -> Result<BoxedRefMut<'_, Mat>>
fn diag_mut(&mut self, d: i32) -> Result<BoxedRefMut<'_, Mat>>
Extracts a diagonal from a matrix Read more
source§fn set_scalar(&mut self, s: Scalar) -> Result<()>
fn set_scalar(&mut self, s: Scalar) -> Result<()>
Sets all or some of the array elements to the specified value. Read more
source§fn set_to(
&mut self,
value: &impl ToInputArray,
mask: &impl ToInputArray
) -> Result<Mat>
fn set_to( &mut self, value: &impl ToInputArray, mask: &impl ToInputArray ) -> Result<Mat>
Sets all or some of the array elements to the specified value. Read more
source§fn set_to_def(&mut self, value: &impl ToInputArray) -> Result<Mat>
fn set_to_def(&mut self, value: &impl ToInputArray) -> Result<Mat>
Sets all or some of the array elements to the specified value. Read more
source§fn reshape_def_mut(&mut self, cn: i32) -> Result<BoxedRefMut<'_, Mat>>
fn reshape_def_mut(&mut self, cn: i32) -> Result<BoxedRefMut<'_, Mat>>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
source§fn reshape_mut(&mut self, cn: i32, rows: i32) -> Result<BoxedRefMut<'_, Mat>>
fn reshape_mut(&mut self, cn: i32, rows: i32) -> Result<BoxedRefMut<'_, Mat>>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
source§fn reshape_nd_mut(
&mut self,
cn: i32,
newsz: &[i32]
) -> Result<BoxedRefMut<'_, Mat>>
fn reshape_nd_mut( &mut self, cn: i32, newsz: &[i32] ) -> Result<BoxedRefMut<'_, Mat>>
@overload Read more
source§fn reshape_nd_vec_mut(
&mut self,
cn: i32,
newshape: &Vector<i32>
) -> Result<BoxedRefMut<'_, Mat>>
fn reshape_nd_vec_mut( &mut self, cn: i32, newshape: &Vector<i32> ) -> Result<BoxedRefMut<'_, Mat>>
@overload Read more
source§unsafe 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
source§unsafe 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
source§unsafe 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
source§unsafe 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
source§unsafe fn release(&mut self) -> Result<()>
unsafe fn release(&mut self) -> Result<()>
Decrements the reference counter and deallocates the matrix if needed. Read more
source§fn deallocate(&mut self) -> Result<()>
fn deallocate(&mut self) -> Result<()>
internal use function, consider to use ‘release’ method instead; deallocates the matrix data
source§fn 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
source§fn 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
source§fn 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
source§fn push_back(&mut self, m: &impl MatTraitConst) -> Result<()>
fn push_back(&mut self, m: &impl MatTraitConst) -> Result<()>
Adds elements to the bottom of the matrix. Read more
source§fn 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
source§fn pop_back_def(&mut self) -> Result<()>
fn pop_back_def(&mut self) -> Result<()>
Removes elements from the bottom of the matrix. Read more
source§fn 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
source§fn rowscols_mut(
&mut self,
row_range: impl RangeTrait,
col_range: impl RangeTrait
) -> Result<BoxedRefMut<'_, Mat>>
fn rowscols_mut( &mut self, row_range: impl RangeTrait, col_range: impl RangeTrait ) -> Result<BoxedRefMut<'_, Mat>>
Extracts a rectangular submatrix. Read more
source§fn ranges_mut(&mut self, ranges: &Vector<Range>) -> Result<BoxedRefMut<'_, Mat>>
fn ranges_mut(&mut self, ranges: &Vector<Range>) -> Result<BoxedRefMut<'_, Mat>>
@overload Read more
source§fn 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
source§fn ptr_mut_def(&mut self) -> Result<*mut u8>
fn ptr_mut_def(&mut self) -> Result<*mut u8>
Returns a pointer to the specified matrix row. Read more
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
fn set(&mut self, m: Mat) -> Result<()>
source§fn update_continuity_flag(&mut self) -> Result<()>
fn update_continuity_flag(&mut self) -> Result<()>
internal use method: updates the continuity flag
source§impl<T> MatTraitConst for Mat_<T>
impl<T> MatTraitConst for Mat_<T>
fn as_raw_Mat(&self) -> *const c_void
source§fn rows(&self) -> i32
fn rows(&self) -> i32
the number of rows and columns or (-1, -1) when the matrix has more than 2 dimensions
source§fn 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
source§fn 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
source§fn get_umat_def(&self, access_flags: AccessFlag) -> Result<UMat>
fn get_umat_def(&self, access_flags: AccessFlag) -> Result<UMat>
retrieve UMat from Mat Read more
source§fn row(&self, y: i32) -> Result<BoxedRef<'_, Mat>>
fn row(&self, y: i32) -> Result<BoxedRef<'_, Mat>>
Creates a matrix header for the specified matrix row. Read more
source§fn col(&self, x: i32) -> Result<BoxedRef<'_, Mat>>
fn col(&self, x: i32) -> Result<BoxedRef<'_, Mat>>
Creates a matrix header for the specified matrix column. Read more
source§fn row_bounds(&self, startrow: i32, endrow: i32) -> Result<BoxedRef<'_, Mat>>
fn row_bounds(&self, startrow: i32, endrow: i32) -> Result<BoxedRef<'_, Mat>>
Creates a matrix header for the specified row span. Read more
source§fn row_range(&self, r: &impl RangeTraitConst) -> Result<BoxedRef<'_, Mat>>
fn row_range(&self, r: &impl RangeTraitConst) -> Result<BoxedRef<'_, Mat>>
Creates a matrix header for the specified row span. Read more
source§fn col_bounds(&self, startcol: i32, endcol: i32) -> Result<BoxedRef<'_, Mat>>
fn col_bounds(&self, startcol: i32, endcol: i32) -> Result<BoxedRef<'_, Mat>>
Creates a matrix header for the specified column span. Read more
source§fn col_range(&self, r: &impl RangeTraitConst) -> Result<BoxedRef<'_, Mat>>
fn col_range(&self, r: &impl RangeTraitConst) -> Result<BoxedRef<'_, Mat>>
Creates a matrix header for the specified column span. Read more
source§fn diag(&self, d: i32) -> Result<BoxedRef<'_, Mat>>
fn diag(&self, d: i32) -> Result<BoxedRef<'_, Mat>>
Extracts a diagonal from a matrix Read more
source§fn try_clone(&self) -> Result<Mat>
fn try_clone(&self) -> Result<Mat>
Creates a full copy of the array and the underlying data. Read more
source§fn copy_to(&self, m: &mut impl ToOutputArray) -> Result<()>
fn copy_to(&self, m: &mut impl ToOutputArray) -> Result<()>
Copies the matrix to another one. Read more
source§fn copy_to_masked(
&self,
m: &mut impl ToOutputArray,
mask: &impl ToInputArray
) -> Result<()>
fn copy_to_masked( &self, m: &mut impl ToOutputArray, mask: &impl ToInputArray ) -> Result<()>
Copies the matrix to another one. Read more
source§fn convert_to(
&self,
m: &mut impl ToOutputArray,
rtype: i32,
alpha: f64,
beta: f64
) -> Result<()>
fn convert_to( &self, m: &mut impl ToOutputArray, rtype: i32, alpha: f64, beta: f64 ) -> Result<()>
Converts an array to another data type with optional scaling. Read more
source§fn convert_to_def(&self, m: &mut impl ToOutputArray, rtype: i32) -> Result<()>
fn convert_to_def(&self, m: &mut impl ToOutputArray, rtype: i32) -> Result<()>
Converts an array to another data type with optional scaling. Read more
source§fn assign_to(&self, m: &mut impl MatTrait, typ: i32) -> Result<()>
fn assign_to(&self, m: &mut impl MatTrait, typ: i32) -> Result<()>
Provides a functional form of convertTo. Read more
source§fn assign_to_def(&self, m: &mut impl MatTrait) -> Result<()>
fn assign_to_def(&self, m: &mut impl MatTrait) -> Result<()>
Provides a functional form of convertTo. Read more
source§fn reshape(&self, cn: i32, rows: i32) -> Result<BoxedRef<'_, Mat>>
fn reshape(&self, cn: i32, rows: i32) -> Result<BoxedRef<'_, Mat>>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
source§fn reshape_def(&self, cn: i32) -> Result<BoxedRef<'_, Mat>>
fn reshape_def(&self, cn: i32) -> Result<BoxedRef<'_, Mat>>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
source§fn reshape_nd(&self, cn: i32, newsz: &[i32]) -> Result<BoxedRef<'_, Mat>>
fn reshape_nd(&self, cn: i32, newsz: &[i32]) -> Result<BoxedRef<'_, Mat>>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
source§fn reshape_nd_vec(
&self,
cn: i32,
newshape: &Vector<i32>
) -> Result<BoxedRef<'_, Mat>>
fn reshape_nd_vec( &self, cn: i32, newshape: &Vector<i32> ) -> Result<BoxedRef<'_, Mat>>
Changes the shape and/or the number of channels of a 2D matrix without copying the data. Read more
source§fn mul(&self, m: &impl ToInputArray, scale: f64) -> Result<MatExpr>
fn mul(&self, m: &impl ToInputArray, scale: f64) -> Result<MatExpr>
Performs an element-wise multiplication or division of the two matrices. Read more
source§fn mul_def(&self, m: &impl ToInputArray) -> Result<MatExpr>
fn mul_def(&self, m: &impl ToInputArray) -> Result<MatExpr>
Performs an element-wise multiplication or division of the two matrices. Read more
source§fn cross(&self, m: &impl ToInputArray) -> Result<Mat>
fn cross(&self, m: &impl ToInputArray) -> Result<Mat>
Computes a cross-product of two 3-element vectors. Read more
source§fn dot(&self, m: &impl ToInputArray) -> Result<f64>
fn dot(&self, m: &impl ToInputArray) -> Result<f64>
Computes a dot-product of two vectors. Read more
source§fn 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
source§fn rowscols(
&self,
row_range: impl RangeTrait,
col_range: impl RangeTrait
) -> Result<BoxedRef<'_, Mat>>
fn rowscols( &self, row_range: impl RangeTrait, col_range: impl RangeTrait ) -> Result<BoxedRef<'_, Mat>>
Extracts a rectangular submatrix. Read more
source§fn roi(&self, roi: Rect) -> Result<BoxedRef<'_, Mat>>
fn roi(&self, roi: Rect) -> Result<BoxedRef<'_, Mat>>
Extracts a rectangular submatrix. Read more
source§fn ranges(&self, ranges: &Vector<Range>) -> Result<BoxedRef<'_, Mat>>
fn ranges(&self, ranges: &Vector<Range>) -> Result<BoxedRef<'_, Mat>>
Extracts a rectangular submatrix. Read more
source§fn is_continuous(&self) -> bool
fn is_continuous(&self) -> bool
Reports whether the matrix is continuous or not. Read more
source§fn is_submatrix(&self) -> bool
fn is_submatrix(&self) -> bool
returns true if the matrix is a submatrix of another matrix
source§fn elem_size1(&self) -> size_t
fn elem_size1(&self) -> size_t
Returns the size of each matrix element channel in bytes. Read more
source§fn 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
source§fn total_slice_def(&self, start_dim: i32) -> Result<size_t>
fn total_slice_def(&self, start_dim: i32) -> Result<size_t>
Returns the total number of array elements. Read more
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn 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
source§fn at_nd<T: DataType>(&self, idx: &[i32]) -> Result<&T>
fn at_nd<T: DataType>(&self, idx: &[i32]) -> Result<&T>
Returns a reference to the specified array element. Read more
source§fn at_pt<T: DataType>(&self, pt: Point) -> Result<&T>
fn at_pt<T: DataType>(&self, pt: Point) -> Result<&T>
Returns a reference to the specified array element. Read more
fn size(&self) -> Result<Size>
source§impl<T> ToInputArray for Mat_<T>
impl<T> ToInputArray for Mat_<T>
fn input_array(&self) -> Result<BoxedRef<'_, _InputArray>>
source§impl<T> ToInputOutputArray for Mat_<T>
impl<T> ToInputOutputArray for Mat_<T>
fn input_output_array(&mut self) -> Result<BoxedRefMut<'_, _InputOutputArray>>
source§impl<T> ToOutputArray for Mat_<T>
impl<T> ToOutputArray for Mat_<T>
fn output_array(&mut self) -> Result<BoxedRefMut<'_, _OutputArray>>
Auto Trait Implementations§
impl<T> Freeze for Mat_<T>
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§
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> MatTraitConstManual for Twhere
T: MatTraitConst + ?Sized,
impl<T> MatTraitConstManual for Twhere
T: MatTraitConst + ?Sized,
source§unsafe fn at_unchecked<T: DataType>(&self, i0: i32) -> Result<&T>
unsafe fn at_unchecked<T: DataType>(&self, i0: i32) -> Result<&T>
Like
Mat::at()
but performs no bounds or type checks Read moresource§unsafe fn at_2d_unchecked<T: DataType>(&self, row: i32, col: i32) -> Result<&T>
unsafe fn at_2d_unchecked<T: DataType>(&self, row: i32, col: i32) -> Result<&T>
Like
Mat::at_2d()
but performs no bounds or type checks Read moresource§unsafe fn at_pt_unchecked<T: DataType>(&self, pt: Point) -> Result<&T>
unsafe fn at_pt_unchecked<T: DataType>(&self, pt: Point) -> Result<&T>
Like
Mat::at_pt()
but performs no bounds or type checks Read moresource§unsafe fn at_3d_unchecked<T: DataType>(
&self,
i0: i32,
i1: i32,
i2: i32
) -> Result<&T>
unsafe fn at_3d_unchecked<T: DataType>( &self, i0: i32, i1: i32, i2: i32 ) -> Result<&T>
Like
Mat::at_3d()
but performs no bounds or type checks Read moresource§unsafe fn at_nd_unchecked<T: DataType>(&self, idx: &[i32]) -> Result<&T>
unsafe fn at_nd_unchecked<T: DataType>(&self, idx: &[i32]) -> Result<&T>
Like
Mat::at_nd()
but performs no bounds or type checks Read moresource§unsafe fn at_row_unchecked<T: DataType>(&self, row: i32) -> Result<&[T]>
unsafe fn at_row_unchecked<T: DataType>(&self, row: i32) -> Result<&[T]>
Like
Mat::at_row()
but performs no bounds or type checks Read morefn is_allocated(&self) -> bool
source§fn data_bytes(&self) -> Result<&[u8]>
fn data_bytes(&self) -> Result<&[u8]>
Returns underlying data array as byte slice,
Mat
must be continuousfn data_typed<T: DataType>(&self) -> Result<&[T]>
fn to_vec_2d<T: DataType>(&self) -> Result<Vec<Vec<T>>>
source§fn iter<T: DataType>(&self) -> Result<MatIter<'_, T>>where
Self: Sized,
fn iter<T: DataType>(&self) -> Result<MatIter<'_, T>>where
Self: Sized,
Returns an iterator over
Mat
elements and their positionsfn try_into_typed<T: DataType>(self) -> Result<Mat_<T>>
source§impl<T> MatTraitManual for T
impl<T> MatTraitManual for T
source§unsafe fn at_unchecked_mut<T: DataType>(&mut self, i0: i32) -> Result<&mut T>
unsafe fn at_unchecked_mut<T: DataType>(&mut self, i0: i32) -> Result<&mut T>
Like
Mat::at_mut()
but performs no bounds or type checks Read moresource§unsafe fn at_2d_unchecked_mut<T: DataType>(
&mut self,
row: i32,
col: i32
) -> Result<&mut T>
unsafe fn at_2d_unchecked_mut<T: DataType>( &mut self, row: i32, col: i32 ) -> Result<&mut T>
Like
Mat::at_2d_mut()
but performs no bounds or type checks Read moresource§unsafe fn at_pt_unchecked_mut<T: DataType>(
&mut self,
pt: Point
) -> Result<&mut T>
unsafe fn at_pt_unchecked_mut<T: DataType>( &mut self, pt: Point ) -> Result<&mut T>
Like
Mat::at_pt_mut()
but performs no bounds or type checks Read moresource§unsafe fn at_3d_unchecked_mut<T: DataType>(
&mut self,
i0: i32,
i1: i32,
i2: i32
) -> Result<&mut T>
unsafe fn at_3d_unchecked_mut<T: DataType>( &mut self, i0: i32, i1: i32, i2: i32 ) -> Result<&mut T>
Like
Mat::at_3d_mut()
but performs no bounds or type checks Read moresource§unsafe fn at_nd_unchecked_mut<T: DataType>(
&mut self,
idx: &[i32]
) -> Result<&mut T>
unsafe fn at_nd_unchecked_mut<T: DataType>( &mut self, idx: &[i32] ) -> Result<&mut T>
Like
Mat::at_nd_mut()
but performs no bounds or type checks Read moresource§fn at_row_mut<T: DataType>(&mut self, row: i32) -> Result<&mut [T]>
fn at_row_mut<T: DataType>(&mut self, row: i32) -> Result<&mut [T]>
Return a complete writeable row
source§unsafe fn at_row_unchecked_mut<T: DataType>(
&mut self,
row: i32
) -> Result<&mut [T]>
unsafe fn at_row_unchecked_mut<T: DataType>( &mut self, row: i32 ) -> Result<&mut [T]>
Like
Mat::at_row_mut()
but performs no bounds or type checks Read moresource§fn data_bytes_mut(&mut self) -> Result<&mut [u8]>
fn data_bytes_mut(&mut self) -> Result<&mut [u8]>
Returns underlying data array as mutable byte slice, Mat must be continuous.
fn data_typed_mut<T: DataType>(&mut self) -> Result<&mut [T]>
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 of course unsafe as it breaks the Rust aliasing rules, but it might be useful for some performance
sensitive operations. One example of an OpenCV function that allows such in-place modification is imgproc::threshold
. Read more