create_data_code_2d_modelT_create_data_code_2d_modelCreateDataCode2dModelCreateDataCode2dModelcreate_data_code_2d_model创建数据码二维模型(算子)

名称

create_data_code_2d_modelT_create_data_code_2d_modelCreateDataCode2dModelCreateDataCode2dModelcreate_data_code_2d_model — 创建二维数据码类的模型。

签名

create_data_code_2d_model( : : SymbolType, GenParamName, GenParamValue : DataCodeHandle)

Herror T_create_data_code_2d_model(const Htuple SymbolType, const Htuple GenParamName, const Htuple GenParamValue, Htuple* DataCodeHandle)

void CreateDataCode2dModel(const HTuple& SymbolType, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* DataCodeHandle)

void HDataCode2D::HDataCode2D(const HString& SymbolType, const HTuple& GenParamName, const HTuple& GenParamValue)

void HDataCode2D::HDataCode2D(const HString& SymbolType, const HString& GenParamName, const HString& GenParamValue)

void HDataCode2D::HDataCode2D(const char* SymbolType, const char* GenParamName, const char* GenParamValue)

void HDataCode2D::HDataCode2D(const wchar_t* SymbolType, const wchar_t* GenParamName, const wchar_t* GenParamValue)   ( Windows only)

void HDataCode2D::CreateDataCode2dModel(const HString& SymbolType, const HTuple& GenParamName, const HTuple& GenParamValue)

void HDataCode2D::CreateDataCode2dModel(const HString& SymbolType, const HString& GenParamName, const HString& GenParamValue)

void HDataCode2D::CreateDataCode2dModel(const char* SymbolType, const char* GenParamName, const char* GenParamValue)

void HDataCode2D::CreateDataCode2dModel(const wchar_t* SymbolType, const wchar_t* GenParamName, const wchar_t* GenParamValue)   ( Windows only)

static void HOperatorSet.CreateDataCode2dModel(HTuple symbolType, HTuple genParamName, HTuple genParamValue, out HTuple dataCodeHandle)

public HDataCode2D(string symbolType, HTuple genParamName, HTuple genParamValue)

public HDataCode2D(string symbolType, string genParamName, string genParamValue)

void HDataCode2D.CreateDataCode2dModel(string symbolType, HTuple genParamName, HTuple genParamValue)

void HDataCode2D.CreateDataCode2dModel(string symbolType, string genParamName, string genParamValue)

def create_data_code_2d_model(symbol_type: str, gen_param_name: MaybeSequence[str], gen_param_value: MaybeSequence[Union[int, str, float]]) -> HHandle

描述

算子 create_data_code_2d_modelcreate_data_code_2d_modelCreateDataCode2dModelCreateDataCode2dModelCreateDataCode2dModelcreate_data_code_2d_model 为特定类别的二维数据码创建模型。该算子在 DataCodeHandleDataCodeHandleDataCodeHandleDataCodeHandledataCodeHandledata_code_handle 中返回指向二维数据码模型的句柄,该句柄用于对数据码进行后续所有操作,例如修改模型、读取符号或访问符号搜索结果。

有关二维数据码阅读器概念的说明,请参阅 识别 / 数据码 一章的引言部分。

支持的符号类型

参数 SymbolTypeSymbolTypeSymbolTypeSymbolTypesymbolTypesymbol_type 用于确定要处理的数据码类型。目前支持六种主要类型: 'Data Matrix ECC 200'"Data Matrix ECC 200""Data Matrix ECC 200""Data Matrix ECC 200""Data Matrix ECC 200""Data Matrix ECC 200"'QR Code'"QR Code""QR Code""QR Code""QR Code""QR Code"'Micro QR Code'"Micro QR Code""Micro QR Code""Micro QR Code""Micro QR Code""Micro QR Code"'PDF417'"PDF417""PDF417""PDF417""PDF417""PDF417"'Aztec Code'"Aztec Code""Aztec Code""Aztec Code""Aztec Code""Aztec Code"'DotCode'"DotCode""DotCode""DotCode""DotCode""DotCode"。此外还支持四种 GS1 类型: 'GS1 DataMatrix'"GS1 DataMatrix""GS1 DataMatrix""GS1 DataMatrix""GS1 DataMatrix""GS1 DataMatrix"'GS1 QR Code'"GS1 QR Code""GS1 QR Code""GS1 QR Code""GS1 QR Code""GS1 QR Code"'GS1 Aztec'"GS1 Aztec""GS1 Aztec""GS1 Aztec""GS1 Aztec""GS1 Aztec"'GS1 DotCode'"GS1 DotCode""GS1 DotCode""GS1 DotCode""GS1 DotCode""GS1 DotCode"。不支持 ECC 000-140 类型的数据矩阵码。QR 码可读取旧版 Model 1 及新版 Model 2 格式。PDF417 可读取常规格式及紧凑格式(“紧凑Compact/截断Truncated PDF417”)。Aztec 码可读取紧凑型、全范围型及符文型(参见 ISO/IEC 24778:2008(E) 附录 E)。这四种 GS1 符号体系的结构与非 GS1 对应符号(即 Data Matrix ECC 200、QR Code、Aztec Code 和 DotCode)基本一致。下文所述适用于特定数据码类型的所有参数、设置及规则,同样适用于其 GS1 变体。GS1 符号体系仅对编码承载数据的格式施加额外规则。数据必须依据 GS1 通用规范组织为所谓的 GS1 应用元素字符串。更新可用 GS1 应用标识符列表时,请参阅 set_systemset_systemSetSystemSetSystemSetSystemset_system 中的参数 'gs1_syntax_dictionary'"gs1_syntax_dictionary""gs1_syntax_dictionary""gs1_syntax_dictionary""gs1_syntax_dictionary""gs1_syntax_dictionary"

