日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

用python简单处理图片(2):图像通道\几何变换\裁剪

發(fā)布時(shí)間:2024/9/21 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用python简单处理图片(2):图像通道\几何变换\裁剪 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、圖像通道

1、彩色圖像轉(zhuǎn)灰度圖

from PIL import Image import matplotlib.pyplot as plt img=Image.open('d:/ex.jpg') gray=img.convert('L') plt.figure("beauty") plt.imshow(gray,cmap='gray') plt.axis('off') plt.show()

使用函數(shù)convert()來(lái)進(jìn)行轉(zhuǎn)換,它是圖像實(shí)例對(duì)象的一個(gè)方法,接受一個(gè) mode 參數(shù),用以指定一種色彩模式,mode 的取值可以是如下幾種:

· 1 (1-bit pixels, black and white, stored with one pixel per byte) · L (8-bit pixels, black and white) · P (8-bit pixels, mapped to any other mode using a colour palette) · RGB (3x8-bit pixels, true colour) · RGBA (4x8-bit pixels, true colour with transparency mask) · CMYK (4x8-bit pixels, colour separation) · YCbCr (3x8-bit pixels, colour video format) · I (32-bit signed integer pixels) · F (32-bit floating point pixels)

2、通道分離與合并

from PIL import Image import matplotlib.pyplot as plt img=Image.open('d:/ex.jpg') #打開(kāi)圖像 gray=img.convert('L') #轉(zhuǎn)換成灰度 r,g,b=img.split() #分離三通道 pic=Image.merge('RGB',(r,g,b)) #合并三通道 plt.figure("beauty") plt.subplot(2,3,1), plt.title('origin') plt.imshow(img),plt.axis('off') plt.subplot(2,3,2), plt.title('gray') plt.imshow(gray,cmap='gray'),plt.axis('off') plt.subplot(2,3,3), plt.title('merge') plt.imshow(pic),plt.axis('off') plt.subplot(2,3,4), plt.title('r') plt.imshow(r,cmap='gray'),plt.axis('off') plt.subplot(2,3,5), plt.title('g') plt.imshow(g,cmap='gray'),plt.axis('off') plt.subplot(2,3,6), plt.title('b') plt.imshow(b,cmap='gray'),plt.axis('off') plt.show()

二、裁剪圖片

從原圖片中裁剪感興趣區(qū)域(roi),裁剪區(qū)域由4-tuple決定,該tuple中信息為(left, upper, right, lower)。 Pillow左邊系統(tǒng)的原點(diǎn)(0,0)為圖片的左上角。坐標(biāo)中的數(shù)字單位為像素點(diǎn)。

from PIL import Image import matplotlib.pyplot as plt img=Image.open('d:/ex.jpg') #打開(kāi)圖像 plt.figure("beauty") plt.subplot(1,2,1), plt.title('origin') plt.imshow(img),plt.axis('off')box=(80,100,260,300) roi=img.crop(box) plt.subplot(1,2,2), plt.title('roi') plt.imshow(roi),plt.axis('off') plt.show()

用plot繪制顯示出圖片后,將鼠標(biāo)移動(dòng)到圖片上,會(huì)在右下角出現(xiàn)當(dāng)前點(diǎn)的坐標(biāo),以及像素值。

三、幾何變換?

Image類有resize()、rotate()和transpose()方法進(jìn)行幾何變換。

 1、圖像的縮放和旋轉(zhuǎn)

dst = img.resize((128, 128)) dst = img.rotate(45) # 順時(shí)針角度表示 2、轉(zhuǎn)換圖像
dst = im.transpose(Image.FLIP_LEFT_RIGHT) #左右互換 dst = im.transpose(Image.FLIP_TOP_BOTTOM) #上下互換 dst = im.transpose(Image.ROTATE_90) #順時(shí)針旋轉(zhuǎn) dst = im.transpose(Image.ROTATE_180) dst = im.transpose(Image.ROTATE_270) transpose()和rotate()沒(méi)有性能差別。

總結(jié)

以上是生活随笔為你收集整理的用python简单处理图片(2):图像通道\几何变换\裁剪的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。