回答編集履歴
1
肝心の回答がずれていたため修正
answer
CHANGED
@@ -20,16 +20,29 @@
|
|
20
20
|
area.append(cv2.contourArea(contour))
|
21
21
|
idx = area.index(max(area))
|
22
22
|
|
23
|
+
# マスクを作る
|
24
|
+
img_mask = np.zeros_like(img)
|
25
|
+
img_mask = cv2.fillPoly(img_mask, [contours[idx]],(255))
|
26
|
+
cv2.imshow("img_mask",img_mask)
|
27
|
+
|
28
|
+
# マスクに従ってノイズを消す
|
29
|
+
img_mod[img_mask==0] = 0
|
30
|
+
cv2.imshow("img_mod",img_mod)
|
31
|
+
|
32
|
+
|
23
33
|
# とりあえず線を引く
|
24
34
|
# img_mod = cv2.drawContours(img, contours, -1, (128), 3)
|
25
35
|
|
26
36
|
# 最大値に線を引く
|
27
|
-
img_mod = cv2.polylines(img, [contours[idx]],True,(128), thickness=3)
|
37
|
+
# img_mod = cv2.polylines(img, [contours[idx]],True,(128), thickness=3)
|
28
|
-
cv2.imshow("img_mod",img_mod)
|
38
|
+
# cv2.imshow("img_mod",img_mod)
|
29
|
-
cv2.waitKey(0)
|
39
|
+
# cv2.waitKey(0)
|
40
|
+
|
30
41
|
cv2.imwrite("img_mod.png",img_mod)
|
31
|
-
|
42
|
+
cv2.imwrite("img_mask.png",img_mask)
|
32
43
|
```
|
44
|
+
マスク画像
|
45
|
+

|
33
46
|
|
47
|
+
ノイズ塗りつぶし
|
34
|
-

|
35
|
-
灰色部分の線が輪郭です。
|