《zw版·Halcon-delphi系列原创教程》 Halcon分类函数007, match,图像匹配
为方便阅读,在不影响说明的前提下,笔者对函数进行了简化:
- :: 用符号“**”,替换:“procedure”
- :: 用大写字母“X”,替换:“IHUntypedObjectX”
- :: 省略了字符:“const”、“OleVariant”
【示例】 说明
函数:
procedure AddNoiseWhiteContourXld( const Contours: IHUntypedObjectX; out NoisyContours: IHUntypedObjectX; NumRegrPoints: OleVariant; Amp: OleVariant);
简化后为:
** AddNoiseWhiteContourXld( Contours: X; out NoisyContours: X; NumRegrPoints, Amp);
** BestMatch( Image: X; TemplateID, MaxError, SubPixel, out Row, out Column, out Error);
说明, best_match,寻找一个模板和一个图像的最佳匹配。 ** BestMatchMg( Image: X; TemplateID, MaxError, SubPixel, NumLevels, WhichLevels, out Row, out Column, out Error);
说明, best_match_mg,在金字塔中寻找最佳灰度值匹配。 ** BestMatchPreMg( ImagePyramid: X; TemplateID, MaxError, SubPixel, NumLevels, WhichLevels, out Row, out Column, out Error);
说明, best_match_pre_mg,在预生成的金字塔中寻找最佳灰度值匹配。 ** BestMatchRot( Image: X; TemplateID, AngleStart, AngleExtend, MaxError, SubPixel, out Row, out Column, out Angle, out Error);
说明, best_match_rot,寻找一个模板和一个旋转图像的最佳匹配。 ** BestMatchRotMg( Image: X; TemplateID, AngleStart, AngleExtend, MaxError, SubPixel, NumLevels, out Row, out Column, out Angle, out Error);
说明, best_match_rot_mg,寻找一个模板和一个旋转金字塔的最佳匹配。 ** ClearAllSurfaceMatchingResults;
说明, 清除所有表面匹配数据 ** ClearSurfaceMatchingResult( SurfaceMatchingResultID);
说明, 清除表面匹配数据 ** ExhaustiveMatch( Image: X; RegionOfInterest: X; ImageTemplate: X; out ImageMatch: X; Mode);
说明, exhaustive_match,模板和图像的匹配。 ** ExhaustiveMatchMg( Image: X; ImageTemplate: X; out ImageMatch: X; Mode, Level, Threshold);
说明, exhaustive_match_mg,在一个分辨率塔式结构中匹配模板和图像。 ** FastMatch( Image: X; out Matches: X; TemplateID, MaxError);
说明, fast_match,寻找一个模板和一个图像的所有好的匹配。 ** FastMatchMg( Image: X; out Matches: X; TemplateID, MaxError, NumLevel);
说明, fast_match_mg,在金字塔中寻找所有好的灰度值匹配。 ** FindAnisoShapeModel( Image: X; ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, out Row, out Column, out Angle, out ScaleR, out ScaleC, out Score);
说明, find_aniso_shape_model,在一个图像中找出一个各向异性尺度不变轮廓的最佳匹配。 ** FindAnisoShapeModels( Image: X; ModelIDs, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, out Row, out Column, out Angle, out ScaleR, out ScaleC, out Score, out Model);
说明, find_aniso_shape_models,找出多重各向异性尺度不变轮廓模型的最佳匹配。 ** FindCalibDescriptorModel( Image: X; ModelID, DetectorParamName, DetectorParamValue, DescriptorParamName, DescriptorParamValue, MinScore, NumMatches, CamParam, ScoreType, out Pose, out Score);
说明, 检测校准描述模型 ** FindComponentModel( Image: X; ComponentModelID, RootComponent, AngleStartRoot, AngleExtentRoot, MinScore, NumMatches, MaxOverlap, IfRootNotFound, IfComponentNotFound, PosePrediction, MinScoreComp, SubPixelComp, NumLevelsComp, GreedinessComp, out ModelStart, out ModelEnd, out Score, out RowComp, out ColumnComp, out AngleComp, out ScoreComp, out ModelComp);
说明, find_component_model,在一个图像中找出一个组件模型的最佳匹配。 ** FindLocalDeformableModel( Image: X; out ImageRectified: X; out VectorField: X; out DeformedContours: X; ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, NumLevels, Greediness, ResultType, ParamName, ParamValue, out Score, out Row, out Column); ** FindNccModel( Image: X; ModelID, AngleStart, AngleExtent, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, out Row, out Column, out Angle, out Score);
说明, find_ncc_model,找出一个图像中的一个NCC模型的最佳匹配。 ** FindPlanarCalibDeformableModel( Image: X; ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, NumLevels, Greediness, ParamName, ParamValue, out Pose, out CovPose, out Score);
说明, 检测校准平面变形模型 ** FindPlanarUncalibDeformableModel( Image: X; ModelID, AngleStart, AngleExtent, ScaleRMin, ScaleRMax, ScaleCMin, ScaleCMax, MinScore, NumMatches, MaxOverlap, NumLevels, Greediness, ParamName, ParamValue, out HomMat2d, out Score);
说明, 检测无校准平面变形模型 ** FindScaledShapeModel( Image: X; ModelID, AngleStart, AngleExtent, ScaleMin, ScaleMax, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, out Row, out Column, out Angle, out Scale, out Score);
说明, find_scaled_shape_model,在一个图像中找出一个尺度不变轮廓模型的最佳匹配。 ** FindScaledShapeModels( Image: X; ModelIDs, AngleStart, AngleExtent, ScaleMin, ScaleMax, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, out Row, out Column, out Angle, out Scale, out Score, out Model);
说明, find_scaled_shape_models,找出多重尺度不变轮廓模型的最佳匹配。 ** FindShapeModel( Image: X; ModelID, AngleStart, AngleExtent, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, out Row, out Column, out Angle, out Score);
说明, find_shape_model,在一个图像中找出一个轮廓模型的最佳匹配。 ** FindShapeModels( Image: X; ModelIDs, AngleStart, AngleExtent, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness, out Row, out Column, out Angle, out Score, out Model);
说明, find_shape_models,找出多重轮廓模型的最佳匹配。 ** FindSurfaceModel( SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue, out Pose, out Score, out SurfaceMatchingResultID);
说明, 找出表面模型 ** FindUncalibDescriptorModel( Image: X; ModelID, DetectorParamName, DetectorParamValue, DescriptorParamName, DescriptorParamValue, MinScore, NumMatches, ScoreType, out HomMat2d, out Score);
说明, 找出无校准平面变形模型 ** GetFoundComponentModel( out FoundComponents: X; ComponentModelID, ModelStart, ModelEnd, RowComp, ColumnComp, AngleComp, ScoreComp, ModelComp, ModelMatch, MarkOrientation, out RowCompInst, out ColumnCompInst, out AngleCompInst, out ScoreCompInst);
说明, get_found_component_model,返回一个组件模型的一个创建例子的组件。 ** GetSurfaceMatchingResult( SurfaceMatchingResultID, ResultName, ResultIndex, out ResultValue);
说明, 获取表面匹配结果 ** MatchEssentialMatrixRansac( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, CamMat1, CamMat2, GrayMatchMethod, MaskSize, RowMove, ColMove, RowTolerance, ColTolerance, Rotation, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out EMatrix, out CovEMat, out Error, out Points1, out Points2);
说明, 按RANSA算法匹配矩阵 ** MatchFourierCoeff( RealCoef1, ImaginaryCoef1, RealCoef2, ImaginaryCoef2, MaxCoef, Damping, out Distance);
说明, match_fourier_coeff,两个元组的相似性。 ** MatchFunct1DTrans( Function1, Function2, Border, Params, UseParams, out Params, out ChiSquare, out Covar);
说明, match_funct_1d_trans,计算两个函数传递参数。 ** MatchFundamentalMatrixDistortionRansac( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, GrayMatchMethod, MaskSize, RowMove, ColMove, RowTolerance, ColTolerance, Rotation, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out FMatrix, out Kappa, out Error, out Points1, out Points2);
说明, 按RANSA算法匹配矩阵,有失真度参数 ** MatchFundamentalMatrixRansac( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, GrayMatchMethod, MaskSize, RowMove, ColMove, RowTolerance, ColTolerance, Rotation, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out FMatrix, out CovFMat, out Error, out Points1, out Points2);
说明, 按RANSA算法匹配矩阵,基本匹配 ** MatchRelPoseRansac( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, CamPar1, CamPar2, GrayMatchMethod, MaskSize, RowMove, ColMove, RowTolerance, ColTolerance, Rotation, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out RelPose, out CovRelPose, out Error, out Points1, out Points2);
说明, 按RANSA算法匹配相对位置 ** ProjMatchPointsDistortionRansac( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, GrayMatchMethod, MaskSize, RowMove, ColMove, RowTolerance, ColTolerance, Rotation, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out HomMat2d, out Kappa, out Error, out Points1, out Points2);
说明, Ransac算法节点投影失真计算 ** ProjMatchPointsDistortionRansacGuided( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, GrayMatchMethod, MaskSize, HomMat2dGuide, KappaGuide, DistanceTolerance, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out HomMat2d, out Kappa, out Error, out Points1, out Points2);
说明, Ransac引导算法节点投影失真计算 ** ProjMatchPointsRansac( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, GrayMatchMethod, MaskSize, RowMove, ColMove, RowTolerance, ColTolerance, Rotation, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out HomMat2d, out Points1, out Points2);
说明, Ransac算法,投影节点匹配 ** ProjMatchPointsRansacGuided( Image1: X; Image2: X; Rows1, Cols1, Rows2, Cols2, GrayMatchMethod, MaskSize, HomMat2dGuide, DistanceTolerance, MatchThreshold, EstimationMethod, DistanceThreshold, RandSeed, out HomMat2d, out Points1, out Points2);
说明, Ransac引导算法,投影节点匹配 ** RefineSurfaceModelPose( SurfaceModelID, ObjectModel3D, InitialPose, MinScore, ReturnResultHandle, GenParamName, GenParamValue, out Pose, out Score, out SurfaceMatchingResultID);
说明, 细化表面模型 ** SelectMatchingLines( RegionIn: X; out RegionLines: X; AngleIn, DistIn, LineWidth, Thresh, out AngleOut, out DistOut);
说明, select_matching_lines,选取HNF中线的集合中匹配区域最好的线。 ** TupleRegexpMatch( Data, Expression, out Matches);
说明, tuple_regexp_match,利用公式提取子链。 ** TupleRegexpTest( Data, Expression, out NumMatches);
说明, tuple_regexp_test,测试一个字符串是否满足一个规则公式的要求。