**** このトピックはLabVIEWアドベントカレンダー2016年12月13日の記事です。 *****
myRIOとwebカメラでスタンドアロンのサイコロの目のカウンターを作成しましたので紹介します。
「Review >>> LabVIEW Seminar--Image processing on the site using a web camera」に紹介したPC版をスタンドアロンで実行スるできるようにmyRIOに移植したものです。
テンプレートマッチングを行なうためにはテンプレートを保存するためのmyRIOのファイル構造の理解が必要です。
myRIOにはPC版で使用したIMAQ Match Patternは使えませんのでIMAQ Find Patternを使います。判定の確度が低いので、誤った答えを正すプログラムが必要になります。
スタンドアロンで結果を表示できる表示器が必要です。
作成したプログラム(imageProcessFP.vi)
カメラの下でサイコロを振って、myRIOのボタンを押すと処理を行ないます。さすがに重い処理のようで結果が出るまでに2秒ぐらいかかる感じです。スタンドアロン実行時は当然PCとの接続はありませんのでLEDでの結果表示だけです。
Visionアシスタントでは限定した関数しか選択できないので、PC版を参考にしながらアシスタントなしで作成します。 マッチングの設定クラスターは、PC版からコピーして持って来ましたので、あまり苦労はありません。
myRIOのファイルディレクトリは
「/home/lvuser/」の中が良さそうです。テンプレートファイルのフォルダとして「/home/lvuser/koji/T_img」を作成しました。
テンプレートファイルをコピーする方法はWebDAVが良いとされていますが、私の場合はネットの設定かどうか定かではありませんが、うまくいかなかったので、USBメモリをmyRIOに挿してプログラムでコピーしました。こんなことで2日ぐらい停滞していました。
検知漏れよりは重複して検知するようにマッチングの最低スコアは低めに設定しました。重複して検知したものからスコアの高いものを選ぶのが下のviです。
これも色々考えて1日半かかりましたが、けっこうきれいなプログラムになりました。MatchArrayというクラスターの1次元配列を作ったのが良かったと思います。
7セグメントLEDがスターターキットにありましたので表示器に使ってみました。
myRIOは良いハードなのでHome版でも動かせるとすごく良いと思います、と書いたところで、「ひょっとしたらLINXで動く???」と思いついて調べたらLINXが対応しているらしい事が書いてありました。
myRIO手元に1台どうでしょう。