介绍
在计算机视觉中,我们有一个卷积神经网络,它非常适用于计算机视觉任务,例如图像分类、对象检测、图像分割等等。
图像分类是当今时代最需要的技术之一,它被用于医疗保健、商业等各个领域,因此,了解并制作最先进的计算机视觉模型是AI的一个必须的领域。
在本文中,我们将学习涵盖CNN 的基础知识和高级概念,然后我们将构建一个模型,使用 Tensorflow 将图像分类为猫或狗,然后我们将学习高级计算机视觉,其中将涵盖迁移学习以及我们将使用**卷积神经网络 (CNN)**构建多图像分类器。
卷积神经网络
卷积神经网络 (CNN)是一种用于处理图像的神经网络,这种类型的神经网络从图像中获取输入并从图像中提取特征,并提供可学习的参数以有效地进行分类、检测和更多任务。
我们使用称为“过滤器”的东西从图像中提取特征,我们使用不同的过滤器从图像中提取不同的特征。
让我们举个例子,你正在构建一个分类模型来检测图像是猫还是非猫。因此,我们有不同的过滤器用于从图像中提取不同的特征,例如在这种情况下,一个过滤器可以学习检测猫的眼睛,另一个可以学习检测耳朵等。
我们如何使用这些过滤器提取信息?
我们使用过滤器和卷积操作来卷积我们的图像,让我们通过一些可视化来详细了解。
我们采用图像(5 x 5),这里我们有灰度图像,然后采用可学习的过滤器(3 x3),接着进行卷积操作。
步骤1: 做元素乘积,然后把它加起来,然后填充第一个单元格。[ 4 * 0 + 1 * 2 + 1 * 3 + 0 * 0 + 1 * 1 + 2 * 1 + 3 * 1 + 2 * 0 + 5 * 1 = 16 ]
然后滑动 1 倍,再次做同样的事情,这就是所谓的卷积操作,只需做元素乘积并将其求和。
可以查看 GIF 格式的可视化。
你可能会问一个问题,我们如何处理 RGB 比例或彩色图像,你必须这样做:
1) 步幅卷积
在上面的例子中,我们用因子 1 滑过我们的图像,所以为了更快地计算图像,所以在下面的例子中,我们用因子 2 滑过图像。
2) 填充
在卷积运算中,我们经常会丢失一些信息,因此为了保留信息,我们用零填充图像,然后开始对图像进行卷积。
3) 池化层
为了在保留信息的同时对图像进行下采样,我们使用池化层,我们有两种类型的池化层,即最大池化和平均池化。