openCV操作图片之抠图与保存
上期文章我们分享了opencv的图片基本处理方法,本期我们介绍另外几种opencv的图片处理方法
抠图
import cv2
image = cv2.imread(“123.jpg”)
print(image.shape[:2])
cv2.imshow(“init”, image)
cropped = image[200:470, 260:540]
cv2.imshow(“cropped”, cropped)
cv2.waitKey(0)
抠图
我们知道image.shape 是图片的尺寸,当我们需要想提取图片中某个区域中的图片时,可以使用opencv的抠图功能,opencv没有特殊的抠图函数,而是直接指定图片的尺寸区域
cropped = image[200:470, 260:540]
然后显示图片即可
保存图片
当我们处理完成图片后,需要保存图片到电脑上,我们需要opencv的图片保存功能
(h, w) = image.shape[:2]
center = (w / 2, h / 2)
M = cv2.getRotationMatrix2D(center, 180, 1.0)
rotated = cv2.warpAffine(image, M, (w, h))
cv2.imshow(“rotated”, rotated)
cv2.imwrite(“rotated.png”, rotated)
cv2.waitKey(0)
前面的代码是上期分享的图片旋转代码,当处理完成后,我们使用cv2.imwrite(“rotated.png”, rotated)函数保存图片
函数传递2个参数:参数1为需要保存的图片的路径(这里是绝对地址,需要包含图片的名称)
参数2是需要保存的图片