halcon 双线程 先find shape model 然后find ncc model 显示not enough memory avaliable in operator find ncc

1.首先尝试  内存回收  ,GC.colloct()。没有效果。

2.将相机保存的图片转换成灰度图再find,有减少出现次数,但还是会出现。

3.将himage.find_shape_model  全部改成  HOperatorSet.find_shape_model(hobject,.......),感觉又减少了一些,但是还会出现。

4.HSystem.SetSystem("temporary_mem_cache", "false");不使用缓存,减少缓存使用,减少了很多,但是偶尔还会出现。

5.有网友说使用64位编译,但程序使用了伺服驱动dll是32位的,无法更换。无法验证效果。

6.使用前后clear_shape_model,clear_ncc_model。我之前因为需要不断的重复使用多个模型,每次使用一个,所以将模型(model)先读到一个变量里,用到时直接拿过来用,用完也没有dispose或clear。现在改成每次使用时,从文件读取model,再find。基本上不怎么出现内存不足的情况了。但是又出现两个问题,一是匹配速度比较慢,二是偶尔出现尝试读取或写入内存错误。

7.angleStep设大一点,角度范围设小一点,可以加快搜索速度,减少内存

希望能找到更好的解决办法。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
find_shape_modelHalcon中的一个函数,用于在图像中寻找特定形状的模板。根据引用和引用的内容,该函数有两个关键参数:AngleStart和AngleExtent。AngleStart确定了模板搜索的起始角度,而AngleExtent确定了搜索的角度范围。这两个参数必须与使用create_shape_model函数创建模板时给定的角度范围有重叠。如果角度范围不重叠,即使在搜索时的角度模360后是重叠的,也无法找到模板。 需要注意的是,在create_shape_model函数中,角度是以度来表示,在find_shape_model函数中,角度是以弧度来表示。因此,在设置AngleStart和AngleExtent时需要根据具体情况进行转换。 总结来说,使用find_shape_model函数来寻找形状模板时,需要确保AngleStart和AngleExtent的设置与create_shape_model函数中给定的角度范围有重叠,以确保能够正确找到模板。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Halcon算子—find_shape_model参数解析及优化](https://blog.csdn.net/the_future_way/article/details/115348751)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Halcon之算子create_shape_model和find_shape_model的总结](https://blog.csdn.net/Kevin_Sun777/article/details/108936080)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值