create_ocr_class_boxT_create_ocr_class_boxCreateOcrClassBoxCreateOcrClassBoxcreate_ocr_class_box创建光学字符识别类盒子(算子)

名称

create_ocr_class_boxT_create_ocr_class_boxCreateOcrClassBoxCreateOcrClassBoxcreate_ocr_class_box — 创建一个新的 OCR 分类器。

警告

create_ocr_class_boxcreate_ocr_class_boxCreateOcrClassBoxCreateOcrClassBoxCreateOcrClassBoxcreate_ocr_class_box 已过时,仅出于向后兼容性考虑而保留。新应用程序应改用基于 MLP、SVM 或 CNN的算子。

签名

create_ocr_class_box( : : WidthPattern, HeightPattern, Interpolation, Features, Character : OcrHandle)

Herror T_create_ocr_class_box(const Htuple WidthPattern, const Htuple HeightPattern, const Htuple Interpolation, const Htuple Features, const Htuple Character, Htuple* OcrHandle)

void CreateOcrClassBox(const HTuple& WidthPattern, const HTuple& HeightPattern, const HTuple& Interpolation, const HTuple& Features, const HTuple& Character, HTuple* OcrHandle)

void HOCRBox::HOCRBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const HTuple& Features, const HTuple& Character)

void HOCRBox::HOCRBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const HString& Features, const HTuple& Character)

void HOCRBox::HOCRBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const char* Features, const HTuple& Character)

void HOCRBox::HOCRBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const wchar_t* Features, const HTuple& Character)   ( Windows only)

void HOCRBox::CreateOcrClassBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const HTuple& Features, const HTuple& Character)

void HOCRBox::CreateOcrClassBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const HString& Features, const HTuple& Character)

void HOCRBox::CreateOcrClassBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const char* Features, const HTuple& Character)

void HOCRBox::CreateOcrClassBox(Hlong WidthPattern, Hlong HeightPattern, Hlong Interpolation, const wchar_t* Features, const HTuple& Character)   ( Windows only)

static void HOperatorSet.CreateOcrClassBox(HTuple widthPattern, HTuple heightPattern, HTuple interpolation, HTuple features, HTuple character, out HTuple ocrHandle)

public HOCRBox(int widthPattern, int heightPattern, int interpolation, HTuple features, HTuple character)

public HOCRBox(int widthPattern, int heightPattern, int interpolation, string features, HTuple character)

void HOCRBox.CreateOcrClassBox(int widthPattern, int heightPattern, int interpolation, HTuple features, HTuple character)

void HOCRBox.CreateOcrClassBox(int widthPattern, int heightPattern, int interpolation, string features, HTuple character)

def create_ocr_class_box(width_pattern: int, height_pattern: int, interpolation: int, features: MaybeSequence[str], character: Sequence[str]) -> HHandle

描述

算子 create_ocr_class_boxcreate_ocr_class_boxCreateOcrClassBoxCreateOcrClassBoxCreateOcrClassBoxcreate_ocr_class_box 创建一个新的 OCR 分类器。该分类器的描述请参见算子 learn_class_boxlearn_class_boxLearnClassBoxLearnClassBoxLearnClassBoxlearn_class_box。此分类器必须借助算子 traind_ocr_class_boxtraind_ocr_class_boxTraindOcrClassBoxTraindOcrClassBoxTraindOcrClassBoxtraind_ocr_class_boxtrainf_ocr_class_boxtrainf_ocr_class_boxTrainfOcrClassBoxTrainfOcrClassBoxTrainfOcrClassBoxtrainf_ocr_class_box 进行训练。

参数 WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_patternHeightPatternHeightPatternHeightPatternHeightPatternheightPatternheight_pattern 指定网络输入层的尺寸。该尺寸用于特征 'projection_horizontal'"projection_horizontal""projection_horizontal""projection_horizontal""projection_horizontal""projection_horizontal"'projection_vertical'"projection_vertical""projection_vertical""projection_vertical""projection_vertical""projection_vertical"'pixel'"pixel""pixel""pixel""pixel""pixel"'pixel_invar'"pixel_invar""pixel_invar""pixel_invar""pixel_invar""pixel_invar"'pixel_binary'"pixel_binary""pixel_binary""pixel_binary""pixel_binary""pixel_binary" 将字符转换为标准尺寸。标准尺寸越大,可识别的字符种类越多。但需注意:标准尺寸增大将同时增加训练所需时间(包括训练随机样本数量)及识别所需时间。参数 InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation 指定图像中字符适配网络的插值模式。有关此参数的详细信息,请参阅 affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image。取值 0 时,其插值效果等同于 affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image 中的 'nearest_neighbor'"nearest_neighbor""nearest_neighbor""nearest_neighbor""nearest_neighbor""nearest_neighbor"(最近邻插值),即不执行插值操作。取值 1 时,其行为等同于 affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image 中的 'constant'"constant""constant""constant""constant""constant" (常量插值),即采用相邻像素等权重插值。最后,2 对应 'weighted'"weighted""weighted""weighted""weighted""weighted" 的插值方式,即采用相邻像素间的加权高斯插值。参数 InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation 必须选择得当,确保字符缩放至标准尺寸时不会产生混叠现象。通常这意味着应将 InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation 设为 1,除非字符被大幅缩小,此时应选择 InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation = 2。仅当字符不会被缩放时,才应选择 InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation = 0

