HALCON Reference Manual 10.0.2
Table of Contents / Matching / Deformable ClassesClassesClasses | | | Operators

find_planar_calib_deformable_modelT_find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModel (Operator)

Name

find_planar_calib_deformable_modelT_find_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModel — Find the best matches of a calibrated deformable model in an image and return their 3D pose.

Signature

find_planar_calib_deformable_model(Image : : ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, NumLevels, Greediness, ParamName, ParamValue : 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 ParamName, const Htuple ParamValue, Htuple* Pose, Htuple* CovPose, Htuple* Score)

Herror find_planar_calib_deformable_model(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& ParamName, const HTuple& ParamValue, HTuple* Pose, HTuple* CovPose, HTuple* Score)

HTuple HImage::FindPlanarCalibDeformableModel(const HDeformableModel& 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& ParamName, const HTuple& ParamValue, HTuple* CovPose, HTuple* Score) const

HTuple HDeformableModel::FindPlanarCalibDeformableModel(const HImage& Image, 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& ParamName, const HTuple& ParamValue, HTuple* CovPose, HTuple* Score) const

void HOperatorSetX.FindPlanarCalibDeformableModel(
[in] IHUntypedObjectX* Image, [in] VARIANT ModelID, [in] VARIANT AngleStart, [in] VARIANT AngleExtent, [in] VARIANT ScaleRMin, [in] VARIANT ScaleRMax, [in] VARIANT ScaleCMin, [in] VARIANT ScaleCMax, [in] VARIANT MinScore, [in] VARIANT NumMatches, [in] VARIANT MaxOverlap, [in] VARIANT NumLevels, [in] VARIANT Greediness, [in] VARIANT ParamName, [in] VARIANT ParamValue, [out] VARIANT* Pose, [out] VARIANT* CovPose, [out] VARIANT* Score)

VARIANT HDeformableModelX.FindPlanarCalibDeformableModel(
[in] IHImageX* Image, [in] double AngleStart, [in] double AngleExtent, [in] double ScaleRMin, [in] double ScaleRMax, [in] double ScaleCMin, [in] double ScaleCMax, [in] double MinScore, [in] Hlong NumMatches, [in] double MaxOverlap, [in] VARIANT NumLevels, [in] double Greediness, [in] VARIANT ParamName, [in] VARIANT ParamValue, [out] VARIANT* CovPose, [out] VARIANT* Score)

VARIANT HImageX.FindPlanarCalibDeformableModel(
[in] IHDeformableModelX* ModelID, [in] double AngleStart, [in] double AngleExtent, [in] double ScaleRMin, [in] double ScaleRMax, [in] double ScaleCMin, [in] double ScaleCMax, [in] double MinScore, [in] Hlong NumMatches, [in] double MaxOverlap, [in] VARIANT NumLevels, [in] double Greediness, [in] VARIANT ParamName, [in] VARIANT ParamValue, [out] VARIANT* CovPose, [out] VARIANT* Score)

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 paramName, HTuple paramValue, 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 paramName, HTuple paramValue, 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 paramName, HTuple paramValue, 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 paramName, HTuple paramValue, 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 paramName, HTuple paramValue, out HTuple covPose, out HTuple score)

Description

The operator find_planar_calib_deformable_modelfind_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModel finds the best NumMatchesNumMatchesNumMatchesNumMatchesnumMatches instances of the calibrated deformable model ModelIDModelIDModelIDModelIDmodelID in the input image ImageImageImageImageimage. The model must have been created previously by calling create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModel or read_deformable_modelread_deformable_modelread_deformable_modelReadDeformableModelReadDeformableModel. The operator find_planar_calib_deformable_modelfind_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModel returns the 3D PosePosePosePosepose of the found instances in the camera coordinate system.

Additionally, the accuracy of the six pose parameters are returned in CovPoseCovPoseCovPoseCovPosecovPose. By default, CovPoseCovPoseCovPoseCovPosecovPose contains the 6 standard deviations of the pose parameters for each match. If the generic parameter 'cov_pose_mode'"cov_pose_mode""cov_pose_mode""cov_pose_mode""cov_pose_mode" was set to 'covariances'"covariances""covariances""covariances""covariances", CovPoseCovPoseCovPoseCovPosecovPose contains the 36 values of the complete 6×6 covariance matrix of the 6 pose parameters. Note that this reflects only an inner accuracy from which the real accuracy of the pose may differ. Finally, the score of each found instance is returned in ScoreScoreScoreScorescore. The score is a number between 0 and 1, which is an approximate measure of how much of the model is visible in the image.

For further explanation on the planar deformable model and its parameters we refer to the description of find_planar_uncalib_deformable_modelfind_planar_uncalib_deformable_modelfind_planar_uncalib_deformable_modelFindPlanarUncalibDeformableModelFindPlanarUncalibDeformableModel.

Parallelization

Parameters

ImageImageImageImageimage (input_object)  (multichannel-)image objectHImageHImageHImageXHobject (byte / uint2)

Input image in which the model should be found.

ModelIDModelIDModelIDModelIDmodelID (input_control)  deformable_model HDeformableModel, HTupleHDeformableModel, HTupleHDeformableModelX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong)

