Python圖片縮放cv2.resize()圖文詳解
1 函數(shù)cv2.resize()的參數(shù)
resize(src, dsize, dst=None, fx=None, fy=None, interpolation=None)
參數(shù)解釋:
參數(shù) | 解釋 |
---|---|
src | 輸入原圖像 |
dsize | 輸出圖像的大小,方式:(寬,高) |
fx | width方向的縮放比例 |
fy | height方向的縮放比例 |
interpolation | 插值方式,默認(rèn)為雙線性插值 |
scr、dsize是必傳參數(shù),fx、fy、interpolation是可選參數(shù)。
2 interpolation參數(shù)解釋
圖片進(jìn)行縮放,需要對(duì)像素進(jìn)行重新計(jì)算,interpolation參數(shù)便是決定縮放圖像時(shí)計(jì)算像素的方式,常見(jiàn)的方式以下五種:
參數(shù) | 算法 | 數(shù)值 |
---|---|---|
INTER_NEAREST | 最鄰近插值 | 0 |
INTER_LINEAR | 雙線性插值 (默認(rèn)) | 1 |
INTER_CUBIC | 4x4像素鄰域內(nèi)的雙立方插值 | 2 |
INTER_AREA | 使用像素區(qū)域關(guān)系進(jìn)行重采樣 | 3 |
INTER_LANCZOS4 | 8x8像素鄰域內(nèi)的Lanczos插值 | 4 |
還有其他的選擇:
INTER_BITS2 = 10 INTER_LINEAR_EXACT = 5 INTER_MAX = 7 INTER_NEAREST_EXACT = 6 INTER_TAB_SIZE = 32 INTER_TAB_SIZE2 = 1024
3 代碼演示
import cv2 image = cv2.imread('./flower.jpg', 1) h, w, _ = image.shape image_f = cv2.resize(image, (0, 0), fx=2, fy=1) image0 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_NEAREST) image1 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_LINEAR) image2 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_CUBIC) image3 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_AREA) image4 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_LANCZOS4) image5 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_BITS) image10 = cv2.resize(image, (w * 2, h * 2), interpolation=cv2.INTER_BITS2) cv2.imshow('image', image) cv2.imshow('image_f', image_f) cv2.imshow('image0', image0) cv2.imshow('image1', image1) cv2.imshow('image2', image2) cv2.imshow('image3', image3) cv2.imshow('image4', image4) cv2.imshow('image5', image5) cv2.imshow('image10', image10) cv2.waitKey(0)
4 效果
image_f
image0
image1
image2
image3
image4
image5
image10
5 總結(jié)
通過(guò)圖形的效果看來(lái),cv2.INTER_CUBIC、cv2.INTER_LANCZOS4和cv2.INTER_BITS2效果比較好,優(yōu)于雙線性插值cv2.INTER_LINEAR,但是雙線性插值速度更佳,如果要縮小圖片可以考慮cv2.INTER_LINEAR。
image_f這張圖是才是fx和fy,如果不想手動(dòng)計(jì)算圖片,則dsize直接置為(0, 0),在大多數(shù)時(shí)候還是使用dsize而不用fx和fy。
到此這篇關(guān)于Python圖片縮放cv2.resize()的文章就介紹到這了,更多相關(guān)Python圖片縮放cv2.resize()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python編寫(xiě)softmax函數(shù)、交叉熵函數(shù)實(shí)例
這篇文章主要介紹了python編寫(xiě)softmax函數(shù)、交叉熵函數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06python實(shí)現(xiàn)簡(jiǎn)單貪吃蛇游戲
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)單貪吃蛇游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09在pytorch中動(dòng)態(tài)調(diào)整優(yōu)化器的學(xué)習(xí)率方式
這篇文章主要介紹了在pytorch中動(dòng)態(tài)調(diào)整優(yōu)化器的學(xué)習(xí)率方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06Python實(shí)現(xiàn)按目錄層級(jí)輸出文件名并保存為excel
當(dāng)我們發(fā)現(xiàn)電腦的內(nèi)存很滿,或平時(shí)工作中文件夾管理不清晰,導(dǎo)致里面的文件數(shù)據(jù)很雜亂,查找很不方便,一個(gè)一個(gè)文件夾去看去找然后刪除又很浪費(fèi)時(shí)間。本文將介紹如何利用Python實(shí)現(xiàn)按目錄層級(jí)輸出文件名并保存為excel,需要的可以參考一下2022-02-02python實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)回歸預(yù)測(cè)模型
這篇文章主要介紹了python實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)回歸預(yù)測(cè)模型,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Python3 使用pip安裝git并獲取Yahoo金融數(shù)據(jù)的操作
這篇文章主要介紹了Python3 使用pip安裝git并獲取Yahoo金融數(shù)據(jù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04python 對(duì)dataframe下面的值進(jìn)行大規(guī)模賦值方法
今天小編就為大家分享一篇python 對(duì)dataframe下面的值進(jìn)行大規(guī)模賦值方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06