使用平面場瑕疵檢測

測量可見的感測器缺陷

Flatfield 瑕疵偵測技術能夠偵測可見的感測器缺陷(通常是影像感測器前方灰塵造成的模糊(暗)斑點,但也能偵測到輕微瑕疵)。為了確保僅標記可見瑕疵,而不標記低於可見閾值的瑕疵,該技術使用源自人眼視覺系統 (HVS) 的響應函數對影像進行濾波。濾波器設定可根據各種應用和觀察條件進行調整。 Flatfield 的IT版本可整合到自動化測試系統中,透過同時最大限度地減少漏檢和誤檢,顯著提高感測器良率。

請仔細閱讀說明書!
要充分發揮 Flatfield Blemish Detect 的性能,需要仔細調整參數。
這需要一定的背景知識。
Imatest 5.1:您可以為魚眼鏡頭指定圓形徑向範圍。 Imatest 3.10:可以對大於 500 萬像素的影像進行降採樣,以提高速度並減少記憶體佔用。

Flatfield 瑕疵檢測是Flatfield分析的一部分,專注於缺陷或瑕疵,即局部密度變化。相關設定保存在 imatest-v2.ini 或 Imatest IT 的指定 ini 檔案中,具體說明請參閱Flatfield ini 檔案參考文件。

人類視覺系統

人眼對比敏感度函數 (CSF)(如圖右)測量的是眼睛的調製傳遞函數(MTF)反應。在高空間(或角度)頻率下,它受限於眼睛的光學系統和視錐細胞密度;而在低頻率下,它受限於視網膜中的訊號處理(神經元相互作用;側抑制)。多項研究表明,在明亮的光照條件下,峰值響應介於每度 4 到 8 個週期之間。 CSF 公式的形式為 k₁f exp ( -k₂f ) ,其具體描述請參閱「主觀質量因子 (SQF)」頁面。

人眼對相對亮度差異非常敏感。這就是為什麼我們用光圈或光圈值來考慮曝光的原因,每改變一個光圈值或光圈值,就意味著光線減半或加倍。人眼在強光下能夠分辨的最小亮度差異( ΔL )可以用韋伯-費希納定律來表示。

ΔL / L = 0.01

(G. Wyszecki 和 WS Stiles,《色彩科學》,Wiley,1982 年,第 567-570 頁)。這是一個 1% 的相對差異。下文所述的閾值與此數值大致相關(儘管由於帶通濾波,它們在實踐中通常要大得多——0.03 或更大)。

對比敏感度函數
眼睛的對比敏感度功能(CSF)

巧合

為了獲得準確的瑕疵檢測結果,您必須

  • 濾除高空間頻率以去除雜訊-由光子和熱效應引起的像素隨機變化,這些變化不應被誤解為瑕疵。
  • 濾除低空間頻率,以消除鏡頭漸暈引起的像素級漸變。

這種濾波與對比度敏感度函數有著奇特的相似之處(儘管出於實際原因,它並不是一個完全的複製品)。

演算法

  • 影像線性化採用公式V = 像素級(1/gamma) ,其中 gamma 是用於影像編碼的近似指數。對於標準色彩空間(sRGB、Adobe RGB),gamma 值約為 0.5;對於原始影像,gamma 值約為 1.0。
  • 線性化影像會經過帶通濾波器進行濾波,該濾波器的頻率截止值(在輸入對話方塊中設定)源自人眼視覺系統的對比敏感度函數,但並非完全相同。實際的帶通頻寬必須更寬,以補償雜訊、光線衰減以及各種觀看條件的影響。這些因素將在下文中詳細討論。
  • 濾波後的影像平均值為 0,因為濾波器的高通部分去除了直流分量(空間頻率 = 0)。
  • 將濾波後的影像除以線性化(未濾波)影像的平均值進行歸一化。這樣可以使其單位與上述韋伯-費希納定律中的ΔL / L相同,即 -0.01 表示該像素比其周圍像素的平均亮度低 0.01(1%)。此訊號稱為「瑕疵濾波」訊號。
  • 如果經過瑕疵過濾後的值低於閾值的負值,則偵測到像素錯誤。例如:閾值為 0.03 時,低於 -0.03 的值即為錯誤。此外,也會計算連續(相連)錯誤的數量和大小。
  • 垂直線的平均值是透過對水平掃描的、經瑕疵過濾的像素列取平均值計算得出的,但要排除影像頂部和底部各 5% 的高度。水平線的平均值是透過對垂直掃描的、經瑕疵過濾的像素行取平均值計算得出的,但要排除影像左右兩側各 5% 的高度。這些線可以顯示在「線瑕疵圖」中。如果任一平均值的絕對值大於線閾值,則偵測到錯誤。

低通濾波和高通濾波(如果您有電氣工程背景,應該很熟悉)

  • 低通濾波器(LPF)會衰減高頻訊號,即允許低頻訊號通過。其最常見的應用是降噪。
  • 高通濾波器 (HPF) 會衰減低空間頻率,即允許高頻訊號通過,並移除訊號的直流 (零頻率) 成分。訊號經過高通濾波器後的平均值為零。為了將這樣的訊號顯示為影像,必須添加一個人工直流電平(通常等於原始訊號的平均值)。高通濾波可以減少訊號的漸變(例如,由鏡頭漸暈引起的像素級變化,即光衰減)。
  • 帶通濾波器是低通濾波器和高通濾波器的組合。人眼就是一個帶通濾波器。

濾波器的特性由頻寬(通常指輸出功率與輸入功率之比(傳遞函數)降至 0.5 時的頻率)和滾降速率決定,而高斯濾波器的滾降速率比指數濾波器更快(可在輸入對話方塊中選擇)。 「頻寬」一詞在英語俚語中廣泛使用,其起源於電氣工程。

如果原始(未經濾波的)影像中包含微小斑點(可能是壞像素或熱像素),低通濾波器會將其展寬並降低其振幅。對於人眼而言,如果斑點的振幅足夠大,即 ΔL/ L大於某個閾值(如上所述,對於邊界清晰的大物體,該閾值至少為 0.01),則該斑點是可見的。對於小物體,閾值通常會更高。

指示

為了準備用於平面瑕疵檢測的影像,

  • 如果相機或鏡頭有手動對焦功能,請將其設定為手動對焦。
  • 廣角鏡頭通常有明顯的暗角,不建議用於測量感測器缺陷。
  • 光圈(f值)設定會影響成像結果,因為許多瑕疵是由成像晶片表面的灰塵造成的,這些灰塵透過拜耳濾鏡、抗鋸齒濾鏡和紅外線濾鏡(最遠可達1毫米)與感測器隔開。這種隔開會使灰塵顆粒模糊。隨著光圈增大(f值減小),模糊半徑增大。對於較小的灰塵斑點,瑕疵強度隨著光圈增加而減小,即強度與半徑成反比。
  • 空白螢幕模組

    螢幕圖案模組
    瑕疵檢測和均勻性。

    拍攝一個光線均勻、形狀統一的物體。

  • 獲得均勻拍攝主體的最簡單方法之一是使用右側所示的Imatest螢幕圖案模組,在 2-8 公分(1-3 吋)的距離拍攝您的電腦顯示器。從「實用工具」選單開啟「螢幕圖案」模組,然後最大化螢幕。如有需要,您可以調整色相、飽和度和亮度(H、S 和 L,預設值分別為 0、0、1)。

    這種方法最適用於可視角度較廣的平面液晶顯示器(對於筆記型電腦(由於可視角度依賴性強)或 CRT 顯示器(由於光柵掃描)而言,效果不太理想)。

  • 我們建議使用靠近鏡頭安裝的乳白色漫射玻璃。 Edmund Optics公司有售乳白色漫射玻璃。如果使用漫射器,則可以用燈箱(帶有高頻鎮流器的螢光燈或LED燈)代替顯示器。 (燈箱通常亮度較高,但均勻性較差。)
  • (我們更傾向於其他方法,但這種方法有時也有效。)拍攝一張光線均勻的光滑啞光紙(白色或灰色)。注意不要遮擋光線。戶外光線(陰影)有時能提供非常均勻的照明。使用廣角鏡頭獲得均勻照明可能比較困難;幾乎不可能完全避免遮擋部分紙張。強烈建議使用乳白色漫射玻璃。
  • 被攝對象無需對焦(測量感測器均勻性甚至不需要鏡頭);目的是測量感測器均勻性,而不是被攝對象的特徵。對於典型的測量,請將曝光補償設定為過曝約一檔光圈。 (當然,您也可以使用任何您選擇的曝光值。)
  • 將影像儲存為 RAW 檔案或最高品質的 JPEG 檔案。
Imatest LED燈箱 - 側視圖

為了獲得均勻照明

我們建議使用Imatest LED 燈箱,它能產生光譜特性優異、亮度調節範圍廣的均勻光線,適用於透射率測試圖的照明。此燈箱可與Imatest 動態範圍測試圖和其他透射式測試圖搭配使用。

使用積分球(例如從Gamma Scientific或Colorspace等供應商購買)可以獲得最均勻的照明。積分球比 LED 燈箱更貴。

運行 Flatfield 瑕疵檢測

從主視窗運行 Flatfield 分析:

瑕疵偵測功能在平場分析中運行,因此其啟動方式相同:請參閱「在新主視窗中執行平場分析」 。瑕疵檢測功能有兩個特有的步驟:

  • 在「平場均勻性設定」畫面上,請確保勾選「執行瑕疵分析」複選框。否則,運行結果僅包含均勻性分析結果。
  • 瑕疵特定設定位於「瑕疵」按鈕後面,點擊該按鈕會開啟如下所述的「瑕疵偵測設定」畫面。
從經典介面運行 Flatfield 分析:

與平面分析相同:啟動Imatest ,選擇「經典介面」 ,點選「平面分析」 (或「平面分析互動式」),然後選擇輸入檔。完整的說明,包括檔案選擇對話方塊和批次運行,請參閱「從經典介面運行平面分析」部分。瑕疵分析結果來自同一運行,只需按照上述步驟選擇「執行瑕疵分析」即可。

這裡的文件處理方式是 Flat Field,在「從經典 UI 運行 Flatfield 分析」下描述過一次:非常大的文件和LARGE FILES(均勻性、瑕疵、失真)設置,一次選擇多個文件,合併或批量處理它們,以及三個裁剪選項。

瑕疵檢測功能與平面場檢測功能有所不同。它的檔案和裁切選項位於「設定」或「瑕疵偵測」輸入對話方塊中,而平面場偵測功能則使用其自身的輸入對話方塊。

設定視窗

選擇影像檔案後,設定視窗才會開啟(除非選取「快速運行」)。

請確保選取“執行瑕疵分析”複選框。

設定視窗:用於借助預覽調整濾波器和閾值設定。
(重點已標示)。我們建議進行實驗。
不同的濾鏡、閾值和預覽設定。

  • 標題預設為檔案名稱。您可以根據需要更改它。
  • 執行瑕疵分析(通常選取)。取消選取後,瑕疵分析功能將關閉,回應和瑕疵摘要預覽將不再顯示。均勻性分析仍可執行。當不需要進行瑕疵分析(此分析使用計算量大的二維傅立葉變換)時,此操作可以顯著加快運行速度。
  • “均勻性”按鈕會開啟“平場均勻性設定”視窗。所有均勻性結果均可計算,但直方圖和精細雜訊細節除外,這兩項結果均無法在Imatest IT中使用。

濾波和閾值

濾波器響應圖左側的藍色區域包含瑕疵濾波器和偵測設定。

  • 低通濾波器用於對高頻訊號進行滾降(之所以這樣命名,是因為它「允許」低頻訊號通過)。下拉式選單用於指定滾降方程式:指數滾降 (exp( -kf )) 或高斯滾降 (exp(-( kf ) ² ))。指數滾降速度較慢,對高頻訊號的去除力道較小,但更接近人眼的聽覺感受。滑桿用於指定近似截止頻率。低通濾波器的效果在響應圖右側的高空間頻率區域和預覽視窗中可見。頻率過高會導致結果對雜訊過於敏感;頻率過低則可能導致忽略一些細微(但可見)的缺陷。
  • 高通濾波器:濾波器的低頻滾降。下拉式選單指定滾降方程式:指數滾降 (exp( -kf )) 或高斯滾降 (exp(-( kf ) ² ))。滑桿指定近似截止頻率。低通濾波器的效果在響應圖左側的低空間頻率區域和預覽視窗中可見。頻率過低會導致結果對不均勻照明(光衰減、漸暈等)過於敏感;頻率過高則可能導致遺漏較大的(但可見的)缺陷。

  • 對大於500 萬像素的影像進行降採樣,將 2x2 組(每組 4 個像素)平均合併為 1 個像素。僅用於瑕疵計算(不影響熱像素/死像素的計算)。結果基於影像上取樣至原始尺寸。 (瑕疵尺寸為 4 的倍數,但平均瑕疵尺寸與未降採樣計算的結果非常接近。)
blemish_count_orig
原圖(上);降採樣(並調整大小)後的圖片(下圖)
瑕疵計數下採樣

降採樣技術能夠顯著提高瑕疵檢測的速度並減少記憶體佔用,因為瑕疵檢測通常需要進行記憶體密集的二維傅立葉變換。這在資源有限的製造環境(例如使用 Imatest IT 系統)中尤其重要。

低通/高通濾波器區域右側的濾波器響應圖顯示了濾波器的響應曲線。藍色(下方)曲線是低通濾波器和高通濾波器的組合響應。黑色(上方)曲線是歸一化至最大值 1.0 的組合響應;此曲線用於實際的濾波器計算。

  • 瑕疵邊緣
    區域邊界
    (紅線)

    區域邊界:佔總寬度或高度的百分比。由於影像邊緣附近的區域可能視覺效果不太明顯,或者可能存在邊緣相關的瑕疵,因此「瑕疵偵測」功能可讓您將影像劃分為九個區域進行分析,這些區域由成對的垂直和水平分割線定義。輸入的值是垂直線(定義左右區域)和水平線(定義上下區域)的位置,以佔總寬度和高度的百分比表示。右側的圖示顯示了兩個邊界(紅線)= 6%。您可以為各個區域單獨設定瑕疵閾值。

  • 可以分別設定四個區域組和線條的閾值:中心、(左、右)、(上、下)、角落和線條。
    • 類型是指瑕疵類型。可以是深色(預設)、淺色或兩者兼有(深色和淺色)。
    • 該值是閾值的絕對值。當經過瑕疵濾波後的訊號電平低於閾值時,即可偵測到瑕疵。 (目前僅將變暗區域視為瑕疵。)請注意,經過瑕疵濾波後的訊號平均值為零(由於高通濾波去除了直流分量),並且已歸一化到平均訊號電平(濾波前),因此閾值對應於韋伯-費希納定律中的ΔL / L 。出於實際考慮(感測器雜訊、觀察條件),閾值通常大於 0.01。預設值為:中心區域 0.02,頂部、底部、左側和右側 0.03,角落 0.04,線條 0.01。通常情況下,較高的值效果會更好。
了解更多關於調音的知識,特別是高通濾波器和低通濾波器的設定。
在下面“調音”部分。

繪圖(顯示)選項

右下角的預覽影像以 280x200 像素的解析度顯示濾波後的影像預覽。它會在濾鏡設定更改時自動更新,方便使用者微調。預覽顯示(範例如下)包括:

原圖
原圖僅供參考,不受設定影響。
帶有瑕疵濾鏡的影像濾波後的影像。展示了濾波器對瑕疵的影響。由於僅顯示了原始影像的一小部分(280x200),因此無法顯示高通濾波對長程變化的抑制效果。
線性偽彩色
經過瑕疵過濾後的影像以偽彩色線性顯示。
重點
偽彩色
偽彩色瑕疵過濾影像(突出顯示斑點):顯示了與局部平均值的偏差。高於 1(過濾後的局部平均值)的值顯示為白色。低於 0.9(比局部平均值低 0.1)的值顯示為黑色。
斑點 < 中心閾值偽彩色
偽彩色影像經過瑕疵過濾後,僅顯示低於閾值(-)的區域。閾值越高,顯示為白色;閾值低於 -0.1,顯示為黑色。
線性,灰階 < ctr 閾值偽彩色與線性偽彩色(如上所示)類似,只是偵測到的瑕疵(低於中心閾值的等級)以灰色顯示。
重點強調,灰色 < 中心閾值偽彩色與斑點強調偽彩色(如上所示)類似,只是偵測到的瑕疵(低於中心閾值的等級)以灰色顯示。

當預覽設定與瑕疵概要圖設定相同時,兩種設定的背景均為淺黃色。否則,瑕疵概要圖的背景為淺粉紅色(表示您看到的與最終結果可能不符)。

可以透過點擊「位置」按鈕,然後用滑鼠拖曳 280x200 像素的區域來變更預覽影像的位置。最終裁剪區域以紅色顯示。它應該包含感興趣的瑕疵(高於或低於閾值)。

我們強烈鼓勵所有用戶嘗試不同的設定——
低通和高通濾波器截止頻率和響應以及預覽選項。

預覽選項依處理程度遞增的順序排列:原始影像、瑕疵濾鏡影像。
偽彩色:線性,點狀強調(若 > 1 則為白色)。影像 < 閾值(若 > -閾值則為白色)。

繪圖區域(左側中間)用於指定要繪製的圖形。這些圖形的詳細描述請參閱下文「結果」部分。

  • 左側複選框所選的四幅影像分別展示了應用不同訊號處理後的影像(原始影像(無處理)、 Blem 濾波器(低通濾波器+高通濾波器)、高通濾波器、高通濾波器 > 雜訊 > (雜訊增強 10 倍))。由於後三幅影像並非最終結果,它們主要用於診斷和查找設定。
  • 線狀瑕疵圖繪製影像中水平線和垂直線的振幅。線條往往比斑點更明顯,因此它們有自己的閾值(預設值 = 0.01)。
  • 瑕疵計數圖顯示相鄰(相連)瑕疵的大小。由於如果選中“在底部添加結果(無直方圖)” ,二維瑕疵(匯總)圖會顯示瑕疵及其統計信息,因此很少需要此圖。
  • 瑕疵匯總圖(偽彩色)包含兩個下拉式選單(非複選框),位於上方複選框的正下方。此圖以偽彩色顯示瑕疵檢測的關鍵結果。您可以選擇多個選項。

    左側下拉選單。您可以使用預覽視窗查看這些選項的功能。當設定與預覽視窗相同時,背景會顯示為淺黃色。

    離開省略此圖。
    線性
    重點瑕疵過濾後的結果,數值大於 1.0 時會顯示為純白色。這樣可以輕鬆找到瑕疵,避免在線性顯示中被忽略。
    斑點 > 閾值僅顯示超出閾值的瑕疵。這樣可以最清楚地顯示瑕疵。
    線性,灰階 < 閾值與線性(上圖)類似,但瑕疵(等級 < (-)閾值)以灰色顯示。
    重點,灰色 < 閾值與斑點強調類似,但瑕疵(等級 < (-) 閾值)以灰色顯示。

     
    右側下拉選單

    沒有新增結果影像填滿了整個畫面。
    在底部新增結果(不顯示直方圖)推薦影像下方顯示了濾鏡回應、像素統計資料和相鄰瑕疵統計資料(按大小排序)。統計資訊以可捲動表格的形式呈現。
    在底部添加直方圖結果(速度較慢)影像下方會顯示濾波器響應、像素統計資料和色階直方圖。影像色階的標準差也會顯示。不建議這樣做,因為計算直方圖和標準差很慢。

設定區域可讓您輸入影響結果的設定。

  • 加速:取消選取此選項後,系統會計算並保存一些光照衰減資訊(例如邊緣和角落的亮度等級)。這對運行時間的影響相對較小。如果您需要在輸出檔案中保存基本的光照衰減統計訊息,請保持選取狀態。
  • 伽瑪值(設定區域)。伽瑪值的預設值為 0.5,這在數位相機中很常見。伽瑪值用於使影像線性化。可以使用Stepchart 軟體,透過幾種常用的階梯圖來測量伽瑪值。 (反射圖最容易使用,但也可以使用透射圖來測量動態範圍。)
  • 通道選擇:紅色、藍色、綠色或 Y(亮度)通道
  • 「邊角區域」 (預設 32 x 32 像素)可讓您選擇要分析的影像邊角區域。這些區域會影響邊緣和邊角層級的運算,當「加速」選項未選取時,計算結果將儲存為 CSV 和 XML 格式的輸出。可選值包括 10 x 10 像素、32 x 32 像素、1%(最小 10 x 10)、2%(最小 10 x 10)、5% 和 10%。如果「瑕疵偵測」功能已新增至「光線衰減」中,則此選項可能會移除。

缺陷像素

缺陷像素(熱像素和壞像素) :勾選對應的複選框(如右側所示)即可顯示熱像素(紅色 x )和/或壞像素(藍色 o 或 • )。可以選擇絕對像素閾值或相對百分比閾值。如有需要,也可以啟用簇檢測。

dialog_HotDead

  • 通道:選擇用於缺陷像素偵測的通道。有三個選項:
任何頻道
如果任何一個通道(R、G、B 或 Y)出現缺陷,則該像素被判定為缺陷像素。 (這種方法可以檢測到最多的缺陷。)
選定頻道
如果選定的通道(R、G、B 或 Y——在缺陷像素區域正上方選擇)有缺陷,則記錄到缺陷像素。
所有頻道如果所有通道(R、G、B 和 Y)都出現缺陷,則判定該像素為缺陷像素。 (這種方法檢測到的缺陷最少。)
  • 熱/死 — 絕對/相對 — 群集檢測
檢測熱像素或死像素(x或o):
絕對像素閾值
(選段 2 和 4)
熱像素的值固定在感測器最大值附近(8 位元檔案中為 255)。死像素的值固定在 0 附近。由於訊號處理(尤其是 JPEG 壓縮)經常會導致這些值偏移,因此您可以使用滑桿將熱像素的偵測閾值設為 6-255 像素,將死像素的偵測閾值設為 0-249 像素。 (極端值適用於在白色或黑色背景上進行的測量。)按一下滑桿兩端的 < 或 > 可將閾值調整 1。預設值分別為 252 和 4。
偵測亮像素或暗像素(x或o):
相對百分比閾值
(選段 3 和 5)
亮像素是指高於 8 個相鄰像素平均值的相對百分比閾值;暗像素是指低於 8 個相鄰像素平均值的相對百分比閾值。
閾值由右側的滑桿選擇。
聚類檢測
(選段 4 和 5)
檢測熱像素和/或死像素簇,其中簇定義為兩個或多個相鄰的缺陷像素(可以是絕對的,也可以是相對的;熱像素和死像素分別處理)。報告簇的數量和最大簇的數量。此操作需要一些額外時間。

角落框可讓您在框框中設定的n x n區域內,將熱像素和壞像素的敏感度降低 2 倍。

