說明和參考
|
Simatest:概述– Simatest 的簡介。推薦給初學者。 Simatest 範例– Simatest 的使用範例。對比模擬結果和測量結果。比這篇長文更容易閱讀。 影像感測器雜訊—測量與建模—使用原始檔案進行影像感測器動態範圍和Simatest 分析 使用色彩/色調互動式分析-對色彩和灰階測試圖表進行互動式分析 顏色/色調和 eSFR ISO 雜訊測量– 描述如何從原始影像中測量影像感測器雜訊 動態範圍-概述及用於計算動態範圍的 Imatest 模組鏈接 攝影影像中的雜訊—基礎介紹 顏色校正矩陣 (CCM)計算一個矩陣(通常為 3×3),用於校正影像顏色(通常來自 RAW 影像)。 影像資訊指標-基於香農資訊理論的新型測量方法,能夠更準確地預測機器視覺系統的表現。 |
Simatest是 Imatest 25.1 的一部分,可透過Imatest Pilot 計畫取得。
介紹
| 如果您是 Simatest 的新手,我們建議您先閱讀Simatest:概述。 比本頁(說明和參考)更簡潔易讀, 儘管這兩個頁面有很多相同的內容。 |
Simatest-Imatest公司於2025年初推出的相機和ISP(影像訊號處理)模擬器,能夠模擬完整的相機系統,包括鏡頭退化、影像感測器雜訊和ISP管線的影響,從而預測所有重要的影像品質指標(KPI)。它包含大量可以以任意順序應用的ISP處理模組。
| Simatest 旨在加速相機系統和影像處理流程的開發。 並促進探索 鏡頭、影像感測器和影像處理對相機系統性能的影響。 |
Simatest 的輸入包括:
- 影像-來自相機或類比影像(如下所述)
- 相機系統的物理特性包括鏡頭模糊、影像感測器雜訊(以及MTF,由於難以測量且屬於二階效應,稍後添加)和色彩平衡(取決於照明和感測器/CFA光譜響應)。在模擬特定相機時,這些特性不應更改,但可以進行調整以探索「假設」場景。
影像感測器雜訊或許是相機最重要的物理特性。 Simatest的影像感測器雜訊模型是基於對灰階動態範圍圖原始影像的測量,並由Color/Tone進行分析。 或基於EMVA 1288 的結果。它具有很高的精度,能夠針對各種 ISP 設計和環境(包括低照度環境)計算影像系統性能。由於性能是根據以電子為單位測量的感測器和雜訊訊號計算得出的,因此無需進行輻射測量(入射到感測器上的精確光能量) ,儘管我們計劃在不久的將來將其作為可選功能添加。這簡化了Simatest 的操作。 影像感測器雜訊模型在Simatest 概述底部的附錄中進行了總結,並在影像感測器雜訊—測量和建模中進行了詳細描述。 |
我們將重點介紹(相對較少的)物理屬性,這些屬性與設定視窗中(眾多的)ISP 調整項混合在一起。
- 可以自由進行的調整-其中大多數執行影像訊號處理(ISP)。
Simatest框圖
- 從相機取得的未經或經過最少處理的相機影像,無論是否經過去馬賽克處理,都應盡量減少處理(最好不要進行銳利化、降噪等處理)。
- 原始影像用於測量影像感測器雜訊以及 RGB 顏色不平衡。
- 使用經過最小處理的去馬賽克影像,透過將測量的 MTF 與Simatest高斯濾波結果進行匹配來估計鏡頭模糊。
- 不建議將經過高度處理的影像(大多數消費級相機拍攝的 JPEG 影像)用於Simatest輸入。
- 由Imatest測試圖表模組產生的模擬點陣圖測試圖表影像,
- 模擬點陣圖影像文件,這些文件已經過鏡頭設計程式(例如Code V或Zemax OpticStudio)的處理,以包含鏡頭退化——如果可用,建議使用。
雖然Simatest可以處理任何影像,但如果需要定量結果(例如 MTF、色調響應、資訊容量等),建議使用測試圖表影像。建議的測試圖表圖像如下所示。
Simatest 處理包括
- 相機和鏡頭影像劣化,如雜訊、霧(眩光)和模糊,鏡頭劣化被高度簡化,但足以設計和測試 ISP。
- 影像調整,例如曝光(以及增益以模擬改變曝光指數)、伽瑪和拜耳去馬賽克/馬賽克處理,
- 影像增強,例如應用色彩校正矩陣、色調映射(用於高動態範圍 (HDR) 成像)、銳利化(標準或 USM)和雙邊濾波;
- 能夠模擬運動模糊、失焦、低光條件等。
Simatest 結果
- 對於人類視覺——結果可以立即在Simatest中查看。 互動式視窗。您可以單獨查看輸入和輸出影像,也可以並排查看。
- 對於機器視覺-可以在Simatest中查看處理結果,或直接開啟下面列出的Imatest模組,以獲得所有主要的影像品質測量結果。
Simatest包含一個精確的影像感測器雜訊模型,該模型基於原始影像測量值或 EMVA 1288 測試結果。雖然輻射度計算有助於確定相機的絕對靈敏度,但目前無需進行此類計算。未來可能會添加輻射度計算功能。
Simatest 具有可擴充性。我們將根據客戶需求隨時新增處理模組。初始模組集主要著重於影響可見且可測量影像品質的操作。
Simatest可以處理批次影像,自動讀取、處理和保存批次映像。
Simatest 輸入文件
Simatest 的輸入檔可以是任何影像文件,無論是原始影像或去馬賽克影像,只要是Simatest可讀取且列於「影像檔案格式和擷取裝置」清單中的檔案即可。雖然Simatest可以處理任何影像,但測試圖表影像能產生最有用的定量結果。輸入檔主要有三種來源。
測試圖表程式-Imatest測試圖表程式是取得理想測試圖表影像進行完整相機模擬的最便捷來源。以下範例展示如何設定以建立 2400×1600 像素的增強型 eSFR ISO 2017測試圖表。

