• 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数011,ocr,字符识别


    《zw版·Halcon-delphi系列原创教程》 Halcon分类函数011,ocr,字符识别


    为方便阅读,在不影响说明的前提下,笔者对函数进行了简化:

    • :: 用符号“**”,替换:“procedure”
    • :: 用大写字母“X”,替换:“IHUntypedObjectX”
    • :: 省略了字符:“const”、“OleVariant”

    【示例】 说明

    函数:

    procedure AddNoiseWhiteContourXld( const Contours: IHUntypedObjectX; out NoisyContours: IHUntypedObjectX; NumRegrPoints: OleVariant; Amp: OleVariant);

    简化后为:

    ** AddNoiseWhiteContourXld( Contours: X; out NoisyContours: X; NumRegrPoints, Amp);

      1 ** AppendOcrTrainf( Character: X; Image: X; Class_, TrainingFile); 
      2 说明,  append_ocr_trainf,将字符添加到一个测试文件中。
      3 
      4 ** ClearAllOcrClassKnn; 
      5 说明,  清除所有创建的OCR-knn分级器
      6 
      7 ** ClearAllOcrClassMlp; 
      8 说明,  clear_all_ocr_class_mlp,清除所有的create_ocr_class_mlp创建的OCR分级器,释放分级器占据的存储空间。
      9 
     10 ** ClearAllOcrClassSvm; 
     11 说明,  clear_all_ocr_class_svm,清除所有的基于OCR分级器的SVM,释放相应的存储空间。
     12 
     13 ** ClearOcrClassKnn( OCRHandle);
     14 
     15 ** ClearOcrClassMlp( OCRHandle); 
     16 说明,  clear_ocr_class_mlp,清除所有的由OCRHandle给定的且由create_ocr_class_mlp创建的OCR分级器,释放所有的分级器占据的存储空间。
     17 
     18 ** ClearOcrClassSvm( OCRHandle); 
     19 说明,  clear_ocr_class_svm,清除基于OCR分级器的一个SVM,释放相应的存储空间。
     20 
     21 ** CloseAllOcrs; 
     22 说明,  close_all_ocrs,删除所有光字符,释放存储空间,但会丢失所有的测试数据。
     23 
     24 ** CloseOcr( OCRHandle); 
     25 说明,  close_ocr,重新分配拥有OcrHandle数目的分级器的存储,但所有相应的数据会丢失,不过这些数据可由write_ocr事先保存。
     26 
     27 ** ConcatOcrTrainf( SingleFiles, ComposedFile); 
     28 说明,  concat_ocr_trainf,合并测试文件。
     29 
     30 ** CreateOcrClassBox( WidthPattern, HeightPattern, Interpolation, Features, Character, out OCRHandle); 
     31 说明,  create_ocr_class_box,创建新的OCR分级器。
     32 
     33 ** CreateOcrClassKnn( WidthCharacter, HeightCharacter, Interpolation, Features, Characters, GenParamNames, GenParamValues, out OCRHandle); 
     34 说明,  创建knn分级器。
     35 
     36 ** CreateOcrClassMlp( WidthCharacter, HeightCharacter, Interpolation, Features, Characters, NumHidden, Preprocessing, NumComponents, RandSeed, out OCRHandle); 
     37 说明,  create_ocr_class_mlp,利用MLP(多层感知器)创建一个新的OCR分级器。
     38 
     39 ** CreateOcrClassSvm( WidthCharacter, HeightCharacter, Interpolation, Features, Characters, KernelType, KernelParam, Nu, Mode, Preprocessing, NumComponents, out OCRHandle); 
     40 说明,  create_ocr_class_svm,利用支持向量机创建一个OCR分级器。
     41 
     42 ** DeserializeOcr( SerializedItemHandle, out OCRHandle); 
     43 说明,  ocr数据转换
     44 
     45 ** DeserializeOcrClassKnn( SerializedItemHandle, out OCRHandle); 
     46 说明,  ocr-knn分类器数据转换
     47 
     48 ** DeserializeOcrClassMlp( SerializedItemHandle, out OCRHandle); 
     49 说明,  ocr-mlp分类器数据转换
     50 
     51 ** DeserializeOcrClassSvm( SerializedItemHandle, out OCRHandle); 
     52 说明,  ocr-svm分类器数据转换
     53 
     54 ** DoOcrMulti( Character: X; Image: X; OCRHandle, out Class_, out Confidence); 
     55 说明,  do_ocr_multi,给每一个Character(字符)分配一个类。
     56 
     57 ** DoOcrMultiClassKnn( Character: X; Image: X; OCRHandle, out Class_, out Confidence); 
     58 说明,  do_ocr_multi,给多个Character(字符)分配一个KNN类。
     59 
     60 ** DoOcrMultiClassMlp( Character: X; Image: X; OCRHandle, out Class_, out Confidence); 
     61 说明,  do_ocr_multi_class_mlp,为根据给定区域字符和OCR分级器OCRHandle的灰度图像值而给定的每个字符计算出最好的类,将类返回到Class中,且将类的置信度返回到Confidence中。
     62 
     63 ** DoOcrMultiClassSvm( Character: X; Image: X; OCRHandle, out Class_); 
     64 说明,  do_ocr_multi_class_svm,根据基于OCR分级器的SVM将大量字符分类。
     65 
     66 ** DoOcrSingle( Character: X; Image: X; OCRHandle, out Classes, out Confidences); 
     67 说明,  do_ocr_single,给一些Character(字符)分配一些类。
     68 
     69 ** DoOcrSingleClassKnn( Character: X; Image: X; OCRHandle, NumClasses, NumNeighbors, out Class_, out Confidence); 
     70 说明,  do_ocr_multi,给每一个Character(字符)分配一个KNN类。
     71 
     72 ** DoOcrSingleClassMlp( Character: X; Image: X; OCRHandle, Num, out Class_, out Confidence); 
     73 说明,  do_ocr_single_class_mlp,为根据给定区域字符和OCR分级器OCRHandle的灰度图像值而给定的字符计算出最好的Num类,将类返回到Class中,且将类的置信度返回到Confidence中。
     74 
     75 ** DoOcrSingleClassSvm( Character: X; Image: X; OCRHandle, Num, out Class_); 
     76 说明,  do_ocr_single_class_svm,根据基于OCR分级器的SVM将单个字符分类。
     77 
     78 ** DoOcrWordKnn( Character: X; Image: X; OCRHandle, Expression, NumAlternatives, NumCorrections, out Class_, out Confidence, out Word, out Score); 
     79 说明,  将字符组作为一个实体。
     80 
     81 ** DoOcrWordMlp( Character: X; Image: X; OCRHandle, Expression, NumAlternatives, NumCorrections, out Class_, out Confidence, out Word, out Score); 
     82 说明,  do_ocr_word_mlp,功能与do?_ocr_multi_class_mlp相同,只是do_ocr_word_mlp将字符组作为一个实体。
     83 
     84 ** DoOcrWordSvm( Character: X; Image: X; OCRHandle, Expression, NumAlternatives, NumCorrections, out Class_, out Word, out Score); 
     85 说明,  do_ocr_word_svm,利用OCR分级器将一系列相关字符分类。
     86 
     87 ** GetFeaturesOcrClassKnn( Character: X; OCRHandle, Transform, out Features); 
     88 说明,  根据OCR分级器OCRHandl,e确定的字符计算其特征参数,并将它们返回到Features。
     89 
     90 ** GetFeaturesOcrClassMlp( Character: X; OCRHandle, Transform, out Features); 
     91 说明,  get_features_ocr_class_mlp,为根据OCR分级器OCRHandle确定的字符计算其特征参数,并将它们返回到Features。
     92 
     93 ** GetFeaturesOcrClassSvm( Character: X; OCRHandle, Transform, out Features); 
     94 说明,  get_features_ocr_class_svm,计算一个字符的特征。
     95 
     96 ** GetParamsOcrClassKnn( OCRHandle, out WidthCharacter, out HeightCharacter, out Interpolation, out Features, out Characters, out Preprocessing, out NumTrees); 
     97 说明,  返回knn-ocr分类器的参数。
     98 
     99 ** GetParamsOcrClassMlp( OCRHandle, out WidthCharacter, out HeightCharacter, out Interpolation, out Features, out Characters, out NumHidden, out Preprocessing, out NumComponents); 
    100 说明,  get_params_ocr_class_mlp,返回一个OCR分级器的参数只有当分级器由do_ocr_multi_class_mlp创建时。
    101 
    102 ** GetParamsOcrClassSvm( OCRHandle, out WidthCharacter, out HeightCharacter, out Interpolation, out Features, out Characters, out KernelType, out KernelParam, out Nu, out Mode, out Preprocessing, out NumComponents); 
    103 说明,  get_params_ocr_class_svm,返回一个OCR分级器的参数。
    104 
    105 ** GetPrepInfoOcrClassMlp( OCRHandle, TrainingFile, Preprocessing, out InformationCont, out CumInformationCont); 
    106 说明,  get_prep_info_ocr_class_mlp,计算OCR分级器预设定矢量特性的信息。
    107 
    108 ** GetPrepInfoOcrClassSvm( OCRHandle, TrainingFile, Preprocessing, out InformationCont, out CumInformationCont); 
    109 说明,  get_prep_info_ocr_class_svm,计算基于OCR分级器的SVM的预定义特征矢量的信息内容。
    110 
    111 ** GetSupportVectorNumOcrClassSvm( OCRHandle, out NumSupportVectors, out NumSVPerSVM); 
    112 说明,  get_support_vector_num_ocr_class_svm,返回OCR分级器支持的矢量的数目。
    113 
    114 ** GetSupportVectorOcrClassSvm( OCRHandle, IndexSupportVector, out Index); 
    115 说明,  get_support_vector_ocr_class_svm,返回基于支持向量机的已测试OCR分级器中支持向量坐标。
    116 
    117 ** InfoOcrClassBox( OCRHandle, out WidthPattern, out HeightPattern, out Interpolation, out WidthMaxChar, out HeightMaxChar, out Features, out Characters); 
    118 说明,  info_ocr_class_box,反馈ocr的有关信息。
    119 
    120 ** OcrChangeChar( OCRHandle, Character); 
    121 说明,  ocr_change_char,为字符建立新的查阅表。
    122 
    123 ** OcrGetFeatures( Character: X; OCRHandle, out FeatureVector); 
    124 说明,  ocr_get_features,计算给定Character(字符)的特征参数。
    125 
    126 ** ProtectOcrTrainf( TrainingFile, Password, TrainingFileProtected);
    127 
    128 ** ReadOcr( FileName, out OCRHandle); 
    129 说明,  read_ocr,从文件的FileName(文件名)读取OCR分级器。
    130 
    131 ** ReadOcrClassKnn( FileName, out OCRHandle); 
    132 说明,  读取ocr-knn数据
    133 
    134 ** ReadOcrClassMlp( FileName, out OCRHandle); 
    135 说明,  read_ocr_class_mlp,从一个文件中读取OCR分级器。
    136 
    137 ** ReadOcrClassSvm( FileName, out OCRHandle); 
    138 说明,  read_ocr_class_svm,从文件中读取基于OCR分级器的SVM。
    139 
    140 ** ReadOcrTrainf( out Characters: X; TrainingFile, out CharacterNames); 
    141 说明,  read_ocr_trainf,从文件中读取字符,将其转换到图像中。
    142 
    143 ** ReadOcrTrainfNames( TrainingFile, out CharacterNames, out CharacterCount); 
    144 说明,  read_ocr_trainf_names,查询哪些字符存储在测试文件中。
    145 
    146 ** ReadOcrTrainfNamesProtected( TrainingFile, Password, out CharacterNames, out CharacterCount); 
    147 说明,  读取ocr数据
    148 
    149 ** ReadOcrTrainfSelect( out Characters: X; TrainingFile, SearchNames, out FoundNames); 
    150 说明,  read_ocr_trainf_select,从文件中读取测试特定字符,将其转换到图像中。
    151 
    152 ** ReduceOcrClassSvm( OCRHandle, Method, MinRemainingSV, MaxError, out OCRHandleReduced); 
    153 说明,  reduce_ocr_class_svm,根据一个减小的SVM来接近一个基于OCR分级器的SVM。
    154 
    155 ** SelectFeatureSetTrainfKnn( TrainingFile, FeatureList, SelectionMethod, Width, Height, GenParamNames, GenParamValues, out OCRHandle, out FeatureSet, out Score); 
    156 说明,  根据knn训练参数特征选择对象
    157 
    158 ** SelectFeatureSetTrainfMlp( TrainingFile, FeatureList, SelectionMethod, Width, Height, GenParamNames, GenParamValues, out OCRHandle, out FeatureSet, out Score); 
    159 说明,  根据mlp训练参数特征选择对象
    160 
    161 ** SelectFeatureSetTrainfMlpProtected( TrainingFile, Password, FeatureList, SelectionMethod, Width, Height, GenParamNames, GenParamValues, out OCRHandle, out FeatureSet, out Score); 
    162 说明,  根据mlp训练参数特征选择对象
    163 
    164 ** SelectFeatureSetTrainfSvm( TrainingFile, FeatureList, SelectionMethod, Width, Height, GenParamNames, GenParamValues, out OCRHandle, out FeatureSet, out Score); 
    165 说明,  根据svm训练参数特征选择对象
    166 
    167 ** SelectFeatureSetTrainfSvmProtected( TrainingFile, Password, FeatureList, SelectionMethod, Width, Height, GenParamNames, GenParamValues, out OCRHandle, out FeatureSet, out Score); 
    168 说明,  根据svm训练参数特征选择对象
    169 
    170 ** SerializeOcr( OCRHandle, out SerializedItemHandle); 
    171 说明,  ocr数据序列化
    172 
    173 ** SerializeOcrClassKnn( OCRHandle, out SerializedItemHandle); 
    174 说明,  knn分类器数据序列化
    175 
    176 ** SerializeOcrClassMlp( OCRHandle, out SerializedItemHandle); 
    177 说明,  mlp分类器数据序列化
    178 
    179 ** SerializeOcrClassSvm( OCRHandle, out SerializedItemHandle); 
    180 说明,  svm分类器数据序列化
    181 
    182 ** TestdOcrClassBox( Character: X; Image: X; OCRHandle, Class_, out Confidence); 
    183 说明,  testd_ocr_class_box,测试给定类中字符的置信度。
    184 
    185 ** TraindOcrClassBox( Character: X; Image: X; OCRHandle, Class_, out AvgConfidence); 
    186 说明,  traind_ocr_class_box,通过一幅图像的特定区域直接测试分级器。
    187 
    188 ** TrainfOcrClassBox( OCRHandle, TrainingFile, out AvgConfidence); 
    189 说明,  trainf_ocr_class_box,根据指定测试文件测试分级器的OCRHandle。
    190 
    191 ** TrainfOcrClassKnn( OCRHandle, TrainingFile, GenParamNames, GenParamValues); 
    192 说明,  ocr-knn分类器训练
    193 
    194 ** TrainfOcrClassMlp( OCRHandle, TrainingFile, MaxIterations, WeightTolerance, ErrorTolerance, out Error, out ErrorLog); 
    195 说明,  trainf_ocr_class_mlp,测试OCR分级器的OCRHandle,根据存储在OCR文件中的测试特性。
    196 
    197 ** TrainfOcrClassMlpProtected( OCRHandle, TrainingFile, Password, MaxIterations, WeightTolerance, ErrorTolerance, out Error, out ErrorLog); 
    198 说明,  ocr-mlp分类器训练
    199 
    200 ** TrainfOcrClassSvm( OCRHandle, TrainingFile, Epsilon, TrainMode); 
    201 说明,  trainf_ocr_class_svm,测试一个OCR分级器。
    202 
    203 ** TrainfOcrClassSvmProtected( OCRHandle, TrainingFile, Password, Epsilon, TrainMode); 
    204 说明,  ocr-svm分类器训练
    205 
    206 ** WriteOcr( OCRHandle, FileName); 
    207 说明,  write_ocr,将OCR分级器的OCRHandle写入文件的FileName(文件名)。
    208 
    209 ** WriteOcrClassKnn( OCRHandle, FileName); 
    210 说明,  保存ocr-knn分类器数据
    211 
    212 ** WriteOcrClassMlp( OCRHandle, FileName); 
    213 说明,  write_ocr_class_mlp,将OCR分级器的OCRHandle写入由文件名确定的文件中。
    214 
    215 ** WriteOcrClassSvm( OCRHandle, FileName); 
    216 说明,  write_ocr_class_svm,将一个OCR分级器写入文件。
    217 
    218 ** WriteOcrTrainf( Character: X; Image: X; Class_, TrainingFile); 
    219 说明,  write_ocr_trainf,将已测试的字符存储到文件中。
    220 
    221 ** WriteOcrTrainfImage( Character: X; Class_, TrainingFile); 
    222 说明,  write_ocr_trainf_image,将字符写入正在测试的文件中。
    223 
    224 ** ZeroCrossing( Image: X; out RegionCrossing: X); 
    225 说明,  zero_crossing,从一幅图像中提取零相交。
    226 
    227 ** ZeroCrossingsFunct1D( Function_, out ZeroCrossings); 
    228 说明,  zero_crossings_funct_1d,计算一个函数的零点。
    229 
    230 ** ZeroCrossingSubPix( Image: X; out ZeroCrossings: X); 
    231 说明,  zero_crossing_sub_pix,根据子像素准确性从一幅图像中提取零相交。
  • 相关阅读:
    PostgreSQL初识,编译安装
    关于iframe的父页面调取子页面里的事件(父往子里传)
    织梦常用代码
    获取月份的最后一天是几号
    获取今天、昨天、一周前的日期
    时分秒倒计时的js实现
    CSS初始化代码
    正则表达式
    utils.js文件;一些常用方法的备份
    js replace替换一段文本中所有的相同字符
  • 原文地址:https://www.cnblogs.com/ziwang/p/4876828.html
Copyright © 2020-2023  润新知