第11章 图像处理中的深度学习——目标检测等
在本章中,我们将继续讨论深度学习在图像处理方面的最新进展,对几个问题作特别处理,并尝试使用具有深度卷积神经网络的深度学习来解决这些问题。
首先我们将研究目标检测问题,了解所涉及的基本概念;然后研究如何编写代码以解决目标提案(object proposal)问题,以及如何用Keras中的“你只需瞄一眼”(You Only Look Once,YOLO)v2预训练深度神经网络来解决问题。读者将获得有助于训练YOLO网络的资源。
接下来我们将探究迁移学习和使用DeepLab
库解决深度分割问题。读者将学习指定在训练深度学习模型时要训练的层,并通过仅学习VGG-16网络的全连接层的权重来演示自定义图像分类问题。
读者可能会惊讶于深度学习是如何在艺术作品生成中应用的。那就是使用深度风格迁移模型,即可以使用其中一幅图像的内容和另一幅图像的风格来获得最终图像。
本章主要包括以下内容:
- 检测目标的全卷积模型——YOLO v2;
- 利用DeepLab v3+的深度语义分割;
- 迁移学习——什么是迁移学习以及什么时候使用迁移学习;
- 通过使用预训练Torch模型的cv2实现神经风格迁移。
11.1 YOLO v2
YOLO是一种非常流行的、十分传统的图像检测算法。与其他算法相比,该算法具有很高的准确率,并且可以实时运行。顾名思义,该算法只查看图像一次。这意味着该算法只需要一个正向传播遍历,就可以做出准确的预测。
在本节中,我们使用全卷积网络(Fully Convolutional Network,FCN)深度学习模型来检测图像中的目标。已知一幅包含一些目标(如动物、汽车等)的图像,目的是使用一个预训练的YOLO模型(带有边界框)来检测这些图像中的目标。
Get Python图像处理实战 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.