python - 使用 Keras 实现图像金字塔
问题描述
为了在我的 CNN 模型上获得尺度不变性(或检测任何尺度的对象),我想实现Image Pyramids。正如文章所解释的,在创建图像金字塔时,图像会经过反复的平滑和二次采样。
我正在 Keras 中实现一个 CNN。Keras 有没有办法实现图像金字塔?我读了一篇说使用AveragePooling2D来实现金字塔效果的 SO 帖子。
这甚至是正确的吗?层如何AveragePooling2D
产生金字塔效应?
解决方案
实现您目标的一种 CNN 架构是 U-Net,最初由本文介绍。
它使用一系列卷积层和池化层来创建金字塔。请注意,它不是输入图像的图像金字塔,但其想法是学习在不同尺度上有用的东西,而不是直接喂给金字塔。
现在,想想它是如何AveragePooling2D
工作的。您选择原始图像的一个补丁,将其替换为平均值,然后移动到下一个补丁。这正是您在生成图像金字塔时所描述的:通过平均实现平滑,用一个像素替换补丁是下采样。
推荐阅读
- javascript - 我不明白为什么控制台显示我未定义
- c# - C# Selenium Webdriver-如何隐藏 openfiledialog?
- reactjs - 与孙组件共享 React 组件道具
- python - 无法双击打开python文件
- selenium - 两个浏览器在硒中自动打开
- ios - 如何在 Objective-C 项目中遵循 Swift 库中的协议
- audio - C中的音频录制和播放:音频增益问题
- r - 是否可以在 GGplot 的 polyfreq 中对方面进行子集化?
- reactjs - setState 到 store 组件中
- php - 我如何使用 php 连接 mssql?