星期一, 3月 28, 2011

Week 7: Image Processing (2)

 

 上個星期 (Week 6) 我們完成了上圖的程式講解與實作練習, 本週我們要繼續思考的問題是:

1. Difference 彩色影像要如何轉換成 Difference 黑白影像?
2. Difference 黑白影像中所有的白點都是實質上所出現的物件嗎?
  a. 如果不是, 哪些是雜訊呢?
  b. 如何消除雜訊的干擾?

1. imDifference 彩色影像要如何轉換成 imDifference 黑白影像?

 imDifference 彩色影像每個像素(pixel)中, 包含了紅、綠、藍 (R, G, B) 三個色彩值, 其來源是兩張影像的色彩值相減取絕對值的結果, 如果我們用 (r1, g1, b1) 代表第 1 張影像的色彩值, 用 (r2, g2, b2) 代表第 2 張影像的色彩值, 就可以將 (R, G, B) 表示成下列式子:

 (R, G, B) = ( |r1-r2|, |g1-g2|, |b1-b2| )

 如果想要把 imDifference 彩色影像(color image)轉成黑白影像(binary image), 首先要把三維色彩向量 (R, G, B) 轉換成一維的強度值(intensity), 最後在判斷是否超過我們事先設定(predefined) 的一個臨界值 iThreshold, 如果超過, 就設定成白點(255, 255, 255), 否則就設定為黑點(0, 0, 0)。

 將三維色彩向量轉換成一維的強度值的方法有很多種, 最簡單的方式就是直接求向量的長度, 換句話說, 就是將三個色彩值取平方和再開根號。另一種方式則是將其換算成灰階影像(grayscale image) 的明亮度(Luminance), 其轉換公式為

 Luminance = 0.299 * Red + 0.587 * Green + 0.114 * Blue

 

2. Difference 黑白影像中所有的白點都是實質上所出現的物件嗎?
  a. 如果不是, 哪些是雜訊呢?
  b. 如何消除雜訊的干擾?



 範例程式: W07-SP
 

沒有留言: