当前位置:网站首页>Halcon Chinese character recognition
Halcon Chinese character recognition
2022-07-05 08:40:00 【Aii parson】
*1 Read images
read_image (Image, 'C:/Users/Administrator/Desktop/ Character recognition .jpg')
rgb1_to_gray (Image, GrayImage)
*2 Gray linear transformation of image preprocessing
scale_image (GrayImage, ImageScaled, 2.70, -190)# Make the light brighter , Dark is darker
*3 Character segmentation
*3.1 Positioning and geometric affine correction
threshold (ImageScaled, Regions, 0, 56)
connection (Regions, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 310.76, 3761.47)
************
union1 (SelectedRegions, RegionUnion)# Put four Chinese characters ( Huang, Luo Chao ) Connect into one
shape_trans (RegionUnion, RegionTrans, 'rectangle2')# Rectangular transformation with angle
orientation_region (RegionTrans, Phi)
area_center (RegionTrans, Area, Row, Column)
vector_angle_to_rigid (Row, Column, Phi, Row, Column, rad(180), HomMat2D)
affine_trans_image (ImageScaled, ImageAffineTrans, HomMat2D, 'constant', 'false')
affine_trans_region (RegionUnion, RegionAffineTrans, HomMat2D, 'nearest_neighbor')# The first parameter is zero RegionUnion, Not for RegionTrans, You can remove the middle between the original drawing compilation and Luo Chao “:”
reduce_domain (ImageAffineTrans, RegionAffineTrans, ImageReduced)
*3.2 Character segmentation ( Each word has a connected domain )
# For the corrected figure “ Huang, Luo Chao ” Segmentation
rgb1_to_gray (ImageReduced, GrayImage1)# not essential , It's originally a grayscale image
threshold (GrayImage1, Regions1, 0, 28)
connection (Regions1, ConnectedRegions1)
count_obj (SortedRegions, Number)
# Check each word ( Just look at , Same as the back )
for Index := 1 to Number by 1
select_obj (SortedRegions, ObjectSelected, Index)
endfor
*4 formation trf file , Character image and Character Association
words:=[' Ed ',' Writing ',' ROM. ',' super ']
TrainFile:='E:/03 CV( ancient )/Halcon/ Code '
# Added separately , It can also be added at one time write_ocr_trainf()
# Then manually add various deformed words
for i := 1 to Number by 1
select_obj (SortedRegions, SingleWord, i)
append_ocr_trainf (SingleWord, GrayImage1, words[i-1], TrainFile) # Add characters to the training file
endfor
read_ocr_trainf_names (TrainFile, CharacterNames, CharacterCount)
NumHidden:=20# Didn't work
*4.1 Create a neural network classifier
create_ocr_class_mlp (8, 10, 'constant', 'default', CharacterNames, 80, 'none', 10, 42, OCRHandle)
*4.2 Training classifier
trainf_ocr_class_mlp (OCRHandle, TrainFile, 200, 1, 0.01, Error, ErrorLog)
*4.3 preservation omc file
write_ocr_class_mlp (OCRHandle, FontFile)
*4.4 Clear handle
clear_ocr_class_mlp (OCRHandle)
*5 Identifying text
read_ocr_class_mlp (FontFile, OCRHandle1)
do_ocr_multi_class_mlp (SortedRegions, GrayImage1, OCRHandle1, Class, Confidence)

边栏推荐
- 287. Looking for repeats - fast and slow pointer
- 猜谜语啦(4)
- Explore the authentication mechanism of StarUML
- 319. Bulb switch
- 如何写Cover Letter?
- One dimensional vector transpose point multiplication np dot
- 696. Count binary substring
- 实例008:九九乘法表
- Daily question - input a date and output the day of the year
- Chapter 18 using work queue manager (1)
猜你喜欢

How to manage the performance of R & D team?

EA introduction notes

Old Wang's esp8266 and old Wu's ws2818 light strip

Example 007: copy data from one list to another list.

Illustration of eight classic pointer written test questions

Hello everyone, welcome to my CSDN blog!

C# LINQ源码分析之Count

How apaas is applied in different organizational structures

如何写Cover Letter?

IT冷知识(更新ing~)
随机推荐
How to manage the performance of R & D team?
猜谜语啦(10)
猜谜语啦(9)
Cinq détails de conception du régulateur de tension linéaire
Old Wang's esp8266 and old Wu's ws2818 light strip
Business modeling of software model | stakeholders
EA introduction notes
[three tier architecture]
Infected Tree(树形dp)
【日常訓練--騰訊精選50】557. 反轉字符串中的單詞 III
[noi simulation] juice tree (tree DP)
猜谜语啦(8)
696. 计数二进制子串
猜谜语啦(142)
Shell script
Dynamic dimensions required for input: input, but no shapes were provided. Automatically overriding
[牛客网刷题 Day4] JZ32 从上往下打印二叉树
Example 006: Fibonacci series
Guess riddles (2)
GEO数据库中搜索数据