Struct opencv::cudastereo::CUDA_StereoConstantSpaceBP

source ·
pub struct CUDA_StereoConstantSpaceBP { /* private fields */ }
Expand description

Class computing stereo correspondence using the constant space belief propagation algorithm. :

The class implements algorithm described in Yang2010 . StereoConstantSpaceBP supports both local minimum and global minimum data cost initialization algorithms. For more details, see the paper mentioned above. By default, a local algorithm is used. To enable a global algorithm, set use_local_init_data_cost to false .

StereoConstantSpaceBP uses a truncated linear model for the data cost and discontinuity terms:

block formula

block formula

For more details, see Yang2010 .

By default, StereoConstantSpaceBP uses floating-point arithmetics and the CV_32FC1 type for messages. But it can also use fixed-point arithmetics and the CV_16SC1 message type for better performance. To avoid an overflow in this case, the parameters must satisfy the following requirement:

block formula

Implementations§

source§

impl CUDA_StereoConstantSpaceBP

Uses a heuristic method to compute parameters (ndisp, iters, levelsand nrplane) for the specified image size (widthand height).

Trait Implementations§

source§

impl AlgorithmTrait for CUDA_StereoConstantSpaceBP

source§

fn as_raw_mut_Algorithm(&mut self) -> *mut c_void

source§

fn clear(&mut self) -> Result<()>

Clears the algorithm state
source§

fn read(&mut self, fn_: &impl FileNodeTraitConst) -> Result<()>

Reads algorithm parameters from a file storage
source§

impl AlgorithmTraitConst for CUDA_StereoConstantSpaceBP

source§

fn as_raw_Algorithm(&self) -> *const c_void

source§

fn write(&self, fs: &mut impl FileStorageTrait) -> Result<()>

Stores algorithm parameters in a file storage
source§

fn write_1(&self, fs: &mut impl FileStorageTrait, name: &str) -> Result<()>

Stores algorithm parameters in a file storage Read more
source§

fn write_with_name(&self, fs: &Ptr<FileStorage>, name: &str) -> Result<()>

@deprecated Read more
source§

fn write_with_name_def(&self, fs: &Ptr<FileStorage>) -> Result<()>

👎Deprecated:

§Note

Deprecated: ## Note This alternative version of AlgorithmTraitConst::write_with_name function uses the following default values for its arguments: Read more
source§

fn empty(&self) -> Result<bool>

Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read
source§

fn save(&self, filename: &str) -> Result<()>

Saves the algorithm to a file. In order to make this method work, the derived class must implement Algorithm::write(FileStorage& fs).
source§

fn get_default_name(&self) -> Result<String>

Returns the algorithm string identifier. This string is used as top level xml/yml node tag when the object is saved to a file or string.
source§

impl Boxed for CUDA_StereoConstantSpaceBP

source§

unsafe fn from_raw( ptr: <CUDA_StereoConstantSpaceBP as OpenCVFromExtern>::ExternReceive, ) -> Self

Wrap the specified raw pointer Read more
source§

fn into_raw( self, ) -> <CUDA_StereoConstantSpaceBP as OpenCVTypeExternContainer>::ExternSendMut

Return the underlying raw pointer while consuming this wrapper. Read more
source§

fn as_raw( &self, ) -> <CUDA_StereoConstantSpaceBP as OpenCVTypeExternContainer>::ExternSend

Return the underlying raw pointer. Read more
source§

fn as_raw_mut( &mut self, ) -> <CUDA_StereoConstantSpaceBP as OpenCVTypeExternContainer>::ExternSendMut

Return the underlying mutable raw pointer Read more
source§

impl CUDA_StereoBeliefPropagationTrait for CUDA_StereoConstantSpaceBP

source§

fn as_raw_mut_CUDA_StereoBeliefPropagation(&mut self) -> *mut c_void

source§

fn compute( &mut self, left: &impl ToInputArray, right: &impl ToInputArray, disparity: &mut impl ToOutputArray, stream: &mut impl StreamTrait, ) -> Result<()>

Enables the stereo correspondence operator that finds the disparity for the specified data cost. Read more
source§

fn compute_1( &mut self, data: &impl ToInputArray, disparity: &mut impl ToOutputArray, stream: &mut impl StreamTrait, ) -> Result<()>

Enables the stereo correspondence operator that finds the disparity for the specified data cost. Read more
source§

fn compute_def( &mut self, data: &impl ToInputArray, disparity: &mut impl ToOutputArray, ) -> Result<()>

