Hey guys,
I am working on image reconstruction problem, where the input to the network is speckle pattern image capture by lensless camera. I have followed U-Net architecture + residual connections to maintain the original information of the input image(1, 1, 128, 128). There are four encoders and four decoders, for simplicity I am mentioning one forward function of the encoder and one for the decoder.
“encoder from 1-4”
conv2d ->relu->
batchnorm_1
conv2d->relu
conv2d_>relu
batchnorm_2
residual connection = batchmorm_1 + batchnorm_2
“decoder from 1-4”:
convtranspose2d->relu_>batchnorm
concatination connection
conv2d ->relu
batchnorn_1
conv2d->relu
conv2d_>relu
batchnorm_2
residual connection = batchmorm_1 + batchnorm_2
Moreover, I am using ADAM optimizer with lr = le-3, Loss functions that I have tried MSE, MAE, SSIM, BCELoss. However, the learning curve is no more improving, therefore, the model is not able to predict the intensity of each pixel properly thus resulting in blurry and unstructured images. Here is the example image of the reconstruction.
Any suggestion on how to improve the reconstruction ability of the network would be extremely helpful. In case of more clarity on code, please let me know.
Thanx in advance…