teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

4

コード部分を見やすく修正しました。

2021/09/14 05:55

投稿

H.Shing
H.Shing

スコア2

title CHANGED
File without changes
body CHANGED
@@ -14,8 +14,8 @@
14
14
  ### 該当のソースコード
15
15
 
16
16
 
17
+ ```python
17
18
 
18
-
19
19
  import cv2
20
20
  from cv2 import CascadeClassifier
21
21
  from numpy import double
@@ -54,10 +54,10 @@
54
54
 
55
55
  cap.release()
56
56
  cv2.destroyAllWindows()
57
+ ```
57
58
 
58
59
 
59
60
 
60
-
61
61
  ```ここに言語名を入力
62
62
  Python openCV
63
63
  ```

3

追記、アップデート

2021/09/14 05:55

投稿

H.Shing
H.Shing

スコア2

title CHANGED
File without changes
body CHANGED
@@ -65,8 +65,13 @@
65
65
  ### 試したこと
66
66
 
67
67
  いろいろ調べたところ、openCVのバージョンが原因だとわかり、バージョン3のもっとも古いものをインストールして確かめたところ同じエラーが出て解決しませんでした。
68
+ 追記:以下の情報で
69
+ (https://stackoverflow.com/questions/30508922/error-215-empty-in-function-detectmultiscale)
70
+ xml拡張子のロケーションを記載する必要があるとわかりました。
68
71
 
69
72
 
73
+
74
+
70
75
  ### 補足情報(FW/ツールのバージョンなど)
71
76
 
72
77
  Python openCV 4.5.3

2

コメントアウトを消しました。

2021/09/14 05:48

投稿

H.Shing
H.Shing

スコア2

title CHANGED
File without changes
body CHANGED
@@ -28,8 +28,6 @@
28
28
 
29
29
  cascade_path = "./cascade/trained_data/cascade.xml"
30
30
  cascade = cv2.CascadeClassifier(cascade_path)
31
- # face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
32
- # eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')
33
31
 
34
32
  cv2.CascadeClassifier
35
33
  face_cascade = cv2.CascadeClassifier(

1

ソースコードを更新しました。よろしくお願いいたします。

2021/09/14 05:44

投稿

H.Shing
H.Shing

スコア2

title CHANGED
File without changes
body CHANGED
@@ -13,9 +13,53 @@
13
13
 
14
14
  ### 該当のソースコード
15
15
 
16
- [https://github.com/opencv/opencv/blob/master/modules/objdetect/src/cascadedetect.cpp]
17
16
 
18
17
 
18
+
19
+ import cv2
20
+ from cv2 import CascadeClassifier
21
+ from numpy import double
22
+
23
+ if __name__ == "__main__":
24
+
25
+
26
+ cap = cv2.VideoCapture(0)
27
+
28
+
29
+ cascade_path = "./cascade/trained_data/cascade.xml"
30
+ cascade = cv2.CascadeClassifier(cascade_path)
31
+ # face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
32
+ # eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')
33
+
34
+ cv2.CascadeClassifier
35
+ face_cascade = cv2.CascadeClassifier(
36
+ "/home/opencv/opencv-3.4.4/data/haarcascades/haarcascade_frontalface_default.xml")
37
+
38
+ color = (255, 255, 255)
39
+
40
+ while True:
41
+
42
+ ret, frame = cap.read()
43
+
44
+ frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
45
+
46
+ facerect = cascade.detectMultiScale(frame, scaleFactor=1.2, minNeighbors=2, minSize=(10, 10))
47
+
48
+ if len(facerect) > 0:
49
+ for rect in facerect:
50
+ cv2.rectangle(frame, tuple(rect[0:2]), tuple(rect[0:2] + rect[2:4]), color, 2)
51
+
52
+ cv2.imshow("frame", frame)
53
+
54
+ if cv2.waitKey(1) & 0xFF == ord('q'):
55
+ break
56
+
57
+ cap.release()
58
+ cv2.destroyAllWindows()
59
+
60
+
61
+
62
+
19
63
  ```ここに言語名を入力
20
64
  Python openCV
21
65
  ```