当前位置: 首页 > 知识库问答 >
问题:

在使用CNN时,我们能否明确指定要从图像中提取的特征

山翼
2023-03-14

昨天我学习了卷积神经网络,并使用Tensorflow完成了一些CNN的实现,所有的实现都只指定了过滤器的大小、数量和步长。但当我了解到过滤器时,它说每一层上的过滤器都会提取不同的特征,如边、角等。

我的问题是,我们能否明确指定过滤器,我们应该提取哪些特征,或者图像的哪个部分更重要等等

所有的解释都是说,我们将输入图像的一小部分进行卷积滑动。如果是这样的话,我们是否要获取图像的所有部分并在图像上进行卷积?

共有2个答案

辛龙野
2023-03-14

在这个汽车识别示例中,您可以看到一些早期的通道拾取汽车的引擎盖、车门和其他边界。很难真正指定网络正在提取哪些特征。如果您已经了解对网络很重要的功能,可以将其作为附加遮罩层或使用某种类型的权重矩阵输入。

夏锐藻
2023-03-14

我们是否可以明确指定过滤器,我们应该提取哪些特征,或者图像的哪个部分更重要等等

当然,这是可以做到的。但CNN的优势在于,他们可以自己学习最好的特性(或者至少是非常好的特性;在大多数情况下比我们能想到的更好)。

一个著名的例子是ImageNet数据集:

2012年,使用了第一个端到端学习的CNN。端到端意味着网络在一端获取原始数据作为输入,在另一端获取优化目标。

在CNNs之前,计算机视觉社区多年来一直使用手动设计的html" target="_blank">功能。在2012年AlexNet之后,没有人这样做(对于“典型的”计算机视觉,有些特殊应用仍然值得一试)。

所有的解释都是说,我们将输入图像的一小部分进行卷积滑动。如果是这样的话,我们是否要获取图像的所有部分并在图像上进行卷积?

它总是用一个小过滤器卷积的完整图像。卷积运算是局部的,这意味着您可以并行计算它的大部分,因为左上角的卷积结果不依赖于左下角的卷积。

 类似资料:
  • 我想使用SVM测试我的卷积神经网络(CNN)架构的每个卷积层的性能。我正在使用MatConvNet Matlab工具箱。 图层如下:Conv1 Relu1 Pool1(3x3,32个功能)- 训练后,我移除了损失层 我可以提取这样的特征: 类似地,我又删除了2层,并从Conv4中提取了256个特征。但当我转到Conv3时,输出特性是7x7x128。我想知道如何使用这些特性I)生成单个向量ii)深度

  • 我在图像中有一个边框(矩形的坐标),我想在该坐标内提取文本。如何使用PyteSeract提取该坐标范围内的文本? 我尝试使用opencv将图像部分复制到其他numpyarray,比如 并尝试了pytesseract。图像到字符串()。但准确度很差。但当我试着把原始图像变成pytesseract时。它完美地提取了所有的东西。。 是否有任何功能可以使用pytesseract提取图像的特定部分? 这个图

  • 问题内容: 如何显示指定目录中的图像?就像我要显示目录中的所有png图像一样,我的目录是media / images / iconized。 我试图环顾四周,但似乎它们都不符合我的实际需求。 但是,这是我的尝试。 希望这里有人可以帮忙。我对任何想法,建议和建议持开放态度,谢谢。 问题答案: 您也可以使用以下方法:

  • 我一直在开发一个Android RSS阅读器。我想从RSS提要中获取图像,并将它们连同RSS标题一起列出。我已经解析并从“title”和“description”标签中获取数据。有人能告诉我如何从“description”的“src”属性下面获取图像URL吗?

  • 有三种典型的情况适合使用智能指针: 资源所有权的共享 要编写异常安全的代码时 避免常见的错误,如资源泄漏 共享所有权是指两个或多个对象 需要同时使用第三个对象的情况。这第三个对象应该如何(或者说何时)被释放?为了确保释放的时机是正确的,每个使用这个共享资源的对象必须互相知道对方, 才能准确掌握资源的释放时间。从设计或维护的观点来看,这种耦合是不可行的。更好的方法是让这些资源所有者将资源的生存期管理

  • 问题内容: java.lang.ClassNotFoundException:com.hazelcast.core.Hazelcast 不过,这有点奇怪,因为我在运行Java时已将hazelcast-1.8.5.jar添加到类路径中: 所以我不明白为什么当hazelcast jar确实存在并且在命令行中指定时,为什么会出现ClassNotFoundException。有什么想法吗? 顺便说一句,榛