[opencv] applyColorMap
applyColorMap
功能
转化为热力图,因为热力图我们看的变化更加细微,在很多地方都用到了热力图。
最近在看CAM,所以记一记这个函数。
感觉还是很有用的。
代码
>>> import cv2 as cv
>>> import numpy as np
>>> img = cv.imread("./res.jpg")
>>> color_zero = np.zeros(shape = img.shape).astype(np.uint8)
>>> color_zero[0:50,0:50,:] = 254
>>> color_img = color_zero
>>> color_gray = cv.cvtColor(color_img,cv.COLOR_BGR2GRAY)
>>> color_app = cv.applyColorMap(color_gray,2)
>>> out = cv.addWeighted(img,0.5,color_app,0.5,0)
>>> cv.imwrite("out.jpg",out)
True
一般需要img为灰度图,然后根据灰度图亮度的大小转化为热力图。
函数参数
| Enumerator | |
|---|---|
| COLORMAP_AUTUMN Python: cv.COLORMAP_AUTUMN | autumn |
| COLORMAP_BONE Python: cv.COLORMAP_BONE | bone |
| COLORMAP_JET Python: cv.COLORMAP_JET | jet |
| COLORMAP_WINTER Python: cv.COLORMAP_WINTER | winter |
| COLORMAP_RAINBOW Python: cv.COLORMAP_RAINBOW | rainbow |
| COLORMAP_OCEAN Python: cv.COLORMAP_OCEAN | ocean |
| COLORMAP_SUMMER Python: cv.COLORMAP_SUMMER | summer |
| COLORMAP_SPRING Python: cv.COLORMAP_SPRING | spring |
| COLORMAP_COOL Python: cv.COLORMAP_COOL | cool |
| COLORMAP_HSV Python: cv.COLORMAP_HSV | HSV |
| COLORMAP_PINK Python: cv.COLORMAP_PINK | pink |
| COLORMAP_HOT Python: cv.COLORMAP_HOT | hot |
| COLORMAP_PARULA Python: cv.COLORMAP_PARULA | parula |
| COLORMAP_MAGMA Python: cv.COLORMAP_MAGMA | magma |
| COLORMAP_INFERNO Python: cv.COLORMAP_INFERNO | inferno |
| COLORMAP_PLASMA Python: cv.COLORMAP_PLASMA | plasma |
| COLORMAP_VIRIDIS Python: cv.COLORMAP_VIRIDIS | viridis |
| COLORMAP_CIVIDIS Python: cv.COLORMAP_CIVIDIS | cividis |
| COLORMAP_TWILIGHT Python: cv.COLORMAP_TWILIGHT | twilight |
| COLORMAP_TWILIGHT_SHIFTED Python: cv.COLORMAP_TWILIGHT_SHIFTED | twilight shifted |
官网API
| Python: | |||||
|---|---|---|---|---|---|
| dst | = | cv.applyColorMap( | src, colormap[, dst] | ) | |
| dst | = | cv.applyColorMap( | src, userColor[, dst] | ) |
Parameters
| src | The source image, grayscale or colored of type CV_8UC1 or CV_8UC3. |
|---|---|
| dst | The result is the colormapped source image. Note: Mat::create is called on dst. |
| userColor | The colormap to apply of type CV_8UC1 or CV_8UC3 and size 256 |
| Python: | |||||
|---|---|---|---|---|---|
| dst | = | cv.applyColorMap( | src, colormap[, dst] | ) | |
| dst | = | cv.applyColorMap( | src, userColor[, dst] | ) |
Parameters
| src | The source image, grayscale or colored of type CV_8UC1 or CV_8UC3. |
|---|---|
| dst | The result is the colormapped source image. Note: Mat::create is called on dst. |
| colormap | The colormap to apply, see ColormapTypes |
[opencv] applyColorMap的更多相关文章
- applyColorMap 在OpenCV中对灰度图进行颜色映射,实现数据的色彩化
什么是色彩映射: 说直白点就是将各种数据映射成颜色信息,例如:温度,高度,压力,密度,湿度,城市拥堵数据等等 色彩化后更加直观表达 在OpenCV里可以使用 Mat im_gray = imread( ...
- OpenCV人脸识别Eigen算法源码分析
1 理论基础 学习Eigen人脸识别算法需要了解一下它用到的几个理论基础,现总结如下: 1.1 协方差矩阵 首先需要了解一下公式: 共公式可以看出:均值描述的是样本集合的平均值,而标准差描述的则是样本 ...
- opencv 61篇
(一)--安装配置.第一个程序 标签: imagebuildincludeinputpathcmd 2011-10-21 16:16 41132人阅读 评论(50) 收藏 举报 分类: OpenCV ...
- opencv学习之路(40)、人脸识别算法——EigenFace、FisherFace、LBPH
一.人脸识别算法之特征脸方法(Eigenface) 1.原理介绍及数据收集 特征脸方法主要是基于PCA降维实现. 详细介绍和主要思想可以参考 http://blog.csdn.net/u0100066 ...
- applyColorMap()研究(如果我对现有的colormap不满意,那么如何具体来做)
cv::applyColorMap()能够实现预定义的伪彩色,这个是众所周知的事情. 并且和matlab提供的很相近 除了这些预置的变换,如果我想实现新的变换,需要做LUT变换 cv::Mat ...
- 使用OpenCV进行人脸识别
不断维护的地址:http://plzcoding.com/face-recognition-with-opencv/ 怎样使用OpenCV进行人脸识别 本文大部分来自OpenCV官网上的Face Re ...
- opencv中图像伪彩色处理(C++ / Python)
使用OpenCV的预定义的颜色映射来将灰度图像伪彩色化. 1. colormap(色度图)是什么? 假设我们想在地图上显示美国不同地区的温度.我们可以把美国地图上的温度数据叠加为灰度图像——较暗的区域 ...
- OpenCV学习(38) 人脸识别(3)
前面我们学习了基于特征脸的人脸识别,现在我们学习一下基于Fisher脸的人脸识别,Fisher人脸识别基于LDA(线性判别算法)算法,算法的详细介绍可以参考下面两篇教程内容: ...
- OpenCV学习(36) 人脸识别(1)
本文主要参考OpenCV人脸识别教程:http://docs.opencv.org/modules/contrib/doc/facerec/facerec_tutorial.html 1.OpenCV ...
随机推荐
- HDU - 5950 Recursive sequence(二项式+矩阵合并+矩阵快速幂)
Recursive sequence Farmer John likes to play mathematics games with his N cows. Recently, they are a ...
- 求斐波那契数列第n位的几种实现方式及性能对比(c#语言)
在每一种编程语言里,斐波那契数列的计算方式都是一个经典的话题.它可能有很多种计算方式,例如:递归.迭代.数学公式.哪种算法最容易理解,哪种算法是性能最好的呢? 这里给大家分享一下我对它的研究和总结:下 ...
- Git 时光穿梭鸡 管理修改
Git跟踪并管理的是修改,而非文件. 什么是修改? 比如你新增了一行,这就是一个修改, 删除了一行,也是一个修改, 更改了某些字符,也是一个修改, 删了一些又加了一些,也是一个修改, 甚至创建一个新文 ...
- SPOJ IAPCR2F 【并查集】
思路: 利用并查集/DFS都可以处理连通问题. PS:注意Find()查找值和pre[]值的区别. #include<bits/stdc++.h> using namespace std; ...
- linux文件重命名
rename 命令用字符串替换的方式批量改变文件名. 语法 rename(参数) 参数 原字符串:将文件名需要替换的字符串: 目标字符串:将文件名中含有的原字符替换成目标字符串: 文件:指定要改变文件 ...
- Selenium IDE + Firefox
又掉进了同一个坑了,最新firefox版本和selenium ide不兼容,工具栏愣是找不到selenium ide的button,换成firefox5.0就好了 selenium用的版本是2.5. ...
- 关于HTML5画布canvas的功能
一.画布的使用 1.首先创建一个画布(canvas) <canvas id=”myCanvas” width=”200” height=”100” style=”border:1px solid ...
- 关于spring mvc的配置文件
1. Web.xml <!--配置页面控制器--> <servlet> <servlet-name>spring</servlet-name> < ...
- Hibernate5 四种数据源配置
1.需要知道的: DBCP在hibernate3中以及不再被支持了,由于作者提出过bug,后续版本没有加入对其的支持. 推荐使用proxool,负面新闻最少的连接池 下面的图显示了,Hibernate ...
- 18.存储过程--SQL
好文要顶: sQL存储过程的优缺点 SQL Server 存储过程 一.创建.使用存储过程 Oracle版本: CREATE PROCEDURE MailingListCount ( ListCoun ...
autumn
bone
jet
winter
rainbow
ocean
summer
spring
cool
HSV
pink
hot
parula
magma
inferno
plasma
viridis
cividis
twilight
twilight shifted