• 【计算机视觉40例】案例18:SVM手写数字识别


    导读】本文是专栏《计算机视觉40例简介》的第18个案例《SVM手写数字识别》。该专栏简要介绍李立宗主编《计算机视觉40例——从入门到深度学习(OpenCV-Python)》一书的40个案例。

    目前,该书已经在电子工业出版社出版,大家可以在京东、淘宝、当当等平台购买。

    大家可以在公众号“计算机视觉之光”回复关键字【案例18】获取本文案例的源代码及使用的测试图片等资料。

    针对本书40个案例的每一个案例,分别录制了介绍视频。如果嫌看文字版麻烦,可以关注公众号“计算机视觉之光”直接观看视频介绍版。

    本文简要介绍了本案例的一些基础知识,更详细的理论介绍、代码实现等内容请参考《计算机视觉40例简介》第18章《SVM手写数字识别》以获取更详细信息。

    SVM数字识别的基本流程如图1所示,主要包含以下流程:

    1. Step1:预处理。该过程在读入图像后,通过对图像进行色彩转换(彩色变灰度)、大小调整(所有图像统一为20×20像素大小),将所有的样本图像(训练图像和测试图像)处理为等大小的灰度图像形式。
    2. Step2:倾斜校正。将倾斜的数字变为正向的数字。
    3. Step3:hog特征提取。提取图像的方向梯度直方图(Histogram of Oriented Gradient, HOG)特征。此时,每个数字得到64个特征值。
    4. Step1-step3上述步骤step1至step3,通过循环的方式读取文件夹内的每一个图像文件,得到图中“所有样本图像HOG值”。
    5. Step4:数据集拆分。将全部样本集划分为训练集、测试集。
    6. Step5:塑形。将特征值处理为1*64形式。
    7. Step6:打标签。为所有数据样本加上对应的标签。
    8. Step7:SVM。构造SVM分类器,识别数字。

     

    图1  基本流程

    在《计算机视觉40例——从入门到深度学习(OpenCV-Python)》一书中,从算法原理、实现流程等角度系统深入地介绍了该案例的理论基础和实现过程,并对具体的代码实现进行了细致的介绍与解释。欢迎大家阅读第18章《SVM手写数字识别》获取详细内容。

    《计算机视觉40例——从入门到深度学习(OpenCV-Python)》在介绍Python基础、OpenCV基础、计算机视觉理论基础、深度学习理论的基础上,介绍了计算机视觉领域内具有代表性的40个典型案例。这些案例中,既有传统的案例(数字识别、答题卡识别、物体计数、缺陷检测、手势识别、隐身术、以图搜图、车牌识别、图像加密、指纹识别等),也有深度学习案例(图像分类、风格迁移、姿势识别、实例分割等),还有人脸识别方面的案例(表情识别、驾驶员疲劳监测、识别性别与年龄等)。

     

  • 相关阅读:
    香港服务器选纯国际线路上网稳定吗?
    【面试干货】&与&&的区别:位运算符与逻辑运算符的深入探讨
    使用canvas制作一个无人机旋转特效
    jdk中bin目录详解
    (附源码)mysql音乐播放器小程序 毕业设计 170900
    岩藻多糖-聚乙二醇-过氧化氢酶,Catalase-PEG-Fucoidan,过氧化氢酶-PEG-岩藻多糖
    设计模式 — — 前端
    Spring | Bean自动装配详解
    知识库系统都有哪些?知识库系统功能和介绍
    代码随想录笔记_动态规划_122买卖股票的最佳时机II
  • 原文地址:https://blog.csdn.net/superdont/article/details/126244934