In Operation
The project’s repository provides 4 models:
- Grayscale JPEG images – main_test_fbcnn_gray.py
- Grayscale JPEG images trained with double JPEG degradation model – main_test_fbcnn_gray_doublejpeg.py
- Color JPEG images – main_test_fbcnn_color.py
- Real-world JPEG images – main_test_fbcnn_color_real.py
The project provides test sets to be used for the 4 models which are stored in the testsets directory. When you run a script (e.g. python main_test_fbcnn_color_real.py
) it automatically downloads the relevant mode, runs through the images in the relevant testsets directory and output the results to the test_results directory.
To test your own JPEGs, copy them to the relevant subdirectory of the testsets directory.
Each script contains a quality factor list. By setting different quality factors, the trade-off between artifacts removal and details preservation is controlled.
Here’s an example JPEG suffering from artifacts.
And the output with different quality factors:
QF=10
When you use low QF numbers, most artifacts together with some texture details are removed.
QF=50
QF=90
Summary
FBCNN is an interesting project. It offers flexible models to obtain desirable results with fewer artifacts.
There is training code available.
Website: github.com/jiaxi-jiang/FBCNN
Support:
Developer: Jiaxi Jiang, Kai Zhang, Radu Timofte
License: Apache License 2.0
FBCNN is written in Python. Learn Python with our recommended free books and free tutorials.
For other useful open source apps that use machine learning/deep learning, we’ve compiled this roundup.
Pages in this article:
Page 1 – Introduction and Installation
Page 2 – In Operation and Summary