gpt4 book ai didi

opencv - 如何混合 80x60 热图像和 640x480 RGB 图像?

转载 作者:太空宇宙 更新时间:2023-11-03 22:54:58 26 4
gpt4 key购买 nike

如何有效地混合两个图像 - 热图像 (80x60) 和 RGB(640x480)?如果我将热量缩放到 640x480,它不会均匀地放大或没有足够的质量来对其进行任何处理。任何想法都会很有帮助。

RGB 图像 - http://postimg.org/image/66f9hnaj1/

  • RGB

热图像 - http://postimg.org/image/6g1oxbm5n/

  • Thermal

最佳答案

如果将热图像的分辨率放大 8 倍并使用双线性插值,您应该会得到更平滑、 block 状更少的结果。

当组合不同分辨率的卫星图像时,(我谈论卫星图像是因为这是我的专长),您通常会使用最高分辨率的图像作为 LightnessL channel 为您提供明显的分辨率和形状细节,因为人眼擅长检测对比度,然后使用较低分辨率的图像填充HueSaturation,或 ab channel 为您提供您希望看到的颜色渐变。

因此,具体而言,我会考虑将 RGB 转换为 LabHSL 色彩空间并保留 L channel 。获取热图像并使用双线性插值将其分辨率提高 8,并将结果用作 abHS 并可能用 RGB 中方差最大的 channel 填充剩余 channel 。然后将结果转换回 RGB 以获得假彩色图像。如果没有看到图像或不知道您希望在其中找到什么,很难说清楚。但总的来说,这将是我的方法。 HTH。

注意:鉴于 Lab 色彩空间的 a 控制红/绿关系,我可能会尝试将热数据放在该 channel 中,这样它往往会显示更多红色热 channel “更热”

更新的答案

好的,现在我可以看到你的图像了,你还有几个问题......首先,图像没有对齐或对齐,彼此没有帮助 - 尝试使用三脚架;-)其次,您的 RGB 图像曝光非常差,因此它不会真正为组合图像贡献那么多细节 - 特别是在阴影中。

因此,首先,我在命令行中使用 ImageMagick 来放大热图像,如下所示:

convert thermal.png -resize 640x480 thermal.png

enter image description here

然后,我使用 Photoshop 进行了粗略的对齐/配准。如果你想尝试这个,最简单的方法是将两张图片放在同一个文档的不同图层中,并将上层的混合模式设置为Difference。然后使用移动工具(快捷键v)移动上面的图像直到屏幕变黑,这意味着细节在彼此之上,当减去它们时为零,即黑色。然后裁剪以使图像对齐并关闭一层并保存,然后重新打开该层并关闭另一层并再次保存。

现在,我再次使用 ImageMagick 将两张图片分成 Lab 层:

convert bigthermalaligned.png -colorspace Lab -separate thermal.png
convert rgbaligned.png -colorspace Lab -separate rgb.png

这给了我

thermal-0.png => L channel
thermal-1.png => a channel
thermal-2.png => b channel

rgb-0.png => L channel
rgb-1.png => a channel
rgb-2.png => b channel

现在我可以将 RGB 图像的 L channel 和热图像的 ab channel 放在一起:

convert rgba-0.png thermal-1.png thermal-2.png -normalize -set colorpsace lab -combine result.png

然后你得到了这个怪物!显然,您可以调整 channel 、色彩空间、三脚架和适当的曝光,但您应该能够看到 RGB 图像的一些细节——尤其是左边的窗帘、灯光、手机上的相机和水瓶上的标签 - 已进入最终图像。

enter image description here

关于opencv - 如何混合 80x60 热图像和 640x480 RGB 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32493861/

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