為了使此功能正常工作,JPEG 檔案應以最高品質等級保存;在較低品質等級下,孤立的熱像素和壞像素往往會模糊不清。熱像素和壞像素的詳細資訊如下。您可以選擇在滿足任何顏色通道(預設)、所有通道或選定通道的條件時,將像素計為熱像素或壞像素(亮像素或暗像素)。詳細資訊請參閱「均勻性:Imatest Master」 。

  • 裁切影像邊緣附近的像素(左、右、上、下)(此功能通常處於停用狀態。)僅在「選項 I」中選取「不詢問裁切」(使用 LF 輸入對話方塊中的「裁切...邊緣設定」)時啟用。如果選中,影像將沿左、右、上、下緣裁剪指定數量的像素。

    區域選擇的兩種方法

    待分析區域(ROI)通常在粗調和精調區域視窗中設置,ROI 是相對於左上角定義的,而不是相對於每個邊緣定義的。因此,如果您希望多張影像的 ROI 邊界保持一致(例如,您希望 ROI 邊界距離影像邊緣 4 個像素),則必須針對每個影像尺寸單獨設定 ROI。

    瑕疵檢測提供了一種指定相對於影像邊界的 ROI 的替代方法:crop_borders。當在「選項 I 」中選擇「使用 LF 輸入對話方塊中的裁切...邊界設定」並勾選「裁切像素... 」複選框時,此參數會在瑕疵(或均勻性)視窗底部附近的「裁切邊界附近的像素」中設定。否則,crop_borders 將被忽略,而使用標準的 ROI 選擇方式。

調音

設定瑕疵偵測的關鍵參數非常重要,這樣偵測到的錯誤才能與可見的缺陷相對應,從而最大限度地減少「誤報」和「漏報」。

關鍵參數是

  • 低通濾波器函數和截止頻率。指數函數最接近人眼的反應,但如果需要更陡峭的截止(通常用於更強力的降噪,同時保持對微小缺陷的可見性),則應使用高斯函數。截止頻率(滑桿位置)應進行調整,使測試影像預覽(示例如下)中可見的小斑點相對於較大的斑點具有適當的強度,並且如果它們強度足夠高,則應超出閾值。
  • 高通濾波器功能和截止頻率。通常建議使用更激進的高斯滾降來消除光線衰減和邊緣效應,這些不應被誤認為是瑕疵。截止頻率(滑桿位置)的選擇應確保大面積光點不會過亮。此設定需要權衡利弊。
  • 閾值,特別是中心區域的閾值,應該在濾波器設定之後再設定。

測試影像

(我們正在開發更複雜的方法,但下圖是一個好的開始。)

請列印或顯示下方所示圖像的全尺寸版本,您可以點擊此處或直接點擊圖像下載。查看影像時,應在產品開發過程中的典型條件下,以及在您預期的視角範圍內進行觀察。

使用此功能設定關鍵參數,使您認為不雅的斑點高於閾值,而您認為不雅的斑點則低於閾值。如果瑕疵圖(如下所述)中顯示的小斑點過於明顯,請降低低通濾波器頻率(向左移動滑桿)。預覽圖可以大致反映效果,但最終影像才是最終結果。

點擊此處或上方鏈接下載完整圖片(800萬像素;2.5MB)
瑕疵檢測校準影像。詳情如下。
點擊圖片即可下載完整尺寸版本(800萬像素;2.5MB)

調整低通濾波器和高通濾波器

低通濾波器的設定會影響高頻滾降(頻率響應圖的右側)。高通濾波器會影響低頻滾降(頻率響應圖的左側)。

結果的基準設定位於「設定」視窗(上方) ,其中低通濾波器 (LPF) 設定為 0.022(高斯濾波器),高通濾波器 (HPF) 設定為 0.007(高斯濾波器),這樣可以獲得非常好的整體效果。在下圖中,其中一個濾波器的截止頻率(LPF 或 HPF)已更改;另一個濾波器的截止頻率與「設定」視窗中的設定相同。

低通截止頻率 = 0.005(大幅降低 )
低通截止頻率 = 0.005(大幅降低)
特徵模糊(擴散),因此無法檢測到較小的缺陷。
低通截止頻率 = 0.222(大幅提高)
低通截止頻率 = 0.222(大幅提高)
隨機噪音未被正確過濾。偶爾出現的噪音特徵被誤判為瑕疵。
高通截止頻率 = 0.0005(大幅降低)
高通截止頻率 = 0.0005(大幅降低)
單一斑點偵測似乎沒問題,但影像邊緣附近有問題,如右圖所示。
高通截止頻率為 0.0005 時的整體結果(大幅降低),請參見左側。
高通截止頻率為 0.0005 時的整體結果(大幅降低),請參見左側。
降低高通濾波器截止頻率會使濾波對漸變更加敏感,即影像邊緣附近的光線衰減,而較暗的區域會被誤認為是瑕疵。

結果

影像(原始影像和過濾後影像)

這裡提供了一些圖像範例。這些範例旨在方便您設定濾波器和閾值參數,您可以將影像(原始影像或處理後的影像)與經過瑕疵過濾後的結果(以偽彩色顯示)進行比較。請注意,這些圖未經抗鋸齒處理,因此在原始(未縮放)顯示器中,垂直和水平方向的不均勻性(線條)可能會顯得過大。為了獲得更準確的圖像,您必須點擊感興趣的區域或繪製矩形框來放大圖像。雙擊即可縮小影像。下圖展示了三組合成瑕疵,大小各異,從弱到強。

