今日、opencv を simplecv python インターフェイスでラップしました。公式のSimpleCV クックブックを読んだ後、画像の読み込み、保存、および操作を正常に行うことができました。したがって、ライブラリが適切にロードされていることがわかります。
ただし、[カメラ、Kinect、または仮想カメラの使用] という見出しの下で、いくつかのコマンドを実行できませんでした。特に、mycam = Camera()
機能しましたがimg = mycam.getImage()
、次のエラーが発生しました。
In [35]: img = mycam.getImage().save()
OpenCV Error: Bad argument (Array should be CvMat or IplImage) in cvGetSize, file /home/jordan/OpenCV-2.2.0/modules/core/src/array.cpp, line 1237
---------------------------------------------------------------------------
error Traceback (most recent call last)
/home/simplecv/<ipython console> in <module>()
/usr/local/lib/python2.7/dist-packages/SimpleCV-1.1-py2.7.egg/SimpleCV/Camera.pyc in getImage(self)
332
333 frame = cv.RetrieveFrame(self.capture)
--> 334 newimg = cv.CreateImage(cv.GetSize(frame), cv.IPL_DEPTH_8U, 3)
335 cv.Copy(frame, newimg)
336 return Image(newimg, self)
error: Array should be CvMat or IplImage
HP TX2500 タブレットで Ubuntu Natty を実行しています。ウェブカメラが組み込まれています (CyberLink Youcam?) 誰かこのエラーを見たことがありますか? 私は今日、解決策を探してウェブ全体を調べましたが、何もうまくいかないようです.
更新 1 : cv.QueryFrame(capture) を別のスタック オーバーフローの質問でここにあるコードを使用してテストしたところ、機能しました。だから私はこれをウェブカメラの問題にほぼ釘付けにしました.
更新 2 : 実際、Web カメラがないマシンでもまったく同じエラーが発生します。TX2500には対応していないようです...