09-01-2015 04:12 AM
いつもお世話になっております。
現在AVIファイルを読み込み、読み込んだ画像に指定したROI(回転させた四角形)と、直線エッジ検出によって検出されたエッジの直線を重ねて、それを動画として保存するようなプログラムを考えております。
その過程でまずROIを重ねて動画として保存しようと考えたのですが、フロントパネル上ではきちんとROIが表示されるのに、保存された動画では表示されません。
このROIを保存した動画でも表示されるようにしたいのですが、解決策をご存知の方はいらっしゃいますでしょうか?
また、直線の場合でも同様の方法が使えますでしょうか?
私が初心者ながら書いたプログラムを添付しますので、ご教授頂けたらと思います。
何卒よろしくお願いします。
09-01-2015 07:42 AM
こんにちは。
ROI やエッジ検出された直線などは、画像にオーバーレイされているだけなので、画像の上に浮いている様な形で画像データは編集されていません。
ROI を画像に追加するサンプルを作ってみたので試してみてください。
AVI ファイルの作り方はすでにご存知の様ですので、画像にROIなどをオーバーレイすれば、AVIファイルの作成も簡単にできますよ。
09-01-2015 09:28 PM
doradorachan様
ご返答のみならずサンプルプログラムまで作って下さり、誠にありがとうございます。
オーバーレイに関しては私の勉強不足でした。申し訳ありません。
そこで質問させていただきたいことがあるのですが、頂いたサンプルですと回転させた四角形(ROI)を画像に追加することができません。
できれば回転させた四角形を追加できると非常に助かるのですが、何か良い解決策はありますでしょうか?
何卒よろしくお願いします。
09-02-2015 03:46 AM
Overlay Rectangle の関数に回転度数の入力がなかったので変だとは思いましたが、回転できないみたいですね。
よく見たらOverlay のパレット内にoverlay ROI という関数があるので、そちらを使用してください。
直接ROI を画像に描画することができます。
09-02-2015 05:22 AM
doradorachan様
ご返答ありがとうございます。
アドバイスにある通りROIをoverlayしてからmergeさせたところ、ROIとエッジ直線を共に動画として保存することができました。
しかし、その際のROIと直線が実線ではなく破線として表示・保存されてしまいます。
できれば実線として保存できるとベストなのですが、なにか解決策をご存知ではないでしょうか?
何卒よろしくお願いします。
09-03-2015 03:25 AM
聞いたことない現象ですね。
オーバーレイの種類の変更などは試しましたか?
09-03-2015 04:28 AM
doradorachan様
ご返答ありがとうございます。
試しに四角形をoverlayさせてmergeさせたところ、四角形は動画に実線として描かれていました。しかし、上の1辺のみ全く描かれていませんでした。
また、ROIをmergeさせた場合はROIの四角形の左右2辺は実線でしたが、上下は破線でした。エッジ直線も破線でした。
考えられる原因や解決策、原因解明のために試すべきことなどはございませんでしょうか?
何卒よろしくお願いします。
09-03-2015 04:45 AM
自己レスです。
overlayのみでimageを表示させたところ、ROI、エッジ直線ともに実線で表示されました。もちろん動画には保存されませんが。。。
なので、点線になる原因はoverlayではなく、mergeの方ではないかと思われます。
09-03-2015 06:56 PM
AVI ファイルに書き込む前に、余分な処理が呼び出されてROI の線などが消されている可能性はありませんか。
試しに、ご使用されているVI とは別にROI が描画されている画像をAVI に書き込むVI を作ってテストしてみてください。
09-03-2015 09:31 PM
doradorachan様
ご返答ありがとうございます。
アドバイス通りVIを作成してみましたが、今までと同様の結果が得られました。
作成したVIを添付しますので、お時間があれば是非見ていただけると幸いです。
何卒よろしくお願いします。