鄒益民,黃一帆,王維俊,梅育榮
(金陵科技學(xué)院網(wǎng)絡(luò)與通信工程學(xué)院,江蘇南京,210031)
近年來,基于位置服務(wù)(LBS,location-based service)在智能機器人、商場購物指南等諸多領(lǐng)域得到了廣泛的應(yīng)用,也極大地促進了室內(nèi)定位技術(shù)的發(fā)展。傳統(tǒng)的室內(nèi)定位技術(shù)主要包括:WiFi、藍牙、紅外線、超寬帶、RFID、ZigBee和超聲波等,它們均需要建立一個復(fù)雜的定位設(shè)施環(huán)境,相應(yīng)的系統(tǒng)成本與能耗均較高。隨著LED及圖像處理技術(shù)的不斷成熟,基于可見光的室內(nèi)定位技術(shù)受到越來越多的研究人員的關(guān)注。LED光源具有功耗小、調(diào)制速度快、響應(yīng)時間短等優(yōu)點,配合可見光定位技術(shù)具有無電磁干擾、照明定位一體化等特點,已成為室內(nèi)定位技術(shù)研究的一個重要方向[1-3]。
本文設(shè)計的室內(nèi)定位系統(tǒng)是一種基于可見光的簡易圖像定位裝置,基于指紋定位方案。即首先需在室內(nèi)特定位置放置一定數(shù)量的LED標志點,然后借助智能定位裝置采集不同位置處的圖像特征,將這些圖像特征及對應(yīng)采集位置結(jié)合形成一個定位指紋庫。實際定位時,定位裝置利用在未知點所獲得的圖像特征,通過搜索指紋數(shù)據(jù)庫,以得到最匹配的物理位置,由此確定未知點的當(dāng)前位置。智能定位裝置主要由MSP430F149單片機、LED光源,OV7670攝像頭和TFT彩屏等模塊組成,LED光源不僅為系統(tǒng)提供照明同時也作為目標物,提供位置標示作用,從而構(gòu)成一種低成本的室內(nèi)定位裝置。
本設(shè)計基于圖像處理、光學(xué)指紋的定位方式。LED光源作為標準位置指示器,MSP430F149單片機控制OV7670圖像傳感器采集LED場的圖像信息,隨后通過邊緣檢測、二值化處理、中心點坐標計算,以獲取LED中心點的具體位置坐標。在指紋學(xué)習(xí)階段,一系列LED標志點的坐標及已知的位置信息構(gòu)成了系統(tǒng)指紋數(shù)據(jù)庫;在指紋定位階段,通過LED標志點坐標檢索已有的指紋數(shù)據(jù)庫,通過計算,可獲得末知點的最佳匹配,最終實現(xiàn)定位功能。系統(tǒng)的總體框圖如圖1所示。
系統(tǒng)中的MSP430F149單片機構(gòu)成本系統(tǒng)的控制核心,控制OV7670攝像頭實現(xiàn)圖像信息的采集功能,并通過圖像處理算法獲得目標LED的位置信息。由若干控制按鍵與TFT彩色顯示屏構(gòu)成系統(tǒng)的人機接口,用于系統(tǒng)狀態(tài)切換、參數(shù)修改,也可用于對圖像及定位信息的實時顯示。
圖1 系統(tǒng)總體框圖
OV7670攝像頭包含一個30萬像素的CMOS圖像感光芯片及一個3.6mm焦距的廣角鏡頭,當(dāng)采用QVGA RGB565格式時,幀速可達30fps,顏色深度為64K,圖像分辨率可達320*240。為方便與相對慢速的MSP430單片機接口,本設(shè)計所用的OV7670模塊自帶一片F(xiàn)IFO存儲芯片。
本設(shè)計中還選用了一塊2.8寸的TFT彩屏,顯示解析率為320*240,被用作系統(tǒng)的圖像與操作顯示終端。
本設(shè)計的硬件部分主要包括:MSP430F149單片機、OV7670攝像頭和TFT彩屏,其總體原理圖如下圖2所示。
圖2中MSP430F149單片機構(gòu)成系統(tǒng)的控制核心,通過攝像頭接口連接OV7670攝像頭模塊,以讀取其所采集的圖像信息;通過彩屏接口連接TFT液晶屏,以提供顯示功能;此外,本電路還設(shè)計了2個獨立的按鍵,為操作者提供按鍵輸入功能;電源轉(zhuǎn)換電路用于將5-6V的輸入電壓通過穩(wěn)壓電路轉(zhuǎn)變成3.3V的輸出電壓,為系統(tǒng)中的單片機等功能模塊供電;下載電路通過仿真器連接PC機,用于程序代碼的下載燒錄及仿真調(diào)試。
圖2 系統(tǒng)總體硬件原理圖
系統(tǒng)軟件部分主要由初始化程序、圖像掃描程序、圖像處理程序、圖像指紋匹配程序、TFT彩屏顯示程序、按鍵掃描程序等組成。圖像定位包括定位特征學(xué)習(xí)與定位特征匹配兩個不同階段,其處理方法略有不同。
(1)初始化程序用于完成MSP430F149單片機初始化,OV7670初始化,TFT顯示屏初始化,并完成對系統(tǒng)工作參數(shù)的初始化。
(2)圖像掃描程序控制OV7670通過FIFO讀取一幀數(shù)據(jù)至單片機內(nèi)存區(qū)域,為后續(xù)的圖像處理做好準備。
(3)圖像處理程序首先對圖像進行閾值分割,提取出亮度最高的LED區(qū)域,并對此區(qū)域進行中心點提取,以確定LED中心。為提高軟件的抗干擾能力,軟件中還設(shè)置了一定的保護閾值,如果所得的LED亮斑區(qū)域過小,則將之視作噪聲點予以濾除。若在指紋學(xué)習(xí)階段,此LED的圖像中心位置將與實際位置一起存入指紋數(shù)據(jù)庫,以便在匹配階段進行位置匹配。
(4)圖像指紋匹配程序根據(jù)計算所得的當(dāng)前各LED中心點坐標,依次搜索指紋庫中的LED中心點,并使用余弦相似度算法尋求最佳匹配,再根據(jù)匹配結(jié)果確定當(dāng)前末知點位置。
(1)圖像中心點提取算法
由于LED光斑具有強烈的亮度特征,故本設(shè)計的算法首先使用閾值分割獲得LED光斑的二值化圖像[6-8];隨后對此圖像進行如下處理:逐行掃描圖像,跳過背景點;如遇到LED光斑始點,則繼續(xù)掃描,搜索本光斑帶終點; 檢查所獲得的光斑帶與上行的LED光斑是否相連,若相連,說明是同一光斑,否則說明是另一光斑,分別用不同的光斑號標記,最終可得到全部LED光斑;逐一計算各LED光斑面積,若小于某閾值,則視為噪點并清除;逐一計算各LED光斑重心,從而得到各標記LED的圖像中心位置。
實際圖像處理結(jié)果表明,該算法具有較強的抗干擾能力。
(2)圖像匹配算法
本設(shè)計使用余弦相似度算法計算最佳匹配。余弦相似度通過測量兩個向量內(nèi)積空間的夾角的余弦值來度量它們之間的相似性。余弦值越接近1,表示兩個向量相似度越高[7-9]。
向量A、B的余弦相似值可由下式確定:A B
將某幀畫面中經(jīng)圖像處理取得的各LED中心點坐標視作一個向量,并與指紋庫中已知的中心點位置指紋形成的向量分別計算其余弦相似值,結(jié)果越接近1代表匹配程度越高。實際計算中選取兩個匹配值最高的位置,并按余弦相似值進行內(nèi)插處理,可進一步提高位置精度。
伴隨著基于位置服務(wù)LBS(location-based service)技術(shù)的蓬勃發(fā)展,對室內(nèi)定位技術(shù)不斷提出新的要求。WiFi、藍牙、ZigBee、超寬帶等定位技術(shù)得到了廣泛的關(guān)注,而基于LED圖像的室內(nèi)定位技術(shù)不僅可以快速準確地確定用戶的位置,并且無電磁干擾之慮,還可與照明技術(shù)配合使用。此外,基于視頻圖像序列的定位技術(shù)還可輔助確定用戶的行動方向,給用戶的LBS服務(wù)提供更準確、直觀和方便的應(yīng)用體驗。本文具體給出了一種基于MSP430F149單片機,配合OV7670攝像頭實現(xiàn)的可見光定位系統(tǒng),測試結(jié)果表明了系統(tǒng)的有效性。