c++ - 如何在 OpenCV 中获取特定元素的行和列?

标签 c++ c image-processing opencv

我正在尝试从 3 channel 矩阵 CvMat 中获取特定元素的行和列。

OpenCV 中有什么函数可以让我得到这个吗?也许像 Matlab 的“查找”功能?

最佳答案

如果那个“特定元素”是一个彩色像素并且它是唯一的,你可以使用

inRange(src,your_color,your_color,mask)

然后使用 minMaxLoc() 获取您要查找的唯一点的索引。

当然,只有当您在单个像素之后才值得这样做(获取单个像素而不是通过简单的循环),但是如果您不做太多这样的事情,它可能更容易做到这种矫枉过正,毕竟它很短。

如果您要查找子矩阵,请使用 matchTemplate 然后使用 minMaxLoc 获取索引。

关于c++ - 如何在 OpenCV 中获取特定元素的行和列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9408163/

相关文章:

C++:关于运行时警告错误和消息的最佳实践是什么?

c - GCC 变量声明中的弱属性

c++ - 通过 COM 服务器上的不同线程发送时数据丢失 - 以前在 VC6 中工作,现在在 VS2010 中损坏

c++ - 在 C++ 中创建 lambda 映射

c++ - fread/fwrite 引入垃圾值

ios - 在 Swift iOS 中使用 OpenCV

java - 相机没有返回我拍摄的图像

c++ - 从 Lua 传递到 C++ 的对象地址在成员变量中返回错误的值

c++ - 窗口 HTTP IO 完成端口

python-2.7 - 如何在 python 中实现 ImageMagick 中可用的 textcleaner 函数?