Python怎么使用opencv裁剪图片?Python第三方库opencv如何剪切图片

python第三方库opencv就是一个专门用来操作视频和图片的软件包,而该库也提供了不少的方法来完成图片裁剪操作 。下面小编会给大家分享几个比较好用的图片裁剪方法,想要学习这个知识点的小伙伴可以继续往下阅读完这篇文章哦 。

Python怎么使用opencv裁剪图片?Python第三方库opencv如何剪切图片

文章插图
一、坐标
opencv库裁剪图片甚至都不需要去调用方法,直接通过指定坐标就能够将图片指定位置裁剪出来 。这是因为该库将图片读取进来之后所得到就是数组形式,而这个数组之中所有的元素数量和图片的长宽相等 。只需要将指定长度和宽度位置的坐标放在图像中括号切片语法之中,然后再将其保存为图片类型即可完成截取操作,代码如下所示:
import cv2img = cv2.imread("./data/cut/thor.jpg")cropped = img[0:128, 0:512]cv2.imwrite("./data/cut/cv_cut_thor.jpg", cropped)二、手动裁剪
【Python怎么使用opencv裁剪图片?Python第三方库opencv如何剪切图片】opencv甚至还可以通过selectROI()方法来将一个图像打开,然后用鼠标框出指定的范围将这个范围的图像裁剪下来 。该方法使用时需要先将要裁剪的图片通过方法读取进来,然后再调用imshow()方法就可以显示图片,代码如下所示:
import cv2img = 'D:/nd_cats.jpg'img = cv2.imread(img)cv2.imshow('original', img)然后就是要去调用selectROI()方法了,该方法需要传入四个参数,分别为窗口名称、裁剪的图像、是否显示十字线、是否是从中心开始画框 。该方法调用之后会需要使用鼠标来框中裁剪区域,然后返回的就是该区域顶点位置坐标 。接着再去用切片方式来将该坐标的图像剪切下来保存即可,代码如下所示:
roi = cv2.selectROI(windowName="original", img=img, showCrosshair=True, fromCenter=False)x, y, w, h = roicrop = img[y:y+h, x:x+w]cv2.imwrite('D:/ancrop.jpg', crop)cv2.waitKey(0)cv2.destroyAllWindows()以上就是关于“Python怎么使用opencv裁剪图片?Python第三方库opencv如何剪切图片”的全部内容了,希望对你有所帮助 。

    推荐阅读