opencv-python 鼠标事件和坐标点截图

该博客介绍了如何利用Python的OpenCV库实现根据指定坐标自动截图。通过定义图像的四个顶点(左上角和右下角坐标),可以精确裁剪图片并保存。示例代码展示了如何读取图片,设置裁剪区域,并将裁剪后的图像保存为新的文件。
摘要由CSDN通过智能技术生成

将检测到的目标区域存成图片,需要用到坐标点截图手段

本文参考python opencv手动截取图片的部分区域并保存
博主代码:

# -*- coding:utf-8 -*-
import cv2

class UseCv:
    def __init__(self):
        self.path = 'lena.jpg'

    def cut(self):
        img = cv2.imread(self.path, flags=cv2.IMREAD_COLOR)
        bbox = cv2.selectROI(img, False)
        cut = img[bbox[1]:bbox[1]+bbox[3], bbox[0]:bbox[0]+bbox[2]]
        cv2.imwrite('cut.jpg', cut)

if __name__ == '__main__':
    UseCv().cut()

其实就是调用cv利用鼠标选择roi的函数,其中bbox[0],bbox[1]为左上点的x1,y1;bbox[2],bbox[3]为右下点的x2,y2。
那么如果想按照坐标点自动截图只需要:

import cv2

class UseCv:
    def __init__(self):
        self.path = './data/video/1.png'

    def cut(self):
        img = cv2.imread(self.path)
        x1,y1=5,10  
        x2,y2=150,200
        cut=img[y1:y2,x1:x2]
        cv2.imwrite('cut.jpg', cut)

if __name__ == '__main__':
    UseCv().cut()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小屋*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值