openCV读取灰度视频并处理灰度视频问题

u012114369 2015-03-19 05:16:56
最近正在编一个软件用来处理视频,当视频的每一帧为灰度帧时,出现问题,代码如下:
pCaptureNow=cvCaptureFromFile(filePath);
pFirst_Frame=cvQueryFrame(pCaptureNow);
int numChannels = pFirst_Frame->nChannels;
无论是彩色视频还是灰度视频,上述变量numChannels 都为3,这是为什么?如果灰度帧变成了彩色帧就没办法用处理灰度图像的函数处理彩色图像了。如何用opencv自动判断该视频是灰度视频还是彩色视频?
求各位大神给予解答,感激不尽~~~
...全文
571 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
prfans1 2015-04-02
  • 打赏
  • 举报
回复
看看三个通道是否都是一样的数据?
此后三年 2015-03-20
  • 打赏
  • 举报
回复
http://www.tuicool.com/articles/iqAJfm 这个例子中的最后一段代码, 你试试看, 按照这种方法读取出来对不对。
u012114369 2015-03-19
  • 打赏
  • 举报
回复
引用 1 楼 a30037338 的回复:
也有三通道的灰度图像, 但是三通道的灰度图像rgb值中只有一个有值, 其他都是零。 你可以判断rgb值来试试。
原灰度视频是我自己做的,用matlab读,每一帧都是单通道。可用opencv读就变成3通道的了。求解释啊
此后三年 2015-03-19
  • 打赏
  • 举报
回复
也有三通道的灰度图像, 但是三通道的灰度图像rgb值中只有一个有值, 其他都是零。 你可以判断rgb值来试试。

24,852

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