对于所有符号类型,数据码阅读器均支持扩展通道解释(ECI:Extended Channel Interpretation)协议。若符号包含 ECI 代码,则所有出现在常规数据流中的 ASCII 代码 92 字符(反斜杠 '\'"\""\""\""\""\")均需遵循标准规范进行输出时双倍编码('\\'"\\""\\""\\""\\""\\")。此处理旨在区分数据反斜杠与 ECI 序列 '\nnnnnn'"\nnnnnn""\nnnnnn""\nnnnnn""\nnnnnn""\nnnnnn"

符号是否包含 ECI 代码(以及由此产生的双反斜杠)的信息存储在符号标识符编号中。该标识符编号可通过调用 get_data_code_2d_resultsget_data_code_2d_resultsGetDataCode2dResultsGetDataCode2dResultsGetDataCode2dResultsget_data_code_2d_results 算子并传递泛型参数 'symbology_ident'"symbology_ident""symbology_ident""symbology_ident""symbology_ident""symbology_ident",从每个成功解码的符号中获取。关于代码编号如何编码符号及数据码阅读器的附加信息(如 ECI 支持状态),具体定义详见各类符号规范。更多详情请参阅相关标准及 get_data_code_2d_resultsget_data_code_2d_resultsGetDataCode2dResultsGetDataCode2dResultsGetDataCode2dResultsget_data_code_2d_results 算子。

即使符号包含 ECI 代码,数据码阅读器也不会将符号识别码置于输出数据之前。若后续处理单元需要该标识符,可手动将 'symbology_ident'"symbology_ident""symbology_ident""symbology_ident""symbology_ident""symbology_ident" 编号(通过 get_data_code_2d_resultsget_data_code_2d_resultsGetDataCode2dResultsGetDataCode2dResultsGetDataCode2dResultsget_data_code_2d_results 算子及参数 'symbology_ident'"symbology_ident""symbology_ident""symbology_ident""symbology_ident""symbology_ident" 获取)与符号标记及符号代码一同添加至数据流:']d'、']Q'、']L'、']z' 或 ']J' 分别用于 DataMatrix codes、QR Codes、PDF417 Codes、Aztec Codes 或 DotCodes。特别地,对于 GS1 符号体系,参数 'symbology_ident'"symbology_ident""symbology_ident""symbology_ident""symbology_ident""symbology_ident" 返回值为 2 表示 GS1 DataMatrix,3 表示 GS1 QR Code,1 表示 GS1 Aztec Code 和 GS1 DotCode。对应符号代码分别为:']d2'、']Q3'、']z1' 和 ']J1'。

数据码模型的标准默认设置

该模型的默认设置旨在合理时间内识别广泛的常见符号。但出于运行时间考虑,符号识别存在某些限制(详见下表)。若模型曾被修改(详见后文说明),可随时通过向 set_data_code_2d_paramset_data_code_2d_paramSetDataCode2dParamSetDataCode2dParamSetDataCode2dParamset_data_code_2d_param 算子传递泛型参数 'default_parameters'"default_parameters""default_parameters""default_parameters""default_parameters""default_parameters" 及值 'standard_recognition'"standard_recognition""standard_recognition""standard_recognition""standard_recognition""standard_recognition",将其重置为默认设置。

部分模型参数的默认值取决于所选识别方法,相关参数详见下表。更多参数细节及其余模型参数可查阅 set_data_code_2d_paramset_data_code_2d_paramSetDataCode2dParamSetDataCode2dParamSetDataCode2dParamset_data_code_2d_param 的参考文档。

模型参数 'standard_recognition'"standard_recognition""standard_recognition""standard_recognition""standard_recognition""standard_recognition" 标准识别 'enhanced_recognition'"enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition" 增强识别 'maximum_recognition'"maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition" 最大识别
'polarity'"polarity""polarity""polarity""polarity""polarity" 极性 'dark_on_light' (深色符号在浅色背景上) 'any' (深色符号在浅色背景上,反之亦然) 'any' (深色符号在浅色背景上,反之亦然)
'contrast_min'"contrast_min""contrast_min""contrast_min""contrast_min""contrast_min" (Aztec Code, Micro QR Code, QR Code, PDF417) 最小对比度 30 10 10
'symbol_cols_min'"symbol_cols_min""symbol_cols_min""symbol_cols_min""symbol_cols_min""symbol_cols_min", 'symbol_cols_max'"symbol_cols_max""symbol_cols_max""symbol_cols_max""symbol_cols_max""symbol_cols_max" (PDF417) 符号列数最小值、最大值 1 ... 20 1 ... 30 1 ... 30
'symbol_rows_min'"symbol_rows_min""symbol_rows_min""symbol_rows_min""symbol_rows_min""symbol_rows_min", 'symbol_rows_max'"symbol_rows_max""symbol_rows_max""symbol_rows_max""symbol_rows_max""symbol_rows_max" (PDF417) 符号列数最小值、最大值 5 ... 45 3 ... 90 3 ... 90
'module_size_min'"module_size_min""module_size_min""module_size_min""module_size_min""module_size_min", 'module_size_max'"module_size_max""module_size_max""module_size_max""module_size_max""module_size_max" (Aztec Code, Data Matrix ECC 200, Micro QR Code, QR Code) 模块尺寸最小值、最大值 6 ... 20 像素 4 (2 用于清晰图像) ... 100 像素 4 (1 用于清晰图像) ... 100 像素
'module_size_min'"module_size_min""module_size_min""module_size_min""module_size_min""module_size_min", 'module_size_max'"module_size_max""module_size_max""module_size_max""module_size_max""module_size_max" (DotCode) 模块尺寸最小值、最大值 4 ... 100 像素 2 ... 100 像素 2 ... 100 像素
'module_width_min'"module_width_min""module_width_min""module_width_min""module_width_min""module_width_min", 'module_width_max'"module_width_max""module_width_max""module_width_max""module_width_max""module_width_max" (PDF417) 模块位尺寸最小值、最大值 3 ... 15 像素 3 (2 用于清晰图像) ... 100 像素 3 (1 用于清晰图像) ... 100 像素
'module_aspect_min'"module_aspect_min""module_aspect_min""module_aspect_min""module_aspect_min""module_aspect_min", 'module_aspect_max'"module_aspect_max""module_aspect_max""module_aspect_max""module_aspect_max""module_aspect_max" (PDF417) 模块宽高比最小值、最大值 1 ... 4 1 ... 10 1 ... 10
'small_modules_robustness'"small_modules_robustness""small_modules_robustness""small_modules_robustness""small_modules_robustness""small_modules_robustness" (All code types except DotCode) 小模块稳健性 'low' 低 'low' 低 'high' 高
'module_gap_max'"module_gap_max""module_gap_max""module_gap_max""module_gap_max""module_gap_max" (Aztec Code, Micro QR Code, QR Code) 模块间隙最大值 'small' (< 10% 模块尺寸) 小 'big' (< 50% 模块尺寸) 大 'big' (< 50% 模块尺寸) 大
'module_gap_max'"module_gap_max""module_gap_max""module_gap_max""module_gap_max""module_gap_max" (Data Matrix ECC 200) 模块间隙最大值 'no' 无 'small' (< 10% 模块尺寸) 小 'big' (< 50% 模块尺寸) 大
'module_gap_max'"module_gap_max""module_gap_max""module_gap_max""module_gap_max""module_gap_max" (DotCode) 模块间隙最大值 'no' 无 'small' (< 10% 模块尺寸) 小 'small' (< 10% 模块尺寸) 小
'slant_max'"slant_max""slant_max""slant_max""slant_max""slant_max" (Data Matrix ECC 200) 倾斜最大值 0.1745 (10 度) 0.5235 (30 度) 0.5235 (30 度)
'module_grid'"module_grid""module_grid""module_grid""module_grid""module_grid" (Data Matrix ECC 200) 模块网格 'fixed' 固定 'any' 任意(固定或可变) 'any' 任意(固定或可变)
'finder_pattern_tolerance'"finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance" (Data Matrix ECC 200) 查找器模式公差 'low' 低 'low' 低 'any' 任意
'contrast_tolerance'"contrast_tolerance""contrast_tolerance""contrast_tolerance""contrast_tolerance""contrast_tolerance" (Data Matrix ECC 200) 对比度公差 'low' 低 'low' 低 'any' 任意
'candidate_selection'"candidate_selection""candidate_selection""candidate_selection""candidate_selection""candidate_selection" (Data Matrix ECC 200) 候选者筛选 'default' 默认 'extensive' 广泛 'extensive' 广泛
'candidate_selection'"candidate_selection""candidate_selection""candidate_selection""candidate_selection""candidate_selection" (DotCode) 候选者筛选 'default' 默认 'extensive' 广泛 'all' 所有
'finder_pattern_tolerance'"finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance" (Aztec Code) 查找器模式公差 'low' 低 'high' 高 'high' 高
'position_pattern_min'"position_pattern_min""position_pattern_min""position_pattern_min""position_pattern_min""position_pattern_min" (QR Code) 位置模式最小值 3 2 2

修改数据码模型

若已知该符号不符合或可能不符合所有限制条件(例如符号亮度高于背景或对比度极低),或初步测试表明部分符号无法通过默认设置识别,可单独调整模型参数(其余参数保持默认值),或通过将泛型参数 'default_parameters'"default_parameters""default_parameters""default_parameters""default_parameters""default_parameters" 设为 'enhanced_recognition'"enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition" 值,一次性扩展整个模型。此操作将生成覆盖更广泛二维数据码符号的通用模型。但需注意:采用通用模型进行符号搜索时,搜索范围扩大将显著增加 find_data_code_2dfind_data_code_2dFindDataCode2dFindDataCode2dFindDataCode2dfind_data_code_2d 算子的运行时间。 尤其在以下情形下更为明显:检测到可读数据码、符号采用浅色印于深色背景,或模块尺寸过小。

通过将泛型参数 'default_parameters'"default_parameters""default_parameters""default_parameters""default_parameters""default_parameters" 设置为 'maximum_recognition'"maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition" 值,该模型相较于 'enhanced_recognition'"enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition" 模式进一步扩展,从而能更稳健地解码具有极小模块尺寸的数据码(参见 'small_modules_robustness'"small_modules_robustness""small_modules_robustness""small_modules_robustness""small_modules_robustness""small_modules_robustness")。对于 Data Matrix ECC 200,'maximum_recognition'"maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition" 模式相较于 'enhanced_recognition'"enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition" 模式的差异在于:即使存在缺陷或部分遮挡的查找器图案,仍可实现符号读取(详见 'finder_pattern_tolerance'"finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance")。启用此模式可能导致 find_data_code_2dfind_data_code_2dFindDataCode2dFindDataCode2dFindDataCode2dfind_data_code_2d 算子在符号搜索与解码过程中运行时间及内存占用进一步增加。

基于上述原因,模型应通过设置所有已知参数尽可能精确地定义。模型参数可在创建模型时直接设置,或后续借助 set_data_code_2d_paramset_data_code_2d_paramSetDataCode2dParamSetDataCode2dParamSetDataCode2dParamset_data_code_2d_param 算子进行配置。两种算子均为此目的提供了泛型参数 GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_nameGenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value。例如对于 Data Matrix ECC 200,若选择 'maximum_recognition'"maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition" 模式,则应尽可能精确指定符号尺寸。所有支持的泛型参数详见 set_data_code_2d_paramset_data_code_2d_paramSetDataCode2dParamSetDataCode2dParamSetDataCode2dParamset_data_code_2d_param 算子的说明文档。

另一种模型适配方式是基于样本图像进行训练。向 find_data_code_2dfind_data_code_2dFindDataCode2dFindDataCode2dFindDataCode2dfind_data_code_2d 算子传递 'train'"train""train""train""train""train" 参数后,查找算子将搜索符号、确定其参数并据此修改模型。更多细节可参阅 find_data_code_2dfind_data_code_2dFindDataCode2dFindDataCode2dFindDataCode2dfind_data_code_2d 算子的说明文档。

可通过算子 get_data_code_2d_paramget_data_code_2d_paramGetDataCode2dParamGetDataCode2dParamGetDataCode2dParamget_data_code_2d_param 查询模型参数。算子 query_data_code_2d_paramsquery_data_code_2d_paramsQueryDataCode2dParamsQueryDataCode2dParamsQueryDataCode2dParamsquery_data_code_2d_params 将返回所有支持设置或查询的模型参数名称。

执行信息

此算子返回一个句柄。请注意,即使该句柄被用作特定算子的输入参数,这些算子仍可能改变此句柄类型的实例状态。

参数

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

二维数据码的类型。

默认值: 'Data Matrix ECC 200' "Data Matrix ECC 200" "Data Matrix ECC 200" "Data Matrix ECC 200" "Data Matrix ECC 200" "Data Matrix ECC 200"

值列表: 'Aztec Code'"Aztec Code""Aztec Code""Aztec Code""Aztec Code""Aztec Code", 'Data Matrix ECC 200'"Data Matrix ECC 200""Data Matrix ECC 200""Data Matrix ECC 200""Data Matrix ECC 200""Data Matrix ECC 200", 'DotCode'"DotCode""DotCode""DotCode""DotCode""DotCode", 'GS1 Aztec Code'"GS1 Aztec Code""GS1 Aztec Code""GS1 Aztec Code""GS1 Aztec Code""GS1 Aztec Code", 'GS1 DataMatrix'"GS1 DataMatrix""GS1 DataMatrix""GS1 DataMatrix""GS1 DataMatrix""GS1 DataMatrix", 'GS1 DotCode'"GS1 DotCode""GS1 DotCode""GS1 DotCode""GS1 DotCode""GS1 DotCode", 'GS1 QR Code'"GS1 QR Code""GS1 QR Code""GS1 QR Code""GS1 QR Code""GS1 QR Code", 'Micro QR Code'"Micro QR Code""Micro QR Code""Micro QR Code""Micro QR Code""Micro QR Code", 'PDF417'"PDF417""PDF417""PDF417""PDF417""PDF417", 'QR Code'"QR Code""QR Code""QR Code""QR Code""QR Code"

GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (输入控制)  attribute.name(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

可调整的二维数据码模型泛型参数名称。

默认值: []

值列表: 'additional_levels'"additional_levels""additional_levels""additional_levels""additional_levels""additional_levels", 'candidate_selection'"candidate_selection""candidate_selection""candidate_selection""candidate_selection""candidate_selection", 'contrast_min'"contrast_min""contrast_min""contrast_min""contrast_min""contrast_min", 'contrast_tolerance'"contrast_tolerance""contrast_tolerance""contrast_tolerance""contrast_tolerance""contrast_tolerance", 'default_parameters'"default_parameters""default_parameters""default_parameters""default_parameters""default_parameters", 'finder_pattern_tolerance'"finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance""finder_pattern_tolerance", 'mirrored'"mirrored""mirrored""mirrored""mirrored""mirrored", 'model_type'"model_type""model_type""model_type""model_type""model_type", 'module_aspect'"module_aspect""module_aspect""module_aspect""module_aspect""module_aspect", 'module_aspect_max'"module_aspect_max""module_aspect_max""module_aspect_max""module_aspect_max""module_aspect_max", 'module_aspect_min'"module_aspect_min""module_aspect_min""module_aspect_min""module_aspect_min""module_aspect_min", 'module_gap'"module_gap""module_gap""module_gap""module_gap""module_gap", 'module_gap_max'"module_gap_max""module_gap_max""module_gap_max""module_gap_max""module_gap_max", 'module_gap_min'"module_gap_min""module_gap_min""module_gap_min""module_gap_min""module_gap_min", 'module_grid'"module_grid""module_grid""module_grid""module_grid""module_grid", 'module_size'"module_size""module_size""module_size""module_size""module_size", 'module_size_max'"module_size_max""module_size_max""module_size_max""module_size_max""module_size_max", 'module_size_min'"module_size_min""module_size_min""module_size_min""module_size_min""module_size_min", 'module_width'"module_width""module_width""module_width""module_width""module_width", 'module_width_max'"module_width_max""module_width_max""module_width_max""module_width_max""module_width_max", 'module_width_min'"module_width_min""module_width_min""module_width_min""module_width_min""module_width_min", 'persistence'"persistence""persistence""persistence""persistence""persistence", 'polarity'"polarity""polarity""polarity""polarity""polarity", 'position_pattern_min'"position_pattern_min""position_pattern_min""position_pattern_min""position_pattern_min""position_pattern_min", 'slant_max'"slant_max""slant_max""slant_max""slant_max""slant_max", 'small_modules_robustness'"small_modules_robustness""small_modules_robustness""small_modules_robustness""small_modules_robustness""small_modules_robustness", 'strict_model'"strict_model""strict_model""strict_model""strict_model""strict_model", 'strict_quiet_zone'"strict_quiet_zone""strict_quiet_zone""strict_quiet_zone""strict_quiet_zone""strict_quiet_zone", 'symbol_cols'"symbol_cols""symbol_cols""symbol_cols""symbol_cols""symbol_cols", 'symbol_cols_max'"symbol_cols_max""symbol_cols_max""symbol_cols_max""symbol_cols_max""symbol_cols_max", 'symbol_cols_min'"symbol_cols_min""symbol_cols_min""symbol_cols_min""symbol_cols_min""symbol_cols_min", 'symbol_rows'"symbol_rows""symbol_rows""symbol_rows""symbol_rows""symbol_rows", 'symbol_rows_max'"symbol_rows_max""symbol_rows_max""symbol_rows_max""symbol_rows_max""symbol_rows_max", 'symbol_rows_min'"symbol_rows_min""symbol_rows_min""symbol_rows_min""symbol_rows_min""symbol_rows_min", 'symbol_shape'"symbol_shape""symbol_shape""symbol_shape""symbol_shape""symbol_shape", 'symbol_size'"symbol_size""symbol_size""symbol_size""symbol_size""symbol_size", 'symbol_size_max'"symbol_size_max""symbol_size_max""symbol_size_max""symbol_size_max""symbol_size_max", 'symbol_size_min'"symbol_size_min""symbol_size_min""symbol_size_min""symbol_size_min""symbol_size_min", 'timeout'"timeout""timeout""timeout""timeout""timeout", 'version'"version""version""version""version""version", 'version_max'"version_max""version_max""version_max""version_max""version_max", 'version_min'"version_min""version_min""version_min""version_min""version_min"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (输入控制)  attribute.value(-array) HTupleMaybeSequence[Union[int, str, float]]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

可调整的二维数据码模型泛型参数值。

默认值: []

建议值: 'standard_recognition'"standard_recognition""standard_recognition""standard_recognition""standard_recognition""standard_recognition", 'enhanced_recognition'"enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition""enhanced_recognition", 'maximum_recognition'"maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition""maximum_recognition", 'yes'"yes""yes""yes""yes""yes", 'no'"no""no""no""no""no", 'any'"any""any""any""any""any", 'dark_on_light'"dark_on_light""dark_on_light""dark_on_light""dark_on_light""dark_on_light", 'light_on_dark'"light_on_dark""light_on_dark""light_on_dark""light_on_dark""light_on_dark", 'square'"square""square""square""square""square", 'rectangle'"rectangle""rectangle""rectangle""rectangle""rectangle", 'small'"small""small""small""small""small", 'big'"big""big""big""big""big", 'fixed'"fixed""fixed""fixed""fixed""fixed", 'variable'"variable""variable""variable""variable""variable", 'low'"low""low""low""low""low", 'high'"high""high""high""high""high", 'default'"default""default""default""default""default", 'extensive'"extensive""extensive""extensive""extensive""extensive", 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 30, 50, 70, 90, 12, 14, 16, 18, 20, 22, 24, 26, 32, 36, 40, 44, 48, 52, 64, 72, 80, 88, 96, 104, 120, 132, 144

DataCodeHandleDataCodeHandleDataCodeHandleDataCodeHandledataCodeHandledata_code_handle (输出控制)  datacode_2d HDataCode2D, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

用于操作和访问二维数据码模型的句柄。

示例(HDevelop)

* Two simple examples that show the use of create_data_code_2d_model
* to detect a Data matrix ECC 200 code and a QR Code.

* (1) Create a model for reading simple QR Codes
*     (only dark symbols on a light background will be read)
create_data_code_2d_model ('QR Code', [], [], DataCodeHandle)
* Read an image
read_image (Image, 'datacode/qrcode/qr_workpiece_01')
* Read the symbol in the image
find_data_code_2d (Image, SymbolXLDs, DataCodeHandle, [], [], \
                   ResultHandles, DecodedDataStrings)
* Clear the model
clear_data_code_2d_model (DataCodeHandle)

* (2) Create a model for reading a wide range of Data matrix ECC 200 codes
*     (this model will also read light symbols on dark background)
create_data_code_2d_model ('Data Matrix ECC 200', 'default_parameters', \
                           'enhanced_recognition', DataCodeHandle)
* Read an image
read_image (Image, 'datacode/ecc200/ecc200_cpu_010')
* Read the symbol in the image
find_data_code_2d (Image, SymbolXLDs, DataCodeHandle, [], [], \
                   ResultHandles, DecodedDataStrings)
* Clear the model
clear_data_code_2d_model (DataCodeHandle)

结果

算子 create_data_code_2d_modelcreate_data_code_2d_modelCreateDataCode2dModelCreateDataCode2dModelCreateDataCode2dModelcreate_data_code_2d_model 返回值 2 (H_MSG_TRUE),当给定的参数正确。否则,将抛出异常。

可能的后继

set_data_code_2d_paramset_data_code_2d_paramSetDataCode2dParamSetDataCode2dParamSetDataCode2dParamset_data_code_2d_param, find_data_code_2dfind_data_code_2dFindDataCode2dFindDataCode2dFindDataCode2dfind_data_code_2d

替代

read_data_code_2d_modelread_data_code_2d_modelReadDataCode2dModelReadDataCode2dModelReadDataCode2dModelread_data_code_2d_model

另见

clear_data_code_2d_modelclear_data_code_2d_modelClearDataCode2dModelClearDataCode2dModelClearDataCode2dModelclear_data_code_2d_model

参考文献

International Standard ISO/IEC 16022: “Information technology - Automatic identification and data capture techniques - Data Matrix bar code symbology specification”; Reference number ISO/IEC 16022:2006 (E); ISO/IEC 2006.

International Standard ISO/IEC 15438: “Information technology - Automatic identification and data capture techniques - PDF417 bar code symbology specification”; Reference number ISO/IEC 15438:2006 (E); ISO/IEC 2006.

International Standard ISO/IEC 18004: “Information technology - Automatic identification and data capture techniques - QR Code 2005 bar code symbology specification”; Reference number ISO/IEC 18004:2006 (E); ISO/IEC 2006.

International Standard ISO/IEC 24778: “Information technology - Automatic identification and data capture techniques - Aztec Code bar code symbology specification”; Reference number ISO/IEC 24778:2008 (E); ISO/IEC 2008.

GS1 General Specifications; Version 12; Issue 1, Jan-2012; GS1.

模块

数据码