智能硬件与机器视觉:基于树莓派、Python和OpenCV

智能硬件与机器视觉:基于树莓派、Python和OpenCV

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

骨灰级树莓派极客撰写,低成本实现图像分析、OCR、人脸识别、视频监控功能,提供案例代码,可移植ARM开发板。

内容简介

本书围绕“低成本玩转树莓派”这个主题,讲解了如何利用树莓派、OpenCV和Python等软硬件搭建一个低成本的智能硬件平台,并在其上实现图像分析、文字识别、人脸识别与追踪、视频监控等机器视觉功能。

全书一共11章:

第1~4章首先讲解了机器视觉在智能硬件领域的应用场景以及智能硬件上4种常见的机器视觉技术方案;然后讲解了树莓派和OpenCV的安装、配置以及其他准备工作;最后通过一些简单的案例和代码教读者使用OpenCV。

第5~11章是本书的核心内容,通过几个具体的综合案例讲解了如何使用树莓派低成本玩转如下机器视觉场景:拍摄照片和视频、处理相机的原始数据、道路和商场的人流统计、道路信息的文字识别、人脸识别与追踪、中央AI视频监控等。

以上案例循序渐进,环环相扣,所有代码均可在树莓派上运行,并可轻松移植到任何ARM开发板上。

作者简介

作者陈佳林,技术极客,“骨灰级”树莓派爱好者,在机器人、智能硬件、软硬件协同开发等方面有较深入的研究。著有《树莓派创客:手把手教你搭建机器人》《树莓派创客:手把手教你玩转人工智能》。

章节目录

版权信息

前言

为什么要写这本书

内容提要

读者对象

更新和勘误

第1章 智能硬件与机器视觉

1.1 机器视觉在智能硬件领域的应用

1.1.1 机器视觉在智慧城市的应用

1.1.2 机器视觉与5G的协同效应

1.2 智能硬件上的机器视觉技术方案选型

1.2.1 方案A:树莓派

1.2.2 方案B:BeagleBoard

1.2.3 方案C:NVIDIA Jetson

1.2.4 方案D:Google Coral Dev Board+Edge TPU

1.3 本章小结

第2章 树莓派软硬件准备

2.1 刷写系统

2.2 硬件连接

2.3 Linux系统的基本操作

2.3.1 Linux常用命令

2.3.2 Vim编辑器的使用

2.4 远程连接树莓派

2.4.1 使用SSH连接树莓派

2.4.2 使用VNC连接树莓派

2.5 使用相机模块拍摄一张照片

2.6 本章小结

第3章 安装OpenCV

3.1 使用pip安装OpenCV

3.1.1 在Ubuntu上使用pip安装OpenCV

3.1.2 在macOS上使用pip安装OpenCV

3.1.3 在树莓派上使用pip安装OpenCV

3.1.4 注意事项

3.2 树莓派源码编译安装OpenCV 4

3.2.1 扩展TF卡并安装依赖

3.2.2 下载OpenCV 4

3.2.3 为OpenCV 4搭建基于Python 3的虚拟环境

3.2.4 构建和编译OpenCV 4

3.2.5 测试OpenCV 4

3.2.6 可能遇到的问题

3.3 本章小结

第4章 通过案例手把手入门OpenCV

4.1 开始前的准备

4.1.1 环境准备

4.1.2 项目代码准备

4.2 OpenCV图像简单处理

4.2.1 加载和显示图像

4.2.2 访问单个像素

4.2.3 数组切片和裁剪

4.2.4 调整图像大小

4.2.5 旋转图像

4.2.6 平滑图像

4.2.7 在图像上绘图

4.2.8 运行第一个OpenCV教程的Python脚本

4.3 OpenCV图像对象计数

4.3.1 目标对象计数

4.3.2 将图像转换为灰阶

4.3.3 边缘检测

4.3.4 阈值处理

4.3.5 检测和绘制轮廓

4.3.6 腐蚀和膨胀

4.3.7 蒙版和按位操作

