【问题标题】:Grayscale conversion algorithm of OpenCV's imread()OpenCV的imread()的灰度转换算法
【发布时间】:2015-04-10 20:33:12
【问题描述】:

OpenCV的什么灰度转换算法

cv::imread("image.jpg", cv::IMREAD_GRAYSCALE);

使用?

【问题讨论】:

  • 您可以通过将其与您首先以颜色样式加载然后将其转换为灰度的样式进行比较来轻松地自己测试它。
  • 它和CV_BGR2GRAY有什么不同吗?
  • @a-jays 可能不会,但你永远不知道……
  • 请张贴你找到的东西。
  • 有点晚了,不过是????=0.299R+0.587G+0.114B

标签: opencv grayscale


【解决方案1】:

在 OpenCV 3.0 中:

  • cv::IMREAD_COLOR:图像被cv::JpegDecoder解压为JCS_RGB(三通道图像),然后icvCvt_RGB2BGR_8u_C3R()函数将红色和蓝色通道交换以获得BGR格式。
  • cv::IMREAD_GRAYSCALE:图像由cv::JpegDecoder解压缩为JCS_GRAYSCALE(单通道图像),颜色转换和其他预处理/后处理的所有细节由libjpeg处理。最后,将解压后的数据复制到给定cv::Mat的内部缓冲区中。

Ergo no cv::cvtColor() 在将图像读取为cv::IMREAD_GRAYSCALE 后被调用。

【讨论】:

  • 感谢您的澄清!现在我们只需要弄清楚libjpeg的转换算法。 =P
猜你喜欢
  • 2013-10-11
  • 2016-09-09
  • 2011-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-19
  • 1970-01-01
  • 2017-08-26
相关资源
最近更新 更多