python使用opencv resize圖像不進(jìn)行插值的操作
如下所示:
def resize(src, dsize, dst=None, fx=None, fy=None, interpolation=None):
如果使用vanilla resize,不改變默認(rèn)參數(shù),就會(huì)對(duì)原圖像進(jìn)行插值操作。不關(guān)你是擴(kuò)大還是縮小圖片,都會(huì)通過(guò)插值產(chǎn)生新的像素值。
對(duì)于語(yǔ)義分割,target的處理,如果是對(duì)他進(jìn)行resize操作的話。就希望不產(chǎn)生新的像素值,因?yàn)樗念伾畔?,代表了像素的類別信息。
但是我們有時(shí)候希望resize之后不產(chǎn)生新的像素值,而是產(chǎn)生利用最近鄰點(diǎn)的像素值作為新產(chǎn)生的像素值。要實(shí)現(xiàn)這個(gè)操作只需要將interpolation=cv2.INTER_NEAREST,這個(gè)參數(shù)的默認(rèn)值是雙線性插值,幾乎必然會(huì)產(chǎn)生新的像素值。
補(bǔ)充知識(shí):python+OpenCV最近鄰域插值法 雙線性插值法原理
1.最近鄰域插值法
假設(shè)原圖像大小為1022,縮放到510,可以用原圖像上的點(diǎn)來(lái)表示目標(biāo)圖像上的每一個(gè)點(diǎn)。
例如目標(biāo)圖像上的點(diǎn)(1,2)可以用原圖像的點(diǎn)(2,4)來(lái)表示。
dst x 1 -> dst x 2 newX
newX = x*(src 行/目標(biāo) 行) newX = 1*(10/5) = 2
newY = y*(src列/目標(biāo) 列) newY = 2*(20/10) = 4
12.3取12,當(dāng)為小數(shù)時(shí)則取離整數(shù)最近的數(shù)
2.雙線性插值法
A1(15.2,22)
A2(15.2,23)
B1(15,22.3)
B2(16,22.3)
A1 = 20%上面的點(diǎn) + 80%下面的點(diǎn)A2
B1 = 30%左邊的點(diǎn) + 70%右面的點(diǎn)B2
中間的點(diǎn) = A130% + A270%
中間的點(diǎn) = B120% + B280%
以上這篇python使用opencv resize圖像不進(jìn)行插值的操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
通過(guò) Django Pagination 實(shí)現(xiàn)簡(jiǎn)單分頁(yè)功能
這篇文章主要介紹了通過(guò) Django Pagination 實(shí)現(xiàn)簡(jiǎn)單分頁(yè)功能,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11Python排序方法中sort和sorted的區(qū)別詳解
在python中常用的排序函數(shù)就是sort()和sorted()這兩個(gè)函數(shù),使用 sort() 或內(nèi)建函數(shù) sorted() 對(duì)列表進(jìn)行排序,本文將詳細(xì)介紹sorted和sort兩者之間的區(qū)別,感興趣的可以了解一下2023-08-08用python給自己做一款小說(shuō)閱讀器過(guò)程詳解
這篇文章主要介紹了用python給自己做一款小說(shuō)閱讀器過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07python 自動(dòng)重連wifi windows的方法
今天小編就為大家分享一篇python 自動(dòng)重連wifi windows的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12使用Python監(jiān)控文件內(nèi)容變化代碼實(shí)例
在python中文件監(jiān)控主要有兩個(gè)庫(kù),一個(gè)是pyinotify,一個(gè)是watchdog。pyinotify依賴于Linux平臺(tái)的inotify,今天我們就來(lái)探討下pyinotify.2018-06-06使用Python進(jìn)行物聯(lián)網(wǎng)設(shè)備的控制與數(shù)據(jù)收集
Python作為一種高效且易于學(xué)習(xí)的編程語(yǔ)言,已經(jīng)成為開(kāi)發(fā)物聯(lián)網(wǎng)應(yīng)用的首選語(yǔ)言之一,本文將探討如何使用Python進(jìn)行物聯(lián)網(wǎng)設(shè)備的控制與數(shù)據(jù)收集,并提供相應(yīng)的代碼示例,需要的朋友可以參考下2024-05-05