4.3.8 运行第二个OpenCV教程的Python脚本

4.4 本章小结

第5章 使用Python拍摄照片、视频

5.1 安装picamera环境

5.1.1 安装Raspbian系统

5.1.2 安装其他系统

5.1.3 升级相机固件

5.1.4 安装树莓派摄像头模组

5.1.5 控制V1版的LED灯

5.2 使用摄像头拍摄照片

5.2.1 捕获照片并存为文件

5.2.2 捕获照片并存为流

5.2.3 捕获照片并存为PIL图像

5.2.4 捕获调整了大小的图像

5.2.5 快拍和连拍的技巧

5.2.6 捕获延时摄影序列

5.2.7 弱光下拍照

5.2.8 网络直播

5.3 使用摄像头拍摄视频

5.3.1 录制视频文件

5.3.2 录制视频流

5.3.3 录制拆分为多个文件

5.3.4 录制循环视频流

5.3.5 录制网络视频流

5.3.6 视频预览叠加图像加水印

5.3.7 视频输出叠加文本、时间戳

5.4 本章小结

第6章 使用Python处理相机原始数据

6.1 捕获并直接编码

6.1.1 捕获并编码为numpy数组

6.1.2 捕获并编码为opencv对象

6.1.3 捕获未编码图像(YUV)

6.1.4 捕获编码图像(RGB)

6.1.5 自定义编码器

6.2 多种捕获方法

6.2.1 录像时截屏

6.2.2 多种分辨率下录制

6.2.3 特殊文件输出

6.2.4 Bayer-Raw数据获取

6.3 树莓派相机的实际应用

6.3.1 自定义输出:运动检测相机的代码实现

6.3.2 循环视频流切割:行车记录仪碰撞预警功能

6.3.3 快速捕获和处理:连拍算法实现

6.3.4 录制未经编码的视频:颜色检测

6.3.5 快速捕获和流传输:网络流直播

6.3.6 网络流媒体:结合网页技术直播

6.3.7 录制运动矢量数据:检测视频中的手势

6.4 常见错误集锦

6.5 本章小结

第7章 道路、商场人流统计

7.1 原理解析

7.1.1 目标检测与目标追踪

7.1.2 形心追踪算法原理

7.1.3 人群计数器原理

7.2 软件环境准备

7.3 使用Python实现人群计数器

7.3.1 目录结构

7.3.2 形心追踪器类CentroidTracker的实现

7.3.3 追踪目标类TrackableObject的实现

7.3.4 人群计数器的实现

7.3.5 树莓派人群计数器测试

7.4 本章小结

第8章 道路信息文字识别

8.1 EAST深度学习模型

8.1.1 EAST模型简介

8.1.2 相关软件包的安装

8.1.3 项目工程结构

8.2 检测图片中的文字

8.2.1 代码编写和解读

8.2.2 效果测试

8.3 检测视频中的文字

8.3.1 代码编写和解读

8.3.2 效果测试

8.4 对文字内容进行识别

8.4.1 Tesseract介绍和安装

8.4.2 使用Tesseract实现文字识别的原理

8.4.3 代码编写和解读

8.4.4 效果测试

8.5 本章小结

第9章 简单人脸追踪

9.1 核心原理和效果简介

9.2 环境准备和代码编写

9.2.1 使用Python实现形心追踪算法

9.2.2 人脸追踪的实现

9.3 测试人脸跟踪效果

9.3.1 测试效果

9.3.2 缺陷与不足

9.4 本章小结

第10章 人脸追踪安防摄像头

10.1 总体设计思路

10.1.1 硬件组装清单

10.1.2 PID控制反馈算法

10.1.3 人脸识别算法:基于Haar特征的级联分类器

10.2 软件环境准备

10.2.1 将smbus安装在py3cv3环境中

10.2.2 打开树莓派的Camera接口并安装驱动

10.2.3 安装gpiozero

10.2.4 安装imutils

10.3 编写代码

10.3.1 项目结构

