opencvとDXライブラリを同時に使おう時、顔認識でエラーが出ます。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
画像勉強中@高専
記事: 3
登録日時: 10年前

opencvとDXライブラリを同時に使おう時、顔認識でエラーが出ます。

#1

投稿記事 by 画像勉強中@高専 » 10年前

このようなエラーです。

_pfirstblock == phead

顔認識のプログラムです。

// 分類器の読み込み
//face
std::string facecascade = "C:/opencv/haarcascades/haarcascade_frontalface_alt.xml";
cv::CascadeClassifier cascade1;
if (!cascade1.load(facecascade)){
//printf_s("faceなし\n");
return -1;
}

/// マルチスケール(顔)探索
// 画像,出力矩形,縮小スケール,最低矩形数,(フラグ),最小矩形
std::vector<Rect> faces;
cascade1.detectMultiScale(smallImg, faces, 1.1, 2, CV_HAAR_SCALE_IMAGE, Size(30, 30));

//std::vector<Rect>::const_iterator r = faces.begin();
//for (; r != faces.end(); ++r) {
// //検出結果(顔)の描写

このプログラムの
cascade1.detectMultiScale(smallImg, faces, 1.1, 2, CV_HAAR_SCALE_IMAGE, Size(30, 30));

この部分が怪しいと考えているのですが、だれか教えてください。
デバッグでは、エラーが出るのですが、リリースでは出なかったです。

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: opencvとDXライブラリを同時に使おう時、顔認識でエラーが出ます。

#2

投稿記事 by みけCAT » 10年前

[search=google]_pfirstblock == phead[/search]
軽くググッた結果だと、メモリの確保と開放がアプリケーションとDLLに分かれてしまうと良くないかもしれません。
c++ - Debug Assertion Failed! Expression: _pFirstBlock == pHead - Stack Overflow
DLLのかわりにlibファイルを使うか、プロジェクトの設定をMulti-threaded Debug DLL (/MDd)みたいなやつにすると改善するかもしれません。
(適当にググっただけなので、本当かはわかりません)
[Windows] dbgheap.cのassertion エラー | Test better, code better
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

画像勉強中@高専
記事: 3
登録日時: 10年前

Re: opencvとDXライブラリを同時に使おう時、顔認識でエラーが出ます。

#3

投稿記事 by 画像勉強中@高専 » 10年前

よければ、やり方を詳しく教えていただけるとありがたいです。


閉鎖

“C言語何でも質問掲示板” へ戻る