今天也是函数的封装和调用,新增了特征筛选和计算数量部分。
1. 准备工作
相较于昨天,今天多了一个按钮“特征筛选后”,这个按钮的点击事件综合了包括特征筛选、计算数量、显示文本等在内的方法。
这里新建了一个类,封装了一个函数用于存放矩形的各种变量,具体如上图所示。
在Package类中设置了12种颜色。
这一部分代码主要是在对某些图片进行读取、阈值分割、打散、特征筛选后将筛选出来的不同物件计数并打上不同的颜色。
这一部分就是将前面封装好的函数,也就是创建的RectangleDef中的变量在这个方法中使用。然后就是选择是实体图还是只有边框的图,对应的“fill”,“margin”。在使用封装好的函数前要进行实例化,然后就是框出最小外接矩形(SmallestRectangle2)并绘制(GenRectangle2)。
最后就是对文本框的字体进行调整,这里选择窗口上的字体为红色。目前为止准备工作就做好了。
值得一提的是如果在导入Color的时候报错需要将该文件放在你项目的Debug下,文件还是在桌面上打开halcon的文件位置找到。
2.用矩形圈出器件并展示图片
代码部分注释由上图所示,主要的流程就是读取图片、阈值分割、打散、特征筛选、圈出外界矩、计数并显示。
以上就是识别结果,只是能找出符合灰度值在0-60范围内的物件,第一幅图左侧的干扰项明显未消除,代码还有很多地方需要优化,本次日志至此结束。