冉隆科
(1.重庆医科大学计算机教研室,重庆400016;2.重庆医科大学法医学及生物信息技术研究室,重庆400016)
角点是图像的一个重要的局部特征,它集中了图像上的很多重要的形状信息。由于角点具有旋转不变性,在没有丢失图像数据信息的条件下,角点是最小化了要处理的数据量,因此角点检测具有极大的实用价值,近年来越来越引起人们的重视。数字图像中的特征主要有边缘特征、区域特征和点特征(其中点特征就是通常所说的角点)[1]。与边缘特征或区域特征相比,点特征指示的数据量明显要少很多:点特征对噪声的敏感也比前两种特征低;在灰度变化或遮掩等情况下,点特征也比边缘特征和区域特征更为可靠:当边缘线断裂或者图像中引入了新内容,边缘特征和区域特征的有效性将会降低,由于特征选取的优劣将直接影响到后续的特征匹配,故制约了这两种特征的应用范围[2]。
在骨龄自动化评定的研究中,对指骨兴趣区的提取,主要是根据定位出的关键点(包括指骨的顶端和谷底点)进行的。通常的方法是依据手掌的形状,依据几何方法进行,这要求拍摄出的骨龄X光图像位置比较标准。而事实上,在拍摄骨龄X光图像时,位置常常与实际情况不相符合。这对采用一般方法来定位指骨关键点显然不适应,本文把角点检测方法技术应用到骨龄X光图像指骨的关键点定位,实验表明,并与传统方法比较,用该方法来定位指骨关键点比较准确,且处理速度快。
Rosenfeld and Johnston[3],简称RJ73,提出用k向量之间的角度k余弦来定位角点,定义公式如下:
其执行过程如下:
1)从m=kN开始。
2)k是递减的,直到cik停止增加,满足cim<ci,m-1<…<cin≮
3)k=n被选取为点i处的最佳值。
4)角点存在于i中,也就是当cin>cip对所有的j满足|i-j|≤n/2,p是点j处的最佳值k。
由于式(1)计算出的角度候选值过多,且定位出的角点存在伪角点,因此必须对伪角点排除掉,Rosenfeld and Weszka[4],本文简称RW75,在对公式(1)计算出的角点值的基础上,再计算均值,即用公式(2)的cik值代替公式(1)中的cik
这里在以上两种算法的基础上,提出一种改进的方法来定位指骨关键点,其算法描述如下:
1)输入原骨龄X光图像;
2)用文献[5]方法对原图像二值化,并提取出图像轮廓;
3)用RJ73算法和RW75算法对步骤2)提出的图像轮廓进行指骨关键点定位;
4)将步骤3)定位出的指骨关键点,映射到原始图像中,从而定位出原图像的关键点。
用改进的方法定位出的指骨关键点位置比较准确,且速度比较快,RJ73和RW75是针对原始骨龄X光图像直接进行的,因此速度极慢。本文提出的算法是对二值化后的图像进行定位,因而计算量减少,从而大大缩短处理时间。
为了验证本算法定位的准确性,本文选取骨龄X光片图像50例(其中男孩30例,女孩20例,年龄范围在2到18岁),部分来源于重庆医科大学附属儿童医院放射科,部分来源于网上[6]。图像大小为1629×2154×8 bit,实验平台为matlab7。采用文献[7-9]所使用的CSS算法,文献[10]用到的Chetverikov算法与本文提出的算法来定位指骨兴趣区关键点。由于定位的准确性与图像的位置、方向和图像的不均匀性密切相关,因此本文测试的图像中含有这三种类型的图像,每副图像代表一种类型,共3幅:图像一位置比较正,但有部分噪音;图像二位置比较倾斜;图像三灰度值不一致且有噪声。指骨ROI的主要关键点包括指骨顶端点和指骨谷底点共9个,分别通过本文算法用3种不同的图像与CSS算法和Chetverikov算法作比较,这两种算法的参数取能获得最好结果的值。图1~图3是用3种不同类型的骨龄图像通过3种算法定位的结果效果图,表1列出了定位结果数据。通过实验数据可知,Chetverikov算法和CSS算法用来定位手指骨ROI的错误率都在33%以上,CSS高达44%,采用本文提出的算法错误率为0%,正确率为100%。
图1 位置比较正的图像Fig.1 Test image with good position
图2 倾斜图像Fig.2 Test tilted image
图3 有噪声图像Fig.3 Test image with noise
表13 种方法比较Tab.1 Comparison of the 3 localization algorithms
对本文算法的性能可以从3个方面进行来衡量:1)准确性。本文提出的算法能准确定位出指骨ROI的9个全部关键点、且没有错误点或多余点。其他两种算法虽能定位到指骨谷底点,但对指骨顶端点都存在定位错误点或多余点或位置有偏差;2)稳定性和鲁棒性。本文提出的算法对图像的噪声、位置和方向都不敏感,因为实验中的三幅图像分别代表这三种情况。当这些情况发生改变后,本算法仍然能准确定位到指腕骨关键点上;3)速度上。用本文提出的方法来定位指骨关键点,平均时间在10 s左右,而其他几种方法都在200 s左右,可见本文提出的方法在时间上有极大的优势。
本文分析了常见的角点定位方法的原理与不足,通过与其它几种角点检测算相法比较。实验表明,用本文提出的算法来定位指骨关键点,不但能精确定位指骨关键点,而且处理速度快,可以直接应用到骨龄自动化评定中。
[1]陈乐,吕文阁,丁少华.角点检测技术研究进展[J].自动化技术与应用,2005,24(5):1-4,8.
CHEN Le,LV Wen-ge,DING Shao-hua.A survey of corner detection algorithms[J].Techniques of Automation and Applications,2005,24(5):1-4,8.
[2]段欠华,王慧琴,毛力.一种改进的Harris角点检测算子[J].科技展望,2010(11):47-48.
DUAN Qian-hua,WANG Hui-qin,MAO Li.Improved harris-based corner detection algorithm[J].Keji Zhanwang,2010(11):47-48.
[3]Rosenfeld A,Johnston E.Angle detection on digital curves.[C]//IEEE Trans.Computers,22:875-878,1973.
[4]A.Rosenfeld and J.S.Weszka.An improved method of angle detection on digital curves[C]//IEEE Trans.Computers,24:940-941,1975.
[5]冉隆科.一种鲁棒的骨龄X射线平片自动轮廓提取方法[J].中国组织工程研究与临床康复,2010,14(52):9735-9738.
RAN Long-ke.An robust automatic contour extraction method for skeletal bone age X-ray images[J].Journal of Clinical Rehabilitative Tissue Engineering Research,2010,14(52):9735-9738.
[6]Anon.Digital hand atlas database system[EB/OL].[2011-06-20].http://www.ipilab.org/BAAweb/
[7]Mokhtarian F,Suomela R.Robust image corner detection through curvature scale space[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1998,20(12):1376-1381.
[8]He X.C.,Yung N.C.,Curvature scale space corner detector with adaptive threshold and dynamic region of support"[C]//Proceedings of the 17th International Conference on Pattern Recognition,2:791-794,2004.
[9]He X C,Yung N H C,“Corner detector based on global and local curvature properties”[J].Optical Engineering,2008,47(5):57-65.
[10]Anon.Detection of high curvature points in planar curves[EB/OL][2011-06-20].http://visual.ipan.sztaki.hu/corner/cornerweb.html