劉愛胤,熊根良,姚健康,樂文輝
(南昌大學(xué)機(jī)電工程學(xué)院,江西 南昌 330031)
艾灸作為中醫(yī)治療中一種重要的治療手段,在國(guó)人心中有很高的知名度。與西醫(yī)治療不同,艾灸主要是用于醫(yī)療保健和疾病防范方面,它具有強(qiáng)身健體的功效,而且副作用較小,能廣泛適用于各種人群。在《中國(guó)制造2025》明確指出把生物醫(yī)藥及高性能醫(yī)療器械作為未來(lái)重點(diǎn)發(fā)展的十大領(lǐng)域之一,這對(duì)我國(guó)的醫(yī)療器械業(yè)無(wú)疑會(huì)產(chǎn)生深遠(yuǎn)影響。近年來(lái),許多高校、研究機(jī)構(gòu)紛紛投入了對(duì)艾灸自動(dòng)尋穴的研究中,研發(fā)出了許多卓有成效的自動(dòng)尋穴的方法和系統(tǒng)。其中屬通過視覺技術(shù)和神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)自動(dòng)尋穴的方法研究地較為普遍。還有一些研究是利用人體某方面的特性來(lái)實(shí)現(xiàn)的,如利用人體穴位低電阻特性[1,2],利用人體穴位處與非穴位處對(duì)光的吸收、散射和反射程度不同的原理等方法[3][4]也能部分實(shí)現(xiàn)自動(dòng)尋穴的要求,但由于目前對(duì)這些特性的基礎(chǔ)性研究還不完善,因此這些尋穴方法還存在很大的局限性,無(wú)法實(shí)現(xiàn)推廣使用。
利用神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)自動(dòng)尋穴的方法[5],更適合于尋找特定的幾個(gè)穴位點(diǎn),而且當(dāng)要尋找的穴位點(diǎn)增加時(shí)其尋穴精度可能會(huì)相應(yīng)地下降,因此不適用于較大范圍地尋找穴位。還有一個(gè)缺陷就是,它需要大量的樣本來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò),工作量大,當(dāng)需要尋找之前沒有訓(xùn)練過的穴位時(shí),需要重新對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,因此這種方法適應(yīng)性較差。相比而言,通過視覺技術(shù)來(lái)實(shí)現(xiàn)自動(dòng)尋穴的方法則更為成熟,也是最早被引入到中醫(yī)腧穴領(lǐng)域的一種技術(shù)。本文就是基于視覺技術(shù)來(lái)實(shí)現(xiàn)艾灸自動(dòng)尋穴。
2011年山東建筑大學(xué)提出一種基于歸一化相關(guān)模板匹配的穴位定位與跟蹤研究方法[6],通過對(duì)貼在人體穴位上的人工標(biāo)志進(jìn)行模板匹配,實(shí)現(xiàn)了移動(dòng)人體的實(shí)時(shí)穴位定位與跟蹤。但這種方法需要將模板圖像按一定的順序在檢測(cè)圖像上滑移,每滑移一次就要進(jìn)行一次相關(guān)性計(jì)算[7],直到遍歷完整張圖像為止,因此計(jì)算量較大。而且其對(duì)圖像的灰度線性變換較敏感,一旦進(jìn)入信息貧乏的區(qū)域,誤匹配率會(huì)大大提升[8]。本文提出一種基于霍夫圓和標(biāo)志物形心獲取穴位點(diǎn)位置信息的方法,這種方法能夠在精確獲取穴位點(diǎn)位置的條件下,有效減少標(biāo)志物檢測(cè)時(shí)的計(jì)算量,從而加快算法的執(zhí)行速度,提高算法的實(shí)時(shí)性。
本方法為了實(shí)現(xiàn)穴位點(diǎn)的快速尋找需要在主要穴位點(diǎn)貼上標(biāo)志物。標(biāo)志物要能滿足,其形狀計(jì)算機(jī)易檢測(cè)[9]、顏色與人體膚色差異較大。因此,選擇藍(lán)色圓形標(biāo)簽紙作為標(biāo)志物。因?yàn)閳A形能夠很容易地通過霍夫圓變換識(shí)別出來(lái),且圓有很好的自相似性即使標(biāo)志物有一定程度的傾斜也能被較好地識(shí)別出來(lái)。
為了提高霍夫圓檢測(cè)的運(yùn)算速度和準(zhǔn)確率,需要對(duì)原圖像進(jìn)行預(yù)處理來(lái)去除不需要的信息和消除部分干擾。首先將原圖像轉(zhuǎn)化為灰度圖像,降低圖像的信息量便于后續(xù)圖像處理,然后進(jìn)行直方圖均衡化、二值化等一系列的處理,使圖像中物體邊緣更為清晰明顯,對(duì)處理后的圖像提取輪廓從而使圖像邊緣信息更為精簡(jiǎn)[10]。最后,對(duì)輪廓圖像進(jìn)行霍夫圓檢測(cè),獲取標(biāo)志物的位置信息。
霍夫圓檢測(cè)是將圖像中每一個(gè)像素點(diǎn)視為潛在圓上的點(diǎn),通過投票生成累加容器,設(shè)置一個(gè)累計(jì)權(quán)重來(lái)定位圓。在X-Y平面內(nèi),任意一圓可以用(x-a)2+(y-b)2=r2來(lái)表示,其中(a,b)為圓心,r為半徑,可將其視為二元函數(shù)f(x,y)=r2。亦可以將其變換為a-b-r空間中的函數(shù)(a-x)2+(b-y)2-r2=0,此時(shí)x、y便是常數(shù),可將其視為三元函數(shù)f(a,b,r)=0。此時(shí)X-Y平面中圓上一點(diǎn)便對(duì)應(yīng)a-b-r空間內(nèi)一條三維曲線;X-Y平面的圓上所有點(diǎn)對(duì)應(yīng)的a-b-r空間內(nèi)的所有曲線都相交于一點(diǎn),此點(diǎn)便是X-Y平面上圓的圓心(a0,b0,r0),此種檢測(cè)圓位置的方法便是霍夫圓檢測(cè)。累加容器就是通過統(tǒng)計(jì)a-b-r空間內(nèi)相交曲線的累積數(shù)量,當(dāng)其數(shù)量大于一定的閾值時(shí)就認(rèn)為這些曲線對(duì)應(yīng)的X-Y平面內(nèi)的點(diǎn)構(gòu)成一個(gè)圓。
由于原始輪廓圖中往往存在許多微小輪廓,而這些微小輪廓對(duì)標(biāo)志物的霍夫圓檢測(cè)正確率會(huì)產(chǎn)生很大的影響[11][12]。因此,需要一個(gè)合適的輪廓閾值篩選。對(duì)輪廓圖進(jìn)行先膨脹后腐蝕處理,使較近鄰的輪廓之間相互連接,部分微小輪廓得到消除。統(tǒng)計(jì)各輪廓的長(zhǎng)度,計(jì)算均值,以此均值的加權(quán)值作為閾值對(duì)輪廓圖進(jìn)行處理從而消除微小輪廓。公式如下
(1)
(2)
式中,ci為輪廓i的周長(zhǎng),n為輪廓個(gè)數(shù),AVG為輪廓長(zhǎng)度均值,profilei(x,y)為輪廓i的圖像。微小輪廓濾除后的霍夫圓檢測(cè)效果如下圖1。
圖1 霍夫圓檢測(cè)
人體模特上貼有8個(gè)圓形標(biāo)志物,圖1(a)中檢測(cè)出了43個(gè)霍夫圓,正確率為18.6%;圖1(b)通過微小輪廓過濾后獲得了12個(gè)霍夫圓,正確率為66.7%。輪廓過濾前后都沒有出現(xiàn)標(biāo)志物漏檢的情況。
由于霍夫圓檢測(cè)算法的穩(wěn)定性不佳受環(huán)境因素影響較大,再加上人體生理凹陷、標(biāo)志物不完全垂直于攝像頭光軸等原因,圖像中的標(biāo)志物并不一定是標(biāo)準(zhǔn)的圓,會(huì)導(dǎo)致其檢測(cè)效率低下,存在錯(cuò)檢、漏檢等情況。因此,在本算法中霍夫圓檢測(cè)算法用于對(duì)圖像中的圓進(jìn)行初步檢測(cè),獲取標(biāo)志物的候選區(qū)域。為了最大可能地降低圓的漏檢率,算法在不大幅增加計(jì)算量的前提下,調(diào)低了霍夫圓的檢測(cè)條件,如降低圓心累加器閾值、擴(kuò)大檢測(cè)的圓半徑范圍,使得霍夫圓區(qū)域中包含所有的標(biāo)志物。此時(shí)候選區(qū)域包含許多虛假霍夫圓,因此通過對(duì)候選區(qū)域進(jìn)行顏色檢測(cè)來(lái)將其消除[13]。
顏色檢測(cè)需要將圖像由RGB模型轉(zhuǎn)為HSV模型[14],此時(shí)任意顏色都是由色調(diào)、飽和度和亮度三個(gè)分量組成,而顏色變化的差異性主要是反映在色調(diào)上,顏色檢測(cè)就是檢測(cè)圖像中指定色調(diào)范圍內(nèi)的顏色區(qū)域。標(biāo)志物的顏色為藍(lán)色,而藍(lán)色對(duì)應(yīng)的色調(diào)區(qū)域?yàn)?5°~130°,對(duì)候選區(qū)域進(jìn)行藍(lán)色調(diào)檢測(cè)便可消除虛假霍夫圓區(qū)域。顏色檢測(cè)的流程圖如圖2:
圖2 顏色檢測(cè)流程圖
加入顏色檢測(cè)后的結(jié)果如圖3。
圖3 候選區(qū)域顏色檢測(cè)
標(biāo)志物中有一個(gè)為紅色,用于測(cè)試顏色檢測(cè)的準(zhǔn)確性,通過處理后圖3中檢測(cè)出了7個(gè)藍(lán)色標(biāo)志物,紅色標(biāo)志物、其它虛假霍夫圓均被濾除,正確率為100%。
顏色檢測(cè)只是篩選出候選區(qū)域中的虛假霍夫圓區(qū)域,由于標(biāo)志物在圖像中不完全接近于圓的原因,霍夫圓的圓心并不一定與標(biāo)志物中心重合。如圖4所示,圖中被紅圈標(biāo)出的標(biāo)志物中的綠點(diǎn)為霍夫圓中心,其與標(biāo)志物實(shí)際中心偏離,因此需要使用其它方法獲得標(biāo)志物的實(shí)際中心位置。
圖4 霍夫圓中心位置
針對(duì)這種情況,為了準(zhǔn)確地檢測(cè)出標(biāo)志物中心的位置,本文選擇從標(biāo)志物的形狀特征入手。圓具有良好的自相似性和對(duì)稱性,因此其即使在攝像頭拍攝時(shí)由于標(biāo)志物傾斜、標(biāo)志物不完全垂直于光軸等原因?qū)е聢D像中標(biāo)志物變形,其形狀也是趨于橢圓,而橢圓中心與標(biāo)志物的中心還是重合的。受此啟發(fā),本算法提出一種基于輪廓形心的位置檢測(cè)方法,實(shí)現(xiàn)對(duì)標(biāo)志物中心位置坐標(biāo)的精確定位。
輪廓的形心是由圖像的幾何矩mpq計(jì)算而來(lái)。設(shè)圖像的像素尺寸為M*N,f(i,j)為(i,j)位置處圖像的像素值,有如下公式
(3)
對(duì)于輪廓圖像屬于二值圖,f(i,j)非零即1。m10便是圖像關(guān)于x軸的一階矩,m01為圖像關(guān)于y軸的一階矩,m00則是圖像的原點(diǎn)矩。形心(px,py)的計(jì)算公式如下
(4)
圖5和表1所示,輪廓形心檢測(cè)最大誤差在1個(gè)像素內(nèi),而霍夫圓檢測(cè)平均誤差就達(dá)到了2.1個(gè)像素。因此,該方法獲取的標(biāo)志物位置比霍夫圓檢測(cè)更為精準(zhǔn)。
表1 不同方法獲取標(biāo)志物位置結(jié)果(單位:pixel)
圖5 不同檢測(cè)方法獲取標(biāo)志物中心的圖像坐標(biāo)位置
前面獲取的標(biāo)志物位置是基于圖像像素坐標(biāo)系,但在許多情況下空間三維坐標(biāo)更為有用,其可用于控制執(zhí)行機(jī)構(gòu)。獲取空間三維坐標(biāo)還需要得到目標(biāo)位置的高度信息,而單靠一個(gè)彩色攝像頭較難實(shí)現(xiàn)高度的獲取,因此本文利用深度攝像頭獲取高度信息,再采用坐標(biāo)映射的方法實(shí)現(xiàn)彩色圖像與深度圖像的匹配,進(jìn)而得到目標(biāo)點(diǎn)的空間三維坐標(biāo)。
深度圖像匹配的目的就是將深度圖像的圖像坐標(biāo)系轉(zhuǎn)換到彩色圖像的圖像坐標(biāo)系之下。設(shè)彩色攝像頭對(duì)應(yīng)的圖像坐標(biāo)和相機(jī)坐標(biāo)分別為(uC,vC)、(xC,yC,zC),深度攝像頭對(duì)應(yīng)的圖像坐標(biāo)和相機(jī)坐標(biāo)分別為(uD,vD)、(xD,yD,zD)。此時(shí)存在如下公式:
(5)
其中、RD分別為彩色圖像和深度圖像的內(nèi)參矩陣。將兩相機(jī)進(jìn)行聯(lián)合標(biāo)定可獲得兩相機(jī)坐標(biāo)系之間的外參矩陣M,M是由平移向量和旋轉(zhuǎn)矩陣組成的4*4矩陣[15]。此時(shí)彩色相機(jī)坐標(biāo)系與深度相機(jī)坐標(biāo)系存在如下關(guān)系
(6)
將上述方程聯(lián)立求解可得彩色圖像坐標(biāo)與深度圖像坐標(biāo)的關(guān)系方程如下
(7)
接下來(lái)就是將圖像坐標(biāo)轉(zhuǎn)為三維空間坐標(biāo),如以下示意圖空間坐標(biāo)系以深度攝像頭的中心點(diǎn)位置為原點(diǎn),原點(diǎn)以左為X正半軸,原點(diǎn)以上為Y正半軸,原點(diǎn)向外為Z正半軸。
圖6 相機(jī)坐標(biāo)系及小孔成像模型
深度圖像的像素值即是該點(diǎn)的深度,根據(jù)小孔成像模型和相似三角形原理可得:
(8)
其中(u0,v0)為光心在圖像平面上的坐標(biāo),dx、dy分別為每個(gè)像素在x軸、y軸方向的物理尺寸。由此獲得目標(biāo)點(diǎn)在相機(jī)三維坐標(biāo)系下的坐標(biāo)(X,Y,Z)。
如圖7檢測(cè)標(biāo)定紙中黑白色塊角點(diǎn)坐標(biāo),標(biāo)定紙的右上角與光心重合,標(biāo)定紙兩邊緣分別與相機(jī)坐標(biāo)系x、y軸平行,攝像頭到標(biāo)定紙的垂直距離為103cm。實(shí)際位置和檢測(cè)位置如表2。
圖7 獲取相機(jī)三維空間坐標(biāo)
表2 相機(jī)空間三維坐標(biāo)(單位:cm)
本文設(shè)計(jì)了一種基于輪廓形心的的標(biāo)志物目標(biāo)位置檢測(cè)的方法,該方法以霍夫圓檢測(cè)獲取標(biāo)志物的候選區(qū)域,通過顏色檢測(cè)對(duì)候選區(qū)域篩選,再計(jì)算輪廓形心獲取標(biāo)志物的精確位置,最后結(jié)合深度圖像將目標(biāo)點(diǎn)位置由圖像坐標(biāo)轉(zhuǎn)換為相機(jī)空間三維坐標(biāo)。該方法不僅克服了霍夫圓對(duì)標(biāo)志物檢測(cè)時(shí)不穩(wěn)定的問題,而且在標(biāo)志物存在變形的情況下實(shí)現(xiàn)了位置的精確定位,其精度能夠在一個(gè)像素內(nèi),同時(shí)也實(shí)現(xiàn)了三維信息獲取,具有位置獲取精度高、實(shí)用性較好的特點(diǎn)。