測試圖表功能可讓您建立 SVG(可縮放向量圖形)或點陣圖(TIFF 或 PNG)圖表文件,這些文件可用於列印實體圖表或分析圖表影像。它包含多種圖表類型,可在「圖案」下拉式選單(左上角)中選擇,並提供豐富的選項。具有連續色調的圖表圖案(例如正弦西門子星形圖案)必須建立為點陣圖文件,並調整尺寸以適應列印或Imatest分析。用於Simatest的圖表最初是 SVG 圖表,必須轉換為點陣圖檔。
以下資訊足以幫助您入門。完整文件請參閱「測試圖表」和「SVG 測試圖表」 。您也可以下載用於開發和測試Simatest 的2400×1600 eSFR ISO PNG 映像(已新增色塊)。
大多數用於檢視或列印的影像都使用 Gamma = 2.2(顯示或色彩空間 Gamma 值)建立。在Simatest中使用這些映像時,請將輸入 Gamma 值設為 0.45 。某些測試圖表設定隱藏在下拉式選單中。我們建議在「設定」下拉式選單中選擇 eSFR LogWedge max = 4000 LW/PH。
建立測試圖表時,可以直接從測試圖表中儲存 8/24 位元 PNG 點陣圖檔案。選取圖表預覽影像(如上圖所示)正下方的「儲存 PNG(點陣圖)檔案」複選框,然後在旁邊的框中選擇PNG 高度(像素) 。
設定完成後,按下 「建立測試圖表」按鈕,並將檔案(您將獲得 SVG 和 PNG 格式的檔案)儲存到方便的位置。
Inkscape (一款優秀的免費軟體)可以開啟SVG文件,用於列印任意尺寸的影像,或將其轉換為位元深度為 8 位元或 16 位元(24 位元或 48 位元顏色)的點陣圖檔案。對於色調響應或動態範圍圖表,我們強烈建議將 SVG 檔案轉換為 16 位元或 48 位元 PNG 或 TIFF(點陣圖)檔案。
- 在Inkscape視窗中,按下「檔案」 (下拉式選單), 「匯出...」按鈕。這將在視窗右側打開一個包含導出設定的區域。
- 將高度(px)設定為所需的像素高度。寬度將保持比例。 (當然,您也可以選擇寬度)。
- 在圖片縮圖下方的方塊中編輯檔案名,然後在右側的方塊中選擇檔案格式。我們建議使用 PNG (*.png) 或 TIFF (*.tiff) 格式。
- 點擊右下角的小齒輪(設定)圖示。這將打開“匯出格式選項”視窗。我們建議將位元深度設定為RGB 16 。
- 按匯出按鈕儲存(匯出)點陣圖影像。

鏡頭設計程式(例如Code V或Zemax OpticStudio)可讓您處理測試圖影像,並使用逼真的鏡頭模型對其進行降級處理(添加模糊、色差和暗角)。測試圖圖像可以使用Imatest Target Generator創建,它是Test Charts的後端,可將 SVG 圖表轉換為點陣圖檔。 [必須驗證:輸入到 Code V 的圖表必須有 gamma = 1(線性 gamma)。在Simatest中使用這些映像時,請將輸入 gamma 設為 1。 ]使用鏡頭設計程式後,除非需要模擬抗鋸齒(光學低通)濾波器,否則不需要 Simatest(模糊)濾波器。
從相機獲取的影像——RAW格式或經過最少處理的影像,使用LibRaw或ReadRaw轉換為 RGB 格式——效果很好。這些影像包括需要調整的開發系統中的實際影像。這些影像本身就存在模糊和雜訊,因此不需要使用(模糊)濾鏡和降噪模組。
推薦測試圖表
36 格圖對於測量影像感測器雜訊(光子傳輸曲線)特別有價值。它們被用於Simatest 概述、 Simatest 範例和影像感測器雜訊——測量和建模中的模擬。 模擬結果與物理測量結果吻合良好,因為光子傳輸曲線、調製傳遞函數 (MTF) 和顏色測量對區域大小相對不敏感。模擬影像和測量影像的總尺寸可以不同;它們無需填滿整個畫面,尤其是在高解析度影像中,因為桶形畸變(來自魚眼鏡頭)或光線衰減(漸暈)可能會成為問題。 您可以在這裡下載該圖像的 48 位元顏色 1901×1600 版本。 對於因鏡頭設計程式而導致影像品質下降的情況,我們建議使用eSFR ISO 色卡(增強版 (3:2) 或擴充版 (16:9)),這些色卡旨在填滿整個畫面,且其像素尺寸應與影像感測器相同。我們提供了兩個 eSFR ISO 色卡的 SVG 文件,它們應該適用於大多數應用。您可以使用Inkscape將它們轉換為點陣圖文件,並根據需要進行裁剪或填充。請注意,由於它們是使用 gamma = 1 創建的,因此看起來比較暗。 包含所有 Simatest SVG 和 PNG 測試圖表影像的壓縮檔案|增強型 eSFR ISO PNG |擴充型 eSFR ISO PNG |
應避免使用消費級相機拍攝的大多數 JPEG 影像,因為它們經過大量處理,包括複雜的色調響應曲線(帶有「肩部」)和非線性、非均勻的雙邊濾波,使得難以獲得有用的結果。

運行 Simatest
在「實用工具」下拉式選單或Imatest主視窗右側的「實用工具」標籤中,按下「Simatest」按鈕(如圖右側所示)。要執行分析,
- 讀取圖像文件,支援批次(多個)文件。
- 設定將沿用上次運行的設定。如有需要,您可以從下文所述的Simatest 設定視窗更新這些設定。
- 更新計算結果。如果在設定視窗右下角勾選了“自動更新”,則計算結果將自動更新。
- 選擇感興趣的結果顯示,包括將處理後的影像傳送到Rescharts 、顏色/色調或影像統計。
按下「讀取映像檔」和「Simatest 設定」的順序無關緊要。
這是更新後的Simatest視窗。在這種情況下,未放大查看的處理後影像與輸入影像非常接近。但放大後並排查看時,它們看起來會截然不同,如下所示。
Simatest 設定視窗可讓您設定分析:您可以選擇處理模組,並調整其參數和操作順序。若要開啟設定窗口,請按下Simatest視窗左上角的「Simatest 設定」按鈕。由於設定會從上次運行中保存,因此您可能無需打開它。設定可以在讀取影像之前或之後進行(但如果要批次處理影像,則必須始終在讀取影像之前進行)。
“設定”視窗包含大量處理模組。其中一些模組,例如“銳化” 、 “色調映射”或“雙邊濾波器” ,具有多種方法(演算法)和相關參數,並以矩形框顯示。而有些模組,例如「曝光」或「增益」 ,最多只有一個相關參數,因此不會顯示在框內。它們在「設定」視窗中的順序與選擇操作的順序無關。
Simatest 設定分為五個區域: 1.輸入處理和降級,2.降級(雜訊、模糊) ,3.色彩和色調調整,4.銳利化/降噪,以及5.影像檔案儲存設定。某些類別存在重疊,例如,由於 cos 4鏡頭陰影既可以添加也可以校正暗角,因此我們將其放在「調整」而不是「降級」中。

