「keras(tensorflow)でSegNet」
(https://qiita.com/uni-3/items/a62daa5a03a02f5fa46d)
に記載されているコードを参考に自分でも実装しようとして
おりますが、下記コード
Python
1import numpy as np 2import keras 3from PIL import Image 4 5from model import SegNet 6 7import dataset 8 9height = 176 10width = 240 11classes = 12 12epochs = 10 13batch_size = 1 14log_filepath='./logs_10/' 15 16data_shape = 176*480 17 18def writeImage(image, filename): 19 """ label data to colored image """ 20 Sky = [128,128,128] 21 Building = [128,0,0] 22 Pole = [192,192,128] 23 Road_marking = [255,69,0] 24 Road = [128,64,128] 25 Pavement = [60,40,222] 26 Tree = [128,128,0] 27 SignSymbol = [192,128,128] 28 Fence = [64,64,128] 29 Car = [64,0,128] 30 Pedestrian = [64,64,0] 31 Bicyclist = [0,128,192] 32 Unlabelled = [0,0,0] 33 r = image.copy() 34 g = image.copy() 35 b = image.copy() 36 label_colours = np.array([Sky, Building, Pole, Road_marking, Road, Pavement, Tree, SignSymbol, Fence, Car, Pedestrian, Bicyclist, Unlabelled]) 37 for l in range(0,12): 38 r[image==l] = label_colours[l,0] 39 g[image==l] = label_colours[l,1] 40 b[image==l] = label_colours[l,2] 41 rgb = np.zeros((image.shape[0], image.shape[1], 3)) 42 rgb[:,:,0] = r/1.0 43 rgb[:,:,1] = g/1.0 44 rgb[:,:,2] = b/1.0 45 im = Image.fromarray(np.uint8(rgb)) 46 im.save(filename) 47 48def predict(test): 49 model = keras.models.load_model('seg.h5') 50 probs = model.predict(test, batch_size=1) 51 52 prob = probs[0].reshape((height, width, classes)).argmax(axis=2) 53 return prob 54 55def main(): 56 print("loading data...") 57 ds = dataset.Dataset(test_file='val.txt', classes=classes) 58 test_X, test_y = ds.load_data('test') # need to implement, y shape is (None, 176, 240, classes) 59 test_X = ds.preprocess_inputs(test_X) 60 test_Y = ds.reshape_labels(test_y) 61 62 prob = predict(test_X) 63 writeImage(prob, 'val.png') 64 65if __name__ == '__main__': 66 main()
でセグメンテーションされた色が Pavement = [60,40,222](青) の色が木の部分に
割り当てられているように思います。
Road = [128,64,128]なども色が違う(紫がオレンジになっている)ように思うのですが、
これは[R,G,B]の順という意味ではないのでしょうか?
参考にしたサイトでは「おおむねセグメントされている」となっておりますが、この色の
違いについてご教示いただけませんでしょうか。
お手数をお掛けいたしますが、よろしくお願い申し上げます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/20 06:16
2018/12/20 06:23 編集
2018/12/20 06:27