set_dl_model_layer_weightsT_set_dl_model_layer_weightsSetDlModelLayerWeightsSetDlModelLayerWeightsset_dl_model_layer_weights (算子)

名称

set_dl_model_layer_weightsT_set_dl_model_layer_weightsSetDlModelLayerWeightsSetDlModelLayerWeightsset_dl_model_layer_weights — 设置深度学习模型层的权重(或值)。

签名

set_dl_model_layer_weights(Weights : : DLModelHandle, LayerName, WeightsType : )

Herror T_set_dl_model_layer_weights(const Hobject Weights, const Htuple DLModelHandle, const Htuple LayerName, const Htuple WeightsType)

void SetDlModelLayerWeights(const HObject& Weights, const HTuple& DLModelHandle, const HTuple& LayerName, const HTuple& WeightsType)

void HDlModel::SetDlModelLayerWeights(const HImage& Weights, const HString& LayerName, const HString& WeightsType) const

void HDlModel::SetDlModelLayerWeights(const HImage& Weights, const char* LayerName, const char* WeightsType) const

void HDlModel::SetDlModelLayerWeights(const HImage& Weights, const wchar_t* LayerName, const wchar_t* WeightsType) const   ( Windows only)

static void HOperatorSet.SetDlModelLayerWeights(HObject weights, HTuple DLModelHandle, HTuple layerName, HTuple weightsType)

void HDlModel.SetDlModelLayerWeights(HImage weights, string layerName, string weightsType)

def set_dl_model_layer_weights(weights: HObject, dlmodel_handle: HHandle, layer_name: str, weights_type: str) -> None

描述

The operator set_dl_model_layer_weightsset_dl_model_layer_weightsSetDlModelLayerWeightsSetDlModelLayerWeightsSetDlModelLayerWeightsset_dl_model_layer_weights sets for the model DLModelHandleDLModelHandleDLModelHandleDLModelHandleDLModelHandledlmodel_handle the given WeightsWeightsWeightsWeightsweightsweights in the specified LayerNameLayerNameLayerNameLayerNamelayerNamelayer_name.

The parameter WeightsTypeWeightsTypeWeightsTypeWeightsTypeweightsTypeweights_type determines which type of layer values are set. Which values can be set, please refer to the get_dl_model_layer_weightsget_dl_model_layer_weightsGetDlModelLayerWeightsGetDlModelLayerWeightsGetDlModelLayerWeightsget_dl_model_layer_weights documentation.

注意

The operator set_dl_model_layer_weightsset_dl_model_layer_weightsSetDlModelLayerWeightsSetDlModelLayerWeightsSetDlModelLayerWeightsset_dl_model_layer_weights is only applicable to self-created networks. For networks delivered by HALCON, the operator does have no impact.

执行信息

参数

WeightsWeightsWeightsWeightsweightsweights (输入对象)  (multichannel-)image(-array) objectHImageHObjectHImageHobject (real)

Input weights.

DLModelHandleDLModelHandleDLModelHandleDLModelHandleDLModelHandledlmodel_handle (输入控制)  dl_model HDlModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the deep learning model.

LayerNameLayerNameLayerNameLayerNamelayerNamelayer_name (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Name of the layer, whose weights are to be set.

WeightsTypeWeightsTypeWeightsTypeWeightsTypeweightsTypeweights_type (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Selected type of layer values to be set.

默认值: 'weights' "weights" "weights" "weights" "weights" "weights"

值列表: 'batchnorm_mean'"batchnorm_mean""batchnorm_mean""batchnorm_mean""batchnorm_mean""batchnorm_mean", 'batchnorm_mean_avg'"batchnorm_mean_avg""batchnorm_mean_avg""batchnorm_mean_avg""batchnorm_mean_avg""batchnorm_mean_avg", 'batchnorm_variance'"batchnorm_variance""batchnorm_variance""batchnorm_variance""batchnorm_variance""batchnorm_variance", 'batchnorm_variance_avg'"batchnorm_variance_avg""batchnorm_variance_avg""batchnorm_variance_avg""batchnorm_variance_avg""batchnorm_variance_avg", 'bias'"bias""bias""bias""bias""bias", 'weights'"weights""weights""weights""weights""weights"

示例(HDevelop)

* Create weights for a convolution layer.
gen_image_const (Weights, 'real', 1, 1)
paint_region (Weights, Weights, Weights, 1, 'fill')
gen_empty_obj (WeightsArray)
for Index := 0 to 10 by 1
    concat_obj (WeightsArray, Weights, WeightsArray)
endfor
*
* Input image with rows consisting of 1s to 10s.
gen_image_const (Image, 'real', 10, 10)
for Index := 0 to 9 by 1
    gen_rectangle1 (Rectangle, Index, 0, Index, 9)
    paint_region (Rectangle, Image, Image, Index + 1, 'fill')
endfor
*
* Create a small model network.
create_dl_layer_input ('image', [10, 2, 1], [], [], ImageNode)
create_dl_layer_convolution (ImageNode, 'conv', 1, 1, 2, 11, 1, 'none', \
                             'none', [], [], ConvNode)
create_dl_layer_zoom_factor (ConvNode, 'zoom', 2, 2, 'bilinear', 'true', [],\
                             [], ZoomNode)
create_dl_model (ZoomNode, DLModelHandle)
set_dl_model_param (DLModelHandle, 'runtime', 'cpu')
*
* Set the weights to the convolution layer.
set_dl_model_layer_weights (WeightsArray, DLModelHandle, 'conv', 'weights')

可能的前趋

create_dl_modelcreate_dl_modelCreateDlModelCreateDlModelCreateDlModelcreate_dl_model, get_dl_model_layer_weightsget_dl_model_layer_weightsGetDlModelLayerWeightsGetDlModelLayerWeightsGetDlModelLayerWeightsget_dl_model_layer_weights

可能的后继

get_dl_model_layer_weightsget_dl_model_layer_weightsGetDlModelLayerWeightsGetDlModelLayerWeightsGetDlModelLayerWeightsget_dl_model_layer_weights

模块

基础。该算子采用动态许可机制(详见《安装指南》)。所需模块取决于算子的具体使用场景: 深度学习训练