如何在 Python 3 中将 PyCairo 表面转换为 OpenCV numpy 并返回

2024-01-05

我想将 OpenCV 图像转换为 PyCairo,进行一些操作(绘图等)并将其转换回 OpenCV。你知道该怎么做吗?简单的例子就足够了。谢谢。


正如 PyCairo 中所指定的测试代码 https://github.com/dalembertian/pycairo/blob/master/test/isurface_get_data.py,转换一个cairo.ImageSurface反对numpy array:

import cairo
import numpy as np

w = 300
h = 300

surface = cairo.ImageSurface (cairo.FORMAT_ARGB32, w, h)
ctx = cairo.Context (surface)

# Draw out the triangle using absolute coordinates
ctx.move_to (w/2, h/3)
ctx.line_to (2*w/3, 2*h/3)
ctx.rel_line_to (-1*w/3, 0)
ctx.close_path()
ctx.set_source_rgb (0, 0, 0)  # black
ctx.set_line_width(15)
ctx.stroke()

buf = surface.get_data()
array = np.ndarray (shape=(h, w, 4), dtype=np.uint8, buffer=buf)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Python 3 中将 PyCairo 表面转换为 OpenCV numpy 并返回 的相关文章

  • 使用 OpenCV VideoWriter 将 RTSP 流存储为视频文件

    我正在使用 OpenCV 开发一个 Python 模块 该模块连接到 RTSP 流以对视频执行一些预处理 主要是降低 fps 和分辨率 然后将其存储在文件系统中 但是 即使在尝试了几种编解码器 寻找类似的开发之后 我总是得到一个空的视频 我
  • 使用 imaplib 库连接到电子邮件时遇到 AUTHENTICATIONFAILED 错误

    如何连接到 imaplib 库而不遇到 AUTHENTICATIONFAILE 错误 通过网络浏览器登录时 我的 Gmail 收件箱显示严重的安全警报 登录尝试被阻止 IMAP SERVER imap gmail com USERNAME
  • OpenCV 旋转图像而不裁剪澄清

    我想扩展这个主题 参考用户 Lars Schillingmann 给出的这个 SO 问题和接受的答案 在 C 中的 OpenCV 中旋转图像而不裁剪 https stackoverflow com questions 22041699 ro
  • Cron 不会导入 pandas 模块来执行 python 脚本。 ```导入错误:没有名为 pandas 的模块```

    我使用的是xubuntu 18 01 我有一个 python 程序 可以抓取天气数据并将文件保存为 csv 运行命令完美运行weatherdata在我授予它许可后 在终端中使用chmod x weatherdata 我希望使用 cron 每
  • 使用 OpenCV 和 Python 叠加两个图像而不丢失颜色强度

    如何叠加两个图像而不损失两个图像的颜色强度 我有图像1和图像2 2 我尝试使用 0 5 alpha 和 beta 但它给我的合并图像的颜色强度只有一半 dst cv2 addWeighted img1 0 5 img2 0 5 0 但是当我
  • python sqlite3从excel创建数据库

    我正在尝试从 Excel 电子表格创建数据库 我有下面的代码 问题是当我运行代码时 我的数据库为每列创建一个表 我想为工作簿中列出的每个电子表格创建一个表格 工作表名称为工作表 1 和工作表 2 import sqlite3 import
  • 如何在一段时间后停止执行?

    我想在一定时间后停止执行 Dash 程序 当我关闭浏览器窗口时效果更好 尽管我怀疑这是否可能 有没有办法通过python中断它 我已经尝试过放一个 sys exit 打电话后app run server 虽然据我了解app run serv
  • Selenium Python Firefox webdriver:无法修改配置文件

    我想在 Webdriver Firefox 实例上使用 新选项卡而不是窗口 选项 1 我创建了一个启用此选项的配置文件 但是当我使用该配置文件时 很多选项都可以 但不是这个 2 加载配置文件后 我尝试更改代码中的选项 但它不起作用 我的代码
  • 在 python3 中优雅地退出多进程[重复]

    这个问题在这里已经有答案了 我想通过 Ctrl C SIGINT 或用户输入优雅地退出程序 如果可能的话 终端应该提示类似的内容 按 Enter 键终止 Python 3 6 执行的代码 def worker process i 0 whi
  • Opencv 运动检测与跟踪

    我需要在网络摄像头的视频帧中进行强大的运动检测和跟踪 背景总是一样的 目的是识别物体的位置 如果可能的话没有阴影 但并不急于去除阴影 我已经尝试过用于背景减法和阈值化的opencv算法 但这仅取决于一个图像作为背景 如果背景的亮度 或相机自
  • 在OpenCV中将YUV转换为BGR或RGB

    我有一个电视采集卡 其输入内容为 YUV 格式 我在这里看到了与此问题类似的其他帖子 并尝试尝试所述的所有可能的方法 但它们都没有提供清晰的图像 目前最好的结果是 OpenCVcvCvtColor scr dst CV YUV2BGR 函数
  • 使用 Boto3 进行 IAM 身份验证的 SQLAlchemy 可刷新凭证

    我使用 Boto3 生成的身份验证令牌通过 Sqlalchemy 连接到 Amazon RDS self client boto3 client rds region name eu central 1 self token self cl
  • 如何在 Django Admin 的“更改”页面中显示内嵌上传的图像?

    我正在尝试在中显示内联上传的图像 变更列表 页面在 Django 管理中 这是我的代码如下 models py from django db import models class Product models Model name mod
  • 如何平滑循环列向量

    这是一个 OpenCV2 问题 我有一个矩阵代表closed空间曲线 cv Mat
  • 将向量 转换为大小为 (n x 3) 的 Mat,反之亦然

    我有 Point3d 向量 向量形式的点云 如果我使用 OpenCV 提供的转换 比如 cv Mat tmpMat cv Mat pts Here pts is vector
  • 如何在离线绘图中绘制垂直线?

    如何使用 python 以离线方式绘制一条垂直线 我想在 x 20 x 40 和 x 60 处添加线条 所有线条都在同一个图中 def graph contracts self trace1 go Scatter x np array ra
  • 如何只获取父类对象的属性

    我有两节课 class Parent object def init self id name self id id self name name self parent vars id name make a copy def print
  • 更改自动插入 tkinter 小部件的文本颜色

    我有一个文本框小部件 其中插入了三条消息 一条是开始消息 一条是结束消息 一条是在 单位 被摧毁时发出警报的消息 我希望开始和结束消息是黑色的 但被毁坏的消息 参见我在代码中评论的位置 插入小部件时颜色为红色 我不太确定如何去做这件事 我看
  • 将 github 上的包安装到 Spyder 中

    我一直在尝试安装并导入mpl finance来自 github 的包 在我的 Spyder 环境中没有成功 我努力了 pip install e git https github com matplotlib mpl finance git
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se

