プロセッサ最新テクノロジ2017 シリーズ17

リアルタイム・高精度・インテリジェントなマシンの“目”を実現する
ザイリンクスのエンベデッド・ビジョン


 カメラやイメージ・センサから,対象の画像情報をデータとして取り込み,画像処理で自動的に判定/判断を行うマシン・ビジョンは,画像検査装置やオートメーションなど産業機器の分野で以前から広く用いられてきました.最近では,カメラやセンサの高性能化,小型化,低価格化などが進み,それに伴い,画像処理や判定/判断を行うためのコンピュータ・システムやアルゴリズムなどのソフトウェア開発環境も進化が進んでいます.そこで,今回は,ザイリンクスでシニアマーケティングマネジャーを務める神保直弘氏にザイリンクスのエンベデッド・ビジョンへの取り組みについて解説していただきました.執筆:宮﨑 仁

ザイリンクス
シニアマーケティング マネジャー
神保直弘氏


1.新しい市場が広がるエンベデッド・ビジョン
 最近では,ワークステーションやハイエンドのPCで構成されるマシン・ビジョン・システムだけでなく,FPGAやGPU,高性能プロセッサなどを活用した,さまざまな組み込み機器にもエンベデッド・ビジョンの選択肢が広がり用途も大幅に拡大しています.用途として,ADAS(先進運転支援システム),監視カメラ,ドローン,ヘルスケア,さらには,人間の感覚や体験をコンピュータで拡張・強化するAR/VRなど,自動車,科学,産業,医療,コンシューマなどあらゆる分野での利用が拡大しています.画像の解像度もQVGA,VGAから720p,1080i,さらには4kへと上昇し,動画のフレーム・レートも15fps,30fps,さらには,ハイスピードの60fps,120fps,240fpsなども用いられています.それにともない,処理すべきデータ量も増大しています.
 さらに,ここ数年注目を集めているのはIoTへの利用です.最近のIoTシステムは,さまざまな場所にあるエッジ・デバイスが収集したデータをインターネット経由でクラウド上に集積し,ビッグ・データとして処理することで,今までの単体システムでは得られないデータ分析が可能になります.エンベデッド・ビジョンが取得した画像データも,このようなビッグ・データとしての処理が期待されています.
 ただし,一般的なエッジ・デバイスは,センサからの生データをクラウドに流すことしかできません.エンベデッド・ビジョンが扱う画像データはサイズが桁違いに大きく,すぐにトラフィックの上限に達し,さらに,クラウド・サーバ側での処理の負荷が急増してしまう問題が出てきます.そのため,エンベデッド・ビジョンをIoTのエッジ・デバイスに適用する場合,デバイス側で画像処理,画像認識などの処理を行った上で,必要なデータを取捨選択して流す方法が必要になります.
 このようなエンベデッド・ビジョンを実現する最適なプラットフォームとして,ザイリンクスのZynq® All Programmable SoCやZynq Ultrascale+™ MPSoCがあります.


図1 エンベデッド・ビジョンに最適なプラットフォーム

 Zynq SoCは,FPGAによるプログラマブルな高速,並列ハードウェアと,ARMプロセッサによるソフトウェアを統合したデバイスです.FPGAは,定型的な画像処理,基本的な認識アルゴリズム,物理的なセンサ・インターフェース,高速通信インターフェースなどに適しており,処理機能をスケーラブルにできます.ARMプロセッサは,非定型な判断,画像データの分析,通信の上位プロトコル,大容量データの管理,ユーザ・インターフェースなどに適しています.Zynq SoCはプロセッサとFPGA ファブリックがチップ上で緊密に統合されているので,リアルタイムでインテリジェントなシステムを効率良く構築するのに適しています.
 また,処理中のデータが外部バスから見えなく,安全性やセキュリティを担保する機能もチップ上に搭載されています.データやプログラムのセキュリティが重視される自動車,産業機器,通信機器,IoTエッジ・デバイスなどでは大きな利点となります.


2.エンベデッド・ビジョンでのAll Programmable SoCの活用例
 図2に,エンベデッド・ビジョンなどの画像機器で使われている標準的な画像パイプラインの構成例を示します.


図2 標準的な画像パイプラインの構成

 まず,CMOSセンサからMIPI,LVDSなどのインターフェースを介して生の画像データ(RAWデータ)を取り込みます.RAWデータに対して光学系などの補正,ノイズ除去などの前処理を行い,RGBなどの標準的データに変換(ディベイヤ処理,デモザイク処理)し,表示環境に合わせてカラー・スペース変換,スケーリングなどの処理を行います.これらの処理は,ISP(Image Signal Processing)と呼ばれ,カメラ側に内蔵することが多くあります.
 さらに,ISPで処理された画像データにフィルタ,変形,分割,合成,特徴点抽出,認識,機械学習などのコンピュータ・ビジョンの処理を行い,HDMI,GigE Vision,CoaXpress,カメラリンクなどの高速インターフェースを介して出力します.
 コンピュータ・ビジョンの処理は,一般にOpenCVのような標準ライブラリ,市販のソリューション・スタックなどを用いてソフトウェア処理で実現します.ソフトウェア処理は,CPU負荷が高いため,ハイエンドCPUやFPGA,GPUを用いたフレーム・グラバで実行することが多くありました.
 しかし,Zynq SoCを用いれば,これらの処理のすべてを1チップで実行できます.図3のように,コンピュータ・ビジョンの機能を統合したインテリジェント・カメラを容易に構成できます.FPGAによるハードウェア処理を活用してCPU負荷を低くできるので,最小のサイズで最高の電力性能比が得られます.さらに,SDSoC開発環境を用いれば,OpenCVなどのライブラリのうち処理時間がクリティカルな部分を選択して自動的にハードウェア化し,システムを最適化することが可能です.


図3 カメラ・プラットフォームの構成例

3.エンベデッド・ビジョン開発のための開発環境
 Zynq SoCを用いたエンベデッド・ビジョン開発は,ザイリンクスやサードパーティが提供する豊富なエコシステムを活用することができます.具体的に,ザイリンクスとアヴネットでは,低コストZynq SoC評価ボードであるPicoZedを利用したスタータ向けのエンベデッド・ビジョン開発キット「Smart Vision開発キット(SVDK)」を提供しています(写真1).


写真1 Smart Vision開発キット(SVDK)

 このSmart Vision開発キットは,Zynq-7015 SOM(PicoZed)とマシン・ビジョンキャリアボード,Aptina 1.2MPイメージ・センサ・ボードを組み合わせたもので,低価格($895)ながらカメラからインテリジェントな認識処理までを含むトータルなエンベデッド・ビジョンをすぐに試すことができます.
 ボードだけでなく,ザイリンクスの標準開発環境であるVivado® Design Suite HLx Edition(高位合成ツールを含む),GUIベースのアルゴリズム開発ツールであるEmbedded VisualApplets評価版,マシン・ビジョンのソフトウェア・スタックとして定評があるHALCON評価版,GigE Vision,CameraLink,CXP,USB3.0などのIPコア評価版,ソフトウェア処理とハードウェア処理を比較するベンチマークツール,各種のリファレンスデザインが無償で添付されているので,追加の購入なしに手軽にエンベデッド・ビジョン開発を始めることができる.
 成長分野としての期待はあるが,技術やコストの点で敷居が高いと思われていたエンベデッド・ビジョンをザイリンクス All Programmable SoC でぜひ一度体験してください.



■記事に関するお問い合わせ

ザイリンクス株式会社 https://japan.xilinx.com/
〒141-0032
東京都品川区大崎1-2-2 アートヴィレッジ大崎セントラルタワー4階
E-mail:j_info@xilinx.com


Interface 表紙

CQ出版社オフィシャルウェブサイトはこちらからどうぞ

CQ出版の雑誌・書籍のご購入は、ウェブショップで!


CQ出版社 新刊情報


近日発売

CQ ham radio 2025年 1月号

2025年のアマチュア無線

トランジスタ技術 2025年 1月号

注目のロボット センサ&走行制御!

TECH I シリーズ

マイクロプロセッサ・アーキテクチャ教科書

Interface 2025年 1月号

数学&図解でディープ・ラーニング

別冊CQ ham radio QEX Japan No.53

巻頭企画 ハムのArduino活用の勧め