水面垃圾清理机器人的视觉算法研究

       卷积神经网络是一种分层的数据表示模型,通常由数据输入层、卷积层、池化层、 非线性激活函数、全连接层以及输出结果预测层等组成,其中卷积层、池化层和非线 性激活函数是卷积神经网络中的重要组成部分。此外,有些模型会增加其他的层(归一 化层等)以满足系统特定功能需求。卷积网络以各个单层为基础,按照一定的规律,一 层一层堆叠,卷积神经网络就可以逼近各种复杂函数的空间分布。

  1. 卷积层

滤波器(也称为卷 积核),滤波器的数量越多,卷积神经网络的深度越深。卷积 层的设计和参数设置,对于卷积神经网络的性能具有重大影响。

卷积核多大,输出就多大。

2.非线性激活函数

       设计卷积神经网络时,以激活函数作为卷积层下一步的运算,可以兼顾计算的 简单性和网络的灵活性。卷积层计算是所有前一层输入的线性组合,这里的激活函数 则是计算所有输入值与非线性激活函数的乘积,这样的安排能够降低网络的运算复杂 度,兼容非线性组合运算。

       要激活函数中包含充分的梯度信息,以便于能从输入的数据中 捕获更多的信息。

       常用的激活函数是 Sigmoid 函 数、ReLU(Rectified Linear Unit,ReLU)函数以SiLU(Sigmoid Linear Unit, SiLU) 函数等,这些函数有更好的光滑性,被广泛应用于卷积神经网络。

3.池化层

池化层的工作原理是定 义多个池化核进行池化运算,池化核的主要参数也包含池化核大小等。

最大池化突出局部区域中最重要的信息,而平均池化 更关注于局部区域的平均效果。

4.卷积神经网络的训练

卷积神经网络工作流程,可分为训练阶段和预测阶段两个阶段。卷积神经网络的 工作流程可分为训练阶段和预测阶段。以图像分类为例,在预测阶段,网络通过卷积 层、激活函数、池化层等操作对数据进行前向计算,从而获取不同的特征图,如相对 简单的纹理特征和更加丰富、抽象的语义信息,最后整合这些特征信息,并执行推理 以获取结果;在训练阶段,利用反向传播算法、损失函数、优化算法,使网络有效学 习图像相关特征及相应映射关系。网络的训练和预测阶段涉及不同的操作和方法,但 都是卷积神经网络的重要组成部分。

5.反向传播算法

误差反向传播算法(Backpropagation,BP)是训练人工神经网络最主要的方法。

6.损失函数

       常见的损失函数有均方误差损失函数、交叉熵损失函数和基于 IOU(Intersection over Union, IOU)的系列损失函数,网络中为更新损失函数(Loss Function)的相关参数, 需要进行偏导计算,通过计算损失函数得到损失值,该值将衡量预测值与真实值之间 的差距。

7.优化算法

       常见的优化算法有 SGD 算法[48]、Momentum 算法[49]以及 Nesterov 算法等,梯度下 降法是深度学习模型最常用的优化算法。

8.基于卷积神经网络的目标检测

目标检测是一种应用广泛的计算机视觉技术,能够对图片、视频中的目标进行分 类和定位,基于卷积神经网络的目标检测算法主要分为 Two-stage 和 One-stage 两种类 型。 Two-stage 算法会先生成一些候选框,再对每个候选框进行分类和定位优化。虽然 它们的准确率通常较高,但需要更多时间和计算资源。而 One-stage 算法则能在特征解码时,一并生成目标所属的种类和区域信息,在执行速度上更具优势,近年来已不断 优化,在检测精度比肩甚至超过了 Two-stage 算法。常见的 Two-stage 算法有 RCNN 系 列,如 R-CNN、Fast-RCNN、Faster-RCN等;常见的 One-stage算法有 YOLO系 列,如 YOLOv1~v8 和 YOLOX 等

9.基于卷积神经网络的图像分割

       采用卷积神经网络进行特征提取,使用反卷积层进行特征恢复,从而实现对图像深层语 义的理解和精确的像素级别分割。其中,三种常见的语义分割模型包括:FCN、UNet 和 DeepLab。

相关推荐

  1. 基于智能算法品牌视觉识别系统优化研究

    2024-05-09 08:48:09       29 阅读
  2. 计算机视觉研究方向

    2024-05-09 08:48:09       46 阅读
  3. GC垃圾回收算法

    2024-05-09 08:48:09       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-09 08:48:09       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-09 08:48:09       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-09 08:48:09       87 阅读
  4. Python语言-面向对象

    2024-05-09 08:48:09       96 阅读

热门阅读

  1. Mysql 数据库 开发规范

    2024-05-09 08:48:09       31 阅读
  2. docker安装etcd和etcd客户端

    2024-05-09 08:48:09       29 阅读
  3. 从零手写实现 tomcat-04-请求和响应的抽象

    2024-05-09 08:48:09       29 阅读
  4. 网站服务器出现404情况

    2024-05-09 08:48:09       35 阅读
  5. 【贪心算法】活动安排问题Python实现

    2024-05-09 08:48:09       30 阅读
  6. libhv http client vs cpr

    2024-05-09 08:48:09       24 阅读
  7. 【2】STM32·FreeRTOS·任务创建和删除

    2024-05-09 08:48:09       25 阅读
  8. 前端WebSocket

    2024-05-09 08:48:09       31 阅读
  9. web后端——netbeans ide +jsp+servlet开发学习总结

    2024-05-09 08:48:09       25 阅读