# FbReconstruct2d

## PURPOSE

Use to see how much image information is preserved in filter outputs.

## SYNOPSIS

function I2 = FbReconstruct2d( I, FB, patch )

## DESCRIPTION

     Use to see how much image information is preserved in filter outputs.

     Reconstructs the orginal image from filter outputs (approximately). The
     filter output for a patch is given by IFR=F*P where F is the set of
     filters in matrix form, P is the patch and IFR is the filter responses at
     the center of the patch.  We want to recover P from IFR and F, this is
     underconstrained but a solution can be found using least squared.  Note
     that each recovered P will be 0 mean if no mean information is captured
     by the filter outputs.  Can apply to a single patch (interatctively
     specified), or the entire image (by keeping the central pixel from each
     patch).

     USAGE
      I2 = FbReconstruct2d( I, FB, patch )

     INPUTS
      I      - original image
      FB     - FB to apply and do reconstruction with
      patch  - reconstruct just patch or entire image

     OUTPUTS
      I2     - reconstructed image / patch

     EXAMPLE
      load trees; X=imresize(X,.5); load FbDoG.mat;
      I2 = FbReconstruct2d( X, FB, 0 );

     See also FBAPPLY2D

     Piotr's Image&Video Toolbox      Version 2.0
     Copyright 2008 Piotr Dollar.  [pdollar-at-caltech.edu]
     Please email me if you find bugs, or have suggestions or questions!
     Licensed under the Lesser GPL [see external/lgpl.txt]

## CROSS-REFERENCE INFORMATION

This function calls:

- FbApply2d Applies each of the filters in the filterbank FB to the image I.
- filterBinomial1d 1D binomial filter (approximation to Gaussian filter)
- im Function for displaying grayscale images.
- montage2 Used to display collections of images and videos.
- arrayToDims Pads or crops I appropriately so that size(IC)==dims.
- c clc - clear command window.

This function is called by: