HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0613
狼さんHSPCVで動画合成ソフトの一環3解決


狼さん

リンク

2013/6/13(Thu) 22:37:34|NO.54883

こんにちは狼さんといいます。
今回はHSPCVで動画合成ソフトを作ろうと思いまず黒に近い色を255,255,255に変換
しようと考えました。それで以下のようなスクリプトができました。

#include "hspcv.as" ;;動画を1こまずつ切り分ける counout=0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; repeat 64;;;;いつまでかを指定する ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; cvopenavi "test.avi",counout;;;動画のファイル名 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; cvgetavi counout=counout+1 await 10 cvcloseavi loop ;;;;;;;;;;;;;;;;;動画各フレームの黒の部分を認識純黒に変換;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; counout=0 *fotbake ;;;CVバッファの表示 cvsave "brake"+counout+".bmp",counout test="1" xt=0 yt=0 pget xt,yt;;1dotの点を取得 vaR = ginfo(16) vaG = ginfo(17) vaB = ginfo(18) ;;;;;黒に近い値か確認する ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;黒の定義範囲 if vaR>200:vachR=1 if vaG>200:vachG=1 if vaB>200:vachB=1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;すべてvachか確認 vachR=1 and vachG=1 and vachB=1:goto *brago goto *fotbake *brago color 255,255,255 pset xt,yt xty = ginfo(10) yty = ginfo(11) if yt=yty:goto *reset if xt=xty:goto *yreset xt=xt+1 goto *brago *yreset xt=0 yt=yt+1
この際cvsave "brake"+counout+".bmp",counoutのところでopenCVのエラーが発生します。
このエラーの原因と解決方法を教えていただけないでしょうか?




この記事に返信する


名無し

リンク

2013/6/14(Fri) 10:03:29|NO.54884

cvopenavi "test.avi",counout;;;動画のファイル名をループ内に書いているのが原因ではないでしょうか?



名無し

リンク

2013/6/14(Fri) 13:04:53|NO.54885

連投すみません。なんとなくですが、cvopenavi "test.avi",counoutの位置を直しても正常にフレームを取得できない気がしたので、
kanahironさんが投稿してくれた動画をフレーム別に取得するソースをコピペしておきます。

#include "hspcv.as" #define scr_w 1280 //映像の横幅 #define scr_h 720 //映像の縦幅 #define frames 66 //映像のフレーム数 dialog "avi",16,"" ifn = refstr screen 0,scr_w,scr_h cvreset //する必要はないが一応リセット cvbuffer 1,scr_w,scr_h //CVのバッファ1を作成 cvopenavi ifn,1 //aviの取得を開始 出力先はCVのバッファ1 repeat frames cvgetavi //(呼び出された回数)枚目の画像を取得 ;cvflip 0,1 //画像が障碍反転している時にひっくり返す cvgetimg 1,0 //CVのバッファ1からHSPのスクリーン0にコピー await 16 //62.5fps loop cvcloseavi



狼さん

リンク

2013/6/15(Sat) 17:42:59|NO.54916

名無しさんご返信ありがとうございます。

たしかにループから外すと通常の動作を行ってくれました。

名無しさんに感謝です。



ONION software Copyright 1997-2023(c) All rights reserved.