第3章 圖像形成與相機幾何
3.1 引 言
在電磁波譜中,人類視覺可見的光稱為可見光,其波長范圍為380~780 nm,電磁波譜如圖3.1所示。白光源入射棱鏡后可分解為七彩可見光,其中白光稱為復合光,單一波長和波譜寬度小于5 nm的光稱為單色光。在計算機視覺中,成像的主要方式為可見光成像,目前對于其余各種電磁波譜成像的研究也逐漸深入,如紅外成像等。本書主要關注可見光成像。

圖3.1 電磁波譜
3.1.1 色度學
在第1章中已經提到,人眼視網膜上主要存在視桿和視錐兩類細胞,并分別負責暗視覺與明視覺情況下的視覺感知。其中視桿細胞約有1.3億個,它的光敏感程度比視錐細胞敏感1000倍,并且對綠色波譜部分最敏感,會產生相對模糊的圖像,純粹的視桿視覺稱為暗視覺。而視錐細胞約有700萬個,主要包含紅敏(長波視錐細胞,占65%)、綠敏(中波視錐細胞,占33%)和藍敏(短波視錐細胞,占2%)三類細胞,這三類細胞對紅、綠、藍這三種顏色特別敏感,視錐細胞產生清晰的彩色圖像,純粹的視錐細胞視覺稱為彩色視覺或明視覺。視桿細胞對不同波譜的響應與三種視錐細胞對波譜的吸收特性如圖3.2所示。

圖3.2 視桿細胞對不同波譜的響應特性(左)、三種視錐細胞對波譜的吸收特性(右)
人眼中視桿細胞數目遠大于視錐細胞數目,但對視敏感度而言,視桿細胞遠不如視錐細胞敏感。這是因為視桿細胞主要分布于視網膜上,而視錐細胞則聚集在中央凹處。紅、綠、藍三種視錐細胞對于不同波譜的響應比較類似,但數目變化較大,因此造成對波譜的相對敏感度不一致。并且,對于任意給定的刺激,紅敏細胞和綠敏細胞的響應有很大部分是重疊的,且人眼對綠光最敏感。紅、綠、藍三種視錐細胞對不同波譜刺激的響應特性如圖3.3所示。

圖3.3 紅、綠、藍三種視錐細胞對不同波譜刺激的響應特性
3.1.2 三色視覺原理
計算機視覺中的圖像和視頻之所以有顏色,主要是因為人眼的紅、綠、藍三種視錐細胞傳輸過來的信號。根據這三種顏色與視錐細胞之間的對應關系來建立三基色。任何外界顏色通過人眼后,其紅、綠、藍三種視錐細胞根據圖3.3所示的響應特性將外界的刺激分解為三基色刺激。最后感知的顏色與光照強度、目標的反射率和觀察者的響應有關。
總之,英國物理學家麥克斯韋認為,將紅、綠、藍(Red,Green,Blue,RGB)作為基色,可以拍出彩色照片,自然界的絕大部分顏色均可以由RGB三基色表示出來,因此可以將自然界中海量的顏色信息通過采用RGB編碼的方式有效地表達出來。
目前,在已有標準的顏色編碼表示方法中,常見的表示方式為色域圖(Gamut),如圖3.4所示。色域表示設備能表示所有顏色的范圍,不同的設備有不同的色域。當不同的圖像在不同的設備上顯示時,由于設備的色域不同,因此人眼看到的效果會有輕微的差異。
圖3.4中的人類視覺色域最寬,覆蓋所有的其他色域。顯然,不同的設備色域實際上只是人類視覺色域的一個子集(或稱子空間),不同的色域覆蓋人類視覺色域的不同部分。從顏色感知來看,色域越寬表示的顏色數目越多,意味著顏色越豐富。在色域圖中,色域均采用三角形來表示,三角形的三個頂點分別對應該色域下的RGB三基色,該三角形區域中的任意顏色均可以采用RGB三基色線性表示出來。注意,在圖3.4中的二維x-y坐標系中,色域中的任意一點都可以用坐標表示出來。從圖中可以看出,坐標絕對值實際上在不同的色域中表示不同的意義,其對應的顏色也各不相同,它只是確定了其在色域中的相對位置而已。

圖3.4 色域圖
- 數據產品經理高效學習手冊:產品設計、技術常識與機器學習
- ETL數據整合與處理(Kettle)
- Python數據挖掘:入門、進階與實用案例分析
- 輕松學大數據挖掘:算法、場景與數據產品
- 數據之巔:數據的本質與未來
- 數據庫開發實踐案例
- 數據化網站運營深度剖析
- Neural Network Programming with TensorFlow
- Python數據分析:基于Plotly的動態可視化繪圖
- Scratch 3.0 藝術進階
- Solaris操作系統原理實驗教程
- 實用數據結構
- Python數據分析從小白到專家
- Visual Studio 2012 and .NET 4.5 Expert Development Cookbook
- 數據挖掘與數據化運營實戰:思路、方法、技巧與應用