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)行縮放,需要對像素進(jìn)行重新計算,interpolation參數(shù)便是決定縮放圖像時計算像素的方式,常見的方式以下五種:
參數(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é)
通過圖形的效果看來,cv2.INTER_CUBIC、cv2.INTER_LANCZOS4和cv2.INTER_BITS2效果比較好,優(yōu)于雙線性插值cv2.INTER_LINEAR,但是雙線性插值速度更佳,如果要縮小圖片可以考慮cv2.INTER_LINEAR。
image_f這張圖是才是fx和fy,如果不想手動計算圖片,則dsize直接置為(0, 0),在大多數(shù)時候還是使用dsize而不用fx和fy。
到此這篇關(guān)于Python圖片縮放cv2.resize()的文章就介紹到這了,更多相關(guān)Python圖片縮放cv2.resize()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python編寫softmax函數(shù)、交叉熵函數(shù)實例
這篇文章主要介紹了python編寫softmax函數(shù)、交叉熵函數(shù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06在pytorch中動態(tài)調(diào)整優(yōu)化器的學(xué)習(xí)率方式
這篇文章主要介紹了在pytorch中動態(tài)調(diào)整優(yōu)化器的學(xué)習(xí)率方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06Python實現(xiàn)按目錄層級輸出文件名并保存為excel
當(dāng)我們發(fā)現(xiàn)電腦的內(nèi)存很滿,或平時工作中文件夾管理不清晰,導(dǎo)致里面的文件數(shù)據(jù)很雜亂,查找很不方便,一個一個文件夾去看去找然后刪除又很浪費時間。本文將介紹如何利用Python實現(xiàn)按目錄層級輸出文件名并保存為excel,需要的可以參考一下2022-02-02python實現(xiàn)BP神經(jīng)網(wǎng)絡(luò)回歸預(yù)測模型
這篇文章主要介紹了python實現(xiàn)BP神經(jīng)網(wǎng)絡(luò)回歸預(yù)測模型,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Python3 使用pip安裝git并獲取Yahoo金融數(shù)據(jù)的操作
這篇文章主要介紹了Python3 使用pip安裝git并獲取Yahoo金融數(shù)據(jù)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04python 對dataframe下面的值進(jìn)行大規(guī)模賦值方法
今天小編就為大家分享一篇python 對dataframe下面的值進(jìn)行大規(guī)模賦值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06