《zw版·Halcon-delphi系列原创教程》 Halcon分类函数010,obj,对象管理
为方便阅读,在不影响说明的前提下,笔者对函数进行了简化:
- :: 用符号“**”,替换:“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);
1 ** AddMetrologyObjectCircleMeasure( MetrologyHandle, Row, Column, Radius, MeasureLength1, MeasureLength2, MeasureSigma, MeasureThreshold, GenParamName, GenParamValue, out Index); 2 说明, add_metrology_object_circle_measure ( : : MetrologyHandle, Row,Column, Radius, MeasureLength1, MeasureLength2, MeasureSigma,MeasureThreshold, GenParamName, GenParamValue : Index ) 3 4 ** AddMetrologyObjectEllipseMeasure( MetrologyHandle, Row, Column, Phi, Radius1, Radius2, MeasureLength1, MeasureLength2, MeasureSigma, MeasureThreshold, GenParamName, GenParamValue, out Index); 5 说明, 增加一个椭圆或弧形物体,到测量模型当中 6 7 ** AddMetrologyObjectLineMeasure( MetrologyHandle, RowBegin, ColumnBegin, RowEnd, ColumnEnd, MeasureLength1, MeasureLength2, MeasureSigma, MeasureThreshold, GenParamName, GenParamValue, out Index); 8 说明, 增加一个线型物体,到测量模型当中 9 10 ** AddMetrologyObjectRectangle2Measure( MetrologyHandle, Row, Column, Phi, Length1, Length2, MeasureLength1, MeasureLength2, MeasureSigma, MeasureThreshold, GenParamName, GenParamValue, out Index); 11 说明, 增加一个矩形物体,到测量模型当中 12 13 ** AddSampleIdentifierPreparationData( SampleImage: X; SampleIdentifier, ObjectIdx, GenParamName, GenParamValue, out ObjectSampleIdx); 14 说明, 增加预设标定数据 15 16 ** AddSampleIdentifierTrainingData( SampleImage: X; SampleIdentifier, ObjectIdx, GenParamName, GenParamValue, out ObjectSampleIdx); 17 说明, 增加标定训练数据 18 19 ** AffineTransObjectModel3D( ObjectModel3D, HomMat3d, out ObjectModel3DAffineTrans); 20 说明, affine_trans_object_model_3d,把一个任意有限3D变换用于一个3D目标模型。 21 22 ** ApplySampleIdentifier( Image: X; SampleIdentifier, NumResults, RatingThreshold, GenParamName, GenParamValue, out ObjectIdx, out Rating); 23 说明, 应用样本标识 24 25 ** AreaObjectModel3D( ObjectModel3D, out Area); 26 说明, 测量3d物体表面面积 27 28 ** ClearAllObjectModel3D; 29 说明, clear_all_object_model_3d,释放所有3D目标模型的内存。 30 31 ** ClearMetrologyObject( MetrologyHandle, Indices); 32 说明, 清除计量对象 33 34 ** ClearObj( Objects: X); 35 说明, clear_obj,将一个对象的图标从HALCON数据库中删除。 36 37 ** ClearObjectModel3D( ObjectModel3D); 38 说明, clear_object_model_3d,释放一个3D目标模型的内存。 39 40 ** ConcatObj( Objects1: X; Objects2: X; out ObjectsConcat: X); 41 说明, concat_obj,连接两个目标元组的图标。 42 43 ** ConnectionObjectModel3D( ObjectModel3D, Feature, Value, out ObjectModel3DConnected); 44 45 ** ConvexHullObjectModel3D( ObjectModel3D, out ObjectModel3DConvexHull); 46 说明, ConvexHullObjectModel3D,影响区域凸性的3D模型系数。 47 48 ** CopyMetrologyObject( MetrologyHandle, Indices, out CopiedIndices); 49 说明, 复制计量对象 50 51 ** CopyObj( Objects: X; out ObjectsSelected: X; Index, NumObj); 52 说明, copy_obj,复制一个HALCON数据库中对象的图标 。 53 54 ** CopyObjectModel3D( ObjectModel3D, Attributes, out CopiedObjectModel3D); 55 说明, 复制3d模型对象 56 57 ** CountObj( Objects: X; out Number); 58 说明, count_obj,统计一个元组中的对象。 59 60 ** CreateCalibData( CalibSetup, NumCameras, NumCalibObjects, out CalibDataID); 61 说明, 建立校准数据 62 63 ** CreateShapeModel3D( ObjectModel3D, CamParam, RefRotX, RefRotY, RefRotZ, OrderOfRotation, LongitudeMin, LongitudeMax, LatitudeMin, LatitudeMax, CamRollMin, CamRollMax, DistMin, DistMax, MinContrast, GenParamNames, GenParamValues, out ShapeModel3DID); 64 说明, create_shape_model_3d,为匹配准备一个3D目标模型。 65 66 ** CreateSurfaceModel( ObjectModel3D, RelSamplingDistance, GenParamName, GenParamValue, out SurfaceModelID); 67 说明, 建立表面模型 68 69 ** DeserializeObject( out Object_: X; SerializedItemHandle); 70 说明, 对象数据转换 71 72 ** DeserializeObjectModel3D( SerializedItemHandle, out ObjectModel3D); 73 说明, 3d模型对象数据转换 74 75 ** DispObj( Object_: X; WindowHandle); 76 说明, disp_obj,显示图像目标(图像,区域,XLD)。 77 78 ** DispObjectModel3D( WindowHandle, ObjectModel3D, CamParam, Pose, GenParamName, GenParamValue); 79 80 ** DispXld( XLDObject: X; WindowHandle); 81 说明, disp_xld,显示一个XLD物体。 82 83 ** DistanceObjectModel3D( ObjectModel3DFrom, ObjectModel3DTo, Pose, MaxDistance, GenParamNames, GenParamValues); 84 85 ** FindCalibObject( Image: X; CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, GenParamName, GenParamValue); 86 说明, 检测校准对象 87 88 ** FindSurfaceModel( SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue, out Pose, out Score, out SurfaceMatchingResultID); 89 说明, 找出表面模型 90 91 ** FitPrimitivesObjectModel3D( ObjectModel3D, ParamName, ParamValue, out ObjectModel3DOut); 92 说明, 根据3D模型获取对象 93 94 ** GenBoxObjectModel3D( Pose, LengthX, LengthY, LengthZ, out ObjectModel3D); 95 说明, 生成3d对象框架 96 97 ** GenCylinderObjectModel3D( Pose, Radius, MinExtent, MaxExtent, out ObjectModel3D); 98 说明, 创建3d柱状模型 99 100 ** GenEmptyObj( out EmptyObject: X); 101 说明, gen_empty_obj,创建一个空的目标元组。 102 103 ** GenEmptyObjectModel3D( out EmptyObjectModel3D); 104 说明, 创建一个空的3D模型对象。 105 106 ** GenObjectModel3DFromPoints( X, Y, Z, out ObjectModel3D); 107 说明, 从节点生成3d模型对象 108 109 ** GenPlaneObjectModel3D( Pose, XExtent, YExtent, out ObjectModel3D); 110 说明, 生成3d模型平面 111 112 ** GenSphereObjectModel3D( Pose, Radius, out ObjectModel3D); 113 说明, 创建球形3d模型对象 114 115 ** GenSphereObjectModel3DCenter( X, Y, Z, Radius, out ObjectModel3D); 116 说明, 创建中心球形3d模型对象 117 118 ** GetBarCodeObject( out BarCodeObjects: X; BarCodeHandle, CandidateHandle, ObjectName); 119 说明, get_bar_code_object,访问创建在搜寻或条形码符号解码过程中的对象图标。 120 121 ** GetCalibDataObservContours( out Contours: X; CalibDataID, ContourName, CameraIdx, CalibObjIdx, CalibObjPoseIdx); 122 说明, 获取校准数据轮廓 123 124 ** GetCalibDataObservPoints( CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, out Row, out Column, out Index, out Pose); 125 说明, 获取校准数据节点 126 127 ** GetCalibDataObservPose( CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, out ObjInCameraPose); 128 说明, 获取校准数据姿势 129 130 ** GetChannelInfo( Object_: X; Request, Channel, out Information); 131 说明, get_channel_info,一幅目标图像组成部分的信息。 132 133 ** GetDataCode2DObjects( out DataCodeObjects: X; DataCodeHandle, CandidateHandle, ObjectName); 134 说明, get_data_code_2d_objects,查询搜索二维数据编码符号过程中创建的对象的图标。 135 136 ** GetDescriptorModelResults( ModelID, ObjectID, ResultNames, out Results); 137 说明, 获取描述模型结果 138 139 ** GetDispObjectModel3DInfo( WindowHandle, Row, Column, Information, out Value); 140 说明, 获取显示3d模型对角信息 141 142 ** GetMetrologyObjectFuzzyParam( MetrologyHandle, Indices, GenParamName, out GenParamValue); 143 说明, 获取计量对象模糊参数 144 145 ** GetMetrologyObjectIndices( MetrologyHandle, out Indices); 146 说明, 获取计量对象指数参数 147 148 ** GetMetrologyObjectMeasures( out Contour: X; MetrologyHandle, Indices, Transition, out Row, out Column); 149 说明, 获取计量对象均值参数 150 151 ** GetMetrologyObjectNumInstances( MetrologyHandle, Indices, out NumInstances); 152 说明, 获取计量对象均值参数 153 154 ** GetMetrologyObjectParam( MetrologyHandle, Indices, GenParamName, out GenParamValue); 155 说明, 获取计量对象参数 156 157 ** GetMetrologyObjectResult( MetrologyHandle, Indices, Instance, GenParamName, GenParamValue, out Parameter); 158 说明, 获取计量对象结果参数 159 160 ** GetObjClass( Object_: X; out Class_); 161 说明, get_obj_class,一副目标图像类的名称。 162 163 ** GetObjectModel3DParams( ObjectModel3D, ParamName, out ParamValue); 164 说明, get_object_model_3d_params,返回一个3D目标模型的参数。 165 166 ** GetParamNames( ProcName, out InpObjPar, out OutpObjPar, out InpCtrlPar, out OutpCtrlPar); 167 说明, get_param_names,获取一个HALCON程序参数的名字。 168 169 ** GetParamNum( ProcName, out CName, out InpObjPar, out OutpObjPar, out InpCtrlPar, out OutpCtrlPar, out Type_); 170 说明, get_param_num,获取一个HALCON程序不同参数类的数目。 171 172 ** GetSampleIdentifierObjectInfo( SampleIdentifier, ObjectIdx, InfoName, out InfoValue); 173 说明, 获取标识样本信息 174 175 ** GetSheetOfLightResultObjectModel3D( SheetOfLightModelID, out ObjectModel3D); 176 说明, 获取光线表结果,3d模型 177 178 ** GetStereoModelObject( out Object_: X; StereoModelID, PairIndex, ObjectName); 179 说明, 获取立体模型对象 180 181 ** GetTextObject( out Characters: X; TextResultID, ResultName); 182 说明, 获取文本对象 183 184 ** IntegerToObj( out Objects: X; SurrogateTuple); 185 说明, integer_to_obj,将一个整型数转换为一个图标。 186 187 ** IntersectPlaneObjectModel3D( ObjectModel3D, Plane, out ObjectModel3DIntersection); 188 说明, 计算3d模型平面交集。 189 190 ** MaxDiameterObjectModel3D( ObjectModel3D, out Diameter); 191 说明, 3d模型最大直径 192 193 ** MomentsObjectModel3D( ObjectModel3D, MomentsToCalculate, out Moments); 194 说明, 3d xld对象被看做点云的轮廓,的几何时刻(moments) 195 196 ** ObjDiff( Objects: X; ObjectsSub: X; out ObjectsDiff: X); 197 说明, 对象差值 198 199 ** ObjectModel3DToXyz( out X: X; out Y: X; out Z: X; ObjectModel3D, Type_, CamParam, Pose); 200 说明, 3d对象xyz坐标 201 202 ** ObjToInteger( Objects: X; Index, Number, out SurrogateTuple); 203 说明, obj_to_integer,将一个图标转换为一个整型数。 204 205 ** PrepareObjectModel3D( ObjectModel3D, Purpose, OverwriteData, GenParamName, GenParamValue); 206 说明, 为图像准备一个变化模型。 207 208 ** ProjectiveTransObjectModel3D( ObjectModel3D, HomMat3d, out ObjectModel3DProjectiveTrans); 209 210 ** ProjectObjectModel3D( out ModelContours: X; ObjectModel3D, CamParam, Pose, GenParamName, GenParamValue); 211 说明, project_object_model_3d,把一个3D目标模型的边缘投影到图像坐标中。 212 213 ** ReadObjectModel3D( FileName, Scale, GenParamName, GenParamValue, out ObjectModel3D, out Status); 214 说明, 读取3d模型测量 215 216 ** ReadObjectModel3DDxf( FileName, Scale, GenParamNames, GenParamValues, out ObjectModel3D, out DxfStatus); 217 说明, read_object_model_3d_dxf,从一个DXF文件中读取一个3D目标模型。 218 219 ** ReduceObjectModel3DByView( Region: X; ObjectModel3D, CamParam, Pose, out ObjectModel3DReduced); 220 说明, 通过视口,减少图像区域 221 222 ** RefineSurfaceModelPose( SurfaceModelID, ObjectModel3D, InitialPose, MinScore, ReturnResultHandle, GenParamName, GenParamValue, out Pose, out Score, out SurfaceMatchingResultID); 223 说明, 细化表面模型 224 225 ** RegisterObjectModel3DGlobal( ObjectModels3D, HomMats3D, From, To_, GenParamName, GenParamValue, out HomMats3DOut, out Scores); 226 说明, 注册为全局3d模型对象 227 228 ** RegisterObjectModel3DPair( ObjectModel3D1, ObjectModel3D2, Method, GenParamName, GenParamValue, out Pose, out Score); 229 说明, 注册为全局双目3d模型对象 230 231 ** RemoveSampleIdentifierPreparationData( SampleIdentifier, ObjectIdx, ObjectSampleIdx); 232 说明, 删除样本标识 233 234 ** RemoveSampleIdentifierTrainingData( SampleIdentifier, ObjectIdx, ObjectSampleIdx); 235 说明, 删除样本标识训练数据 236 237 ** RenderObjectModel3D( out Image: X; ObjectModel3D, CamParam, Pose, GenParamName, GenParamValue); 238 说明, 渲染3d模型对象 239 240 ** ResetMetrologyObjectFuzzyParam( MetrologyHandle, Indices); 241 说明, 复位计量对象数据 242 243 ** ResetMetrologyObjectParam( MetrologyHandle, Indices); 244 说明, 复位计量对象数据参数 245 246 ** ResetObjDb( DefaultImageWidth, DefaultImageHeight, DefaultChannels); 247 说明, reset_obj_db,HALCON系统的初始化。 248 249 ** RigidTransObjectModel3D( ObjectModel3D, Pose, out ObjectModel3DRigidTrans); 250 说明, 刚性3d模型变换 251 252 ** ructSurfaceStereo( Images: X; StereoModelID, out ObjectModel3D); 253 说明, 从立体表面获取高度 254 255 ** SampleObjectModel3D( ObjectModel3D, Method, SampleDistance, GenParamName, GenParamValue, out SampledObjectModel3D); 256 说明, 3d模型样本 257 258 ** SegmentObjectModel3D( ObjectModel3D, ParamName, ParamValue, out ObjectModel3DOut); 259 260 ** SelectObj( Objects: X; out ObjectSelected: X; Index); 261 说明, select_obj,从一个目标元组中选择目标。 262 263 ** SelectObjectModel3D( ObjectModel3D, Feature, Operation, MinValue, MaxValue, out ObjectModel3DSelected); 264 说明, 选择3d模型目标。 265 266 ** SelectPointsObjectModel3D( ObjectModel3D, Attrib, MinValue, MaxValue, out ObjectModel3DThresholded); 267 说明, 选择3d模型节点。 268 269 ** SerializeObject( Object_: X; out SerializedItemHandle); 270 说明, 对象数据序列化 271 272 ** SerializeObjectModel3D( ObjectModel3D, out SerializedItemHandle); 273 说明, 3d模型数据序列化 274 275 ** SetCalibDataCalibObject( CalibDataID, CalibObjIdx, CalibObjDescr); 276 说明, 设置校准数据对象 277 278 ** SetCalibDataObservPoints( CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, Row, Column, Index, Pose); 279 说明, 设置校准数据节点 280 281 ** SetCalibDataObservPose( CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, ObjInCameraPose); 282 说明, 设置校准数据姿态 283 284 ** SetMetrologyObjectFuzzyParam( MetrologyHandle, Indices, GenParamName, GenParamValue); 285 说明, 设置计量对象参数 286 287 ** SetMetrologyObjectParam( MetrologyHandle, Indices, GenParamName, GenParamValue); 288 说明, 设置计量对象参数 289 290 ** SetObjectModel3DAttrib( ObjectModel3D, Name, Type_, Data, out ObjectModel3DOut); 291 说明, 设置3d模型属性 292 293 ** SetObjectModel3DAttribMod( ObjectModel3D, Name, Type_, Data); 294 说明, 设置3d模型属性 295 296 ** SetSampleIdentifierObjectInfo( SampleIdentifier, ObjectIdx, InfoName, InfoValue); 297 说明, 设置样本对象数据 298 299 ** SmallestBoundingBoxObjectModel3D( ObjectModel3D, Type_, out Pose, out Length1, out Length2, out Length3); 300 301 ** SmallestSphereObjectModel3D( ObjectModel3D, out CenterPoint, out Radius); 302 说明, 3d模型最小外接球形对象 303 304 ** SmoothObjectModel3D( ObjectModel3D, Method, GenParamName, GenParamValue, out SmoothObjectModel3D); 305 说明, 平滑3d模型 306 307 ** SurfaceNormalsObjectModel3D( ObjectModel3D, Method, GenParamName, GenParamValue, out ObjectModel3DNormals); 308 说明, 3d模型表面 309 310 ** TestAccess( Object_: X; out Dummy: X; NumReadChord, NumCopyObj, Write_chord); 311 说明, 测试Access 312 313 ** TestEqualObj( Objects1: X; Objects2: X; out IsEqual); 314 说明, test_equal_obj,比较目标图像的平等性。 315 316 ** TestObjDef( Object_: X; out IsDefined); 317 说明, test_obj_def,测试目标是否被删除。 318 319 ** TransformMetrologyObject( MetrologyHandle, Indices, Row, Column, Phi, Mode); 320 说明, 对象变换 321 322 ** TriangulateObjectModel3D( ObjectModel3D, Method, GenParamName, GenParamValue, out TriangulatedObjectModel3D, out Information); 323 说明, 3角曲面3d模型 324 325 ** UnionObjectModel3D( ObjectModels3D, Method, out UnionObjectModel3D); 326 说明, 合并3d模型 327 328 ** VolumeObjectModel3DRelativeToPlane( ObjectModel3D, Plane, Mode, UseFaceOrientation, out Volume); 329 说明, 3d模型相对体积平面 330 331 ** WriteObjectModel3D( ObjectModel3D, FileType, FileName, GenParamName, GenParamValue); 332 说明, 保存3d模型数据 333 334 ** XyzToObjectModel3D( X: X; Y: X; Z: X; out ObjectModel3D); 335 说明, xyz坐标到3d模型在;换
时间: 2024-10-23 06:23:23