0
よく私はqtとdlibとopencvで画像処理アプリケーションを開発しています しかしqtwidgetアプリケーションでコードを実行した後、コードが終了し、がメインウィンドウの閉じるボタンを押すとmainwidowが終了しますが、アプリケーションでコードを手動で停止する必要はありません dlib関連のコードがアプリで実行されたときに発生します コードについてウェブカメラを開いて顔検出を行うだけです。WindowsのQtCreatorで書かれたdlibコードは、Qt mainwindowが終了してから終了しません。
while(frame_counter<100)
{
cv::Mat temp;
cap >> temp;
cv_image<bgr_pixel> cimg(temp);
full_object_detection shape;
std::vector<dlib::rectangle> faces = detector(cimg);
std::vector<full_object_detection> shapes;
for (unsigned long i = 0; i < faces.size(); ++i)
{
shape = pose_model(cimg, faces[i]);
}
win.clear_overlay();
win.set_image(cimg);
win.add_overlay(render_face_detections(shape));
}
私はなぜそれがどんな考えが起こるのか分からないのですか?あなたのコード内でこの行がある場合
私が実際に表示した後、whileループから抜け出すために何かを持っています100フレームがwhileループから抜け出し、quit()を追加すると、メインウィンドウは閉じますが、プロセスはまだ実行されています – arash