《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,根据子像素准确性从一幅图像中提取零相交。
时间: 2024-10-15 04:06:02