アイウェーブはiWave Cyclone V SoC開発キットを使用してトマト選別用のMachine Visionアプリケーションを開発しました。 Machine Visionは手作業での点検をカメラ付きの低価格コンピュータ・ビジョンで置き換えるもので、この技術は工場での生産性の向上、製品品質の向上にも使われています。 今回のアプリケーションはオープン・ソース・コンピュータ・ビジョン(OpenCV)を使用してトマトの萼(がく)、ひび割れ、尻腐れ(BER)及び茎部分の良し悪しを区別するために開発しました。 アプリケーションの概要: アルテラCyclone V SoC ハード・プロセッシング・システム (HPS)はFPGA及びデュアル・コアARM Cortex-A9プロセッサで構成されています。 FPGAはカメラからのビデオ・フレームをキャプチャし、また、処理されたフレームをLCDに表示します。 HPSにはQT GUIアプリケーション及び画像処理ライブラリが含まれます。 図 1:Cyclone V SoC開発キットを使ったMachine Visionアプリケーション FPGAはNTSCカメラでビデオ・フレームを継続的に撮影します。 キャプチャされたフレームはプレ処理され、YCbCr 4:2:2インターレース・ビデオ・フレームは事後の処理に必要なRGBプログレッシブ・ビデオ・フレームに変換されます。 これはQuartus ツールにあるAltera VIP スイートを使えば簡単にできます。 IPコアはクロックされたビデオ入出力、Chromaリサンプラー、カラー・スペース・コンバータ、ミキサー、フレーム・バッファ及びフレーム・リーダ用に設定されます。 HPSの中で継続的に動いているQT GUI アプリケーションはFPGAからプレ処理されたフレームを受け取ります。 QT GUIアプリケーションは画像処理パラメータを調整するウィジェットを持っています。 OpenCVライブラリはQTで与えられる堰値に基づきプレ処理されたフレームを処理します。 アプリケーションはトマト表面の萼(がく)、ひび割れ、尻腐れ(BER)及び茎部分を識別、選別します。 最後に処理されたフレーム及び画像処理結果はFPGA ビデオミキサーロジック内のQT GUI アプリケーションでアルファブレンドされ、ミックスされた画像が800x480 LCD 上に表示されます。 図2:Cyclone V Soc 開発キット上のMachine Visionアプリケーション 画像処理モジュールは以下のように動作します: