張忠民,張 磊
(哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001)
利用圖像拼接方法獲得全景圖像,被廣泛應(yīng)用于航海、航空、遙感圖像分析、醫(yī)學(xué)圖像分析等諸多領(lǐng)域。全景圖像的展開(kāi)是其具體應(yīng)用中必不可少的環(huán)節(jié)。全景圖像的拼接與展開(kāi)要求獲取大視角,寬范圍的視覺(jué)信息[1]。
圖像拼接技術(shù)的核心在于準(zhǔn)確地找到不同圖像間重疊部分的區(qū)域或范圍,即圖像配準(zhǔn)問(wèn)題。常用的配準(zhǔn)算法有比值匹配法,它是從一幅圖像的重疊區(qū)域中從部分相鄰的兩列中取出部分像素,然后比值作模板,在另一幅圖像中搜索最佳匹配,這種算法計(jì)算量較小,但精度較低[1-2]。另外就是塊匹配法,是以一幅圖像重疊區(qū)域中的一塊作為模板,從另一幅圖像中搜索與此模板相似的匹配塊。這種算法精度較高,但計(jì)算量過(guò)大。文中要求圖像像素為4096×4096,如以上算法應(yīng)用于實(shí)際系統(tǒng)中,那其精度低或計(jì)算量大速度慢的缺點(diǎn)尤為明顯。
針對(duì)系統(tǒng)所拼圖像的特殊性,提出一種基于圓心定位的全景圖像拼接與展開(kāi)算法,其計(jì)算量小、速度快、精度符合要求,適合實(shí)際應(yīng)用。這種基于圓心定位的全景拼接算法是以兩幅帶拼接圖像中的一幅為基準(zhǔn),建立坐標(biāo)系,對(duì)兩幅圖片分別進(jìn)行羅貝特邊緣檢測(cè),確定兩幅4096×3072待拼接的全景圖像的邊緣,并找出圓心,進(jìn)行拼接,經(jīng)過(guò)仿真實(shí)驗(yàn),該算法速度快、精度高、適合實(shí)際需要[3]。
全景視覺(jué)采集系統(tǒng)鏡頭由兩片CCD組成,單個(gè)CCD輸出圖像的分辨率為4096×3072。鏡頭同時(shí)采集一組大小為4096×3072,光照、旋轉(zhuǎn)等相同圖像,拼接后圖像的分辨率為4096×4096。系統(tǒng)鏡頭有明顯黑色圓形邊緣,具有特殊性。針對(duì)此特殊性,文中提出一種基于圓心定位的全景圖像拼接方法。該設(shè)計(jì)首先需要對(duì)兩幅圖像進(jìn)行灰度處理并提取圖像邊緣[4]。
Robert算子是一種利用局部差分尋找邊緣的算子。由式(1)給出
其中,f(x,y)是具有整數(shù)像素坐標(biāo)的輸入圖像灰度,在實(shí)際應(yīng)用中常采用交叉差分計(jì)算。各像素關(guān)系如表1所示。
表1 Robert算子的像素點(diǎn)位置
Robert算子是2×2的算子,對(duì)陡峭的低噪聲圖像響應(yīng)最好[5]。
該系統(tǒng)具有特殊定位性,如果找到鏡頭所采集圖像的圓心即可進(jìn)行定位拼接。圓形的直徑只有唯一的值且每條直徑都通過(guò)圓心,圓形邊緣已由上述Robert算子求出[6],圖1為原始圖像以及經(jīng)過(guò)Robert檢測(cè)的圖像。
圖1 原始圖像以及經(jīng)過(guò)Robert檢測(cè)的圖像
利用上述方法對(duì)CCD1及CCD2所采集的圖像分別進(jìn)行處理,得到兩幅邊緣檢測(cè)圖像,為圖像拼接做準(zhǔn)備。兩幅圖像的邊緣較為明顯,符合系統(tǒng)圖像拼接要求。
由于現(xiàn)有硬件的圖像采集設(shè)備,鏡頭由兩片CCD成一定角度組成,由于每片CCD像素陣列均為4096×3072,因此拼接所形成的傳感區(qū)域包含的像素陣列為4096×4096,中間重疊區(qū)的大小為4096×1024。因此須將上述采集的兩幅圖像進(jìn)行拼接處理。
拼接的關(guān)鍵是找到每一片CCD的分割線,文中針對(duì)CCD所采集到圖像的特征,設(shè)計(jì)了一種基于圓心定位的圖像拼接算法。由于采集到的圖像主要信息在兩個(gè)大圓內(nèi),因此要完成圖像拼接,只要找到兩個(gè)大圓的圓心,便可確定每一個(gè)圖像的拼接分割線,所以實(shí)現(xiàn)拼接的關(guān)鍵是找到圓心坐標(biāo)。由于處在圓的直徑端點(diǎn)上的兩點(diǎn)距離最大,而直徑的中心即圓心的位置,所以只要找到圓上距離最大的兩點(diǎn)的位置,便可確定圓的一條直徑,從而確定圓心的位置。算法的具體步驟如下:
(1)將圖像變?yōu)榛叶葓D像,并進(jìn)行圖像邊緣提取邊緣上的點(diǎn)灰度值為1,否則為0,確定大圓上的點(diǎn),設(shè)f1為右側(cè)即橫坐標(biāo)方向有缺失的圖像,f2為左側(cè)有缺失的圖像。
(2)為防止取到圓上缺失部分的點(diǎn),在f1上取一點(diǎn),其中,η1,μ1∈[0,1]的隨機(jī)數(shù)。c,t為f1,f2橫縱像素點(diǎn)的個(gè)數(shù)。同理 f2在上取一點(diǎn)
(3)計(jì)算f1上灰度值為1的點(diǎn)距離S1的歐式距離,找到距離點(diǎn)S1最遠(yuǎn)的點(diǎn),設(shè)為A1,然后計(jì)算f1上灰度值為一的點(diǎn)距離A1的歐式距離,找到距離點(diǎn)A1最遠(yuǎn)的點(diǎn),設(shè)為B1,于是A1,B1即為圓上某直徑的兩個(gè)端點(diǎn),則f1圖像的圓心,如圖3所示,用同樣方法多次求圓心坐標(biāo),取平均值,同理可得f2圖像的圓心
(4)由于兩幅圖像的縱坐標(biāo)方向上不會(huì)產(chǎn)生偏差,所以根據(jù)圓心的橫坐標(biāo)即確定兩幅圖割線的位置,取f1中所有橫坐標(biāo)值小于圓心O1橫坐標(biāo)值的像素點(diǎn),與取f2中所有橫坐標(biāo)值大于圓心O2橫坐標(biāo)值的像素點(diǎn),進(jìn)行拼接,于是得到拼接圖像。
圖2 邊緣點(diǎn)的取得
由圖2可知,由于實(shí)際中圓形的不完整性,經(jīng)上述方法找到的直徑端點(diǎn)可能是圓形缺失邊緣,即圖中Robert檢測(cè)右邊緣部分,這就增大了算法的不可靠性,因此,用算法中設(shè)定閾值來(lái)避免這一可能性的發(fā)生。
圖3 CCD采集圖像
折反射全景成像裝置拍攝的環(huán)狀圖像存在同心圓環(huán)狀變形,須柱面展開(kāi),方能得到符合人眼視覺(jué)習(xí)慣的柱面全景圖像。圖4描述全景圖像查表展開(kāi)法的原理[8],預(yù)先計(jì)算出展開(kāi)前及展開(kāi)后圖像之間的像素坐標(biāo)映射關(guān)系,并保存到以下查找表中。
圖4 全景圖像查表展開(kāi)法原理
對(duì)于展開(kāi)后圖像中的每一像素點(diǎn),要在查找表中查詢其在展開(kāi)前全景圖像中的像素坐標(biāo),即可較快地完成全景圖像的展開(kāi)。該方法既可避免復(fù)雜的三角運(yùn)算,保證較高的全景展開(kāi)精度,又具有較快的全景展開(kāi)速度。但由于查找表和圖像的數(shù)據(jù)量較大,而存儲(chǔ)所需的SDRAM芯片在讀寫單個(gè)數(shù)據(jù)時(shí)效率低、速度慢,從而導(dǎo)致基于單個(gè)像素點(diǎn)進(jìn)行查表展開(kāi)速度較慢。為解決這一問(wèn)題,采用圖像分塊展開(kāi)策略。目標(biāo)圖像中的環(huán)帶塊,都將對(duì)應(yīng)到源圖像中的矩形像塊,首先,對(duì)目標(biāo)圖像,源圖像,查找表進(jìn)行分塊,變單個(gè)數(shù)據(jù)讀寫為數(shù)據(jù)塊讀寫,進(jìn)而完成圖像展開(kāi)[9]。算法需在FPGA上得以實(shí)現(xiàn),具體步驟為(1)從SDRAM讀出“查找表塊”、“源圖像塊”,寄存于 FPGA片上 BLOCKRAM。(2)以塊為點(diǎn),進(jìn)行查表衍射,將源圖像塊及查找表相對(duì)應(yīng),完成系統(tǒng)的圖像展開(kāi)[10]。
實(shí)驗(yàn)所用圖像如圖3(a),圖3(b)所示。實(shí)驗(yàn)中選擇計(jì)算3組圓心坐標(biāo)并求其平均值,即
根據(jù)O1,O2的橫坐標(biāo),可將f1,f2剪切為圖5所示兩部分(左為f1,右為f2)。圖6為拼接后的圖像。根據(jù)上述圖像展開(kāi)算法,得到符合人眼觀看的全景展開(kāi)圖像,如圖7所示。
經(jīng)實(shí)驗(yàn)仿真,基于圓心定位的全景圖像拼接法速度比以往圖像拼接算法快、準(zhǔn)確度高。展開(kāi)后的圖像符合實(shí)際要求,符合人眼觀看習(xí)慣,但展開(kāi)后的圖像仍存在小部分失真現(xiàn)象,在之后的工作中需進(jìn)一步的完善??傮w上講,在實(shí)際的全景應(yīng)用中,文中所提出的算法具有良好的實(shí)用性。
[1] GONZALEZ R C.Digital image[M].北京:電子工業(yè)出版社,2004.
[2] 余宏生,金偉其.數(shù)字圖像拼接方法研究進(jìn)展[J].紅外技術(shù),2009,31(6):348 -352.
[3] 章毓晉.圖像處理和分析[M].北京:清華大學(xué)出版社,1999.
[4] BOULT T E,GAO X,MICHEALS R,et al.Omni- directional visual surveillance[J].IEEE Transactions on Image and Computing,2004,22(7):515 -534.
[5] 張茂軍.虛擬現(xiàn)實(shí)系統(tǒng)[M].北京:科學(xué)出版社,2001.
[6] CANDE S E J,DONOHO D L.Ridgelets:A key to higherdimensional intermittency[J].Philosophical Transactions of the Royal Society of London Series A,1999,357(1760):2495-2509.
[7] 白劍,楊國(guó)光,侯西云.1800大視場(chǎng)環(huán)形全景凝視成像方法200410015828.0[P].杭州:浙江大學(xué),2004
[8] 張以漠.應(yīng)用光學(xué)[M].北京:機(jī)械工業(yè)出版社,1982.
[9] MURPHY J R.Application of pnaoramic imaging to a teleoperated lunar rover[C].In Porceedings of the IEEE SMC Conference,1995:3117 - 312l.
[10]馬頌德.計(jì)算機(jī)視覺(jué)一理論與算法基礎(chǔ)[M].北京:科學(xué)出版社,1998.