opencvでリアルタイムの平面オブジェクトトラッキングを試みているうちに、pyopencvの「オブジェクトを見つける」デモが出ました。このスクリプトは、スタティックイメージをウェブカメラから取得した現在のフレームと比較しようとしているのに対して、あるスタティックイメージを別のスタティックイメージと比較するという例外を除いて、私が望むことを行います。この目的を達成するために、私はこの行これは、それが必要としてではなく動作します。このopencvでwhile-loopエラーが発生する
capture = cv.VideoCapture(0)
frame = Mat()
capture >> frame
imwrite("box_in_scene.png",frame)
と
scene_filename = "box_in_scene.png"
私はそれが継続的にこれを行うにするために、単純なループを追加しようとすると、それは1サイクルを通過し置き換えその後停止します。スクリプトを終了すると、次のエラーが表示されます。
OpenCV Error: Bad flag (parameter or structure field) (Unrecognized or unsupport
ed array type) in cvGetMat, file M:\programming\packages\opencv\workspace\2.1\Op
enCV-2.1.0\src\cxcore\cxarray.cpp, line 2476
Traceback (most recent call last):
File "find_obj.py", line 114, in <module>
imageDescriptors = surf(image, mask, imageKeypoints)
RuntimeError: M:\programming\packages\opencv\workspace\2.1\OpenCV-2.1.0\src\cxco
re\cxarray.cpp:2476: error: (-206) Unrecognized or unsupported array type in fun
ction cvGetMat
誰でも手掛かりがあります。
私が使用しているループが
myloop = 1
while myloop == 1 :
このlinkはそれの全体のコードです。
whileループを質問に追加してください。ちょうど何が変わったのかを見るために –
フレームをキャプチャしてそれをループさせるループのコードの先頭を投稿することができます – SB26
あなたの例は全く理解できません。ループの前に関連するコードと関連するコードを書き換え、ループ全体を追加してください。 – Sam