右上角的「影像訊號處理 (ISP) 模組」框包含操作順序。空白行旨在方便插入、排列和刪除條目,當設定傳輸到主視窗或進行處理時,這些空白行將被忽略(不顯示)。
影像處理模組
如前所述,更新計算會依照選定的順序套用影像處理模組。根據輸入影像來源的不同,某些降級或增強步驟可能在將影像輸入Simatest之前就已經執行。例如,消費級相機拍攝的 JPEG 影像通常包含非線性、非均勻雙邊濾波器(我們不建議在Simatest中使用此類影像)。雜訊和濾波(模糊)已經隱式地應用於相機擷取的影像(即,您無需添加雜訊和模糊,因為它們已存在於影像中)。
以下是截至 2025 年 1 月可用的處理函數清單。大多數是來自 MATLAB 檔案交換中心的標準 MATLAB 函數,或是Imatest自訂程式碼。註:(L) 僅建議用於線性影像。
| 輸入伽馬 | 輸入影像伽瑪值 |
| 曝光,收益 | 設定曝光和增益倍率。模擬曝光指數(ISO感光度)。 |
| 馬賽克/德莫薩馬賽克 | 對影像進行(重新)馬賽克(RGB → 模擬拜耳原始影像)或去馬賽克處理。 |
| RGB平衡 | 設定各個 RGB 頻道的增益 |
| 霧/暈/朦朧眩光 | 此外,還可用於消除黑色電平偏移 |
| 單色 | 將 RGB 影像轉換為單色影像。 |
| AWB | 自動白平衡 |
| 線性化 | 影像線性化 |
| 伽瑪 | 更改伽瑪值(乘數或目標值) |
| 餘弦4透鏡遮光 | 施加或校正 cos 4透鏡陰影(「漸暈」) |
| 倒置 | 將影像反轉(正 ↔ 負) |
| 噪音 | 高斯噪聲-可以是簡單的噪聲,也可以是感測器噪聲(暗噪聲+光子散粒噪聲) |
| 篩選 | 影像濾波(高斯濾波、運動模糊濾波、失焦濾波、艾里斑濾波) |
| 徑向幾何 | 添加或校正畸變或橫向色差 |
| 中央管理學院 | 顏色校正矩陣(先前已計算) |
| 色調映射 | 調整 HDR 色調以適應有限動態範圍的顯示器。提供 3 種類型。 |
| 銳化 | 銳化影像。 USM 或標準 |
| 雙邊濾波器 | 邊緣保持降噪。 2 種類型。 |
| 非局部均值濾鏡 | 另一種保持邊緣的降噪濾波器SLOW |
| 儲存檔案精度 | 以 8 位元、16 位元等精度儲存文件 |
| 保存檔案偏移 | 保存檔案偏移量 (DN)。用於複製相機檔案的屬性 |
| 儲存檔案飽和度 | 保存檔案飽和度(DN;最大值) |
註:下方右列的 (L) 表示建議使用線性伽瑪 (1)。
| 處理區塊 | 描述 | 功能: 連結中描述 | ||||
| 輸入伽馬 | 輸入 gamma不是處理區塊,它用於追蹤處理的每個狀態下的影像 gamma 值-這很重要,因為某些操作要求影像是線性的(gamma = 1;以(L)表示)。 如果輸入的伽瑪值不正確,幾乎肯定會出現錯誤。對於(線性)RAW 影像,輸入伽瑪值通常為 1;對於可互換色彩空間影像(例如 sRGB、Adobe RGB 等),輸入伽瑪值通常在 0.45 到 0.5 之間。對於「黑盒」影像,可以使用「顏色/色調」功能來測量伽瑪值。 | 伽瑪值、音調響應曲線及相關概念 | ||||
| 初始處理和調整 | ||||||
增益 = 1/曝光量 增益(透過滑桿設定) | 曝光/增益倍增係數(伽瑪=1(線性),可獲得良好效果) 曝光度(由滑桿設定的倍數;通常小於 1)通常在添加雜訊之前應用於模擬影像。它代表實際的曝光變化。 增益 = 1/曝光度通常在添加雜訊之後應用。 有效曝光指數(又稱「ISO感光度」)可透過以下方式調整:先將影像振幅乘以曝光量(通常小於1),然後施加影像感測器噪聲,最後乘以增益= 1/曝光量。這相當於將EI乘以1/曝光量(或增益),從而降低訊號雜訊比。 例如,對於基準曝光指數 (EI) 為 100 的情況,在雜訊出現之前應用曝光量 = 0.125,之後應用曝光量倒數 = 8,相當於將曝光量提高 8 倍至 800。由於光子散粒雜訊(隨訊號的平方根增加)往往占主導地位(除了非常暗的區域),因此訊號雜訊比的下降小於 1/8 (0.125)。 | (左) | ||||
馬賽克 | 去馬賽克功能使用 MATLAB 的demosaic函數,將來自影像感測器的彩色濾光片陣列 (CFA)馬賽克拜耳原始影像(單色格式)轉換為三色 RGB 檔案。此函數採用備受推崇的Malvar-He-Cutler演算法( 與史丹佛大學的版本略有不同)。去馬賽克是一個複雜的過程,可能會產生偽影並影響雜訊功率譜。在運行Simatest之前,也可以使用Imatest 的LibRaw 和 ReadRaw模組對原始相機檔案進行去馬賽克處理。 我們發現MATLAB的去馬賽克函數存在一些缺陷:在不同顏色區域之間的銳利邊界處會出現「拉鍊狀」鋸齒。目前我們還沒有合適的替代方案(截至2025年4月)。 拜耳馬賽克(去馬賽克的逆過程)將三色 RGB 影像轉換為單色、馬賽克狀的偽原始影像,可用於向影像添加雜訊以及研究當Simatest輸入為模擬 (RGB) 影像時去馬賽克的效果。它使用一種簡單直接的演算法(無偽影)將 RGB 影像轉換為四種拜耳排列方式之一:{RGGB、GRBG、GBRG 或 BGGR}。 | |||||
| 添加或校正 RGB 不平衡,這種不平衡常見於原始影像中,通常綠色通道的值大於紅色或藍色通道。 R、G 或 B 的值可以在單獨的方塊中輸入。數值可在“顏色/色調”中找到。乘以該值可以增加不平衡,這適用於在添加雜訊之前;除以該值可以校正不平衡,這適用於在後製流程中。 | (左) | |||||
| 為影像添加霧化效果:相當於添加光暈或朦朧眩光。向影像添加或減去一個恆定值(霧化)。 影像輸出= 霧 + ( 1-霧)*影像輸入霧通常是一個很小的比例,<0.3。 如果存在黑電平偏移,可以使用負的霧度值來消除黑電平偏移。 | ||||||
| 單色 | 使用亮度通道方程式(通常為 0.2125×R + 0.7154×G + 0.0721×B)或三個通道的平均值,將彩色影像( m × n × 3)轉換為單色影像( m × n )。 | |||||
| 自動白平衡 (AWB) | 使用簡單的「灰階世界」演算法執行自動白平衡,這對於大多數測試圖表影像來說足夠了,但對於真實世界的影像來說不夠,尤其是當它們有主色調時。 | |||||
| 線性化(集合) | (相當於建議的 Gamma 目標 1)將影像線性化(移除 Gamma 編碼)。影像可以進行線性化,應用各種操作,然後在 ISP 管線的末端附近重新應用最終的 Gamma 編碼。對於大多數處理模組,例如標準銳利化(銳利化頁面中所述的 1D 銳利化的 2D 版本),建議使用 Gamma = 1。不建議用於 USM 銳化。 | |||||
| 伽瑪 | 對圖像應用伽馬編碼。伽馬值可以透過滑桿(如上圖所示)和包含“目標”和“倍數”的彈出式選單進行選擇。這一點很重要,因為輸入和輸出可能都經過伽馬編碼(通常伽馬值約為 0.5),但許多操作可能需要使用伽馬值 1 執行。對於“倍數”選項, 影像輸出= 影像輸入γ 。對於目標,其中 gamma 的當前值為γ_current , 影像輸出= 影像輸入(γ/γ_current) 。 | 伽瑪值、音調響應曲線及相關概念 | ||||
也稱為鏡頭「漸暈」 (建議伽瑪值設為 1(線性)) 使用標準的 cos 4角方程式添加或校正漸暈(光衰減)。必須使用滑桿輸入鏡頭焦距/感光元件對角線距離。適用於 ISP 處理流程早期(雜訊添加之前)的模擬影像。實際相機影像中已經存在漸暈。 鏡頭陰影可以在後製流程中校正,此時伽瑪值仍為 1。 | (左) | |||||
| 反轉(集合) | 反轉影像,即將其轉換為負片。不常用。最適用於線性影像(建議 gamma = 1(線性))。 | |||||
| 調整大小 | 透過將尺寸乘以縮放比例來調整影像大小。可以使用最近鄰插值、雙線性內插或雙三次插值方法。 | |||||
| 影像退化:模糊、雜訊、幾何形狀 常見於相機拍攝的影像中,且未經處理。運算過程通常是線性的。 | ||||||
雜訊(高斯雜訊) (影像感測器雜訊是相機的一種物理特性) | ![]() 關鍵選擇是 雜訊(高斯雜訊)- 簡單:與訊號無關。散粒雜訊和固定模式雜訊已停用。 雜訊(高斯)-應用與訊號相關的影像感測器雜訊。所有設定均已啟用。請使用“顏色/色調”中的設置,如下所示。 當亮度佔比為 0 時,RGB 通道中的雜訊不相關;當亮度佔比為 1 時,雜訊相關。 (我們仍在完善細節。) 如果將雜訊應用於原始影像(已進行拜耳馬賽克處理後),則設定無關緊要,因為原始影像是單色的。這樣就能得到去馬賽克影像中亮度雜訊和色度雜訊的最佳估計值。
| imnoise :在 HSV V 通道中加入雜訊。參數 sigma [] 和 Luma noise []。 | ||||
| 篩選 | 對影像進行濾波(模糊)處理。通常在新增雜訊之前進行,但也可以在新增雜訊之後進行(這會影響雜訊頻譜)。有四種類型的雜訊可以模擬鏡頭模糊、運動模糊、失焦或繞射。
| imgaussfilt :使用參數 sigma 對影像進行二維高斯濾波, fspecial :建立一個二維核, filter2 , imfilter | ||||
| 徑向幾何 | 添加或校正光學畸變(使用多種模型中的任何一種)和/或橫向色差。 [註:目前, Imatest是Simatest主視窗中的獨立模組,而不是設定視窗中的模組。它會打開處理後的影像,該影像可能失真,也可能未失真。這是一種權宜之計,使我們能夠以較小的修改使用徑向幾何模組。 ] 我們計劃將其部分功能(很可能是橫向色差校正)整合到Simatest中。 | 徑向幾何 | ||||
| 色調增強:校正顏色或應用三種色調映射演算法之一,用於 顯示高動態範圍 (HDR) 影像,可能會使色調響應呈現非線性且不均勻。 | ||||||
截至 2025 年 1 月,尚未很好地整合到 Simatest 中:必須在執行Simatest之前計算 CCM。 | 套用顏色校正矩陣 (CCM) ,此矩陣可在「顏色/色調」中計算並儲存。在應用 CCM 的階段(通常在 ISP 管線的末端附近),使用Simatest處理後的影像進行計算。 CCM 複選框右側的「設定 CCM」按鈕會開啟一個視窗(如右圖所示;按一下縮圖以查看完整尺寸),您可以在其中設定矩陣(從檔案中讀取或從剪貼簿貼上,並選擇選項(線性化等))。 | 顏色校正矩陣描述了 CCM,它是在Color/Tone中計算的。 截至2025年1月,該功能尚未完全整合到Simatest中。由於顏色/色調功能需要針對色卡進行區域選擇,因此完全整合將面臨挑戰。 | ||||
| 請注意,這裡有三個色調映射模組:目的相同,但演算法不同。 | ||||||
| 色調映射 | 為動態範圍有限的顯示器渲染高動態範圍 (HDR) 影像。色調映射是一種用於在動態範圍較窄的顯示器上近似呈現高動態範圍影像的技術。非均勻和非線性 | 色調映射:渲染高動態範圍影像以供查看 | ||||
| 本地色調映射 | 一種基於拉普拉斯濾波的HDR影像色調映射替代演算法。它採用不同的調整參數,產生不同的結果(影像飽和度較高)。該演算法具有非均勻性和非線性特徵。 | 局部色調圖 | ||||
| 對比受限直方圖均衡化 | CLAHE 處理的是影像中的小區域,稱為圖塊,而不是整個影像。每個圖塊的對比都會被增強,使得輸出區域的直方圖與「分佈」參數指定的直方圖近似匹配。然後,使用雙線性插值將相鄰圖塊合併,以消除人為引入的邊界。對比度,尤其是在均勻區域中,可以進行限制,以避免放大影像中可能存在的任何雜訊。非均勻和非線性 | adapthisteq :對比受限自適應直方圖均衡化(CLAHE) | ||||
| 空間增強:銳化和/或降噪。 雙邊濾波器的輸出取決於影像內容—可能具有高度非線性。 | ||||||
| 銳利化 USM(USM 反色蒙版) | 使用非銳利化遮罩(USM)方法銳化灰階或RGB輸入影像。在邊緣處效果最為明顯。 USM的工作原理是從原始影像中減去高斯模糊函數。如果閾值大於0,則低對比區域可能不會被銳化。參見 維基百科。 USM 顯然並非線性;它似乎對伽馬編碼圖像效果最佳。它導致影像資訊指標出現一些不一致的情況。 USM 旨在直接處理無需線性化的彩色空間影像。非線性(令人意外;MATLAB 文件中未提及)。 | imsharpen :USM銳化 | ||||
| 銳化 標準 | 使用二維版本(類似「銳利化」頁面中所述的一維銳利化方法)銳利化灰階或 RGB 輸入影像。銳化效果在邊緣最為明顯。其工作原理是從原始影像中減去一個振幅降低的副本,該副本位於半徑為R 的圓形軌跡上。由於其計算量較小(即速度更快),因此廣泛應用於商用相機。 最適合線性(伽瑪值=1)影像,因為它能保持線性度。建議用於測試銳利化對 影像資訊指標(例如訊號雜訊比增強或邊緣訊號雜訊比增強)的影響。 執行此操作時,2D銳利化內核會複製到剪貼簿。由於標準銳利化並非MATLAB函數,我們在下面的方格中提供了更多說明。 | 自訂Imatest功能 (L) 可以使用 USM 或標準銳利化(但同時使用兩者沒有意義)。 | ||||
| 雙邊濾波器 1 imbilatfilt(MATLAB) | 雙邊濾波由Tomasi 和 Manduchi 於 1998 年提出,是一種用於保持邊緣平滑的非迭代方法。廣泛應用於消費級相機 JPEG 影像。 我們仍在熟悉MATLAB imbilatfilt函數的實作。圖中展示了Simatest 範例中,針對高品質小型數位相機,參數為 {0.0025, 0.7, 5} 的情況。參數:
| imbilatfilt (MATLAB) | ||||
| 雙邊濾波器 2 bfilt2 (Lanman) | 運作良好,但速度很慢。參數:
| bfilter2 (來自 Mathworks 文件交換中心): | ||||
| 非局部均值濾波器 | 另一種邊緣保持降噪濾波器。速度較慢。我們還在熟悉它。參數:
| imnlmfilt (MATLAB) | ||||
| 影像檔案儲存設定:當影像儲存到檔案時套用。 | ||||||
| 儲存檔案 精確度 | 設定
| |||||
| 保存文件偏移量(DN) | 若要新增至儲存檔案中的黑色等級偏移量(以像素為單位,即數字)。 | |||||
| 儲存檔案 飽和度(DN) | 儲存檔案的飽和度等級(最大像素或 DN 等級)。用於在n位容器中表示m位元資料(例如,對於儲存在n = 16 位元檔案中的m = 12 位元數據,飽和度等級為 4095,其中最大 DN 為 65535)。 | |||||
銳利化(標準;非USM)是 Imatest(非 MATLAB)的函數,旨在保持線性。 這是銳化頁面中所描述的一維銳化方法的二維版本。它是在我們嘗試確定使用MATLAB實現的 USM 方法是否適用於二維銳利化時創建的。 濾波函數是非線性的(確實如此)。它也比計算量更大的超音波研磨(USM)更接近典型的相機銳化。 對於銳化半徑R和銳化量A ,定義k sharp = A /( A +1)。濾波器核為 2 R +1×2 R +1 矩陣H (單位為像素),計算方法如下:(1)將距離中心r的每個元素設為 H( r ) = max(|Rr|,0);(2)設定 H = H/∑H,然後將中心元素設為 H(R+1,R+1) = 1。 對於半徑為 2、強度為 3(強銳化)的濾波器,5×5 核為 -0.0092 -0.0409 -0.0535 -0.0409 -0.0092 理想情況下,標準銳利化應該應用於線性(gamma = 1)影像,至少在計算資訊度量時是如此,但我們在模擬的相機JPEG影像中觀察到了這一點。標準銳利化是一種線性操作(只要過度銳利化不會導致影像飽和)。 |
影像感測器雜訊模型本節總結如何測量影像感測器雜訊以輸入到上面描述的Simatest Noise模組中。 完整詳情請參閱《影像感測器雜訊—測量與建模》 。 更多詳情請參閱Simatest 範例和顏色/色調/eSFR ISO 雜訊。 影像感測器雜訊可以透過原始影像進行測量,也可以從EMVA 1288 測量中得出。 影像檔案中的每個像素都由一個數字值DN組成。 Simatest 使用歸一化訊號幅度A = DN / DN <sub>max</sub> ,其中DN <sub>max</sub>是檔案支援的最大數字值。對於去馬賽克影像, DN <sub>max</sub>通常為2 <sup>-1</sup> 位元深度,但對於原始影像則通常不同, 2<sup>-1 </sup> ADC 精度是常見值,但並非普遍適用。 原始影像可能存在黑電平偏移, DN關閉 詳細描述見 影像感測器雜訊-黑電平偏移。請參閱下面的步驟 5 。 噪音模型是 線性感測器 其中,暗噪聲(讀出噪聲)、光子散粒噪聲和光響應不均勻性(PRNU)固定模式噪聲的係數, k<sub> dark</sub> 、 k<sub> shot</sub>和k<sub> PRNU </sub>,是Simatest圖像感測器模型的關鍵參數。它們基於James R. Janesick的《光子轉移DN→λ》,SPIE出版社,2007年,第5章,並在影像感測器雜訊模型中進行了解釋。 噪音計算步驟
2.2 μm 像素的輕巧相機雜訊與輸入像素水準的關係 要在Simatest中輸入的數值顯示在底部附近的一行中,以[Simatest 的 Sark+shot+FP 雜訊係數]開頭。參考上面的雜訊設置,輸入暗雜訊 = 0.000395,散粒雜訊 = 0.009938,固定模式雜訊 = 0.006745。 關於暗噪聲和光子散粒噪聲的計算細節,請參閱「影像感測器雜訊-測量與建模」部分。測量結果與模型結果的比較請參閱下文。 Simatest 範例。 暗噪音實際上是幾個與訊號無關的噪音源的組合,在OnSemi 應用筆記 AND9189/D中進行了描述。電子(約翰遜)雜訊與 (4 kT ) 1/2成正比。 |
使用“更新計算”或Simatest視窗左側“計算”群組(淺藍色框)中的其他按鈕來處理映像。以下是該組中的控制項清單。
| 更新計算結果 | 從輸入影像開始,處理列錶框中顯示的每個影像區塊。處理完成後顯示結果。這是最常見的計算。 |
| 輸入 | 恢復輸入影像視圖。 |
| 更新期間顯示結果 1 秒(複選框) | 執行更新計算時,每個程式碼區塊完成後顯示結果 1 秒鐘。通常建議逐步執行計算。 |
| 逐步計算 | 手動逐步完成計算,每個步驟按一下按鈕。系統會顯示累計結果。 |
| 步驟和顯示單一模組 | 手動逐步完成計算,每個計算區塊按一次按鈕。每個計算區塊完成後,只會顯示目前計算區塊的結果(而非累積結果)。 |
影像處理完成後,會顯示輸出影像以及影像下方淺綠色的分析和檢視區域。點擊影像下方(左側)的「檢視輸入」或「檢視處理後影像」按鈕,即可在兩者之間切換。由於這兩個視圖非常相似,我們展示了更直觀的並排視圖,並放大顯示差異。
並排視圖
並排視圖可讓您並排比較輸入影像和處理後的影像,即它們緊挨著顯示。點選「檢視輸入」或「檢視處理後」 (影像下方,左側)下方的「並排檢視」複選框。首次選取該複選框時,兩張影像將完整顯示。如果您裁切其中一張影像,另一張影像也會被裁切成相同的形狀。這樣可以進行更有意義的比較。
這是Simatest對 36 色塊動態範圍圖表影像的顯示(已裁切並以並排視圖顯示,左側為原始影像,右側為處理後影像)。原始圖像直接來自測試圖表。處理後的影像添加了模糊、雜訊和銳化效果。

