核心处理模块

当原始图像不完美时,先用opencv 进行二值化/平滑/滤波

轮廓特征模块

轮廓面积等 最小外接矩形

形态学计算模块 腐蚀膨胀

降噪 叠加 其实还是基本运算

腐蚀(卷积变瘦) 膨胀(卷积变胖)

openCV - 图1

腐蚀膨胀的联合: 先腐蚀,再膨胀,则噪点消失

注意腐蚀膨胀针对是黑底白字图片,针对白色像素

openCV - 图2 先膨胀,再腐蚀,则黑色噪点消失,在膨胀时被白色盖住

以后主要是二值化/滤波等操作

参数恶心

识别物体:依靠轮廓

识别人: 依靠细节

openCV - 图3

opencv 提供了lbph 算法,我们只需要提供图片

openCV - 图4

openCV - 图5

深度学习最大的特点就是无需手动设法搞一堆算法来提取特征

看看lbph 的算法是如何提取图片特征的:

openCV - 图6

拍摄的差距: 表情,光照,角度

如何将一张图变为一行:

暴力: 灰度图的二维数组拉直,一行400列

openCV - 图7 无论是哪种分类,都要是相似的输入

保证样本的相似性

同一个人的多个图,样本拉直后数组差别很大,不科学

适合训练的样本: 直方图法

保留纹理特征

openCV - 图8用纹理特征构建模型

有了图谱,再使用直方图拿到真正的特征,用于训练