find_planar_calib_deformable_modelT_find_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model (Operator)

Name

find_planar_calib_deformable_modelT_find_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model — Suche nach den besten Matches eines kalibrierten, deformierbaren Modells in einem Bild und bestimme ihre 3D Lage.

Signatur

find_planar_calib_deformable_model(Image : : ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, NumLevels, Greediness, GenParamName, GenParamValue : Pose, CovPose, Score)

Herror T_find_planar_calib_deformable_model(const Hobject Image, const Htuple ModelID, const Htuple AngleStart, const Htuple AngleExtent, const Htuple ScaleRMin, const Htuple ScaleRMax, const Htuple ScaleCMin, const Htuple ScaleCMax, const Htuple MinScore, const Htuple NumMatches, const Htuple MaxOverlap, const Htuple NumLevels, const Htuple Greediness, const Htuple GenParamName, const Htuple GenParamValue, Htuple* Pose, Htuple* CovPose, Htuple* Score)

void FindPlanarCalibDeformableModel(const HObject& Image, const HTuple& ModelID, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleCMin, const HTuple& ScaleCMax, const HTuple& MinScore, const HTuple& NumMatches, const HTuple& MaxOverlap, const HTuple& NumLevels, const HTuple& Greediness, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* Pose, HTuple* CovPose, HTuple* Score)

HPoseArray HDeformableModel::FindPlanarCalibDeformableModel(const HImage& Image, double AngleStart, double AngleExtent, double ScaleRMin, double ScaleRMax, double ScaleCMin, double ScaleCMax, double MinScore, Hlong NumMatches, double MaxOverlap, const HTuple& NumLevels, double Greediness, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* CovPose, HTuple* Score) const

HPose HDeformableModel::FindPlanarCalibDeformableModel(const HImage& Image, double AngleStart, double AngleExtent, double ScaleRMin, double ScaleRMax, double ScaleCMin, double ScaleCMax, double MinScore, Hlong NumMatches, double MaxOverlap, Hlong NumLevels, double Greediness, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* CovPose, HTuple* Score) const

HPoseArray HImage::FindPlanarCalibDeformableModel(const HDeformableModel& ModelID, double AngleStart, double AngleExtent, double ScaleRMin, double ScaleRMax, double ScaleCMin, double ScaleCMax, double MinScore, Hlong NumMatches, double MaxOverlap, const HTuple& NumLevels, double Greediness, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* CovPose, HTuple* Score) const

HPose HImage::FindPlanarCalibDeformableModel(const HDeformableModel& ModelID, double AngleStart, double AngleExtent, double ScaleRMin, double ScaleRMax, double ScaleCMin, double ScaleCMax, double MinScore, Hlong NumMatches, double MaxOverlap, Hlong NumLevels, double Greediness, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* CovPose, HTuple* Score) const

static void HOperatorSet.FindPlanarCalibDeformableModel(HObject image, HTuple modelID, HTuple angleStart, HTuple angleExtent, HTuple scaleRMin, HTuple scaleRMax, HTuple scaleCMin, HTuple scaleCMax, HTuple minScore, HTuple numMatches, HTuple maxOverlap, HTuple numLevels, HTuple greediness, HTuple genParamName, HTuple genParamValue, out HTuple pose, out HTuple covPose, out HTuple score)

HPose[] HDeformableModel.FindPlanarCalibDeformableModel(HImage image, double angleStart, double angleExtent, double scaleRMin, double scaleRMax, double scaleCMin, double scaleCMax, double minScore, int numMatches, double maxOverlap, HTuple numLevels, double greediness, HTuple genParamName, HTuple genParamValue, out HTuple covPose, out HTuple score)

HPose HDeformableModel.FindPlanarCalibDeformableModel(HImage image, double angleStart, double angleExtent, double scaleRMin, double scaleRMax, double scaleCMin, double scaleCMax, double minScore, int numMatches, double maxOverlap, int numLevels, double greediness, HTuple genParamName, HTuple genParamValue, out HTuple covPose, out HTuple score)

HPose[] HImage.FindPlanarCalibDeformableModel(HDeformableModel modelID, double angleStart, double angleExtent, double scaleRMin, double scaleRMax, double scaleCMin, double scaleCMax, double minScore, int numMatches, double maxOverlap, HTuple numLevels, double greediness, HTuple genParamName, HTuple genParamValue, out HTuple covPose, out HTuple score)

HPose HImage.FindPlanarCalibDeformableModel(HDeformableModel modelID, double angleStart, double angleExtent, double scaleRMin, double scaleRMax, double scaleCMin, double scaleCMax, double minScore, int numMatches, double maxOverlap, int numLevels, double greediness, HTuple genParamName, HTuple genParamValue, out HTuple covPose, out HTuple score)

def find_planar_calib_deformable_model(image: HObject, model_id: HHandle, angle_start: float, angle_extent: float, scale_rmin: float, scale_rmax: float, scale_cmin: float, scale_cmax: float, min_score: float, num_matches: int, max_overlap: float, num_levels: MaybeSequence[int], greediness: float, gen_param_name: Sequence[str], gen_param_value: Sequence[Union[int, float, str]]) -> Tuple[Sequence[Union[float, int]], Sequence[float], Sequence[float]]

Beschreibung

Der Operator find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model findet die besten NumMatchesNumMatchesNumMatchesNumMatchesnumMatchesnum_matches Instanzen eines projektiv verzerrten, deformierbaren Modells ModelIDModelIDModelIDModelIDmodelIDmodel_id im Suchbild ImageImageImageImageimageimage. Das Modell muss vorher durch Aufruf von create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModelcreate_planar_calib_deformable_model oder read_deformable_modelread_deformable_modelReadDeformableModelReadDeformableModelReadDeformableModelread_deformable_model erzeugt worden sein. Der Operator find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model liefert die 3D Lage PosePosePosePoseposepose der gefundenen Instanzen im Kamerakoordinatensystem zurück.

Zusätzlich zu der Pose wird die Genauigkeit der sechs Positionsparameter in CovPoseCovPoseCovPoseCovPosecovPosecov_pose zurückgeliefert. Normalerweise enthält CovPoseCovPoseCovPoseCovPosecovPosecov_pose die 6 Standardabweichungen der Pose Parameter für jeden Match. Falls der Parameter 'cov_pose_mode'"cov_pose_mode""cov_pose_mode""cov_pose_mode""cov_pose_mode""cov_pose_mode" auf 'covariances'"covariances""covariances""covariances""covariances""covariances" gesetzt wurde, enthält CovPoseCovPoseCovPoseCovPosecovPosecov_pose die 36 Werte der gesamten 6×6 Kovarianzmatrix der 6 Positionsparameter. Es ist zu beachten das dies nur die innere Genauigkeit darstellt und sie deshalb von der echten Genauigkeit abweichen kann. Schließlich wird eine Bewertung für jede Instanz in ScoreScoreScoreScorescorescore zurückgegeben. Die Bewertung ist eine Zahl zwischen 0 und 1, was eine angenäherte Messung ist, und beschreibt wie viel des Modells im Bild sichtbar ist.

Für eine weitere Erklärung des planaren, deformierbaren Modells und seiner Parameter sei auf die Beschreibung in find_planar_uncalib_deformable_modelfind_planar_uncalib_deformable_modelFindPlanarUncalibDeformableModelFindPlanarUncalibDeformableModelFindPlanarUncalibDeformableModelfind_planar_uncalib_deformable_model verwiesen.

Ausführungsinformationen

Parameter

ImageImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHImageHobject (byte / uint2)

Eingabebild, in dem das Modell gefunden werden soll.

ModelIDModelIDModelIDModelIDmodelIDmodel_id (input_control)  deformable_model HDeformableModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Modells.

AngleStartAngleStartAngleStartAngleStartangleStartangle_start (input_control)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

Kleinste auftretende Rotation des Modells.

Defaultwert: -0.39

Wertevorschläge: -3.14, -1.57, -0.78, -0.39, -0.20, 0.0

AngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent (input_control)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

Ausdehnung des Winkelbereichs.

Defaultwert: 0.78

Wertevorschläge: 6.29, 3.14, 1.57, 0.78, 0.39, 0.0

Restriktion: AngleExtent >= 0

ScaleRMinScaleRMinScaleRMinScaleRMinscaleRMinscale_rmin (input_control)  number HTuplefloatHTupleHtuple (real) (double) (double) (double)

Kleinste auftretende Skalierung des Modells in Zeilenrichtung.

Defaultwert: 1.0

Wertevorschläge: 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriktion: ScaleRMin > 0

ScaleRMaxScaleRMaxScaleRMaxScaleRMaxscaleRMaxscale_rmax (input_control)  number HTuplefloatHTupleHtuple (real) (double) (double) (double)

Größte auftretende Skalierung des Modells in Zeilenrichtung.

Defaultwert: 1.0

Wertevorschläge: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

Restriktion: ScaleRMax >= ScaleRMin

ScaleCMinScaleCMinScaleCMinScaleCMinscaleCMinscale_cmin (input_control)  number HTuplefloatHTupleHtuple (real) (double) (double) (double)

Kleinste auftretende Skalierung des Modells in Spaltenrichtung.

Defaultwert: 1.0

