本文將從多個方面詳細闡述Python圖像黑白反轉的方法和技巧。
一、Pillow模塊介紹
Pillow是Python的一個圖像處理模塊,可以進行圖片的裁剪、旋轉、縮放等操作。使用Pillow模塊可以方便地進行圖像處理操作。
首先,需要使用Pillow模塊讀取圖像文件,代碼如下:
from PIL import Image
# 打開圖像文件
im = Image.open('test.jpg')
# 獲取圖像的寬度和高度
width, height = im.size
# 顯示圖像
im.show()
二、黑白反轉的實現
1. 灰度化
黑白反轉需要首先將彩色圖像轉換為灰度圖像。將每個像素的RGB值取平均值得到灰度值,使用Pillow模塊可以很容易地實現,代碼如下:
from PIL import Image
# 打開彩色圖像
im = Image.open('test.jpg')
# 轉化為灰度圖像
im_gray = im.convert('L')
# 顯示灰度圖像
im_gray.show()
2. 反轉操作
灰度圖像轉換完成後,可以對每個像素的灰度值取反得到黑白反轉圖像,代碼如下:
from PIL import Image
# 打開彩色圖像
im = Image.open('test.jpg')
# 轉化為灰度圖像
im_gray = im.convert('L')
# 取反操作
im_invert = ImageOps.invert(im_gray)
# 顯示黑白反轉圖像
im_invert.show()
三、保存圖像文件
黑白反轉操作完成後,可以使用Pillow模塊將處理後的圖像保存為文件,代碼如下:
from PIL import Image
# 打開彩色圖像
im = Image.open('test.jpg')
# 轉化為灰度圖像
im_gray = im.convert('L')
# 取反操作
im_invert = ImageOps.invert(im_gray)
# 保存圖像文件
im_invert.save('test_invert.jpg')
四、其他操作
1. 圖像縮放
將圖片縮小一倍
from PIL import Image
# 打開圖像
im = Image.open('test.jpg')
# 縮小圖像
im_resized = im.resize((int(im.size[0]/2), int(im.size[1]/2)))
# 顯示縮小後的圖像
im_resized.show()
2. 圖像旋轉
將圖片向右旋轉90度
from PIL import Image
# 打開圖像
im = Image.open('test.jpg')
# 旋轉圖像
im_rotated = im.rotate(-90)
# 顯示旋轉後的圖像
im_rotated.show()
3. 圖像裁剪
將圖片裁剪為中間的部分,寬度和高度都為原來的一半
from PIL import Image
# 打開圖像
im = Image.open('test.jpg')
# 裁剪圖像
left = im.size[0]/4
top = im.size[1]/4
right = im.size[0]*3/4
bottom = im.size[1]*3/4
im_cropped = im.crop((left, top, right, bottom))
# 顯示裁剪後的圖像
im_cropped.show()
總結
本文介紹了Python圖像黑白反轉的實現方法和技巧,通過Pillow模塊進行圖像處理,詳細闡述了灰度化、黑白反轉、保存圖像文件等操作,並介紹了圖像縮放、旋轉、裁剪等其他操作。
原創文章,作者:AOBXE,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/375010.html