本研究では、Ultra96-V2ヘテロジニアスプラットフォーム上でのSobelエッジ検出アルゴリズムのFPGAベースの実装を提示し、256 × 256から2560 × 1440までの画像解像度におけるリソース利用率、電力、および速度を評価します。提案されたアーキテクチャは、リアルタイム画像処理アプリケーションにおいて、リソースのスケーリングがサブリニアであることを示しています。
このコンテンツを表示するには、JoVEへの購読が必要です。 または、無料トライアルをお申し込みください。
本研究では、Ultra96-V2ヘテロジニアスプラットフォーム上でのSobelエッジ検出アルゴリズムのFPGAベースの実装を提示し、256 × 256から2560 × 1440までの画像解像度におけるリソース利用率、電力、および速度を評価します。提案されたアーキテクチャは、リアルタイム画像処理アプリケーションにおいて、リソースのスケーリングがサブリニアであることを示しています。
エッジ検出はコンピュータビジョンの主要な領域であり、様々な応用分野において不可欠な要素となっています。エッジ検出によってエッジの特定が可能になります。エッジは画像における重要な特徴であり、画像から主要かつ識別的な情報を抽出するのに役立つ重要な属性を表しています。エッジ検出のハードウェア実装は、高速であり、最小限のリソースを使用し、低消費電力である必要があり、さらに異なる画像解像度に適応できなければなりません。本論文では、低解像度画像からフルハイビジョンまでの適応的な画像解像度に対応したSobelエッジ検出を実装し、最新のヘテロジニアスField Programmable Gate Array (FPGA) プラットフォームであるUltra96-V2を使用しています。結果として、低解像度画像ではLook up Tables (LUTs)、Flip Flops (FF)、Digital Signal Processor (DSP)、Block Memory (BRAM) を含むFPGAオンボードリソースのわずか5%しか利用されない一方で、高解像度画像ではオンボードリソースの約23%が消費されることが明らかになりました。これは、低解像度から高解像度の画像に移行した際のリソース利用率の増加が20%未満であることを示しています。さらに、最高解像度での消費電力は約2 Wであり、最大動作周波数は高解像度画像で136 MHz、低解像度画像で166 MHzと記録され、周波数の低下はわずか18%にとどまりました。提案されたアーキテクチャは、最新のヘテロジニアスFPGAアーキテクチャの利点を活用することで、画素数が56倍に増加しても、リソース利用率の増加が20%未満、速度と電力の低下が20%未満というサブリニアなリソーススケーリングを実現しています。したがって、適応的な解像度能力と低リソーススケーリングを組み合わせた本設計は、高品質な画像処理を必要とするリアルタイムエッジ検出アプリケーションに特に適しています。
エッジ検出は、今日、さまざまなアプリケーション領域で使用されているほぼすべてのコンピュータビジョン技術において極めて重要な要素となっています1。エッジ検出は特徴抽出の段階であり、画像から有益で特徴的な詳細を抽出することを目的としており、幅広いシナリオに適用可能です2。画像内のエッジは強度が急激に変化している領域を示しており、したがって、その画像に関する重要かつ特徴的な情報を提供します。このプロセスにより、不要で無関係な詳細を排除し、特定のアプリケーションのためにさらに処理可能な、不可欠で固有の要素のみを保持することが可能になります。
図1に示すように、エッジ検出の重要性は、画像セグメンテーション、物体検出および認識、特徴抽出、画像強調、物体識別、医療画像診断、監視、産業オートメーション、自動運転、拡張現実、およびロボティクスを含む様々なタスクへの適用によって強調されています2,3,4,5,6.
エッジ検出には、Sobel、Prewitt、Roberts、Cannyなどの複数の手法が存在します。これらの手法の中でも、Sobelエッジ検出は、適用が容易で実装の複雑さが少なく、エッジ検出における精度が高いため、非常に有用です3,4,5,6。Sobelエッジアルゴリズムでは、以下に示すように、それぞれカーネルGxおよびGyを用いて、画像の水平方向および垂直方向の勾配を決定します2,4。
Gxはx方向のエッジを強調し、Gyはy方向のエッジを強調します12,13。これらを組み合わせることで、画像内のすべてのエッジを完全に定義できます6。カーネルを用いた畳み込みプロセスとスライディングウィンドウを用いて、画像にSobelエッジ検出を適用します。具体的には、例えば3×3ピクセルのウィンドウを画像から1つずつ取り出し、このウィンドウをフィルタ行列と畳み込みさせることで、中心ピクセルの新しい値を算出します。画像全体をこの方法で順次処理します。Sobelエッジ検出では、x方向のエッジ抽出用とy方向のエッジ抽出用の2つのカーネルが使用されます。すべてのエッジを取得するために、これら2つの結果を統合します。Sobelエッジ検出は正確で信頼性の高い結果をもたらし、前処理を行うことでさらに精度を高めることができます4,5,15。Sobelエッジ検出の全工程は図2で解説しています。
報告されているすべての文献はこの分野のエッジ検出に重要な貢献をしていますが、主要な研究のほとんどは低解像度の画像を用いています。対して、本論文で提示する手法では、低解像度画像(256×256ピクセル)から高解像度画像まで、さまざまな画像解像度を対象としています。 × 256) からフルハイビジョン(HD)画像解像度(2560 × 1440)。したがって、異なる画像解像度におけるSobelエッジ検出アルゴリズムのハードウェア実装を調査することは、多様な画像解像度を伴うリアルタイムのシナリオに適用した際の実装効率を理解する上で極めて重要である。フィールドプログラマブルゲートアレイ(FPGA)は、迅速なプロトタイプ開発に適していることや、ハードウェア構成全体を変更することなく容易に設計変更が可能な再構成可能性などの利点があるため、ハードウェア実装に適切なプラットフォームとして認められている。6,7,8,9,10,11,12,13さらに、FPGAは並列処理およびパイプライン処理を実現できる可能性を有しています。パフォーマンス指標が最適化され、プラットフォームが検証されれば、その設計を専用集積回路(ASIC)の実際の製造へと進めることができます。14,15FPGAのもう一つの重要な特徴はその再構成可能性であり、これにより設計者はハードウェアを交換することなく、いつでも製品設計に変更を加えることができます。設計者がVHDLやVerilogなどのハードウェア記述言語に習熟していれば、チップを再プログラミングするだけで済み、それに要する時間と手間はごくわずかです。4,6,13,16,17FPGA実装の解析において、検討される主要なパラメータは、速度(最大動作周波数)、リソース利用率、および電力効率です。 表1FPGAの分野で発表された文献数の増加を示しており、2006年から2024年にかけてFPGAに関する出版物がどのように進化してきたかがわかります。これにより、FPGAの研究領域が現在はリアルタイムアプリケーション、拡張現実、エッジコンピューティング、およびその他のハイエンドアプリケーションへと移行していることが明確に示されています。13,14,15,16,17,18,19,20,21,22,23.
表2は、2020年から2025年にかけてのFPGA上でのSobelエッジ検出実装に関する既存文献の研究内容をまとめたものです。表2では、各参照論文で使用されたFPGAボード、実装されたアルゴリズム、設計手法、知見、指標、適用分野、および課題について記載しています。
著者ら4は、エッジ検出の精度を向上させるために8方向Sobelエッジ法を用いることを推奨したが、提案手法ではリソース消費量が増加したと報告している。Navinkumarらは、従来のSobelエッジ検出に含まれる乗算や平方根といった複雑な数学的演算を削減する手法を用いることで、オンボードリソースを節約し、速度を向上させている9。また、ある著者ら17は、先進運転支援システム(ADAS)において車線を識別するためにSobelエッジ検出アルゴリズムを用いたことを記録している。彼らの目的は、処理時間を短縮しつつ検出速度を上げることであった。全体として、エッジ検出の利用は、将来的な関心領域(ROI)抽出のための信頼性の高い手法として提案されており、これは、不要な情報を無視して画像内の必要な領域のみを抽出する必要があるさまざまなアプリケーションにおいて非常に有用であると考えられる。共通して報告されている課題としては、リソースおよびメモリ利用率の上昇、ノイズへの敏感さ、高い計算コスト、および高解像度画像に対するスケーラビリティの制限などが挙げられている4,5,6,11,12,13,21,22,23。
本研究では、従来のSobelエッジ検出アルゴリズムをUltra96-V2 FPGAボード上に実装し、256 × 256の低解像度から2560 × 1440のフルHD解像度まで、さまざまな画像解像度において検証を行いました。Ultra96-V2は、FPGAのプログラマビリティと強力なArmプロセッシング(Cortex-A53/R5)を組み合わせた、高性能アプリケーション向けのボードです。このボードは2018年に初めてリリースされ、16 nm FinFETテクノロジーノード18を採用しています。
再現性を確保するため、すべての実装は、高位合成(HLS)用のVivado HLS 2019.2と配置配線用のVivado 2019.2、およびUltra96-V2リソースからリリースされたPYNQイメージで構成される標準的なツールチェーンを用いて行われました。HLSコードを利用してSobelエッジ検出IP(Intellectual Property)を導出し、これをエクスポートしてVivado設計スイートに統合しました。この IPはPL(Programmable Logic)部に実装され、FPGAのPS(Processing System)部がデータ転送および制御メカニズムを担いました。PSとPLのインターフェースにはAXIプロトコルを使用しました。報告されたすべての指標(周波数、リソース利用率、電力)は、HLSの推定値ではなく、実装後のレポートから取得したものです。実装設定は一貫して維持し、実験を通じて画像解像度のみを変更しました。
本研究の重要な成果は、低消費電力、低リソース利用率、および高速性にあります。結果として、高解像度画像に対するオンボードリソース利用率は20%未満(Look Up Tables (LUTs) 18%、Flip Flops (FF) 11%、メモリ 3%、DSP 10%)であり、エッジ検出は中間ステップに過ぎないため、あらゆるコンピュータビジョンシステムで期待される、より多くの画像処理機能を統合できる十分な空き容量があることが示されました。また、消費電力は約 2 Wであり、最大動作周波数は 144 MHzと報告されています。さらに、画像サイズを約56倍に拡大しても、リソース利用率の増加は約20%にとどまることが結果から分かります。速度および消費電力の低下も約20%のみでした。この分析は、過去の文献では報告されていない異なる視点からアルゴリズムを詳細に調査したものであり、したがって、本実装がリアルタイムアプリケーションに適しており、画像を小さなサイズや低解像度に制限する必要がないことを示しています。解像度の制限は、エッジ検出後の後続ステージで必要となる情報量を確実に低下させるためです。
本研究の新規性はアルゴリズム自体にあるのではなく、HLSベースの実装手法の利点を活用し、現代のヘテロジニアスFPGAアーキテクチャにおける様々な画像解像度での伝統的なSobelエッジ検出アルゴリズムの性能評価に焦点を当てている点にあります。本論文の主な貢献は、FPGA上に実装されたハイブリッド手法を適用し、アーキテクチャのPSセクションとPLセクションの間でワークロードを効果的に分散させることで、設計が異なる解像度に容易に適応できるようにしたことにあります。もう一つの貢献は、画像解像度の変化に伴いリソーススケーリングがどのように変化するかを評価する実験を行い、異なるセットアップや多様なアプリケーションにおける性能の理解に寄与したことです。
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
1. HLSツールによるSobelエッジ検出の実装
2. 抽出したHLS IPを用いたFPGAプラットフォームUltra96-V2へのSobelエッジ検出の実装
3. FPGAボードのプログラミング
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
このセクションでは、Ultra96-V2におけるSobelエッジ検出の設計で得られた結果について述べます。 図 5 以下に、HLSシミュレーションを通じて得られた入力画像と出力画像を示します。使用した画像は512 × 512サイズの標準画像です。これらの結果は、Sobelエッジ検出用に記述されたHLSコードが機能的に正しいことを示しています。結果として得られた画像では、エッジが明確に視認できなければなりません。
表3に、FPGAパーツとしてxczu3eg-sbva484-1-eを使用したUltra96-V2における合成レポート、および生成されたタイミングとリソース利用率のパラメータを示します。このレポートには、設計がユーザーの指定したタイミング制約を満たしているかを示すタイミング関連の情報が含まれています。タイミングサマリーによると、推定時間は8.544 nsであり、ターゲット時間である10 nsを下回っているため、設計がユーザー制約を満たしていることが明...
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
本論文では、コンピュータビジョンおよび画像処理の多岐にわたる分野のさまざまなアプリケーションにおいて不可欠な要素である、Sobelエッジ検出アルゴリズムの実行に焦点を当てます2,3,4,5,6。Sobelエッジ検出の実装はVivado HLSツールを用いて行われ、ハードウェア記述言語に依存せず高位言語でのコーディングを可能にしています。Vivado HLSコードはUltra96-V2ボード上で動作します。実装後の結果から、実装された設計が高解像度画像をサポートし、周波数136 MHz、消費電力2 Wで動作し、ボード上の総リソースの20%未満しか使用しないことが示されました。また、異なるアプリケーションによって異なる画像サイズの使用が求められる場合があり、エッジ検出は通常、複雑な設計パイプラインにおいて非常に頻繁に行われる中間ステップであるため
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
著者は利益相反がないことを宣言します。本原稿の作成において、人工知能(AI)ツールは使用されていません。
著者は、謝辞として宣言する事項はありません。本研究は外部資金による援助を受けていません。
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
| 名前 | 会社 | カタログ番号 | コメント |
|---|---|---|---|
| Ultra96-V2 FPGAボード | Xilinx | 2018年導入 | 歩行者検知アルゴリズムの実装に使用したハードウェア実装プラットフォーム |
| Vivado HLS | AMD | 2019.2 | インテレクチュアル・プロパティ (IP) をエクスポートするために、論文内の歩行者検知コードの高レベルプログラミングに使用した高位合成ツール |
| Vivado | AMD | 2019.2 | Sobelエッジ検知アルゴリズムをUltra 96 v2 FPGAボードに書き込むために使用したFPGAプログラミングツール |
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。