5-04 推論結果をLinux上で画像とともに確認
SDカードをZYBOに挿して電源ON、その後startxコマンドでX-Windowを立ち上げましょう。
イーサーネットケーブルを挿し、Firefox Web Browserを開き、このアーカイブをダウンロードします。 |
図5-11 ZYBOを有線LANでインターネットに接続する
Terminalを開き、ダウンロードしたアーカイブを解凍します。次のようにタイプしましょう。
cd Downloads
unzip ZYBO.zip
mv ZYBO ../xillybus
cd ../xillybus/ZYBO
●OpenCVを使ったC言語ソースコードのコンパイル
ZYBOディレクトリににあるソースコード(DLonZYBO.c)はOpenCVの関数を使用しており、次のようにコンパイルします。(*1)(*2)
gcc `pkg-config --cflags opencv` DLonZYBO.c -o DLonZYBO `pkg-config --libs
opencv`
(*1)`pkg-config ... opencv`を囲むキャラクタ(``)はクォーテーションマークではなく、バッククオート。本サイトからコピー&ペーストすると良い。
(*2)OpenCVをインストールしないとエラーになります(コラム51にインストール手順)。
●Deep Learning on ZYBOの実行
エラーなしで通ったら次のように実行します。
./DLonZYBO
すると図5-12のように、最初(0番目)の画像「7」が現れます。スペースキーを押すと次(1番目)の画像「2」が現れ、もう一回押すとその次(2番目)の画像「1」が現れます。 |
図5-12 キーボードを押すたびに次々と画像が出てくる
画像左下の小さい数字は「正解」、右下は「推論結果」です。図5-12は3つとも正解しています。
スペースキーを何度か打って8番目の画像を見ましょう。図5-13のように「不正解」になっています。 |
図5-13 正解は5だが推論が6になっていて不正解
このアプリケーションDLonZYBO.cは100枚の画像で推論を行います。そのうち正解は95枚、不正解は図5-13および図5-14の計5枚になります。 |
図5-14 不正解は全部で5枚
不正解は8, 33, 62, 66, 92番目の画像です。Pythonの結果(整数版)と比較してみます。以下のようにピタリ同じ結果になりました。。 |
本章ではスペースキーを押しながら、1画像づつゆっくり動作させました。しかし推論自体はPL部のロジックで高速(1画像につき11us)に計算されます。
したがって「PL部に高速に画像データを送り込む仕組み」と「PL部から高速に推論結果を受け取る仕組み」があれば、FPGA化による高速化の恩恵が十分得られるでしょう。 |
目次へ戻る
|