Wertevorschläge: 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriktion: ScaleCMin > 0

ScaleCMaxScaleCMaxScaleCMaxScaleCMaxscaleCMaxscale_cmax (input_control)  number HTuplefloatHTupleHtuple (real) (double) (double) (double)

Größte auftretende Skalierung des Modells in Spaltenrichtung.

Defaultwert: 1.0

Wertevorschläge: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

Restriktion: ScaleCMax >= ScaleCMin

MinScoreMinScoreMinScoreMinScoreminScoremin_score (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Minimale Bewertung der zu findenden Instanzen des Modells.

Defaultwert: 0.5

Wertevorschläge: 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Typischer Wertebereich: 0 ≤ MinScore MinScore MinScore MinScore minScore min_score ≤ 1

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 0.05

NumMatchesNumMatchesNumMatchesNumMatchesnumMatchesnum_matches (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl der zu findenden Instanzen des Modells (oder 0 für alle Treffer).

Defaultwert: 1

Wertevorschläge: 0, 1, 2, 3, 4, 5, 10, 20

MaxOverlapMaxOverlapMaxOverlapMaxOverlapmaxOverlapmax_overlap (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Maximale Überlappung der zu findenden Instanzen des Modells.

Defaultwert: 1.0

Wertevorschläge: 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Typischer Wertebereich: 0 ≤ MaxOverlap MaxOverlap MaxOverlap MaxOverlap maxOverlap max_overlap ≤ 1

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 0.05

NumLevelsNumLevelsNumLevelsNumLevelsnumLevelsnum_levels (input_control)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl der verwendeten Pyramidenebenen (und unterste zu verwendende Pyramidenebene falls |NumLevelsNumLevelsNumLevelsNumLevelsnumLevelsnum_levels| = 2).

Defaultwert: 0

Werteliste: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

GreedinessGreedinessGreedinessGreedinessgreedinessgreediness (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

„Gierigkeit“ der Suchheuristik (0: sicher aber langsam; 1: schnell, aber Matches können „übersehen“ werden).

Defaultwert: 0.9

Wertevorschläge: 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Typischer Wertebereich: 0 ≤ Greediness Greediness Greediness Greediness greediness greediness ≤ 1

Minimale Schrittweite: 0.01

Empfohlene Schrittweite: 0.05

GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (input_control)  string-array HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)

Namen der allgemeinen Parameter.

Defaultwert: []

Werteliste: [], 'angle_change_restriction'"angle_change_restriction""angle_change_restriction""angle_change_restriction""angle_change_restriction""angle_change_restriction", 'angle_step'"angle_step""angle_step""angle_step""angle_step""angle_step", 'aniso_scale_change_restriction'"aniso_scale_change_restriction""aniso_scale_change_restriction""aniso_scale_change_restriction""aniso_scale_change_restriction""aniso_scale_change_restriction", 'cov_pose_mode'"cov_pose_mode""cov_pose_mode""cov_pose_mode""cov_pose_mode""cov_pose_mode", 'scale_c_step'"scale_c_step""scale_c_step""scale_c_step""scale_c_step""scale_c_step", 'scale_r_step'"scale_r_step""scale_r_step""scale_r_step""scale_r_step""scale_r_step", 'subpixel'"subpixel""subpixel""subpixel""subpixel""subpixel"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (input_control)  integer-array HTupleSequence[Union[int, float, str]]HTupleHtuple (integer / real / string) (int / long / double / string) (Hlong / double / HString) (Hlong / double / char*)

Werte der allgemeinen Parameter.

Defaultwert: []

Werteliste: [], 'covariances'"covariances""covariances""covariances""covariances""covariances", 'least_squares'"least_squares""least_squares""least_squares""least_squares""least_squares", 'least_squares_high'"least_squares_high""least_squares_high""least_squares_high""least_squares_high""least_squares_high", 'least_squares_very_high'"least_squares_very_high""least_squares_very_high""least_squares_very_high""least_squares_very_high""least_squares_very_high", 'standard_deviations'"standard_deviations""standard_deviations""standard_deviations""standard_deviations""standard_deviations"

PosePosePosePoseposepose (output_control)  pose(-array) HPose, HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Pose des Objekts.

CovPoseCovPoseCovPoseCovPosecovPosecov_pose (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

6 Standardabweichungen bzw. 36 Kovarianzen der Poseparameter.

ScoreScoreScoreScorescorescore (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Bewertung der gefundenen Instanzen des Modells.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModelfind_planar_calib_deformable_model den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModelcreate_planar_calib_deformable_model, read_deformable_modelread_deformable_modelReadDeformableModelReadDeformableModelReadDeformableModelread_deformable_model

Modul

Matching