• 沒有找到結果。

醫學影像瀏覽系統

N/A
N/A
Protected

Academic year: 2021

Share "醫學影像瀏覽系統"

Copied!
131
0
0

加載中.... (立即查看全文)

全文

(1)逢. 甲. 大. 學. 資訊工程學系專題報告. 醫學影像瀏覽系統. 學. 生:. 指 導 教 授:. 劉奕廷(四乙) 顏嘉俊(四乙) 陳志玄(四乙) 黃耀田(四乙) 黃秋煌 老師. 中華民國九十二年十一月.

(2) 醫學影像瀏覽系統. 目錄 圖表目錄 ......................................................................................................................... II 第一章 序論 .................................................................................................................... 1 一-1 實作動機 ......................................................................................................... 1 一-2 實作目標 ......................................................................................................... 1 第二章 系統分析與設計 ................................................................................................ 2 二-1 工具的選擇 ..................................................................................................... 2 二-1.1 Apache 簡介.......................................................................................... 2 二-1.2 選擇 Apache 原因................................................................................ 2 二-1.3 簡介 ...................................................................................................... 2 二-1.4 選擇 PHP 原因..................................................................................... 2 二-1.5 Java 簡介 ............................................................................................... 2 二-1.6 選擇 Java 的原因 ................................................................................. 2 二-1.7 MySQL 簡介 ......................................................................................... 3 二-1.8 選擇 MySQL 的原因 ........................................................................... 3 二-2 資料庫 ............................................................................................................. 4 二-3 流程圖 ............................................................................................................. 5 二-4 軟硬體配備 ................................................................................................... 12 第三章 影像處理 .......................................................................................................... 13 三-1 點處理運算 ................................................................................................... 13 三-2 均化濾波(Smoothing filter)..................................................................... 16 三-3 中值濾波 (median filter).............................................................................. 19 三-4 高通濾波(high pass filter) ....................................................................... 21 三-5 時間平均濾波(temporal filter) ................................................................ 24 三-6 局部平均變異強化 (local mean variance enhancement) ............................ 25 三-7 長條圖分布 (histogram equalization or histogram linearization) ............... 27 三-8 微分濾波 ( Derivation filter ) ...................................................................... 37 三-9 臨限法 ........................................................................................................... 47 第四章 影像中的雜訊 .................................................................................................. 53 第五章 影像處理程式碼 .............................................................................................. 54 第六章 操作範例 .......................................................................................................... 75 第七章 系統的改進及心得 ........................................................................................ 125 七-1 系統的改進 ................................................................................................. 125 七-2 心得 ............................................................................................................. 126 參考資料 ...................................................................................................................... 128. I. 逢甲大學 e-Paper (92學年度).

(3) 醫學影像瀏覽系統. 圖表目錄 表 表 表 表 表 表. 三-3-1 中值濾波常用視窗和對應的圖形............................................... 19 三-7-1 影像以直方圖均勻化.................................................................. 32 三-7-2 直方圖均勻化之過程.................................................................. 33 三-7-3........................................................................................................ 35 三-8-1 三種拉普拉式濾波器................................................................... 39 三-8-2 一些常用的微分運算器.............................................................. 44. 圖 二-3-1 Context Diagram ............................................................................. 5 圖 二-3-2 Diagram 0........................................................................................ 6 圖 二-3-3 DIAGRAM 1................................................................................... 7 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖. 二-3-4 DIAGRAM 2................................................................................... 8 二-3-5 DF0.................................................................................................. 9 二-3-6 DF1................................................................................................ 10 二-3-7 DF2................................................................................................ 11 三-1-1 影像二值化函數.......................................................................... 13 三-1-2 反白函數...................................................................................... 14 三-1-3 2 補數影像轉換函數圖 ............................................................ 14 三-3-1 H and G 的關係曲線 ................................................................. 20 三-4-1 (a) 高通濾波系統結構 (b) 3 × 3 高通濾波罩遮 ................... 21 三-7-1 以模組化結構執行局部平均變異強化...................................... 28 三-7-2 灰階轉換函數.............................................................................. 29 三-7-3 直方圖均勻化.............................................................................. 31 三-7-4........................................................................................................ 34 三-8-1 影像微分(a).頻譜 (b).系統流程圖.............................................. 41. 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖. 三-8-2 信號一次微分和二次微分的結果.............................................. 45 三-9-1 雙峰長條圖.................................................................................. 47 三-9-2 多峰長條圖.................................................................................. 48 三-9-3........................................................................................................ 48 三-9-4........................................................................................................ 49 三-9-5........................................................................................................ 49 三-9-6 照度均勻影像之長條圖.............................................................. 50 三-9-7 照度不均勻影像之長條圖.......................................................... 50 三-9-8 理想照度區分.............................................................................. 50 三-9-9 照度不均影像區分...................................................................... 51 三-9-10 利用微分將物體分離................................................................ 52. II. 逢甲大學 e-Paper (92學年度).

(4) 醫學影像瀏覽系統. 第一章. 序論. 一-1 實作動機 對於歷史文物書籍的保存不易等問題,可以透過影像圖片的方式, 來做備份管理,而影像利用數位化的方式,可以加強影像的管理和保 存性,醫學影像亦然如此,例如 X 光片、超音波掃瞄等影像。因此可 實作一套系統,經由網路提供影像瀏灠及簡易的影像處理功能,達到 線上臨床診斷的需要。 一-2 實作目標 在 web-based 的前提下,採用 server-client 的模式,透過 Java 程式 語言跨平台的特性,利用安裝 Java 虛擬機器的 browser,不需事先安裝 應用軟體,即可達到方便地進行影像瀏灠的目的,進而克服醫療影像 診斷方面受限於空間及時間方面的因素。. 1. 逢甲大學 e-Paper (92學年度).

(5) 醫學影像瀏覽系統. 第二章. 系統分析與設計. 二-1 工具的選擇 要達到讓使用者能遠端瀏覽自己所需要的圖,那就要達到遠端跟自 己所需要這兩點;能選擇自己需要的圖,最簡便的方法是透過資料庫 的幫助。為了此二主要目標所選擇的工具有: 網路 ⇒ Apche、PHP、Java(Applet)。 資料庫 ⇒ MySQL、PHP、Java。 以下列出選擇各工具的目的。 二-1.1 Apache 簡介 Apache 是非常有名的網路伺幅器軟體,由於他是免費的,其性能 又是超強,所以是全世界最多人用的 Web Server。 二-1.2 選擇 Apache 原因 容易取得、免費、教學資源豐富、容易安裝使用。 二-1.3 簡介 PHP 是一種伺幅器端、跨平台, HTML 內嵌式描述語言。 二-1.4 選擇 PHP 原因 容易取得、免費、教學資源豐富、容易安裝使用、可讓網頁跟資料 庫作連結、效率高。 二-1.5 Java 簡介 Java 是一種可攜式的物件導向語言,可攜式就是跨平台,且提供豐 富的 API 元件讓寫程式的效率大大提升,是目前非常風行的程式語言。 二-1.6 選擇 Java 的原因 跨平台、API 元件豐富、可聯結資料庫(JDBC)、其 Applet 讓我 們製作出所需的網頁功能,且可製作網路程式、Server 端的壓圖程式 也是由 Java 撰寫。. 2. 逢甲大學 e-Paper (92學年度).

(6) 醫學影像瀏覽系統. 二-1.7 MySQL 簡介 MySQL 是一個快速、多執行緒(multithread)、多使用者且功能 強大的關聯式資料庫管理系統(relational database management system, RDBMS),可以與 C、C++、Java、Perl、PHP 等語言很容易的連結, 可以運行於多種平台上,例如:Solaris、RedHat、Linux、FreeBSD、 OS/2、Windows ...... 等等。 MySQL 在一般情況下需付費,不過,大體上來說,個人及非營利 單位使用它是免費的。 二-1.8 選擇 MySQL 的原因 支援 SQL 語法、可與 PHP 跟 Java 連結、以目前的使用目的免費、 教學資源豐富。. 3. 逢甲大學 e-Paper (92學年度).

(7) 醫學影像瀏覽系統. 二-2 資料庫 總共分 4 個 table 1. 醫生 醫生 ID. 密碼. 科別. 名字. 主要用在登入子系統,科別則區分能看哪些圖 2.病人 病人 ID 名字 電話 要有地方解釋當查詢名子有 2 個以上同名的用電話作分別 3.圖片 病人 ID. 日期. 部位. 科別. 序號. 備註. 4.拍照紀錄 病人 ID. 日期. 科別. 4. 逢甲大學 e-Paper (92學年度).

(8) 醫學影像瀏覽系統. 二-3. 流程圖. 醫生. 影像儲存資 料庫. 回傳影像資料. 輸入瀏覽器資料. 0 輸出瀏覽器資料. 回傳醫生檔案. 要求影像資料 醫學影 像瀏覽 系統. 回傳病人檔案. 要求病人檔案 病人檔案 資料庫. 醫生檔案 資料庫. 要求醫生檔案 要求拍圖紀錄 傳回拍圖紀錄. 拍圖紀錄資 料庫. 圖 二-3-1 Context Diagram. 5. 逢甲大學 e-Paper (92學年度).

(9) 醫學影像瀏覽系統. 醫生檔案資 料庫. 請求病人檔案. 回傳醫生檔案. 病人檔案資 料庫. 1 醫生登 入查詢 系統. 請求醫生檔案 輸出瀏覽器資料. 醫生. 回應病人檔案 請求拍圖紀錄. 回傳拍圖紀錄. 輸入瀏覽器資料. 拍圖紀錄資 料庫. 儲存相關資訊. D1 查 詢 結 果. 2 Applet影 像瀏覽系 統. 回傳影像資料. 影像資料庫. 取得相關資訊. 請求影像資料. 圖 二-3-2 Diagram 0. 6. 逢甲大學 e-Paper (92學年度).

(10) 醫學影像瀏覽系統. 醫生 請求醫生檔案 醫生檔案資 料庫 1.1 回應醫生檔案. 拍圖紀錄資 料庫. 1.2 回應拍圖紀錄 查詢病 人 ID. 儲 存 aApplet相 關 資 訊 取得查詢資料. 請求病人檔案. 病人檔案資 料庫. 1.3 查詢病 人 Name. 回傳病人檔案. 輸入瀏覽器資料. 請求拍圖紀錄. 輸出瀏覽器資料. 醫生登 入登出 系統. D2 查 詢 列 表. 輸出查詢列表. 圖 二-3-3 DIAGRAM 1. 7. 逢甲大學 e-Paper (92學年度).

(11) 醫學影像瀏覽系統. 取得相關資訊. 2.1. 2.2 請求縮圖 取縮圖 Server. 回傳縮圖. 回傳影像資料. 取縮圖 Client. 請求影像資料 輸出縮圖列表. 2.4 影像資料庫 取原 始圖 原始縮圖 列表. 回傳影像原始圖 儲存原始圖. 請求原始圖. D3. D4. 原始圖. D5. 結果圖. 2.3 取得縮圖資料. 影像處 理介面. 輸出瀏覽器資料. 醫生. 取得原始圖 取得結果圖. 輸入瀏覽器資料. 儲存結果圖. 圖 二-3-4 DIAGRAM 2. 8. 逢甲大學 e-Paper (92學年度).

