說(shuō)到Pooling,相信學(xué)習(xí)過(guò)CNN的朋友們都不會(huì)感到陌生。Pooling在中文當(dāng)中的意思是“池化”,在神經(jīng)網(wǎng)絡(luò)當(dāng)中非常常見(jiàn),通常用的比較多的一種是Max Pooling,具體操作如下圖:
??結(jié)合圖像理解,相信你也會(huì)大概明白其中的本意。不過(guò)Pooling并不是只可以選取2x2的窗口大小,即便是3x3,5x5等等沒(méi)問(wèn)題,步長(zhǎng)(Stride)也是一個(gè)道理。除了在神經(jīng)網(wǎng)絡(luò)方面,Pooling為圖片打馬賽克也是可以取得不錯(cuò)的效果,結(jié)合幾個(gè)例子看看。
??我們可以用Max Pooling先看看效果如何:
??Min Pooling和Average Pooling的操作也差不多,只不過(guò)把對(duì)應(yīng)的操作函數(shù)變了而已。
??Min Pooling:
??小動(dòng)物的皮膚顏色都換了,再看看Average Pooling:
??綜上來(lái)看,Average Pooling似乎更加逼真一些,不過(guò)換一張圖片可能效果就不一樣了。
??以下是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
def max_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.max(out[G*y:G*(y+1), G*x:G*(x+1), c]).astype(np.int64)
return out
def min_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.min(out[G*y:G*(y+1), G*x:G*(x+1), c]).astype(np.int64)
return out
??由于是多顏色通道的圖片,所以記得別漏了這個(gè)參數(shù)。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4779瀏覽量
101171 -
馬賽克
+關(guān)注
關(guān)注
0文章
14瀏覽量
7068 -
cnn
+關(guān)注
關(guān)注
3文章
353瀏覽量
22335
原文標(biāo)題:Pooling與馬賽克的秘密
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
![](https://file1.elecfans.com/web2/M00/83/7F/wKgZomRl24GAfLJ5AAEj9xFcbFk096.png)
請(qǐng)問(wèn)為什么PCB上會(huì)有馬賽克的東西?
NDK 視頻傳輸馬賽克問(wèn)題
基于ArkUI開(kāi)發(fā)框架,圖片馬賽克處理的實(shí)現(xiàn)
數(shù)字電視的馬賽克業(yè)務(wù)
iPhone8支持去馬賽克功能,錢包已經(jīng)饑渴難耐
如何解決"馬賽克"問(wèn)題呢?
如何解決LED顯示屏“馬賽克”問(wèn)題
馬賽克模擬屏組成單元_馬賽克模擬屏的分類
![<b class='flag-5'>馬賽克</b>模擬屏組成單元_<b class='flag-5'>馬賽克</b>模擬屏的分類](https://file.elecfans.com/web1/M00/B0/79/o4YBAF3t6S2AQPa_AABL4OkvPD4606.jpg)
近期電視畫(huà)面或?qū)⒊霈F(xiàn)馬賽克
iPhone13拍照有馬賽克 又現(xiàn)新bug
教程:在ArkUI開(kāi)發(fā)框架中實(shí)現(xiàn)馬賽克處理功能
![教程:在ArkUI開(kāi)發(fā)框架中實(shí)現(xiàn)<b class='flag-5'>馬賽克</b>處理功能](https://file.elecfans.com//web2/M00/46/06/pYYBAGKQLeCAIhy3AAAa_RUY-ro152.png)
評(píng)論