参数 CharacterCharacterCharacterCharactercharactercharacter 决定了所有需要识别的字符。通常传输的字符串由单个字符组成(例如字母)。但也可学习任意长度的字符串。可区分字符的数量(CharacterCharacterCharacterCharactercharactercharacter 中字符串的数量)上限为 2048

参数 FeaturesFeaturesFeaturesFeaturesfeaturesfeatures 有助于在灰度值之外选择额外特征以识别字符。

以下特征可用:

'default'"default""default""default""default""default"

选择 'ratio'"ratio""ratio""ratio""ratio""ratio"'pixel_invar'"pixel_invar""pixel_invar""pixel_invar""pixel_invar""pixel_invar"

'ratio'"ratio""ratio""ratio""ratio""ratio"

字符的宽高比。

'width'"width""width""width""width""width"

字符宽度(不随缩放变化)。

'height'"height""height""height""height""height"

字符高度(不随缩放变化)。

'zoom_factor'"zoom_factor""zoom_factor""zoom_factor""zoom_factor""zoom_factor"

当前字符与 WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_patternHeightPatternHeightPatternHeightPatternHeightPatternheightPatternheight_pattern 值之间的尺寸差异(不随缩放变化)。

'foreground'"foreground""foreground""foreground""foreground""foreground"

前景像素的相对数量。

'foreground_grid_9'"foreground_grid_9""foreground_grid_9""foreground_grid_9""foreground_grid_9""foreground_grid_9"

字符周围矩形内 3x3 网格中前景像素的相对数量。

'foreground_grid_16'"foreground_grid_16""foreground_grid_16""foreground_grid_16""foreground_grid_16""foreground_grid_16"

字符周围矩形内 4x4 网格中前景像素的相对数量。

'anisometry'"anisometry""anisometry""anisometry""anisometry""anisometry"

形态特征各向异性。

'compactness'"compactness""compactness""compactness""compactness""compactness"

形态特征紧凑性。

'convexity'"convexity""convexity""convexity""convexity""convexity"

形态特征凸度。

'moments_region_2nd_invar'"moments_region_2nd_invar""moments_region_2nd_invar""moments_region_2nd_invar""moments_region_2nd_invar""moments_region_2nd_invar"

区域的归一化二阶几何矩。另见 moments_region_2nd_invarmoments_region_2nd_invarMomentsRegion2ndInvarMomentsRegion2ndInvarMomentsRegion2ndInvarmoments_region_2nd_invar

'moments_region_2nd_rel_invar'"moments_region_2nd_rel_invar""moments_region_2nd_rel_invar""moments_region_2nd_rel_invar""moments_region_2nd_rel_invar""moments_region_2nd_rel_invar"

区域归一化相对二阶几何矩。另见 moments_region_2nd_rel_invarmoments_region_2nd_rel_invarMomentsRegion2ndRelInvarMomentsRegion2ndRelInvarMomentsRegion2ndRelInvarmoments_region_2nd_rel_invar

'moments_region_3rd_invar'"moments_region_3rd_invar""moments_region_3rd_invar""moments_region_3rd_invar""moments_region_3rd_invar""moments_region_3rd_invar"

区域归一化三阶几何矩。另见 moments_region_3rd_invarmoments_region_3rd_invarMomentsRegion3rdInvarMomentsRegion3rdInvarMomentsRegion3rdInvarmoments_region_3rd_invar

'moments_central'"moments_central""moments_central""moments_central""moments_central""moments_central"

区域归一化中心几何矩。另见 moments_region_centralmoments_region_centralMomentsRegionCentralMomentsRegionCentralMomentsRegionCentralmoments_region_central

'phi'"phi""phi""phi""phi""phi"

字符方向(角度)的正弦和余弦。

'num_connect'"num_connect""num_connect""num_connect""num_connect""num_connect"

连通分量的数量。

'num_holes'"num_holes""num_holes""num_holes""num_holes""num_holes"

孔数。

'projection_horizontal'"projection_horizontal""projection_horizontal""projection_horizontal""projection_horizontal""projection_horizontal"

灰度值的水平投影。

'projection_horizontal_invar'"projection_horizontal_invar""projection_horizontal_invar""projection_horizontal_invar""projection_horizontal_invar""projection_horizontal_invar"