(12) 醫學影像瀏覽系統. 開始. NO. 登入. 比對帳號. YES 選擇搜尋模式. 輸入姓名 NO. NO. NO. 輸 入 ID NO. YES. 從 ID尋 找. YES. 是否有找 到. YES. 是否有找 到. 登 入 Applet 端. YES END. 圖 二-3-5 DF0. 9. 逢甲大學 e-Paper (92學年度).

(13) 醫學影像瀏覽系統. 開始. 初始化介面. 連線. 初始化失敗. NO. YES 尋找圖 形. NO. YES 壓縮圖形. 傳送縮圖. 初始化成功. 圖 二-3-6 DF1. 10. 逢甲大學 e-Paper (92學年度).

(14) 醫學影像瀏覽系統. 開始. Applet啟 動. NO. 連線. 連線失敗. YES 傳送縮圖. 選擇功能. NO. YES. NO. 事件發生. 處理事件. 中止. YES 結束. 圖 二-3-7 DF2. 11. 逢甲大學 e-Paper (92學年度).

(15) 醫學影像瀏覽系統. 二-4 軟硬體配備 硬體配備建議: 在我們測試時發現、當 Applet 載入系統所需的元件時,記憶體的 需求不少,且可能是演算法的效率不彰,運算某些功能讓 CPU 很吃力, 所以建議 CPU 在 1G 以上,記憶體 512MB 以上 軟體配備: 支援可結合 JAVA VIRTUAL MACHINE 的瀏覽器 支援上述瀏覽器之 OS JAVA VIRTUAL MACHINE 版本 1.4 以上. 12. 逢甲大學 e-Paper (92學年度).

(16) 醫學影像瀏覽系統. 第三章. 影像處理. 三-1 點處理運算 點處理運算為一無記憶體的運算,而迴旋運算是一有記憶體的運 算,執行迴旋運算時,過去的輸入需儲存起來以計算目前的輸出,點 處理運算可分為函數轉換和算數邏輯運算。 函數轉換 函數轉換將輸入灰度 f 根據轉換函數 T 映設至 g。 g = T( f ). 下面影像灰度值皆在(0,255)間。 二值化函數: f ≤ T0 f ≥ T0.  0 255 255 (b) T ( f ) =   0. (a) T ( f ) = . a≤ f ≤b f在在其他範. 這些函數將影像中的物體跟背景分離,其轉換關係圖三-3-1,這些 函數常應用在字元辨識、圖形辨識中,將物體跟背景分離。. 255. 0. 255. 0. T0. 255. f. 0 0. a. b 255. 圖 三-1-1 影像二值化函數 反白函數: T ( f )255 − f. 此函數將將影像中黑變白、白變黑,其函數如圖三-1-2. 13. 逢甲大學 e-Paper (92學年度).

(17) 醫學影像瀏覽系統. g 255. 0. f. 0. 圖 三-1-2 反白函數 二補數函數:  f + 128 T( f ) =   f − 128. f < 128 f ≥ 128. 此函數將原影像由(0,255)轉換至(-128,127)之 2 補數表示,影像在 運算過程中常會出現負數,一般固定位元運算時,需將影像轉換為 2 補數以避免溢位情形,2 補數的一個優點是只要結果不溢位,運算的加 減過程中溢位情況可以忽略不管,其結果不會溢位,一般以硬體處理 影像時,位元長度是固定不變的,此時就需以 2 補數表示影像,此轉 換函數如圖三-1-3。 f 255 128 0. 0. 128. 255. g. 圖 三-1-3 2 補數影像轉換函數圖 量化函數: 8 位元影像灰度可以二進位表示成 f = b7 2 7 + b6 2 6 + Λ Λ + b1 21 + b0. 我們可將此影像重新量化,取最高 m+1 位元量化,將原影像量化至 2 m+1 灰度,. 14. 逢甲大學 e-Paper (92學年度).

(18) 醫學影像瀏覽系統. T ( f ) = b7 2 7 + b6 2 6 + Λ Λ b7 − m 2 7 − m. = 2 7 − m • INT  f.  7−m  2 . m=0~6. 式 三-1-1. 對比伸張強化函數: 一些看不清楚的影像可能是因為影像本身的動態範圍太窄,以致對 比太弱,對比伸張函數可將動態範圍在(min,max)間的影像映射至最大 的動態範圍(0,255)。 T(f)=0 f<min T(f)=255 T(f)=. 式 三-1-2. f>max. f −a • 255 b−a. 有時由於雜訊的影響,min 和 max 不是真正影像的最大和最小值, 而是由雜訊造成的,此時(min,max)比真正影像動態範圍大,導致式三 -1-1 的斜率不夠大,伸張的效果不好。解決這個問題,我們可設灰度 a 為累加點數小於某一百分比如 5%,b 為累加點數小於另一百分比如 98%的灰度,則式三-1-2 可修改為 T(f)=0 f<a,T(f)=255 f>b T(f)=. f −a • 255 a ≤ f ≤ b b−a. 式 三-1-3. 如此即可得到更好的強化效果。實際上我們可將式三-1-2 或式三 -1-3 修改得更有彈性,將影像灰度值切割成不同區間,每一區間以不 同斜率強化。. 15. 逢甲大學 e-Paper (92學年度).

(19) 醫學影像瀏覽系統. 三-2 均化濾波(Smoothing filter) (1)介紹 均化濾波又稱作低通濾波,此濾波器會使信號變化變得較平緩, 強化變化平緩的成份(低頻成份),抑制變化較快的成份(高頻成份) 故又稱低通濾波器,通常罩遮範圍越廣濾波器就愈能依照其所定條件 如低通濾波頻寬範圍而設計,而這裡將以 3×3 範圍為主。 (2)功用 此種濾波器主要用來去除雜訊,去除高頻信號成份和來重新取 樣。 (3)證明 設影像 f ( x, y ) ,含有雜訊 n( x, y ) ,不受干擾 f ′( x, y ) ,所以 f ( x, y ) = f ′( x, y ) + n( x, y ) 。. 4 4 4 f ′( x, y ) = 4 4 4. 0 0 0 n ( x, y ) = 0 0 0. 4 4 4 4 4 4. 0 0 0 0 0 0. 4 4 4 4  4 4. 0 0 1 2  3 0. 4 4 4 4 4 4. 0 0 4 5 6 0. 4 4 4 4 4 4. 0 0 1 2 3 0. 4 4 4 4 4 4. 0 0 0 0 0 0. 4 4 4 4 4 4. 0 0 0 0 0 0. 16. 逢甲大學 e-Paper (92學年度).

(20) 醫學影像瀏覽系統. 4 4 4 f ( x, y ) = 4 4 4. 4 4 4 4 4 4. 4 4 5 6  7 4. 4 4 8 9 10 4. 4 4 11 12 13 4. 4 4 4 4 4 4. 4 4 4 4 4 4. 經過 Smoothing filter(取四捨五入) ⇒ 5 8 11 f ( x, y ) = 6 9 12 7 10 13  4 4 4 f ′( x, y ) = 4 4 4 4 4 4 1.3 1.6 1.3  n( x, y ) = 2.3 3 2.3 1.8 2.3 1.8 . 由此可知雜訊值可被降低 由上例可證: f ( x, y ) = f ′( x, y ) + n( x, y ). 取其 Smoothing filter ⇒ g ( x, y ) =. 1 1 f ′( x − k , y − 1) + ∑ ∑ n( x − k , y − 1) ∑ ∑ 9 ( k ,1)∈w ( k ,1)∈w 9 ( k ,1)∈w ( k ,1)∈w. 設雜訊影像 n( x, y ) ,方差 Aσ 2 ,則雜訊的信號方差: 1  Var  ∑∑ n( x − k , y − 1) 9  2. [. ]. 2. (. 1 1 =   Var ∑∑ n( x − k , y − 1) =   ∗ 9σ 2 9 9 =. ). σ2 9. 17. 逢甲大學 e-Paper (92學年度).

(21) 醫學影像瀏覽系統. 其中 Var[ x + y ] = Var[ x] + Var[ y ] Var[kx] = k 2Var[ x] Var[ x] = E ( x − x) 2 . 是故雜訊能量減少了 9 倍,但相對的 Smoothing filter 會抑制 image 的 高頻成分,邊緣變化變得平滑,就好像模糊了影像一樣。. 18. 逢甲大學 e-Paper (92學年度).

(22) 醫學影像瀏覽系統. 三-3 中值濾波 (median filter) (1)介紹 1971 年,J.W.Jukey 提出中值濾波器來處理非線性訊號方法。它在 某些條件下,可克服線性濾波器如平均濾波,均方濾波所引起影像系 擷模糊的問題,並對於濾波脈衝干擾及影像掃描雜訊最有效。 (2)功用 1.對某些輸入訊號,中值濾波有不變性 在 2n + 1 視窗內單調增加或單調減少的某些輸入訊號,中值濾波 之輸出訊號保持等於輸入訊號,即 f i − n ≤ f i − n +1 ⋅ ⋅ ⋅. < < f i f i+n > >. 則{yi}={fi} 式中 yi 為中值,fi 為資料序列。 表三-2-1 為二維視窗和與之對應的不變輸入圖形,它有與視究對頂 角連線垂直邊緣線保持不變的特性,利用此特性,中值濾波可去除雜 訊,又能保持影像中物體的邊。 表 三-3-1中值濾波常用視窗和對應的圖形 ο ο ο ο ο ο. ο ο ο ο ο ο. ο ο ο ο ο ο. ο ο ο ο ο ο. (a). ο ο ο ο ο ο. ο ο ο ο ο ο. ο. ο. ο ο ο ο ο ο ο ο ο ο ο ο. ο ο ο ο ο ο ο ο. ο ο ο ο ο ο. ο ο ο ο. ο ο ο. ο. (b). (c). (d). (e). 2.中值濾波具消除雜訊功能 因中值濾波為非線性運算,因此對隨機輸入雜訊的分析很複。當輸 入為均值雜訊時,中值濾波的雜訊方差 σ2med 約為. 19. 逢甲大學 e-Paper (92學年度).

(23) 醫學影像瀏覽系統. σ2 =. • σ i2 π 1 × ~ 4mf (m) • m + π − 1 2 2. 式中: m :輸入雜訊均值. (). f m :輸入雜訊密度函數. σ i2 :輸入雜訊功率 σ i2 =. 1 2 σi m. 對隨機雜訊的抑制能力,平均濾波比中值濾波好些。而對脈衝寬 度索於. m 的窄脈衝干擾,中濾波有很好的效果。 2. 3.中值濾波不變的頻譜特性 因為中值濾波不為線性運算,因此在顪率不存在對應關係,下列方 法易於了解中值濾波輸入輸出頻譜變化的情況。 H∆. G F. 由理論及實驗證明,顪率響應 H 和輸入訊號頻譜 G 有關,並且是 振動不大的曲線。如圖三-3-1 所示。 H (µ ) 10 +1 255 f 10 −1. 圖 三-3-1. G(µ ). H and G 的關係曲線. 由圖中可知 H ( µ ) 變化不大,可以認定訊號經中值濾波後,頻譜不 變。. 20. 逢甲大學 e-Paper (92學年度).

