当前位置: 首页 > ops >正文

深度学习与图像处理案例 │ 基于深度学习的自动驾驶小车

 

采用深度学习回归模型,实现端到端的小车自动驾驶控制,提升小车自动驾驶平滑性。

01、卷积神经网络基础

卷积神经网络(Convolution Neural Network,CNN)是一类特殊的人工神经网络,是深度学习中最重要的一个分支。卷积神经网络在很多领域都表现优异,精度比传统学习算法高很多。特别是在图像处理领域,卷积神经网络是解决图像分类、目标检测和语义分割的主流模型。本节内容会进行更多工程上的讲解,不会涉及太多理论公式。

PaddlePaddle将深度神经网络模型按照层(Layer)的概念呈现。在本书接下来的内容中,会见到各种不同类型的层。那么怎么理解神经网络中层这个概念呢?

在投资预测案例中使用了直线方程y=ax+b来拟合数据,这个模型非常简单,拟合精度有限。如果希望强化这个模型,让它能够与观测数据更契合,这时候可以在直线方程基础上继续提高x的阶数,如下所示:

图片

很明显,提高阶数后的y2模型要比y1模型更复杂,属于二次非线性函数,具备更强的数据拟合能力。这里的y2是在y1的基础上乘上x再加上常数c完成的。因此,可以将y1和y2看作两层,且y2是在y1的基础上做了某些特定操作完成的,这就是最简单的层的概念。如果继续按照上述层操作,依次得到y3、y4等,那么越往后阶数越高,模型越复杂。

神经网络与高阶函数一样,理论上随着层数的增加函数的表达能力越强。卷积神经网络是通过一层层具备不同功能的操作堆叠出来的,一般由卷积层、激活函数层、池化层、线性变换层组成。下面将介绍各层的基本原理和计算规则。

1. 卷积层

卷积层的作用就是提取图像卷积特征。典型二维卷积操作如图2.31所示。

■ 图2.31典型二维卷积操作示意图

 

 

在图2.31所示中,输入图像形状是32×32×3,其中宽和高均为32像素,通道数为3,卷积层是一个5×5×3的滤波器,通过这样一个滤波器与输入图像进行卷积(卷积操作时假设padding=0),可以得到一个28×28×1大小的特征图。

一般情况会使用多层卷积来提取更深层次的特征。随着卷积层的加深,提取到的特征越来越抽象,对图像的理解能力也越来越强,如图2.32所示。在高层特征之后一般可以级联分类器对最终提取的高层特征进行分类,得到物体的最终类别。

■ 图2.32基于多层卷积的特征提取

 

那么卷积层是怎么计算的呢?

其实卷积层计算原理与参考书1.3节中介绍的图像卷积类似,只不过图像卷积操作一般1次只使用1个卷积,而深度学习中的卷积层可以1次使用多个卷积进行操作。例如对于形状为32×32×3的图像,如果使用1个卷积滤波器(形状为5×5×3)对其进行卷积可以得到28×28×1的特征图像; 如果使用n个同样大小的卷积滤波器,那么就会产生n个28×28×1的特征图,这些特征图合并就组成了28×28×n大小的特征图。可以看到,通过这样的卷积层操作,将原本只有32×32×3大小的输入图像变成了28×28×n大小。

PaddlePaddle提供了封装好的二维卷积层函数: Conv2D(),完整定义如下: 

图片

各参数说明如下: 

上述参数比较多,

http://www.xdnf.cn/news/15043.html

相关文章:

  • 降低新品试错成本,助力可持续增长
  • ubuntu server远程连接
  • AT9850B北斗双频导航定位芯片简介
  • 9N70-ASEMI太阳能逆变器专用9N70
  • 搭建自动化工作流:探寻解放双手的有效方案(1)
  • 测试开发和后端开发到底怎么选?
  • Leetcode刷题营第十九题:对链表进行插入排序
  • (LeetCode 每日一题) 3440. 重新安排会议得到最多空余时间 II (贪心)
  • 智能体的记忆系统:短期记忆、长期记忆与知识图谱
  • EFK/ELK9.0.3 windows搭建
  • ASP.NET Core 8 轻松配置Serilog日志
  • STM32-定时器输入捕获
  • 通用游戏前端架构设计思考
  • 20-C#构造函数--虚方法
  • 小程序软装: 组件库开发
  • 爬虫-正则表达式
  • 汽车功能安全-软件单元验证 (Software Unit Verification)【用例导出方法、输出物】8
  • skywalking-agent-docker镜像
  • C++11 std::move与std::move_backward深度解析
  • 数据分析框架和方法
  • 华为静态路由配置
  • mysql 可用性的保障机制:主讲主从复制机制
  • sqlplus表结构查询
  • CTFHub————Web前置技能[HTTP协议(302跳转、Cookie)]
  • 【数据分析】多数据集网络分析:探索健康与退休研究中的变量关系
  • IntelliJ IDEA 2025.1.3创建不了java8的项目
  • 洛谷 P1104 生日---排序
  • VS2022 C++ EasyX库 扫雷游戏项目开发:打造经典游戏的详细之旅
  • JavaScript基础篇——第五章 对象(最终篇)
  • whitt算法之特征向量的尺度