鄧邦肯,朱鋒煒,王茗祎,羅佳雄,翁嘉瞬,羅曦,張夢嬌,吳淋昌,柳錦銘,曾亞光,韓定安
(佛山科學技術學院 物理與光電工程學院,廣東 佛山 528225)
《光電信息與技術實驗》是光電信息科學與科學專業本科生所必修的實驗課程,課程主要涵蓋光學和電子兩學科內容,具有實踐性強、專業性強、難度較大的特點。但是該實驗課程綜合性欠缺、經濟性與創新性明顯不足,學科壁壘嚴重,窄化了工程人才的知識體系。為此,在該專業實驗中加入多學科融合,綜合性強,與產業聯系緊密,難度相對低的實驗十分必要[1]。這一課程改革符合新工科建設與發展的基本思路,打破了學科壁壘,可以為培養基礎扎實、工程能力強、綜合素質高的工程人才所服務[2]。光學血流造影實驗是基于科研成果開發的一個綜合性實驗[3-5],實驗涉及了光學、生物、電子、機械、計算機、數學等多學科內容。所涉及的技術可用于生物醫學等研究領域,應用性強。為降低實驗難度,提高實驗的可操作性,論文開發了基于Matlab GUI的光學血流圖像處理實驗平臺,學生可以通過該平臺完成實驗結果演示與數據處理。此外,學生還可在該平臺的基礎上,進一步加入自編模塊。

圖1 光學血流造影實驗平臺結構框圖Fig.1 Structure block diagram of optical hemodynamics experimental platform
實驗平臺利用Matlab GUI設計了光學血流造影成像的交互式圖形界面,該界面分為血流成像、血流監測以及血流圖像處理3大模塊。實驗平臺整體結構如圖1所示。血流成像界面可以實現從原始散斑圖像到血流造影圖像的轉換,該界面包含相機參數設置區、血流信號提取窗口設置區、圖像顯示區和運行控件區4個區域。血流監測界面可以將原始散斑圖像轉換成血流動力學變化監測視頻,該功能在臨床醫學監測方面具有較高的應用價值。血流圖像處理界面可以改變血流圖像的對比度,為血流圖像進行背景分割、中線提取以及邊緣檢測。該界面的功能主要是對血流數據進行形態學分析。
在血流圖像處理實驗平臺的設計中,每個模塊的界面設計都包含2個步驟,即GUI界面的設計和回調函數的設計[6,7]。以 Matlab 用戶界面提供的不同控件為基礎,對界面進行設計;根據所需實現的功能,對控件所對應的函數進行編程,實現回調函數的設計。
該實驗平臺的主界面設計包括引導界面和一級界面兩部分。如圖2(a)所示,實驗平臺軟件開始時,首先顯示的為引導界面。點擊引導界面上的“啟動程序”按鈕進入一級實驗界面;點擊“關閉界面”按鈕,則實驗平臺軟件系統關閉。如圖2(b)所示,一級實驗界面包含軟件說明、血流成像按鈕、血流監測按鈕,血流圖像處理平臺按鈕和返回界面按鈕5部分。

圖 2 主界面圖Fig.2 Main interface diagram

圖3 血流圖像處理平臺界面設計Fig.3 Interface design of blood flow image processing platform
血流圖像處理實驗平臺分為血流成像、血流圖像處理和血流監測3部分。其中,血流圖像處理又包括血流圖像對比度調節、血流圖像背景分割、圖像中線提取以及邊緣提取4項功能。子界面的每個控件都包括初始函數、回調函數和輸出函數3個重要的結構代碼。其中,初始函數用于設定控件參數初始值,對于有初值要求的操作可以根據需求進行設定。回調函數是整個控件的核心函數,所有對控件進行響應的操作均在該函數中完成,其主要包括算法、調用函數以及具體操作代碼等。輸出函數用于返回并顯示運行結果和數據信息。
以血流圖像處理平臺為例,介紹實驗平臺子界面設計過程。血流圖像處理的界面設計如圖3所示。按照設計思路在GUI編輯界面中添加相應的控件,即添加2個坐標軸對象、5個編輯文本框、6個靜態文本框、6個顯示面板和9個按鍵。2個坐標軸對象分別用于顯示采集的原始圖像和光學血流造影圖像。只要點擊“讀取文件”按鈕,選擇原始數據路徑,再點擊“運行”按鍵,就能顯示光學血流造影圖像。此時,原始數據像素尺寸和幀率均顯示在子界面中。在此基礎上,可以進行血流圖像對比度調節、背景分割,中線提取,邊緣檢測4種圖像處理。
對比度調節界面:點擊血流圖像處理平臺界面中的“對比度調節”按鈕,可以進入血流對比度調節界面見圖4(a)。在該界面中,可通過滑動滑塊調節閾值和對比度次數,進行圖像對比度的調節,調節結果顯示在效果圖位置處。該界面中還加入了“負片效果”和“效果數據”,以輔助使用者選取最優對比度閾值。點擊“負片效果圖”按鈕,可以獲得血管圖像凸顯的負片效果圖;點擊“效果數據”按鈕,界面將彈出一個調節對比度后的效果圖,用戶可以在彈出的窗口中查看圖片任意坐標處的數據值。

