在播放视频/流时选择 ROI

2024-01-01

如果有人可以帮助我在视频流播放时选择 ROI(我不希望它暂停或捕获第一帧),我将不胜感激。 我错过了什么吗?我尝试将框架设置为相同的名称。

cv2.selectROI('Frame', frame, False)
cv2.imshow('Frame',frame)

你不能使用cv2.selectROI()在这种情况下,因为该函数是阻塞的,即它会停止程序的执行,直到您选择了感兴趣的区域(或取消了它)。

为了实现您想要的目标,您需要自己处理投资回报率的选择。下面是一个简短的示例,说明如何执行此操作,使用两次左键单击来定义 ROI,然后右键单击将其删除。

import cv2, sys

cap = cv2.VideoCapture(sys.argv[1])
cv2.namedWindow('Frame', cv2.WINDOW_NORMAL)

# Our ROI, defined by two points
p1, p2 = None, None
state = 0

# Called every time a mouse event happen
def on_mouse(event, x, y, flags, userdata):
    global state, p1, p2
    
    # Left click
    if event == cv2.EVENT_LBUTTONUP:
        # Select first point
        if state == 0:
            p1 = (x,y)
            state += 1
        # Select second point
        elif state == 1:
            p2 = (x,y)
            state += 1
    # Right click (erase current ROI)
    if event == cv2.EVENT_RBUTTONUP:
        p1, p2 = None, None
        state = 0

# Register the mouse callback
cv2.setMouseCallback('Frame', on_mouse)

