Sample Programs

Image processing

Basic
Basic Sample
  • Display an image.

  • Display and graphically interact with an ROI.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg
Basic Sample Program
BasicWPF
BasicWPF Sample
  • Display an image in a WPF context.

  • Display and graphically interact with an ROI.

../../_images/cpp.svg
BasicWPF Sample Program
ConsoleBasic
  • Initialize and release the eVision library.

  • Check for a specific license.

  • Load an image and perform a simple processing on it.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/cmake.svg
ConsoleBasic Sample Program
Region
Region Sample
  • Create an ERegion and use it to restrict eVision processing to its domain.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
Region Sample Program
RegionFreeHand
RegionFreeHand Sample
  • Create an ERegion using the ERegionFreeHandPainter.

../../_images/cpp.svg ../../_images/cs.svg
RegionFreeHand Sample Program
EasyImageFilter
EasyImageFilter Sample
  • Apply filter operations on a loaded image.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyImageFilter Sample Program
FourierFiltering
FourierFiltering Sample
  • Compute the direct Fourier transform.

  • Compute the inverse Fourier transform.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
FourierFiltering Sample Program
EasyColorComponent
EasyColorComponent Sample
  • Retrieve one component of a color image after converting it from RGB to a given color space.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyColorComponent Sample Program
EasyHDRFusion
EasyHDRFusion Sample
  • Perform an HDR Fusion on a specific set of images.

../../_images/cpp.svg ../../_images/cs.svg
EasyHDRFusion Sample Program
EGrabberBridge
EGrabberBridge Sample
  • Use the EGrabberBridge functionality to import and use images produced by an object eGrabber with eVision.

../../_images/cpp.svg ../../_images/cs.svg
EGrabberBridge Sample Program
SharedLibraryConsole
  • Use eVision in a C++ DLL.

../../_images/cmake.svg
SharedLibraryConsole Sample Program

3D Processing

Easy3DViewer
Easy3DViewer Sample
  • Use most of the features of the Easy3D class E3DViewer.

  • Convert 3D files formats.

  • Use a point picking.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
Easy3DViewer Sample Program
Easy3DViewerWPF
Easy3DViewerWPF Sample
  • Display an E3DViewer in a WPF context.

../../_images/cpp.svg
Easy3DViewerWPF Sample Program
Easy3DPhotometricStereo
Easy3DPhotometricStereo Sample
  • Apply photometric stereo to several images to retrieve their albedo, gradients, curvatures or height map.

../../_images/cpp.svg ../../_images/cs.svg
Easy3DPhotometricStereo Sample Program
Easy3DPointCloudToMesh
Easy3DPointCloudToMesh Sample
  • Generate a mesh from a point cloud.

../../_images/cpp.svg ../../_images/cs.svg
Easy3DPointCloudToMesh Sample Program
Easy3DZMapGenerator
Easy3DZMapGenerator Sample
  • Generate a ZMap from a mesh or a point cloud.

../../_images/cpp.svg ../../_images/cs.svg
Easy3DZMapGenerator Sample Program
Easy3DProcessing2D
Easy3DProcessing2D Sample
  • Load a depth map.

  • Apply a 2D operator (the text reading tool EasyOCR2) on the gray scale pixel values.

../../_images/cpp.svg
Easy3DProcessing2D Sample Program
Easy3DMultiViews
Easy3DMultiViews Sample
  • Load and display point clouds in multiple instances of the class E3DViewer.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
Easy3DMultiViews Sample Program
Easy3DPCBWarpage
Easy3DPCBWarpage Sample
  • Measure the warpage of a PCB with Easy3D.

../../_images/cpp.svg
Easy3DPCBWarpage Sample Program
Easy3DCoaxlinkLLE
Easy3DCoaxlinkLLE Sample
  • Acquire depth maps from a Coaxlink 3D LLE frame grabber and optionally save them.

../../_images/cpp.svg
Easy3DCoaxlinkLLE Sample Program
Easy3DLaserLineCalibration
Easy3DLaserLineCalibration Sample
  • Compute and save the calibration model.

  • Apply the calibration to a depth map.

  • Save the resulting point cloud.

../../_images/cpp.svg
Easy3DLaserLineCalibration Sample Program
Easy3DLaserLineExtract
Easy3DLaserLineExtract Sample
  • Create a depth map from a series of profile images using the software laser line extractor.

../../_images/cpp.svg ../../_images/qt.svg
Easy3DLaserLineExtract Sample Program
Easy3DObjectExtract
Easy3DObjectExtract Sample
  • Load an image.

  • Set the X, Y and Z resolutions.

  • Display the corresponding point cloud and the extracted 3D objects.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
Easy3DObjectExtract Sample Program
Easy3DMatchMatch
Easy3DMatchMatch Sample
  • Match a sample (point cloud or ZMap) on a reference (3D mesh, point cloud or ZMap).

../../_images/cpp.svg ../../_images/cs.svg
Easy3DMatchMatch Sample Program
Easy3DMatchAlign
Easy3DMatchAlign Sample
  • Align a sample (point cloud or ZMap) on a reference (3D mesh, point cloud or ZMap).

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
Easy3DMatchAlign Sample Program
Easy3DMatchPointCloudMerger
Easy3DMatchPointCloudMerger Sample
  • Merge several point clouds by using a calibration procedure with a specific object.

../../_images/cpp.svg ../../_images/cs.svg
Easy3DMatchPointCloudMerger Sample Program

Matching and Measurement

EasyGaugeBasic
EasyGaugeBasic Sample
  • Load an image and apply a gauge from EasyGauge, chosen between a Point Gauge, a Line Gauge, a Rectangle Gauge, a Circle Gauge, a Wedge Gauge and a Polygon Gauge.

  • Implement graphical edition of the gauge geometry.

  • Set and display the main parameters of the gauges: the transition polarity, the choice of measure and various display options.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg
EasyGaugeBasic Sample Program
EasyGaugeRegion
EasyGaugeRegion Sample
  • Load an image and apply a gauge from EasyGauge, chosen between a Rectangle Gauge and a Circle Gauge.

  • Create a region corresponding to the gauge from the result.

  • Perform a blob encoding operation on it.

../../_images/cpp.svg
EasyGaugeRegion Sample Program
EasyGaugePolygon
EasyGaugePolygon Sample
  • Use the class EPolygonGauge of the EasyGauge library.

  • Edit the geometry of the gauge and change the main parameters.

  • Configure various display options.

../../_images/cpp.svg ../../_images/cs.svg
EasyGaugePolygon Sample Program
EasyFindLearn
EasyFindLearn Sample
  • Load an image.

  • Move and size the region of interest to define the pattern.

  • Learn the pattern in the region of interest.

  • Change the tolerances using the Tolerances menu.

  • Find the pattern using the Find menu.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyFindLearn Sample Program
EasyFindVectorLearn
EasyFindVectorLearn Sample
  • Use EasyFind with vectorized learning patterns. In this mode, learning is done on collections of 2D geometrical shapes rather than rasterized patterns.

  • Open a DXF or eVision vector model with File > Open Model. Right-click to change the polarity of a transition.

  • Save the vector model with the edited polarity.

  • Learn the pattern with the button Learn.

  • Open a search image and find the pattern with the button Find.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
EasyFindVectorLearn Sample Program
EasyMatchLearn
EasyMatchLearn Sample
  • Learn a pattern from a region of interest in an image.

  • Find one or several instances of that pattern in the same image.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyMatchLearn Sample Program
EasyObjectEChecker2
EasyObjectEChecker2 Sample
  • Specify the inspection area.

  • Select fiducials for the localization and the alignment of the inspection area.

  • Train the method and apply it on new images.

../../_images/cpp.svg ../../_images/cs.svg
EasyObjectEChecker2 Sample Program
EasyObjectInertia
EasyObjectInertia Sample
  • Find blobs (objects or holes that have the same gray level range) in the image.

  • Keep only the blobs whose area is in a given range.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyObjectInertia Sample Program

Deep Learning Inspection

EasyClassifyTrain
  • Train an EasyClassify tool in console mode.

../../_images/cpp.svg ../../_images/cs.svg
EasyClassifyTrain Sample Program
EasyClassifyInference
EasyClassifyInference Sample
  • Perform an inference with EasyClassify.

  • Display the results.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/python.svg
EasyClassifyInference Sample Program
EasyClassifyMultiThreadInference
EasyClassifyMultiThreadInference Sample
  • Perform a multithread inference with EasyClassify.

  • Implement external and internal multithreading.

../../_images/cs.svg
EasyClassifyMultiThreadInference Sample Program
EasySegmentSupervisedTrain
  • Train an EasySegment Supervised tool in console mode.

../../_images/cpp.svg ../../_images/cs.svg
EasySegmentSupervisedTrain Sample Program
EasySegmentSupervisedInference
EasySegmentSupervisedInference Sample
  • Perform an inference with EasySegment Supervised.

  • Display the results.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/python.svg
EasySegmentSupervisedInference Sample Program
EasySegmentSupervisedMultiThreadInference
  • Perform a multithread inference with EasySegment Supervised in console mode.

  • Implement external and internal multithreading.

../../_images/cpp.svg
EasySegmentSupervisedMultiThreadInference Sample Program
EasySegmentUnsupervisedTrain
  • Train an EasySegment Unsupervised tool in console mode.

