回答編集履歴

1

肝心の回答がずれていたため修正

2019/12/28 00:40

投稿

退会済みユーザー
test CHANGED
@@ -42,6 +42,26 @@
42
42
 
43
43
 
44
44
 
45
+ # マスクを作る
46
+
47
+ img_mask = np.zeros_like(img)
48
+
49
+ img_mask = cv2.fillPoly(img_mask, [contours[idx]],(255))
50
+
51
+ cv2.imshow("img_mask",img_mask)
52
+
53
+
54
+
55
+ # マスクに従ってノイズを消す
56
+
57
+ img_mod[img_mask==0] = 0
58
+
59
+ cv2.imshow("img_mod",img_mod)
60
+
61
+
62
+
63
+
64
+
45
65
  # とりあえず線を引く
46
66
 
47
67
  # img_mod = cv2.drawContours(img, contours, -1, (128), 3)
@@ -50,20 +70,26 @@
50
70
 
51
71
  # 最大値に線を引く
52
72
 
53
- img_mod = cv2.polylines(img, [contours[idx]],True,(128), thickness=3)
73
+ # img_mod = cv2.polylines(img, [contours[idx]],True,(128), thickness=3)
54
74
 
55
- cv2.imshow("img_mod",img_mod)
75
+ # cv2.imshow("img_mod",img_mod)
56
76
 
57
- cv2.waitKey(0)
77
+ # cv2.waitKey(0)
78
+
79
+
58
80
 
59
81
  cv2.imwrite("img_mod.png",img_mod)
60
82
 
61
-
83
+ cv2.imwrite("img_mask.png",img_mask)
62
84
 
63
85
  ```
64
86
 
87
+ マスク画像
88
+
89
+ ![イメージ説明](9ac95476608d0edec386539332a56a02.png)
65
90
 
66
91
 
67
- ![灰色部分が輪郭です](eb38d81382a52292493fdae9bda38e13.png)
68
92
 
69
- 灰色部分の線が輪郭です。
93
+ ノイズ塗りつぶし
94
+
95
+ ![イメージ説明](223d949fcd2afeaa13f4be8d144b59e8.png)