当读取RGB像素值的图像时

我想从图像中获取RGB的像素值。我在Matlab和Python中做过,但我获得了不同的值,尤其是绿色值。如果你对此事有什么建议,我将不胜感激。谢谢这是我的python代码

选择 | 换行 | 行号
  1. from PIL import Image
  2. import numpy as np
  3.  
  4. im = Image.open("lena.jpg")
  5. imPixelVal = np.ones(np.size(im))
  6. imSize = np.size(im)
  7.  
  8. for i in range (0,imSize[0]):
  9.             for j in range (0,imSize[1]):         
  10.                 ij = i , j
  11.                 p = im.getpixel(ij)
  12.                 imPixelVal[i,j] = (0.2989 * p[0]) + (0.5870 * p[1]) + (0.1140 * p[2])
  13.                 print p[0]
  14.                 print p[1] 
  15.                 print p[2]
  16.  

这也是Matlab中的代码:

选择 | 换行 | 行号
  1. Im=imread('lena.jpg');
  2. Img = (ones(size(Im,1),size(Im,2))); 
  3.  
  4. for i=1:size(Im,1)
  5.       for j=1:size(Im,2)
  6.                 Img(i,j)=0.2989*Im(i,j,1)+0.5870*Im(i,j,2)+0.1140*Im(i,j,3);
  7.       end
  8. end
  9. Im(1,1,1)
  10. Im(1,1,2)
  11. Im(1,1,3)

标签: python

添加新评论