光谱图像的可视化

高光谱图像具有较高的光谱维度,无法像RGB图像一样直接进行可视化。
imgvision库用于进行图像处理与质量评价。该库仅基于Numpy库进行编写,通过矩阵的方式对图像进行快速处理,包括不限于光谱图像的不同光源下颜色空间转换、RGB图像不同光源下的色空间转换、光谱图像余弦距离的监督聚类、图像的质量评价等。

安装imgvision 1.7.0

imgvision 通过pip直接进行安装:

pip install imgvision

相比较1.6.5,新版本重写架构,提升了光谱图像转换速度。此外还支持将光谱图像转换为NiKon D700 相机下的RGB图像。其他参数与函数使用方法未发生变化。

高光谱图像可视化

imgvision.spectra( )将进行快速的高光谱图像可视化。

import imgvision as iv
import numpy as np
import matplotlib.pyplot as plt
#导入高光谱图像
HSI = np.load('Hyperspectral_Image.npy')
print(HSI.shape)
#(512,512,31)  该光谱图像是 空间维度512×512,光谱维度31(400nm~700nm 10nm间隔)#光谱图像的RGB显示    #创建转换器
convertor = iv.spectra()#RGB图像转换
RGB = convertor.space(HSI)# RGB图像显示
plt.imshow(RGB)
plt.show()

以上案例详细参数为,400nm~700nm 间隔10nm的高光谱图像在D65光源下AdobeRGB展示结果。如果需要对其他波段范围,其他间隔的高光谱图像,在不同光源下的不同颜色空间展示,下面的案例将详细阐述。以下案例将展示如何将一张任意波段范围以及波段间隔的高光谱图像转换至不同光源下不同颜色空间的影响操作

import imgvision as iv
import numpy as np
import matplotlib.pyplot as plt
#导入高光谱图像
HSI = np.load('Hyperspectral_Image2.npy')
print(HSI.shape)
#(225,246,87)  该光谱图像是 空间维度225×246,光谱维度87(370nm~800nm 间隔5nm)#光谱图像的RGB显示 #创建转换器   illuminant='D50'表示D50下显示。支持光源包括A/B/C/D50~75,以及自定义光源#band 为波段参数,如370~800nm.间隔5nm 即 band = np.arange(370,805,5); 若370~702nm.间隔4nm 即 band = np.arange(370,706,4)
convertor = iv.spectra(illuminant='D50',band = np.arange(370,805,5))#RGB图像转换 若展示sRGB则space='srgb';若展示XYZ图像,则space='xyz';若展示NikonD700相机的显示结果,则space='nkd700'. 注意nkd700下的RGB未经过Gamma校正。
Image = convertor.space(HSI,space='srgb')# 图像显示
plt.imshow(Image)
plt.show()

Python高光谱图像可视化展示相关推荐

  1. 高光谱图像可视化增强matlab

    高光谱图像可视化 视觉增强matlab函数 function I=rsshow(I, scale)if nargin==1scale=0.005;endI = double(I);for i = 1: ...

  2. python爬虫+Flask可视化展示

    python爬虫+Flask可视化展示 废话不多说直接上代码,详细解释,让小白也能操作 爬虫部分(含有json请求返回的价格,销售量,好评率,评论等) 爬去某东笔记本电脑920页,每页60条自己算 # ...

  3. Python实现函数可视化--快捷显示数学函数图像的轻量级工具制作教程

    Python函数可视化工具 目录 1.简介 对于如今的中学生乃至大学生,只要接触到数学相关内容的,就必然离不开函数这一"生死大关".为什么说是生死大关呢?实在是函数类问题太令人头疼 ...

  4. Python使用matplotlib可视化多个不同颜色的折线图、通过FontProperties为可视化图像配置中文字体可视化、并指定字体大小

    Python使用matplotlib可视化多个不同颜色的折线图.通过FontProperties为可视化图像配置中文字体可视化.并指定字体大小 目录

  5. Python使用matplotlib可视化气泡图、并使用encircle函数自定义多边形圈定可视化图像中的指定区域(Bubble plot with Encircling)

    Python使用matplotlib可视化气泡图.并使用encircle函数自定义多边形圈定可视化图像中的指定区域(Bubble plot with Encircling) 目录

  6. Python使用matplotlib可视化散点图、并在可视化图像的底部和右边添加边缘直方图、自定义边缘直方图的色彩(Marginal Histogram)

    Python使用matplotlib可视化散点图.并在可视化图像的底部和右边添加边缘直方图.自定义边缘直方图的色彩(Marginal Histogram) 目录

  7. Python使用matplotlib可视化多个时间序列数据、在同一个可视化图像中可视化多个时间序列数据(Multiple Time Series)

    Python使用matplotlib可视化多个时间序列数据.在同一个可视化图像中可视化多个时间序列数据(Multiple Time Series) 目录

  8. python使用matplotlib可视化、使用matplotlib可视化scipy.misc图像、自定义使用grey灰色映射、将不同亮度映射到不同的色彩、并添加颜色标尺

    python使用matplotlib可视化.使用matplotlib可视化scipy.misc图像.自定义使用grey灰色映射.将不同亮度映射到不同的色彩.并添加颜色标尺 目录

  9. python使用matplotlib可视化、使用rcParams参数调整可视化图像中线条宽度、线条类型、文本字体、字体大小、字体颜色、字体类型、文本颜色等

    python使用matplotlib可视化.使用rcParams参数调整可视化图像中线条宽度.线条类型.文本字体.字体大小.字体颜色.字体类型.文本颜色等 目录

最新文章

  1. 2019腾讯广告算法大赛-冠军之路
  2. Fvwm-背景图片设置三法
  3. 前端必备,Adobe Premiere Pro 常用快捷键
  4. linux设置nexus开机自启动_CentOS7配置nexus开机自启动
  5. 高可用架构-- MySQL主从复制的配置
  6. 在您的Maven-Fu包中增加了一些东西
  7. Android设计模式之——状态模式
  8. Kafka : kafka无法消费的情况
  9. log4j控制日志的输出文件
  10. 【证明】【一题多解】【等价转换】—— 排列组合的计算
  11. iOS开发特效源码:swift轮播图导航渐变跑马灯分段选择下拉菜单物流时间轴
  12. jmeter录制脚本后请求太多_使用Jmeter录制web脚本
  13. my97日期范围限制
  14. 准确率(accuracy)、精确率(Precision)、召回率(Recall)
  15. FTP虚拟用户(转发)
  16. 是时候拥抱ViewBinding了~
  17. c语言逗号分隔字符串,[数字用逗号隔开怎么读]看到一个数字中间有逗号
  18. 狂妄之人计算机音乐,Undertale音乐 MEGALOVANIA 狂妄之人
  19. python编码的种类以及转换以及bytes数据类型的介绍
  20. 和中国移动对接短信平台

热门文章

  1. 星起航:抖音正在快速分割传统电商平台的市场份额
  2. 基础类与基础算法学习
  3. 完美陌生人百度云资源
  4. 微商如何通过喜马拉雅引流?首先要明白引流的目的是什么?
  5. android HDMI (一):HDMI基础篇
  6. 用友增资致远1200万 国内最大OA厂商发布新品
  7. 和谐平等_并非所有观点都是平等的
  8. 如何屏蔽博客园中的Google广告
  9. apache安装错误error: APR notfound解决办法
  10. 【java毕业设计】基于java+tomcat+jsp的威客网站设计与实现(毕业论文+程序源码)——威客网站