(24) 醫學影像瀏覽系統. 三-4 高通濾波(high pass filter) 高通濾波強化影像高頻的成份,濾去低頻成份,低通濾波濾去高頻 成份,因此只要讓原影像和低通濾波的影像相减即可獲得高通濾波的 結果,系統結構如圖三-2. f ( x, y ). g ( x, y ). 低通濾波. (a) −1 9 −1  9 −1  9. −1 9 8 9 −1 9. − 1 9 − 1  9 − 1 9 .  0 −1  8 0 . −1 8 1 2 −1 8.  0 − 1  8 0  . (b) (a) 高通濾波系統結構 (b) 3 × 3 高通濾波罩遮. 圖 三-4-1. 設 WLP ( x, y ) 表低通濾波罩遮, WHP ( x, y ) 表高通罩遮,則 WHP (m, n) = δ (m, n) − WLP (m, n) 1 m = n = 0 其它 0. 式 三-4-1. δ (m, n) = . 利用式 3-4.1 和低通濾波罩遮,可求出高通濾波罩遮如圖三-4-1(b) 注意,高通濾波將信號直流成份濾除,因此高通濾波的結果信號為交 流信號有正有負,而一般影像的顯示皆為正值,故須將輸出影像取絕 對值或適當平移。 實現一個高通(銳化)空間濾波器所需要的沖激響應的形狀指出, 濾波器在它的中心附近應當具有正的係數,在外部周圍具有負的係 數。對於一個 3×3 遮罩,選擇中心位置上為正係數,其餘位置上為負 係數,這種遮罩滿足上述條件。. 21. 逢甲大學 e-Paper (92學年度).

(25) 醫學影像瀏覽系統. R = w1 z1 + w2 z 2 + Κ + w9 z 9. − 1 1 ×  − 1 9  − 1. − 1 8 − 1. − 1 − 1  − 1 . 這個濾波器消除零頻率項,該項的消除把影像的平均灰值度簡化 為 0,顯著的降低了影像的整體對比度。原始影像由細節和灰度慢變化 的背景組成,而結果是增強了在一個相單暗的背景中的邊緣。 把一幅影像的平均值減少為 0 意味著影像必須具有某些負灰階。因 為我們只處理正值,高通濾波的結果包括某些比例和(或)截幅的形 成,使得最後的灰階落在範圍 [0,L-1] 。取濾波後影像 的絕對值使得所有值為正,通常不是一個好的想法,因為負值明顯地 出現在影像中。 經過兩次微分後,參照微分強化章,我們使用 Laplace mask,所以 可得  f ( x, y ) − ∇ 2 f ( x, y ) g ( x, y ) =  2  f ( x, y ) + ∇ f ( x, y ). so we can show this mask − 1  − 1 − 1   0 − 1   0. − 1 − 1 9 − 1 − 1 − 1 −1 0  5 − 1 − 1 0 . 然後經過一個叫 unsharp masking 的過程,可以表達出 f s ( x, y ) = f ( x, y ) − F ( x, y ) f s ( x, y ) denotes the sharpened image obtained by unsharp masking F ( x, y ) is a blurred version of f ( x, y ). 所以可推出 f hb ( x, y ) = Af ( x, y ) − F ( x, y ) where A ≥ 1 f hb ( x, y ) high-boost filter. 然後可在寫 f hb ( x, y ) = ( A − 1) f ( x, y ) + f ( x, y ) − F ( x, y ) = ( A − 1) f ( x, y ) + f s ( x, y ) 22. 逢甲大學 e-Paper (92學年度).

(26) 醫學影像瀏覽系統.  Af ( x, y ) − ∇ 2 f ( x, y ) f hb ( x, y ) =  2  Af ( x, y ) + ∇ f ( x, y ) 是故 − 1 − 1 − 1 − 1 A + 8 − 1   − 1 − 1 − 1 or. 承上,由於已知. so we can show this mask is. −1 0 0 − 1 A + 4 − 1    0 −1 0 . f hb ( x, y ) high-boost filter. f hp ( x, y ) = f ( x, y ) − f lp ( x, y ). f hp ( x, y ). high-pass filter. f lp ( x, y ). low filter. and f hp ( x, y ) = Af ( x, y ) − f lp ( x, y ) = ( A − 1) f ( x, y ) + f ( x, y ) − f lp ( x, y ) = ( A − 1) f ( x, y ) + f hp ( x, y ). where A ≥ 1 so we can write   f hb ( x, y )  = ( A − 1) +  f hp ( x, y )  = H hb ( x, y ) = ( A − 1) + H hp ( x, y )    f x y ( , ) f x y ( , )    . sometimes it is advantageous to accentuate the contribution to enhancement made by the high frequency components of an image. In this case, we simply multiply a high pass filter function by a constant and add offect so that the zero frequency term is not eliminated by the filter. H hfe ( x, y ) = a + bH hp ( x, y ). where a ≥ 0 , b > a. 一般而言 0.25 ≤ a ≤ 0.5 , 1.5 ≤ b ≤ 2.0 H hfe ( x, y ). high-frequency emphasis. (2)功用 銳化的主要目的是增強影像中的細微部份或增強已經模糊了的細 節。模糊原因可能是影像獲取的特定方法的誤差,也可以是方法的自 然效應。影像銳化的使用各式各樣,包括的應用範圍從電子印刷和醫 學影像到工業檢驗和現代化武器的自動目標偵測。. 23. 逢甲大學 e-Paper (92學年度).

(27) 醫學影像瀏覽系統. 三-5 時間平均濾波(temporal filter) (1)介紹 如果雜訊隨著時間而改變,且每一時間的雜訊彼此皆不相關,我 們可以時間平均的方式達到降低雜訊能量的效果,同時維持空間的解 析度。考慮一幅雜訊影像 g ( x, y ) ,它是雜訊η ( x, y ) 疊加在一幅原始影像 f ( x, y ) 上面形成的,即 g ( x , y ) = f ( x, y ) + η ( x , y ). 這裡假定在每一對座標 ( x, y ) 上雜訊互不相關且具有零平均值。 (2)功用 其方法的目的是透過一組雜訊影像 {g ( x, y )}的相加來減少雜訊效 應。 (3)證明 如果雜訊滿足上述條件,我們可很簡單低證明如下結論:如果一 幅影像是由 M 幅不同的雜訊影像經過平均而形成的,即. g ( x, y ) =. 1 M. M. ∑ g ( x, y ) i. i =1. 則有 E{g ( x, y )} = f ( x, y ). 和 σ g2( x , y ) =. 這裡 E{g ( x, y )}是 g 的期望值,. σ g2( x , y ). 1 2 σ η ( x, y ) M. 和. σ η2( x , y ). 是所有座標 ( x, y ) 上 g 和η 的. 方差。平均影像中任何一點上標準差為 σ g ( x, y ) =. 1 M. 24. σ η ( x, y ). 逢甲大學 e-Paper (92學年度).

(28) 醫學影像瀏覽系統. 三-6 局部平均變異強化 (local mean variance enhancement) (1)介紹 長條圖強化影像是利用整體的資訊來強化影像,使整張影像不偏黑 或偏暗且對比最強烈,但此種方法對於局部影像偏黑或偏暗則無法得 到強化的效果,如逆光攝影影像,整張影像對比很好但逆光的部份卻 偏暗,長條圖強化會將整張影像動態範圍(對比)拉開,由於整張影 像對比已經很好,對於局部偏暗的部份不能得到強化的效果。一般而 言對比愈強的影像其變異數也愈大,局部平均變異強化乃利用此特點 一方面維持局部的平均值(直流成份)同時加強此影像的交流部份, 如果局部的變異數偏低就將它放大,因為影像交流的部份一般代表影 像中的紋路變化,如此即可強化影像中局部偏暗或偏亮部份。局部平 均變異強化公式如下:. m( x, y ) =. σ ( x, y ) =. 1 Nw. ∑ f ( x − i, y − i ). 式 三-6-1. ( x , j )∈w. 1 Nw. ∑. f ( x, y ) − m ( x , y ). ( i , j )∈w. 2. 式 三-6-2. N W 代表局部範圍 W 的點數, m( x, y ) 代表影像 f ( x, y ) 的局部平均影. 像,σ(x,y) 是 f ( x, y ) 的局部變異數,由式三-6.2 可知 σ (x, y ) 愈大的點其 灰度差異較大,對於點 f ( x, y ) ,如果 σ (x, y ) 愈小則將差異的部份 f ( x, y ) − m( x, y ) 以和 σ (x, y ) 成反比的倍數放大,注意在執行式三-6.1 要注. 意運算中的溢位, k σ ( x, y ) 的值應限制在某種範圍內。 g ( x, y ) = A( x, y )[ f ( x, y ) − m( x, y )] + m( x, y ). 25. 逢甲大學 e-Paper (92學年度).

(29) 醫學影像瀏覽系統. 其中 M. A( x, y ) = k σ ( x , y ). 0 < k <1. 變數 A,m 和 σ 的數值與 ( x, y ) 的鄰域定義有關。作用於 f ( x, y ) 與局 部均值 m( x, y ) 之差的局部增益因子 A( x, y ) 將局部方差放大。因為 A( x, y ) 與灰度的標準差成反比,所以低對比度的區域具有高增益。加在式四 後面的平均值用於恢復局部區域上影像的平均灰度。實際中,為了抵 銷各個區域內大的灰階偏差。常常希望後加一個局部平均值因子並且 將 A(x, y ) 限制在 ( Amin , Amax ) 之間。 灰度平均值和方差(或標準差)就是常被使用的兩種特性,因為 它們與影像的面貌有關。就是說,平均值是平均亮度的一個量測,方 差是對比度的量測。以這些概念為基礎的一種典型局部轉換在每個像 素位置 ( x, y ) 上使用如下公式把輸入影像的灰度 f ( x, y ) 映射為一幅新的 影像 g ( x, y ) 在上述轉換中, m( x, y ) 和 σ 分別是在以 ( x, y ) 為中心的鄰域上計算 出的灰階平均值和標準差,M 是 f ( x, y ) 的整體平均,k 是一個常數,其 取值範圍為: 0 ≤ k ≤ 1 。 利用同樣的原理,我們也可以局部長條圖強化法達到局部強化的效 果,對於每一點 f ( x, y ) 我們算出其周圍 N W 點如 7×7 或 9×9 或 13×13 的 範圍的長條圖,利用此長條圖的等化曲線來強化點 f ( x, y ) ,如此每一點 皆可能被對應到(0.255)範圍內的灰度值。本程式用 3×3 矩陣。 (2)功用 局部平均變異強化. 26. 逢甲大學 e-Paper (92學年度).

(30) 醫學影像瀏覽系統. 三-7 長條圖分布 (histogram equalization or histogram linearization) (一)介紹 利用長條圖強化 對比伸長強化的缺點是需要經由錯誤嘗試,交替式的處理才能得到 一較好的強化效果,是否能夠自動的強化影像呢?這裡我們介紹一種 利用長條圖強化的方式稱為長條圖等化法,此方法的目的是希望強化 後的影像能達到全動態範圍且灰度值分布均勻。根據機率論的變數變 換定理,取任意機率的分佈函數為變數變換公式,能將機率函數轉換 為在 (0,1) 間的平均分配機率密度函數。應用此種原理即可將原長條 圖轉換為均勻分佈的長條圖。 設原機率密度函數為 p( f ) ,則其分佈函數: f. T ( f ) = ∫ p ( x)dx 0. 0 ≤ x ≤1. 讓 s = T ( f ) 表示轉換後影像的灰度變數,則 p( s) = p( f ). 1 df = p( f ) ∗ =1 ds p( f ). 故變數 s 的機率分佈為均勻分佈。 由前面推倒可之長條圖強化函數可表示如下:. f. s = T ( f ) = ∫ p ( x)dx. 式 三-7-1. 0. 式三-7-1 為理論的結果,但實際上因影像灰度值為有限個能階,式 三-7-1 所計算的 s 值並不一定在次有限能階上,此時須將 s 重新量化, 因此實際並不能得到一灰度均勻分佈的結果。. 27. 逢甲大學 e-Paper (92學年度).

