#include <vigra/multi_array.hxx>
#include <vigra/convolution.hxx>
#include <iostream>
int main (int argc, char ** argv)
{
if(argc != 3)
{
std::cout << "Usage: " << argv[0] << " infile outfile" << std::endl;
std::cout << "(supported formats: " << impexListFormats() << ")" << std::endl;
return 1;
}
try
{
std::cout << "Which mode of convolution?\n";
std::cout << "1 - disk average\n";
std::cout << "2 - corners of a 3x3-box\n";
std::cout << "3 - Gaussian filter\n";
std::cout << "4 - separable Gaussian filter (x- and x-dimension separately)\n";
int mode;
std::cin >> mode;
switch(mode)
{
case 1:
break;
case 2:
0.25, 0.0, 0.25,
0.0, 0.0, 0.0,
0.25, 0.0, 0.25;
break;
case 3:
break;
case 4:
break;
default:
vigra_precondition(false, "mode must be between 1 and 4.");
}
{
exportArray(info.
shape());
importImage(info, imageArray);
if (mode == 4)
{
convolveImage(imageArray, exportArray, kernel1dim, kernel1dim);
}
else
{
convolveImage(imageArray, exportArray, kernel2dim);
}
}
else
{
importImage(info, imageArray);
if (mode == 4)
{
convolveImage(imageArray, exportArray, kernel1dim, kernel1dim);
}
else
{
convolveImage(imageArray, exportArray, kernel2dim);
}
}
}
catch (std::exception & e)
{
std::cout << e.what() << std::endl;
return 1;
}
return 0;
}
Two dimensional difference vector.
Definition diff2d.hxx:186
Argument object for the function exportImage().
Definition imageinfo.hxx:134
Argument object for the function importImage().
Definition imageinfo.hxx:391
MultiArrayShape< 2 >::type shape() const
Generic 1 dimensional convolution kernel.
Definition separableconvolution.hxx:1367
void initGaussian(double std_dev, value_type norm, double windowRatio=0.0)
Definition separableconvolution.hxx:2253
Generic 2 dimensional convolution kernel.
Definition stdconvolution.hxx:761
void initGaussian(double std_dev, value_type norm)
Definition stdconvolution.hxx:1016
void initDisk(int radius)
Definition stdconvolution.hxx:1050
Kernel2D & initExplicitly(Shape2 const &upperleft, Shape2 const &lowerright)
Definition stdconvolution.hxx:1130
Main MultiArray class containing the memory management.
Definition multi_fwd.hxx:131
image import and export functions