随机推荐

  • 需要API进行货币转换[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 请建议返回 JSON 或小尺寸 html 的货币转换 API 我用返回 11 kb 的 HTML 我在
  • Javascript快捷方式,将字符串附加到数组的所有值中?

    我有一个array a b c 我想要的是我有一个字符串让我们说 Hello 我想将其附加到该数组的每个值 我的预期输出是这样的 Hello a Hello b Hello c javascript中是否有任何快捷方式可以执行此操作 而不使
  • 递归数据类型(如 Avro 架构中的树)

    Reading https avro apache org docs current spec html https avro apache org docs current spec html它说模式必须是以下之一 一个 JSON 字符串
  • 由json私钥文件(ServiceAccount)创建的GoogleCredential - 如何设置用户来模拟?

    刚刚开始使用 Google API 在我的 Google Cloud Platform 帐户中 我创建了一个用于域范围委派的服务帐户 我为此服务帐户保存了 json 格式的私钥文件 在我的测试应用程序中 我正在创建一个 GoogleCred
  • 如何获取magento2中的当前类别?

    我怎样才能获得当前类别magento2 我想在自定义 phtml 文件中获取类别名称和类别 id 上面的内容似乎是正确的 但我认为直接跳到注册表并不是最好的方法 Magento 提供了一个已经封装了该功能的图层解析器 请参阅目录插件中的 T
  • @AspectJ。 scala(也可能是 java)lambda 的切入点

    是否可以为 scala lambda 提供 poitcut 如果我没有记错的话 scala lambdas 现在的编译方式与 java lambdas 相同 所以我认为我的问题也适用于 java lambdas 但我不确定 这是代码 基本上
  • 画笔范围未按预期工作

    由于某种原因 我的图表没有像我希望的那样被刷掉 Brush extent 的域似乎正常工作 但条形图都飞出了页面 有人可以告诉我这里出了什么问题吗 function doBrush x domain brush empty x2 domai
  • 如何改变UINavigationBar的颜色?

    我想改变颜色UINavigationBar 将从图像中获取颜色 尝试将对象设置为导航栏的子视图 设置色调颜色属性或使用图像 UINavigationController controller UINavigationController a
  • 从根部高效计算多项式系数

    我有一个单调多项式的根 即 p x x x 1 x x n 我需要系数 a n a 0 p x x n a n 1 x n 1 a 0 有谁知道一个计算效率高这样做的方法 如果有人知道 C C 实现 这实际上是最好的 我已经看过 GSL 但
  • 如何为html中的多个图像创建搜索功能

    我是构建 html 网站的新手 我的文件夹中有很多 gif 动画 我想在javascript中创建一个搜索功能 以便它可以搜索图像的关键字 如果图像存在 则可以显示图像 如果不存在 则显示请输入另一个关键字
  • 在 tsibble 中设置索引

    您是否曾经回顾过自己的旧问题并感到有点尴尬 我刚刚做到了 现在我也做到了 在某些时候我可能会对这个有同样的感觉 我正在尝试将我的预测工作转移到fable 在此过程中我尝试使用tsibble 以前与一个ts对象我只是设置了开始年份和频率 现在
  • 我可以使用自动布局为横向和纵向方向提供不同的约束吗?

    当设备旋转时是否可以改变约束 如何实现这一目标 一个简单的例子可能是两张图像 在纵向时 一张放在另一张上面 但在横向时 它们并排 如果这是不可能的 我还能如何完成这个布局 我正在代码中构建我的视图和约束 而不是使用界面生成器 Edit 运用
  • 您可以在 ASP.NET-MVC 中的每个操作上应用 ActionFilter

    我想申请一个动作过滤器 http weblogs asp net rashid archive 2008 03 28 asp net mvc action filter caching and compression aspx在 ASP N
  • Nodejs - .node_libraries/ 用于 www-data

    我想在我的 PHP 应用程序中使用 uglifyjs https github com mishoo UglifyJS UglifyJS 是使用 Nodejs 构建的 因此我的 homedir home peppe 中需要一个 node l
  • 成为一名合格的 Scala 程序员是否需要成为一名合格的 Java 程序员? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • URL 的 Path.Combine 吗?

    路径组合 https msdn microsoft com en us library system io path combine 28v vs 110 29 aspx很方便 但是 NET 框架中有类似的功能吗URLs http en w
  • 从存储过程 catch 块处理死锁重试是个好主意吗

    据我了解 不可能完全防止事务死锁 从应用程序代码的角度来看 我希望事务永远不会失败 我已经看到这种模式用于 Microsoft SQL 我想知道这是否是一个好主意 DECLARE retry tinyint SET retry 5 WHIL
  • 将天数添加到特定日期

    许多例子都是关于在这一天添加天数 但是 如果我有不同的起始日 该怎么办 例如 不起作用 day 2010 01 23 add 7 days to the date above NewDate Date day strtotime 7 day
  • 将 R 数据作为 csv 直接写入 s3

    我希望能够将数据直接从 AWS s3 中写入存储桶data frame data table对象作为 csv 文件 而无需先使用 AWS CLI 将其写入磁盘 obj to write s3 lt data frame cbind x1 r
  • 如何在 Python 3 中将 PyCairo 表面转换为 OpenCV numpy 并返回

    我想将 OpenCV 图像转换为 PyCairo 进行一些操作 绘图等 并将其转换回 OpenCV 你知道该怎么做吗 简单的例子就足够了 谢谢 正如 PyCairo 中所指定的测试代码 https github com dalemberti