做这个项目已经有一段时间了,如果没记错的话大概是3月末开始的,上课放假带带拉拉的已经两个多月了,把目前的情况客观的总结一下。
1.问题描述:首先我要解决的是芯片的定位问题,那么如何准确定位,根据什么判断条件实现准确定位,这是我要考虑的问题,我用的是获取芯片的当前角度和中心点坐标来确定位置。相关算法在下面介绍。定位时分两块,先得到模板芯片的角度和中心点,将它作为一个判断标准,之后用同样的步骤去检测待测芯片的角度和中心点的数据,与模板数据比对得到偏差,这个偏差就是模板与待测件的位置偏差,得到偏差之后就可以通过偏差纠正待测件的位置信息,实现准确定位。
2.算法方面,芯片定位的算法大概是这样的:先是一些常规的图像处理,获取关键位置信息的算法是:先用findcounter找到芯片的最外层的轮廓点集,这些得到的点集作为另外一个算法最小外接矩形的输入,用最小外界矩形算法会返回矩形的中心点和角度信息,但期间还要对照相机获得的芯片进行形态学处理,先腐蚀再开操作,这样得到的图片信息就会使后面的核心算法编的准确
3.界面方面,项目的最终目的是为了最后用在实践中,所以说要方便人们的使用,那么就需要一个界面来承载我们的核心功能来供用户使用。现在我做的界面可以直接在控件中读取照相机显示的实时信息,可以通过代码实现读取实时图片,然后对图片进行处理,实现定位。但目前存在一些问题,因为照相机的照片太大,所以要在mfc的界面显示要对图片缩放,而且为了提高检测的准确度,要设定图片roi区域,这就涉及到缩放前后的点坐标的对应,因为我们要解决的问题和位置有关,所以位置信息必须准确,目前这些交错的复杂关系还没有理清,希望能早日解决,今天就写到这里