Выходной NN - это изображение и изображение со значениями 0 или 1, но ожидаемый диапазон целых чисел от 0 до 255 - PullRequest
0 голосов
/ 11 января 2019

У меня есть CNN, где вход представляет собой изображение RGB со значениями в каждом канале 0 ~ 255, а ваша метка - это другое изображение RGB со значениями в каждом канале 0 ~ 255, но предсказания NN имеют значения 1 или 0

Когда NN обучается, полученные результаты представляют собой изображение со значениями от 0 до 1, но изображения, используемые для обучения и маркировки, имеют значения 0 ~ 255.

Все Conv2d и Conv2dTranpose используют активацию RELU, кроме последней, без активации.

Для каждого примера: форма печати изображения RGB, после изображения этикетки ... и, наконец, прогноз NN:

печать (X_train [0] [222] [1])
[34 45 32]

печать (Y_train [0] [222] [1])
[22 43 44]

печать (Img_predict [0] [222] [1])
[1 1 1]

входы = вход ((IMG_HEIGHT, IMG_WIDTH, 3))

c1 = Conv2D (16, (3, 3), активация = 'elu', заполнение = 'то же самое') (входы)
с1 = отсев (0,3) (с1)
c1 = Conv2D (16, (3, 3), активация = 'elu', заполнение = 'то же самое') (c1)
p1 = MaxPooling2D ((2, 2)) (c1)

c2 = Conv2D (32, (3, 3), активация = 'elu', заполнение = 'то же самое') (p1)
с2 = отсев (0,3) (с2)
c2 = Conv2D (32, (3, 3), активация = 'elu', заполнение = 'то же самое') (c2)
p2 = MaxPooling2D ((2, 2)) (c2)

c3 = Conv2D (64, (3, 3), активация = 'elu', заполнение = 'то же самое') (p2)
с3 = отсев (0,3) (с3)
c3 = Conv2D (64, (3, 3), активация = 'elu', заполнение = 'то же самое') (c3)

u4 = Conv2DTranspose (32, (2, 2), шаг = = (2, 2), отступ = 'same') (c5)
u4 = сцепленный ([u4, c2])
c4 = Conv2D (32, (3, 3), активация = 'elu', заполнение = 'то же самое') (u4)
с4 = отсев (0,3) (с4)
c4 = Conv2D (32, (3, 3), активация = 'elu', заполнение = 'то же самое') (c4)

u5 = Conv2DTranspose (16, (2, 2), шаг = = (2, 2), отступ = 'same') (c4)
u5 = сцепление ([u5, c1], ось = 3)
c5 = Conv2D (16, (3, 3), активация = 'elu', заполнение = 'то же самое') (u5)
с5 = выбывание (0,3) (с5)

cls_depth = Conv2D (3, (3, 3), отступ = «то же самое») (c5)

Если положить активацию на последнем слое, NN не сходится. Ожидаемые результаты - значения от 0 до 255 , а не от 0 до 1.

...