OpenCV 1.1preでは、cvLoadは使う前にあらかじめcvの関数を呼んでおかないとエラーになるようです。
http://www.codeproject.com/KB/cs/Intel_OpenCV.aspx?msg=2784187
http://www.openframeworks.cc/forum/viewtopic.php?f=10&t=1853
よって、何かcvの関数、簡単に言うと画像処理らしい関数を事前に呼んであげます。
// 適当なcvの関数呼び出し IplImage* img = cvCreateImage(cvSize(1,1), IPL_DEPTH_8U, 1); cvSmooth(img, img); cvReleaseImage(&img); // cvLoadの使用 cascade = (CvHaarClassifierCascade*)cvLoad("hoge.xml", 0, 0, 0);
今回のOpenCvSharpの更新で、内部であらかじめcvの呼び出しを行うようにしたので、Cv.Loadメソッドを最初に使ってもエラーは起こらなくなりました。内部でCv.Loadを使っているCvHaarClassifierCascade.FromFileなども同様です。
OpenCVの新しいバージョンではこの問題は解決されたのでしょうか?気になります。
Essential OpenCV Programming―With Visual C++ 2008
- 作者: 谷尻豊寿
- 出版社/メーカー: カットシステム
- 発売日: 2009/10
- メディア: 単行本
- クリック: 42回
- この商品を含むブログ (3件) を見る