前提
プログラマーを目指しているわけではなく、
研究の関係でプログラミングをしている者です。
PCの知識は全然ありません。
的外れな発言や、色々と知識不足な点があると思いますので、
先に謝らせて下さい。
実現したいこと
Visual Stdio 2022で以下のプログラムで「デバックの開始」をすると、
黒い背景に「Press any key to continue . . .」とだけ表示されたウィンドウが出てきます。
書かれている通りに「Enter」「Spase」「↓」「アルファベットキー」など
色々押してみましたが、ウィンドウが閉じて、デバックが停止するだけで、
実行されている様子がありません。
エラーメッセージは無く、プログラムにも問題は無いようです。
出力には、「スレッド 'MainThread' (0x1) はコード 0 (0x0) で終了しました。」
とだけ書かれてありました。
有識者の方がいましたら、
- 何が原因でこのような事が起こるのか
- どうしたらプログラムを動かせるのか
を教えていただけたらと思います。
よろしくお願い致します。
該当のソースコード
Python
1import os,sys 2import cv2 3import dlib 4import numpy as np 5from imutils import face_utils 6from scipy.spatial import distance 7 8def calc_ear(eye): 9 A = distance.euclidean(eye[1], eye[5]) 10 B = distance.euclidean(eye[2], eye[4]) 11 C = distance.euclidean(eye[0], eye[3]) 12 eye_ear = (A + B) / (2.0 * C) 13 return round(eye_ear, 3) 14 15#cap = cv2.VideoCapture(0) 16cap = cv2.VideoCapture("D:/tawara.MP4") 17face_detector = dlib.get_frontal_face_detector() 18face_parts_detector = dlib.shape_predictor("D:/shape_predictor_68_face_landmarks.dat") 19 20i=0 21eye_o = np.array() 22x = np.array() 23while True: 24 tick = cv2.getTickCount() 25 26 ret, rgb = cap.read() 27 gray = cv2.cvtColor(rgb, cv2.COLOR_RGB2GRAY) 28 faces = face_detector(gray) 29 30 31 if len(faces) == 1: 32 face = faces[0] 33 cv2.rectangle(rgb, (face.left(), face.top()), (face.right(), face.bottom()), (255, 0, 0), 2) 34 35 face_parts = face_parts_detector(gray, face) 36 face_parts = face_utils.shape_to_np(face_parts) 37 38 left_eye = face_parts[42:48] 39 left_eye_ear = calc_ear(left_eye) 40 right_eye = face_parts[36:42] 41 right_eye_ear = calc_ear(right_eye) 42 eye_size = (left_eye_ear + right_eye_ear) / 2.0 43 eye_o = np.append( eye_o, eye_size) 44 #print("%12.6f" % (eye_o[i]) ) 45 print("%12.6f" % (eye_size) ) 46 i += 1 47 48 for i, point in enumerate(face_parts[:]): 49 point = (point[0],point[1]) 50 cv2.circle(rgb, point, 1, (0, 255, 0), -1) 51 cv2.putText(rgb, str(i), (point[0] + 2, point[1] - 2), cv2.FONT_HERSHEY_SIMPLEX, 0.3, (0, 255, 0), 1) 52 53 fps = cv2.getTickFrequency() / (cv2.getTickCount() - tick) 54 cv2.putText(rgb, "FPS:{} ".format(int(fps)), 55 (10, 50), cv2.FONT_HERSHEY_PLAIN, 3, (0, 0, 255), 2, cv2.LINE_AA) 56 57 cv2.imshow('frame', rgb) 58 if cv2.waitKey(1) == 27: 59 break # esc to quit 60 61cap.release() 62cv2.destroyAllWindows()
参考画像
試したこと
- 「Press any key to continue . . .」ウィンドウについてネットで調べてみましたが、解決策を見つけることができませんでした。
- Visual Stdioの環境設定を、ネットに乗っていたやり方で変更してみましたが、変化はありませんでした。
補足情報(FW/ツールのバージョンなど)
- Visual Stdio 2022
- Python 3.9.13
- Open CV(4.6.0)インストール/環境設定 済み
- Dlib(19.24.99)インストール 済み

あなたの回答
tips
プレビュー