文章目录
前言
数据可视化的颜色映射方法在热成像、仿真模拟等诸多地方均有应用,但官方预设方案有时候和实际应用中想要的结果差异较大,常常需要自己设定想要的方案来实现;目前没有看到有人在Python中用不同库及自定义映射方案来做颜色映射效果的相关文章,遂整理记录分享下相关方法。
一、什么是颜色映射?
颜色映射(Color Mapping)是一种将数据映射到颜色空间的技术,常用于数据可视化中;通过将不同范围的数据值映射到特定的颜色,我们可以更直观地观察和理解数据的分布和特征;在编程中,颜色映射通常用于创建热力图、等高线图、伪彩色图像等。
二、OpenCV中颜色预设方案
1.引入库并获取预设方案
代码如下:
import cv2
colormaps = [attr for attr in dir(cv2) if attr.startswith('COLORMAP_')]
print(colormaps)
结果(共有22种预设方案):
['COLORMAP_AUTUMN', 'COLORMAP_BONE', 'COLORMAP_CIVIDIS',
'COLORMAP_COOL', 'COLORMAP_DEEPGREEN', 'COLORMAP_HOT',
'COLORMAP_HSV', 'COLORMAP_INFERNO', 'COLORMAP_JET',
'COLORMAP_MAGMA', 'COLORMAP_OCEAN', 'COLORMAP_PARULA',
'COLORMAP_PINK', 'COLORMAP_PLASMA', 'COLORMAP_RAINBOW',
'COLORMAP_SPRING', 'COLORMAP_SUMMER', 'COLORMAP_TURBO',
'COLORMAP_TWILIGHT', 'COLORMAP_TWILIGHT_SHIFTED','COLORMAP_VIRIDIS',
'COLORMAP_WINTER']
2.官方方案展示
2.1读取图片
# 读取一张渐变图并转换为灰度图像
img = cv2.imread('D:\ColorMaptest.bmp')
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
2.2效果展示
代码:
#创建一个figure来展示所有colormap的效果
import matplotlib.pyplot as plt
fig, axs = plt.subplots(len(colormaps) //