Handle of the model.

AngleStartAngleStartAngleStartAngleStartangleStart (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Smallest rotation of the model.

Default value: -0.39

Suggested values: -3.14, -1.57, -0.78, -0.39, -0.20, 0.0

AngleExtentAngleExtentAngleExtentAngleExtentangleExtent (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Extent of the rotation angles.

Default value: 0.78

Suggested values: 6.29, 3.14, 1.57, 0.78, 0.39, 0.0

Restriction: AngleExtent >= 0

ScaleRMinScaleRMinScaleRMinScaleRMinscaleRMin (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Minimum scale of the model in row direction.

Default value: 1.0

Suggested values: 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriction: ScaleRMin > 0

ScaleRMaxScaleRMaxScaleRMaxScaleRMaxscaleRMax (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Maximum scale of the model in row direction.

Default value: 1.0

Suggested values: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

Restriction: ScaleRMax >= ScaleRMin

ScaleCMinScaleCMinScaleCMinScaleCMinscaleCMin (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Minimum scale of the model in column direction.

Default value: 1.0

Suggested values: 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriction: ScaleCMin > 0

ScaleCMaxScaleCMaxScaleCMaxScaleCMaxscaleCMax (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Maximum scale of the model in column direction.

Default value: 1.0

Suggested values: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

Restriction: ScaleCMax >= ScaleCMin

MinScoreMinScoreMinScoreMinScoreminScore (input_control)  real HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Minumum score of the instances of the model to be found.

Default value: 0.5

Suggested values: 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Typical range of values: 0 ≤ MinScore MinScore MinScore MinScore minScore ≤ 1

Minimum increment: 0.01

Recommended increment: 0.05

NumMatchesNumMatchesNumMatchesNumMatchesnumMatches (input_control)  integer HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Number of instances of the model to be found.

Default value: 1

Suggested values: 0, 1, 2, 3, 4, 5, 10, 20

MaxOverlapMaxOverlapMaxOverlapMaxOverlapmaxOverlap (input_control)  real HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Maximum overlap of the instances of the model to be found.

Default value: 1.0

Suggested values: 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Typical range of values: 0 ≤ MaxOverlap MaxOverlap MaxOverlap MaxOverlap maxOverlap ≤ 1

Minimum increment: 0.01

Recommended increment: 0.05

NumLevelsNumLevelsNumLevelsNumLevelsnumLevels (input_control)  integer(-array) HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Number of pyramid levels used in the matching (and lowest pyramid level to use if |NumLevelsNumLevelsNumLevelsNumLevelsnumLevels| = 2).

Default value: 0

List of values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

GreedinessGreedinessGreedinessGreedinessgreediness (input_control)  real HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

“Greediness” of the search heuristic (0: safe but slow; 1: fast but matches may be missed).

Default value: 0.9

Suggested values: 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Typical range of values: 0 ≤ Greediness Greediness Greediness Greediness greediness ≤ 1

Minimum increment: 0.01

Recommended increment: 0.05

ParamNameParamNameParamNameParamNameparamName (input_control)  string-array HTupleHTupleVARIANTHtuple (string) (string) (char*) (BSTR) (char*)

The general parameter names.

Default value: []

List of values: [], 'subpixel'"subpixel""subpixel""subpixel""subpixel", 'max_angle_distortion'"max_angle_distortion""max_angle_distortion""max_angle_distortion""max_angle_distortion", 'max_aniso_scale_distortion'"max_aniso_scale_distortion""max_aniso_scale_distortion""max_aniso_scale_distortion""max_aniso_scale_distortion", 'angle_step'"angle_step""angle_step""angle_step""angle_step", 'scale_r_step'"scale_r_step""scale_r_step""scale_r_step""scale_r_step", 'scale_c_step'"scale_c_step""scale_c_step""scale_c_step""scale_c_step", 'cov_pose_mode'"cov_pose_mode""cov_pose_mode""cov_pose_mode""cov_pose_mode"

ParamValueParamValueParamValueParamValueparamValue (input_control)  integer-array HTupleHTupleVARIANTHtuple (integer / real / string) (int / long / double / string) (Hlong / double / char*) (Hlong / double / BSTR) (Hlong / double / char*)

Values of the general parameters.

Default value: []

List of values: [], '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_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", 'covariances'"covariances""covariances""covariances""covariances"

PosePosePosePosepose (output_control)  pose-array HPose, HTupleHTupleHPoseX, VARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

Pose of the object.

CovPoseCovPoseCovPoseCovPosecovPose (output_control)  real-array HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

6 standard deviations or 36 covariances of the pose parameters.

ScoreScoreScoreScorescore (output_control)  real-array HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Score of the found instances of the model.

Result

If the parameters are valid, the operator find_planar_calib_deformable_modelfind_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModel returns the value 2 (H_MSG_TRUE). If necessary an exception is raised.

Possible Predecessors

create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModel, read_deformable_modelread_deformable_modelread_deformable_modelReadDeformableModelReadDeformableModel

Module

Matching


Table of Contents / Matching / Deformable ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH