使用 Opencv C++ 在图像上跨步

2023-11-29

我在 Windows 上并在 C++ 上使用 opencv 2.4.2。 我读了一张图片imread并将其放入 Mat 对象中。 之后,我使用该函数获得原始数据的指针ptrMat 类的。 我想知道如何运作imread当图像包含步幅时。 Mat 的数据中有步长还是只有像素数据?

附加信息:我需要原始数据,因为我使用的是用数组编写的代码,并且我不想为 Mat 类更改它。


跨度是 cv::Mat 中的每个新像素行不会在最后一行结束后开始。 这是因为如果内存以 4 字节的倍数开始,则内存速度会更快 - 因此仅当一行中的字节数(像素数 * 颜色数)不是 4 的倍数时才重要。

您可以检查 .isContinously() 如果没有步幅,将返回 true

访问图像的最安全方法是循环遍历所有行并使用 .ptr(row) 获取指向行开头的指针,然后对该行进行任何处理。

如果您需要将 opencv 与其他库混合,您可以创建一个 cv::mat 它将使用您自己的数据内存,并且您可以告诉 opencv 在此没有跨步

有关大量详细信息,请参阅https://docs.opencv.org/2.4/modules/core/doc/basic_structs.html

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

使用 Opencv C++ 在图像上跨步 的相关文章

随机推荐

  • Apache Kafka 中 Producer.properties 和 Consumer.properties 文件的使用

    Kafka 包内有一个 config 文件夹 其中包含各种配置文件 该文件夹包含 Consumer properties 和 Producer properties 文件 这些配置是在我们运行 Kafka 集群以及我们的代码连接到 kafk
  • MySQL:嵌套集很慢?

    我有一个看起来像这样的表 category 类别 id name 类别 seo 友好 url left id right id 当我运行这样的查询时 大约需要1秒 SELECT node category id AS node catego
  • Gnuplot:二维矢量图的可变颜色(和线宽)

    我正在尝试创建一个 2D 矢量图variablegnuplot 版本 4 4 中的颜色 和线宽 我查看了示例以获取要点 splot vectors dat u 1 2 3 4 rgb 5 6 7 w points pt 7 pointsiz
  • 如何从 json url 获取值

    我正在使用 AngularJS 我想动态获取价格的值 我的意思是从 url json 数据中获取它 这可能吗 这是url json url 这是我的控制器 angular module myApp zingchart angularjs c
  • 删除临时表后可以重新创建它吗?

    Given 存储过程中的代码 select bleh into tblTemp from FunctionThatReturnsTable some params do some stuff drop table tblTemp Error
  • SonarRunner with gradle:无法从服务器下载库

    我已经更新了Sonar到 4 5 1 LTS 版本 现在在我的 gradle 任务中出现以下错误并且无法修复它 Fail to download libraries from server 带有声纳运行器的 build gradle son
  • 如何将所有未版本控制的文件“svn 添加”到 SVN?

    我正在寻找一种好方法来自动将工作副本中的所有未版本化文件 svn 添加 到我的 SVN 存储库 我有一个实时服务器 可以创建一些应受源代码控制的文件 我想要一个简短的脚本 我可以运行它来自动添加这些内容 而不是一次逐一添加它们 我的服务器正
  • 在 Firefox 中获取停用的滚动条

    我有一个 Javascript 选项卡式对话框 其页面具有不同的高度 其中一些比浏览器窗口高 在 Internet Explorer 中 右侧始终有一个滚动条 当不需要时 它会显示为灰色 页面尺寸保持不变 没有问题 在 Firefox 中
  • Node.js + mysql 连接池

    我正在尝试找出如何构建我的应用程序以最有效地使用 MySQL 我正在使用 node mysql 模块 这里的其他线程建议使用连接池 所以我设置了一个小模块 mysql js var mysql require mysql var pool
  • 遥测采样而不影响错误/故障

    我想在应用程序洞察中记录成功调用的百分比 我看到了这个帖子https learn microsoft com en us azure azure monitor app sampling我认为固定速率采样在这里是合适的 但这是否同样影响所有
  • 用于将 AT 命令发送到调制解调器的 ADB shell 脚本 - 无法将控制权返回到 shell 并捕获输出

    我已经发布了类似的问题 但仍然无法完成我的工作 所以这是第二次尝试 其中 我想更清楚地说明我的绊脚石 所以基本上我在Android手机的adb shell中 通过发送AT命令与GPRS调制解调器通信 我可以通过将 at 命令重定向到代表调制
  • 在sql server上使用jdbcPreparedStatement获取查询计划

    使用 Statment resultSet getObject 将查询计划返回为 xml Connection conn getConnection String query SET SHOWPLAN XML on Statement st
  • OS X Lion 上的 32 位 OpenCV?可能的?

    我已经在谷歌上搜索并尝试了好几天 试图找出如何让 32 位 OpenCV 在 OS X Lion 上工作 但只能找到 64 位版本 所以我有以下问题 OpenCV 库有 32 位或 64 位架构 对吗 如何让 32 位 OpenCV 在 L
  • 使用 Scala“fromURL”的结果会抛出异常

    我正在尝试使用 Scala 的 scala io Source 对象获取一些网页 获取迭代器工作正常 但我无法在没有异常的情况下用它做任何事情 scala gt scala io Source fromURL http google com
  • SQL 根据引用多个其他变量的语句在新变量中返回 1,0

    我正在尝试创建一个新变量 根据一系列日期和阶梯级别 null E 在 MySQL 中填充 1 真 0 假 参见小提琴 http sqlfiddle com 9 9975e1 其中 record dates 和ladder levels 不一
  • 如何清除函数内的 setInterval?

    通常 我会将间隔设置为一个变量 然后像这样清除它var the int setInterval clearInterval the int 但为了让我的代码正常工作 我将其放入匿名函数中 function intervalTrigger s
  • twitter bootstrap 块级表单

    我正在尝试获取全宽登录表单 基本上 用户名 密码和按钮的输入字段都应该具有相同的长度 现在我可以使用跨度轻松获得此效果 问题是当我在用户名和密码 前面 添加一个图标时 输入字段超出了跨度 如果我将输入块级别应用于输入 并且按钮跨度仅到外部跨
  • Java 8 如何推断 lambdas 参数类型

    我目前正在使用 Java 中的 Vert x 并注意到文档中的示例广泛使用 lambda 作为回调参数 例如 NetServer server vertx createNetServer server listen 1234 localho
  • 在 RegEx Java 中查找子字符串

    您好 我有一个关于正则表达式的问题 我目前正在尝试找到一种方法来获取任何字母后跟任何两个数字的子字符串 例如 d09 我想出了正则表达式 a z 1 0 9 2 并在字符串上运行它 sedfdhajkldsfakdsakvsdfasdfr3
  • 使用 Opencv C++ 在图像上跨步

    我在 Windows 上并在 C 上使用 opencv 2 4 2 我读了一张图片imread并将其放入 Mat 对象中 之后 我使用该函数获得原始数据的指针ptrMat 类的 我想知道如何运作imread当图像包含步幅时 Mat 的数据中