read_dl_modelT_read_dl_modelReadDlModelReadDlModelread_dl_model (Operator)

Name

read_dl_modelT_read_dl_modelReadDlModelReadDlModelread_dl_model — Read a deep learning model from a file.

Signature

read_dl_model( : : FileName : DLModelHandle)

Herror T_read_dl_model(const Htuple FileName, Htuple* DLModelHandle)

void ReadDlModel(const HTuple& FileName, HTuple* DLModelHandle)

void HDlModel::HDlModel(const HString& FileName)

void HDlModel::HDlModel(const char* FileName)

void HDlModel::HDlModel(const wchar_t* FileName)   (Windows only)

void HDlModel::ReadDlModel(const HString& FileName)

void HDlModel::ReadDlModel(const char* FileName)

void HDlModel::ReadDlModel(const wchar_t* FileName)   (Windows only)

static void HOperatorSet.ReadDlModel(HTuple fileName, out HTuple DLModelHandle)

public HDlModel(string fileName)

void HDlModel.ReadDlModel(string fileName)

def read_dl_model(file_name: str) -> HHandle

Description

The operator read_dl_modelread_dl_modelReadDlModelReadDlModelReadDlModelread_dl_model reads a deep learning model. Such models have to be in the HALCON format or in the ONNX format (see the reference below). Restrictions apply to the latter. As a result, the handle DLModelHandleDLModelHandleDLModelHandleDLModelHandleDLModelHandledlmodel_handle is returned.

The model is loaded from the file FileNameFileNameFileNameFileNamefileNamefile_name. This file is thereby searched in the directory $HALCONROOT/dl/ as well as in the currently used directory. The default HALCON file extension for deep learning networks is '.hdl'".hdl"".hdl"".hdl"".hdl"".hdl".

Please note that the values of runtime specific parameters are not written to file, see write_dl_modelwrite_dl_modelWriteDlModelWriteDlModelWriteDlModelwrite_dl_model. As a consequence, when reading a model, these parameters are initialized with their default value, see get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param.

For further explanations on deep learning models in HALCON, see the chapter Deep Learning / Model.

Reading in a Model Provided by HALCON

HALCON provides pretrained neural networks for classification and semantic segmentation. These neural networks are good starting points when training a custom network. They have been pretrained on a large image dataset. For anomaly detection, HALCON provides initial models.

Models for Anomaly Detection

The following networks are provided for anomaly detection:

'initial_dl_anomaly_medium.hdl'"initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl"

This neural network is designed to be memory and runtime efficient.

The network expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it requires certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values:

'image_width'"image_width""image_width""image_width""image_width""image_width": 480

'image_height'"image_height""image_height""image_height""image_height""image_height": 480

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -2

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 2

The network architecture allows changes concerning the image dimensions, but the sizes 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" have to be multiples of 32 pixels, resulting in a minimum of 32 pixels.

'initial_dl_anomaly_large.hdl'"initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl"

This neural network is assumed to be better suited for more complex anomaly detection tasks. This comes at the cost of being more time and memory demanding.

The network expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it requires certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values:

'image_width'"image_width""image_width""image_width""image_width""image_width": 480

'image_height'"image_height""image_height""image_height""image_height""image_height": 480

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -2

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 2

The network architecture allows changes concerning the image dimensions, but the sizes 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" have to be multiples of 32 pixels, resulting in a minimum of 32 pixels.

Models for Classification

The following pretrained neural networks are provided for classification and usable as backbones for detection:

'pretrained_dl_classifier_alexnet.hdl'"pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl":

This neural network is designed for simple classification tasks. It is characterized by its convolution kernels in the first convolution layers, which are larger than those in other networks with comparable classification performance (e.g., 'pretrained_dl_classifier_compact.hdl'"pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl"). This may be beneficial for feature extraction.

This classifier expects the images to be of the type 'real'"real""real""real""real""real". Additionally, the network is designed for certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values with which the classifier has been trained:

'image_width'"image_width""image_width""image_width""image_width""image_width": 224

'image_height'"image_height""image_height""image_height""image_height""image_height": 224

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -127

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 128

The network architecture allows changes concerning the image dimensions. 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" should not be less than 29 pixels. There is no maximum image size, but large image sizes will increase the memory demand and the runtime significantly. Changing the image size will reinitialize the weights of the fully connected layers and therefore makes a retraining necessary.

Note that one can improve the runtime for this network by fusing the convolution and ReLU layers, see set_dl_model_paramset_dl_model_paramSetDlModelParamSetDlModelParamSetDlModelParamset_dl_model_param and the parameter 'fuse_conv_relu'"fuse_conv_relu""fuse_conv_relu""fuse_conv_relu""fuse_conv_relu""fuse_conv_relu".

'pretrained_dl_classifier_compact.hdl'"pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl":

This neural network is designed to be more memory and runtime efficient.

The classifier expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it requires certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values with which the classifier has been trained:

'image_width'"image_width""image_width""image_width""image_width""image_width": 224

'image_height'"image_height""image_height""image_height""image_height""image_height": 224

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -127

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 128

This network does not contain any fully connected layer. The network architecture allows changes concerning the image dimensions. 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" should not be less than 15 pixels.

'pretrained_dl_classifier_enhanced.hdl'"pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl":

This neural network has more hidden layers than 'pretrained_dl_classifier_compact.hdl'"pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl" and is therefore assumed to be better suited for more complex classification tasks. This comes at the cost of being more time and memory demanding.

The classifier expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it requires certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values with which the classifier has been trained:

'image_width'"image_width""image_width""image_width""image_width""image_width": 224

'image_height'"image_height""image_height""image_height""image_height""image_height": 224

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -127

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 128

The network architecture allows changes concerning the image dimensions. 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" should not be less than 47 pixels. There is no maximum image size, but large image sizes will increase the memory demand and the runtime significantly. Changing the image size will reinitialize the weights of the fully connected layers and therefore makes a retraining necessary.

'pretrained_dl_classifier_mobilenet_v2.hdl'"pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl":

This classifier is a small and low-power model, for what reason it is more suitable for mobile and embedded vision applications.

The classifier expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it requires certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values with which the classifier has been trained:

'image_width'"image_width""image_width""image_width""image_width""image_width": 224

'image_height'"image_height""image_height""image_height""image_height""image_height": 224

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -127

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 128

The network architecture allows changes concerning the image dimensions. 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" should not be less than 32 pixels. There is no maximum image size, but large image sizes will increase the memory demand and the runtime significantly.

On the GPU, the network architecture can benefit greatly from special optimizations, without which the network can be significantly slower.

'pretrained_dl_classifier_resnet50.hdl'"pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl":

As the neural network 'pretrained_dl_classifier_enhanced.hdl'"pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl", this classifier is suited for more complex tasks. However, due to its special structure, it provides the advantage of making the training more stable and internally more robust.

The classifier expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it requires certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values with which the classifier has been trained:

'image_width'"image_width""image_width""image_width""image_width""image_width": 224

'image_height'"image_height""image_height""image_height""image_height""image_height": 224

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 3

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -127

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 128

The network architecture allows changes concerning the image dimensions. 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" should not be less than 32 pixels. There is no maximum image size, but large image sizes will increase the memory demand and the runtime significantly. Despite the fully connected layer a change of the image size does not lead to a reinitialization of the weights.

Models for Semantic Segmentation

The following pretrained neural networks are provided for semantic segmentation:

'pretrained_dl_edge_extractor.hdl'"pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl":

This neural network is designed and pretrained for edge extraction. As a consequence this model is meant for two class problems with one class for edges and one for background.

This network expects the images to be of the type 'real'"real""real""real""real""real". Additionally, it is designed for certain image properties. The corresponding values can be retrieved with get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param. Here we list the default values with which the model has been trained:

'image_width'"image_width""image_width""image_width""image_width""image_width": 512

'image_height'"image_height""image_height""image_height""image_height""image_height": 512

'image_num_channels'"image_num_channels""image_num_channels""image_num_channels""image_num_channels""image_num_channels": 1

'image_range_min'"image_range_min""image_range_min""image_range_min""image_range_min""image_range_min": -127

'image_range_max'"image_range_max""image_range_max""image_range_max""image_range_max""image_range_max": 128

'num_classes'"num_classes""num_classes""num_classes""num_classes""num_classes": 2

The network architecture allows changes concerning the image dimensions, but the sizes 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" have to be multiples of 16 pixels, resulting in a minimum of 16 pixels.

