手写数字识别
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
手写数字识别
系统原理
1颜色处理2特征提取3计算欧式距离
1颜色处理
灰度化
voidcv::cvtColor
(
InputArray src,
OutputArray dst,
int code,
int dstCn=0
)
●Src–原始输入图像。可以是8位无符号图像,16位无符号图像,或者单精度浮点型等。
●Dst–输出图像,与原始输入图像具有同样的类型和深度。
●Code–颜色空间转换码。/master/
●dstCn–目标图像的通道数。如果参数为默认的0,则通道数自动通过原始输入图像和Code得到。
1颜色处理
二值化
double cv::threshold
(
InputArray src,
OutputArray dst,
double thresh,
double maxval,
int type
)
●src–要进行阈值分割的图像,必须是单通道的,8位或32的浮点型。
●dst–阈值分割结果图像,与原始图像具有相同的大小和类型。
●thresh–要设定的阈值。
●maxval–当type参数(该函数最有一个参数)为THRESH_BINARY或者THRESH_BINARY_INV类型时,
需要设定的最大值。
●type–阈值分割的类型。
028100 088450 0125100 8231000 172470
028100
088450
0125100
8231000
172470
[0,28,10,0,0,88,0,45,0,125,10,0,8,23,100,0,1,72,47,0]
028100
088450
0125100
8231000
172470
[0,28,10,0,0,88,0,45,0,125,10,0,8,23,100,0,1,72,47,0]
[0, 45,0,125,10,0,8,23,100,0,1,23,11,0,0,88,0,72,47,0] [0,4,0,12,10,0,8,23,26,10,0,0,88,0, 100,0,1,72,47,0] [0,23,100,0,1,72,47,0,28,10,0,0,88,0,45,0,125,10,0,8] [0,28,10,0,0,88,0,45,0,125,10,0,8,23,100,0,1,72,47,5] [0,12,140,50,7,8,0,8,23,10,0,1,,45,0,125,10,0,72,6,3] [0,28,10,0,0,7,0,45,0,25,10,0,8,23,100,0,1,72,5,9] [0,128,10,0,0,8,0,45,0,15,10,0,8,23,100,0,1,72,1,7] [70,8,10,0,0,88,0,45,0,125,10,0,8,23,100,0,1,2,4,3] [0,218,10,0,11,8,80,45,0,12,10,0,8,23,10,0,1,7,7,4] [0,2,10,0,0,88,0,45,0,25,10,0,8,23,100,0,1,72,47,0]
L 2A,B = i=1n a i
−b i 212
待识别特征
[3,6,9,12][8,1,2,98]
[3,7,8,13]待识别
特征
[3,6,9,12][8,1,2,98]
[3,7,8,13]
待识别
特征
距离1=(3−3)2+(7−6)2+(8−9)2+(13−12)2=3
[3,6,9,12][8,1,2,98]
[3,7,8,13]
待识别
特征
距离1=(3−3)2+(7−6)2+(8−9)2+(13−12)2=3
距离2=(3−8)2+(7−1)2+(8−2)2+(13−98)2=7322
[3,6,9,12][8,1,2,98]
[3,7,8,13]
待识别
特征
距离1=(3−3)2+(7−6)2+(8−9)2+(13−12)2=3
距离2=(3−8)2+(7−1)2+(8−2)2+(13−98)2=7322结果
说明
本系统的配套视频教程请访问网易云“OpenCV在Qt creator内实现手写数字识别”
/course/introduction/1002754019.htm#/courseDetail