1. 程式人生 > >影象理論知識_什麼是數字影象處理?

影象理論知識_什麼是數字影象處理?

數字影象處理,即數字,將影象轉化為數字的形式,對影象做處理,我們平時所見到的影象,在計算機中都是一組數字,當通過相機捕獲現實世界的景物時,相機會捕獲現實世界的光源訊號,並轉化為數字訊號儲存到儲存器上,當顯示時,GPU會根據這些數字資訊,並控制LRT將其繪製到螢幕上,呈現出來!

一幅影象可以定義成一個二維空間函式,即s = f(x,y),s是二維空間,x和y是空間中的座標,f是位於二維空間中x和y座標處的灰度值(為什麼說是灰度值?因為這裡是用單位元組表示,即單通道)!並且當x和y位於的s空間座標處的f值是有限的離散數值(自然整數)時才可以稱為數字影象!這裡有限的大小是指固定的,為什麼這麼說?因為在計算機當中,是以位元組作為基本單位來描述資料的,當把一幅影象轉化成一組資料時,這組資料裡的每個陣列大小都是以一個位元組作為基本單位儲存到儲存單元中的,上限值是一個位元組的取值範圍:2~8次方 = 256,並且每個陣列對應著影象的各個顏色資訊!

列如如下是一幅影象:


那麼被轉化成數字儲存到計算機當中後的資料是這樣的:


上面的每個值分別對應著影象的各個點,用於描述影象每個點上的顏色資訊,當我們要顯示這些資料時,計算機會把這組資料寫入到視訊記憶體裡,由GPU根據視訊記憶體資料將其顯示到螢幕上(ps:這裡補充一點,視訊記憶體的儲存方式是以矩陣儲存的,分別對應顯示器螢幕的每個點(3個值對應一個點),向每個點上寫入資料,GPU就會控制LRT向螢幕的那個點放射RGB光線!),將這些顏色點打到螢幕的熒光粉處就會發出與圖片對應的光,那麼這些點聚合在一起之後就形成了一幅完整的影象!

這裡說一點,如果是單通道的情況下,CPU會組合寫入視訊記憶體,列如上面這幅影象是單通道,CPU會將第一個元素寫入到視訊記憶體後另外兩個值也會寫入與該值一樣的值,並且根據螢幕解析度,寫入對應範圍的視訊記憶體矩陣,具體請參考:

RGB顏色空間、色調、飽和度、亮度、HSV顏色空間詳解

作業系統是如何獲取解析度的?

答:顯示器中自帶一個小型flash(快閃記憶體,斷電也能儲存資料的小型儲存器),這種儲存器不大,只能儲存解析度和亮度對比度等資訊,作業系統從中獲取資訊,並根據資訊和記憶體中的顯示資料根據獲取到的資訊按比例經過演算法寫入到視訊記憶體矩陣中!

那麼問題來了,當我們點選顯示器的調節對比度亮度的按鈕時是什麼晶片在根據按鍵情況寫入到flash中?

答:顯示器中使用MCU單元,當我們按下某個按鍵時按鍵對應的暫存器上的值就會發生改變,MCU會將改變後的暫存器值寫入到flash中,MCU會通過串列埠或其他連線方式連線到CPU主機板上外設匯流排,並根據外設匯流排連線到視訊記憶體上,可以直接寫入視訊記憶體資料,GPU是根據內部匯流排連線到外部匯流排獲取視訊記憶體資料的,當我們每次修改時MCU會以動畫的形式將改變結果呈現到螢幕中,這一步不需要作業系統也可以進行,MCU會直接寫入到視訊記憶體當中,所以即使沒有作業系統當我們修改解析度對比度時也能看到改變時產生的與使用者互動的介面,該介面是根據操作狀態實時畫出來的!


人類的眼睛僅能捕獲電磁波譜的可見光波(通俗易懂的說就是太陽平時放射出來的電磁波(太陽輻射),或者是電子加速或電子與磁場互動產生的能源),但是一些不可見的光波人類是無法捕獲的,列如:無線電波,超聲波,計算機可以利用天線接收器,等產品捕獲無線電波或超聲波並根據電波頻率將其成像出來!

什麼是影象處理和計算機視覺?

影象處理:是使用輸入和輸出影象內容的,即對輸入影象的內容做處理,列如將一個RGB影象裁剪一半,就是把一幅影象的數字資訊的一半給刪除掉,並輸出到螢幕上或輸出到儲存器的其它位置儲存起來!

計算機視覺:對影象進行識別!

但有時有的處理又不能算是影象處理,列如計算某個影象的灰度程度,這僅僅只是取出RGB三個值,並計算平均值,這樣的處理太過於簡單,甚至都沒有對影象資料做任何處理!

還有一個是位於影象處理和計算機視覺中間的:影象分析!

影象分析:即對一幅影象進行分析,比如:運動分析,影象質量分析,噪聲分析,目標分析!

影象識別分為三個等級:

假如說我們拿到了一張影象,要求是判斷這個影象中有沒有一隻貓!

那麼首先要考慮的是這張影象是否有噪聲或者影象不清晰,影象質量較差的情況,為了解決這些問題應當先對其進行模糊平滑處理降低影象噪聲,在對比度增強和銳度增強,讓顏色更加鮮豔,影象更加清晰,這些算是預處理即初級處理!

那麼當影象變得清晰可見時,我們就進行中級處理,從預處理後的影象中將特徵提取出來,這裡不是識別,只是將一幅影象中的帶有輪廓邊緣的物體(即RGB值比較凸出的一部分)裁剪減少目標資訊,過濾掉一些可能影響後續識別的資訊!這裡是中級處理,特徵提取!


最後在根據已經提取的特徵進行識別,這裡就是高階處理!

在最後當你識別完成之後已經將要識別出的物體存在於影象中二維空間的位置給標出來了,就可以對其進行影象識別,從影象中找到小貓


經過影象識別找到小貓,並加以分析!