Trains the EasyDeepOCR Deep Learning models. More...


Public Member Functions | |
| EDeepOCRTool () | |
| Constructs a EDeepOCRTool. | |
| EDeepOCRTool (eVision.EasyDeepLearning.EDeepOCRModel model) | |
| Constructs a EDeepOCRTool. | |
| EDeepOCRTool (eVision.EasyDeepLearning.EDeepOCRTool other) | |
| Copy constructor of a EDeepOCRTool object. | |
| override void | SerializeSettings (eVision.ESerializer serializer) |
| Serializes the EDeepOCRTool settings. | |
| void | Train (eVision.EasyDeepLearning.EDataset dataset) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset dataset, eVision.EasyDeepLearning.EDataAugmentation dataAugmentation) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset trainingDataset, eVision.EasyDeepLearning.EDataset validationDataset) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset trainingDataset, eVision.EasyDeepLearning.EDataset validationDataset, eVision.EasyDeepLearning.EDataAugmentation dataAugmentation) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset dataset, int iterations) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset dataset, eVision.EasyDeepLearning.EDataAugmentation dataAugmentation, int iterations) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset trainingDataset, eVision.EasyDeepLearning.EDataset validationDataset, int iterations) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| void | Train (eVision.EasyDeepLearning.EDataset trainingDataset, eVision.EasyDeepLearning.EDataset validationDataset, eVision.EasyDeepLearning.EDataAugmentation dataAugmentation, int iterations) |
| Trains the EDeepOCRTool with the given dataset for the specified number of iterations. | |
| eVision.EasyDeepLearning.EDeepOCRToolMetrics | GetTrainingMetrics (int i) |
| Metrics on the training dataset at the specified iteration of the training. | |
| eVision.EasyDeepLearning.EDeepOCRToolMetrics | GetValidationMetrics (int i) |
| Metrics on the validation dataset at the specified iteration of the training. | |
| Public Member Functions inherited from eVision.EasyDeepLearning.EDeepLearningTool | |
| virtual void | Load (string filePath) |
| Loads a deep learning tool. The given ESerializer must have been created for reading. | |
| virtual void | Load (eVision.ESerializer serializer) |
| Loads a deep learning tool. The given ESerializer must have been created for reading. | |
| eVision.EasyDeepLearning.EDeepLearningTool | Clone () |
| Clones this tool. | |
| virtual void | Save (string filePath, bool includeTrainingModel) |
| Saves the settings, inference and training model of the deep learning tool. | |
| virtual void | Save (string filePath) |
| Saves the settings, inference and training model of the deep learning tool. | |
| virtual void | Save (eVision.ESerializer serializer, bool includeTrainingModel) |
| Saves the settings, inference and training model of the deep learning tool. | |
| virtual void | Save (eVision.ESerializer serializer) |
| Saves the settings, inference and training model of the deep learning tool. | |
| void | SerializeSettings (eVision.ESerializer serializer) |
| Serializes the tool settings. | |
| void | SerializeInferenceModel (eVision.ESerializer serializer) |
| Serializes the inference model of the tool. | |
| void | SerializeTrainingModel (eVision.ESerializer serializer) |
| Serializes the training model of the tool. | |
| void | SaveSettings (string filePath) |
| Saves the settings of the tool to a file. | |
| void | SaveInferenceModel (string filePath) |
| Saves the tool's inference model to a file. | |
| void | SaveTrainingModel (string filePath) |
| Saves the tool's training model to a file. | |
| void | LoadSettings (string filePath) |
| Loads the settings of a tool. | |
| void | LoadInferenceModel (string filePath) |
| Loads the tool's inference model. The inference model is required to apply the tool on new images. | |
| void | LoadTrainingModel (string filePath) |
| Loads the tool's training model. The training model is required to continue a training. | |
| void | UnloadInferenceModel () |
| Unloads the inference model. | |
| void | UnloadTrainingModel () |
| Unloads the training model. | |
| void | UnloadModels () |
| Unloads the inference and training model. | |
| bool | HasInferenceModel () |
| Whether the inference model is loaded or created when the tool is not yet trained. | |
| bool | HasTrainingModel () |
| Whether the training model is loaded or created when the tool is not yet trained. | |
| bool | IsTrained () |
| Tells whether the deep learning tool has been trained. | |
| string | GetAvailableDeviceName (int i) |
| Name of the i-th device of the current engine. | |
| eVision.EasyDeepLearning.EDeepLearningDevice | GetAvailableDevice (int i) |
| i-th EDeepLearningDevice of the current engine. | |
| void | SetActiveDevice (eVision.EasyDeepLearning.EDeepLearningDevice device) |
| Sets the device with which to run or train the model. | |
| eVision.EasyDeepLearning.EDeepLearningDevice | GetActiveDevice (int i) |
| Gets the active device. By default, it returns the first active device. | |
| eVision.EasyDeepLearning.EDeepLearningDevice | GetActiveDevice () |
| Gets the active device. By default, it returns the first active device. | |
| bool | HasEngineSetupData () |
| Whether the inference model has engine setup data. | |
| void | ClearEngineSetupData () |
| Clears the engine data saved in the inference model. Use this method when your engine fails. | |
| bool | IsTraining () |
| Indicates whether the object is currently training. | |
| int | WaitForTrainingCompletion (int timeout) |
| Waits until the training is complete or the timeout is expired. A call to this method will block the calling thread for the shortest time between the timeout and the time it takes for the training to complete. | |
| int | WaitForTrainingCompletion () |
| Waits until the training is complete or the timeout is expired. A call to this method will block the calling thread for the shortest time between the timeout and the time it takes for the training to complete. | |
| int | WaitForIterationCompletion () |
| Waits until an iteration is complete. A call to this method will block the calling thread until a training iteration in the training thread is finished. This method returns the number of trained iterations. | |
| int | StopTraining (bool wait) |
| Stops training and returns the last completed iteration. If the parameter 'wait' is set to true, the method will wait for the training thread to completely stop. Otherwise, the method will return immediately. | |
| void | SetLearningRate (eVision.EasyDeepLearning.EDeepLearningLearningRateType type, float[] parameters) |
| Specifies how the value of the learning rate and how it evolves during training. | |
| void | InitializeInference (int width, int height, eVision.EImageType imageType, int numImages) |
| Initializes the neural network for inference (i.e. making predictions with the neural network). | |
| void | InitializeInference (eVision.EBaseROI img) |
| Initializes the neural network for inference (i.e. making predictions with the neural network). | |
| void | InitializeInference (ref eVision.EBaseROI[] imgList) |
| Initializes the neural network for inference (i.e. making predictions with the neural network). | |
| void | InitializeInference (ref eVision.EImageBW8[] imgList) |
| Initializes the neural network for inference (i.e. making predictions with the neural network). | |
| void | InitializeInference (ref eVision.EImageBW16[] imgList) |
| Initializes the neural network for inference (i.e. making predictions with the neural network). | |
| void | InitializeInference (ref eVision.EImageC24[] imgList) |
| Initializes the neural network for inference (i.e. making predictions with the neural network). | |
| string | GetLabel (uint index) |
| Gets the label from its index. If the tool is not trained, the method may throw an exception. | |
| virtual void | SetLabel (uint index, string label) |
| Changes a label predicted by the tool. | |
| void | SetLabelWeight (uint index, float weight) |
| Sets the label weight. If the tool is not trained, the label weights are not defined. After training, they are set to the value of the training dataset label weights. | |
| float | GetLabelWeight (uint index) |
| Gets the label weight. If the tool is not trained, the label weights are not defined. After training, they are set to the value of the training dataset label weights. | |
| void | SetLabelColor (uint index, eVision.ERGBColor c) |
| Changes a label color. | |
| eVision.ERGBColor | GetLabelColor (uint index) |
| Label color. The label colors affect how the results will be displayed. | |
| void | SetLabelOpacity (uint index, byte opacity) |
| Changes a label opacity (between 0 for fully transparent and 255 for opaque color). | |
| byte | GetLabelOpacity (uint index) |
| Gets the label opacity (between 0 for fully transparent and 255 for opaque color). The label opacities affect with the label colors how the results will be displayed. | |
| int | GetOptimalNumImagesForBatchSize (eVision.EBaseROI sampleImage) |
| Optimal number of images to process together for inference given the batch size and EDeepLearningTool.GetNumPatchesForImage. | |
| int | GetOptimalNumImagesForBatchSize (int imageWidth, int imageHeight) |
| Optimal number of images to process together for inference given the batch size and EDeepLearningTool.GetNumPatchesForImage. | |
| int | GetNumPatchesForImage (eVision.EBaseROI sampleImage) |
| Number of patches that will be extracted from an input image to perform inference. | |
| virtual int | GetNumPatchesForImage (int imageWidth, int imageHeight) |
| Number of patches that will be extracted from an input image to perform inference. | |
| virtual void | Clean () |
| Reset the engine and clean CPU and GPU memory allocated for running the model. | |
Properties | |
| override eVision.EasyDeepLearning.EDeepLearningToolType | ToolType [get] |
| Type of the deep learning tool. | |
| eVision.EasyDeepLearning.EDeepOCRModel | Model [get, set] |
| Type of Deep OCR model to train and evaluate. | |
| eVision.EasyDeepLearning.EDeepOCRModelParameters | Parameters [get, set] |
| Parameters of the model. | |
| Properties inherited from eVision.EasyDeepLearning.EDeepLearningTool | |
| eVision.EasyDeepLearning.EDeepLearningToolType | ToolType [get] |
| Type of the deep learning tool. | |
| bool | EnableGPU [get, set] |
| Enable the use of a GPU for training and inference of the deep learning tool. If the active engine is not the default engine, EDeepLearningTool.EnableGPU will be false even if the active device has a GPU device type. Setting EDeepLearningTool.EnableGPU to any value when the active engine is not the default one will throw an exception. | |
| uint[] | GPUIndexes [get, set] |
| Indexes of the GPUs to use for computations. | |
| uint | NumGPUs [get] |
| Number of detected NVIDIA GPU. | |
| string | Engine [get, set] |
| Sets the engine with which to execute or train the neural network. | |
| eVision.EasyDeepLearning.EDeepLearningInferencePrecision | InferencePrecision [get, set] |
| Inference precision. | |
| int | NumAvailableDevices [get] |
| Available devices for the current EDeepLearningTool.Engine. | |
| eVision.EasyDeepLearning.EDeepLearningDevice[] | AvailableDevices [get] |
| Get all available device for the current engine. | |
| int | NumActiveDevices [get] |
| Gets the number of devices with which to run or train the model. | |
| string | ActiveDeviceByName [set] |
| Sets the device with which to run the model using its name. | |
| int | ActiveDeviceById [set] |
| Sets the device with which to run the model using its index in the list returned by EDeepLearningTool.AvailableDevices. | |
| eVision.EasyDeepLearning.EDeepLearningDevice[] | ActiveDevices [get, set] |
| Devices with which to run or train the model. | |
| int[] | ActiveDevicesById [set] |
| Sets the devices with which to run the model using their index in the list returned by EDeepLearningTool.AvailableDevices. | |
| eVision.EasyDeepLearning.EDeepLearningExecutionSettings | ExecutionSettings [get, set] |
| Execution settings of the tool (engine, device(s), inference precision, batch size settings). | |
| eVision.EasyDeepLearning.EDeepLearningDevice | EngineSetupDataDevice [get] |
| Device corresponding to the engine data contained in the tool. | |
| eVision.EasyDeepLearning.EDeepLearningInferencePrecision | EngineSetupDataInferencePrecision [get] |
| Inference precision corresponding to the engine data contained in the tool. | |
| int | EngineSetupDataBatchSize [get] |
| Batch size corresponding to the engine data contained in the tool. | |
| bool | OptimizeBatchSize [get, set] |
| Indicates whether to optimize the batch size (see EDeepLearningTool.BatchSize) to maximize the training and inference speed according to the engine, the device and the available memory. | |
| int | BatchSizeForMaximumInferenceSpeed [get] |
| Computes the batch size that will maximize the inference speed on NVIDIA GPU. For all other devices, it will return 1. | |
| int | BatchSize [get, set] |
| Batch size. The batch size is the number of images that are processed together during training and batch inference. | |
| float | CurrentTrainingProgression [get] |
| Current training progression as a percentage (between 0 and 1). | |
| uint | CurrentTrainingFinishedIterations [get] |
| Number of iterations that are already finished in the current training. | |
| uint | CurrentTrainingNumIterations [get] |
| Total number of training iterations that will be performed during the current training of the deep learning tool. | |
| uint | NumTrainedIterations [get] |
| Number of iterations that were performed to train this deep learning tool. | |
| int | BestIteration [get] |
| Iteration at which the minimum validation error was reached. After training, the tool is in the state it was at this best iteration. | |
| ulong | ImageCacheSize [get, set] |
| Size in byte of the image cache. The cache is used during training to store reformatted and normalized images. A correctly sized cache can reduce the hard drive accesses and the preprocessing time for each image. | |
| string | Path [get] |
| Path of the tool when loaded or saved using EDeepLearningTool.Save or EDeepLearningTool.Load. | |
| string | InferenceModelPath [get] |
| Path of the inference model when loaded or saved using EDeepLearningTool.SaveInferenceModel, EDeepLearningTool.LoadInferenceModel or EDeepLearningTool.SerializeInferenceModel. | |
| string | TrainingModelPath [get] |
| Path of the training model when loaded or saved using EDeepLearningTool.SaveTrainingModel, EDeepLearningTool.LoadTrainingModel or EDeepLearningTool.SerializeTrainingModel. | |
| string | SettingsPath [get] |
| Path of the settings when loaded or saved using EDeepLearningTool.SaveSettings, EDeepLearningTool.LoadSettings or EDeepLearningTool.SerializeSettings. | |
| int | AutoSavePeriod [get, set] |
| Auto-save period. The auto-save period is the number of training iterations between each automatic save of the model. | |
| eVision.EasyDeepLearning.EDeepLearningLearningRateType | LearningRateType [get] |
| Learning rate type. | |
| float[] | LearningRateParameters [get] |
| Parameters of the learning rate. | |
| bool | EnableDeterministicTraining [get, set] |
| Whether to use deterministic training algorithm that allows to repeatable training results. Default value: false. | |
| int | DeterministicTrainingRandomSeed [get, set] |
| Random seed to use when EDeepLearningTool.EnableDeterministicTraining is set to true. The default value is 42. | |
| uint | NumLabels [get] |
| Number of labels of this tool. If the tool is not trained, the method will throw an exception. | |
| static int | NumAvailableEngines [get] |
| Number of available engines. | |
| static string[] | AvailableEngines [get] |
| Available engines. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from eVision.EasyDeepLearning.EDeepLearningTool | |
| static eVision.EasyDeepLearning.EDeepLearningTool | Create (string path) |
| Factory method to open a deep learning tool. | |
| static eVision.EasyDeepLearning.EDeepLearningTool | Create (eVision.ESerializer serializer) |
| Factory method to open a deep learning tool. | |
| static eVision.EasyDeepLearning.EDeepLearningTool | Create (eVision.EasyDeepLearning.EDeepLearningToolType type) |
| Factory method to open a deep learning tool. | |
| static string | GetAvailableEngineName (int id) |
| Gets the name of the engine given its id. | |
| static eVision.EasyDeepLearning.EDeepLearningDevice[] | GetAvailableDevicesForEngine (string engine) |
| Available devices for the specified engine. | |
Trains the EasyDeepOCR Deep Learning models.
License(s): EasyDeepOCR
| eVision.EasyDeepLearning.EDeepOCRTool.EDeepOCRTool | ( | ) |
Constructs a EDeepOCRTool.
| eVision.EasyDeepLearning.EDeepOCRTool.EDeepOCRTool | ( | eVision.EasyDeepLearning.EDeepOCRModel | model | ) |
Constructs a EDeepOCRTool.
| model | The type of model to train. |
| eVision.EasyDeepLearning.EDeepOCRTool.EDeepOCRTool | ( | eVision.EasyDeepLearning.EDeepOCRTool | other | ) |
Copy constructor of a EDeepOCRTool object.
| other | Reference to the EDeepOCRTool object that should be copied. |
| eVision.EasyDeepLearning.EDeepOCRToolMetrics eVision.EasyDeepLearning.EDeepOCRTool.GetTrainingMetrics | ( | int | i | ) |
Metrics on the training dataset at the specified iteration of the training.
| i | Iteration of the training |
| eVision.EasyDeepLearning.EDeepOCRToolMetrics eVision.EasyDeepLearning.EDeepOCRTool.GetValidationMetrics | ( | int | i | ) |
Metrics on the validation dataset at the specified iteration of the training.
| i | Iteration of the training |
| override void eVision.EasyDeepLearning.EDeepOCRTool.SerializeSettings | ( | eVision.ESerializer | serializer | ) |
Serializes the EDeepOCRTool settings.
| serializer | Pointer to ESerializer. |
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | dataset | ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| dataset | EDataset with which to train and validate the deep learning tool |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | dataset, |
| eVision.EasyDeepLearning.EDataAugmentation | dataAugmentation ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| dataset | EDataset with which to train and validate the deep learning tool |
| dataAugmentation | Data augmentation to use during training |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | dataset, |
| eVision.EasyDeepLearning.EDataAugmentation | dataAugmentation, | ||
| int | iterations ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| dataset | EDataset with which to train and validate the deep learning tool |
| dataAugmentation | Data augmentation to use during training |
| iterations | Number of iterations for training. |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | dataset, |
| int | iterations ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| dataset | EDataset with which to train and validate the deep learning tool |
| iterations | Number of iterations for training. |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | trainingDataset, |
| eVision.EasyDeepLearning.EDataset | validationDataset ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| trainingDataset | EDataset with which to train the deep learning tool |
| validationDataset | EDataset with which to validate the deep learning tool |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | trainingDataset, |
| eVision.EasyDeepLearning.EDataset | validationDataset, | ||
| eVision.EasyDeepLearning.EDataAugmentation | dataAugmentation ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| trainingDataset | EDataset with which to train the deep learning tool |
| validationDataset | EDataset with which to validate the deep learning tool |
| dataAugmentation | Data augmentation to use during training |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | trainingDataset, |
| eVision.EasyDeepLearning.EDataset | validationDataset, | ||
| eVision.EasyDeepLearning.EDataAugmentation | dataAugmentation, | ||
| int | iterations ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| trainingDataset | EDataset with which to train the deep learning tool |
| validationDataset | EDataset with which to validate the deep learning tool |
| dataAugmentation | Data augmentation to use during training |
| iterations | Number of iterations for training. |
License(s): EasyDeepOCR
| void eVision.EasyDeepLearning.EDeepOCRTool.Train | ( | eVision.EasyDeepLearning.EDataset | trainingDataset, |
| eVision.EasyDeepLearning.EDataset | validationDataset, | ||
| int | iterations ) |
Trains the EDeepOCRTool with the given dataset for the specified number of iterations.
At the end of the training, the deep learning tool is in the state it was at the iteration that gave the minimum validation error. See EDeepLearningTool.BestIteration.
If no iterations is given, the training will stop automatically.
| trainingDataset | EDataset with which to train the deep learning tool |
| validationDataset | EDataset with which to validate the deep learning tool |
| iterations | Number of iterations for training. |
License(s): EasyDeepOCR
|
getset |
Type of Deep OCR model to train and evaluate.
Throws an exception if the tool is already trained.
|
getset |
Parameters of the model.
|
get |
Type of the deep learning tool.