Halcon奔溃问题汇总

经常使用halcon的童鞋会知道,halcon不像是opencv那样的开源库,奔溃还能用try,catch接住,都是弹窗,正大光明告诉你老子崩溃了。这样用户体验就很差。有什么解决方案么?我只能说,请做好防呆。

说到底halcon奔溃的根本就是地址为空,你却死命访问。就像人不在家,你好使不使敲人家们,人家同意你进才怪。

我是做工业检测算法的。这篇博客从今天起至以后,我将会持续更新在处理过程中遇到的奔溃问题,作为记录。

①count_obj

再汇总检出错误前,需要筛选一些特征条件,接着可以用smallest_rectangle1,或者别的能得到错误区域信息的函数,然后使用count_obj汇总上述select挑选之后的区域 。

问题在于偶尔会出现,select之后region为空,count_obj却为1,导致后续反问空地址崩溃。

解决方案:

HTuple len;
area_center(SelectedRegions, &Area, &Row, &Column);
tuple_length(Row, &len);
if(len[0].I() < 1)
    return -1;
select_shape(SelectedRegions, &SelectedRegions, "area", "and", 1, 99999);//把面积为0的Region删除

 

你可能感兴趣的:(Halcon工业检测)