結果
處理後的影像可以進行多種操作。
您可以嘗試不同的處理設置,並且
- 使用各種影像顯示方式,特別是並排視圖,可以立即看到它們對視覺影像品質的影響,或者
- 直接在下列程式之一中以 16/48 位元 uint16 格式開啟處理後的影像,以獲得定量效能測量結果。
使用「儲存處理後的影像」功能,您可以將處理後的影像儲存到檔案中,精確度可在「設定」視窗中選擇(通常建議使用 16/48 位元),然後將其匯入Imatest模組進行分析。您可以使用剪貼簿進行複製和貼上,但我們不建議這樣做,因為imclipboard功能僅支援 8 位元檔案深度。
Simatest 範例中展示了Color/Tone和Rescharts的主要結果。
保存拜耳原始(已重新馬賽克;未去馬賽克)圖像文件
點擊「檔案」選單,選擇「儲存偽原始(未去馬賽克)影像」 ,即可將影像儲存為合成的拜耳RAW格式或其他幾種格式之一。輸出可以是標準影像檔案格式,也可以是純二進位檔案。此時會彈出一個對話框,其中包含多個選項。請注意,拜耳(重)馬賽克和去馬賽克功能是作為ISP處理模組提供的。
馬賽克或通道選擇:無(普通彩色檔案輸出)、重新馬賽克(拜耳格式)、RCCC(紅-清-清-清):R 亮、RCCC(紅-清-清-清):R = C/3、單色(Y = 亮度)、單色(平均值:等權重)、紅、綠、藍。對於重新馬賽克(建立拜耳 RAW 檔案),應選擇重新馬賽克(拜耳格式)。
RmCn 中的紅色圖示可讓您選擇四種拜耳配置之一。
Gamma 調整功能可讓您調整輸出曲線的 Gamma 值。將其設為 1 表示不做任何更改。使用 2(或 2.2)可將典型的色彩空間 Gamma 值轉換為線性 Gamma 值(Gamma = 1)。
儲存檔案格式可讓您選擇標準影像檔案格式(PNG、JPG(90% 品質)、TIF(大尺寸)、BMP、8 位元二進位或 16 位元二進位)。二進位檔案可以讀入通用讀取原始資料。
綠色通道增強功能可讓您增強綠色通道,使合成的 RAW 影像更接近真實的 RAW 影像,而真實的 RAW 影像通常綠色最強。提供多種藍/紅通道等級可供選擇。
選擇“儲存”後,會彈出一個對話框,讓您選擇儲存位置和檔案名稱。預設檔名是root_file_name_png (帶有所選副檔名)。
Simatest視窗底部的控件
分析和視圖(淺綠色)框單獨列在下方。控制項按列優先順序從左到右排列。 “查看圖像/處理後圖像”和“並排視圖”按鈕已在前面說明。
| 儲存處理後的影像 | 儲存處理後的文件,位元深度請參考「設定」視窗右下角淺綠色框中的設定。常用功能。 |
| 圖片統計 | 在影像統計模組中開啟影像,該模組可以執行橫斷面分析、直方圖分析、傅立葉變換分析等等。 |
| 幫助 | 打開線上幫助視窗。 |
| 同時儲存設定(複選框) | 將設定與處理後的圖像檔案一起儲存。 |
| 讀取影像檔案(2) | 讀取第二個映像檔(到 im_processed 中),以便與原始檔案(保留在 im_input 中)進行比較。 |
| 處理影像 > clipbd | 將處理後的影像複製到剪貼簿。但受限於位元深度。 |
| 縮小 | 縮小影像(顯示完整影像)。當並排顯示出現畫面構圖問題時,這會很有幫助。 |
| 放大裁切 | 這指的是淺綠色「分析和視圖」框中的「裁剪」功能(如下所述),該功能用於 MTF 和 SSIM 測量。此按鈕可讓您放大裁切區域。您也可以使用標準的點擊和拖曳操作來放大影像,但僅用於顯示,不會影響 MTF 計算。 |
| 已處理 > 輸入 | 將處理後的影像移到輸入端,以便分析從新的(先前已處理過的)影像開始。 |
| 儲存螢幕 | 查看和/或儲存螢幕截圖。必須指定影像檢視器。 |
| 儲存設定 | 將目前設定儲存到標準的 imatest-v2.ini 檔案中。也可以在「設定」視窗中將設定儲存到指定名稱的檔案中。 |
| 出口 | 再見! |
實用工具和下拉式選單
ISP 模擬器視窗頂部下拉式選單中的幾個實用程式與視窗中的按鈕重複(故意冗餘)。
| 下拉式選單 | 姓名 | 描述 |
| 文件 | 顯示和/或儲存螢幕 | 在圖像檢視器(建議使用Irfanview )中顯示螢幕,並可選擇儲存。此功能存在於多個互動式模組中。 |
| 保存圖片 | 儲存處理後的影像。通常情況下,影像將以全精度儲存(除非選取「8 位元最大值(如下)」選項)。 | |
| 保存偽原始/重新鑲嵌影像 | 影像可儲存為偽RAW(重新馬賽克)格式或特殊格式,包括拜耳陣列、RCCC格式,也可選擇特定通道。選項眾多。請參閱“合成RAW圖像” 。 | |
| 儲存影像為單色 | 將影像(可能是彩色影像)儲存為單色影像。 | |
| 將影像儲存為 HDR 格式 | 將影像儲存為HDR (高動態範圍)格式 | |
| 交換位元組序(16 位元、32 位元輸入) | 交換像素內字節的順序(在極少數情況下字節順序錯誤時很有用) | |
| 以 8 位元最大精度儲存影像文件 | 預設未選取(關閉)。如果選中,影像將以 8 位元精度保存。 (通常應取消選取此項目)。 | |
| 將影像儲存為 HDR 格式 | 將影像儲存為HDR (高動態範圍)格式 | |
| 看法 | 色條(灰階或彩色) | 灰階或彩色:用於 SSIM 和 PSNR 顯示。色條中的顏色可在「選項 II」中變更。 |
| 莊稼 | 允許您選擇影像分析操作(MTF、SSIM 等)的裁切區域。與分析和檢視區域中的「裁剪」按鈕相同。 | |
| MTF 對數軸 | 在線性軸和對數軸之間切換 MTF 顯示。 | |
| 分析 | 大多數功能與「分析和檢視」部分中的按鈕重複,但也有一些新增功能。 | |
| 圖片統計 | 呼叫圖像統計模組,查看圖像統計信息,例如直方圖和橫截面輪廓。 | |
| 徑向幾何 | 將處理後的影像傳送到徑向幾何模組,該模組可以傳回進一步處理的影像,其中包含添加或校正的光學畸變、橫向色差和/或旋轉。 | |
| OCR | 使用Matlab 的 OCR 函數進行光學字元識別 | |
| 臉部偵測 | 使用下面所述的 Matlab CAMShift例程。 | |
| 探測人員 | 使用下文所述的 Matlab detectPeopleACF例程。效果不如人臉偵測。 | |
| 幫助 | 開啟包含各種 ISP 模擬模組所描述的網頁。 | |
分析和視圖控制項(位於 Simatest 視窗底部附近的淺綠色框中)
顯示方式可透過影像下方的按鈕或「分析」下拉式選單進行控制。您可以選擇以視覺化方式顯示輸入影像或處理後的影像,也可以選擇以計算結果顯示(對輸入影像和處理後的影像進行分析比較)。
| 圖片統計 | 在影像統計模組中開啟影像,該模組可以執行橫斷面分析、直方圖分析、傅立葉變換分析等等。 |
| 雷沙茨 | 根據圖表類型,對處理後的影像進行 MTF(SFR)和其他類型的分析。 |
| 顏色/色調(互動式) | 對處理後的影像中的灰階或彩色圖表進行色調、雜訊或動態範圍分析。 |
| MTF | 將處理後/輸入影像的MTF顯示為空間頻率的函數。對裁剪敏感。 |
| MTFnn | 顯示處理後/輸入影像的 MTF70-MTF10 極座標圖(空間頻率,其中 MTF 為低頻值的nn %)。 |
| MTFnnP | 顯示處理後/輸入影像的 MTF70P-MTF10P 極座標圖(空間頻率,其中 MTF 為峰值的nn %)。 |
| SSIM | 顯示處理後影像和輸入影像的結構相似性指數(SSIM),該指數在SSIM模組頁面中有詳細說明。與 PSNR 相比,SSIM 與視覺差異(影像退化)的相關性更高。 |
| PSNR 和差異 | 顯示峰值訊號雜訊比以及處理後影像與輸入影像之間的差異。 |
| OCR | 使用Matlab 的 OCR 函數對處理後的影像進行光學字元辨識的結果 |
| 莊稼 | 裁剪影像以進行計算(SSIM、PSNR 和 MTF)以及顯示。開啟Imatest標準的粗裁切和精裁剪視窗。此操作會影響 MTF 曲線(與影像相關)或平均 SSIM 計算等結果(但詳細的 SSIM 圖不受影響)。按下“裁剪”按鈕會啟用“裁剪”按鈕下方的“縮放以裁剪”按鈕。若要取消裁剪,請按下“裁剪”按鈕並選擇整個影像。 |
| 臉部偵測 | 使用 Matlab CAMShift程式進行人臉偵測的結果。 |
| 探測人員 | 使用下文所述的 Matlab detectPeopleACF例程進行人員偵測的結果。效果不如人臉偵測。 |
左側影像下方的「檢視輸入」按鈕可在「檢視輸入」 (選取處理後的影像)與「檢視處理後的影像」(選取輸入影像)之間切換。這樣可以快速直觀地比較兩張圖像,不過並排視圖(如上圖)效果更佳。切換影像時,縮放比例保持不變。 「影像統計」 、 「Rescharts」和「色彩/色調(互動式)」會將處理後的影像直接傳送到對應的分析模組(無需儲存檔案)。此區域中的大多數其他按鈕用於顯示計算結果。
SSIM顯示的是結構相似性指數, SSIM模組頁面對此有詳細介紹。它的主要用途是衡量影像壓縮對檔案保存(例如,不同品質的 JPEG 檔案)和資料傳輸造成的可見影響(即影像品質下降)。
MTF (調製傳遞函數;等效於空間頻率響應)使用類似於隨機模組中計算的二維傅立葉變換來計算處理影像和輸入影像之間的傳遞函數,但有一個例外:如果需要有效的 MTF 結果,則不應在模擬中添加噪聲,因為二維 MTF 計算對噪聲極為敏感。
高頻滾降是由高斯濾波器引起的。
您可以透過在Simatest設定中移除雜訊和濾波器(高斯) ,然後點擊「更新計算」 ,來查看僅使用銳利化掩模 (USM) 的 MTF(本例中半徑 = 1.5,強度 = 2.5)。銳化掩模的頻譜響應與「銳化」頁面中描述的標準銳化不同:它的響應不是週期性的,而是上升到強度 + 1 的漸近水平並保持較高水平。您可以使用Simatest來比較這兩種銳利化演算法。這張散落硬幣圖表的圖像,周圍環繞著大片灰色區域,雜訊相對較低。有些影像的雜訊則大得多。
這很好地說明如何使用Simatest來探索加工塊對外觀和測量結果的影響。
光學字元辨識(OCR)
Imatest 5.0中新增了 OCR 功能,它使用Matlab 的 OCR 函數,該函數是Tesseract-OCR的一個實作。使用方法如下:
- 閱讀包含感興趣文字的圖片。
- 如有需要,對影像進行處理。處理方法包括對影像進行降級處理(例如模糊、雜訊等),以觀察其對偵測的影響;或進行影像增強處理(例如銳利化掩模、雙邊濾波等),以觀察是否可以提高偵測效果。
- 將圖像裁剪到文字區域(如果圖像的大部分區域包含除文字以外的其他元素,強烈建議這樣做),然後
- 點選OCR 。
這將開啟 OCR 窗口,並對影像的裁剪區域執行文字辨識操作。下方顯示了右側範例影像(雜訊(高斯)= 0.002;高斯濾波器 2 = 0.7,影像略有劣化)的識別結果。您可以下載此影像並進行實驗,以了解各種劣化和增強處理如何影響 OCR 效能。
請注意,Matlab 的 OCR 效能並不出色。即使是看起來清晰易讀的文本,識別效果也很差,尤其是在字體小於 12 磅的情況下。其性能與一些免費或低成本的 OCR 程式(例如gImageReader ( Tesseract-ocr 的圖形使用者介面前端)和TopOCR )相當。

可供下載的完整版本。
左側範例影像包含一組字元(QWERTYUIOPASDFGHJKLZXCVBNM1234567890),字號從 20 磅到 7 磅不等,字體為 Calibri 常規、粗體和負粗體。這些字元用於汽車牌照。該文件(此處)使用 Microsoft Word 建立。影像的其餘部分是增強型 eSFR ISO圖表的一部分,包含楔形區域和兩個高對比度正方形。這些區域可用於將 MTF 測量值與 OCR 效能關聯。

OCR設定
可以透過輸入字元子集來限制有效輸出字元(如果字元子集為空,則允許所有字元),然後按“計算 OCR”按鈕,從而提高字元子集結果。對於範例影像,子集包含拉丁字母大寫和數字(汽車牌照上的常見字元)。但改進效果甚微。
QWERTYUIOPASDFGHJKLZXCVBNM1234567890
標準OCR對車牌辨識效果不佳。 Matlab文件交換中心提供了一些車牌辨識程式。如果這些程序效果良好且許可允許,我們可能會添加其中一兩個。
預設顯示文字(如圖所示)。您也可以選擇「置信度及單字」 ,該選項會顯示單字置信度和單字。以下是顯示內容的幾行範例。
0.8545 QWERTYUIOPASDFGHJKLZXCVBNM1234567890
0.8361 QWERTYUIOPASDFGHJKLZXCVBNM123456789O
0.9018 18
0.7842 QWERTVU|OPASDF6HJKLZX(VBNM1234567890
0.8339 16
0.7468 QWEKTYUIOPASDFGHJKLZXCVBNM1234567B90
0.8254 14
0.7252 QWERYYUIOPASDFGI-1JKLZX(\/ENM1Z34567E9(!
0.7784 12
0.5777 QWERTYUWDDASDFGHJI(LZXCVBNM113A567E9u
0.6549 11
0.6276 uwEuHu\onAsur:.r<n<.zxn'aNM:23-4ss7s9u
0.7658 米
複製到剪貼簿您可以將目前顯示內容複製到剪貼簿,以便在文字編輯器或其他應用程式中使用。
儲存結果會儲存目前顯示內容。
可以在「設定」下拉式選單中選擇可變寬度或固定寬度字型。
人臉和人物偵測
人臉和人物偵測功能可從「分析」下拉式選單中呼叫。目前兩者都使用 Matlab 的預設值。 (我們將來可能會添加選項視窗。)參見
使用 CAMShift和detectPeopleACF進行人臉偵測和追蹤
人臉偵測的效果比人物偵測略好。這裡有一個例子,圖片是從http://epaperpress.com/portfolio/columbia.html被偷走的。 Imatest 的作者(他看起來有點狼狽)在左邊。點選「更新計算」即可移除標註(重置影像)。


資源-其中大多數需要大量的程式設計工作。
Ansys SPEOS 模擬器使用 Zemax 輸出。
史丹佛大學 ISET開源影像處理函數需要相當的程式設計技能










