基于视触融合的正畸弓丝弯制
2022-06-17吕天宇邹英永
吕天宇,邹英永
长春大学,吉林长春,130028
0 引言
随着生活水平越来越高,人们对自身的外貌形象越来越看重,其中牙齿的美观非常关键。但据统计,错颌畸形的发病率非常之高,是第三大口腔疾病[1]。错颌畸形轻则会影响人们的外貌美观,重则会对患者的口腔健康、颌面发育等造成严重影响,而且可能还会受到别人异样的眼光而在一定程度上影响患者的心理状态。所以牙齿的畸形矫正是很有必要的。我国青少年儿童有一半以上属于错颌畸形,约有1.2亿的青少年需要接受正畸治疗[2]。正畸就是矫正畸形的牙齿,使畸形的牙齿排列整齐。对于矫正错颌畸形的方法,通常是使用正畸弓丝对牙齿施加正畸力,迫使牙齿向正确的地方偏移,从而达到牙齿正畸的效果。一般都是医师手工弯制正畸弓丝[3],这样不仅费时费力,还有需要医师丰富的弯制经验,不然很容易弯制失败,而且我们国家的牙科医师数量非常少,只占总人口的0.012%[4],所以很多时候矫治器都供不应求。近年来机器人技术发展越来越快,所以我们不用拘泥于传统的手工来操作,可以考虑用机器人去完成正畸弓丝的弯制工作[5]。正畸弓丝的自动弯制,既可以省下人工成本又提高了弯制的效率[6],非常具有研究意义。正畸弓丝的弯制主要问题就是弯制点、弯制角度和弯制方向,以及弓丝的回弹对弯制结果的影响。所以针对这些问题,运用机器视觉和触觉,实现正畸弓丝的自动弯制。
1 确定正畸弓丝的三维信息
在我们得到正畸弓丝的三维信息之后,就能知道在弓丝的哪个点去弯,需要弯多少度以及往哪个方向去弯。机器双目立体视觉系统,顾名思义就是把摄像机模拟成人的眼睛来采集被测物的形态信息,双目指的就是两个摄像机。由摄像机拍下正畸弓丝,然后将拍到的图像经过一系列的处理,就能得到弓丝的三维信息。
1.1 平行式立体视觉模型
平行式立体视觉模型就是把两部摄像机放在相互平行的位置,这两部摄像机配置必须要完全相同[7-8]。此模型必须要让两部摄像机处于完全平行的位置,所以要求精度比较高,而且通常情况下会受到很多因素的影响,比如我们进行实验时会不小心碰到而导致有晃动,这样可能会使两部摄像机不再平行或者机位不准,这会严重影响到实验结果的精度,所以我们实验前要进行平行校正,另外做实验时要尽量小心一些。
1.2 摄像机的标定
摄像机的标定一般分为两种,传统标定和自标定。这两种标定法各有利弊,所以需要找到一个比较合适的标定方法。“张正友标定”是指张正友教授1998年提出的摄像机标定方法,此标定法兼顾传统标定和自标定的优点。另外,在实际中镜头会产生畸变,张氏标定法只计算主要的径向畸变[9]。下面是张氏标定法的主要步骤。
1.2.1 计算单应性矩阵H
将世界坐标系投影在棋盘格平面上,令棋盘格平面为Z=0的平面。此时:
H是一个齐次矩阵,因有8个未知数,所以至少需要8个方程,也就是需要四个对应点,就可以解出单应性矩阵H。
1.2.2 计算内参数矩阵
由上式可得:
代入可得:
每个单应性矩阵能提供两个方程,而内参数矩阵包含5个参数,想要求解,则至少需要3个单应性矩阵。通过改变相机与标定板之间的相对位置来得到三个不同的单应性矩阵。为了方便计算,定义如下:
B是一个对称阵,它的有效元素为六个,简化为向量b,即:
从上可以得到:
利用约束条件可以得到:
然后通过cholesky分解,得到相机的内参数矩阵K。
1.2.3 计算外参数矩阵
由以上的推导,可得:
1.3 图像数据处理
1.3.1 图像降噪
开始得到的图像中都会有一定的噪声,噪声会对图像的精度有很大的影响,比如会使图像的清晰度下降、对比度不明显等,所以首先对图像进行降噪是非常重要的。降噪手段常见的有两种,一种是均值滤波,一种是中值滤波。
均值滤波是通过求出某个邻域内像素点的平均值来进行降噪的,在一个方形邻域S内,均值滤波的计算公式如下所示:
其中M为S邻域内的像素值个数。但均值滤波有比较明显缺点,它在降噪过程中会毁坏图像的细节,所以本文不采用此降噪方式。
中值滤波法是将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。中值就是一组按大小顺序排列的变量中处于中间位置的那个变量,由中值的定义可以知道中值滤波是一种非线性的降噪方式,它属于平滑滤波。中值滤波的具体原理如下:
中值滤波能够很好地保护图像尖锐的边缘,中值作为输出点也非常合适,所以降噪效果相对来说比较好,我们采用中值滤波进行图像降噪处理。
1.3.2 直方图均衡化
对图像降噪完成之后,我们还需要对图像进行进一步处理。直方图均衡化是一种常用的灰度变换方式,它可以增强图像的对比度。设定图像的灰度级的范围为,可以用=表示,其中为第级灰度值,为图像中灰度值为的像素个数。假设灰度图像的维数是,则图像的像素总数为,灰度直方图可以表示为:
经过归一化后,能够得到均衡化的直方图结果:
1.3.3 LOG边缘检测
LOG算法有两个步骤,首先高斯滤波,然后拉普拉斯边缘提取。Laplace算子对通过图像进行操作实现边缘检测时,对离散点和噪声比较敏感。所以,首先对图像进行高斯卷积滤波进行降噪处理,再采用Laplace算子进行边缘检测,就能够提高算子对噪声的抗干扰能力。
1.3.4 图像二值化
当我们把图像中的目标分割出来时,需要用到图像的二值化。本文二值化的方法就是设定一个合适的灰度阈值,然后图像中的灰度值只有两种结果,要么大于阈值要么小于阈值,灰度大于阈值的像素为这样就能把图像中的背景和目标分割出来了。
1.3.5 线特征提取方法
一般来说,线段检测方法可以分为两大类:基于梯度方向的线段检测方法和基于梯度幅度的线段检测方法。我们用到的Canny算法属于后者,它主要分为五个步骤。(1)为了避免过多的噪声对边缘检测的干扰,用高斯滤波和图像进行卷积来平滑图像。(2)利用梯度算子计算梯度的大小和方向。(3)用非最大抑制来决定像素是否比相邻像素更适合作为边缘候选,以消除杂散响应。(4)用双阈值检测来判别真实边缘和潜在边缘。(5)不仅真实边缘会产生弱边缘,那些杂散响应也会产生,所以检测到的边缘还会有误差。为了消除这些误差,需要抑制那些孤立的低阈值点。经过上面几个步骤就可以得到图像中目标的线特征。
1.3.6 基于线特征的立体匹配
以上所说的是二维图像,我们需要让其恢复到三维物体,所以需要进行立体匹配。通过立体匹配后,机器人按照得到的三维信息,就能进行正畸弓丝的弯制。
2 机器人触觉监测回弹
在弯制过程中,正畸弓丝的变形分为两种,弹性形变和塑性形变。发生弹性形变时,弓丝在卸掉施加力之后会自动复原,也就是回弹,所以即便我们把弓丝弯制成标准形状,松开后弓丝还会回弹,造成实验结果的误差。要将弹性形变变成塑性形变,弓丝才能不会回弹。如果正畸弓丝发生的塑性形变刚好到标准形状,就说明弓丝弯制成功。弓丝在弹性形变时,回弹会有回弹力,我们可以通过检测弓丝的回弹力来判断是弹性形变还是塑性形变,有回弹力时是弹性形变,回弹力为零时才是塑性形变。具体步骤如下:得到正畸弓丝需要弯制的角度之后,较这个角度多弯制一些角度,为角度,静置若干时间,然后机械臂再原路返回到角度,通过灵巧手上的触觉传感器检测弯制弓丝的回弹力,如果此时回弹力为零,说明弯制成功;如果此时回弹力不为零,在角度的基础上再多弯制角度,重复以上操作,直到回弹力为零为止。在实际中,要让回弹力达到绝对为零是比较困难的,所以我们在精度允许范围内设置一个回弹力值,只要即可认为完成任务。
3 视觉和触觉相融合
我们可以把弯制个性化正畸弓丝的过程分为了两部分。前半部分过程是运用机器视觉通过标准的正畸弓丝的形状来确定弓丝弯制的位置点、弯制角度以及弯制方向,包括张氏标定法标定摄像机、选择中值滤波对图像进行降噪处理、直方图均衡化增加图像对比度、使用LOG算法对图像的目标进行边缘检测、经过图像二值化把图像中的背景和目标分割出来、线特征提取以及最后的立体匹配使弓丝的二维图像恢复到三维立体模型,然后机器人根据这些三维信息进行正畸弓丝的弯制。当前半部分工作完成后,虽然我们已经根据机器视觉获取的三维信息把正畸弓丝弯制到位,但是由于弓丝材料具有回弹性,当撤销对弓丝施加的作用力之后弓丝会有一定的回弹量,这样会使弓丝不能按预期成形,对弯制结果的精度造成严重的影响。所以,如何去解决掉正畸弓丝弯制过程中的回弹问题是非常重要的,决定着我们最终实验结果的成功。我们运用机器触觉去监测弓丝弯制过程中的回弹力,当弓丝弯制到位以后并且回弹力低于规定的值后,也就说明此时的弓丝几乎不会再回弹,然后正畸弓丝才算真正的弯制成功,从而解决了正畸弓丝在弯制过程中的回弹问题。
4 结语
建立了平行式双目立体视觉模型,利用几何关系可以求出被测物的三维坐标;对摄像机进行标定,选择了张正友标定法,求得摄像机内外参数;比较了均值滤波和中值滤波,选择中值滤波对图像进行降噪处理;直方图均衡化增强图像的对比度,使图像细节更为清晰;使用LOG算法对图像的目标进行边缘检测;为了把图像中的背景和目标分割出来,利用二值化对图像进行处理;使Canny算法对图像中的正畸弓丝进行线特征提取;最后基于线特征的立体匹配使摄像机拍摄的二维图像恢复到三维物体。提出了运用机器触觉去监测弓丝的回弹力,解决正畸弓丝在弯制过程中的回弹问题。