The network architecture enables retraining on the GPU but not on the CPU.

'pretrained_dl_segmentation_compact.hdl'"pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl":

This neural network is designed to handle segmentation tasks with detailed structures and uses only few memory and is runtime efficient.

The network architecture allows changes concerning the image dimensions, but requires a minimum 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" of 21 pixels.

The network architecture enables retraining on the GPU and on the CPU.

'pretrained_dl_segmentation_enhanced.hdl'"pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl":

This neural network has more hidden layers than 'pretrained_dl_segmentation_compact.hdl'"pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl" and is therefore better suited for segmentation tasks including more complex scenes.

The network architecture allows changes concerning the image dimensions, but requires a minimum 'image_width'"image_width""image_width""image_width""image_width""image_width" and 'image_height'"image_height""image_height""image_height""image_height""image_height" of 47 pixels.

The network architecture enables retraining on the GPU and on the CPU.

Reading in a Model in the ONNX Format

You can read in an ONNX model, but there are some points to consider.

Restrictions

Reading in ONNX models with read_dl_modelread_dl_modelReadDlModelReadDlModelReadDlModelread_dl_model, some restrictions apply:

Automatic transformations

After reading an ONNX model with read_dl_modelread_dl_modelReadDlModelReadDlModelReadDlModelread_dl_model, some network transformations are executed automatically:

Supported operations

ONNX models with the following operations can be read by read_dl_modelread_dl_modelReadDlModelReadDlModelReadDlModelread_dl_model:

'Add':

No restrictions.

'ArgMax':

The following restrictions apply:

  • attribute 'axis'"axis""axis""axis""axis""axis": The value must be 1.

  • attribute 'keepdims'"keepdims""keepdims""keepdims""keepdims""keepdims": The value must be 1.

  • attribute 'select_last_index'"select_last_index""select_last_index""select_last_index""select_last_index""select_last_index": The value must be 0.

'AveragePool':

The following restrictions apply:

  • attribute 'count_include_pad'"count_include_pad""count_include_pad""count_include_pad""count_include_pad""count_include_pad": The value must be 0.

'BatchNormalization':

No restrictions.

'Clip':

The following restrictions apply:

  • attribute 'min'"min""min""min""min""min": The value must be 0.

  • attribute 'max'"max""max""max""max""max": The value must be greater than 0 and less than maximum float number.

'Concat':

No restrictions.

'Conv':

The following restrictions apply:

  • attribute 'pads'"pads""pads""pads""pads""pads": Padding values greater than or equal to kernel size are not supported.

'Dropout':

No restrictions.

'Gemm':

The following restrictions apply:

  • attribute 'alpha'"alpha""alpha""alpha""alpha""alpha": The value must be 1.

  • attribute 'beta'"beta""beta""beta""beta""beta": The value must be 1.

  • attribute 'transA'"transA""transA""transA""transA""transA": The value must be 0.

'GlobalAveragePool':

No restrictions.

'GlobalMaxPool':

The following restrictions apply:

  • attribute 'dilations'"dilations""dilations""dilations""dilations""dilations": The value must be 1.

'LogSoftmax':

The following restrictions apply:

  • attribute 'axis'"axis""axis""axis""axis""axis": The value must be 1.

'LRN':

No restrictions. Hint: Attribute 'size'"size""size""size""size""size" has no effect.

'MaxPool':

No restrictions.

'ReduceMax':

The following restrictions apply:

  • attribute 'axes'"axes""axes""axes""axes""axes": The value must be 1.

  • attribute 'keepdims'"keepdims""keepdims""keepdims""keepdims""keepdims": The value must be 1.

'Relu':

No restrictions.

'Resize':

