Pre-Defined Kernel Filtering Code Snippet

This code snippet shows how to apply miscellaneous convolution operations based on pre-defined kernels.

C++

#include <eVision/EasyImage/EasyImage.h>
using namespace eVision;
// Images constructor
EImageBW8 srcImage;
EImageBW8 dstImage;
// ...
// Source and destination images must have the same size
dstImage.SetSize(&srcImage);
// Perform a Uniform filtering (5x5 kernel)
EasyImage::ConvolUniform(&srcImage, &dstImage, 2);
// Perform a Highpass filtering
EasyImage::ConvolHighpass1(&srcImage, &dstImage);
// Perform a Gradient filtering
EasyImage::ConvolGradient(&srcImage, &dstImage);
// Perform a Sobel filtering
EasyImage::ConvolSobel(&srcImage, &dstImage);

C#

using eVision;
// Images constructor
EImageBW8 srcImage = new EImageBW8();
EImageBW8 dstImage = new EImageBW8();
// ...
// Source and destination images must have the same size
dstImage.SetSize(srcImage);
// Perform a Uniform filtering (5x5 kernel)
EasyImage.ConvolUniform(srcImage, dstImage, 2);
// Perform a Highpass filtering
EasyImage.ConvolHighpass1(srcImage, dstImage);
// Perform a Gradient filtering
EasyImage.ConvolGradient(srcImage, dstImage);
// Perform a Sobel filtering
EasyImage.ConvolSobel(srcImage, dstImage);

Python

from eVision import EImageBW8, EasyImage
# Images constructor
src_image = EImageBW8()
dst_image = EImageBW8()
# ...
# Source and destination images must have the same size
dst_image.SetSize(src_image)
# Perform a Uniform filtering (5x5 kernel)
EasyImage.ConvolUniform(src_image, dst_image, 2)
# Perform a Highpass filtering
EasyImage.ConvolHighpass1(src_image, dst_image)
# Perform a Gradient filtering
EasyImage.ConvolGradient(src_image, dst_image)
# Perform a Sobel filtering
EasyImage.ConvolSobel(src_image, dst_image)