| smooth.cxx |  | 
Smooth an image using Recursive convolution functions functions: smooth.cxx 
 Usage: example_smooth infile outfile
                
 
#include <iostream>
#include <vigra/multi_array.hxx>
#include <vigra/convolution.hxx>
#include <vigra/nonlineardiffusion.hxx>
using namespace vigra; 
int main(int argc, char ** argv)
{
    if(argc != 3)
    {
        std::cout << "Usage: " << argv[0] << " infile outfile" << std::endl;
        
        return 1;
    }
    
    
    int type;
    std::cout << "Type of smoothing (1 = Gauss, 2 = Exponential, 3 = nonlinear) ? ";
    std::cin >> type;
    
    
    double scale;
    std::cout << "Amount of smoothing (operator scale) ? ";
    std::cin >> scale;
    
    double edge_threshold;
    if(type == 3)
    {
        std::cout << "Edge threshold ? ";
        std::cin >> edge_threshold;
    }
    
    try
    {
        
        {
           
            
            switch(type)
            {
              case 2:
              {
                
                break;
              }
              case 3:
              {
                
                break;
              }
              default:
              {
              }
            }
            
        }
        else
        {
           
            
            switch(type)
            {
              case 2:
              {
                
                break;
              }
              case 3:
              {
                
                for(int band = 0; band<3; ++band)
                {
                }
                break;
              }
              default:
              {
              }
            }
            
        }
    }
    catch (std::exception & e)
    {
        std::cout << e.what() << std::endl;
        return 1;
    }
    
    return 0;
}