五、 基於 BOHP/HE 的對比強化改良方法
5.4 以平均區域標準差為調整依據的進一步改良
本論文所提出的改善方法,雖然能有效改善 BOHP 的擠壓破壞現象,與 降低 HE 在畫面強度分佈少時所帶來的雜訊強化現象,但在某些情況下,效 果仍然不是很理想。以圖 5.22 來看,圖片中的訊號產生器雖然可見,但仍 然不夠明顯,因此改善 BOHP 的擠壓破壞現象仍然不足。
圖 5.22 訊號產生器仍不夠明顯
以圖 5.23 為例,若我們直接對門檻值加權處理以提高它,試圖讓影像中的 訊號產生器清楚一點,當我們提高門檻後訊號產生器的確清楚了很多,但 若用相同的調整方式於圖 5.24 的影像上,該圖的雜訊卻增加了。
圖 5.23 訊號產生器非常明顯 圖 5.24 雜訊突顯了
問題關鍵:
問題的關鍵在於如何給定一個調整門檻值的加權,而這個加權是依據 畫面的內容而定的。在此,我們先將各種可能產生的強度分佈畫面分類,
如圖 5.25 所示,左邊是受擠壓的圖,其需要將門檻值提高,中間的圖是強 度分佈少的圖,其效果已經很好不需調整,右邊是強度分佈多的圖片,其 也不需要再調整。將所有影像經過門檻調整後的畫面平均區域標準差整理 出來,並顯示在左下角,我們可以發現畫面標準差跟門檻的調整有相當的 關聯。在左邊那三張受到擠壓的圖片中,我們可以發現,其標準差都很小,
分別為 5.15/6.52/4.37,因此,我們將標準差的數值大小作為我們調整 的依據。
圖 5.25 未經過門檻加權前的結果
從圖 5.25 分析來看,我們需要調整的是低標準差的圖片,高標準差的 圖片通常景像豐富的地方比較平均,或是雜訊已經開始突顯了,低標準差 的圖片通常是景象較為不豐富,或某一部份被擠壓了。調整門檻的流程如 圖 5.26 所示。
圖 5.26 調整門檻的流程圖
平均區域標準差的計算方式
Mean Deviation =
75684
const int MaskPos[9] = {-321,-320,-319, -1,0,1, 319,320,321};
float GetLocalDeviation8(unsigned char *p) { int i,j,k,var,addr; (p[addr+MaskPos[k]]-p[addr]) ;
var/=9;
我們以上面未經過加權調整的圖,與下面經過加權調整的圖 (圖 5.28) 來 比較,上面的圖有 4 張需要加權,加權後發現擠壓破壞的現象改善了更多,
證明本方法有其可行的地方。
圖 5.28 經過門檻加權後的結果
六、即時應用的考量
Real Time 的應用並沒有一定的標準,主要為指定時間內完成指定的工 作即可,在視訊規格中畫面更新為每秒 30 張影像,也就是說,每張影像必 須在 33ms 內完成,因此,我們在建立 12 位元轉 8 位元的轉換對照表時,
只要能在 33ms 內完成,我們即能宣稱能即時的應用。
在實際上 BOHP 與 HE 皆有即時的應用了,在我們提出的方法中,相對 於 HE 的方法只有增加一道步驟,就是門檻的處理步驟,其餘皆與 HE 的演 算法一樣,並沒有增加太多的運算。
本論文提出的方法中需要 4096 次的浮點數的乘法與除法指令運算,在 指令的執行時間上,較為花時間的是小數點的乘除法運算,在具有浮點運 算器的系統上,並不需要靠其它指令來模擬浮點數的乘除運算,不過在沒 有浮點運算器的系統上即使沒有浮點運算器,也能靠著高性能的 CPU 來彌 補。
總處理時間的限制、運算指令的多寡及運算指令的執行時間,這 3 個 因素為是否能即時應用的關鍵性因素,我們將針對這 3 個因素,來提出我 們的改進方式。
1. 小數點的乘除法運算的合併
以程式 gray = gray + (histo[I]/pixel) * 255;這行為例,pixel 可
以轉成 1 的倒數然後乘以 255,便可省下最耗時的小數點除法運算,並 將兩個浮點運算縮成一個,修改後的程式如下:
gray = gray + histo[I]*pixel;
2. 浮點數改成固點數的乘法運算
浮點數運算在沒有 FPU 的輔助下,會需要相當多的指令來模擬,以 Hitachi DSP 舉例,其需要 184 指令才能完成一個浮點數乘法運算,在 此我們可將浮點的乘法改成固點的乘法。我們可以用一個 16 位元的整 數來模擬小數點,如圖 6.1 所示,MSB 的 4 個位元表示整數部分,LSB 的 12 個位元表示小數點部分,茲用下面的圖表說明之。我們並未加上 正負號的位元,是因為本方法並不需要負號運算,運算完後只要將數 值右移 12 個位元即可得到我們要的結果了。
N3 N2 N1 N0 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Bit
圖 6.1 位元格式
N0~N3 為 2n次方,數值範圍 0~15,F1~F12 表示 2-f次方,數值範圍 0.000244~0.999755,總數值表示範圍為 0.000244~15. 999755,最小 解析度為 0.000244。舉例來講 浮點數的 0.5 在此為二進制的 0000 1000 0000 0000 其轉換成十進制後為 2048,若原本 10*0.5 = 5 的浮點運算,
在這裡的運算會是(10 *2048)>>12 = 5,最後結果仍然是 5。
為何我們可以用這樣的表示法呢?是因為我們輸入的影像為 12 位元,
最後要轉成 8 位元,最極端的狀況為經過門檻處理後的像素數量為 38400 (只有 2 個強度分佈) ,其需要乘上 0.0066,另一個最極端的狀況 為經過門檻處理後的像素數量為 4096 個,其需要乘上 0.0622,我們的 固點表示法仍然可以忠實的呈現。
我們修改原本用浮點數的程式,如圖 6.2 為原本程式的片段 // build histogram equalization lookup table
float gray = 0;
// build histogram equalization lookup table int gray = 0;
unsigned short pixel_int = ((1.0/pixel)*255)*4096 for(i=0; i<4096; i++)
面來講,我們僅需要處理 8 張即可,省下 22 張畫面的處裡時間,可以 用來做其他的事,如圖 6.4 所示,深色部分的圖框為需要更新位元壓 縮對照表的畫面。
最後我們分別測試有浮點運算器的 CPU 與沒有浮點運算器的 CPU,來 證明浮點數改成固點數的運算,相較於原始程式的改進效率,表 6.1 為使用 無浮點運算器的 Hitachi DSP 實驗數據,表 6.2 為使用有浮點運算器的 Intel Pentium 4 CPU 實驗數據。
圖 6.4 更新位元壓縮對照表的圖框
表 6.1 無浮點運算器的 CPU 執行時間比較表 原本的程式 小 數 點 的 乘 除 法
運算的合併
浮 點 數 改 成 固 點 數的乘法運算 執行時間 7.12ms 5.58ms 2.05ms
表 6.2 有浮點運算器的 CPU 執行時間比較表 原本的程式 小 數 點 的 乘 除 法
運算的合併
浮 點 數 改 成 固 點 數的乘法運算 執行時間 0.78ms 0.62ms 0.47ms
七、實驗
Item SpecificationSensor Focal plane array (FPA) uncooled microbolometer 320 x 240 pixels Spectral range 7.5 to 13 µm
Lens DIOP 50mm F 0.8 Thermal sensitivity 0.06 °C at 30 °C Video Output RS-170
Remote Control RS-232
表 7.2 PC 規格表 Item Specification
PC IBM PC
Operating System Windows 2000 CPU 2.4G Pentium 4
RAM 256 MB
Hard Disk Space 40GB
VGA Card ATI GeForce 2 32MB DDR Screen Resolution 1024x768 32bits
Programming Tool Borland C++ Builder 5.0
實驗 1:畫面單調時強度分佈少的實驗
證明本論文提出的新方法對於畫面單調時強度分佈少的影像並不會讓雜 訊強化出來,同時也能讓物體忠實的顯示,本實驗的紅外線影像共有 175 個 強度分佈。圖 7.1a 為經過 BOHP 處理後的影像,在圖中安全燈的熱分佈非常 明顯,但地板與周圍的部分皆看不清楚。圖 7.1b 為經過 HE 處理後的影像,
在圖中安全燈的熱分佈不明顯且雜訊被大大的強化出來。圖 7.1c 為經過 1-Pass Improvement 處理後的影像,圖中安全燈的熱分佈仍然明顯,且地板 與周圍皆看得很清楚。圖 7.1d 為經過 2-Pass Improvement 處理後的影像,
與第一階段處理後的結果完全一樣。
圖 7.1a BOHP 圖 7.1b HE
圖 7.1c 1-Pass Improvement 圖 7.1d 2-Pass Improvement
實驗 2:畫面豐富時強度分佈多的實驗
證明本論文提出的新方法對於畫面豐富時,強度分佈多的影像並不會讓原 本清楚的畫面變差,本實驗的紅外線影像共有 1274 個強度分佈。圖 7.2a 為 經過 BOHP 處理後的影像,圖中車子與背景皆相當清楚。圖 7.2b 為經過 HE 處 理過後的影像,圖中車子與背景皆相當清楚。圖 7.2c 為經過 1-Pass
Improvement 處理後的影像,圖中車子與背景皆相當清楚。圖 7.2d 為經過 2-Pass Improvement 處理後的影像,背景的暗部比 1-Pass Improvement 還清 楚。
圖 7.2a BOHP 圖 7.2b HE
圖 7.2c 1-Pass Improvement 圖 7.2d 2-Pass Improvement
實驗 3:擠壓破壞的實驗
證明本論文提出的新方法對於高強度分佈物體對低強度分佈的擠壓破壞現 象,能有一定的抵抗力,本實驗的紅外線影像共有 727 個強度分佈。圖 7.3a 為經過 BOHP 處理後的影像,圖中的訊號產生器已被擠壓的看不見了。圖 7.3b 經過 HE 處理過後的影像,圖中的訊號產生器仍然可見,但雜訊也被 強化了。圖 7.3c 經過 1-Pass Improvement 處理後的影像,訊號產生器雖 不是很明顯,但仍然可見。圖 7.3d 經過 2-Pass Improvement 處理後的影 像,訊號產生器明顯可見且雜訊低。
圖 7.3a BOHP 圖 7.3b HE
圖 7.3c 1-Pass Improvement 圖 7.3d 2-Pass Improvement
實驗 4:細微溫度分辨實驗
證明本論文提出的新方法,對於人體或物體的細微溫度分佈能有很好的顯 示,本實驗的紅外線影像共有 744 個強度分佈。圖 7.4a 為經過 BOHP 處理後 的影像,圖中的人臉的溫度分佈清楚可見。圖 7.4b 為經過 HE 處理過後的影 像,圖中的人臉的溫度分佈模糊。圖 7.4c 為經過 1-Pass Improvement 處理 後的影像,圖中的人臉的溫度分佈依舊清楚可見。圖 7.4d 為經過 2-Pass Improvement 處理後的影像,人體的溫度分佈稍微模糊。
圖 7.4a BOHP 圖 7.4b HE
圖 7.4c 1-Pass Improvement 圖 7.4d 2-Pass Improvement
實驗 5:室內場景的影像實驗
證明本論文提出的新方法,可以適用於室內的場景。
BOHP HE 1-Pass Improvement 2-Pass Improvement
圖 7.5 室內場景的圖
實驗 6:室外場景的影像實驗
證明本論文提出的新方法,可以適用於室外的場景。
BOHP HE 1-Pass Improvement 2-Pass Improvement
圖 7.6 室外場景的圖
八、結論
本篇論文針對紅外線應用於觀測時的資訊壓縮現象,分析 BOHP 與 HE 的優缺點,並提出一個較為平衡的方法,此方法在大多數的情況下,可以 有效的防止物體或背景看不到的現象,經過實驗證明確實可行,同時對於 紅外線影像的其他不利於觀察的特質,如雜訊問題及溫度擴散問題等,也 有很好的抵抗能力,最後我們也考慮到即時的應用性,提出一個能應用在 即時系統上的高效率計算機制。
本篇論文尚有需要加強的部分,尤其是在第二階段針對畫面標準差分 析的對比增強處理方面較為花費時間,未來可以再依即時的應用上的需求 做更有效率的改良。
參 考 文 獻
[1] Silverman; Jerry (Waban, MA); Mooney; Jonathan (Waltham, MA); Ewing;
William (Stow, MA); Sato; Darryl (San Diego, CA) United States Patent 5249241 Real-time automated scene display for infrared cameras September 28, 1993
[2] I. Ramesh Babu and I. V. Murali Krishna, “Contrast Enhancement of IRS-1C LISS,” Geoscience and Remote Sensing, 1997. IGARSS '97, Remote Sensing - A Scientific Vision for Sustainable Development; 1997 IEEE
International, vol. 4, pp. 1778 – 1780, Aug. 1997
[3] 鄭政利, ”紅外線熱像技術應用於建築熱環境觀測之研究,”
技術學刊
, vol. 17, no. 2, pp. 193-202, 2002.[4] R. C. Gonzalez and R. E. Woods, Digital Image Processing 2nd, Prentice Hall, New Jersey, 2002.
[5] David L. Shumaker, James T. Wood and Clinton R. Thacker, “Infrared Imaging Systems Analysis,” DCS Corporation, 1998.
[6] M.Kamel and Lian Guan, “Histogram equalization utilizing spatial
correlation for image enhancement,” Proc. SPIE, vol.1199, pp.712-721, 1989.
[7] R. A. Hummel, “Image enhancement by histogram transformation,”
[7] R. A. Hummel, “Image enhancement by histogram transformation,”