次のプロジェクトに機械学習機能を追加する必要がある場合、1つの選択肢は Intel Neural Compute Stick 2 (Intel NcsCS2) です。このデバイスはプラグインAIアクセラレータとして機能し、Google Coral TPU Edge Acceleratorに最も近いものです。どちらのデバイスもUSBポートを介してホスト コンピューターに接続し、機械学習に特化しています。
デバイスをセットアップして初めて実行する方法に焦点を当てます。スタートアップ ページに記載されているように、Intel Ncs2は次の環境で実行できます。
Coral USBアクセラレータはLinux/RaspbianおよびMacintoshで実行されるため、OSの機能と設定によって、どのデバイスが適しているかが決まります。特に、Neural Compute Stickを実行するにはx86-64コンピューターが必要なので、古いx86-32 Ubuntuラップトップでは試しませんでした。代わりに、私は過去2年間に構築された別のラップトップ、Windows 10マシンを使用することにしました。
ダウンロードとヤクの毛刈り
Intel Ncs2に必要なOpenVINOツールキットに加えて、いくつかの重要な依存関係が必要になります。ただし、今のところは、 OpenVINOダウンロード ページ に移動し、使用するOSを選択してください。メールアドレスやその他の情報を入力すると、ブラウザが自動的に「ダウンロード」ボタンに移動します。 クリックしたときにブラウザが正しく動作しませんでしたが、代わりに確認メールを使用することで正常に動作しました。おそらく最新のバージョンである、希望するバージョンをダウンロードしてください。
ダウンロードしたファイルを開き、インストール手順に従います。次のような不足している依存関係に注意してください。
- Cmakeバージョン3.4以上
- Microsoft Visual Studio 2015、2017、または2019
- Python 64ビット バージョン3.6以上
私の場合は、すでにPythonがインストールされていたため、リストに表示されませんでした。
インストールが完了したら、 項目2の指示に従って 必要な依存関係ソフトウェアをインストールします。いくつかのオプションから選択できますが、デフォルトの選択で十分でしょう。
ファイルのダウンロードとインストールには時間がかかりますが、問題なくすべてがシステムにインストールされたことに満足しています。CMakeをインストールするときに覚えておくべきことの1つは、「すべてのユーザーのシステムPATHにCMakeを追加する」ことです。
プラグインして最初の例を実行する
必要な4つのプログラムがインストールされたら、例を実行します。
- Intel Neural Compute StickをUSBドライブに接続します。
- コマンド プロンプトを開き、ディレクトリ C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\demo に移動します。
- 次のコマンドを実行します: .\demo_squeezenet_download_convert_run.bat –d MYRIAD。
成功すると、クラスID、確率、ラベルが表示され、最初の行に「スポーツカー、スポーツカー」が表示されます。おめでとうございます。デバイスは動作しています。
ナンバープレート識別
大量のテキストを生成するだけでは物足りない場合は、車を視覚的に識別し、ナンバープレートを読み取ることもできます。
- 前と同じデモ ディレクトリに移動し、 .\demo_security_barrier_camera.bat -d MYRIAD と入力します。
- このコマンドは、このディレクトリに保存されている car_1.bmp ファイル内の車を識別し、そのナンバープレートを読み取ります。
- 別のウィンドウが画像とともにポップアップ表示され、それを閉じるとデモが完了します。
その他の自動車テスト
デバイスの機能をもう少しテストするために、プログラム マネージャーでこのディレクトリに移動し、car_1.bmpファイルをWikimediaで見つけた別の画像 (Photoshop Elementsでビットマップ (BMP形式) に変換) に置き換えました。名前を変更するには管理者権限が必要です。また、後で見つけられるように元の画像の名前も変更することをお勧めします。完了したら、プログラムを再実行して次のイメージを生成しました。
この画像ではデバイスが苦労しないだろうと思っていましたが、おそらく正面からの眺めや車のクラシックなラインが気に入らなかったのでしょう。何らかの理由で、これが車だと認識されず、ナンバープレートも見えませんでした。おそらく、デモでは、さまざまな角度、車のスタイル、またはナンバープレートに合わせて変更する必要があります。
完全に見逃されると予想していた画像を1つ追加しました。ポストイットで作った「ナンバープレート」が付いたミニーマウスのおもちゃの車です。興味深いことに、NCS2は画像を車として認識しましたが、どうやら私の粗雑なプレートの試みを評価しなかったようです。少なくとも今のところ、マウスモバイルは監視から安全であるように思われます。
結論
Intel Ncs2を手に入れてみたところ、Google Coral TPUとは異なり、Windowsで動作する素晴らしいデバイスであることがわかりました。インストールとセットアップには時間がかかりますが、プロセスはスムーズに進みました。デモも簡単ですが、私が提供した画像で実行すると、期待したほどうまく動作しないようです。
いずれにせよ、少し調整すれば、まさに必要なものになるかもしれません。また、Windowsで作業する必要がある場合、このクラスのデバイスではほぼ唯一の選択肢であると思われます。NCS2には、ドキュメントに加えて、このプロセスを支援する3つのビデオ シリーズがあり、それらはすべてIntelの「Getting Started」で入手できます。すべてをセットアップする際に、 Windowsバージョン が非常に役立つことがわかりました。