pub trait LineSegmentDetectorTrait: AlgorithmTrait + LineSegmentDetectorTraitConst {
// Required method
fn as_raw_mut_LineSegmentDetector(&mut self) -> *mut c_void;
// Provided methods
fn detect(
&mut self,
image: &impl ToInputArray,
lines: &mut impl ToOutputArray,
width: &mut impl ToOutputArray,
prec: &mut impl ToOutputArray,
nfa: &mut impl ToOutputArray,
) -> Result<()> { ... }
fn detect_def(
&mut self,
image: &impl ToInputArray,
lines: &mut impl ToOutputArray,
) -> Result<()> { ... }
fn draw_segments(
&mut self,
image: &mut impl ToInputOutputArray,
lines: &impl ToInputArray,
) -> Result<()> { ... }
fn compare_segments(
&mut self,
size: Size,
lines1: &impl ToInputArray,
lines2: &impl ToInputArray,
image: &mut impl ToInputOutputArray,
) -> Result<i32> { ... }
fn compare_segments_def(
&mut self,
size: Size,
lines1: &impl ToInputArray,
lines2: &impl ToInputArray,
) -> Result<i32> { ... }
}
Expand description
Mutable methods for crate::imgproc::LineSegmentDetector
Required Methods§
fn as_raw_mut_LineSegmentDetector(&mut self) -> *mut c_void
Provided Methods§
Sourcefn detect(
&mut self,
image: &impl ToInputArray,
lines: &mut impl ToOutputArray,
width: &mut impl ToOutputArray,
prec: &mut impl ToOutputArray,
nfa: &mut impl ToOutputArray,
) -> Result<()>
fn detect( &mut self, image: &impl ToInputArray, lines: &mut impl ToOutputArray, width: &mut impl ToOutputArray, prec: &mut impl ToOutputArray, nfa: &mut impl ToOutputArray, ) -> Result<()>
Finds lines in the input image.
This is the output of the default parameters of the algorithm on the above shown image.
§Parameters
- image: A grayscale (CV_8UC1) input image. If only a roi needs to be selected, use:
lsd_ptr-\>detect(image(roi), lines, ...); lines += Scalar(roi.x, roi.y, roi.x, roi.y);
- lines: A vector of Vec4f elements specifying the beginning and ending point of a line. Where Vec4f is (x1, y1, x2, y2), point 1 is the start, point 2 - end. Returned lines are strictly oriented depending on the gradient.
- width: Vector of widths of the regions, where the lines are found. E.g. Width of line.
- prec: Vector of precisions with which the lines are found.
- nfa: Vector containing number of false alarms in the line region, with precision of 10%. The bigger the value, logarithmically better the detection.
- -1 corresponds to 10 mean false alarms
- 0 corresponds to 1 mean false alarm
- 1 corresponds to 0.1 mean false alarms This vector will be calculated only when the objects type is #LSD_REFINE_ADV.
§C++ default parameters
- width: noArray()
- prec: noArray()
- nfa: noArray()
Sourcefn detect_def(
&mut self,
image: &impl ToInputArray,
lines: &mut impl ToOutputArray,
) -> Result<()>
fn detect_def( &mut self, image: &impl ToInputArray, lines: &mut impl ToOutputArray, ) -> Result<()>
Finds lines in the input image.
This is the output of the default parameters of the algorithm on the above shown image.
§Parameters
- image: A grayscale (CV_8UC1) input image. If only a roi needs to be selected, use:
lsd_ptr-\>detect(image(roi), lines, ...); lines += Scalar(roi.x, roi.y, roi.x, roi.y);
- lines: A vector of Vec4f elements specifying the beginning and ending point of a line. Where Vec4f is (x1, y1, x2, y2), point 1 is the start, point 2 - end. Returned lines are strictly oriented depending on the gradient.
- width: Vector of widths of the regions, where the lines are found. E.g. Width of line.
- prec: Vector of precisions with which the lines are found.
- nfa: Vector containing number of false alarms in the line region, with precision of 10%. The bigger the value, logarithmically better the detection.
- -1 corresponds to 10 mean false alarms
- 0 corresponds to 1 mean false alarm
- 1 corresponds to 0.1 mean false alarms This vector will be calculated only when the objects type is #LSD_REFINE_ADV.
§Note
This alternative version of LineSegmentDetectorTrait::detect function uses the following default values for its arguments:
- width: noArray()
- prec: noArray()
- nfa: noArray()
Sourcefn draw_segments(
&mut self,
image: &mut impl ToInputOutputArray,
lines: &impl ToInputArray,
) -> Result<()>
fn draw_segments( &mut self, image: &mut impl ToInputOutputArray, lines: &impl ToInputArray, ) -> Result<()>
Draws the line segments on a given image.
§Parameters
- image: The image, where the lines will be drawn. Should be bigger or equal to the image, where the lines were found.
- lines: A vector of the lines that needed to be drawn.
Sourcefn compare_segments(
&mut self,
size: Size,
lines1: &impl ToInputArray,
lines2: &impl ToInputArray,
image: &mut impl ToInputOutputArray,
) -> Result<i32>
fn compare_segments( &mut self, size: Size, lines1: &impl ToInputArray, lines2: &impl ToInputArray, image: &mut impl ToInputOutputArray, ) -> Result<i32>
Draws two groups of lines in blue and red, counting the non overlapping (mismatching) pixels.
§Parameters
- size: The size of the image, where lines1 and lines2 were found.
- lines1: The first group of lines that needs to be drawn. It is visualized in blue color.
- lines2: The second group of lines. They visualized in red color.
- image: Optional image, where the lines will be drawn. The image should be color(3-channel) in order for lines1 and lines2 to be drawn in the above mentioned colors.
§C++ default parameters
- image: noArray()
Sourcefn compare_segments_def(
&mut self,
size: Size,
lines1: &impl ToInputArray,
lines2: &impl ToInputArray,
) -> Result<i32>
fn compare_segments_def( &mut self, size: Size, lines1: &impl ToInputArray, lines2: &impl ToInputArray, ) -> Result<i32>
Draws two groups of lines in blue and red, counting the non overlapping (mismatching) pixels.
§Parameters
- size: The size of the image, where lines1 and lines2 were found.
- lines1: The first group of lines that needs to be drawn. It is visualized in blue color.
- lines2: The second group of lines. They visualized in red color.
- image: Optional image, where the lines will be drawn. The image should be color(3-channel) in order for lines1 and lines2 to be drawn in the above mentioned colors.
§Note
This alternative version of LineSegmentDetectorTrait::compare_segments function uses the following default values for its arguments:
- image: noArray()
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.