質問編集履歴
2
プログラムの変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,22 +5,7 @@
|
|
5
5
|
ネットワークはchainerを使用したu-netです。入力画画像(batchsize×1×W_img×H_img)に対してラベル画像(batchsize×1×W_label×H_label)を対応させて学習しています。(W_label≒W_img,H_label≒H_img)ラベル画像は01のマスク画像です。コードの詳細部分はところどころ****で略しています。
|
6
6
|
もし可能性として考えられるものがありましたら、教えていただきたいです。よろしくお願いいたします。
|
7
7
|
``` python
|
8
|
-
import numpy as np
|
9
|
-
import cupy as cp
|
10
|
-
import os
|
11
|
-
import time
|
12
|
-
import cv2
|
13
|
-
import json
|
14
8
|
|
15
|
-
import chainer
|
16
|
-
import chainer.functions as F
|
17
|
-
import chainer.links as L
|
18
|
-
from chainer import cuda
|
19
|
-
from chainer import Variable
|
20
|
-
from u_net import UNET
|
21
|
-
import data
|
22
|
-
|
23
|
-
|
24
9
|
def main(gpu, epoch, ites, bsize, trfolder, trlabel, modelname):
|
25
10
|
chainer.cuda.get_device(gpu).use()
|
26
11
|
net = UNET()
|
@@ -40,7 +25,7 @@
|
|
40
25
|
x, y = Variable(cuda.to_gpu(x_batch)), Variable(cuda.to_gpu(y_batch))
|
41
26
|
r = Variable(cuda.to_gpu(r_batch))
|
42
27
|
h = net(x)
|
43
|
-
loss =
|
28
|
+
loss = *****
|
44
29
|
net.cleargrads()
|
45
30
|
loss.backward()
|
46
31
|
opt.update()
|
@@ -48,25 +33,6 @@
|
|
48
33
|
print('{0:5} {1:7.1f} {2:.6f}'.format(ep, time.clock()-stime, float(train_loss_sum)/ites)
|
49
34
|
chainer.serializers.save_npz('{}_{}'.format(modelname, ep), net)
|
50
35
|
|
51
|
-
if __name__ == '__main__':
|
52
|
-
parser = argparse.ArgumentParser(description='UNET', add_help=True)
|
53
|
-
parser.add_argument('--batchsize', '-b', type=int, default=8,
|
54
|
-
help='batchsize')
|
55
|
-
parser.add_argument('--gpu', '-g', type=int, default=0,
|
56
|
-
help='GPUID')
|
57
|
-
parser.add_argument('--epoch', '-e', type=int, default=300,
|
58
|
-
help='epoch')
|
59
|
-
parser.add_argument('--iteration', '-i', type=int, default=100,
|
60
|
-
help='iteration')
|
61
|
-
parser.add_argument('--trainfolder', '-trf', type=str, default='./train/',
|
62
|
-
help='trainfolder')
|
63
|
-
parser.add_argument('--trainlabel', '-trl', type=str, default='./train-label/',
|
64
|
-
help='trainlabelfolder')
|
65
|
-
parser.add_argument('--modelname', '-m', type=str, default='./model/model',
|
66
|
-
help='modelfolder')
|
67
|
-
args = parser.parse_args()
|
68
|
-
main(args.gpu, args.epoch, args.iteration, args.batchsize, args.trainfolder, args.trainlabel, args.modelname)
|
69
|
-
|
70
36
|
```
|
71
37
|
``` python
|
72
38
|
import cv2
|
1
不要なパラメータの削除
title
CHANGED
File without changes
|
body
CHANGED
@@ -21,7 +21,7 @@
|
|
21
21
|
import data
|
22
22
|
|
23
23
|
|
24
|
-
def main(gpu, epoch, ites, bsize, trfolder, trlabel, modelname
|
24
|
+
def main(gpu, epoch, ites, bsize, trfolder, trlabel, modelname):
|
25
25
|
chainer.cuda.get_device(gpu).use()
|
26
26
|
net = UNET()
|
27
27
|
net.to_gpu()
|
@@ -64,12 +64,8 @@
|
|
64
64
|
help='trainlabelfolder')
|
65
65
|
parser.add_argument('--modelname', '-m', type=str, default='./model/model',
|
66
66
|
help='modelfolder')
|
67
|
-
parser.add_argument('--fnweight', '-fn', type=float, default=1,
|
68
|
-
help='FN')
|
69
|
-
parser.add_argument('--fpweight', '-fp', type=float, default=1,
|
70
|
-
help='FP')
|
71
67
|
args = parser.parse_args()
|
72
|
-
main(args.gpu, args.epoch, args.iteration, args.batchsize, args.trainfolder, args.trainlabel, args.modelname
|
68
|
+
main(args.gpu, args.epoch, args.iteration, args.batchsize, args.trainfolder, args.trainlabel, args.modelname)
|
73
69
|
|
74
70
|
```
|
75
71
|
``` python
|