視覺系統與元件

影像預處理能強化並簡化影像處理系統

影像預處理與影像處理系統
白皮書

板載影像和訊號處理

在工業機器視覺應用中,影像擷取卡相當於相機和 PC 間的橋樑。我們的白皮書回答以下 FPGA 影像擷取卡即時影像和訊號處理的相關問題:

  • 即時鏈的維護

  • 硬體程式設計的困難之處

  • 適合採用 FPGA 的應用類型

影像預處理可將獲取的影像進行安全且快速的傳輸
影像預處理可將獲取的影像進行安全且快速的傳輸

在‌影像擷取卡或其他影像硬體上進行的影像預處理,是從相機擷取影像到在影像擷取卡中處理,並以電腦主機輸結果整個影像處理流程的中間步驟。這可以確保影像資料針對特定應用最佳化、安全傳輸、不損失任何個別影像,並確保後續處理運作順暢。影像預處理的目標是對資料進行準備,以簡化後續的處理步驟,並減輕電腦主機的處理負荷。

包括更佳的影像可視化,以強調某些原本訊號太弱的特質或結構,便於進一步處理 (劃分區域、分割與特徵抽取。通常基於整個原始 (raw) 影像。包括根據影像內容自動選取影像區域 (關注區域,ROI)、以及 JPEG 影像壓縮等,後面詳細說明。

用於預處理的處理步驟總是依賴既有相機感光元件的影像品質。這些步驟在影像擷取卡上的 FPGA 處理器上執行,也在其他視覺硬體上執行,例如相機本身、視覺感光元件或嵌入式系統。在這些視覺設備上,VisuaApplet 是一種易於使用的圖形開發環境,可以用來在 FPGA 上實作各種預處理與完整影像處理解決方案的運算,實現可即時運作的系統。

以相機進行預處理
有無 Basler 影像預處理時的 CPU 負載:內含 VisualApplets 軟體與可程式影像擷取卡的系統,可以大幅降低 CPU 負載;因此 CPU 可用於實際系統的控制。

相機中的預處理

像 USB3 Vision 和 GigE Vision 等不需要影像擷取卡的相機,或是嵌入式系統而言,預處理直接在相機與感光元件中進行。當如 GigE Vision 或電腦介面之類的相機介面,只負責傳有限資料,或當使用嵌入式系統以降低電腦計算力需求時,一定須要進行預處理。由於資料量在相機中已經過縮減,傳輸資料與分析所需時間就能縮短,同時提升應用的生產能力。

Basler 相機已提供基本的預處理功能組,例如 debayering、色彩平滑化、影像銳化、雜訊抑制等。此外,也能大大提高影像亮度、細節與銳利度,同時抑制雜訊。如果透過影像擷取卡來延伸預處理作業的範圍,就可以執行像是濾鏡運算與色彩空間轉換等較複雜的運算,減輕 CPU 的負荷。

具備 FPGA 開發環境 VisualAppletss 的可程式化視覺硬體
具備 FPGA 開發環境 VisualAppletss 的可程式化視覺硬體

以影像擷取卡來延伸預處理作業

許多相機介面如 CoaXPress、Camera Link 和 Camera Link HS 等,需要使用影像擷取卡,如要對應即時大量資料時,影像擷取卡也不可或缺。直接在 FPGA 上運算,也能大幅擴張預處理的作業類型。如果影像處理系統有設定標準影像擷取卡的話,依應用而定,常會包括高畫質 debayering、對照表 (Look-up Table, LUT) 和鏡像等功能在內。如果是可程式化的‌影像擷取卡,其功能還更加多元:

  • 損壞畫素補償

  • 白平衡

  • 陰影校正

  • 平面場校正

  • 去除模糊區域

  • 使用平均法或多種濾鏡如平滑濾鏡的影像雜訊抑制

  • 高動態範圍 (HDR) 以補償影像中太亮或太暗的區域

  • 幾何校正以將結構形狀加以常態化,例如以仿射變換來進行

  • 加強對比,例如在影像擷取時立即使用對照表 (LUT) ,或直方圖扁平化或拉伸

  • 色彩空間轉換

  • 濾鏡

這種預處理的變體,也能實作於所有相容於 VisualApplets 的視覺設備,其變化的程度取決於運算能力。這使相機和其他視覺硬體具有即時功能,開啟了新的應用領域。透過 VisualApplets,無需具備 FPGA 中特別的電路和定時知識,即可實作。因此可由應用或軟體工程師來實作。

下載 VisualApplets

Blob 分析與具有影像細節的邊界框 (bonding box)
Blob 分析與具有影像細節的邊界框 (bonding box)

Blob 分析

VisualAppletss 的開發可能性遠超過影像預處理,該軟體可用來解決大量的影像處理工作,如 blob 分析。該分析將相關畫素區域分成彼此分離的物體,並與其背景分開 (分割),並對每個物體指定其特性如區域大小、輪廓長度、邊框坐標等 (分類)。 如果在影像預處理中已經完成這些運算,在資料第一次儲存時,會有很大部分的影像分割也經過移轉。

VisualAppletss 中的 JPEG 運算器可顯著縮減資料量
VisualAppletss 中的 JPEG 運算器可顯著縮減資料量

透過 JPEG 壓縮縮減資料量

近年來,由於感光元件變大變快,再加上彩色處理,從相機傳輸到影像擷取卡的影像資料頻寬不斷增加,例如四鏈路 CXP-12 就達 5 GBps。為處理這些資料,透過 JPEG 壓縮可大幅減少影像資料量。舉來來說,在汽車工業中的雷射焊接過程中,資料生產能力可從 100 Mbps (‌影像擷取卡的輸入頻寬) 降到約 5 Mbps。另一方面,減少傳輸單一畫面所需資料量,也能大幅加快取像速度。這對於在相機中直接執行 JPEG 壓縮的相關應用特別有用,傳輸路徑可以更有效率地運用,不致成為瓶頸。

用於影像與訊號處理的影像處理系統中,影像擷取卡扮演的核心角色
用於影像與訊號處理的影像處理系統中,影像擷取卡扮演的核心角色

致動器與觸發的控制

影像擷取卡使用訊號處理來控制相機觸發、光源與致動器,並透過數位 I/O 介面進行評估作業。複雜的控制迴路並結合預處理是可以做到的。舉例來說,曝光測量可以透過影像預處理,來執行經過校正的照明控制,或觸發相機。

使用特殊濾鏡恢復原本不清晰的影像
使用特殊濾鏡恢復原本不清晰的影像

穩固、快速且高效的影像處理

總而言之,影像預處理可確保計算密集演算法的加速運算,並提高應用效能。此外,這可確保以資料生產能力的提高,來有效處理具有極高解析度和的影像資料,以提高影像分析的準確性和穩健性。高速相機的完整頻寬可以安全傳輸,同時減輕電腦主機的 CPU 與後續軟體分析的負擔。

使用 VisualAppletss,FPGA 上的影像預處理,可以幫終端用戶省下許多心力,且無需任何硬體程式編寫知識。在應用需求發生變化時,也能在短時間內靈活地調整相機、‌影像擷取卡和其他視覺設備的功能範圍,無需安裝新相機。

優勢快速綜覽

  • 使用更簡單的相機介面

  • 增加資料生產能力

  • 透過低成本介面 (GigE) ,遠成具備成本效益的系統設計

  • 對計算密集演算法進行加速

  • 提高應用性能

  • 即時影像處理帶來新應用方式

  • 可使用運算能力較低的較小處理器

  • 最佳化神經網絡

  • 節省 IPC

  • 降低 CPU 負載

  • 提高影像分析的準確性和穩健性

  • 無需內部開發

以最佳結果有效解決影像處理工作的應用範例

印刷控制應用的影像處理系統
印刷控制應用的影像處理系統
  • 一個常見的應用是色彩重建 (debayering) 和色彩空間與位元寬度轉換,可讓相機的 raw 影像以相機介面的完整速度進行傳輸,從而帶來最大的頻寬。因此,影像擷取卡可以提供已處理的影像給電腦主機。

  • 高動態範圍 (HDR)、JPEG 壓縮、自動 ROI 選擇或 3D 雷射三角測量等應用,有效地減少已經處於預處理階段的資料量。

  • 照明與影像失真校正提高影像品質,並簡化後續處理步驟中的分析作業。

  • 物體分割和特徵抽取(斑點、重心、角度、偏心率、影像矩等)可進一步處理分類用的屬性。

  • 在印刷檢測中,高度精確的位置辨識與影像對齊非常重要,這樣才能和原稿進行比對。為維持低偽色,採用次畫素精確幾何失真校正。自動位置檢測可以用來對齊邊緣或影像的特色。

我們的影像擷取卡為您建立精益視覺系統

‍您需要什麼支援?

我們樂意提供產品選擇方面的建議,協助您為應用找到合適的方案。