(31) 醫學影像瀏覽系統. 直方圖修正 直方圖修正的工作主要是針對影像灰度曝光不夠均勻所引起的問 題,例如灰度集中在高度範圍,則照片曝光;集中在低亮度範圍,則 照片曝光不足,兩者都使照片不清楚。如圖三-7-1 P(x). P(x). Z Z1. Z2. Z Z1. Z2. 圖 三-7-1 以模組化結構執行局部平均變異強化 爲了將直方圖標準化,假定變數 r 代表待加強影像的灰階且灰階為 連續的變化,其範圍在 [0,1] 之間, r = 0 對應於黑, r = 1 對應於白。設灰 階度 z 標準化為 r,變換後的影像任一個灰度級 z ′ 標準化為 s,s 應滿足 下列條件: 1. T (r ) 在 0 < r < 1 區間是單直且單調增加。 2. 對於 0 < r < 1 , 0 < T (r ) < 1 。 其中 s = T (r ). 為原始影像每一像素灰階 r 產生灰階 s 的轉換式。 上述條件 1. 為使灰階從黑到白的次序 2. 使映射轉換後的影像灰 階在允許的範圍內。圖三-4 為這條件的轉換函式。. 28. 逢甲大學 e-Paper (92學年度).

(32) 醫學影像瀏覽系統. S. S h = T (rk ). r rk. 圖 三-7-2 灰階轉換函數 從 s 到 r 的反轉換如下形式: r = T −1 ( s ). 0 ≤ s ≤1. 其中 T −1 ( s ) 也滿足上面的條件 1.、2.。 若影像灰階屬於連續量,則開始灰階 p r (r ) 和轉換後灰階 p s (s) 分別 表示出現的機率密度函數。由機率理論知,如果 p r (r ) 和 Tr (r ) 為已知, 且 T −1 ( s ) 滿足條件 1.,則轉換後密度函數為. dr   p s ( s) =  p s (r )  ds  r =T −1 ( s ) . 式 三-7-2. 考慮轉換函數 r. s = ∫ ds = ∫ p r ( w)dw. 0 ≤ r ≤1. 0. 式 三-7-3. 式中,w 為虛設積分變數,利用 Tr (r ) 去控制影像灰階的機率密度函 數,進而改善影像,上式右邊為 r 的累積分佈函數,它必須滿足條件 1.、2.。. 29. 逢甲大學 e-Paper (92學年度).

(33) 醫學影像瀏覽系統. 從式三-7-3 得到 ds = p r (s ) dr. 將它代入式 3-7-2 由上面可知 s 變換後之機率密度式均勻的:若以增強觀點而言,奇 意指它增強了像素的動態範圍,對於影像的外觀有極佳的效果。例如 有一幅影像其灰度機率密度函數 p r (r ) 為 0 ≤ r ≤1. − 3r + 3 p r (r ) =   0. 其他. 代入式三-7-3 s = T ( s) = = = =. ∫. r. 0. p r ( w)dw. r. ∫ (−3r + 3)dr 0. r 3 − r 2 + 3r 2 0 3 2 − r + 3r 2. 現在驗證 Tr (r ) 變換後的影像灰度級分佈是否均勻,亦即 p s (s) 是否 為 1。 而 r 之範圍在 [0,1] 之間,負號不成立。 3 2. 可知 T (r ) = − r 2 + 3r ,轉換後的影像其灰度分佈式均勻的, 如圖三-7-3 所示。. 30. 逢甲大學 e-Paper (92學年度).

(34) 醫學影像瀏覽系統. S = T (r ). Pr (r ). 1 0.8 0.6 0.4 0.2. 3 2 1 (r ). r 0.2. 1 (a). Ps (s ). 0.6 1 0.4 0.8 (b). 1. 0.5. 0.5. S. 1 (c). 圖 三-7-3 直方圖均勻化 爲了對於數位影像的處理,將上面所述公式離散化,與機率形式: nk n. p r (rk ) =. 0 ≤ rn ≤ 1. k = 0,1,Λ L − 1. 其中 L 是灰階數目, p r (rk ) 市第 k 個灰街的機率, nk 是灰階 rk 在影 像中出現的次數,n 是像素總數。 p r (rk ) 和 rk 之關係圖叫直方圖,獲致 均勻直方圖的技術稱為直方圖均勻化(histogram equalization)或直方 圖線性化(histogram linearization)。 k. nj. j =1. n. s k = T (rk ) = ∑. 反轉換式. rk = T −1 ( s k ). h. = ∑ p r (rk ) 0 ≤ rk ≤ 1 h = 0,1,Λ , L − 1 k =0. 0 < sk < 1. 正反轉換式都滿足條件 1.、2.。. 31. 逢甲大學 e-Paper (92學年度).

(35) 醫學影像瀏覽系統. 例:假如有一幅影像,具有 64 × 64 個像點,8 個灰階度,其機率分佈 如下表三-7-1,現將此影像以直方圖均勻化。 表 三-7-1 影像以直方圖均勻化 p r (rk ) =. rk. nk. r0 = 0. 790. 0.19. r1 =. 1 7. 1023. 0.25. r2 =. 2 7. 850. 0.21. r3 =. 3 7. 656. 0.16. r4 =. 4 7. 329. 0.08. r5 =. 5 7. 245. 0.06. r6 =. 6 7. 122. 0.03. r7 = 1. 81. 0.02. 32. nk n. 逢甲大學 e-Paper (92學年度).

(36) 醫學影像瀏覽系統. 表 三-7-2 直方圖均勻化之過程 原灰度. 變換函數 T (rk ). 像點. 級. 值. 數. r0 = 0. T (r0 ) = s 0 = 0.19. 790. 0. r1 =. 1 7. T (r1 ) = s1 = 0.44. 1023. 1 = 0.14 7. r2 =. 2 7. T (r0 ) = s 0 = 0.19. 850. 2 = 0.29 7. r3 =. 3 7. T (r3 ) = s 3 = 0.81. 656. 3 = 0.43 7. r4 =. 4 7. T (r4 ) = s 4 = 0.89. 329. 4 = 0.57 7. r5 =. 5 7. T (r5 ) = s5 = 0.95. 245. r6 =. 6 7. T (r6 ) = s 6 = 0.98 T (r7 ) = s 7 = 1. r7 = 1. 量化級. 新灰度級. 新灰度級分 佈 0. ′ → s 0 (790). 790 = 0.19 4096. ′ → s1 (1023). 1023 = 0.25 4096. 5 = 0.71 7. ′ → s 2 (850). 850 = 0.21 4096. 122. 6 = 0.86 7. ′ → s3 (985). 985 = 0.24 4096. 81. 1. ′ → s 4 (448). 448 = 0.11 4096. 一段數學式子 依圖樣方法,計算 s2,s3~s7 可得值如下: s2=0.65,s3=0.81,s4=0.89,s8=0.95,s6=0.98,s7=1 Pr (rk ) 0.25 0.2 0.15 0.1 0.05 1 7. 3 7. 5 7. 33. 7 7. rk. 逢甲大學 e-Paper (92學年度).

(37) 醫學影像瀏覽系統. Ps (Sk ) 0.3 0.25 0.2 0.15 0.1 0.05 1 7. 3 7. 5 7. 7 7. sk. 5 7. 7 7. rk. Sk = T (rk ) 1.0 0.8 0.6 0.4 0.2 1 7. 3 7. 圖 三-7-4 將 p r (rk ) , p s ( s k ) 和 p k (Trk ) 分別作圖,如圖三-7-4 所示。雖然影像給 定之 rk 值是等間隔的(均勻量化),而經由 s k = T (rk ) 轉換後,所得之 s k 不為等間隔的,為了得到和原影像等間隔之均勻量化,對每一 s k 取靠 近之量化值,重新量化之心灰度級 s0’、s1’、s2’、s3’、s4’,再由此數 值得到其灰度級分佈。 轉換後影像直方圖並非十分均勻,這是由於重新量化時,將每一個 r 灰度級之像點作一整體數,經過這樣的灰度轉換由 7 級減為 5 級,使 含有像點數的灰度級間隔拉大了。像點數少的灰度級之間隔壓縮了, 使可接收的視覺量增加了。 直方圖一般修正方法 爲了要得到較高的影像對比度,亦即增強影像,可採用直方圖均勻 化處理方法,但是它使影像灰度級密集區佔有更多灰級度,而稀疏區 減少灰度,完全利用各個密度區,而讓影像之對比度之效果更增強, 34. 逢甲大學 e-Paper (92學年度).

(38) 醫學影像瀏覽系統. 但如此影像並一定適合觀察,因此必須加以修正,方法有二,其一是 用一個規定的機率密度函數來表示已要的直方圖。如表三-7-3 一般先 將函數數位化,再變為直方圖。. 表 三-7-3 修正後要求的機率密度函數 p s (s ). 指數分佈. p s ( s ) = α exp[− α ( s − s min )] s ≥ s min p s ( s) =. 均勻分佈. s max. 1 − s min. 轉換函數 s = T (r ) s = s min −. 1. α. ln[1 − p r (r )]. s = [s max − s min ] p r (r ) + s min. s min ≤ s ≤ s max. 雙曲線. 雷利分佈. p s ( s) = p s ( s) =. s − s max. α. s  s = s min  max   s min . 1 s[ln(s min − ln( s min ))] 2.  ( s − s min ) 2  exp−  2α 2  . s ≥ s min. s = s min. p +1.    1  + 2α 2 ln  1 − p r (r )  . 12. 方法之二是用可控制直線段來完成直方圖,以得到所希望之形狀並 加以數位標準化。 下面用一規定之機率密度函數表示已要直方圖的數值計算方法。假 設 p r (r ) 為原始影像之灰度機率密度函數,而 p z (z ) 為希望影像之灰度機 率密度函數,則對原影像均勻化處理。 由 r. s = T ( s ) = ∫ p r ( w)dw 0. 對希望的影像進行均勻化處理 z. u = R( z ) = ∫ p z ( w)dw 0. 35. 逢甲大學 e-Paper (92學年度).

(39) 醫學影像瀏覽系統. 既然兩影像都均勻化處理,其灰度機率密度函數 p s ( s) 和 pu (u ) 相 同,且都為 1,使用 z = R −1 (u ) = R −1 ( s ) = R −1 [T (r )]. 在數位影像中正反轉換其像點灰度值一一對應映射,而在連續影像 中要探討解析式是否存在。 (二)功用 影像顏色過於偏向某色系時能與以擴散使顏色較均勻分佈進而減 少過白過黑之類情形。. 36. 逢甲大學 e-Paper (92學年度).