灰度值的水平投影,自动缩放至最大范围。

'projection_vertical'"projection_vertical""projection_vertical""projection_vertical""projection_vertical""projection_vertical"

灰度值的垂直投影。

'projection_vertical_invar'"projection_vertical_invar""projection_vertical_invar""projection_vertical_invar""projection_vertical_invar""projection_vertical_invar"

灰度值的垂直投影,自动缩放至最大范围。

'cooc'"cooc""cooc""cooc""cooc""cooc"

二值共生矩阵的值。

'moments_gray_plane'"moments_gray_plane""moments_gray_plane""moments_gray_plane""moments_gray_plane""moments_gray_plane"

归一化灰度值矩与灰度值层级的角度。

'num_runs'"num_runs""num_runs""num_runs""num_runs""num_runs"

区域内按高度归一化的弦数量。

'chord_histo'"chord_histo""chord_histo""chord_histo""chord_histo""chord_histo"

每行弦的频率(非尺度不变)。

'pixel'"pixel""pixel""pixel""pixel""pixel"

字符的灰度值。

'pixel_invar'"pixel_invar""pixel_invar""pixel_invar""pixel_invar""pixel_invar"

字符的灰度值,采用自动最大化灰度值缩放处理。

'pixel_binary'"pixel_binary""pixel_binary""pixel_binary""pixel_binary""pixel_binary"

字符区域以二值图像形式呈现,放大至 WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_pattern x HeightPatternHeightPatternHeightPatternHeightPatternheightPatternheight_pattern 的尺寸。

'gradient_8dir'"gradient_8dir""gradient_8dir""gradient_8dir""gradient_8dir""gradient_8dir"

在字符图像上计算梯度。梯度方向离散化为 8 个方向。振幅图像根据这些离散化方向分解为 8 个通道。从每个通道提取 5x5 网格上的 25 个样本,这些样本作为特征使用。

执行信息

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

参数

WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_pattern (输入控制)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

网络输入层的宽度。

默认值: 8

建议值: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 16, 20

值范围: 1 ≤ WidthPattern WidthPattern WidthPattern WidthPattern widthPattern width_pattern ≤ 100

HeightPatternHeightPatternHeightPatternHeightPatternheightPatternheight_pattern (输入控制)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

网络输入层的高度。

默认值: 10

建议值: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 16, 20

值范围: 1 ≤ HeightPattern HeightPattern HeightPattern HeightPattern heightPattern height_pattern ≤ 100

InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation (输入控制)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

关于字符缩放的插值模式。

默认值: 1

值列表: 0, 1, 2

FeaturesFeaturesFeaturesFeaturesfeaturesfeatures (输入控制)  string(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

附加特征。

默认值: 'default' "default" "default" "default" "default" "default"

值列表: 'anisometry'"anisometry""anisometry""anisometry""anisometry""anisometry", 'chord_histo'"chord_histo""chord_histo""chord_histo""chord_histo""chord_histo", 'compactness'"compactness""compactness""compactness""compactness""compactness", 'convexity'"convexity""convexity""convexity""convexity""convexity", 'cooc'"cooc""cooc""cooc""cooc""cooc", 'default'"default""default""default""default""default", 'foreground'"foreground""foreground""foreground""foreground""foreground", 'foreground_grid_16'"foreground_grid_16""foreground_grid_16""foreground_grid_16""foreground_grid_16""foreground_grid_16", 'foreground_grid_9'"foreground_grid_9""foreground_grid_9""foreground_grid_9""foreground_grid_9""foreground_grid_9", 'gradient_8dir'"gradient_8dir""gradient_8dir""gradient_8dir""gradient_8dir""gradient_8dir", 'height'"height""height""height""height""height", 'moments_central'"moments_central""moments_central""moments_central""moments_central""moments_central", 'moments_gray_plane'"moments_gray_plane""moments_gray_plane""moments_gray_plane""moments_gray_plane""moments_gray_plane", 'moments_region_2nd_invar'"moments_region_2nd_invar""moments_region_2nd_invar""moments_region_2nd_invar""moments_region_2nd_invar""moments_region_2nd_invar", 'moments_region_2nd_rel_invar'"moments_region_2nd_rel_invar""moments_region_2nd_rel_invar""moments_region_2nd_rel_invar""moments_region_2nd_rel_invar""moments_region_2nd_rel_invar", 'moments_region_3rd_invar'"moments_region_3rd_invar""moments_region_3rd_invar""moments_region_3rd_invar""moments_region_3rd_invar""moments_region_3rd_invar", 'num_connect'"num_connect""num_connect""num_connect""num_connect""num_connect", 'num_holes'"num_holes""num_holes""num_holes""num_holes""num_holes", 'num_runs'"num_runs""num_runs""num_runs""num_runs""num_runs", 'phi'"phi""phi""phi""phi""phi", 'pixel'"pixel""pixel""pixel""pixel""pixel", 'pixel_binary'"pixel_binary""pixel_binary""pixel_binary""pixel_binary""pixel_binary", 'pixel_invar'"pixel_invar""pixel_invar""pixel_invar""pixel_invar""pixel_invar", 'projection_horizontal'"projection_horizontal""projection_horizontal""projection_horizontal""projection_horizontal""projection_horizontal", 'projection_horizontal_invar'"projection_horizontal_invar""projection_horizontal_invar""projection_horizontal_invar""projection_horizontal_invar""projection_horizontal_invar", 'projection_vertical'"projection_vertical""projection_vertical""projection_vertical""projection_vertical""projection_vertical", 'projection_vertical_invar'"projection_vertical_invar""projection_vertical_invar""projection_vertical_invar""projection_vertical_invar""projection_vertical_invar", 'ratio'"ratio""ratio""ratio""ratio""ratio", 'width'"width""width""width""width""width", 'zoom_factor'"zoom_factor""zoom_factor""zoom_factor""zoom_factor""zoom_factor"

CharacterCharacterCharacterCharactercharactercharacter (输入控制)  string-array HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)

