append_ocr_trainf

read_image (Image, 'D:/图像文件/字符识别/1-1.bmp')

access_channel (Image, Image1, 1)

* draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2)

gen_rectangle2 (Rectangle, 96.0436, 715.9526, 0.0173917050943654, 110.186941, 18.041084)

reduce_domain (Image1, Rectangle, ImageReduced)

scale_image_max (ImageReduced, ImageScaleMax)

TmpCtrl_Orientation :=0.0173917050943654

* OCR 02: Build rotation matrix

hom_mat2d_identity (TmpCtrl_MatrixIdentity)

hom_mat2d_rotate (TmpCtrl_MatrixIdentity, -TmpCtrl_Orientation, 0, 0, TmpCtrl_MatrixRotation)

get_domain (ImageReduced, TmpObj_Domain)

get_system ('clip_region', TmpCtrl_ClipRegion)

set_system ('clip_region', 'false')

dilation_circle (TmpObj_Domain, TmpObj_DomainExpanded, 25)

affine_trans_region (TmpObj_DomainExpanded, TmpObj_DomainTransformedRaw, TmpCtrl_MatrixRotation, 'true')

smallest_rectangle1 (TmpObj_DomainTransformedRaw, TmpCtrl_Row1, TmpCtrl_Col1, TmpCtrl_Row2, TmpCtrl_Col2)

hom_mat2d_translate (TmpCtrl_MatrixIdentity, -TmpCtrl_Row1, -TmpCtrl_Col1, TmpCtrl_MatrixTranslation)

hom_mat2d_compose (TmpCtrl_MatrixTranslation, TmpCtrl_MatrixRotation, TmpCtrl_MatrixComposite)

affine_trans_region (TmpObj_Domain, TmpObj_DomainTransformed, TmpCtrl_MatrixComposite, 'true')

affine_trans_image (ImageReduced, TmpObj_ImageTransformed, TmpCtrl_MatrixComposite, 'constant', 'true')

dilation_circle (TmpObj_Domain, TmpObj_DomainExpanded, 25)

affine_trans_pixel (TmpCtrl_MatrixComposite, TmpCtrl_Col1, TmpCtrl_Row1, RowTrans, ColTrans)

expand_domain_gray (TmpObj_ImageTransformed, TmpObj_ImageTransformedExpanded, 25)

reduce_domain (TmpObj_ImageTransformed, TmpObj_DomainTransformed, TmpObj_ImageTransformedReduced)

crop_part (TmpObj_ImageTransformedReduced, TmpObj_MonoReduced_OCR_02_0, 0, 0, TmpCtrl_Col2-TmpCtrl_Col1+1, TmpCtrl_Row2-TmpCtrl_Row1+1)

char_threshold (TmpObj_MonoReduced_OCR_02_0, TmpObj_DomainTransformed, Characters, 1,100, Threshold)

connection (Characters, ConnectedRegions1)

partition_dynamic (Characters, Partitioned, 29, 90)

connection (Partitioned, ConnectedRegions)

select_characters (ConnectedRegions, RegionCharacters, 'false', 'medium', 26, 28, 'false', 'false', 'none', 'false', 'medium', 'false', 0, 'completion')

* select_shape (ConnectedRegions, SelectedRegions, 'width', 'and', 10, 49)

* select_shape (SelectedRegions, SelectedRegions1, 'height', 'and', 10, 47)

sort_region (RegionCharacters, SortedRegions, 'character', 'true', 'column')

count_obj (SortedRegions, Number)

Chars := ['1','2','3']

for i := 1 to Number by 1

select_obj (SortedRegions, TrainSingle, i)

append_ocr_trainf (TrainSingle, TmpObj_MonoReduced_OCR_02_0, Chars[i - 1], 'D:/ocr/WR.trf')

endfor

read_ocr_trainf_names ('D:/ocr/WR.trf', CharacterNames, CharacterCount)

create_ocr_class_mlp (8, 10, 'constant', 'default', ['1','2','3'], 80, 'none', 10, 42, OCRHandle)

trainf_ocr_class_mlp (OCRHandle, 'D:/ocr/WR.trf', 200, 1, 0.01, Error, ErrorLog)

write_ocr_class_mlp (OCRHandle, 'D:/ocr/WR.omc')

clear_ocr_class_mlp (OCRHandle)

相关推荐
dhxhsgrx9 分钟前
PYTHON训练营DAY25
java·开发语言·python
风逸hhh3 小时前
python打卡day25@浙大疏锦行
开发语言·python
刚入门的大一新生3 小时前
C++初阶-string类的模拟实现与改进
开发语言·c++
chxii4 小时前
5java集合框架
java·开发语言
老衲有点帅4 小时前
C#多线程Thread
开发语言·c#
C++ 老炮儿的技术栈4 小时前
什么是函数重载?为什么 C 不支持函数重载,而 C++能支持函数重载?
c语言·开发语言·c++·qt·算法
IsPrisoner5 小时前
Go语言安装proto并且使用gRPC服务(2025最新WINDOWS系统)
开发语言·后端·golang
Python私教5 小时前
征服Rust:从零到独立开发的实战进阶
服务器·开发语言·rust
chicpopoo5 小时前
Python打卡DAY25
开发语言·python