| CPC G06T 3/4053 (2013.01) [G06T 3/4046 (2013.01)] | 10 Claims |

|
1. A system for image processing, the system comprising
a processing system containing one or more processors, and
an artificial neural network (100), the latter comprising:
(i) an input layer (L-IN) including a memory location for storing an input image (ILR),
(ii) one or more (L) convolution layers (L-n), wherein said input layer (L-IN) is connected to a first convolution layer (L-1) of said convolution layers (L-n), and
(iii) an output layer (L-OUT) connected to a last convolution layer (L-l) of said convolution layers (L-n) and including a memory location for storing an output image (ISR), said output layer (L-OUT) comprising:
(a) a shuffleblock (L-SB) receiving a layer output (Sl) of said last convolution layer (L-l) and the input image (ILR) and generating a shuffle-block output (114) that is a higher resolution than the input image (ILR) and said layer output (SI),
(b) an interpolation module (112) receiving the input image (ILR) and generating an interpolated image (116) that is higher resolution than the input image (ILR), and
(c) a final convolution (L-FIN) receiving said shuffle-block output (114) and said interpolated image (116) and generating said output image (ISR),
wherein
(A) said layers include instructions for execution on said processing system,
(B) the input image (ILR) is input to said input layer (L-IN) and to at least one of said convolution layers (L-n),
(C) an initial output (110) of said input layer (L-IN) is input to at least one of said convolution layers (L-n), and
(D) a layer output(S) of at least one of said convolution layers (L-n) is input to at least one subsequent convolution layer (L-n).
|