2026/1/10 2:42:55
网站建设
项目流程
哔哩哔哩网页版搜索不了,网络seo招聘,dw做网站注册页代码,宁波seo运营推广平台排名HALCON算子 read_metrology_model 全解析
一、算子核心定位
read_metrology_model 是HALCON 2D计量#xff08;2D Metrology#xff09;模块的文件IO类核心算子#xff0c;核心功能是从指定文件#xff08;默认后缀.mtr#xff09;中读取经write_metrology_model保存的完整…HALCON算子read_metrology_model全解析一、算子核心定位read_metrology_model是HALCON 2D计量2D Metrology模块的文件IO类核心算子核心功能是从指定文件默认后缀.mtr中读取经write_metrology_model保存的完整计量模型生成可直接使用的计量模型句柄。它实现了2D计量模型的“持久化复用”——无需重复手动创建计量对象、配置测量参数直接加载预定义的模型即可开展检测大幅提升项目开发效率和模型复用性。二、算法核心原理文件有效性校验检查输入的FileName对应的文件是否存在、文件格式是否为HALCON计量模型专属的.mtr格式且文件内容未损坏/篡改模型数据解析读取文件中存储的所有计量模型信息包括计量模型全局参数如相机参数、测量单位、投影方式所有计量对象的配置如对象类型圆/矩形/线、初始位置、测量长度、Sigma、振幅阈值等模糊规则参数若有配置内存实例化在内存中创建新的计量模型实例将解析后的所有参数加载到该实例中句柄生成为内存中的计量模型实例分配唯一的MetrologyHandle句柄作为后续操作该模型的唯一标识状态初始化确保加载后的模型处于“就绪状态”可直接调用apply_metrology_model、get_metrology_object_indices等算子无需额外初始化。三、参数全详解一输入参数Input Parameters参数名类型功能说明默认值关键取值规则注意事项FileNamefilename.read → (string)要读取的计量模型文件名含路径-取值规则▪ 支持相对路径如model/circle_model.mtr或绝对路径如D:/halcon_model/circle_model.mtr▪ 文件后缀必须为.mtrHALCON计量模型专属格式1. 路径错误、文件不存在会抛出“文件未找到”异常2. 非.mtr格式文件如.txt/.dat会抛出“文件格式无效”异常3. 若仅传文件名如circle_model.mtr则从当前工作目录读取二输出参数Output Parameters参数名类型功能说明关联说明MetrologyHandlemetrology_model → (handle)加载后的计量模型句柄1. 是后续所有2D计量算子如apply_metrology_model/get_metrology_object_result的核心输入2. 每个read_metrology_model调用生成独立的句柄修改该模型不会影响原.mtr文件3. 使用完毕需调用clear_metrology_model释放避免内存泄漏四、使用关键注意事项文件格式约束仅能读取由write_metrology_model保存的.mtr文件其他格式如手动修改的.mtr、重命名的.txt会触发格式异常无法加载路径规则相对路径相对于HALCON程序的“当前工作目录”可通过get_system(working_directory)查看绝对路径建议在项目中使用绝对路径避免因工作目录变化导致文件找不到句柄特性算子返回的句柄是独立的内存实例对该模型的修改如set_metrology_object_param仅作用于内存不会同步到原.mtr文件即使句柄作为输入参数set_metrology_object_param等算子仍可修改其内部状态多线程特性多线程类型可重入能与非排他算子并行运行多线程范围全局可从任意线程调用无并行优化单线程读取文件并加载模型大模型含多个计量对象加载可能耗时稍长内存管理加载后的模型句柄会占用内存必须在使用完毕后调用clear_metrology_model释放否则会导致内存泄漏返回值规则执行成功返回2H_MSG_TRUE文件不存在/格式错误/权限不足时直接抛出异常而非返回错误码。五、算子调用链路一前置算子Possible Predecessorswrite_metrology_model将配置好的计量模型保存为.mtr文件read_metrology_model的必要前提无此算子则无可用的.mtr文件二后置算子Possible Successorsget_metrology_object_indices获取加载模型中的计量对象索引apply_metrology_model使用加载的模型执行边缘检测与拟合get_metrology_object_num_instances统计检测到的实例数量get_metrology_object_result读取拟合后的测量结果clear_metrology_model释放计量模型句柄收尾必备。六、与相似算子的核心差异算子名称核心区别适用场景read_metrology_model从.mtr文件加载已配置完成的计量模型直接可用量产项目、需复用模型的场景避免重复配置参数create_metrology_model创建空的计量模型需手动调用add_metrology_object_*添加对象/配置参数快速验证、临时创建模型的场景write_metrology_model将内存中的计量模型保存为.mtr文件实现持久化配置好模型后保存为文件供后续复用八、总结关键点回顾read_metrology_model核心作用是读取.mtr格式的预保存计量模型生成可直接使用的模型句柄实现模型复用仅支持读取write_metrology_model保存的.mtr文件路径错误/格式不符会触发异常加载后的模型句柄需在使用完毕后调用clear_metrology_model释放避免内存泄漏。