灰度图的伪彩映射[python]

彩色处理(pseudocoloring)是指根据一定准则给灰度值赋予彩色值的处理。宏观来说就是将黑白图像转化为彩色图像,或者是将单色图像变换成给定彩色分布的图像。由于人眼对彩色的分辨能力远远高于对灰度的分辨能力,所以将灰度图像转化成彩色表示,就可以提高对图像细节的辨别力。因此,伪彩色处理的主要目的是提高人眼对图像的细节分辨能力,以达到图像增强的目的。[1]

基本原理是将黑白图像或者单色图像的各个灰度级匹配到彩色空间中的一点,从而使单色图像映射成彩色图像。

有个简单的代码:

import cv2
 
im_gray = cv2.imread("H:/gdal/rs-data/result/ndvi.jpg", cv2.IMREAD_GRAYSCALE)
im_color = cv2.applyColorMap(im_gray, cv2.COLORMAP_JET)
cv2.imwrite('H:/gdal/rs-data/result/ndvi_color.jpg',im_color)

这里我们还可以将JET替换成其他的colormap,这里opencv[2]提供了其他很多不同的颜色变化:

Python: cv.COLORMAP_AUTUMN                                                                                         

colorscale_autumn.jpg

Python: cv.COLORMAP_BONE                                                                                               

colorscale_bone.jpg

Python: cv.COLORMAP_JET                                                                                                   

colorscale_jet.jpg

Python: cv.COLORMAP_WINTER                                                                                           

colorscale_winter.jpg

Python: cv.COLORMAP_RAINBOW                                                                                        

colorscale_rainbow.jpg

Python: cv.COLORMAP_OCEAN                                                                                            

colorscale_ocean.jpg

等等

 

人类感知不是为了观察灰度图像的细微变化而构建的。 人眼对观察颜色之间的变化更为敏感,因此你通常需要重新着色灰度图像以获取有关它们的线索。

部分结果展示:

 

 

[1] 伪彩色处理-百度百科https://baike.baidu.com/item/%E4%BC%AA%E5%BD%A9%E8%89%B2%E5%A4%84%E7%90%86/22235777?fr=aladdin

[2] ColorMaps in OpenCV

https://docs.opencv.org/3.4/d3/d50/group__imgproc__colormap.html

 

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...