GSoC 2014: Addition of depthmap denoising filter for 3D reconstruction/multiview stereo

This is the depthmap denoising filter I created for the GSoC 2014. It is a specialized version of Chambolle and Pock's Primal-Dual algorithm using CUDA. It is the core algorithm in DTAM (Dense Tracking and Mapping by Newcombe et. al.), but could be used to clean up depthmaps from any stereo algorithm.

The existing denoise_TVL1() is a closely related, but this is specialized for depthmaps, uses a Huber norm (which can interpolate between TV-L1 and ROF-L2), and has n^2 convergence instead of the TVL1's linear convergence.

The plan is to eventually add all of DTAM to opencv_extra, but this algorithm stands alone and is more generally applicable, so it seems like it would make more sense in the general repo. The code is in cudastereo, but I was unsure where to insert the documentation, so I put it in with the primal-dual section. I could change this if it is not the right place.

-Paul Foster

Apologies on getting this in late. Thought I submitted it a while back, but apparently just made a pull req. to myself.