More Recent Software

Software for visual data analysis and visual attention

  • Saccadic model 

This matlab code is about saccadic models that predict the visual scanpath, i.e. the series of fixations and saccades an observer would perform to visually sample the environment. It provides scanpaths in close agreement with human behavior. The code has been registered at APP under the number IDDN.FR.001.240029.000.S.P.2016.000.1000. More details about the method and the code are available here.


  • Decoding raw light fields captured by plenoptic cameras

A modified version of the matlab Light Field decoding Toolbox, called v0.4-CLIM, has been developed adding the following features : White lenslet image guided color demosaicing and alignment of the sensor with the micro-lens array, calibration using existing mlaCalib information from LYTRO metadata, automatic white balancing. More details about the method and the code are available here.


  • MGGDTransform

The C/C++ software aims at transforming one MGGD distribution to another one. This transformation is used in the context of color and gradient transfer. The transformation consists of a linear optimization, for transforming the scale parameter of an MGGD, and a stochastic-based shape parameter transfer. The proposed transformation allows to simultaneously transfer a number of image features by taking into account the dependencies between them.


  • HDR image recovery from a pair of flash/non flash images

The C/C++ software creates an HDR image from a pair of images. The first one is a flash image, which contains few noise and a number of details. At the opposite, the non-flash image is noisy but represents the atmosphere of the scene. Combining both allows us to output an HDR-like image.

Software for sparse representation and compression

  • QuantizationAE

This matlab code learns an autoencoder to compress images.  The code jointly learns a transform (the autoencoder) and the quantization steps for target rate points. The code trains the auto-encoders using a rate-distortion criterion. The quantization can be either fixed or learned during the training stage, and similarly during the test. More details about the method and the code are available here.


  • LF-HLRA: Light fields homographe-based low rank approximation.

This matlab code jointly searches for homographies to align the views of an input light field together with the components of its low rank approximation model. The code either uses a global homography per view or multiple homographies, one per region, the region being extracted using depth information. More details about the method are available here and the code can be downloaded here.


  • GBR-MVimages

This matlab code constructs graph-based representations for multi-view and light field images. The graph vertices represent the color information, while the edges represent the geometry information, i.e. the disparity, by connecting corresponding pixels in neighboring images. More details about the method are available here and the code can be downloaded here.

Software for editing, inpainting and super-resolution


  • LF-Inpainting: Light field inpainting based on a low rank model.

This matlab code implements a method for propagating the inpainting of the central
view of a light field to all the other views. To this end, it also implements a new matrix completion algorithm, better suited to the inpainting application than existing methods. A first option does not require any depth prior, unlike most existing light field inpainting algorithms. The code also implements an extended version to better handle the case where the area to inpaint contains depth discontinuities. More details about the method are available here and the code can be downloaded here.


  • FastLFInpaint: Fast light fields inpainting.

This C/C++ code implements a method for fast and efficient inpainting of light fields. It computes disparity based on smoothed structure tensors which is then used for propagating, by angular warping, the inpainted texture of one view to the entire light field. The code allows inpainting a light field of 80 views in a few seconds (from 4 to 15 sec. depending on the size of the region to be inpainted)

Older Software

  • Video inpainting for editing

This C/C++ software performs video inpainting for both static or free-moving camera videos. The method can be used for object removal, error concealment, and background reconstruction applications. To inpaint a frame, the method starts by aligning all the frames of a group of pictures (GOP). This is achieved by a region-based homography computation method which allows us to strengthen the spatial consistency of aligned frames. Then, from the stack of aligned frames, an energy function based on both spatial and temporal coherency terms is globally minimized. This energy function is efficient enough to provide high quality results even when the number of pictures in the GoP is rather small, e.g. 20 neighboring frames. This reduces the algorithm complexity and makes the approach well suited for near real-time video editing applications as well as for loss concealment applications.

  • Video inpainting for loss concealment

From an input binary mask and a source picture, the software performs an examplar-based inpainting. The motion information of the impaired areas is first recovered with a Bilinear Motion Field Interpolation (BMFI). The texture information is then recovered using a spatio-temporal examplar-based inpainting algorithm. The method to recover the texture proceeds in two steps: it first inpaints a low resolution version using an examplar-based method. Details of the inpainted corrupted areas of the input video are then retrieved using a nearest neighbor field (NNF) based super-resolution technique. A NNF is computed between an interpolated version of the concealed LR video and the known part of the received video at native resolution. In the same vein as in single-image super-resolution, the NNF is used to recover the high frequencies of the inpainted areas of the video.