AltaSonita is an image denoising application built to run on nVidia video boards using CUDA technology. Three different denoising algorithms, and five intensity levels let you remove most of noise from photos without blurring small details and edges.
AltaSonita is provided as free software, and you can download it from here. Please note that AltaSonita requires a CUDA-enabled video board, that is a recent nVidia video board; it will not run on any other video board.
As the following images show, the intensity setting works by separating edgy areas (drawn in red) from mostly plain areas (drawn in blue), and in plain areas the amount of noise filtering is higher as there are no relevant edges that would be blurred by the denoising process. Increasing the intensity setting reduces the amount of edge-preserving areas, so that aggressive noise filtering is applied to more zones of the image.
|KNN filter with min intensity||Edges (drawn in red) of KNN filter with min intensity|
|KNN filter with max intensity||Edges (drawn in red) of KNN filter with max intensity|
|NLM filter with min intensity||Edges (drawn in red) of NLM filter with min intensity|
|NLM filter with max intensity||Edges (drawn in red) of NLM filter with max intensity|
The image denoising CUDA kernels are contained in the following nVidia SDK example: Image denoising
Please refer to the nVidia whitepaper for details regarding the K Nearest Neighbours (KNN), Non Local Means (NLM) and Quick NLM filters.