现对一副名字为rice.bmp(figure1)(灰度图)的图像做实验,如图可知

1:matlab是从1开始读取行、列,Opencv是从0开始读取。Console中显示的第五行,是由        

               printf("%d行,%d列:value:%d\n",i+1,j+1, ptr[j+0]);

这个语句处理过的,显示为“第五行”,实则i equals 4

2:matlab和Opencv对灰度图的读取,值是一样的(figure2)

OpenCv和matlab对图像的读取

figure1

OpenCv和matlab对图像的读取

figure2

接下来,我们换成一张彩色图:flower.bmp(figure3)再来看看,是否两个程序读取的还是一样的:

OpenCv和matlab对图像的读取

figure3

下面(figure4)就是读取g通道的结果:显然读取值不他一样

OpenCv和matlab对图像的读取

figure4

接下来再做一步试验:把flower.bmp分别用Opencv的cvCvtColor(pOldImg1,dst,CV_BGR2GRAY)和Matlab的igray = rgb2gray(img)函数将图片转换为灰度,看看会不会有什么偏差。事实证明(figure5),转化为灰度图之后,两张图片的数据又变的一样了。

OpenCv和matlab对图像的读取

figure5

相关文章:

  • 2021-10-10
  • 2022-12-23
  • 2021-10-11
  • 2021-12-27
  • 2021-05-16
  • 2022-12-23
  • 2022-12-23
  • 2021-04-20
猜你喜欢
  • 2021-11-02
  • 2021-11-01
  • 2021-12-01
  • 2021-12-05
  • 2022-12-23
  • 2021-08-08
  • 2022-12-23
相关资源
相似解决方案