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

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日

悬赏问题

  • ¥20 搭建三相栅极电路后高侧浮动地VS存在电容特性
  • ¥20 云卓h12pro 数传问题
  • ¥20 请问有人知道怎么用工艺库里面的sdb文件通过virtuoso导出来library里面每个cell的symbol吗?
  • ¥20 海思 nnie 编译 报错
  • ¥50 决策面并仿真,要求有仿真结果图
  • ¥15 关于路由器的路由协议配置
  • ¥15 springboot接入微信支付SDK
  • ¥50 大区域的遥感影像匹配 怎么做啊
  • ¥15 求解答:pytorch跑yolov8神经网络受挫
  • ¥20 Js代码报错问题不知道怎么解决