A Second-Order TGV Discretization with 90° Rotational Invariance Property (Supplementary MATLAB files)
Description
This repository contains the experimental MATLAB source code and data to reproduce the numerical experiments in: Alireza Hosseini and Kristian Bredies. A Second-Order TGV Discretization with 90° Rotational Invariance Property, arXiv preprint 2209.11450, 2022. https://arxiv.org/abs/2209.11450 The package implements primal-dual algorithms for the following 5 variational image denoising models: (a) Classic total variation (TV) model (ROF model) [1] (b) Condat's TV model [2] (c) Classic second-order total generalized variation (TGV) [3] (d) The proposed discrete second-order TGV model (above paper) (e) Second order Shannon TGV [1] Rudin, L. I., Osher, S., Fatemi, E.: Nonlinear total variation based noise removal algorithms, Phys. D, 60, 259–268 (1992). [2] Condat, L.: Discrete total variation: new definition and minimization, SIAM Journal on Imaging Sciences, 10(3), 1258–1290 (2017). [3] Bredies, K., Kunisch, K. and Pock, T.: Total generalized variation, SIAM J. Imaging Sci., 3, 492–526 (2010). [4] Hosseini, A., and Bazm, S.: The second order Shannon total generalized variation for image restoration, Signal Processing, 204, 108848 (2023) The software contains the following test scripts: • color_test: Computes the results of the color image denoising algorithms for one test image. The tested methods are classical TV, Condat-TV, classical TGV and proposed TGV with Euclidean/Frobenius norm coupling across the color channels. • denoise_test: Computes the results of the gray-scale image denoising algorithms for one test image. The tested methods are classical TV, Condat-TV, classical TGV, Shannon TGV, and proposed TGV. • upscaling_test: Computes the results of the gray-scale image upscaling algorithms for one test image. The tested methods are classical TV, Condat-TV, classical TGV, Shannon TGV, and proposed TGV. • higher_order_stencil_test: Computes results for TV denoising with finite difference stencils of higher window size and for one test image. The used stencils are 1/2*[-1 0 1] and 1/12*[1 -8 0 8 -1]. • invariance_test: Compares the values of classical TGV and proposed TGV for an image and its 90^(∘) rotated version. Computations are performed for three test images. • synthetic_test: Computes the results of the gray image denoising algorithms for a synthetic test image. The tested methods are classical TV, Condat-TV, classical TGV and proposed TGV. • denoise_test_BSDS_data_PSNR (SSIM): Computes the results of the gray image denoising algorithms for 25 first test images from BSDS database, with the best PSNR (SSIM) criteria. The tested methods are classical TV, Condat-TV, classical TGV and proposed TGV. • upscaled_test_BSDS_data_PSNR (SSIM): Computes the results of the gray image upscaling algorithms for 25 first test images from BSDS database, with the best PSNR (SSIM) criteria. The tested methods are classical TV, Condat-TV, classical TGV and proposed TGV.