集合中的所有元素。

默认值: ['a','b','c'] ["a","b","c"] ["a","b","c"] ["a","b","c"] ["a","b","c"] ["a","b","c"]

OcrHandleOcrHandleOcrHandleOcrHandleocrHandleocr_handle (输出控制)  ocr_box HOCRBox, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

创建的 OCR 分类器的 ID。

示例(C)

HTuple     WidthPattern,HeightPattern,Interpolation,
           Features,OcrHandle;
create_tuple(&WidthPattern,1);
set_i(WidthPattern,8,0);
create_tuple(&HeightPattern,1);
set_i(HeightPattern,10,0);
create_tuple(&Interpolation,1);
set_i(Interpolation,1,0);
create_tuple(&Features,1);
set_s(Features,"default",0);
create_tuple(&Character,26+26+10);
set_s(Character,"a",0);
set_s(Character,"b",1);
/* ... */
set_s(Character,"A",27);
set_s(Character,"B",28);
/* ... */
set_s(Character,"1",53);
set_s(Character,"2",54);
/* ... */
T_create_ocr_class_box(WidthPattern,HeightPattern,Interpolation,
                       Features,Character,&OcrHandle);

结果

如果参数正确,算子 create_ocr_class_boxcreate_ocr_class_boxCreateOcrClassBoxCreateOcrClassBoxCreateOcrClassBoxcreate_ocr_class_box 返回值 2 (H_MSG_TRUE)。否则将抛出异常。

可能的前趋

reset_obj_dbreset_obj_dbResetObjDbResetObjDbResetObjDbreset_obj_db

可能的后继

traind_ocr_class_boxtraind_ocr_class_boxTraindOcrClassBoxTraindOcrClassBoxTraindOcrClassBoxtraind_ocr_class_box, trainf_ocr_class_boxtrainf_ocr_class_boxTrainfOcrClassBoxTrainfOcrClassBoxTrainfOcrClassBoxtrainf_ocr_class_box, info_ocr_class_boxinfo_ocr_class_boxInfoOcrClassBoxInfoOcrClassBoxInfoOcrClassBoxinfo_ocr_class_box, write_ocrwrite_ocrWriteOcrWriteOcrWriteOcrwrite_ocr, ocr_change_charocr_change_charOcrChangeCharOcrChangeCharOcrChangeCharocr_change_char

替代

create_ocr_class_mlpcreate_ocr_class_mlpCreateOcrClassMlpCreateOcrClassMlpCreateOcrClassMlpcreate_ocr_class_mlp, create_ocr_class_svmcreate_ocr_class_svmCreateOcrClassSvmCreateOcrClassSvmCreateOcrClassSvmcreate_ocr_class_svm

另见

affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image, ocr_change_charocr_change_charOcrChangeCharOcrChangeCharOcrChangeCharocr_change_char, moments_region_2nd_invarmoments_region_2nd_invarMomentsRegion2ndInvarMomentsRegion2ndInvarMomentsRegion2ndInvarmoments_region_2nd_invar, moments_region_2nd_rel_invarmoments_region_2nd_rel_invarMomentsRegion2ndRelInvarMomentsRegion2ndRelInvarMomentsRegion2ndRelInvarmoments_region_2nd_rel_invar, moments_region_3rd_invarmoments_region_3rd_invarMomentsRegion3rdInvarMomentsRegion3rdInvarMomentsRegion3rdInvarmoments_region_3rd_invar, moments_region_centralmoments_region_centralMomentsRegionCentralMomentsRegionCentralMomentsRegionCentralmoments_region_central

模块

光学字符识别/光学字符验证