开启左侧

[C#] C# 联合halcon 内存释放问题

[复制链接]
Rogers 发表于 2020-10-16 14:35:47 | 显示全部楼层 |阅读模式
C#调用halcon函数, lines_gauss()循环处理图像, 内存一直加,加到5-6G, 图像,区域变量都有及时释放.注释掉lines_gauss()后就正常了
新凉无处暑 发表于 2021-11-30 08:58:46 | 显示全部楼层
手动进行GC回收垃圾
锋利成 发表于 2021-12-7 15:57:06 | 显示全部楼层
gc就行,否则循环调用的时候释放一下
virtual 发表于 2023-2-19 13:40:29 | 显示全部楼层
scale_image_max() 循环处理图像内存也会一直增大。。GC.Collect(); 也无效。。 怎么解决啊
laihuaxun2004 发表于 2023-2-19 15:05:49 | 显示全部楼层
看看是否有输出图像变量是用的原来的图像变量。如果有的话那就是这个原因。halcon 图像变量通常是追加的形式,而不是替换。
比如 :
  1. HOperatorSet.MirrorImage(ho_image, out ho_image,, new HTuple("column"));// 水平翻转
复制代码

这种情况下,内存就会快速增涨,是因ho_image 变量在重新赋值之前没有释放。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表