The super-resolution example given in:
just works on a single color channel. I tried to adapt it to work on RGB images, w/ the following changes to the network structure:
...
self.conv1 = nn.Conv2d(3, 64, (5, 5), (1, 1), (2, 2))
self.conv2 = nn.Conv2d(64, 64, (3, 3), (1, 1), (1, 1))
self.conv3 = nn.Conv2d(64, 32, (3, 3), (1, 1), (1, 1))
self.conv4 = nn.Conv2d(32, 3 * upscale_factor ** 2, (3, 3), (1, 1), (1, 1))
...
but I’m getting extreme artifacts, so something’s clearly wrong here:
Original on left, SR on right.
Anyone have any ideas?
Thanks
Ben
EDIT: On closer inspection, it looks like there are checkerboard issues even in greyscale – so maybe the fix for the artifacts is independent of the color issue?