Evilxs 2023-03-07 09:32 采纳率: 100%
浏览 74
已结题

ENVI实现热成像与可见光图像融合

img


温度点生成的图像与可见光配准是不是可以理解为拍的热成像与可见光的配准
在ENVI里波段叠加和图像融合怎么实现以及生成带温度值的灰度图像

  • 写回答

6条回答 默认 最新

  • 极客智能体-在线 2023-03-07 18:27
    关注

    以下答案由GPT-3.5大模型与博主波罗歌共同编写:
    热成像与可见光图像融合温度点生成的图像与可见光配准在ENVI中一般可以通过以下步骤实现:

    1. 将热成像图像和可见光图像导入ENVI软件中,并进行配准。一般可使用ENVI中的图像配准工具实现。配准后,两个图像可以经过坐标变换实现重合。

    2. 对热成像图像进行温度点生成,即根据热成像图像中每个像素的温度值,在对应的位置生成一个灰度值与温度呈线性关系的灰度点,并将其添加到热成像图像中。

    3. 将热成像图像和可见光图像进行波段叠加,可以实现两幅图像的有机融合。ENVI中提供了多种波段叠加方法,如简单加权平均法,比例混合法等。

    4. 对波段叠加后的图像进行温度色彩表设定,可以生成带温度值的灰度图像。ENVI中提供了多种色彩表,如自定义色彩表,渐变色彩表等。

    下面是可能的Python代码实现:

    from spectral import *
    import numpy as np
    
    # 导入热成像和可见光图像
    thermal_image = envi.open('thermal_image.hdr', 'thermal_image.raw')
    visible_image = envi.open('visible_image.hdr', 'visible_image.raw')
    
    # 图像配准
    thermal_image = thermal_image[visible_image.geo].astype(np.float32)
    
    # 获取温度点坐标和温度值
    thermal_data = thermal_image.load()
    temp_points = []
    for i in range(thermal_image.shape[0]):
        for j in range(thermal_image.shape[1]):
            temp = thermal_data[i, j]
            if temp != 0:
                temp_points.append([i, j, temp])
    
    # 在热成像图像中添加温度点
    for point in temp_points:
        i, j, temp = point
        thermal_data[int(i), int(j)] = temp
    
    # 波段叠加
    merged_image = thermal_image + visible_image
    
    # 温度色彩表设定
    merged_image.set_display_mode('overlay')
    merged_image.set_colormap_colors(['black', 'red', 'yellow', 'white'])
    merged_image.set_colormap_range(0, 100)
    
    # 显示图像
    view = imshow(merged_image)
    

    这段代码实现了热成像图像和可见光图像的配准,温度点的生成,波段叠加和温度色彩表设定,并通过spectral库的imshow函数显示出生成的灰度图像。其中,'thermal_image.hdr'和'visible_image.hdr'是ENVI格式的图像文件,代码中读入并进行相应的处理。波段叠加和温度色彩表设定则可以通过设置ENVI对象的属性实现。
    如果我的回答解决了您的问题,请采纳!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 3月16日
  • 已采纳回答 3月8日
  • 创建了问题 3月7日

悬赏问题

  • ¥40 如果update 一个列名为参数的value
  • ¥15 基于51单片机的水位检测系统设计中LCD1602一直不显示
  • ¥15 OCS2安装出现问题,请大家给点意见
  • ¥15 ros小车启动launch文件报错
  • ¥15 vs2015到期想登陆但是登陆不上
  • ¥15 IPQ5018制作烧录固件,boot运行失败(操作系统-linux)(相关搜索:操作系统)(相关搜索:操作系统)
  • ¥20 icefall在librispeech基础上加入个人数据集
  • ¥30 keepalive高可用故障运维配置询问
  • ¥15 求帮助!国家电网内网u盘突然识别不出来了。
  • ¥15 matlab语音变速变调同时实现