NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

LabVIEW vision development module を使わずに背景差分を行う方法

解決済み
解決策を見る

現在は私は、1台のカメラから画像を取得し、それをwhileループで出力しています。

そして、カメラから得た画像を差分して、背景差分のプログラミングを作ろうを試みています。

しかし、whileループから抜き出した画像がうまく出力されず、差分がうまくいきません。

またエラーが出ていないので、どこが間違っているのか分かりません。

 

whileループから抜き出した画像を出力する方法、そして、vision development module を使用せずに

リアルタイムに背景差分を行うプログラムがあれば教えていただきたいです。

よろしくお願いいたします。

 

使用しているバージョン:LabVIEW 2018 SP1 32bit

すべてをダウンロード
0 件の賞賛
メッセージ1/5
2,028件の閲覧回数

saryo23さん、

 

なんとなくですが、作ってみました。

差分の仕方は用途に応じて検討したほうが良いかもですが、現状だと、輝度の差分は見えるようになっているかなと思います。

 

リアルタイムの差分処理をするには、シフトレジスタを利用すると良いと思います。

リセットボタンを押すと最新の画像をシフトレジスタに入れて、それ以降はその画像からリアルタイム画像の差分を取るようなイメージです。

 

もともとのプログラムですと、一度Whileループの外に入れたものを中に戻すような作りになっていたと思いますが、Whileループの外に処理が移るのはWhileループが停止したタイミングなので、停止ボタンを押したときに2つ目の画像が移るような形になってしまっていたかと思います。

 

もし意図がずれているなどあればお知らせください。

 

 

0 件の賞賛
メッセージ2/5
1,907件の閲覧回数

ke525様

 

ご返信ありがとうございます。

whileループの停止をして、画像を読み込まなければいけなかったのですね。勉強になります。

シフトレジスタがとても便利なのでこれから使っていこうと思います。ありがとうございます。

 

お忙しいところ恐縮ですが、2つ質問があります。

現在私は、GigEカメラをLabVIEWにつないで、カメラからの画像を用いて背景差分のプログラムを作成しています。

目標として、2値化のような処理をして、背景差分を行った上で黒い物体(ハエなど)だけを画面に表示させるプログラムを作成

しようとしています。そこで

 1.Vision Development Moduleを使用せずに画像の2値化はできるのでしょうか。

 2.現在のプログラムで差分を行っていますが、この差分は「画像から抽出した配列の差分」で間違えないでしょうか。

 差分後に、何らかの処理をすれば2値化のような処理はできるのでしょうか。

 

現在の差分だと、どうしてもうまく映らないので何か別の差分方法があればと考えています。

よろしくお願いいたします。

 

ちなみに、Visio Builderはインストールしており、そちらのほうでもできないかと考えています。

 

バージョン:Labview 2018 32bit

0 件の賞賛
メッセージ3/5
1,887件の閲覧回数
解決策
トピック作成者saryo23が受理

saryo23さん、

 

LabVIEWはシフトレジスタが使いこなせるようになると、利用の幅が大きくなりますので、ぜひ!

 

カメラからのImageはRGBになっていて、数値を見てみると α(透明性)・Red・Green・BlueのU8をHEXで4つ並べたものとなってます。

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P83dSAC&l=ja-JP

 

そのため、単純に差分と取ったり2値化をしようとすると、Development Moduleが無い場合、1から組む必要があります。一度、RGBの1色を抜き出して、0-255の値(グレースケール)にして、そこからしきい値判定させて2値化するようにするとできると思います。

ただ、処理速度の問題などはある可能性があるので、GigEカメラでの期待する集録速度に対して十分な処理ができるかは試して頂く必要はあるかなと思います。

 

ご質問についてですが、

1. 上記の通りすれば実装は可能です。が、処理速度面の確認は必要です。

2. はい、配列の差分です。が、αRGBで構成されているため、単純な比較だと差分とならないです。

 

またサンプル作ってみたので、イメージに合いそうか見ていただければと思います。

 

メッセージ4/5
1,879件の閲覧回数

ke525様

 

迅速なご対応ありがとうございます!!

だいぶ、はっきり物が見えてきました。

今後の展望としては、LabVIEWの処理速度の計算・表示、そして表示している物体の座標計算をしていきたいと思っています。

 

今年からLabVIEWを使っているのですが、まだまだ分からないことだらけですので

これからしっかり勉強していこうと思います。

 

今回は本当にありがとうございました。とても助かりました。。。

また次もよろしくお願いいたします。

 

 

 

メッセージ5/5
1,854件の閲覧回数