Image Encoder

Functional Guide | Reference: Encode, SetBlackLayerEncoded, SetWhiteLayerEncoded, SetMode, SetAbsoluteThreshold, GetGrayscaleSingleThresholdSegmenter

//////////////////////////////////////////////////////////////
// This code snippet shows how to build blobs belonging to  //
// the white layer according to the minimum residue method  //
// and how to build blobs belonging to the black layer      //
// according to an absolute threshold.                      //
//////////////////////////////////////////////////////////////

// Image constructor
EImageBW8 srcImage;

// Image encoder
EImageEncoder encoder;

// Coded image
ECodedImage2 codedImage;

// ...

// Build the blobs belonging to the white layer,
// the segmentation is based on the Minimum Residue method
encoder.Encode(srcImage, codedImage);

// Build the blobs belonging to the black layer,
// the segmentation is based on an absolute threshold (110)
Segmenters::EGrayscaleSingleThresholdSegmenter& segmenter= encoder.GetGrayscaleSingleThresholdSegmenter();
segmenter.SetBlackLayerEncoded(true);
segmenter.SetWhiteLayerEncoded(false);

segmenter.SetMode(EGrayscaleSingleThreshold_Absolute);
segmenter.SetAbsoluteThreshold(110);

encoder.Encode(srcImage, codedImage);
//////////////////////////////////////////////////////////////
// This code snippet shows how to build blobs belonging to  //
// the white layer according to the minimum residue method  //
// and how to build blobs belonging to the black layer      //
// according to an absolute threshold.                      //
//////////////////////////////////////////////////////////////

// Image constructor
EImageBW8 srcImage= new EImageBW8();

// Image encoder
EImageEncoder encoder= new EImageEncoder();

// Coded image
ECodedImage2 codedImage= new ECodedImage2();

// ...

// Build the blobs belonging to the white layer,
// the segmentation is based on the Minimum Residue method
encoder.Encode(srcImage, codedImage);

// Build the blobs belonging to the black layer,
// the segmentation is based on an absolute threshold (110)
Euresys.Open_eVision_1_1.Segmenters.EGrayscaleSingleThresholdSegmenter segmenter= encoder.GrayscaleSingleThresholdSegmenter;
segmenter.BlackLayerEncoded= true;
segmenter.WhiteLayerEncoded= false;

segmenter.Mode= EGrayscaleSingleThreshold.Absolute;
segmenter.AbsoluteThreshold= 110;

encoder.Encode(srcImage, codedImage);