더북(TheBook)

모델의 확장 경로는 다음과 같이 구현할 수 있습니다. 수축 경로에서 사용된 합성곱층의 출력이 확장 경로에서 잘리고(crop) 병합(concat)됩니다. 또한, 확장 경로에서는 up-conv를 사용하는데, up-conv에는 필터가 512개 있고, 또 다른 필터 512개는 수축 경로에서 가져옵니다.

t01 = layers.Conv2DTranspose(512, kernel_size=2, strides=(2,2), activation='relu')(c13)  ------ ①
crop01 = layers.Cropping2D(cropping=(4,4))(c10) ------ ②
concat01 = layers.concatenate([t01, crop01], axis=-1) ------ ③

c14 = layers.Conv2D(512, activation='relu', kernel_size=3)(concat01)
c15 = layers.Conv2D(512, activation='relu', kernel_size=3)(c14)

t02 = layers.Conv2DTranspose(256, kernel_size=2, strides=(2,2), activation='relu')(c15)
crop02 = layers.Cropping2D(cropping=(16,16))(c7)
concat02 = layers.concatenate([t02, crop02], axis=-1)

c16 = layers.Conv2D(256, activation='relu', kernel_size=3)(concat02)
c17 = layers.Conv2D(256, activation='relu', kernel_size=3)(c16)

t03 = layers.Conv2DTranspose(128, kernel_size=2, strides=(2,2), activation='relu')(c17)
crop03 = layers.Cropping2D(cropping=(40,40))(c4)
concat03 = layers.concatenate([t03, crop03], axis=-1)

c18 = layers.Conv2D(128, activation='relu', kernel_size=3)(concat03)
c19 = layers.Conv2D(128, activation='relu', kernel_size=3)(c18)
t04 = layers.Conv2DTranspose(64, kernel_size=2, strides=(2,2), activation='relu')(c19)
crop04 = layers.Cropping2D(cropping=(88,88))(c1)
concat04 = layers.concatenate([t04, crop04], axis=-1)

c20 = layers.Conv2D(64, activation='relu', kernel_size=3)(concat04)
c21 = layers.Conv2D(64, activation='relu', kernel_size=3)(c20)

outputs = layers.Conv2D(2, kernel_size=1)(c21)
model = tf.keras.Model(inputs=inputs, outputs=outputs, name="u-netmodel")
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.