測試影像(原圖;縮小圖)
原始圖像(已縮小顯示)添加了合成瑕疵

原圖已裁剪,放大了斑點。

設定濾波器參數(LPF 和 HPF 截止頻率以及閾值)時,應在適當的放大倍率下仔細觀察該影像,以驗證其外觀是否與檢測到的瑕疵相符。

原始測試影像(已裁切)

經過瑕疵過濾(高通濾波器和低通濾波器)的影像,裁剪並放大

此影像已進行濾波處理,以去除長距離密度變化(通常由漸暈引起)和雜訊。下方所示的瑕疵匯總圖(主要結果以偽彩色顯示)直接源自此影像。斑點的最大密度應與上方未濾波影像中的斑點可見度密切相關。

經過瑕疵過濾並裁剪的影像

高通濾波影像

此圖僅顯示高通濾波器的效果。 (這是一個中間結果,通常不需要。)

原始影像(已裁切 HPF)

高通濾波影像,降噪10倍

此圖最大程度地顯示了瑕疵和噪聲,這與僅顯示瑕疵但最小化噪音的瑕疵過濾圖不同。微小缺陷會被放大。 (這是一個中間結果,通常不需要。)

原始影像經過高通濾波器和降噪處理

瑕疵序列圖

此圖顯示了瑕疵及其大小順序(從大到小)。瑕疵的詳細資訊(大小等)列於偽彩色瑕疵圖(如下)右下角的表格中。深色瑕疵為藍色;淺色瑕疵為紅色。

blemish count plot

瑕疵匯總(偽彩色)圖(主要結果顯示)

瑕疵匯總(偽彩色)圖是主要結果展示——它清晰地顯示了瑕疵。下圖所示的圖表選擇了低於(深色)閾值的斑點。

瑕疵顯示,僅顯示低於閾值的瑕疵:瑕疵偵測的主要結果。
瑕疵顯示,僅顯示低於閾值的瑕疵:瑕疵偵測的主要結果。
瑕疵放大(重點強調)
瑕疵放大(重點強調)

對於小於閾值的斑點,僅顯示低於(-)瑕疵閾值的區域;影像的其餘部分為白色。如有需要,可放大影像的某些部分。

其他選項包括斑點強調(如右圖放大所示),它將過濾後的瑕疵圖像的最大值限制為 0,最小值限制為 -0.1。這使得(較暗的)瑕疵比下面的線性(未限制)圖像更明顯,但可能不如上面的圖像容易辨認。

當在繪圖區域中選擇「在底部新增結果(無直方圖)」時,將顯示底部一行。 (不建議選擇「在底部添加結果(帶直方圖)」(速度較慢) ,因為計算直方圖(和標準差)速度較慢且意義有限。)濾波器響應曲線顯示在左側:下方的藍色曲線是低通濾波器 (LPF) 和高通濾波器 (HPF) 的組合響應。上方的黑色曲線是歸一化後的響應,最大值為 1.0(用於計算)。

中間的表格顯示了整個影像以及 9 個部分中每個部分的錯誤數 (N Err)、最小值 (Min) 和 (–) 閾值等級 (Thr),以及平均垂直線和水平線。

右側表格顯示了瑕疵的面積、x 和 y 座標(以像素為單位)、用於查找瑕疵的濾波影像中瑕疵的平均值(透過將像素值與閾值進行比較)以及線性化輸入影像中瑕疵的平均值。結果按瑕疵大小排序:從大到小。

線性瑕疵顯示(瑕疵放大)

線瑕疵圖

線條通常比大小相近的斑點或瑕疵更顯眼。因此,檢測線條時使用不同的閾值(通常較低;下圖為 0.005)。下圖分別展示了影像中的垂直線和水平線。濾波方法與斑點相同。此圖針對的是一張影像,在經過 10 倍雜訊增強後的影像中可以看到明顯的垂直條紋(線條),但在以全尺寸顯示的原始影像中卻看不到這些條紋(這是為了避免在 Matlab 圖形中縮小顯示時出現抗鋸齒問題)。

線顯示器
線瑕疵圖

由於末端效應(在 FFT 例程中),線條的末端未包含在分析中,因此以淺灰色顯示。

CSV 和 JSON 輸出文件

這些輸出檔案包含圖表中未包含的額外統計資料。大多數資訊的含義顯而易見。例如,以下是部分JSON輸出(省略了光照衰減結果)。 JSON 物件的優點在於,通常可以使用JSON頁面連結的例程,透過一行程式碼即可解析(解碼)它們。這使得它們在後處理(例如,判斷測試是否通過)中特別有用。

