《zw版·Halcon-delphi系列原创教程》 Halcon分类函数017·point点函数

时间:2023-03-08 20:37:17

《zw版·Halcon-delphi系列原创教程》 Halcon分类函数017·point点函数

为方便阅读,在不影响说明的前提下,笔者对函数进行了简化:

  • :: 用符号“**”,替换:“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);

---------------------- 【《zw版·Halcon-delphi系列原创教程》,网址,cnblogs.com/ziwang/】 ----------------------

 ** AddNoiseWhiteContourXld( Contours: X; out NoisyContours: X; NumRegrPoints, Amp);
说明, add_noise_white_contour_xld,向XLD轮廓,中加入噪声。 ** AffineTransPoint2D( HomMat2d, Px, Py, out Qx, out Qy);
说明, affine_trans_point_2d,对点进行任意的最简二维变换 ** AffineTransPoint3D( HomMat3d, Px, Py, Pz, out Qx, out Qy, out Qz);
说明, affine_trans_point_3d,对点运用一个随即仿射三维变换。 ** AreaCenterPointsXld( XLD: X; out Area, out Row, out Column);
说明, area_center_points_xld,被看做点云的轮廓,和多边形(polygon)的面积和重心。 ** AreaCenterXld( XLD: X; out Area, out Row, out Column, out PointOrder);
说明, area_center_xld,轮廓,和多边形(polygon)的面积和重心。 ** CaltabPoints( CalTabDescrFile, out X, out Y, out Z);
说明, caltab_points,从校准板说明文件中读取标志中心点。 ** ChangeRadialDistortionPoints( Row, Col, CamParamIn, CamParamOut, out RowChanged, out ColChanged);
说明, 改变点的放射失真。 ** ClipEndPointsContoursXld( Contours: X; out ClippedContours: X; Mode, Length);
说明, clip_end_points_contours_xld,去除线条两端的部分像素。 ** ClosestPointTransform( Region: X; out Distances: X; out ClosestPoints: X; Metric, Foreground, ClosestPointMode, Width, Height);
说明, 关闭点变换 ** ConnectGridPoints( Image: X; out ConnectingLines: X; Row, Column, Sigma, MaxDist);
说明, connect_grid_points,建立矫正网格的矫正点间的连接。 ** ContourPointNumXld( Contour: X; out Length);
说明, contour_point_num_xld,返回一个XLD轮廓,中点的数目。 ** ConvertPoint3DCartToSpher( X, Y, Z, EquatPlaneNormal, ZeroMeridian, out Longitude, out Latitude, out Radius);
说明, convert_point_3d_cart_to_spher,把直角坐标系中的一个3D点转变为极坐标。 ** ConvertPoint3DSpherToCart( Longitude, Latitude, Radius, EquatPlaneNormal, ZeroMeridian, out X, out Y, out Z);
说明, convert_point_3d_spher_to_cart,把极坐标中的一个3D点转变为直角坐标。 ** CreateCamPoseLookAtPoint( CamPosX, CamPosY, CamPosZ, LookAtX, LookAtY, LookAtZ, RefPlaneNormal, CamRoll, out CamPose);
说明, create_cam_pose_look_at_point,从摄像机中心和观察方向创建一个3D摄像机位置。 ** CreateSerializedItemPtr( Pointer, Size, Copy, out SerializedItemHandle);
说明, 建立序列数据 ** CriticalPointsSubPix( Image: X; Filter, Sigma, Threshold, out RowMin, out ColumnMin, out RowMax, out ColumnMax, out RowSaddle, out ColumnSaddle);
说明, critical_points_sub_pix,一幅图像中主要点的子像素精确度检测。 ** DisparityToPoint3D( CamParamRect1, CamParamRect2, RelPoseRect, Row1, Col1, Disparity, out X, out Y, out Z);
说明, disparity_to_point_3d,将一个图像点和它的不均衡值转换为一个矫正立体系统中的三维点。 ** DistEllipseContourPointsXld( Contour: X; DistanceMode, ClippingEndPoints, Row, Column, Phi, Radius1, Radius2, out Distances);
说明, dist_ellipse_contour_points_xld,计算所有轮廓,内的点到一个椭圆的距离。 ** DistEllipseContourXld( Contours: X; Mode, MaxNumPoints, ClippingEndPoints, Row, Column, Phi, Radius1, Radius2, out MinDist, out MaxDist, out AvgDist, out SigmaDist);
说明, dist_ellipse_contour_xld,轮廓到一个椭圆的距离。 ** DistRectangle2ContourPointsXld( Contour: X; ClippingEndPoints, Row, Column, Phi, Length1, Length2, out Distances);
说明, dist_rectangle2_contour_points_xld,计算所有轮廓,内的点到一个矩形的距离。 ** DrawPoint( WindowHandle, out Row, out Column);
说明, draw_point,画一个点。 ** DrawPointMod( WindowHandle, RowIn, ColumnIn, out Row, out Column);
说明, draw_point_mod,画一个点。 ** EccentricityPointsXld( XLD: X; out Anisometry);
说明, eccentricity_points_xld,被看做点云的轮廓,或多变形(polygon)的Anisometry。 ** EllipticAxisPointsXld( XLD: X; out Ra, out Rb, out Phi);
说明, elliptic_axis_points_xld,被看做点云的轮廓,或多边形(polygon)的等价椭圆参数。 ** Find1DBarCodeScanline( Image: X; out CodeRegion: X; BarCodeDescr, GenericName, GenericValue, StopIfFound, out BarcodeFound, out BarCodeElements, out Orientation, out ScanlineNumPoints, out ScanlineDecoded, out ScanlinePointsRow, out ScanlinePointsColumn);
说明, find_1d_bar_code_scanline,搜索一幅图像中的一个条形码。 ** FindSurfaceModel( SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue, out Pose, out Score, out SurfaceMatchingResultID);
说明, 找出表面模型 ** FitCircleContourXld( Contours: X; Algorithm, MaxNumPoints, MaxClosureDist, ** FitEllipseContourXld( Contours: X; Algorithm, MaxNumPoints, MaxClosureDist, ** FitLineContourXld( Contours: X; Algorithm, MaxNumPoints, ClippingEndPoints, Iterations, ClippingFactor, out RowBegin, out ColBegin, out RowEnd, out ColEnd, out Nr, out Nc, out Dist); ** FitRectangle2ContourXld( Contours: X; Algorithm, MaxNumPoints, MaxClosureDist, ClippingEndPoints, Iterations, ClippingFactor, out Row, out Column, out Phi, out Length1, out Length2, out PointOrder);
说明, fit_rectangle2_contour_xld,用矩形来匹配XLD轮廓,。 ** GenCircleContourXld( out ContCircle: X; Row, Column, Radius, StartPhi, EndPhi, PointOrder, Resolution); ** GenImage1( out Image: X; Type_, Width, Height, PixelPointer);
说明, gen_image1,从像素的一个指针创建一个图像。 ** GenImage1Extern( out Image: X; Type_, Width, Height, PixelPointer, ClearProc);
说明, gen_image1_extern,从带存储管理的像素的一个指针创建一个图像。 ** GenImage1Rect( out Image: X; PixelPointer, Width, Height, VerticalPitch, HorizontalBitPitch, BitsPerPixel, DoCopy, ClearProc);
说明, gen_image1_rect,从像素(带存储管理)的指针创建一个矩形区域的图像。 ** GenImage3( out ImageRGB: X; Type_, Width, Height, PixelPointerRed, PixelPointerGreen, PixelPointerBlue);
说明, gen_image3,从像素(红、绿、蓝)的三个指针创建一个图像。 ** GenImage3Extern( out Image: X; Type_, Width, Height, PointerRed, PointerGreen, PointerBlue, ClearProc);
说明, gen_image3,从像素(红、绿、蓝)的三个指针创建一个图像,带参数。 ** GenImageInterleaved( out ImageRGB: X; PixelPointer, ColorFormat, OriginalWidth, OriginalHeight, Alignment, Type_, ImageWidth, ImageHeight, StartRow, StartColumn, BitsPerChannel, BitShift);
说明, gen_image_interleaved,从交叉像素的一个指针创建一个三通道图像。 ** GenObjectModel3DFromPoints( X, Y, Z, out ObjectModel3D);
说明, 从节点生成3d模型对象 ** GenRegionPoints( out Region: X; Rows, Columns);
说明, gen_region_points,将个别的像素存储为图像区域。 ** Get1DBarCodeScanline( BarCodeRegion: X; BarCodeDescr, GenericName, GenericValue, Orientation, StopIfFound, out BarCodeElements, out ScanlineNumPoints, out ScanlineDecoded, out ScanlinePointsRow, out ScanlinePointsColumn);
说明, get_1d_bar_code_scanline,提取一个条形码区域中元素的宽度。 ** GetCalibDataObservPoints( CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, out Row, out Column, out Index, out Pose);
说明, 获取校准数据节点 ** GetDescriptorModelPoints( ModelID, Set_, Subset, out Row, out Column);
说明, 获取描述模型节点 ** GetImagePointer1( Image: X; out Pointer, out Type_, out Width, out Height);
说明, get_image_pointer1,获取Image图像的数据指针Pointer,图像类型Type,图像宽度Width和高度Height。Pointer指向了Image data的起点位置。 ** GetImagePointer1Rect( Image: X; out PixelPointer, out Width, out Height, out VerticalPitch, out HorizontalBitPitch, out BitsPerPixel);
说明, get_image_pointer1_rect,获取图像数据指针和输入图像区域内最小矩形内部的图像数据。 ** GetImagePointer3( ImageRGB: X; out PointerRed, out PointerGreen, out PointerBlue, out Type_, out Width, out Height);
说明, get_image_pointer3,获取Image图像中坐标为(Row,Column)的点的R、G、B三色值l。 ** GetPointsEllipse( Angle, Row, Column, Phi, Radius1, Radius2, out RowPoint, out ColPoint); ** GetRegionPoints( Region: X; out Rows, out Columns);
说明, get_region_points,查询一个区域的像素数。 ** GetSerializedItemPtr( SerializedItemHandle, out Pointer, out Size);
说明, 获取序列化ptr参数 ** GetWindowPointer3( WindowHandle, out ImageRed, out ImageGreen, out ImageBlue, out Width, out Height);
说明, get_window_pointer3,窗口像素数据的通道。 ** HandEyeCalibration( X, Y, Z, Row, Col, NumPoints, RobotPoses, CameraParam, Method, QualityType, out CameraPose, out CalibrationPose, out Quality);
说明, hand_eye_calibration,执行一个手---眼校准。 ** HomMat3dProject( HomMat3d, PrincipalPointRow, PrincipalPointCol, Focus, out HomMat2d);
说明, hom_mat3d_project,给一个二维投影变换矩阵投影一个仿射三维变换矩阵。 ** ImagePointsToWorldPlane( CameraParam, WorldPose, Rows, Cols, Scale, out X, out Y);
说明, image_points_to_world_plane,将图像中的点转换到坐标轴平面Z为零上。 ** InterpolateScatteredDataPointsToImage( out ImageInterpolated: X; Method, Rows, Columns, Values, Width, Height, GenParamNames, GenParamValues);
说明, 计算图像散布节点的交集。 ** IntersectionCircleContourXld( Contour: X; CircleRow, CircleColumn, CircleRadius, CircleStartPhi, CircleEndPhi, CirclePointOrder, out Row, out Column);
说明, 计算xld圆形对象交集。 ** IntersectionCircles( Circle1Row, Circle1Column, Circle1Radius, Circle1StartPhi, Circle1EndPhi, Circle1PointOrder, Circle2Row, Circle2Column, Circle2Radius, Circle2StartPhi, Circle2EndPhi, Circle2PointOrder, out Row, out Column, out IsOverlapping);
说明, 计算圆形对象交集。 ** IntersectionLineCircle( LineRow1, LineColumn1, LineRow2, LineColumn2, CircleRow, CircleColumn, CircleRadius, CircleStartPhi, CircleEndPhi, CirclePointOrder, out Row, out Column);
说明, 计算直线-圆形对象交集。 ** IntersectionSegmentCircle( SegmentRow1, SegmentColumn1, SegmentRow2, SegmentColumn2, CircleRow, CircleColumn, CircleRadius, CircleStartPhi, CircleEndPhi, CirclePointOrder, out Row, out Column);
说明, 计算圆形分段对象交集。 ** JunctionsSkeleton( Region: X; out EndPoints: X; out JuncPoints: X);
说明, junctions_skeleton,找到框架中的结点和终点。 ** 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算法匹配矩阵 ** 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算法匹配相对位置 ** MomentsAnyPointsXld( XLD: X; Mode, Area, CenterRow, CenterCol, P, Q, out M);
说明, moments_any_points_xld,被看做点云的轮廓,或多变形(polygon)的任意几何时刻(moments)。 ** MomentsAnyXld( XLD: X; Mode, PointOrder, Area, CenterRow, CenterCol, P, Q, out M);
说明, moments_any_xld,轮廓,或多变形(polygon)的任意集合时刻(moments)。 ** MomentsPointsXld( XLD: X; out M11, out M20, out M02);
说明, moments_points_xld,被看做点云的轮廓,或多变形(polygon)的几何时刻(moments)M20, M02, 和 M11。 ** NumPointsFunct1D( Function_, out Length);
说明, num_points_funct_1d,函数控制点的数目。 ** OrientationPointsXld( XLD: X; out Phi);
说明, orientation_points_xld,被看做点云的轮廓,或多变形(polygon)的方向。 ** PointsFoerstner( Image: X; SigmaGrad, SigmaInt, SigmaPoints, ThreshInhom, ThreshShape, Smoothing, EliminateDoublets, out RowJunctions, out ColumnJunctions, out CoRRJunctions, out CoRCJunctions, out CoCCJunctions, out RowArea, out ColumnArea, out CoRRArea, out CoRCArea, out CoCCArea);
说明, points_foerstner,使用F?rstner算子检测关注点。 ** PointsHarris( Image: X; SigmaGrad, SigmaSmooth, Alpha, Threshold, out Row, out Column);
说明, points_harris,使用Harris算子检测关注点。 ** PointsHarrisBinomial( Image: X; MaskSizeGrad, MaskSizeSmooth, Alpha, Threshold, Subpix, out Row, out Column);
说明, 使用Harris算子检测关注二项式。 ** PointsLepetit( Image: X; Radius, CheckNeighbor, MinCheckNeighborDiff, MinScore, Subpix, out Row, out Column);
说明, ** PointsSojka( Image: X; MaskSize, SigmaW, SigmaD, MinGrad, MinApparentness, MinAngle, Subpix, out Row, out Column);
说明, points_sojka,使用Sojka算子找出角点。 ** Project3DPoint( X, Y, Z, CameraParam, out Row, out Column);
说明, project_3d_point,将三维点投射到子像素图像坐标。 ** ProjectHomPointHomMat3d( HomMat3d, Px, Py, Pz, Pw, out Qx, out Qy, out Qw);
说明, 3D目标模型,投影坐标计算 ** ProjectiveTransHomPoint3D( HomMat3d, Px, Py, Pz, Pw, out Qx, out Qy, out Qz, out Qw);
说明, 3d节点,投影变换矩阵计算 ** ProjectiveTransPoint2D( HomMat2d, Px, Py, Pw, out Qx, out Qy, out Qw);
说明, projective_trans_point_2d,利用一个投影变换矩阵表示一个二维齐次点。 ** ProjectiveTransPoint3D( HomMat3d, Px, Py, Pz, out Qx, out Qy, out Qz); ** ProjectPointHomMat3d( HomMat3d, Px, Py, Pz, out Qx, out Qy);
说明, 3D目标模型,节点投影坐标计算 ** 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引导算法,投影节点匹配 ** QuatRotatePoint3D( Quaternion, Px, Py, Pz, out Qx, out Qy, out Qz);
说明, Quat旋转矩阵,节点3D旋转 ** RadialDistortionSelfCalibration( Contours: X; out SelectedContours: X; Width, Height, InlierThreshold, RandSeed, DistortionModel, DistortionCenter, PrincipalPointVar, out CameraParam);
说明, 失真校准取值范围 ** ructPointsStereo( StereoModelID, Row, Column, CovIP, CameraIdx, PointIdx, out X, out Y, out Z, out CovWP, out PointIdxOut);
说明, 从立体节点获取高度 ** SaddlePointsSubPix( Image: X; Filter, Sigma, Threshold, out Row, out Column);
说明, saddle_points_sub_pix,一幅图像中底部点的子像素精确度检测。 ** SelectPointsObjectModel3D( ObjectModel3D, Attrib, MinValue, MaxValue, out ObjectModel3DThresholded);
说明, 选择3d模型节点。 ** SelectRegionPoint( Regions: X; out DestRegions: X; Row, Column);
说明, select_region_point,选择包括给定像素在内的所有区域。 ** SelectXldPoint( XLDs: X; out DestXLDs: X; Row, Column);
说明, select_xld_point,选择包括给定点在内的所有的轮廓,或多边形(polygon)。 ** SetCalibDataObservPoints( CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, Row, Column, Index, Pose);
说明, 设置校准数据节点 ** ShapeHistoPoint( Region: X; Image: X; Feature, Row, Column, out AbsoluteHisto, out RelativeHisto);
说明, shape_histo_point,用极限值确定特征的一个直方图。 ** SmallestSphereObjectModel3D( ObjectModel3D, out CenterPoint, out Radius);
说明, 3d模型最小外接球形对象 ** SmoothContoursXld( Contours: X; out SmoothedContours: X; NumRegrPoints);
说明, smooth_contours_xld,XLD轮廓,的平滑。 ** TestRegionPoint( Regions: X; Row, Column, out IsInside);
说明, 测试区域节点 ** TestXldPoint( XLD: X; Row, Column, out IsInside);
说明, test_xld_point,测试一个或多个包括给定点在内的轮廓,或多边形(polygon)。 ** VectorToProjHomMat2dDistortion( Points1Row, Points1Col, Points2Row, Points2Col, CovRR1, CovRC1, CovCC1, CovRR2, CovRC2, CovCC2, ImageWidth, ImageHeight, Method, out HomMat2d, out Kappa, out Error);
说明, 矢量2d矩阵失真变换