创建模板算子create_data_code_2d_model
默认的参数设置适合满足下列条件的二维码
1,二维码时黑色的,背景时白色的
2,二维码和背景的对比度大于30
3,二维码的符号尺寸小于或等于48*48模块(二维码由一个个模块组成,一个模块就是一个小方格或者一个小圆点
4,模块的宽度和高度在6-20个像素之间
5,相邻的模块之间没有间距或只有很小的间距
create_data_code_2d_model
参数:
SymbolTybe(输入参数):二维码的类型,分为Data码,QR码,PDF码
GenParamNames(输入参数):二维码模板的参数名
GenParamValues(输入参数):二维码模板参数的值
DataCodeHandle(输出参数):创建的二维码模板句柄
注意:初学者创建模板时建议GenParamNames参数使用默认参数集,'default_parameters'
default_parameters的参数值GenParamValues有三种模式
1,'standard_recognition'标准模式
2,'enhanced_recognition'加强模式
3,'maximum_recognition'最强模式
初学者建议选择'maximum_recognition'模式,或者逐个尝试
查找模板算子find_data_code_2d
在返回参数SymbolXLDs中存储了每个成功解码的二维码的轮廓,DecodedDataStrings中存储了二维码的解码结果
dev_get_window (WindowHandle)
list_files ('F:/二维码', ['files','follow_links','recursive'], ImageFiles)
tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)
for Index := 0 to (|ImageFiles|/2) - 1 by 1
read_image (Image, ImageFiles[Index])
*创建二维码模板
create_data_code_2d_model ('Data Matrix ECC 200', 'default_parameters', 'maximum_recognition', DataCodeHandle)//data码
*查找模板
find_data_code_2d (Image, SymbolXLDs, DataCodeHandle, [], [], ResultHandles, DecodedDataStrings)
*显示结果
disp_message (WindowHandle, DecodedDataStrings, 'window', 12, 12, 'black', 'true')
stop ()
clear_data_code_2d_model (DataCodeHandle)//清除模板
endfor