実践opencv3forC++ 画像映像情報処理という本を使い、ゼミでプログラム作成をしています。
HaarLike特徴検出を用いた顔・眼の検出プログラムというものを使いたく、本を映したものがこちらです。
#include <opencv2/opencv.hpp> #pragma comment(lib,"opencv_world455d.lib") using namespace std; using namespace cv; int main() { VideoCapture cap(0); Mat src, star(imread("07800062592.jpg")), star_r; CascadeClassifier face("haarcascade_frontalface_alt2.xml"); CascadeClassifier eye("haarcascade_eye.xml"); while (1) { cap >> src; vector<Rect>faceLoc, eyeLoc; face.detectMultiScale(src, faceLoc, 1.1, 3, 0, Size(100, 100)); for (int i = 0; i < faceLoc.size(); i++) rectangle(src, faceLoc[i], 255, 4); eye.detectMultiScale(src, eyeLoc, 1.1, 20, 0, Size(30, 30), Size(100, 100)); for(int i=0;i<eyeLoc.size();i++){ resize(star, star_r, eyeLoc[i].size()); star_r.copyTo(src(eyeLoc[i])); } imshow("HaarLike検出",src); if (waitKey(20) == 27)break; } }
face.detectMultiScale(src, faceLoc, 1.1, 3, 0, Size(100, 100));
この部分にこのようなエラーが出るのですが、どうすればいいか調べてもわかりません。
ハンドルされない例外が 0x00007FFA54C7474C で発生しました (opencv Z.exe 内): Microsoft C++ の例外: cv::Exception (メモリの場所 0x000000BD8938EE50)。
わかる方いたらアドバイスよろしくお願いします。
あなたの回答
tips
プレビュー