Python?OpenCV超詳細(xì)講解調(diào)整大小與圖像操作的實現(xiàn)
準(zhǔn)備工作
右擊新建的項目,選擇Python File,新建一個Python文件,然后在開頭import cv2
導(dǎo)入cv2庫。
我們還要知道在OpenCV中,坐標(biāo)軸的方向是x軸向右,y軸向下,坐標(biāo)原點在左上角,比如下面這張長為640像素,寬為480像素的圖片。OK,下面開始本節(jié)的學(xué)習(xí)吧。
查看圖像大小
- 調(diào)用imread()方法獲取我們資源文件夾中的圖片lambo.png
- 輸出圖像的shape屬性
img=cv2.imread("Resources/lambo.png") print(img.shape)
我們來看下效果:
- 上圖中462是圖像的高度,也就是y軸;
- 623是圖像的寬度,也就是x軸;
- 3是通道數(shù),BGR(藍(lán)綠紅)通道
重新調(diào)整圖像大小
- resize()方法可以將圖像調(diào)整到指定的寬和高,參數(shù)1是需要調(diào)整的圖像img,參數(shù)2是(600,300),也就是新圖像的寬和高。
- 我們打印下imgResize的shape,看看是不是輸出(300,600,3)。
- 最后將原圖和修改大小后的圖像顯示出來。
img=cv2.imread("Resources/lambo.png") imgResize=cv2.resize(img,(600,300)) print(imgResize.shape) cv2.imshow("img",img) cv2.imshow("imgResize",imgResize) cv2.waitKey(0)
我們來運行一下,可以看到右側(cè)是調(diào)整后的圖像,明顯寬和高都比原圖小:
來看下控制臺的輸出,和圖像大小是一樣的:
圖像裁剪
圖像裁剪其實就是對矩陣進(jìn)行截取,選哪些行哪些列,顯示選中行列的像素點,就是裁剪后的圖像。imgCropped=img[200:400,200:400]
就是對原圖進(jìn)行裁剪,高從200到400,寬也從200到400,區(qū)間范圍只要不超過它的高和寬即可。
img=cv2.imread("Resources/lambo.png") imgCropped=img[200:400,200:400] cv2.imshow("img",img) cv2.imshow("imgCropped",imgCropped) cv2.waitKey(0)
我們運行看下效果,左側(cè)是623X462的原圖,右側(cè)是200X200的裁剪圖:
我們將裁剪的圖像放到原圖上進(jìn)行覆蓋,可以拼成原圖。
本節(jié)內(nèi)容也是比較簡單的,主要是讓大家熟悉下OpenCV最基礎(chǔ)的應(yīng)用,為后面打下基礎(chǔ)。眼過千遍不如手過一遍,快去動手敲一遍吧~??
到此這篇關(guān)于Python OpenCV超詳細(xì)講解調(diào)整大小與圖像操作的實現(xiàn)的文章就介紹到這了,更多相關(guān)Python OpenCV 圖像操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python pandas利用fillna方法實現(xiàn)部分自動填充功能
這篇文章主要介紹了python pandas通過fillna方法實現(xiàn)部分自動填充功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03使用paramiko遠(yuǎn)程執(zhí)行命令、下發(fā)文件的實例
下面小編就為大家?guī)硪黄褂胮aramiko遠(yuǎn)程執(zhí)行命令、下發(fā)文件的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10Ubuntu中配置TensorFlow使用環(huán)境的方法
這篇文章主要介紹了Ubuntu中配置TensorFlow使用環(huán)境的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04python中使用zip函數(shù)出現(xiàn)<zip object at 0x02A9E418>錯誤的原因
這篇文章主要介紹了python中使用zip函數(shù)出現(xiàn)<zip object at 0x02A9E418>錯誤的原因分析及解決方法,需要的朋友可以參考下2018-09-09