圖4 圖像處理Fig.4 Image processing
對比度調節的原理運用了自適應對比度增強(ACE)算法,用該算法后其整體對比度得到很大改善,能夠弱化或濾除背景噪聲信號。ACE算法采用了反銳化掩模技術,具體來說就是將圖像分割為不同對比度的兩塊區域:低頻區域通過對圖像進行低通濾波的方法獲取,高頻區域用圖像除去低頻部分的方法獲取。而后來求解對比度增益系數CG,使用該系數增強高頻部分,最后將增強的部分圖像與其他部分圖像組合[11,12]。
圖像背景分割界面:在GUI編輯界面中添加2個坐標軸對象、1個編輯文本框、1個滑塊、3個顯示面板以及3個按鍵。啟動背景分割程序后,坐標軸對象上顯示已調節對比度的血流圖像;滑動滑塊調節灰度線性拉伸閾值,其閾值將顯示在對應的編輯文本框內;而后點擊“運行”按鈕,背景分割后的效果圖將顯示于坐標軸對象上。“運行”按鈕的回調函數里含有中值濾波和灰度非線性對數變換算法。點擊“保存結果圖”按鈕保存背景分割后的效果圖;點擊“返回”按鈕,關閉背景分割界面,返回血流圖像處理平臺界面。
在對比度調節的基礎上,系統使用者可對圖像進行二值化處理,以達到背景分割的效果。二值化處理采用的是最大類間方差法求閾值法[8]。圖像背景分割的程序內的兩個前期圖像處理算法,中值濾波和灰度非線性對數變換。中值濾波是基于排序統計理論的一種能有效抑制噪聲的非線性信號處理技術,即能抑制圖像背景的噪聲[9]。中值濾波的基本原理是把數字圖像或數字序列中一點的值用該點的一個鄰域中各點值的中值代替,讓周圍的像素值接近真實值,從而消除孤立的噪聲點。灰度非線性對數變換,主要用于將圖像的低灰度值部分擴展,將其高灰度值部分壓縮,以達到強調圖像低灰度部分的目的[10],從而增強圖像中的血管。用中值濾波和對數變換后,能濾掉背景噪聲,防止二值化函數將背景噪聲當成血流信號,影響圖像效果。
中線提取界面:在GUI編輯界面中添加1個編輯文本框、1個滑塊、2個坐標軸對象、3個顯示面板以及3個按鍵。啟動中線提取的程序后,滑動滑塊調節中線提取閾值,點擊“運行”按鈕,經中線提取后的效果圖就顯示于坐標軸對象上。中線提取前對圖像進行開運算,中線提取后再對圖像進行閉運算[13]。
邊緣檢測界面:在GUI編輯界面中添加1個編輯文本框、1個滑塊、2個坐標軸對象、2個復選框、3個顯示面板以及3個按鍵。啟動邊緣檢測的程序后,坐標軸對象上顯示經邊緣檢測后的血流圖像,滑動滑塊可調節邊緣檢測閾值。本程序還設定了自動閾值檢測,點擊自動閾值復選框,將進行自適應邊緣檢測,其閾值將顯示在其對應的編輯文本框里。點擊“運行”按鈕,邊緣檢測后的效果圖將顯示于坐標軸對象上。

圖5 血流圖像處理實驗平臺界面Fig.5 Interface of blood flow image processing experimental platform
以小雞胚胎血流數據為例,描述實驗平臺運行結果。血流圖像處理實驗平臺界面如圖5所示,讀取采集的原始數據后,顯示讀取的原始小雞胚胎血流圖像和經血流成像算法處理而得的血流造影圖像。在此界面可點擊對比度調節,拉動滑條選取適宜的閾值并點擊“運行”按鈕,可得到調節對比度后運行結果見圖6(a)。經對比度調節后,血流信號強度較弱的毛細血管將從背景中凸顯出來。背景分割運行結果見圖6(b)。這一功能可用于血管形態學提取,繼而分析血管的直徑、微循環系統分布等信息。
在對比度調節和圖像背景分割的基礎上,系統還可以實現血流中線提取和邊緣提取兩項操作。圖6(c)和圖6(d)分別為小雞胚胎血流中線提取和邊緣提取的結果。該結果作為血管分布密度計算的依據。此外,在進行血流速度測量、血流流向判定時,可根據中線提取結果進行血流定位,繼而提高計算的準確性。

圖6 小雞胚胎血流圖像處理結果圖Fig.6 Image processing results of chicken embryo blood flow
基于Matlab GUI的光學血流圖像處理實驗平臺的開發有效地輔助了光學血流造影實驗的進行,該實驗平臺既能直觀地顯示血流成像實驗結果和血流動態監測結果,又能進一步地顯示多項圖像處理結果。實驗平臺運行實例顯示,圖像處理算法可以有效地提高圖像對比度,將血流與背景進行分割。圖像處理模塊還具有血流中線提取,邊緣檢測等功能。此外,該實驗平臺可以促進拓展式教學開展,提高學生學習積極性。學生既可自主調節圖像處理相關參數,理解相關參數與結果的關系;又可自行編譯程序,豐富實驗平臺,參與實驗教學改進。