【OpenCV实现图像:OpenCV利用Python创作热力图】

概要

热力图是一种强大的统计图表,通过对数据进行色彩映射,直观展示了数据分布的热度和密度。在绘制热力图时,关键在于指定颜色映射的规则,这决定了图中不同数值的呈现方式。通常,较大的数值以深色或偏暖的色彩表示,而较小的数值则以浅色或偏冷的色彩呈现,从而使观察者能够迅速理解数据的相对大小和趋势。

读取图像

首先,我们来读取样例图像,并对其进行相应的crop操作。
样例代码如下:


import numpy as np
import matplotlib.pyplot as plt
import skimage.io as io
img = plt.imread("img_2.png")
# crop
img_cut = img[0:400,:,:]
plt.figure
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现热力与影像叠加,可以按照以下步骤进行操作: 1. 读取影像热力数据,将热力数据转换为灰度图像。 ```python import cv2 import numpy as np # 读取影像热力数据 img = cv2.imread('image.png') heatmap = cv2.imread('heatmap.png') # 将热力数据转换为灰度图像 heatmap_gray = cv2.cvtColor(heatmap, cv2.COLOR_BGR2GRAY) ``` 2. 对热力进行归一化处理,将像素值转换到0~255的范围内。 ```python # 对热力进行归一化处理 heatmap_norm = cv2.normalize(heatmap_gray, None, 0, 255, cv2.NORM_MINMAX, cv2.CV_8U) ``` 3. 将热力叠加到影像上,并调整透明度。 ```python # 将热力叠加到影像上 heatmap_color = cv2.applyColorMap(heatmap_norm, cv2.COLORMAP_JET) result = cv2.addWeighted(img, 0.8, heatmap_color, 0.4, 0) # 显示结果 cv2.imshow('Result', result) cv2.waitKey(0) ``` 在上述代码中,`cv2.addWeighted()`函数用于将两幅图像按权重进行合并,其中第一个参数为影像,第二个参数为热力,第三个参数为影像的权重,第四个参数为热力的权重,第五个参数为合并后的亮度调整值。可以通过调整权重和亮度调整值来控制合并后的效果。 另外,`cv2.applyColorMap()`函数用于将灰度图像转换为伪彩色图像,其中`cv2.COLORMAP_JET`参数表示使用Jet伪彩色映射。您也可以选择其他伪彩色映射,如`cv2.COLORMAP_HOT`、`cv2.COLORMAP_COOL`等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值