目錄
- create_ocr_class_svm(算子)
- 描述
- 參數
create_ocr_class_svm(算子)
create_ocr_class_svm - 使用支持隨機向量機制創建OCR分類器。
create_ocr_class_svm(:: WidthCharacter,HeightCharacter,Interpolation,Features,Characters,KernelType,KernelParam,Nu,Mode,Preprocessing,NumComponents:OCRHandle)
描述
create_ocr_class_svm創建一個使用支持隨機向量機制(SVM)的OCR分類器。 OCR分類器的句柄在OCRHandle中返回。
有關SVM如何工作的說明,請參閱create_class_svm。 create_ocr_class_svm使用Mode給出的分類模式創建SVM以進行分類。 SVM的特征向量的長度(create_class_svm中的NumFeatures)由用于OCR的特征確定,這些特征在特征中傳遞。這些功能如下所述。在create_class_svm中使用KernelType,KernelParam和Nu對內核進行參數化。 SVM的類的數量(create_class_svm中的NumClasses)是根據要在OCR中使用的字符的名稱確定的,這些字符在字符中傳遞。如create_class_svm所述,參數Preprocessing和NumComponents可用于指定數據的預處理(即,特征向量)。為了數值穩定性,通常可以將預處理設置為“標準化”。為了加快分類時間,可以使用’principal_components’或’canonical_variates’,因為可以顯著減少輸入特征的數量而不會降低識別率。
用于分類的特征由特征確定。功能可以包含一個功能名稱元組。這些特征名稱中的每一個導致為分類器計算一個或多個特征。一些特征名稱計算灰度值特征(例如,‘pixel_invar’)。由于分類器需要恒定數量的特征(輸入變量),因此要分類的字符將轉換為標準大小,該大小由WidthCharacter和HeightCharacter確定。用于變換的插值由插值確定。它與affine_trans_image中的含義相同。應該選擇插值,使得在變換中不會出現混疊效應。對于大多數應用,應使用Interpolation =‘constant’。應該注意的是,變換后的字符的大小不會選擇得太大,因為分類器的泛化屬性可能對大尺寸變壞。特別地,對于大尺寸,如果使用灰度值特征,則小的分割誤差將對計算的特征具有大的影響。這是因為分割錯誤將改變區域的最小包圍矩形,因此角色的縮放與訓練集中的字符不同。在大多數應用中,應使用6x8到10x14之間的大小。
參數功能可以包含以下用于字符分類的功能名稱。
‘default’
選擇’ratio’和’pixel_invar’。
‘pixel’
字符的灰度值(WidthCharacter x HeightCharacter特征)。
‘pixel_invar’
具有灰度值最大縮放的字符的灰度值(WidthCharacter x HeightCharacter特征)。
‘pixel_binary’
作為二進制圖像的字符區域縮放為WidthCharacter x HeightCharacter(WidthCharacter x HeightCharacter特征)的大小。
‘gradient_8dir’
在角色圖像上計算漸變。梯度方向被離散化為8個方向。根據這些離散化的方向將振幅圖像分解為8個通道。從每個通道提取5x5網格上的25個樣本。這些樣本用作特征(200個特征)。
‘projection_horizo??ntal’
灰度值的水平投影(參見gray_projections,HeightCharacter特征)。
‘projection_horizo??ntal_invar’
灰度值的最大縮放水平投影(HeightCharacter特征)。
‘projection_vertical’
垂直投影灰度值(參見gray_projections,WidthCharacter特征)。
‘projection_vertical_invar’
灰度值的最大縮放垂直投影(WidthCharacter特征)。
‘ratio’
角色的寬高比(1個特征)。
“anisometry’”
角色的反分析(參見偏心,1個特征)。
‘width’
在將字符縮放到標準大小之前字符的寬度(不是縮放不變的,請參見smallest_rectangle1,1個特征)。
‘Hight’
在將字符縮放到標準大小之前字符的高度(不是縮放不變的,請參見smallest_rectangle1,1個特征)。
‘zoom_factor’
字符與WidthCharacter和HeightCharacter的值之間的大小差異(不是縮放不變的,1個特征)。
‘foreground’
前景中像素的分數(1個特征)。
‘foreground_grid_9’
在角色的最小封閉矩形內的3x3網格中前景中像素的分數(9個特征)。
‘foreground_grid_16’
在角色的最小封閉矩形內的4x4網格中的前景中的像素分數(16個特征)。
‘compactness’
角色的緊湊性(見緊湊性,1個特征)。
“convexity”
角色的凸性(見凸性,1個特征)。
‘moments_region_2nd_invar’
角色的標準化第二個時刻(參見moments_region_2nd_invar,3個特征)。
‘moments_region_2nd_rel_invar’
角色的標準化第二個相對時刻(參見moments_region_2nd_rel_invar,2個特征)。
‘moments_region_3rd_invar’
角色的標準化第3個時刻(參見moments_region_3rd_invar,4個特征)。
‘moments_central’
角色的標準化中心矩(參見moments_region_central,4個特征)。
‘moments_gray_plane’
歸一化灰度值矩和灰度值平面的角度(參見moments_gray_plane,4個特征)。
“phi”
角色的方向(角度)(參見elliptic_axis,1個特征)。
‘num_connect’
連接組件的數量(請參閱connect_and_holes,1功能)。
‘num_holes’
孔數(參見connect_and_holes,1個特征)。
‘COOC’
二元共生矩陣的值(參見gen_cooc_matrix,12個特征)。
‘num_runs’
由高度標準化的區域中的運行次數(1個特征)。
‘chord_histo’
每行運行的頻率(HeightCharacter功能)。
創建分類器后,使用trainf_ocr_class_svm對其進行訓練。在此之后,可以使用write_ocr_class_svm保存分類器。或者,可以在訓練之后立即使用分類器來使用do_ocr_single_class_svm或do_ocr_multi_class_svm對字符進行分類。
SVM和多層感知器(MLP)的比較(參見create_ocr_class_mlp)通常表明SVM通常在訓練時更快,特別是對于大型訓練集,并且實現比MLP略高的識別率。 MLP在分類方面更快,因此應該優先考慮時間關鍵應用。請注意,本指南假定參數的最佳調整。
并行
多線程類型:可重入(與非獨占運算符并行運行)。
多線程范圍:全局(可以從任何線程調用)。
沒有并行化處理。
此運算符返回句柄。請注意,即使將此句柄類型的實例用作輸入參數,也可以由特定運算符更改該句柄類型的實例的狀態。
參數
WidthCharacter(input_control)整數→(整數)
矩形的寬度,分割字符的灰度值被縮放到該矩形。
默認值:8
建議值:1,2,3,4,5,6,7,8,9,10,11,12,14,16,20
典型值范圍:4≤WidthCharacter≤20
HeightCharacter(input_control)整數→(整數)
矩形的高度,分割字符的灰度值被縮放到該矩形的高度。
默認值:10
建議值:1,2,3,4,5,6,7,8,9,10,11,12,14,16,20
典型值范圍:4≤HeightCharacter≤20
Interpolation(input_control)字符串→(字符串)
用于縮放字符的插值模式。
默認值:‘常數’
值列表:‘bilinear’,‘constant’,‘nearest_neighbor’,‘weighted’
Features(input_control)字符串(-array)→(字符串)
用于分類的功能。
默認值:‘默認’
值列表:‘anisometry’,‘chord_histo’,‘compactness’,‘convexity’,‘cooc’,‘default’,‘foreground’,‘foreground_grid_16’,‘foreground_grid_9’,‘gradient_8dir’,‘height’,'moments_central ',‘moments_gray_plane’,‘moments_region_2nd_invar’,‘moments_region_2nd_rel_invar’,‘moments_region_3rd_invar’,‘num_connect’,‘num_holes’,‘num_runs’,‘phi’,‘pixel’,‘pixel_binary’,‘pixel_invar’,‘projection_horizo??ntal’, ‘projection_horizo??ntal_invar’,‘projection_vertical’,‘projection_vertical_invar’,‘ratio’,‘width’,‘zoom_factor’
Characters(input_control)字符串數組→(字符串)
要讀取的字符集的所有字符。
默認值:[‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’]
KernelType(input_control)string→(string)
內核類型。
默認值:‘rbf’
值列表:‘linear’,‘polynomial_homogeneous’,‘polynomial_inhomogeneous’,‘rbf’
KernelParam(input_control)real→(真實)
內核函數的附加參數。
默認值:0.02
建議值:0.01,0.02,0.05,0.1,0.5
Nu(input_control)real→(真實)
SVM的正則化常數。
默認值:0.05
建議值:0.0001,0.001,0.01,0.05,0.1,0.2,0.3
限制:(Nu> 0.0)&&(Nu <1.0)
Mode(input_control)string→(string)
SVM的模式。
默認值:‘one-versus-one’
價值清單:‘一對多’,‘一對一’
Preprocessing(input_control)字符串→(字符串)
用于變換特征向量的預處理類型。
默認值:‘normalization’
值列表:‘canonical_variates’,‘none’,‘normalization’,‘principal_components’
NumComponents(input_control)整數→(整數)
預處理參數:已轉換要素的數量(對于Preprocessing ='none’和Preprocessing =‘noalization’)。
默認值:10
建議值:1,2,3,4,5,8,10,15,20,30,40,50,60,70,80,90,100
限制:NumComponents> = 1
OCRHandle(output_control)ocr_svm→(整數)
處理OCR分類器句柄。