zoukankan      html  css  js  c++  java
  • 《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,根据子像素准确性从一幅图像中提取零相交。
  • 相关阅读:
    1094. Car Pooling
    121. Best Time to Buy and Sell Stock
    58. Length of Last Word
    510. Inorder Successor in BST II
    198. House Robber
    57. Insert Interval
    15. 3Sum java solutions
    79. Word Search java solutions
    80. Remove Duplicates from Sorted Array II java solutions
    34. Search for a Range java solutions
  • 原文地址:https://www.cnblogs.com/ziwang/p/4876828.html
Copyright © 2011-2022 走看看