回答編集履歴
2
d
test
CHANGED
@@ -142,6 +142,6 @@
|
|
142
142
|
|
143
143
|
|
144
144
|
|
145
|
-
cv2.imshow('red', frame)
|
145
|
+
cv2.imshow('red', frame)
|
146
146
|
|
147
147
|
```
|
1
d
test
CHANGED
@@ -109,3 +109,39 @@
|
|
109
109
|
※1: `mask[(h > 170)] = 255` の部分は抽出したい色に応じて変更してください。
|
110
110
|
|
111
111
|
※2: `1000 <= cv2.contourArea(x) <= 5000` の部分は抽出したい面積の範囲に応じて変更してください。
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
## 動画が流れない問題について
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
> 動画が流れるわけでもなく、どのキーを押しても反応しなくなりました。
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
cv2.imshow() が while ループの外にあるので、動画は表示されません。
|
124
|
+
|
125
|
+
ループの中に入れるべきだと思います。
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
```python
|
130
|
+
|
131
|
+
while cv2.waitKey(30) < 0:
|
132
|
+
|
133
|
+
_, frame = capture.read()
|
134
|
+
|
135
|
+
rects = find_rect_of_target_color(frame)
|
136
|
+
|
137
|
+
if len(rects) > 0:
|
138
|
+
|
139
|
+
rect = max(rects, key=(lambda x: x[2] * x[3]))
|
140
|
+
|
141
|
+
cv2.rectangle(frame, tuple(rect[0:2]), tuple(rect[0:2] + rect[2:4]), (0, 0, 255), thickness=2)
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
cv2.imshow('red', frame)
|
146
|
+
|
147
|
+
```
|