光纖顯微影象中的斑點識別方法研究及系統實現
關鍵詞:顯微影象處理、顯微影象識別、均勻度
一、選題背景及意義
計算機影象處理技術快速發展,在各行各業中起著越來越重要的作用,顯微影象識別方法的研究成為當今影象處理的重要組成部分。
光纖傳像束具有柔軟、重量輕、實時傳像,傳輸光譜範圍廣且斑點集中等優點,近年來光纖傳像束在工業、醫療以及軍事等方面應用廣泛,所以對於光纖傳像束製備優劣的判斷需求也大大增加。
因此想到利用計算機影象處理技術開發一套程式來幫助判斷材料的製備是否合格,將會為光纖傳像束的製備發揮重要的輔助作用。
**查閱相關資料和文獻,發現,對於顯微影象的識別方法研究和應用大多在於生物、醫學領域,比如說顯微影象下的細胞識別、病原體的特徵識別等,在對於光纖束的製備方面研究比較少。
//對於各類病原體,所提出的自動化病原體識別方法與人工判別結果符合率均在93%以上,整體符合率較高,對於輔助醫師進行判別具有一定的應用價值
二、思路及目標
光纖傳像束其實就是由大量的單絲光纖按一定規則排列組成的光學元件,所以光纖束端面的顯微影象就是一排一排或者一圈一圈的圓圈。
如果材料製備的技術比較好,那麼製備時會憑證的鋪好這些光纖絲,其端面顯微影象上顯示的自然是一些均勻分佈的斑點;但是若材料製備的技術不合格,組成光纖傳像束的單絲光纖就會分佈不均與,在影象的顯示上就是分佈不均與的斑點。
因此我們這個系統要完成就是就是對光纖傳像束的端面顯微影象進行處理,提取斑點特徵,根據一定的均勻度理論演算法
三、系統流程
1、 尺寸與座標轉換
軟體應可通過標定用圖來確定影象的真實尺寸,如指定影象寬度方向全長的真實尺寸為1.25mm,或通過顯示影象並提供給使用者直線工具,由使用者指定畫素長度和真實長度的對應關係。
比例尺可以以單獨的小模組形式存在,供使用者在需要了解特徵的真實尺寸時呼叫。
2、感興趣區域
軟體對於給定的一系列影象,具有自動定義感興趣區域(Region of Interest,以下簡稱ROI,示意圖中以紅色圈出)的功能,遵循以下規則:
① 當指定特徵遍佈全圖時,ROI定義為全圖,如圖1所示;
② 當指定特徵遍佈一個圓形時,
③ 當不滿足以上兩種情況時,ROI定義為合適大小的矩形,如圖3所示;
④ 軟體也允許手動設定ROI,設定的流程需有GUI引導,載入圖片並顯示後(如果選定的是資料夾即多張圖片,則僅取第一張供劃定區域用),可以選擇矩形工具或圓形工具,圈定ROI。
圖1 圖2 圖3
3、提取興趣特徵
一類感興趣特徵為上方圖1-3所示的不規則單色“斑點”。
軟體應支援自定義白色(或黑色)斑點基礎組成元素的大小,如真實尺寸的0.1mm,或影象上的10畫素長度。組成元素的形狀可以是圓形或方形。
程式應自動針對每張圖片調整進行灰度、二值、邊緣提取等影象處理過程選取的閾值引數,並在GUI介面上劃定控制面板區域,為使用者提供手動調整模式。
4、 提取斑點位置
程式應提取出每塊斑點的位置(對於非規則形狀,採用此塊的重心位置作為其座標位置),並在輸出的報告中在原圖基礎上以正紅色標示識別到的斑點的邊界。
5、計算均勻度指標
程式需根據提取到的斑點資訊,給出斑點的均勻度指標。均勻度代表在劃定的ROI內,斑點分佈均勻性的大小。
均勻度理論被廣泛應用於林業和生態學研究,一種值得參考的均勻度描述方法由羅傳文教授提出,詳見 [羅傳文,劉丹丹,王剛. 均勻度理論[J]. 生物數學學報,2006,21(1):105-112. DOI:10.3969/j.issn.1001-9626.2006.01.015.],其計算方法的通俗解釋是,以一個點為球心,以該點與最近點的距離為直徑,畫一個球稱為獨佔球,獨佔球的一個外切正方體稱為獨佔體。所有外切正方體體積之和除以邊界體積,為均勻度。
左圖所示計算得到的均勻度與直覺相符。
(但需注意的是,也可以採用其他的數學形式描述,尤其是相比於該理論中的點集,我方的需求為非規則二維塊狀,因此需要加入權重因素,對其模型進行修改)
四、技術支援
1、PyQt 框架介紹
Qt跨平臺C++圖形使用者介面應用程式開發框架,Qt庫是目前最強大的GUI庫之一。
PyQt是用於建立GUI應用程式的跨平臺的工具包(Python的GUI控制元件集),它將 Python 程式語言和Qt庫成功融合在一起,即Qt框架的Python語言實現,PyQt提供了一個設計良好的視窗控制元件集合,每一個PyQt控制元件都有其對應的Qt控制元件。PyQt5存在UI介面設計器Qt Designer工具,可便捷的採用拖拽方式進行頁面構造。 它生成的UI介面是一個字尾為.ui的檔案。該檔案使用起來非常簡單,可以通過命令將.ui檔案轉換成.py格式的檔案,並被其他Python檔案引用;也可以通過Eric 6進行手工轉換。
2、開發環境
Eric6
Eric6是Python程式語言的IDE(整合開發環境)程式,功能之強大,絕不輸於Python平臺下的任何IDE程式,佔用記憶體低執行速度快足以令Eric6藐視群雄,最可貴的是與PyQt5結合的更是天衣無縫(可以使用Qt desiger)。
3、技術基礎
數字影象處理方面:
影象的二值化
灰度變換與空間濾波
影象的復原、重構、增強
形態學影象處理
...
Python
調包機制:模組是具有一定功能的類的集合,包又是這些模組的集合
Python使用OpenCV庫實現影象處理:OpenCV是一個C++庫,目前流行的計算機視覺程式設計庫,用於實時處理計算機視覺方面的問題,它涵蓋了很多計算機視覺領域的模組
Python NumPy庫: NumPy支援大量的維度陣列和矩陣運算,對陣列運算提供了大量的數學函式庫