0

我正在尝试在 python 中合并天文摄影图像。目前我有一个问题,当导出具有不同库的图像时,图像的色调与原始图像不同。导入的图像为 .nef 格式。

编码:

import matplotlib.pyplot as plt
import numpy as np
import cv2
from scipy import misc
import rawpy
from PIL import Image
import imageio

raw=rawpy.imread("DSC_5817.NEF")

#raw=rawpy.imread("images/1/slika1.cr2")
rgb=raw.postprocess(no_auto_bright=True)

outfn=".tif"

img=Image.fromarray(rgb)



img.convert("RGB")


img.save("probaPIL"+outfn)
#
cv2.imwrite("progaCV2"+outfn, rgb)

misc.imsave("probaSCipi"+outfn, rgb)
#
imageio.imsave("probaIMAGEIO"+outfn, rgb)

plt.imsave("probaPLT.tif",rgb )

slika=plt.imread("probaPIL.tif")

输出截图(上中图为原始 nef 文件)

4

1 回答 1

1

OpenCV ( cv2) 需要不同的通道顺序 (BGR),这就是为什么其中的颜色与其他颜色相比是关闭的。

一般来说,没有单一的方法可以对 RAW 相机图像进行后处理,结果通常取决于个人喜好,例如白平衡、亮度调整等。您在顶部中间栏中所指的“原始”只是另一种可能创建的后处理变体通过一些尼康驱动程序,它更了解 RAW 图像文件中的某些元数据,并试图给你一些你“期望”的东西。rawpy(或者更确切地说,底层libraw库)不会复制制造商后处理的确切行为,因为这或多或少是一个商业秘密。

对于天文摄影,无论如何您可能都擅长灰度图像,但这实际上取决于您的用例和您想要实现的目标。

于 2018-02-22T19:17:20.217 回答