Prepare Once, Use Multiple Times¶
This code snippet shows how to perform a threshold on a circular region in multiple image while preparing it only once.
C++¶
#include <eVision/EasyImage/EasyImage.h>
#include <eVision/Easy/ECircleRegion.h>
using namespace eVision;
// Image constructors
EImageBW8 srcImage[10];
EImageBW8 dstImage[10];
EPoint center(0, 0);
float radius(5);
//...
// Create the region
ECircleRegion circleRegion(center, radius);
// Prepare the region
circleRegion.Prepare(srcImage[0]);
// Threshold the images
for (int i = 0; i < 10; i++)
EasyImage::Threshold(&srcImage[i], circleRegion, &dstImage[i]);
C#¶
using eVision;
// Image constructors
EImageBW8[] srcImage = new EImageBW8[10];
EImageBW8[] dstImage = new EImageBW8[10];
EPoint center = new EPoint(0, 0);
int radius = 5;
//...
// Create the region
ECircleRegion circleRegion = new ECircleRegion(center, radius);
// Prepare the region
circleRegion.Prepare(srcImage[0]);
// Threshold the images
for (int i = 0; i < 10; i++)
EasyImage.Threshold(srcImage[i], circleRegion, dstImage[i]);
Python¶
import eVision
# Image constructors
src_image = []
for i in range(10):
src_image.append(eVision.EImageBW8())
dst_image = []
for i in range(10):
dst_image.append(eVision.EImageBW8())
center = eVision.EPoint(0, 0)
radius = 5
# ...
# Create the region
circle_region = eVision.ECircleRegion(center, radius)
# Prepare the region
circle_region.Prepare(src_image[0])
# Threshold the images
for i in range(10):
eVision.EasyImage.Threshold(src_image[i], circle_region, dst_image[i])