RAW 画像 (RGGB) でテンソルフローを使用して CNN をトレーニングしています。私のクライアントは、ニューラル ネットワークが pos-process なしで出力画像を再構成することを要求したため、 a は出力に対して何もできません。これは入力です:
input_img = Input(shape=(None, None, 1), name='input') # 1 channel RAW image
separate = tf.stack([input_img[:, 0::2, 0::2, 0],
input_img[:, 0::2, 1::2,0],
input_img[:, 1::2, 0::2, 0],
input_img[:, 1::2, 1::2, 0]], axis=3) # separate in four channels and stack them in a single tensor
model = Conv2D(filters=filters, kernel_size=(3,3), strides=(1,1), padding='same')(separate) # from here there are several CNN layers and other stuff.
私のニューラルネットワークの出力は次のとおりです。
# 4 channels representing RGGB
model = Conv2D(filters=4, kernel_size=(3,3), strides=(1,1), padding='same', activation="sigmoid")
次のようにreshapeを使用しようとしました:
output = tf.keras.layers.Reshape((height, width, 1))(model)
しかし、うまくいきませんでした。この場合、RAW 画像の巧妙な変形を実行して、入力と同じ形状に戻し、各色の位置を正しい位置にするにはどうすればよいでしょうか?
よろしく!