while cap.isOpened():
    val, frame = cap.read()
    
    # If a ROI is selected, draw it
    if state > 1:
        cv2.rectangle(frame, p1, p2, (255, 0, 0), 10)
    # Show image
    cv2.imshow('Frame', frame)
    
    # Let OpenCV manage window events
    key = cv2.waitKey(50)
    # If ESCAPE key pressed, stop
    if key == 27:
        cap.release()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在播放视频/流时选择 ROI 的相关文章

  • python,在数据框中存储字典

    我构建了一个 pandas 数据框 它在每个单元格中存储一个简单的字典 例如 Sales 0 Revenue 0 我可以通过以下方式从数据帧中检索特定值 df columnA index100 Revenue 但现在我想绘制一个图表 其中包
  • 使用 os.popen 在 python 中创建列表

    以前 我已经能够使用类似于以下内容的命令创建列表 os popen ls fits gt samplelist 现在 我尝试通过按编号将文件分组来将文件组织到列表中 这些文件的命名如下 Name 0000 J fits Name 0001
  • 加速 Abaqus-python 代码中的慢循环,以从 .odb 文件中提取应变数据

    我有一个名为 Plate2 odb 的 odb 文件 我想从中提取应变数据 为此 我构建了下面的简单代码 该代码循环遍历每个元素的字段输出 E 应变 并将其保存到列表中 from odbAccess import openOdb impor
  • 如何在Python中测量时间?

    我想启动我的程序 测量程序启动的时间 然后等待几秒钟 按下按钮 K RIGHT 并测量按下按钮的时间 我正在使用 Pygame 来注册 Keydown 但在我下面的代码中它没有注册我的 Keydown 我在这里做错了什么 start tim
  • 如何在Python和C++之间交换数据[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想用 Python 编写一个程序 读取 2 个数字 从文本文件或用户输入 调用一个接受 2 个参数 这 2 个数字 的 C 函数 将
  • Python 中的“断言”有什么用?

    什么是assert意思是 它是如何使用的 The assert语句几乎存在于所有编程语言中 它有两个主要用途 它有助于在程序早期发现问题 原因明确 而不是等到其他操作失败时才发现问题 例如 Python 中的类型错误在实际引发错误之前可能会
  • ModuleNotFoundError:pip install后没有名为“requests”的模块[重复]

    这个问题在这里已经有答案了 我知道以前曾有人问过类似的问题 但我找不到问题的解决方案 尝试导入请求后 我收到以下错误消息 C Users Jm PycharmProjects Test venv Scripts python exe C U
  • 如何访问数据框中的一行嵌套字典

    我有一个 json 文件 如下所示 file name main question no Q 1 question what is answer user John comment It is defined as value number
  • 找不到文件 setuptools-27.2.0-py3.5.egg

    这个问题适用于Python 3 5 2 在Windows 10 64位 上使用Anaconda 4 3 0 当我尝试使用 pip 安装软件包时 出现以下错误 Command python setup py egg info failed w
  • 使用 imaplib 库连接到电子邮件时遇到 AUTHENTICATIONFAILED 错误

    如何连接到 imaplib 库而不遇到 AUTHENTICATIONFAILE 错误 通过网络浏览器登录时 我的 Gmail 收件箱显示严重的安全警报 登录尝试被阻止 IMAP SERVER imap gmail com USERNAME
  • scikit-learn 使用的 CART 算法是确定性的吗?

    我从 scikit learn 网站获得以下代码 import numpy as np from sklearn datasets import load iris from sklearn model selection import c
  • 像多米诺骨牌一样对 Python 中的元组进行排序/查找顶点连接

    我有一个像这样的整数元组列表 L 1 2 7 6 2 3 8 5 3 8 5 7 每对定义两个顶点之间的边 我想找到顶点连接性 没有循环 元组总是像多米诺骨牌一样唯一地链接起来 因此在这种情况下 排序列表应如下所示 L sorted 1 2
  • ctypes c_char_p 的不同行为?

    我对不同版本的 python 的这种行为感到困惑 不明白为什么 Python 2 7 5 default Aug 25 2013 00 04 04 GCC 4 2 1 Compatible Apple LLVM 5 0 clang 500
  • Pandas groupby 汇总

    如果我有一个这样的数据框 import pandas as pd df pd DataFrame A 1 1 2 B a b c metric 4 5 2 df df groupby A B sum 得到的 df 为 metric A B
  • 基本的 Python OpenCV 裁剪和调整大小

    有人可以帮我一些裁剪算法吗 它的 openCV 我想弄清楚这一点 我知道方法是crop image y y1 x x1 如果我有一个带有 new dimensionXxnew dimensionY 像素的图像 并且我想将其裁剪为相同的宽度
  • SQLAlchemy/pandas to_sql for SQLServer -- 在主数据库中创建表

    使用 MSSQL 版本 2012 我使用 SQLAlchemy 和 pandas 在 Python 2 7 上 将行插入 SQL Server 表中 使用特定服务器字符串尝试 pymssql 和 pyodbc 后 我正在尝试 odbc 名称
  • 根据另一个参数的值添加参数

    根据输入之一 我想初始化某些对象 这些对象的值将是其余参数的默认值 因此 即使在 parser parse args 之前 我也需要参数之一的值 我如何使用 python argparse 模块来实现这一点 所有选项都将作为一个命令行给出
  • OpenCV Python RTSP 流

    我想使用 RTSP 从 IP 摄像机流式传输视频 但我有一个问题 我已经安装了先决条件 而且我的 RTSP 链接可以在 VlC 播放器上运行 但是当我在编辑器中尝试并运行它时 它说找不到相机 这是我的代码 import cv2 import
  • PyQt4 QPalette 不工作

    btn QtGui QPushButton Button self palettes btn palette palettes setColor btn backgroundRole QtCore Qt green btn setPalet
  • bdist_rpm 从 Ubuntu 到 CentOs

    我们在 Ubuntu Mac 上进行开发 并将 RPM 部署到 CentOS 这是设置 不能更改太多 问题是 当从 rpm 安装时 软件包会转到 usr local lib python2 7 dist packages 这是 Ubuntu

随机推荐

  • 自定义 REST 协议基于二进制而不是像 Http 这样基于文本是一件好事吗?

    您是否曾经见过创建自定义二进制休息协议而不是使用基本的 http 休息实现的充分理由 我目前正在 Net 中开发面向服务的架构框架 负责托管和使用服务 我不想基于像 Remoting 或 WCF 这样的现有框架 因为我想要完全的灵活性和控制
  • 数组内的多个嵌套组

    我在 MongoDB 中有一组元素 如下所示 1 id ObjectId 58736c7f7d43c305461cdb9b Name Kevin pb event event type Birthday event date 2014 08
  • Bootstrap 模态动态内容

    我需要一种方法来加载可以随时更改的动态内容 根据 Bootstrap 文档 a href remote htm Click me a 正在利用 jQuerys load仅加载内容once 它将内容注入到 modal content div
  • 避免在 R 中的 cut 函数中使用科学记数法

    如何避免在 cut 函数创建的区间中出现科学记数法 a lt seq 10000 50000 by 500 cut a breaks seq 0 max a 300 by 300 我已经尝试过以下方法 但没有帮助 options scipe
  • MonoTouch、Sharepoint Web 服务和 xs:any

    有人接到网络服务电话上班吗与 SharePoint与 MonoTouch MonoDevelop Mono 一起操作 我能够从典型端点 本例中为 vti bin Lists asmx 获取 WSDL 并且 MonoDevelop 按预期创建
  • jQuery:如何获取选中的单选按钮的索引

    我最近发现了一个 StackOverflow 答案 其中给出了关于如何使用 jQuery 获取选中的单选按钮的值 https stackoverflow com questions 596351 how can i get which ra
  • Bootstrap 3 RC 1 中的 typeahead JavaScript 模块在哪里?

    如您所知 Bootstrap RC 1 已经发布 我一直在阅读这个新框架中所有令人敬畏的新功能 但你猜怎么着 打字头不在文档中 有谁知道这是否是出于任何原因 I found 这些例子 http twitter github io typea
  • Java如何将2011-11-06T14:34:16.679+02:00设置为XMLGregorianCalendar

    我正在构建 JAXWS 客户端 方法之一是获取 XMLGregorianCalendar 现在我需要格式化这些数据2011 11 06T14 34 16 679 02 00设置为 XMLGregorianCalendar 如何做呢 该日期是
  • 单个 SQL Server 表上的死锁

    我正在使用 SQL Server 2008 Enterprise 并使用ADO Net C Net 3 5 ASP Net作为客户端访问数据库 当我访问 SQL Server 2008 表时 我总是从 C ADO Net 代码调用存储过程
  • 更改视频时如何运行插件/库?

    执行代码时videoJS plugin取代了HTML5视频播放器 真的很高兴 我在我之间说了我所取得的成就 但是当点击下一个视频时 即使返回到第一个视频 plugin丢失了 让我成为默认玩家HTML5 你可以检查一下jsfiddle htt
  • 左侧的 HTML 元素滚动条[重复]

    这个问题在这里已经有答案了 可能的重复 DIV 左侧垂直滚动条 https stackoverflow com questions 1455708 div vertical scroll bar on left 有没有办法使用 css 或
  • 特定数据符合时间序列的标准是什么?

    我想做的是尝试检测天气数据集是否是时间序列 我想自动化这个过程 假设我有以下数据集 df1 Heading 1 Heading 2 Heading 1 Heading 2 1 1 2023 34 12 34 2 1 2023 42 99 4
  • Python urllib3:一段时间后关闭空闲连接

    有没有办法告诉Python urllib3在一段时间后不要重用空闲连接 而是关闭它们 寻找https urllib3 readthedocs io en latest reference index html module urllib3
  • 对于制服和顶点属性来说,OpenGL 索引和位置是一样的吗?

    在 OpenGL 参考页中 some https www opengl org sdk docs man4 html glUniform xhtml函数被标记为使用统一位置 而other https www opengl org sdk d
  • Vue - 多个无线电输入,检查值?

    我在创建一个简单的民意调查生成器时学习 vue 但我在无线电输入方面遇到了问题 问题可以有两种类型之一 选择或范围 两者都是无线电输入 选择 是无线电输入单选问题 范围 是具有 1 5 个值的无线电输入问题 如下图所示 稍后我必须修复命名
  • 在“for”循环java中重新启动当前迭代

    我有一个 for 循环 要求用户输入一个数字 然后对其执行 10 次操作 我想要一个内置的检查 如果用户输入不接受的输入 循环应该重新启动当前的迭代 例如 如果用户在第 3 轮中输入错误 则应重新启动第 3 轮 我怎么做 java中有类似R
  • Unicode 数字的字符类

    我需要创建一个Pattern它将匹配所有 Unicode 数字和字母字符 到目前为止我已经 p IsAlphabetic 0 9 第一部分对我来说效果很好 它很好地将非拉丁字符识别为字母字符 问题出在后半段 显然它只适用于阿拉伯数字 字符类
  • Angular 2:模板解析错误:无法绑定到“ngModel”,因为它不是“输入”的已知属性

    当我使用双向绑定 ngModel 时收到此消息 Template parse errors Can t bind to ngModel since it isn t a known property of input 我知道导入 Forms
  • 免费 API 或类似工具可获取股票的下一个收益日期 [已关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 API 或类似的 API 我可以在其中获取股票的下一个 即将到来的 收益日期 我已经用
  • 在播放视频/流时选择 ROI

    如果有人可以帮助我在视频流播放时选择 ROI 我不希望它暂停或捕获第一帧 我将不胜感激 我错过了什么吗 我尝试将框架设置为相同的名称 cv2 selectROI Frame frame False cv2 imshow Frame fram