{
“blemishResults”: {
“dateRun”: “09-Jan-2012 01:24:25”,
“版本”:“Imatest 3.9-Beta Master Blemish”,
“ColorChannel”: “Y(亮度)”,
「nColorChannel」: [4],
「gamma」: [0.5],
“totalImagePxls”: [7990272],
…
「freqLowpass」: [0.0175],
“freqHighpass”: [0.0055],
“filterType”: [2,2],
「閾值」:[0.04,0.05,0.05,0.08,0.02]
”locations: “Result,Top L,2 Top Ctr,3 Top R,4 Top L,5 Ctr,6 Top R,7 Bot L,8 Bot Ctr,9 Bot R”,
「pixelErrors」: [0,0,0,0,18760,0,0,0,0],
「最小值」:[-0.00705,-0.00763,-0.00765,-0.00699,-0.06241,-0.00773,-0.00684,-0.00474,-0.00773,-0.00684,-0.00474,-0.00726],
「最大值」:[0.00379,0.00422,0.00377,0.00351,0.0104,0.0052,0.00256,0.00492,0.00326],
“horizLineMin”: [-0.00173],
“horizLineMax”: [0.00116],
“N_blemish_count”: [16],
「blemishSizePxls」: [2715,2452,1905,1885,1882,1721,1551,1170,844,690,486,484,415,361,197,2],
「blemishCenter_X」: [1721.2,1557.1,1265.5,1484.8,1404.9,1344.9,1200.9,1049.1,1106.5,950.6,929.7,1340.
「blemishCenter_Y」:[961.3,969.6,964.1,1157.3,959.7,1156.7,1153,1152.6,966.6,965.5,1152,1252.7,...]
}
}

最後三行資料(“blemishSizePxls”, ff )包含相連瑕疵的大小、x 和 y 位置(以像素為單位),按從大到大的排序。

輸出格式的變數名稱相似(但不完全相同)。如有任何疑問、建議或需要其他輸出格式,請與我們聯絡。

保存結果

運行結束後,會跳出一個用於儲存結果的對話框。您可以在其中選擇要儲存的圖形以及儲存位置。預設位置是圖像檔案目錄下的“Results”子目錄。您可以取消勾選“Results”子目錄複選框來變更儲存位置。所選設定會在運作之間儲存。請注意,系統會顯示多個均勻性圖(如果已選擇繪製)。

在勾選或取消勾選複選框之前,您可以先查看輸出圖形。圖形、CSV、XML 和 JSON 結果會儲存到檔案中,檔案名稱由根檔案名稱、繪圖類型和通道(R、G、B 或 Y)後綴以及檔案副檔名組成。例如: IMG_9875_ISO1600_RGB_f-stop_ctrG.png 。根檔案名稱預設為影像檔案名,但您可以使用「結果根檔案名稱」複選框進行變更。請務必按 Enter 鍵。對於大量運行,建議勾選「儲存後關閉圖形」以防止圖形檔案堆積(這會降低大多數系統的運行速度)。按一下「是」或「否」後,Imatest 主視窗將重新出現。

圖形可以儲存為 PNG 檔案(一種標準的無損壓縮圖片檔案格式)或 Matlab FIG 文件,後者可以使用「實用工具」選單中的「開啟圖形檔案」功能開啟。雖然可以對圖形檔案進行編輯(縮放和旋轉),但它們通常比 PNG 檔案佔用更多儲存空間,因此不建議使用。

CSV 和 XML 檔案包含EXIF 數據,EXIF 數據是影像檔案的元數據,其中包含重要的相機、鏡頭和曝光設定。預設情況下, Imatest使用一個名為 jhead.exe 的小程式來讀取 EXIF 數據,該程式僅適用於 JPEG 檔案。要從所有圖片檔案格式讀取詳細的 EXIF 數據,我們建議您下載、安裝並選擇Phil Harvey 的 ExifTool ,具體操作請參閱此處。

詳細資訊請參閱「一致性:Imatest Master」 。

待分析區域通常由roi 參數選擇,該參數在粗調和精調區域調整視窗中設定。 roi 參數包含若干組四個值,每組值對應於影像寬度 nwid_save 和高度 nht_save 的第 n個值。每組四個 roi 值由 [x1 y1 x2 y2] 組成:分別表示定義感興趣區域的左、上、右、下四個像素,該區域相對於左上角定義,而非相對於影像邊緣。因此,如果您希望多個影像的邊界保持一致(例如,希望 ROI 邊界距離影像邊緣 4 個像素),則必須針對每個影像尺寸單獨設定 roi 參數。

瑕疵檢測提供了一種指定相對於影像邊界的 ROI 的替代方法:crop_borders,它位於瑕疵(或均勻性)視窗的底部附近。 crop_borders 包含五個值:1-4 是相對於 LRT 和 B 邊界的邊距(以像素為單位)。第五個值用於啟用 (1) 或停用 (0) crop_borders。當 blemcrop==1 且 crop_borders(5)==1 時,crop_borders 啟用。如果 blemcrop>1 或 crop_borders(5)==0,則忽略 crop_borders,並使用 roi 作為 ROI。