Enables the stereo correspondence operator that finds the disparity for the specified data cost. Read more
source§

fn set_num_iters(&mut self, iters: i32) -> Result<()>

source§

fn set_num_levels(&mut self, levels: i32) -> Result<()>

source§

fn set_max_data_term(&mut self, max_data_term: f64) -> Result<()>

source§

fn set_data_weight(&mut self, data_weight: f64) -> Result<()>

source§

fn set_max_disc_term(&mut self, max_disc_term: f64) -> Result<()>

source§

fn set_disc_single_jump(&mut self, disc_single_jump: f64) -> Result<()>

source§

fn set_msg_type(&mut self, msg_type: i32) -> Result<()>

source§

impl CUDA_StereoBeliefPropagationTraitConst for CUDA_StereoConstantSpaceBP

source§

fn as_raw_CUDA_StereoBeliefPropagation(&self) -> *const c_void

source§

fn get_num_iters(&self) -> Result<i32>

number of BP iterations on each level
source§

fn get_num_levels(&self) -> Result<i32>

number of levels
source§

fn get_max_data_term(&self) -> Result<f64>

truncation of data cost
source§

fn get_data_weight(&self) -> Result<f64>

data weight
source§

fn get_max_disc_term(&self) -> Result<f64>

truncation of discontinuity cost
source§

fn get_disc_single_jump(&self) -> Result<f64>

discontinuity single jump
source§

fn get_msg_type(&self) -> Result<i32>

type for messages (CV_16SC1 or CV_32FC1)
source§

impl CUDA_StereoConstantSpaceBPTrait for CUDA_StereoConstantSpaceBP

source§

fn as_raw_mut_CUDA_StereoConstantSpaceBP(&mut self) -> *mut c_void

source§

fn set_nr_plane(&mut self, nr_plane: i32) -> Result<()>

source§

fn set_use_local_init_data_cost( &mut self, use_local_init_data_cost: bool, ) -> Result<()>

source§

impl CUDA_StereoConstantSpaceBPTraitConst for CUDA_StereoConstantSpaceBP

source§

fn as_raw_CUDA_StereoConstantSpaceBP(&self) -> *const c_void

source§

fn get_nr_plane(&self) -> Result<i32>

number of active disparity on the first level
source§

fn get_use_local_init_data_cost(&self) -> Result<bool>

source§

impl Debug for CUDA_StereoConstantSpaceBP

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Drop for CUDA_StereoConstantSpaceBP

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl From<CUDA_StereoConstantSpaceBP> for Algorithm

source§

fn from(s: CUDA_StereoConstantSpaceBP) -> Self

Converts to this type from the input type.
source§

impl From<CUDA_StereoConstantSpaceBP> for CUDA_StereoBeliefPropagation

source§

fn from(s: CUDA_StereoConstantSpaceBP) -> Self

Converts to this type from the input type.
source§

impl From<CUDA_StereoConstantSpaceBP> for StereoMatcher

source§

fn from(s: CUDA_StereoConstantSpaceBP) -> Self

Converts to this type from the input type.
source§

impl StereoMatcherTrait for CUDA_StereoConstantSpaceBP

source§

fn as_raw_mut_StereoMatcher(&mut self) -> *mut c_void

source§

fn compute( &mut self, left: &impl ToInputArray, right: &impl ToInputArray, disparity: &mut impl ToOutputArray, ) -> Result<()>

Computes disparity map for the specified stereo pair Read more
source§

fn set_min_disparity(&mut self, min_disparity: i32) -> Result<()>

source§

fn set_num_disparities(&mut self, num_disparities: i32) -> Result<()>

source§

fn set_block_size(&mut self, block_size: i32) -> Result<()>

source§

fn set_speckle_window_size(&mut self, speckle_window_size: i32) -> Result<()>

source§

fn set_speckle_range(&mut self, speckle_range: i32) -> Result<()>

source§

fn set_disp12_max_diff(&mut self, disp12_max_diff: i32) -> Result<()>

source§

impl StereoMatcherTraitConst for CUDA_StereoConstantSpaceBP

source§

impl TryFrom<CUDA_StereoBeliefPropagation> for CUDA_StereoConstantSpaceBP

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(s: CUDA_StereoBeliefPropagation) -> Result<Self>

Performs the conversion.
source§

impl Send for CUDA_StereoConstantSpaceBP

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Mat> ModifyInplace for Mat
where Mat: Boxed,

source§

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
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.