The following restrictions apply:

  • attribute 'mode'"mode""mode""mode""mode""mode": Only the values 'linear'"linear""linear""linear""linear""linear" or 'bilinear'"bilinear""bilinear""bilinear""bilinear""bilinear" are supported.

  • attribute 'coordinate_transformation_mode'"coordinate_transformation_mode""coordinate_transformation_mode""coordinate_transformation_mode""coordinate_transformation_mode""coordinate_transformation_mode": Only the values 'pytorch_half_pixel'"pytorch_half_pixel""pytorch_half_pixel""pytorch_half_pixel""pytorch_half_pixel""pytorch_half_pixel" and 'align_corners'"align_corners""align_corners""align_corners""align_corners""align_corners" are supported.

  • input tensor 'roi'"roi""roi""roi""roi""roi": If values are set they have no effect on the inference.

  • The attributes 'cubic_coeff_a'"cubic_coeff_a""cubic_coeff_a""cubic_coeff_a""cubic_coeff_a""cubic_coeff_a", 'exclude_outside'"exclude_outside""exclude_outside""exclude_outside""exclude_outside""exclude_outside", 'extrapolation_value'"extrapolation_value""extrapolation_value""extrapolation_value""extrapolation_value""extrapolation_value", or 'nearest_mode'"nearest_mode""nearest_mode""nearest_mode""nearest_mode""nearest_mode" have no effect.

'Reshape':

The following restrictions apply:

  • Only supported if applied to an initializer and its output is used straight as a weight in a layer.

'Sigmoid':

No restrictions.

'Softmax':

The following restrictions apply:

  • attribute 'axis'"axis""axis""axis""axis""axis": The value must be 1.

'Sum':

No restrictions.

Moreover the ONNX 'metadata_props' field is supported. It is written to the model parameter 'meta_data'"meta_data""meta_data""meta_data""meta_data""meta_data".

Execution Information

This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.

Parameters

FileNameFileNameFileNameFileNamefileNamefile_name (input_control)  filename.read HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Filename

Default value: 'pretrained_dl_classifier_compact.hdl' "pretrained_dl_classifier_compact.hdl" "pretrained_dl_classifier_compact.hdl" "pretrained_dl_classifier_compact.hdl" "pretrained_dl_classifier_compact.hdl" "pretrained_dl_classifier_compact.hdl"

List of values: 'initial_dl_anomaly_large.hdl'"initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl""initial_dl_anomaly_large.hdl", 'initial_dl_anomaly_medium.hdl'"initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl""initial_dl_anomaly_medium.hdl", 'pretrained_dl_classifier_alexnet.hdl'"pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl""pretrained_dl_classifier_alexnet.hdl", 'pretrained_dl_classifier_compact.hdl'"pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl""pretrained_dl_classifier_compact.hdl", 'pretrained_dl_classifier_enhanced.hdl'"pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl""pretrained_dl_classifier_enhanced.hdl", 'pretrained_dl_classifier_mobilenet_v2.hdl'"pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl""pretrained_dl_classifier_mobilenet_v2.hdl", 'pretrained_dl_classifier_resnet50.hdl'"pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl""pretrained_dl_classifier_resnet50.hdl", 'pretrained_dl_edge_extractor.hdl'"pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl""pretrained_dl_edge_extractor.hdl", 'pretrained_dl_segmentation_compact.hdl'"pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl""pretrained_dl_segmentation_compact.hdl", 'pretrained_dl_segmentation_enhanced.hdl'"pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl""pretrained_dl_segmentation_enhanced.hdl"

File extension: .hdl

DLModelHandleDLModelHandleDLModelHandleDLModelHandleDLModelHandledlmodel_handle (output_control)  dl_model HDlModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the deep learning model.

Result

If the parameters are valid, the operator read_dl_modelread_dl_modelReadDlModelReadDlModelReadDlModelread_dl_model returns the value TRUE. If necessary, an exception is raised.

Possible Successors

set_dl_model_paramset_dl_model_paramSetDlModelParamSetDlModelParamSetDlModelParamset_dl_model_param, get_dl_model_paramget_dl_model_paramGetDlModelParamGetDlModelParamGetDlModelParamget_dl_model_param, apply_dl_modelapply_dl_modelApplyDlModelApplyDlModelApplyDlModelapply_dl_model, train_dl_model_batchtrain_dl_model_batchTrainDlModelBatchTrainDlModelBatchTrainDlModelBatchtrain_dl_model_batch, train_dl_model_anomaly_datasettrain_dl_model_anomaly_datasetTrainDlModelAnomalyDatasetTrainDlModelAnomalyDatasetTrainDlModelAnomalyDatasettrain_dl_model_anomaly_dataset

Alternatives

create_dl_model_detectioncreate_dl_model_detectionCreateDlModelDetectionCreateDlModelDetectionCreateDlModelDetectioncreate_dl_model_detection

References

Open Neural Network Exchange (ONNX), https://onnx.ai/

Module

Deep Learning Inference