Tool and Images

EasyClassify is the deep learning classification library of Open eVision (EClassifier class).

Deep Learning Studio

To create a classification tool in Deep Learning Studio:

1. Start Deep Learning Studio.
2. Select EasyClassify in the New deep learning tool dialog.

Input image format and normalization

The input image format must have the width, height and number of channels corresponding to the input of the neural network.
By default, a classifier uses the image format of the first image inserted in the training dataset:
All other images are automatically reformatted (anisotropic rescaling and conversion between color and grayscale).
If EClassifier::SetEnableAutomaticImageReformat(false) is called, the classifier throws an exception when attempting to train or classify an image that does not have the correct image format.
In Deep Learning Studio, you can set the input image format in the Tool properties and data augmentation tab.

In the API, you can also set manually the input image format with the methods SetWidth, SetHeight and SetChannels (1 channel for grayscale images and 3 channels for color images).
The input image format must have a resolution of at least 128 x 128 for the normal and the large capacity or 64 x 64 for the small capacity and at most 1024 x 1024.
For the best processing speed, use the lowest resolution at which your "objects of interest" are still recognizable.
If your original images are smaller than the minimum resolution, upscale them to a resolution higher or equal to 128 x 128.
If your original images are larger than the maximum resolution, lower the resolution:
- If the "objects of interest" are still recognizable, explicitly set the input image format of the classifier to this lower resolution.
- If the "objects of interest" are not recognizable, divide your original images into sub-windows and use these sub-windows to train the classifier and make predictions. This presents the additional advantage of localizing the "object of interest" inside the original image.

The Capacity of the neural network (default: Normal) represents the quantity of information that it is capable of learning.
The small network is much smaller in memory and faster at inference.
The large network can handle more complex datasets. It is also better for datasets with a lot of noise.

In the API:

The capacity values are defined by the enumerate type EClassifierCapacity.
Use EClassifier::SetCapacity to set the capacity of your tool.

Histogram equalization

The classifier can also apply an histogram equalization to every input image:

In Deep Learning Studio, activate it in the image format controls in the Image properties and augmentation tab.
In the API, use EClassifier::SetEnableHistogramEqualization(true) to activate it.

Training

To train your tool, see Training a Deep Learning Tool.