动手学AI(1)项目简介与项目环境搭建

该项目是暑假时和儿子一起为他学校秋季“校园科技节”准备的项目。不过,他因是高一新生,今年的“校园科技节”没有安排高一新生参加,现在把该项目的制作过程的全部资料公布出来,供有兴趣的朋友参考:

人工智能手写数字识别机项目简介

手写数字识别机是利用人工智能最基础的mnist(手写数字识别)项目,加上摄像头与arduino及数码管组成。手写数字识别机能识别摄像头拍摄到的手写数字,并在数码管上显示出识别结果。

使用方法:将arduino、摄像头用分别接到电脑的USB端口。运行pc机上主程序,将写有数字的白纸放在USB摄像头前方20厘米处,移动纸张,观察屏幕上的图像,使数字处于取景框内,程序自动运行神经网络模型,并把识别结果通过数码管显示出来。

项目创意:mnist是人工神经网络深度学习的入门级例子,从数据集的获取到神经网络的搭建与训练都十分简单,是个十分纯粹的软件项目。为了增加该例子的趣味性和互动性,我受到神经网络智能小车项目的启发,给电脑增加摄像头,用于获取图像,增加arduino驱动数码管,用于显示识别结果,增加了用户友好性。

制作过程:从一个Python零基础小白到制作出识别手写数字机,历经两个星期时间,分别学习python基础知识、神经网络、opencv及python的pyserial库与arduino驱动数码管。

制作感悟:人工智能近年来已成为热门话题,作为科幻作品中的热门题材,对于大众来说是一个神秘的技术。但经历两个星期的学习后,对人工智能中最重要的部分——深度学习,有了一个初步的了解,体会到了数学与计算机两个工具结合而产生的强大威力。

互联网上信息丰富,但良莠不齐。即是个消磨时光的方式,也是个学习知识的便捷渠道。

项目制作要应用到电脑、数学、物理等方面知识,是一个综合能力的提升与考验。

扩展应用:将该项目进行扩展,可以做成无人驾驶车以及人脸识别等多种应用。

参考资料:才云科技郑泽宇顾思宇的《TensorFlow实战Google深度学习框架》,林大贵的《TensorFlow+Keras深度学习人工智能实践应用》,乔.米尼奇诺 约瑟夫.豪斯的《OpenCV3计算机视觉Python语言实现》,Eric Matthes的《Python编程从入门到实践》,及众多网络文章。

项目环境搭建

项目需要搭建opencv的开发环境,现把整个安装过程整理如下。(环境为python3.6+win10+64位系统)

Python 是一个有条理的和强大的面向对象的程序设计语言,已经成为最受欢迎的程序设计语言之一,连Google都在大规模使用Python。有前辈说,写一个项目代码,C语言要写1000行代码,而Python可能只要20行。

由于Python语言的简洁性、易学、免费、开源、可移植、可扩展性等优点,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV,Python专用的科学计算扩展库就更多了,例如NumPy、matplotlib,它们分别为Python提供了快速数组处理、绘图功能。因此Python语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。

1.安装python3.6(目前可安装3.7)从www.python.org上下载python for windows,运行安装。

以管理员身份运行cmd,具体过程详见:

https://jingyan.baidu.com/album/3a2f7c2edee51226afd611f0.html?picindex=1

2.升级安装工具pip :

Python -m pip install --upgrade pip

3.安装tensorflow

pip install tensorflow

4.安装keras :

Pip install keras

5.安装 h5py和matplotlib,用于保存模型文件和图片显示

Pip install h5py

Pip install matplotlib

6.安装opencv 与串口通信库

pip install opencv-python

Pip install pyserial

7.安装arduino IDE,过程可参考网络帖子《Arduino入门教程--课前准备--Arduino驱动安装及1.0 IDE菜单介绍》https://www.cnblogs.com/gaosheng-221/p/6631383.html

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181023G008IS00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券