#[non_exhaustive]pub struct ChessParams {
pub use_radius10: bool,
pub threshold: f32,
pub nms_radius: u32,
pub min_cluster_size: u32,
pub refiner: RefinerKind,
pub orientation_method: Option<OrientationMethod>,
}Expand description
Low-level ChESS detection parameters consumed by the response and
detection stages. The chess-corners facade lowers its
DetectorConfig onto this type; depend on it directly when driving
the response and detection stages without going through the facade.
Tunable parameters for the ChESS response computation and corner detection.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.use_radius10: boolUse the larger r=10 ring instead of the canonical r=5.
threshold: f32Absolute response floor: a corner is kept when its raw ChESS
response exceeds this value (strict >). 0.0 accepts every
strictly-positive response — the paper’s contract.
nms_radius: u32Non-maximum suppression radius (in pixels).
min_cluster_size: u32Minimum count of positive-response neighbors in NMS window to accept a corner (rejects isolated noise).
refiner: RefinerKindSubpixel refinement backend and its configuration. Defaults to center-of-mass on the response map.
orientation_method: Option<OrientationMethod>Orientation-fit method used to estimate the two grid axes at
each detected corner, or None to skip the fit entirely (every
descriptor then carries axes: None). Default
Some(OrientationMethod::RingFit) fits the parametric
two-axis model with robust seeding and calibrated per-axis
uncertainties.
Implementations§
Source§impl ChessParams
impl ChessParams
Sourcepub const DEFAULT_NMS_RADIUS: u32 = 2
pub const DEFAULT_NMS_RADIUS: u32 = 2
Default non-maximum-suppression half-radius, in pixels. Single
source of truth shared with the chess-corners facade’s
DetectionParams default.
Sourcepub const DEFAULT_MIN_CLUSTER_SIZE: u32 = 2
pub const DEFAULT_MIN_CLUSTER_SIZE: u32 = 2
Default minimum count of positive-response neighbours required to
accept a cluster. Single source of truth shared with the
chess-corners facade’s DetectionParams default.
Sourcepub fn ring_radius(&self) -> u32
pub fn ring_radius(&self) -> u32
Ring radius in pixels selected by Self::use_radius10: 10
when set, 5 otherwise.
Trait Implementations§
Source§impl Clone for ChessParams
impl Clone for ChessParams
Source§fn clone(&self) -> ChessParams
fn clone(&self) -> ChessParams
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ChessParams
impl Debug for ChessParams
Source§impl Default for ChessParams
impl Default for ChessParams
Source§impl<'de> Deserialize<'de> for ChessParamswhere
ChessParams: Default,
impl<'de> Deserialize<'de> for ChessParamswhere
ChessParams: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for ChessParams
impl PartialEq for ChessParams
Source§fn eq(&self, other: &ChessParams) -> bool
fn eq(&self, other: &ChessParams) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for ChessParams
impl Serialize for ChessParams
impl StructuralPartialEq for ChessParams
Auto Trait Implementations§
impl Freeze for ChessParams
impl RefUnwindSafe for ChessParams
impl Send for ChessParams
impl Sync for ChessParams
impl Unpin for ChessParams
impl UnsafeUnpin for ChessParams
impl UnwindSafe for ChessParams
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more