写的潦草,是写给懂的人看的。
假设相机相元最小为4微米,被测物体要求精度为2微米,则需要对原图像进行插值(opencv中的resize(),使用方法网上都有介绍),在两个像素之间插入按灰度分布的若干像素,比如在240和0之间插入60,120,180,这三个像素这样每个像素之间距离就达到了1微米,可以进行测量。
像素的坐标原本为(0,2)和(0,3)类型的,插值以后获得的像素为:(0,2),(0,3),(0,4),(0,5),(0,6);换算成原坐标为(0,2),(0,2.25),(0,2.50),(0,2.75),(0,3)。
标定后直接将(0,2),(0,2.25),(0,2.50),(0,2.75),(0,3)这些坐标进行矫正、计算即可。
如何在(0,2),(0,2.25),(0,2.50),(0,2.75),(0,3)获得边缘点(0,2.75):1.二值化,阈值取(0,2.75)处的灰度值。2.边缘检测。这样就获得了(0,2.75)处的坐标。