gpt4 book ai didi

python - 在 Python 中将 12 位灰度图像转换为每 channel 8 位彩色图像

转载 作者:行者123 更新时间:2023-12-03 20:40:51 24 4
gpt4 key购买 nike

我正在寻找在 Python 中将 12 位 (0-4096) 灰度图像转换为 3 channel 8 位彩色图像以便将其传递到卷积神经网络方面的建议或最佳实践。
使用 8 位 RGB,我基本上有 24 位颜色,所以我认为没有理由在转换中丢失数据,尽管大多数其他帖子建议简单地将像素值除以 16 以便将其压缩为 8 位然后复制这以有损方式覆盖所有三个 channel 。
我想出的一些想法包括创建某种渐变函数,将 12 位 uint 转换为渐变上的相应颜色,但我对 RGB 颜色空间的理解是,使用 Numpy 或其他类似的实现会很棘手图书馆。
OpenCV/Scikit 等常用库是否提供这种功能?我在文档中找不到任何内容。其他想法包括使用某种中间色彩空间,例如 HSL/L*AB,但我对此知之甚少。
请注意,我最终试图创建一个 8 位 RGB 图像,而不是 16 位 RGB 图像。只需尝试以在整个颜色范围内保留原始 12 位数据的方式对灰度图像进行着色。
希望有人能帮忙!

最佳答案

我的第一个问题是:为什么需要以任何特定方式将其转换为颜色?
如果您在这些图像上训练 CNN,则任何任意转换都应该有效并为您提供类似的性能。您只需要以相同的方式转换训练图像和输入图像。
您可能只需拆分 16 位并将下半部分放在 R 中,将上半部分放在 G 中,并将 B 保留为零。
这有点取决于这个 CNN 的黑盒程度。但是您始终可以通过使用我上面提到的转换运行几个训练/测试周期来测试这一点,然后使用“压缩”版本再次执行此操作。

关于python - 在 Python 中将 12 位灰度图像转换为每 channel 8 位彩色图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67188037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com