下面我将为您讲解如何使用Python PIL和CV对图片进行读取、显示、裁剪和保存。
图片读取
使用PIL库可以轻松读取图片,只需要使用Image.open()
函数并传入图片路径即可。
from PIL import Image
img = Image.open("example.jpg")
使用cv2库也可以读取图片,只需要使用cv2.imread()
函数而不是Image.open()
函数。
import cv2
img = cv2.imread("example.jpg")
需要注意的是,cv2中图片的格式是BGR而不是RGB,因此在后续处理中,需要注意这一点。
图片显示
使用PIL库实现图片展示,只需要使用Image.show()
函数即可。
from PIL import Image
img = Image.open("example.jpg")
img.show()
使用cv2库实现图片展示,只需要使用cv2.imshow()
函数即可,但需要注意的是需要再加上一行cv2.waitKey(0)
,否则图片会一闪而过。
import cv2
img = cv2.imread("example.jpg")
cv2.imshow("image", img)
cv2.waitKey(0)
图片裁剪
使用PIL库实现对图片的裁剪,只需要使用Image.crop()
函数即可,该函数传入一个4元组,分别是(left, upper, right, lower),表示裁剪的区域。
from PIL import Image
img = Image.open("example.jpg")
crop_img = img.crop((0, 0, 100, 100))
crop_img.show()
使用cv2库实现对图片的裁剪,只需要使用切片操作即可。
import cv2
img = cv2.imread("example.jpg")
crop_img = img[0:100, 0:100]
cv2.imshow("image", crop_img)
cv2.waitKey(0)
需要注意的是,在使用切片操作时,参数顺序是(y:y+h, x:x+w),其中(x,y)是左上角的坐标,(w,h)是宽度和高度。
图片保存
使用PIL库将图片保存,只需要使用Image.save()
函数即可,该函数传入图片保存的路径。
from PIL import Image
img = Image.open("example.jpg")
img.save("new_image.jpg")
使用cv2库将图片保存,只需要使用cv2.imwrite()
函数,该函数传入路径和需要保存的图片。
import cv2
img = cv2.imread("example.jpg")
cv2.imwrite("new_image.jpg", img)
以上就是使用Python PIL和cv2库对图片读取、显示、裁剪和保存的详细攻略,希望能对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python PIL和CV对 图片的读取,显示,裁剪,保存实现方法 - Python技术站