10.3.2 实时调节反馈机制:PID Controller

10.3.3 在视频中检测到人脸

10.3.4 使用GPIOZERO进行舵机控制

10.4 使用PID调节二自由度云台

10.4.1 PID参数调试

10.4.2 运行二自由度人脸追踪摄像头

10.5 本章小结

第11章 多路摄像头中央AI监控

11.1 网络传输OpenCV帧

11.1.1 实现目标和方法

11.1.2 消息传递的概念

11.1.3 项目实现流程

11.2 ImageZMQ消息传递系统

11.2.1 什么是ZMQ

11.2.2 基于ZMQ的图片消息传递库:ImageZMQ

11.2.3 ImageZMQ依赖的软件包

11.2.4 项目整体介绍

11.3 多路树莓派摄像头配置

11.3.1 配置树莓派客户端的主机名

11.3.2 树莓派发送OpenCV视频流

11.3.3 将代码放到树莓派目录中

11.4 配置中央监控室服务器端和Caffe框架

11.4.1 安装Caffe框架

11.4.2 实现OpenCV视频监控接收器

11.4.3 使用MobileNet SSD对帧进行推理

11.5 使用OpenCV实现视频流网络传输

11.6 本章小结

智能硬件与机器视觉:基于树莓派、Python和OpenCV是2020年由机械工业出版社华章分社出版,作者陈佳林。

得书感谢您对《智能硬件与机器视觉:基于树莓派、Python和OpenCV》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Python计算机视觉与深度学习实战 电子书
一本书入门计算机视觉,将深度学习理论融入视觉识别案例,搭建理论与实践的桥梁。
基于单目视觉的智能汽车行人检测技术研究 电子书
基于单目视觉的行人检测是城市交通环境下智能汽车辅助导航技术中的一项关键技术,也是目前计算机应用领域的研究热点之一。本书以作者在智能汽车领域的研究成果为基础,重点讨论了基于树形Adaboost算法和Haar-like特征的行人候选区域分割算法;基于mean-shift方法的多尺度检测融合算法;基于改进Shapelet特征的行人识别算法;基于子结构的部位集成检测器设计方法,该算法主要针对复杂场景下行人
OpenCV图像处理入门与实践 电子书
基于OpenCV 4与Python,循序渐进介绍OpenCV从入门到实践的内容。
Python高手修炼之道:数据处理与机器学习实战 电子书
适读人群 :1.没有编程知识的新手 不同于一般的基础语法讲解教程,本书并未将Python 开发限定于某个集成开发工具(IDE)中,而是采用交互式编程的方式来强化读者对语言特性的理解,帮助新手读者真正理解Python 语言和Python 编程。2.从未接触过Python 语言,但了解一点编程知识的初学者 本书通过对基础知识高度的提炼和概括,以避免初学者陷入低级且冗长的细节知识点而心生懈怠;同时,本书为初学者规划了从初级到高级的编程技能提升路线图。3.具有一定基础的Python 程序员 本书可以作为案头工具书来使用。本书从基础语法、基本技能讲起,涵盖了科学计算、数据处理、机器学习等领域,示例代码涉及30 余个模块的使用。 构建从Python入门到数据分析到机器学习的路线图,入门有章可循; 1.讲解独到,常见盲点趣解析 作者基于多年的经验积累,善于总结概括初学Python过程中的误区。 2.内容全面,常用工具全涵盖 书中介绍的Python工具包覆盖Numpy、Matplotlib、Pandas、SciPy、Scikit-Learn,方便读者拓展实用技能、掌握工作利器。 3.拓展训练,重点知识有强化 语感训练100题、Python内置函数(类)手册、从新手到高手的100个模块,强化知识点的掌握。 4.代码完整,随时动手可复现 本书提供了完整、可验证的代码,方便读者动手练习并强化理解。
跟着迪哥学:Python数据分析与机器学习实战 电子书
本书适合对人工智能、机器学习、数据分析等方向感兴趣的初学者和爱好者。