Three scripts are provided to demonstrate several model characteritics as described in the contribution. All the scripts build
a naive model with only three convolution layers. When stride exists, only one level is performed for simplicity. The input block
size is also set to be as small as possible for readability of the output.

1-framebased.py
---------------
The script builds a simple Fully-Convolutional Neural Network (FCNN) model with three convolutional layers and demonstrates that
the inference can be done at any location with any block size, as long as the receptive field is known.
The model is fully translation equivariant.
Frame size, block size, and location can be changed.
Note: the case of the block on the border of the frame is not demonstrated but is straightforward: the block should be filled with
0 (or the equivalent depending on the padding type) for samples outside the frame.

2-superblock.py
---------------
The script builds a simple Convolutional Neural Network (CNN) model with three convolutional layers and demonstrates the
need for a flag indicating possible superblock processing.
The model is not fully translation equivariant, but the inference can be done using larger block.
The script first shows the processing of a superblock and demonstrates that the result is the same as for the original
block size.
The script then processes the same block size shifted by one pixel and demonstrates that the result is not the same, that
is that the model is not translation equivariant.

3-subblock.py
-------------
The script builds a simple Convolutional Neural Network (CNN) model with three convolutional layers and demonstrates
the need for a flag indicating possible subblock processing, as well as offsets to perform the correct subblock processing.
The script first shows the processing of a block and the processing of the same block split into 4 subblocks. It shows
that an offset is required in some cases in order to get the correct result.