(40) 醫學影像瀏覽系統. 三-8 微分濾波 ( Derivation filter ) (一)作用 微分濾波常應用於影像邊緣化或邊緣特徵抽取,利用影像的邊緣 來表示影像的優點就是所需處理的資料大為減少,故微分濾波常被應 用於影像的辨識。 一次微分對於邊緣過渡叫窄的影像效果較好,如果邊緣變化較緩, 可利用二次微分幫忙偵測邊緣。 以下列出一些常用的微分濾波器。其中 Sobel 濾波器是由微分運算 和低通運算所結合,固有降低雜訊的效果。 − 1 + 1 0 0  .  − 1 0  + 1 0  . Vertical & Horizontal  0 + 1 − 1 0   . + 1 0   0 − 1  . Robert Operators  − 1 0 + 1  − 2 0 + 2    − 1 0 + 1 .  − 1 − 2 − 1 0 0 0   + 1 + 2 + 1. Sobel Operators. 37. 逢甲大學 e-Paper (92學年度).

(41) 醫學影像瀏覽系統. 以下列出一些影像二次微分所常用的拉普拉氏(Laplaction)運算:  0 −1 0  − 1 + 4 − 1    0 − 1 0  − 1 − 1 − 1 − 1 + 8 − 1   − 1 − 1 − 1  + 1 − 2 + 1  − 2 + 4 − 2    + 1 − 2 + 1. 比較: 一次微分: 0 0 0  − 1 + 1 0    0 0 0. 0 − 1 0  0 + 1 0    0 0 0. Vertical. Horizontal.  − 1 0 + 1  − 2 0 + 2    − 1 0 + 1 .  − 1 − 2 − 1 0 0 0   + 1 + 2 − 1. SobelV. SobelH.  − 1 0 0  0 + 1 0    0 0 0.  0 − 1 0  + 1 0 0    0 0 0. Robert1. Robert2. 38. 逢甲大學 e-Paper (92學年度).

(42) 醫學影像瀏覽系統. 2. Vertical + Horizontal. 2. Combined V &H 2. SobelV + SobelH. 2. Sobel 2. Robert1 + Robert 2. 2. Robert 二次微分: 表 三-8-1三種拉普拉式濾波器 − 1 − 1 − 1 − 1 + 8 − 1   − 1 − 1 − 1.  0 −1 0  − 1 + 4 − 1    0 − 1 0 .  + 1 − 2 + 1  − 2 + 4 − 2    + 1 − 2 + 1. Lap1. Lap2. Lap3. (二)功用 1.邊緣檢測: 邊緣檢測是目前為止用來檢測有意義的不連續特徵的最常見方 法,這是因為孤立的點和細線在大多數的實際應用中是較少出現的。 2.對比增強處理: 為了使模糊的影像變得更加清楚而採用對比增強,而影像模糊之主 要原因乃是對其做平均或積分運算,因此若做反運算就使其變清晰。. 39. 逢甲大學 e-Paper (92學年度).

(43) 醫學影像瀏覽系統. (三)證明 由於影像是二微信號,一次微分有二個分量,此一向量稱為梯度 (gradient),定義如下:  ∂f    G[ f ( x, y )] =  ∂∂fx     ∂y . 我們取此項量的振幅 M(Magnitude)來表示邊緣,取此向量的方 向 θ 來做進一步的分析如邊緣連接等,它們的定義為. M = (. ∂f 2 ∂f ) + ( )2 ∂x ∂y. θ = tan −1. ∂f ∂y ∂f ∂x. 40. 逢甲大學 e-Paper (92學年度).

(44) 醫學影像瀏覽系統. 增益. 二次微分 一次微分. 頻率. (a) ∂f ∂x x 方向微分. y 方向微分. ∂f ∂y. (. ∂f 2 ∂f ) + ( )2 ∂x ∂y. tan −1 (. ∂f ∂y ) ∂f ∂x. 比較器. 邊緣 影像圖. 方向參數輸出. (b). 圖 三-8-1影像微分(a).頻譜 (b).系統流程圖 對於數位影像,我們可以相鄰點的差近似(式三-8.1),且微分的方 向可取任意兩個正交的方向進行微分,而梯度振幅的運算可取絕對值 近似以減少運算,加快處理速度即. M =. ∂f ∂f + ∂x ∂y. 式 三-8-1. ∂f f ( x + ∆x, y ) − f ( x, y ) ∂x 可以 ∆x 近似,取 ∆x = 1 , ∂f ∂f 則 ∂x 可以 f ( x + 1, y ) − f ( x, y ) 近似,同理 ∂y 可以 f ( x, y + 1) − f ( x, y ) 近似. 之。 f ( x + 1, y ) − f ( x, y ) 和 f ( x, y + 1) − f ( x, y ) 可以遮罩運算表示如下:. 41. 逢甲大學 e-Paper (92學年度).

(45) 醫學影像瀏覽系統. − 1 + 1 f ( x + 1, y ) − f ( x, y ) = f ( x, y ) *   0 0  − 1 0 f ( x, y + 1) − f ( x, y ) = f ( x, y ) *    + 1 0 此種近似為最直接的近似方式,經由一次微分後,影像中斜率為常 數(一次變化)的區域其輸出微常數(大小和斜率成正比),影像中 斜率為零的區域其輸出為零,舉例如下,左邊為原影像,右邊為 x 方 向一次微分的結果,我們只計算方形圈住點的輸出 1 1 2 3 4 5. 1 2 3 4 5 5. 2 3 4 5 5 5. x x x x 1 1 x x x x x x x. 3 4 5 5 5 5. 4 5 5 5 5 5. 5 5 5 5 5 5. 5 5 5 5 5 5. x x x x x x x x x x 0 x. 利用式三-8.1 可計算出影像梯度振幅,舉例如下,左邊為一 9×9 影 像右邊為期梯度振幅輸出,注意方形的左上角有一缺口。 3 3 3 3 3 3 3 3 3. 3 3 3 3 3 3 3 3 3. 3 3 4 4 4 4 4 3 3. 3 3 4 6 6 6 4 3 3. 3 3 4 6 6 6 4 3 3. 3 3 4 6 6 6 4 3 3. 3 3 4 4 4 4 4 3 3. 3 3 3 3 3 3 3 3 3. 3 3 3 3 3 3 3 3 3 42. 逢甲大學 e-Paper (92學年度).

(46) 醫學影像瀏覽系統. 0 0 0 0 0 0 0 0 x. 0 0 1 1 1 1 1 0 x. 0 1 0 2 2 2 1 0 x. 0 1 2 0 0 2 1 0 x. 0 1 2 0 0 2 1 0 x. 0 1 2 2 2 4 1 0 x. 0 1 1 1 1 1 2 0 x. 0 0 0 0 0 0 0 0 x. x x x x x x x x x. 表 3-8.1 列出一些常用的微分運算器,w1 表某一方向的微分遮罩, w2 表和 w1 垂直的微分遮罩,以方塊圈住的係數表運算所對應的像素。 其中 Prewitt 和 Sobel 運算有降低雜訊的效果,它們其實是微分運算和 低通運算的結合,如 Sobel 的 w1 微分運算可表示成:. 1   − 1 0 1 − 2 0 2 = [− 1 0 1]* 2     1   − 1 0 1 . 43. 逢甲大學 e-Paper (92學年度).

(47) 醫學影像瀏覽系統. 表 三-8-2 一些常用的微分運算器. Robert. Prewitt. Sobel. [− 1. w1. w2. − 1 + 1   0 0    0 + 1   − 1 0 . 1 0    0 = 1   1 0    0 −1. − 1 − 1  − 1  −1 − 2   − 1. 0 1 0 1 0 1 0 1 0 2 0 1. − 1 − 1 − 1 0 0 0    1 1 1  − 1 − 2 − 1 0 0 0    1 2 1 . 0 1] 為水平微分, [− 1 2 1] 為低通濾波。 T. 一種取梯度的近似方法為取各種方向的微分運算中的最大值為其 梯度,下面為以反時鐘方向一次旋轉 45°所得到的微分罩遮,此種方法 可顧慮到每個方向的梯度,如前例左上角的缺口將產生。. 1 1 0 w1 =  0 − 1 − 1 0 − 1 w4 = 1 0 1 1 − 1 0 w7 = − 1 0 − 1 0. 1 1 0  w2 = 1 0 − 1 − 1 − 1 − 1 w5 =  0  1 0  1 0 1 w8 = − 1 − 1 1. 1 0 −1 −1 0 1 1 0. 44. −1. 0 1 − 1 w3 = 1 1 − 1 − 1 − 1 0  w6 = − 1  1 1  1 1 0. 0 − 1 0 − 1 0 − 1 − 1 0 0 1 1 1. 逢甲大學 e-Paper (92學年度).

(48) 醫學影像瀏覽系統. 取梯度輸出 g ( x, y ) = max{ g k g ( x, y ) } k =1,8. g k ( x , y ) = f ( x , y ) * wk. k =, 1 2.... ,8. 注意:由於罩遮並未經過適當的調整,運算的值也許會超出(0,255)的 範圍,一般如取罩遮係數絕對值的和當作除數,可保證運算的結果不 會溢位。大家可以前面 9×9 影像比較不同梯度運算的效果。 一次微分對於邊緣過渡帯較窄的影像效果比較好,如果邊緣變化較 緩,可以利用二次微分幫忙偵測邊緣。圖三-8-2 說明一次微分和二次 微分的差異,利用二次微分我們可以偵測出此邊緣的外側和內側或中 心。. f (x) 比較器. df ( x) dx 邊緣內側. d 2 f ( x) dx 2. 比較器. 比較器 邊緣外側 零穿越點. 圖 三-8-2 信號一次微分和二次微分的結果 影像二次微分常用的運算式微拉普拉氏(Laplacian)運算,定義如 下: ∂2 f ∂2 f ∇ f = 2 + 2 ∂x ∂y 2. 45. 逢甲大學 e-Paper (92學年度).