../../_images/cpp.svg ../../_images/cs.svg
EasySegmentUnsupervisedTrain Sample Program
EasySegmentUnsupervisedInference
EasySegmentUnsupervisedInference Sample
  • Perform an inference with EasySegment Unsupervised.

  • Display the results.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/python.svg
EasySegmentUnsupervisedInference Sample Program
EasyLocateTrain
  • Train an EasyLocate tool in console mode.

../../_images/cpp.svg ../../_images/cs.svg
EasyLocateTrain Sample Program
EasyLocateInference
EasyLocateInference Sample
  • Perform an inference with EasyLocate.

  • Display the results.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/python.svg
EasyLocateInference Sample Program
EasyLocateMultiThreadInference
EasyLocateMultiThreadInference Sample
  • Perform a multithread inference with EasyLocate.

  • Implement external and internal multithreading.

../../_images/qt.svg
EasyLocateMultiThreadInference Sample Program

Text and Code Reading

EasyCodeReading
EasyCodeReading Sample
  • Read a bar code, a data matrix and a QR code in an image with a single read call.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/python.svg
EasyCodeReading Sample Program
EasyBarCodeRead
EasyBarCodeRead Sample
  • Read a 1D bar code in an image.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyBarCodeRead Sample Program
EasyBarCodeReadMail
EasyBarCodeReadMail Sample
  • Read a mail bar code in an image.

../../_images/cpp.svg ../../_images/cs.svg
EasyBarCodeReadMail Sample Program
EasyMatrixCodeRead
EasyMatrixCodeRead Sample
  • Read a data matrix code in an image.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/python.svg
EasyMatrixCodeRead Sample Program
EasyQRCodeRead
EasyQRCodeRead Sample
  • Read a QR code in an image.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyQRCodeRead Sample Program
EasyOcrRead
EasyOcrRead Sample
  • Read a text inside the ROI of an image using EasyOCR (superseded by EasyOCR2).

  • Use a configuration based on a OCR font file (.ocr).

../../_images/cpp.svg
EasyOcrRead Sample Program
EasyOcr2Read
EasyOcr2Read Sample
  • Read a text inside the ROI of an image.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg ../../_images/vb.svg ../../_images/python.svg
EasyOcr2Read Sample Program
EasyDeepOCRRead
EasyDeepOCRRead Sample
  • Read all the texts in an image with a single read call.

  • Load a model.

../../_images/cpp.svg ../../_images/cs.svg ../../_images/qt.svg
EasyDeepOCRRead Sample Program
EasyDeepOCRReadConsole
  • Read all the texts in an image with a single read call.

  • Load a model.

  • Set a topology.

../../_images/cmake.svg ../../_images/python.svg
EasyDeepOCRReadConsole Sample Program

Applicative Processing Tools

EasySpotDetector
EasySpotDetector Sample
  • Load an image and the corresponding EasySpotDetector model.

  • Perform the detection of spots (particles and scratches).

  • Display the results over the image.

../../_images/cpp.svg ../../_images/cs.svg
EasySpotDetector Sample Program

Python Specific

eGrabber
egrabber_acquisition Sample
  • Acquire images through the eGrabber camera API.

  • Manipulate the images.

../../_images/python.svg
egrabber_acquisition Sample Program
OpenCV camera
openCV_acquisition Sample
  • Acquire images through the OpenCV camera API.

  • Manipulate the images.

../../_images/python.svg
openCV_acquisition (OpenCV Camera Acquisition) Sample Program
OpenGL
easy3d_viewer Sample
  • Display a 3D resource (cloud or mesh) within an eVision 3DViewer using OpenGL and SDL2.

../../_images/python.svg
easy3d_viewer Sample Program
Qt (EasyFind)
easy_find_learn Sample
  • Learn a pattern.

  • Find it in an image using EasyFind in a Qt application.

../../_images/python.svg
easy_find_learn Sample Program
Qt (EasyGauge)
easy_gauge_basic Sample
  • Make subpixel measurements with EasyGauge in a Qt application.

../../_images/python.svg
easy_gauge_basic Sample Program
VimbaX
vimbax_acquisition Sample
  • Acquire images through the VimbaX camera API.

  • Manipulate the images.

../../_images/python.svg
vimbax_acquisition Sample Program
Base Web
base_web Sample
  • Make image acquisition in a web server.

  • Perform image processing.

  • Broadcast the images using HTTP to any remote client through a web browser.

../../_images/python.svg
Base Web Sample Program
Basic Tkinter
basic_tkinter Sample
  • Perform and rotate and scale an image.

  • Display the image using the Tkinter GUI framework.

../../_images/python.svg
Basic Tkinter Sample Program