Pooling与马赛克的秘密
说到Pooling,相信学习过CNN的朋友们都不会感到陌生。Pooling在中文当中的意思是“池化”,在神经网络当中非常常见,通常用的比较多的一种是Max Pooling,具体操作如下图:

结合图像理解,相信你也会大概明白其中的本意。不过Pooling并不是只可以选取2x2的窗口大小,即便是3x3,5x5等等没问题,步长(Stride)也是一个道理。除了在神经网络方面,Pooling为图片打马赛克也是可以取得不错的效果,结合几个例子看看。

我们可以用Max Pooling先看看效果如何:

Min Pooling和Average Pooling的操作也差不多,只不过把对应的操作函数变了而已。
Min Pooling:

小动物的皮肤颜色都换了,再看看Average Pooling:

综上来看,Average Pooling似乎更加逼真一些,不过换一张图片可能效果就不一样了。
以下是Pooling操作的代码:
import cv2
import numpy as np
def average_pooling(img, G=5):
out = img.copy()
H, W, C = img.shape
Nh = H // G
Nw = W // G
for y in range(Nh):
for x in range(Nw):
for c in range(C):
out[G*y:G*(y+1), G*x:G*(x+1), c] = np.mean(out[G*y:G*(y+1), G*x:G*(x+1), c]).astype(np.int64)
return out
由于是多颜色通道的图片,所以记得别漏了这个参数。
Pooling与马赛克的秘密的更多相关文章
- SPP(Spatial Pyramid Pooling)详解
一直对Fast RCNN中ROI Pooling层不解,不同大小的窗口输入怎么样才能得到同样大小的窗口输出呢,今天看到一篇博文讲得挺好的,摘录一下,方便查找. Introduction 在一般的CNN ...
- TypeScript: Angular 2 的秘密武器(译)
本文整理自Dan Wahlin在ng-conf上的talk.原视频地址: https://www.youtube.com/watch?v=e3djIqAGqZo 开场白 开场白主要分为三部分: 感谢了 ...
- [C#] string 与 String,大 S 与小 S 之间没有什么不可言说的秘密
string 与 String,大 S 与小 S 之间没有什么不可言说的秘密 目录 小写 string 与大写 String 声明与初始化 string string 的不可变性 正则 string ...
- 网站的SEO以及它和站长工具的之间秘密
博客迁移没有注意 URL 地址的变化,导致百度和 google 这两只爬虫引擎短时间内找不到路.近段时间研究了下国内最大搜索引擎百度和国际最大搜索引擎google的站长工具,说下感受. 百度的站长工具 ...
- 《WePayUI组件设计的秘密》——2016年第一届前端体验大会分享
本文是博主参加第一届前端体验大会 | 物勒工名做的分享<WePayUI组件设计的秘密>,内容主要分为2个部分: 一.浅析UI库/框架的未来 讨论的UI库或者框架,主要包含展示和交互的css ...
- 如何理解 卷积 和pooling
转自:http://blog.csdn.net/malefactor/article/details/51078135 CNN是目前自然语言处理中和RNN并驾齐驱的两种最常见的深度学习模型.图1展示了 ...
- [从产品角度学EXCEL 03]-单元格的秘密
这是<从产品角度学EXCEL>系列——单元格的秘密. 前言请看: 0 为什么要关注EXCEL的本质 1 EXCEL是怎样运作的 2 EXCEL里的树形结构 或者你可以去微信公众号@尾巴说数 ...
- 基于HTML5 Canvas实现的图片马赛克模糊特效
效果请点击下面网址: http://hovertree.com/texiao/html5/1.htm 一.开门见山受美国肖像画家Chuck Close的启发,此脚本通过使用HTML5 canvas元素 ...
- 2016第16本:TED演讲的秘密
花0.01元抢购了<得到APP>中的<成甲说书:TED演讲的秘密>,不到30分钟的音频,感觉全是干货,基本不用看原书了.如果在以后的演讲中随便应用几条都可以让演讲水平提升一大截 ...
- javascript马赛克遮罩图片切换效果:XMosaic.js(转)
新鲜出炉的javascript图片切换特效,实现的是马赛克遮罩切换.在flash里,好实现遮罩动画很简单,不过JS实现起来就有些困难了. XMosaic.js,与XScroll.js和XScroll2 ...
随机推荐
- Django: Invalid block tag on line 5: 'static', expected 'endblock'. Did you forget to register or load this tag?
错误释义:在第5行中无效的块标签:'static',期望的'endblock'.你忘记登记或装载这个标签了吗? 错误原因:没有引入static文件 {% extends 'base.html' %} ...
- 【转自知乎】NLP算法面试必备!史上最全!PTMs:NLP预训练模型的全面总结
NLP算法面试必备!史上最全!PTMs:NLP预训练模型的全面总结 预训练模型(Pre-trained Models,PTMs)的出现将NLP带入了一个全新时代.2020年3月18日,邱锡鹏老师发表了 ...
- 【入门教程】3202年了,还有人没用stable diffusion画过自己的AI小姐姐吗。
个人绘画作品: 说明 本文主要是讲一下如何安装.使用整合包,以及介绍画真人图片的大模型(介绍的整合包只提供二次元模型,个人不太感兴趣) 通过最简单的介绍帮助大家快速入门,开始画图,不会深入的进行讲解, ...
- react中常见hook的使用方式与区别
1.什么是hook?react hook是react 16.8推出的方法,能够让函数式组件像类式组件一样拥有state.ref.生命周期等属性. 2.为什么要出现hook?函数式组件是全局当中一个普通 ...
- [oracle]使用impdp导入数据时卡在视图
前言 oracle 19c使用impdp的时候卡在导入视图的地方一点不动,也没啥提示.根据网上资料,oracle 19在导入视图的时候会有bug. 步骤 查看导入任务 sqlplus / as sys ...
- Linux系统启动jmeter可视化界面
目的:方便在Linux系统调试jmeter脚本.操作:Linux启动jmeter可视化界面,不能使用root用户,需要创建新用户,切换到新用户启动jmeter. 1. 创建用户 创建一个新的系统用户. ...
- 解决Eclipse中启动Tomcat报unable to start within 45 seconds问题
启动项目的时候报Server Tomcat v8.0 Server at localhost was unable to start within 45 seconds. If the server ...
- VOLTE:MIUI14无5G信号、通话质量差、短信收不到的原因之一
在最近一次miui版本更新后的一段时间里,先后出现以下一些情况: 1. 在"双卡与移动网络"设置中,无论如何折腾"5G网络"开关或者"5G网络模式选择 ...
- SpringBoot 后端配置 Https 教程
以阿里云为例子 1. 申请 SSL 证书 1. 注册域名 打开阿里云官网,搜索域名 点击域名注册,输入域名,点击搜索 选择心仪的域名,点击购买,打钱 进入域名控制台,进行实名认证 2. 申请 SSL ...
- Record -「CSP-S 2020」赛后总结
其实这次的 CSP 暴露出来了很多问题. 比如策略上的,在 T1 花了太多的时间直接心态爆炸,后面的题只想着把暴力打满.看到 T2 只想着打暴力,根本没有沉下心来想,白白丢了一道(水)题. T3 连暴 ...