質問編集履歴

2

コードの文体の修正

2021/09/02 02:08

投稿

saiki1127
saiki1127

スコア2

test CHANGED
File without changes
test CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
  それと、途中までのコードで画像をtrimapという前景が白、後景が黒、どちらかわからない部分が灰色という風に変換する部分があるのですが、そのtrimapの画像が黒と灰色しか出ません。その結果として最終的に作られた画像が、背景が消えてはいるのですが、残したい部分も薄くなります。←上記のattributeErrorがでるまではこのような形で出力されていました。
16
16
 
17
-
17
+ ```ここに言語を入力
18
18
 
19
19
  #ライブラリインポート
20
20
 
@@ -32,6 +32,8 @@
32
32
 
33
33
 
34
34
 
35
+
36
+
35
37
  #画像読み込み
36
38
 
37
39
  img = cv2.imread("upperbody1.jpg")
@@ -44,7 +46,7 @@
44
46
 
45
47
 
46
48
 
47
- #デバイスの設定,推論
49
+
48
50
 
49
51
  device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
50
52
 
@@ -57,8 +59,6 @@
57
59
  model.eval()
58
60
 
59
61
 
60
-
61
- #正規化,バッチの追加
62
62
 
63
63
  preprocess = transforms.Compose([
64
64
 
@@ -88,7 +88,19 @@
88
88
 
89
89
  img = cv2.resize(img,(w,h))
90
90
 
91
- cv2.imwrite("./examples/trimaps/picture.jpg",mask)
91
+ cv2.imwrite('./examples/trimaps/picture.jpg',mask)
92
+
93
+ henkan = cv2.imread("./examples/trimaps/picture.jpg")
94
+
95
+ black = [0, 0, 0]
96
+
97
+ white = [255, 255, 255]
98
+
99
+ henkan[np.where((henkan != black).all(axis=2))] = white
100
+
101
+ cv2.imwrite("./examples/trimaps/henkan.jpg",henkan)
102
+
103
+
92
104
 
93
105
 
94
106
 
@@ -100,53 +112,13 @@
100
112
 
101
113
  plt.subplot(1,2,2)
102
114
 
103
- plt.imshow(mask)
104
-
105
-
106
-
107
-
108
-
109
- #モルフォロジー変換による膨張収縮処理
110
-
111
-
112
-
113
- def gen_trimap(mask,k_size=(5,5),ite=1):
114
-
115
- kernel = np.ones(k_size,np.uint8)
116
-
117
- eroded = cv2.erode(mask,kernel,iterations = ite)
118
-
119
- dilated = cv2.dilate(mask,kernel,iterations = ite)
120
-
121
- trimap = np.full(mask.shape,128)
122
-
123
- trimap[eroded == 255] = 255
124
-
125
- trimap[dilated == 0] = 0
126
-
127
- return trimap
128
-
129
- trimap = gen_trimap(mask,k_size=(10,10),ite=5)
130
-
131
- cv2.imwrite('./examples/trimaps/picture.jpg',trimap)
132
-
133
- plt.figure(figsize=(20,20))
134
-
135
- plt.subplot(1,2,1)
136
-
137
- plt.imshow(img)
138
-
139
- plt.subplot(1,2,2)
140
-
141
- plt.imshow(trimap)
115
+ plt.imshow(henkan)
142
116
 
143
117
  plt.show()
144
118
 
145
119
 
146
120
 
147
121
 
148
-
149
- #-----------------------
150
122
 
151
123
 
152
124
 
@@ -190,6 +162,12 @@
190
162
 
191
163
 
192
164
 
165
+ ```
166
+
167
+
168
+
169
+
170
+
193
171
  書き忘れていましたが環境は
194
172
 
195
173
  windows10

1

環境について

2021/09/02 02:08

投稿

saiki1127
saiki1127

スコア2

test CHANGED
File without changes
test CHANGED
@@ -187,3 +187,15 @@
187
187
  cv2.waitKey(0)
188
188
 
189
189
  cv2.destroyAllWindows()
190
+
191
+
192
+
193
+ 書き忘れていましたが環境は
194
+
195
+ windows10
196
+
197
+ python3.9.6 64bit版
198
+
199
+ opencv
200
+
201
+ です。