【问题标题】:Python RAW Image strange Checkered PatternPython RAW 图像奇怪的方格图案
【发布时间】:2017-07-31 20:40:47
【问题描述】:

使用以下python读取并显示(灰度)RAW图像:

import numpy as np
import matplotlib.pyplot as plt
path = 'path\\to\\where\\image\\is\\downloaded'
f = open(path,'rb')
height = 2500
width = 1000
bin_image = np.fromstring(f.read(), dtype=np.uint16)
bin_image.shape = (height, width)
plt.imshow(bin_image)
plt.show(block=True)

我可以找到bayer (RAW) 数据的链接 here bin_image.txt

结果是这张带有奇怪方格图案的图像:

我不确定是什么原因造成的?

【问题讨论】:

  • 您要显示的图像是什么?!可以发一下原图吗?
  • 你需要展示一个最小的、完整的、可验证的例子。这意味着有足够的代码可以实际运行以及任何必要的支持材料,例如图像。
  • 当您说“RAW”图像时,您是指来自传感器的原始(未调整、未补偿)图像,就像某些相机可以做到的那样?如果是这样,您可能需要调整/补偿。你尝试过非 RAW 图片捕捉,看起来还可以吗?
  • 这看起来像一个拜耳图像,被视为只是灰度并以假彩色显示。
  • 我没有投反对票。我提出了先改进问题的建议,如果没有得到改进,以后可能会考虑否决。

标签: python image opencv image-processing


【解决方案1】:

Bayer 图像不像常规 RGB 图像,其中每个像素都有一些红色、绿色和蓝色分量。相反,拜耳图像在每个像素位置具有不同强度的奇异红色、绿色或蓝色值。这在许多传感器上很常见,因此每个像素都可以捕获特定波长的光。 Wikipedia entry on Bayer filters 可能会有所帮助。

首先,您必须对图像进行de-Bayer,即将这些值插入到 RGB,然后您可以将其转换为灰度以进行显示。这有 OpenCV 标签,所以假设您使用的是 OpenCV,您可以使用 cv2.cvtColor() 完成这两个步骤:

import numpy as np
import matplotlib.pyplot as plt
import cv2

path = 'bin_image.txt'
f = open(path,'rb')
height = 2500
width = 1000
bin_image = np.fromstring(f.read(), dtype=np.uint16)
bin_image.shape = (height, width)
bin_image = cv2.cvtColor(bin_image, cv2.COLOR_BayerBG2RGB)
bin_image = cv2.cvtColor(bin_image, cv2.COLOR_RGB2GRAY)
plt.imshow(bin_image, cmap='gray')
plt.show(block=True)

典型的拜耳图像有三种不同的顺序;在 OpenCV 中,它们被列为 BayerBG(最常见)、BayerRGBayerGR。您应该弄清楚原始图像存储在哪种模式中以获得最佳效果。

【讨论】:

  • 谢谢。这正是我想要的。
  • 请您指出如何使用我拥有的 colorMatrices 为图像着色的正确方向?
  • 不确定你的意思,你的“颜色矩阵”是什么?使用matplotlib,您可以创建不同的颜色图来将灰度值映射到其他颜色。有关示例,请参阅here。您只需更改我拥有cmap='gray' 的行。如果这不是您的意思,您需要更具体。
  • 我的意思是这样的stackoverflow.com/questions/35167381/…。我有颜色矩阵,但到目前为止只绘制了 RAW 灰度数据。我会应用这个:/*颜色矩阵 Red:RGB;绿色:RGB;蓝色:RGB 1.8786 -0.8786 0.0061 -0.2277 1.5779 -0.3313 0.0393 -0.6964 1.6321 */
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-29
  • 2011-11-06
  • 2012-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-07
相关资源
最近更新 更多