(49) 醫學影像瀏覽系統. ∂2 f ∂2 f , 2) 2 ∂ x ∂y 和 (1,1) 內積的結果,下面為一些常用的拉普拉氏 它為向量 (. 運算  0 − 1 0  − 1 − 1 − 1  1 − 2 1  − 1 4 − 1 − 1 8 − 1 − 2 4 − 2        0 − 1 0  − 1 − 1 − 1  1 − 2 1 . 經由拉普拉氏運算,影像中斜率為常數(一次變化)的區域其輸出 為零,舉例如下,左邊為 45°遞增的影像,右邊為拉普拉氏運算的結果, 我們只計算由方形圈住的兩點輸出。. 1 1 2 3 4 5 ... x x x 1 2 3 4 5 x 0 x 2 3 4 5 6 x x 0. x x x. 3 4 5 6 4 5 6 5. x. x x x. 46. x. x. x. 逢甲大學 e-Paper (92學年度).

(50) 醫學影像瀏覽系統. 三-9 臨限法 (1)介紹 影像區分: 區分乃是將構成影像的元件從背景中區分出來,如線上生產之零 件。其原理在於不同物件其本身之特性各異,如書本中之文字是黑色, 而背景是白色。物體和背景之不連續性,如在輸送帶上之零件,由皮 帶區域進入零件區域,在邊緣必有明顯之灰度變化。利用物體本身特 性將物體和背景分離較簡單,但易受陰影之影響,且物體之點數較多, 而利用物體及背景之不相關性要將物體分離,須先將邊緣強化再把邊 緣分離出,易受雜訊干擾,且代表物體邊緣點數較少。 臨限法: 其方法乃是將處理後的影像如雜訊濾除,邊緣強化等,之後再和某 一灰度直或某灰度範圍值比較,然後將影像中之物體及背景區分出 來,如圖三-9-1 為影像 f ( x, y ) 之表示圖,定義臨限值為 T,若 f ( x, y ) > T 的像素表物體, f ( x, y ) < T 的像素表背景。圖三-9-2 為影像 f (x, y ) 另外之 表示圖,其中 T1,T2 為臨現值, T1 ≤ f ( x, y ) ≤ T2 之像點為物體,其它為 背景。臨限法之關鍵在找出 T 值,使得區分誤差愈小愈佳。 n. f 圖 三-9-1 雙峰長條圖. 47. 逢甲大學 e-Paper (92學年度).

(51) 醫學影像瀏覽系統. n. f T2. T1. 圖 三-9-2 多峰長條圖 影像之長條圖如圖三-9-3 所示。其中 f1 表文字,f2 表背景,但是紙 張平面凹凸不一致,反射係數也不相同,並以高斯隨機分布,其實際 影像長條圖如圖三-9-4 所示,離 f1 及 f2 之灰點值其點數愈少〈機率愈 小〉,故無論選擇哪個臨限值 T,均會造成區分之誤差,及背景和文 字兩者互相混淆,若加上不均勻之入射光線,則文字和背景無法清楚 被分辨出。如圖 3-9.5 所示,以上的三圖可以影像的成像來表示,若 r ( x, y ) 為反射函數, i ( x, y ) 為照射函數,則影像 f ( x, y ) 可寫成 f ( x , y ) = i ( x, y ) ∗ r ( x , y ). 式 三-9-1. Pf. T1. T2. f. 圖 三-9-3. 48. 逢甲大學 e-Paper (92學年度).

(52) 醫學影像瀏覽系統. Pf. f f1. T f2 圖 三-9-4. Pf. f f1. f2 圖 三-9-5. 從式三-9-1 知,若 i ( x, y ) = 0 或 v( x, y ) = 0 〈無反射〉,則 f ( x, y ) = 0 。 將式三 3-9-1 取對數 f ′( x, y )∆ log f ( x, y ) = log i ( x, y ) + log r ( x, y ) = i ′( x, y ) ∗ r ′( x, y ). 假設 i 和 r 之分佈為不相關之兩機率函數,取對數只會對灰度有影 響,其分佈比例不會改變,在沒有陰影(平均照明)下, i ′( x, y ) 之機率 函數 pi ′ 為一個脈衝, i ′( x, y ) 之機率函數 pi ′ 為高斯分佈,則 ′ ′ ′ f ′( x, y ) 之機率函數 p f 為 pi 和 p r 之迴旋運算,其分佈如圖 3-8.6 所. 示。若照度不均勻,則運算結果如圖三-9-7 所示。 49. 逢甲大學 e-Paper (92學年度).

(53) 醫學影像瀏覽系統. (a). (b). (c). 圖 三-9-6 照度均勻影像之長條圖. (a). (b). (c). 圖 三-9-7 照度不均勻影像之長條圖 圖三-9-8 為理想照度之影像區分結果,從圖中可找到臨限值 T,以 影像中之物體和背景分離,區分後之影像 g ( x, y ) 可以下式求得 F(x) 物體 物體. x 圖 三-9-8 理想照度區分 50. 逢甲大學 e-Paper (92學年度).

(54) 醫學影像瀏覽系統. f ( x, y ) > T f ( x, y ) ≤ T. 1 if g ( x, y ) =  0 if. 若照度不均,則無法找到 T 值以區分物體和背景,如圖三-9-9 所 示,無論所選之值為何,均會造成很大的誤差。圖中之影像照度由左 向右漸增,欲克服此一缺點有三種方法:1.局部比較法 2.邊緣強化 3. 照明補償。一般是輸入影像 i( x, y ) ,它為照明函數,而後輸入之影像和 i ( x, y ) 相除,將照明影響消除。. f ′( x, y ) =. f ( x, y ) i ( x, y ). 式中, f ′( x, y ) 為照明補償後的影像,在低照度 i( x, y ) 小之情況下, f ′( x, y ) 被放大,在高照度區域, f ′( x, y ) 被縮小。若照明函數無法預先. 取得,可用局部比較法,臨限值 T 為 ( x, y ) 之函數。 f(x). 高度照明. 第. 影像平均值. 低度照明. 原影像. x. 圖 三-9-9 照度不均影像區分 以 T ( x, y ) =. 1 N. ∑ f ( x, y ) W. 它是以局部平均值為局部臨限值,可用下式將影像區分。. 51. 逢甲大學 e-Paper (92學年度).

(55) 醫學影像瀏覽系統. 1 if g ( x, y ) =  0 if. f ( x, y ) − T ( x , y ) > 0 f ( x, y ) − T ( x, y ) ≤ 0. 如圖三-9-9 所示,虛線部份為實線之局部平均值,兩者比較,可 將物體和背景分離。而圖三-9-10 為圖三-9-9 之實線一次微分結果,從 圖中展現出,照度之變化率比物體和背景之間的變化要小,取適當的 臨限值,可將影像中物體之邊緣分離出來。. 第二. 0 -T. 圖 三-9-10 利用微分將物體分離 (2)功用 將影像中之物體及背景區分出來. 52. 逢甲大學 e-Paper (92學年度).

(56) 醫學影像瀏覽系統. 第四章. 影像中的雜訊. 常見的影像處理雜訊可分為: 1. 加性雜訊 加性雜訊不受影像訊號強弱影響,它出現在傳遞過程中引進 的 ”通道雜訊” ,電視攝影的掃描雜訊等。此雜訊 g 可視為理想無 雜訊 f 和雜訊 n 的和,即 g = f + n 。 2. 乘性雜訊 乘性雜訊和影像訊號相關,它隨影像訊號而改變,如電視掃描 光柵,軟片顆粒雜訊。 3. 量化雜訊: 量化雜訊之大小為原始影像和數會影像的差異,減少此雜訊方 法是依灰度級機率密度函數選取最佳量化。 4. 鹽和胡椒雜訊: 即黑影像的白點,白影像的黑點。另外在轉換和反轉換之間由 於誤差而引起的雜訊。. 53. 逢甲大學 e-Paper (92學年度).

(57) 醫學影像瀏覽系統. 第五章. 影像處理程式碼. /*變數*/ pixels = new int [ imgw * imgh ]; sourcePixels = new int [ imgh ][ imgw ]; PixelGrabber pg = new PixelGrabber ( handling_img, 0, 0, imgw, imgh, pixels, 0, imgw); try { pg.grabPixels(); } catch ( InterruptedException ie ){ } int bigm = 128, lo, lomiss, q, q1, q2, lo1, lo2; int mu = 0, twomu = 0, mu1 = 0, twomu1 = 0, mu2 = 0, twomu2 = 0; int finalpoint = 0, changearray = 0, finalpoint1 = 0, changearray1 = 0, finalpoint2 = 0, changearray2 = 0;. /* 基本上是使用以上的程式碼為主,來讀取 3*3 的 9 個點,以利用空 間域的方法來處理之後的影像。 */ for ( i = 0, index = 0; i < imgh; i++ ) { for( j = 0; j < imgw; j++ ) { sourcePixels[i][j] = pixels[index++]; } } for ( index = 0; index < imgw; index++ ) { sourcePixels[0][index] = bgColor; } for ( h = 0, index = 0; h < imgh; h++ ) { for ( w = 0; w < imgw; w++ ) { if ( h == 0 || w == 0 ) { pixels[index++] = sourcePixels[h][w]; } 54. 逢甲大學 e-Paper (92學年度).

(58) 醫學影像瀏覽系統. else if ( h == ( imgh – 1 ) || w == ( imgw – 1 ) ) { pixels[index++] = sourcePixels[h][w]; } else { //up c1 = sourcePixels[h-1][w]; r1 = (c1&0xff0000) >> 16; g1 = (c1&0xff00) >> 8; b1 = c1&0xff; grayu = ( r1*3 + g1*4 + b1*2 )/9; //down c2 = sourcePixels[h+1][w]; r2 = (c2&0xff0000) >> 16; g2 = (c2&0xff00) >> 8; b2 = c2&0xff; grayd = ( r2*3 + g2*4 + b2*2 )/9; //left c3 = sourcePixels[h][w-1]; r3 = (c3&0xff0000) >> 16; g3 = (c3&0xff00) >> 8; b3 = c3&0xff; grayl = ( r3*3 + g3*4 + b3*2 )/9; //right c4 = sourcePixels[h][w+1]; r4 = (c4&0xff0000) >> 16; g4 = (c4&0xff00) >> 8; b4 = c4&0xff; grayr = ( r4*3 + g4*4 + b4*2 )/9; //left down c5 = sourcePixels[h+1][w-1]; r5 = (c5&0xff0000) >> 16; g5 = (c5&0xff00) >> 8; b5 = c5&0xff; grayld = ( r5*3 + g5*4 + b5*2 )/9; //right down c6 = sourcePixels[h+1][w+1]; r6 = (c6&0xff0000) >> 16; 55. 逢甲大學 e-Paper (92學年度).

(59) 醫學影像瀏覽系統. g6 = (c6&0xff00) >> 8; b6 = c6&0xff; grayrd = ( r6*3 + g6*4 + b6*2 )/9; //left up c7 = sourcePixels[h-1][w-1]; r7 = (c7&0xff0000) >> 16; g7 = (c7&0xff00) >> 8; b7 = c7&0xff; graylu = ( r7*3 + g7*4 + b7*2 )/9; //right up c8 = sourcePixels[h-1][w+1]; r8 = (c8&0xff0000) >> 16; g8 = (c8&0xff00) >> 8; b8 = c8&0xff; grayru = ( r8*3 + g8*4 + b8*2 )/9; //read itself c = sourcePixels[h][w]; r = (c&0xff0000) >> 16; g = (c&0xff00) >> 8; b = c&0xff; gray = ( r*3 + g*4 + b*2 )/9; } } }. /* 自動化去黑雜訊、自動化去白雜訊,乃依 smoothing filter 來參考做 成。因為若完全使用 smoothing filter 會變成影像全面模糊化,因此 才使用此方法來模糊白點或黑點雜訊。 */ // 自動化去黑雜訊 if ( gray < 15 ) // adjust { r = ( r1 + r2 + r3 + r4 + r5 + r6 + r7 + r8 )/8; g = ( g1 + g2 + g3 + g4 + g5 + g6 + g7 + g8 )/8; b = ( b1 + b2 + b3 + b4 + b5 + b6 + b7 + b8 )/8; pixels[index++] = (c&0xff000000) + (r<<16) + (g<<8) + b; } 56. 逢甲大學 e-Paper (92學年度).

(60) 醫學影像瀏覽系統. else { pixels[index++] = (c&0xff000000) + (r<<16) + (g<<8) + b; }. // 自動化去白雜訊 if ( gray > 235 ) // adjust { r = ( r1 + r2 + r3 + r4 + r5 + r6 + r7 + r8 )/8; g = ( g1 + g2 + g3 + g4 +g5 + g6 + g7 + g8 )/8; b = ( b1 + b2 + b3 + b4 + b5 + b6 + b7 + b8 )/8; pixels[index++] = (c&0xff000000) + (r<<16) + (g<<8) + b; } else { pixels[index++] = (c&0xff000000) + (r<<16) + (g<<8) + b; }. /* Local mean variance enhancement 的一種應用用來減去雜訊強度。其 作法為 g ( x , y ) = f ( x , y ) + y ( x ,y ) ∴ f ( x , y ) = g ( x , y )- y ( x , y) */ // 去黑白式雜訊 mu = ( r + r1 + r2 + r3 + r4 + r5 + r6 + r7 + r8 )/9; twomu = ( r*r + r1*r1 + r2*r2 + r3*r3 + r4*r4 + r5*r5 + r6*r6 + r7*r7 + r8*r8 )/9; mu1 = ( g + g1 + g2 + g3 + g4 + g5 + g6 + g7 + g8 )/9; twomu1 = ( g*g + g1*g1 + g2*g2 + g3*g3 + g4*g4 + g5*g5 + g6*g6 + g7*g7 + g8*g8 )/9; mu2 = ( b + b1 + b2 + b3 + b4 + b5 + b6 + b7 + b8 )/9; twomu2 = ( b*b + b1*b1 + b2*b2 + b3*b3 + b4*b4 + b5*b5 + b6*b6 + b7*b7 + b8*b8)/9; lo = (int) Math.sqrt ( twomu - mu*mu); lo1 = (int) Math.sqrt ( twomu1 - mu1*mu1); lo2 = (int) Math.sqrt ( twomu2 - mu2*mu2); lomiss = (int) Math.sqrt( bigm ); if ( lo == 0 ) { finalpoint = r; } 57. 逢甲大學 e-Paper (92學年度).

(61) 醫學影像瀏覽系統. else { changearray = (mu / lo)/2; } if ( lo1 == 0 ) { finalpoint1 = g; } else { changearray1 = ( mu1 / lo1 ) / 2; } if ( lo2 == 0 ) { finalpoint2 = b; } else { changearray2 = ( mu2 / lo2 ) / 2; } finalpoint = ( ( ( changearray ) * ( r – mu ) ) + mu ) * (1-1/lomiss); finalpoint1 = (((changearray1)*(g-mu1))+mu1)*(1-1/lomiss); finalpoint2 = (((changearray2)*(b-mu2))+mu2)*(1-1/lomiss); if ( finalpoint < 0 ) { finalpoint = 0 - finalpoint; } if ( finalpoint1 < 0 ) { finalpoint1 = 0 - finalpoint1; } if (finalpoint2 < 0 ) { finalpoint2 = 0 - finalpoint2; } pixels[index++] = (c&0xff000000) + (finalpoint << 16) + (finalpoint1<<8) +finalpoint2;. /* 58. 逢甲大學 e-Paper (92學年度).

(62) 醫學影像瀏覽系統. ( 2x – x 2 ) and x =. r 所以 0 ≤ x ≤ 1 將 (2 − 2 x ) 做積分可得 255. */ // 直方圖分布 for ( index = 0; index < imgw*imgh; index++ ) { c = pixels[index]; r = (c&0xff0000) >> 16; g = (c&0xff00) >> 8; b = c&0xff; finalpoint = (2-r/255)*r; finalpoint1 = (2-g/255)*g; finalpoint2 = (2-b/255)*b; pixels[index] = (c&0xff000000)+(finalpoint<<16)+(finalpoint1<<8)+finalpoint2; }. /* 1 ∑ f ( x − i, y − 1) = mu N w ( x , y )∈w 1 [ f ( x, y) − m( x, y)]2 twomu = ∑ N w ( i , j )∈w m( x, y ) =. lo = twomu A( x, y ) = changearray g ( x, y ) = A( x, y )[ f ( x, y ) − m( x, y )] + m( x, y ). */ //Local mean variance enhancement mu = (r+r1+r2+r3+r4+r5+r6+r7+r8)/9; twomu = (r*r+r1*r1+r2*r2+r3*r3+r4*r4+r5*r5+r6*r6+r7*r7+r8*r8)/9; mu1 = (g+g1+g2+g3+g4+g5+g6+g7+g8)/9; twomu1 = (g*g+g1*g1+g2*g2+g3*g3+g4*g4+g5*g5+g6*g6+g7*g7+g8*g8)/9; mu2 = (b+b1+b2+b3+b4+b5+b6+b7+b8)/9; twomu2 = (b*b+b1*b1+b2*b2+b3*b3+b4*b4+b5*b5+b6*b6+b7*b7+b8*b8)/9; lo = (int) Math.sqrt(twomu-mu*mu); lo1 = (int) Math.sqrt(twomu1-mu1*mu1); lo2 = (int) Math.sqrt(twomu2-mu2*mu2); lomiss = (int) Math.sqrt(bigm); changearray = (mu/lo)/2; changearray1 = (mu1/lo1)/2;. 59. 逢甲大學 e-Paper (92學年度).

(63) 醫學影像瀏覽系統. changearray2 = (mu2/lo2)/2; if ( lo == 0 ) { finalpoint = r; } if ( lo1 == 0 ) { finalpoint1 = g; } if ( lo2 == 0 ) { finalpoint2 = b; } finalpoint = (((changearray)*(r-mu))+mu); finalpoint1 = (((changearray1)*(g-mu1))+mu1); finalpoint2 = (((changearray2)*(b-mu2))+mu2); if ( finalpoint < 0 ) { finalpoint = 0 - finalpoint; } if ( finalpoint1 < 0 ) { finalpoint1 = 0 - finalpoint1; } if ( finalpoint2 < 0 ) { finalpoint2 = 0 - finalpoint2; } pixels[index++] = (c&0xff000000) + (finalpoint<<16)+(finalpoint1<<8)+finalpoint2;. /* 和 Local mean variance enhancement 之差別在於減去最小值 */ // Local mean variance enhancement by median q = Math.max(Math.max(Math.max(r1,r2), Math.max(r3,r4)),Math.max(Math.max(r5,r6), Math.max(r7,r8))); q1 = Math.max(Math.max(Math.max(g1,g2), 60. 逢甲大學 e-Paper (92學年度).

(64) 醫學影像瀏覽系統. Math.max(g3,g4)),Math.max(Math.max(g5,g6), Math.max(g7,g8))); q2 = Math.max(Math.max(Math.max(b1,b2), Math.max(b3,b4)),Math.max(Math.max(b5,b6), Math.max(b7,b8))); Mu = (r+r1+r2+r3+r4+r5+r6+r7+r8-q)/8; twomu = (r*r+r1*r1+r2*r2+r3*r3+r4*r4+r5*r5+r6*r6+r7*r7+r8*r8-q*q)/8; mu1 = (g+g1+g2+g3+g4+g5+g6+g7+g8-q1)/8; twomu1 = (g*g+g1*g1+g2*g2+g3*g3+g4*g4+g5*g5+g6*g6+g7*g7+g8*g8-q1*q1)/8; mu2 = (b+b1+b2+b3+b4+b5+b6+b7+b8-q2)/8; twomu2 = (b*b+b1*b1+b2*b2+b3*b3+b4*b4+b5*b5+b6*b6+b7*b7+b8*b8-q2*q2)/8; lo = (int) Math.sqrt(twomu-mu*mu); lo1 = (int) Math.sqrt(twomu1-mu1*mu1); lo2 = (int) Math.sqrt(twomu2-mu2*mu2); lomiss= (int) Math.sqrt(bigm); changearray = (mu/lo)/2;changearray1=(mu1/lo1)/2;changearray2=(mu2/lo2)/2; if ( lo == 0 ) { finalpoint = r; } if ( lo1 == 0 ) { finalpoint1 = g; } if ( lo2 == 0 ) { finalpoint2 = b; } finalpoint = (((changearray)*(r-mu))+mu); finalpoint1 = (((changearray1)*(g-mu1))+mu1); finalpoint2 = (((changearray2)*(b-mu2))+mu2); if ( finalpoint < 0 ) { finalpoint = 0 - finalpoint; } if ( inalpoint1 < 0 ) { 61. 逢甲大學 e-Paper (92學年度).

(65) 醫學影像瀏覽系統. finalpoint1 = 0 - finalpoint1; } if ( finalpoint2 < 0) { finalpoint2 = 0 - finalpoint2; } pixels[index++] = (c&0xff000000) + (finalpoint<<16) + (finalpoint1<<8)+finalpoint2;. /* 在 3×3 九點中,取其最中間值。 */ // median filter for ( i = 0; i < 9 ; i++ ) { for ( j = i ; j < 9 ; j++ ) { if ( data[i] > data[j] ). // 當 data[i] > data[j]時交換. { temp = data[j]; data[j] = data[i]; data[i] = temp; } } } finalpoint = data[4]; for ( i = 0 ; i < 9 ; i++ ) { for ( j = i ; j < 9 ; j++ ) { if. // 當 data[i] > data[j]時交換. (data1[i] > data1[j]). { temp = data1[j]; data1[j] = data1[i]; data1[i] = temp; } } } finalpoint1 = data1[4];. 62. 逢甲大學 e-Paper (92學年度).

(66) 醫學影像瀏覽系統. for ( i = 0 ; i < 9 ; i++ ) { for ( j = I ; j < 9 ; j++) { if. // 當 data[i] > data[j]時交換. (data2[i] > data2[j]). { temp = data2[j]; data2[j] = data2[i]; data2[i] = temp; } } } finalpoint2 = data2[4]; pixels[index++] = (c&0xff000000)+((finalpoint)<<16)+((finalpoint1)<<8)+finalpoint2;. /* 將 3×3 中 9 點相加除以 9 */ // smoothing filter finalpoint = (r+r1+r2+r3+r4+r5+r6+r7+r8)/9; finalpoint1 = (g+g1+g2+g3+g4+g5+g6+g7+g8)/9; finalpoint2 = (b+b1+b2+b3+b4+b5+b6+b7+b8)/9; pixels[index++] = (c&0xff000000)+((finalpoint)<<16)+((finalpoint1)<<8)+finalpoint2;. /* − 1 − 1 − 1 0 0 0 − 1 8 − 1 + 0 − 1 0 乃採用 high filter 再加上其本點值,如此會     − 1 − 1 − 1 0 0 0. 加強邊緣化。 */ // high filter much = (int)(9*r); finalpoint = Math.min(((int)Math.abs(much-r1-r2-r3-r4-r5-r6-r7-r8)), 255); much = (int)(9*g); finalpoint1 = Math.min(((int)Math.abs(much-g1-g2-g3-g4-g5-g6-g7-g8)), 255); much = (int)(9*b); finalpoint2 = Math.min(((int)Math.abs(much-b1-b2-b3-b4-b5-b6-b7-b8)), 255); pixels[index++] = 63. 逢甲大學 e-Paper (92學年度).

(67) 醫學影像瀏覽系統. (c&0xff000000)+((finalpoint)<<16) + ((finalpoint1)<<8) + finalpoint2;. /*  1 −2 1  This mask is − 2 4 − 2  1 − 2 1 . */ // 拉氏運算子 1 { finalpoint = r*4+r5+r7+r6+r8-2*r3-2*r2-2*r1-2*r4; if ( 0 < finalpoint && finalpoint < 255 ){} else { finalpoint = r; } finalpoint1 = g*4+g5+g7+g6+g8-2*g3-2*g2-2*g1-2*g4; if ( 0 < finalpoint1 && finalpoint1 < 255 ){} else { finalpoint1 = g; } finalpoint2 = b*4+b5+b7+b6+b8-2*b3-2*b2-2*b1-2*b4; if ( 0 < finalpoint2 && finalpoint2 < 255){} else { finalpoint2 = b; } }. /*  0 −1 0  This mask is − 1 4 − 1  0 − 1 0 . */ // 拉氏運算子 2 { finalpoint = (int)abs(r*4-r1-r2-r3-r4); if(0<finalpoint&&finalpoint<255){}else{finalpoint=r;} finalpoint1=(int)Math.abs(g*4-g1-g2-g3-g4); if(0<finalpoint1&&finalpoint1<255){}else{finalpoint1=g;} finalpoint2=(int)Math.abs(b*4-b1-b2-b3-b4); if(0<finalpoint2&&finalpoint2<255){}else{finalpoint2=b;} }. /*   − 1 0 + 1  − 1 − 2 − 1    This mask is  − 2 0 + 2 +  0 0 0     − 1 0 + 1 + 1 + 2 + 1      64. 逢甲大學 e-Paper (92學年度).

(68) 醫學影像瀏覽系統. */ // sobel { finalpoint=(int)Math.sqrt((r5+2*r2+r6-r7-2*r1-r8)*(r5+2*r2+r6-r7-2*r1-r8) + (r7+2*r3+r5-r8-2*r4-r6)*(r7+2*r3+r5-r8-2*r4-r6) ); if(0<finalpoint&&finalpoint<255){}else{finalpoint=r;} finalpoint1=(int)Math.sqrt( (g5+2*g2+g6-g7-2*g1-g8)*(g5+2*g2+g6-g7-2*g1-g8) + (g7+2*g3+g5-g8-2*g4-g6)*(g7+2*g3+g5-g8-2*g4-g6) ); if(0<finalpoint1&&finalpoint1<255){}else{finalpoint1=g;} finalpoint2=(int)Math.sqrt(b5+2*b2+b6-b7-2*b1-b8)*(b5+2*b2+b6-b7-2*b1-b8) + (b7+2*b3+b5-b8-2*b4-b6)*(b7+2*b3+b5-b8-2*b4-b6) ); if(0<finalpoint2&&finalpoint2<255){}else{finalpoint2=b;} }. /* − 1 − 1 − 1 − 1 0 1 This mask is  0 0 0  + − 1 0 1  1 1 1  − 1 0 1. */ // Prewitt { finalpoint=(int)Math.sqrt((r5+r2+r6-r7-r8-r1)*(r5+r2+r6-r7-r8-r1) + (r5+r3+r7-r8-r4-r6)*(r5+r3+r7-r8-r4-r6) ); if(0<finalpoint&&finalpoint<255){} else{finalpoint=r;} finalpoint1=(int)Math.sqrt((g5+g2+g6-g7-g8-g1)*(g5+g2+g6-g7-g8-g1) + (g5+g3+g7-g8-g4-g6)*(g5+g3+g7-g8-g4-g6) ); if(0<finalpoint1&&finalpoint1<255){} else{finalpoint1=g;} finalpoint2=(int)Math.sqrt( (b5+b2+b6-b7-b8-b1)*(b5+b2+b6-b7-b8-b1) + (b5+b3+b7-b8-b4-b6)*(b5+b3+b7-b8-b4-b6) ); if(0<finalpoint2&&finalpoint2<255){} else{finalpoint2=b;} }. /*. 65. 逢甲大學 e-Paper (92學年度).

(69) 醫學影像瀏覽系統. This mask is.  0 0 0  2 0 0 0  2     0 1 0  + 1 0 − 1        0 0 − 1 0 0 0    . */ // Roberts { finalpoint=(int)Math.sqrt((r-r6)*(r-r6)+(r4-r2)*(r4-r2)); if(0<finalpoint&&finalpoint<255){} else{finalpoint=r;} finalpoint1=(int)Math.sqrt((g-g6)*(g-g6)+(g4-g2)*(g4-g2)); if(0<finalpoint1&&finalpoint1<255){} else{finalpoint1=g;} finalpoint2=(int)Math.sqrt((b-b6)*(b-b6)+(b4-b2)*(b4-b2)); if(0<finalpoint2&&finalpoint2<255){} else{finalpoint2=b;} }. /* 2. This mask is.  0 0 0 0 0 0  − 1 1 0 + 0 1 − 1      0 0 0 0 0 0 . 2. */ // Roberts2 { finalpoint=(int)Math.sqrt((r-r2)*(r-r2)+(r-r4)*(r-r4)); if(0<finalpoint&&finalpoint<255){}else{finalpoint=r;} finalpoint1=(int)Math.sqrt((g-g2)*(g-g2)+(g-g4)*(g-g4)); if(0<finalpoint1&&finalpoint1<255){}else{finalpoint1=g;} finalpoint2=(int)Math.sqrt((b-b2)*(b-b2)+(b-b4)*(b-b4)); if(0<finalpoint2&&finalpoint2<255){}else{finalpoint2=b;} }. // 臨限法 finalpoint = r-((r+r1+r2+r3+r4+r5+r6+r7+r8)/9); finalpoint1 = g-((g+g1+g2+g3+g4+g5+g6+g7+g8)/9); finalpoint2 = b-((b+b1+b2+b3+b4+b5+b6+b7+b8)/9); if ( finalpoint > 0 ) { 66. 逢甲大學 e-Paper (92學年度).

(70) 醫學影像瀏覽系統. finalpoint = 0; } if ( finalpoint1 > 0 ) { finalpoint1=0; } if ( finalpoint2 > 0 ) { finalpoint2 = 0; } if ( finalpoint <= 0 ) { finalpoint = 255; } if ( finalpoint1 <= 0 ) { finalpoint1 = 255; } if ( finalpoint2 <= 0 ) { finalpoint2 = 255; } pixels[index++] = (c&0xff000000) + ((finalpoint)<<16) + ((finalpoint1)<<8) + finalpoint2;. /*變數*/ pixels = new int[imgw * imgh]; PixelGrabber pg = new PixelGrabber(handling_img, 0, 0, imgw, imgh, pixels, 0, imgw); try { pg.grabPixels(); } catch (InterruptedException ie){ } int g11 = 0, g21 = 0, g31 = 0, g41 = 0, g51 = 0, g61 = 0, g71 = 0, g81 = 0, g91 = 0, ga1=0, gb1 = 0, gc1 = 0, gd1 = 0, ge1 = 0, gf1 = 0; int gra =0, gra1 = 0, gra2 = 0, abc,abcd,value = 5, gray1,maxmax=0; // adjust value. /* 計算其點數 counter */ for ( index = 0 ; index < imgw*imgh ; index++ ). 67. 逢甲大學 e-Paper (92學年度).

(71) 醫學影像瀏覽系統. { c = pixels[index]; r = (c&0xff0000) >> 16; g = (c&0xff00) >> 8; b = c&0xff; gray1 = (r*3+g*4+b*2)/9; if ( 0 <= gray1 && gray1 < 17 ) { g11++; } else if ( 17 <= gray1 && gray1 <34) { g21++; } else if ( 34 <= gray1 && gray1 < 51) { g31++; } else if ( 51 <= gray1 && gray1 < 68) { g41++; } else if ( 68 <= gray1 && gray1 < 85 ) { g51++; } else if ( 85 <= gray1 && gray1 < 102) { g61++; } else if ( 102 <= gray1 && gray1 < 119) { g71++; } else if ( 119<=gray1 && gray1 < 136) { g81++; } else if ( 136 <= gray1 && gray1 < 153) 68. 逢甲大學 e-Paper (92學年度).

(72) 醫學影像瀏覽系統. { g91++; } else if ( 153 <= gray1 && gray1 < 170) { ga1++; } else if ( 170 <= gray1 && gray1 < 187) { gb1++; } else if ( 187 <= gray1 && gray1 < 204) { gc1++; } else if ( 204 <= gray1 && gray1 < 221) { gd1++; } else if ( 221 <= gray1 && gray1 < 238) { ge1++; } else { gf1++; } } for ( index = 0 ; index < imgw*imgh ; index++ ) { c = pixels[index]; r = (c&0xff0000)>>16; g = (c&0xff00)>>8; b = c&0xff; gray1 = (r*3+g*4+b*2)/9; if(gray1>maxmax){maxmax=gray1;}else{} if ( 0 <= gray1 && gray1<17) { gray = g11; 69. 逢甲大學 e-Paper (92學年度).

(73) 醫學影像瀏覽系統. } else if ( 17 <= gray1 && gray1 < 34) { gray = g21; } else if ( 34 <= gray1 && gray1 < 51) { gray = g31; } else if ( 51 <= gray1 && gray1 < 68) { gray = g41; } else if ( 68 <= gray1 && gray1 < 85) { gray = g51; } else if ( 85 <= gray1 && gray1 < 102 ) { gray = g61; } else if ( 102 <= gray1 && gray1 < 119) { gray = g71; } else if ( 119 <= gray1 && gray1 < 136) { gray = g81; } else if ( 136 <= gray1 && gray1 < 153) { gray = g91; } else if ( 153 <= gray1 && gray1 < 170) { gray = ga1; } else if ( 170 <= gray1 && gray1 < 187) { 70. 逢甲大學 e-Paper (92學年度).

數據

圖  二-3-5 DF0
表  三-7-2  直方圖均勻化之過程  原灰度 級  變換函數 T 值  )(rk 像點數  量化級 新灰度級  新灰度級分佈  0 = 0r T ( r 0 ) = s 0 = 0
表  三-8-2  一些常用的微分運算器  w 1 w 2  −+0011 =1001 Robert   −+0110 −1001 Prewitt   −−−101101101 −−−111000111 Sobel   −−−101202101 −−−121000121 [ − 1 0 1 ] 為水平微分,  [ − 1 2 1 ] T 為低通濾波。  一種取梯度的近似方法為取各種

參考文獻

相關文件

(三) 「愛,就是在別人的需要上,看到自己的責任」

定遠 鎮遠 來遠 經遠 超勇 楊威 由於北洋艦隊各艦的主要火. 力多在前端,因此最佳陣式

閱讀前 先瀏覽課文《太陽》,在不明白的地 方做標記,然後查字典、詞典,或上 網搜尋資料,完成自學筆記。.

近期全球各地皆藉由停止上班上課以遏制新冠肺炎疫情的傳播,正是需要遠端視訊或會 議軟體的時刻,然而視訊會議工具 Zoom

近期全球各地皆藉由停止上班上課以遏制新冠肺炎疫情的傳播,正是需要遠端視訊或會 議軟體的時刻,然而視訊會議工具 Zoom

‡ RFID 運作原理是透過一片小型硬體的無線射頻辨識技 術晶片( RFID chips),利用內含的天線來傳送與接

由於自簽的電子證書並非由知名憑證授權單位簽署,因此當使用者進入網 站時會被瀏覽器標注為不安全(例如使用 Google Chrome

同學們,人與人之間相處必須學會尊重他人,當要表達自己的需求或感受