基于顏色特征的物體識別系統(tǒng)對于不同顏色的分別提取和識別
(以上兩幅圖片由某大學(xué)機器人實驗室負責(zé)人暨機器人天空主編Liu Weichao友情提供)
隨著計算機科學(xué)和自動控制技術(shù)的發(fā)展,越來越多的不同種類的智能機器人出現(xiàn)在生產(chǎn)生活中,視覺系統(tǒng)作為智能機器人系統(tǒng)中一個重要的子系統(tǒng),也越來越受到人們的重視。
視覺系統(tǒng)是一個非常復(fù)雜的系統(tǒng),它既要做到圖像的準確采集還要做到對外界變化反應(yīng)的實時性,同時還需要對外界運動的目標進行實時跟蹤。因此,視覺系統(tǒng)對硬件和軟件系統(tǒng)都提出了較高的要求。目前比較流行的足球機器人技術(shù),它的視覺系統(tǒng)屬于比較典型的快速識別和反應(yīng)類型。
機器視覺系統(tǒng)是指用計算機來實現(xiàn)人的視覺功能,也就是用計算機來實現(xiàn)對客觀的三維世界的識別。人類視覺系統(tǒng)的感受部分是視網(wǎng)膜,它是一個三維采樣系統(tǒng)。三維物體的可見部分投影到網(wǎng)膜上,人們按照投影到視網(wǎng)膜上的二維的像來對該物體進行三維理解(對被觀察對象的形狀、尺寸、離開觀察點的距離、質(zhì)地和運動特征等的理解)。
機器視覺系統(tǒng)的輸入裝置可以是攝像機、轉(zhuǎn)鼓等,它們都把三維的影像作為輸入源,即輸入計算機的就是三維管觀世界的二維投影。如果把三維客觀世界到二維投影像看作是一種正變換的話,則機器視覺系統(tǒng)所要做的是從這種二維投影圖像到三維客觀世界的逆變換,也就是根據(jù)這種二維投影圖像去重建三維的客觀世界。
機器視覺系統(tǒng)主要由三部分組成:圖像的獲取、圖像的處理和分析、輸出或顯示。圖像的獲取實際上是將被測物體的可視化圖像和內(nèi)在特征轉(zhuǎn)換成能被計算機處理的一系列數(shù)據(jù),它主要由三部分組成:照明,圖像聚焦形成,圖像確定和形成攝像機輸出信號。視覺信息的處理技術(shù)主要依賴于圖像處理方法,它包括圖像增強、數(shù)據(jù)編碼和傳輸、平滑、邊緣銳化、分割、特征抽取、圖像識別與理解等內(nèi)容。經(jīng)過這些處理后,輸出圖像的質(zhì)量得到相當程度的改善,既改善了圖像的視覺效果,又便于計算機對圖像進行分析、處理和識別。
機器人視覺系統(tǒng)主要是利用顏色、形狀等信息來識別環(huán)境目標。以機器人對顏色的識別為例:當攝像頭獲得彩色圖像以后,機器人上的嵌入計算機系統(tǒng)將模擬視頻信號數(shù)字化,將像素根據(jù)顏色分成兩部分:感興趣的像素(搜索的目標顏色)和不感興趣的像素(背景顏色)。然后,對這些感興趣的像素進行RGB 顏色分量的匹配。為了減少環(huán)境光強度的影響,可把RGB顏色域空間轉(zhuǎn)化到HIS顏色空間。
在足球機器人的彩色視覺系統(tǒng)中,程序是根據(jù)貼在機器人小車頂上的色標來識別機器人是屬于哪一隊,以及是幾號隊員的。由于在每個機器人小車頂上有兩種顏色的色標,分別是隊標和隊員標。因此,識別工作的第一步是把圖像中的每一個像素,根據(jù)顏色分類到一組離散的色彩類中。
顏色分類常用的方法有線性色彩閾值法、最近鄰域法和閾值向量法等。
其中,線性色彩閾值法是用線性平面把色彩空間分割開來,其閾值的確定可采用直接取閾值和通過自動訓(xùn)練來獲取目標顏色范圍等方法,也可以采用神經(jīng)網(wǎng)絡(luò)和多參數(shù)決策樹方法來進行自學(xué)習(xí),以獲得合適的閾值;而用最近鄰域分類法分割圖像時,則利用隸屬度函數(shù),即根據(jù)最大的隸屬度來判斷這個顏色屬于哪個類;閾值向量法是先使用一組事先確定的閾值向量來把色彩值在色彩空間中的位置來判斷其屬于哪種顏色。
在色彩分類之后,必須對各個顏色類的點進行處理,最終辨識出場上的各個敵我隊員和球在場上的位置和方向角。識別時,通常的做法是對分類后的像素進行一次掃描,即將相鄰的同種顏色的像素連成色塊。
基于閾值向量的顏色識別
一、色彩空間選擇
對于采用基于彩色圖像分割的方法識別目標時,首先要選擇合適的顏色空間,常用的顏色空間有RGB、YUV、HSV、CMY等。顏色空間的選擇直接影響到圖像分割和目標識別的效果。
RGB——最常用的顏色空間,其中亮度等于R、G、B3個分量之和。RGB顏色空間是不均勻的顏色空間,兩個顏色之間的知覺差異與空間中兩點間的歐氏距離不成線性比例,而且R、G、B值之間的相關(guān)性很高,對同一顏色屬性,在不同條件(光源種類、強度和物體反射特性)下,RGB值很分散,對于識別某種特定顏色,很難確定其閾值和其在顏色空間中的分布范圍。因此通常會選擇能從中分離出亮度分量的顏色空間,其中最常見的是YUV和HSV顏色空間。
HSV——接近人眼感知色彩的方式,H為色調(diào)(Hue),S為色飽和度(Saturation),V為亮度(Value)。色調(diào)H能準確地反映顏色種類,對外界光照條件變化敏感度低,但是H和S均為R、G、B的非線性變換,存在奇異點,在奇異點附近即使R、G、B的值有很小變化也引起變換值有很大的跳動。
YUV——RGB顏色空間線性變化為亮度色彩空間。是為了解決彩色電視機與黑白電視機的兼容問題而提出的。Y表示亮度(Luminance),UV用來表示色差(Chrominance)。YUV表示法的重要性是它的亮度信號(Y)和色度信號(U、V)是相互獨立的。所謂色差是指基色信號中的3個分量信號(即R、G、B)與亮度信號之差。
YUV格式與RGB存在如下關(guān)系:
二、閾值確定和色彩判斷
在確定閾值時,首先通過采集樣本進行訓(xùn)練,從而得到預(yù)定的幾種顏色在YUV空間的分量的上下閾值,如圖2所示。
當一個待判定的像素在色彩空間中的位置落在這個長方體中時,就認為該像素屬于要找的顏色,從而完成對圖像顏色的識別。在Y空間中,Y值表示亮度,因它的變化很大,所以只考慮了U和V的值,在進行顏色判斷時,首先分別建立U、V的閾值向量。
在顏色識別后進行圖像分割,在圖像分割中采用了種子填充算法,其整個種子的填充是和像素點的顏色同時進行的,一開始不是對所有的像素進行處理,而是分塊進行的。當中心點是所要識別的顏色時,就以這個點為種子向四周擴散,并判定周圍像素點的顏色,直到填滿整個塊。