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是需要保存的图片