matlab热度图确定色标_C++实现类似Matlab的colormap Jet(灰度图生成彩色热度图)

Matlab使用colormap Jet 可以将灰度图像生成彩色的热度图,灰度值越高,色彩偏向暖色调。相反亦然。

// ColorMap.h

#ifndef COLORMAP_H

#define COLORMAP_H

class colormap

{

public:

static void GroundColorMix(BYTE* color, double x, double min, double max);

static void Convert2Colormap(BYTE* Image, int *imSize);

};

#endif

//ColorMap.cpp

#include "ColorMap.h"

#define BChannel 2

#define GChannel 1

#define RChannel 0

void colormap::GroundColorMix(BYTE* color, double x, double min, double max)

{

double posSlope = (max-min)/60;

double negSlope = (min-max)/60;

if( x < 60 )

{

color[RChannel] = max;

color[GChannel] = posSlope*x+min;

color[BChannel] = min;

return;

}

else if ( x < 120 )

{

color[RChannel] = negSlope*x+2*max+min;

color[GChannel] = max;

color[BChannel] = min;

return;

}

else if ( x < 180 )

{

color[RChannel] = min;

color[GChannel] = max;

color[BChannel] = posSlope*x-2*max+min;

return;

}

else if ( x < 240 )

{

color[RChannel] = min;

color[GChannel] = negSlope*x+4*max+min;

color[BChannel] = max;

return;

}

else if ( x < 300 )

{

color[RChannel] = posSlope*x-4*max+min;

color[GChannel] = min;

color[BChannel] = max;

return;

}

else

{

color[RChannel] = max;

color[GChannel] = min;

color[2] = negSlope*x+6*max;

return;

}

}

void colormap::Convert2Colormap(BYTE* Image, int *imSize)

//Image为三通道的灰度图像,R=G=B

{

const int stride = imSize[1]*imSize[2];

const int height = imSize[0];

const int width = imSize[1];

for (int i=0; i

{

BYTE *rowIndex = &Image[i*stride];

for (int j=0; j

{

GroundColorMix(&rowIndex[j],rowIndex[j],0.0,255.0);

}

}

}

#undef BChannel

#undef GChannel

#undef RChannel

结果图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/505713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 监听 扫描枪,jquery监听扫码枪获得值

客户一直说 扫码枪要一直获得焦点才能用&#xff0c;用户体验差 &#xff0c;想做一个 在这个页面 有没有焦点都要获得到值&#xff0c;想了一下 只有用监听的方式了// 写一个监听扫描枪 事件的方法var code ‘‘;var lastTime 0;// 清空临时变量function clearCode() {code …

arcgis标注牵引线_解析ArcGis的标注(三)——标注的放置 与 转注记修改

该“标注”系列博文的标注引擎使用“标准标注引擎(standard label engine)”&#xff0c;这个概念如不知道&#xff0c;可不理会&#xff0c;ArcGis默认标注引擎就是它。写着写着发现ArcGis标注的破事儿好多啊&#xff0c;要想写得自己能看懂着实得费把力气&#xff0c;好想弃坑…

php 上传文件简单实例,php文件上传的简单实例

复制代码 代码如下:if ((($_FILES["file"]["type"] "image/gif")|| ($_FILES["file"]["type"] "image/jpeg")|| ($_FILES["file"]["type"] "image/pjpeg"))&& ($_FILES…

python操作redis集群_python 连接管理作redis集群

python的redis库是不支持集群操作的&#xff0c;推荐库&#xff1a;redis-py-cluster。安装pip3 install redis-py-cluster连接redis集群#!/usr/bin/env python# coding: utf-8from rediscluster import StrictRedisClusterclass RedisCluster(object): # 连接redis集群def __i…

如何将分表汇总到总表_如何把多个Excel表格合并到一起,分表变,总表也自动更新?...

【例】如下图所示&#xff0c;要求把人事部、财务部和销售部3个分表合并到总表中&#xff0c;分表增加或删除人员&#xff0c;总表也会自动更新操作步骤&#xff1a;1、数据-自其他来源-来自MicrosoftQuery。它就是我们今天神秘的主角。2、选取数据源为ExcelFiles*格式&#xf…

dingo php,dingo 配置

Dingo包的大多数配置都预先设置好了&#xff0c;这样你就可以尽快的进入开发模式了&#xff0c;我们也可以参照config/api.php中的env()函数中的内容在.env文件中去设置。当然也可以使用AppServiceProvider中的boot进行设置(这个怎么设置&#xff1f;&#xff1f;&#xff1f;)…

qt 将int型数据显示在文本框_Qt编写Online judge爬虫

一、前提刚开始接触C/Qt是需要一个项目练练手&#xff0c;当时听说过OJ并且网络不好&#xff0c;就想着把数据获取下来随时使用。后来代码写多了之后听说Python写爬虫更方便&#xff0c;可惜坑已经跳下去了&#xff0c;就一条路走到黑了。这是我代码之路的第一个完整实现完整功…

vim函数跳转 php,求助!! vim-gvim中如何让其显示函数及其参数!!

求助&#xff01;&#xff01; vim-gvim中如何让其显示函数及其参数&#xff01;&#xff01;(2012-06-05 02:25:34)标签&#xff1a;如何杂谈求助&#xff01;&#xff01;vim/gvim中如何让其显示函数及其参数&#xff01;&#xff01;用了一段时间的vim,发现在自动补全中发现…

php添加填空,PHP之preg_replace_callback(),将填空题的[[]]替换成______

preg_replace_callback 函数执行一个正则表达式搜索并且使用一个回调进行替换。语法图1这个函数的行为除了可以指定一个 callback 替代 replacement 进行替换字符串的计算&#xff0c;其他方面等同于 preg_replace()。参数说明&#xff1a;$pattern: 要搜索的模式&#xff0c;可…

怎么用php写软件老吴p,11.32 php扩展模块装安

php动态扩展模块添加因为业务需要或者编译php的时候少安装了一个模块&#xff0c;我们现在需要新添加一个模块&#xff0c;那怎么做呢&#xff1f;查看模块/usr/local/php/bin/php -m第一步&#xff1a;去php的安装目录中/ext/目录下查看有没有 你需要安装的扩展模块的包比如&a…

javweb音乐网站_基于javaweb音乐网站设计与实现

基于javaweb音乐网站设计与实现 本科毕业论文(设计)题目&#xff1a;基于JSP的音乐网站的设计与实现姓 名&#xff1a; 学 号&#xff1a; 专 业&#xff1a; 院 系&#xff1a; 指导老师&#xff1a; 职称学位&#xff1a; 讲师&#xff0f;硕士 完成时间&#xff1a; 2015年 …

oracle数据库连接检查,检查Oracle数据库的最大连接

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。编程之家小编现在分享给大家&#xff0c;也给大家做个参考。[[email protected] sql]# more check_connect_oracle.sh#!/bin/bash#functions: connect oracle server test#author:Tony Wang#modify_date: 2015-06-03.mkdir…

python爬虫进程和线程_python爬虫番外篇(一)进程,线程的初步了解-阿里云开发者社区...

整理这番外篇的原因是希望能够让爬虫的朋友更加理解这块内容&#xff0c;因为爬虫爬取数据可能很简单&#xff0c;但是如何高效持久的爬&#xff0c;利用进程&#xff0c;线程&#xff0c;以及异步IO,其实很多人和我一样&#xff0c;故整理此系列番外篇一、进程程序并不能单独和…

ol xyz 加载天地图_OpenLayers加载天地图方法——WMTS和XYZ

1、ol.layer.Tile及数据源类结构openlayers中&#xff0c;图层(layer)不可缺少的组成部分是数据源(source)&#xff0c;天地图是切片的数据服务&#xff0c;对应的图层是ol.layer.Tile&#xff0c;下图是其数据源对应的类结构图&#xff0c;红色部分是重点内容。从图可以看到&a…

linux用户没有创建文件的权限设置密码,Linux学习第五章用户身份与文件权限

一、用户身份与能力Linux系统中一共有三种用户第一种&#xff1a;管理员 root UID 0第二种&#xff1a;系统用户 不需要登录系统 负责单一服务的运行 UID 0-1000第三种&#xff1a;普通用户 日常登录系统操作的用户 UID 1000--uid1000(zhang) gid1000(zhang) groups…

java类验证和装载顺序_Java类加载机制实现流程及原理详解

前言我们知道&#xff0c;Java项目编译后会生成许许多多的class文件&#xff0c;class文件保存着类的描述信息。虚拟机把描述类的数据从Class文件加载到内存&#xff0c;并对数据进行校验、转化解析和初始化&#xff0c;最终形成可以被虚拟机直接使用的Java类型&#xff0c;这就…

Linux中more命令的使用,Linux中more命令使用详解教程

1、使用权限&#xff1a;所有者 什么是所有者权限&#xff1f;2、使用方式more [参数选项] [文件]参数&#xff1a;num 从第num行开始显示&#xff1b;-num 定义屏幕大小&#xff0c;为num行&#xff1b;/pattern 从pattern 前两行开始显示&#xff1b;-c 从顶部清屏然后显示;-…

k8s 查看ip地址属于哪个pod_一个简单的例子理解Kubernetes的三种IP地址类型

很多Kubernetes的初学者对Kubernetes里面三种不同的IP地址和工作机制理解得不是很清楚。本文我们通过一个最简单的例子来学习。用如下命令行创建一个基于nginx的deployment&#xff1a;kubectl run nginx --imagenginx:maxline用kubectl get deploy查看成功生成的名为nginx的de…

linux resin 查看日志命令,【转】linux:访问日志分析

作为一个程序员或项目负责人&#xff0c;甚至运营人员&#xff0c;很多人都想知道&#xff1a;* 我们的项目访问量怎么样* 用户访问高峰在什么时候* 系统变慢的时候用户做了哪些操作* 用户对哪些功能比较感兴趣* 真实用户在服务器上的操作轨迹是什么样的* 系统的瓶颈在哪* 哪些…

linux系统初级管理书,Linux系统管理基础--超级适合Linux新手的书

liuyongqing 于 2012-11-15 11:53:18发表:谢谢分享liuyongqing 于 2012-11-15 11:53:11发表:谢谢分享liuyongqing 于 2012-11-15 11:52:52发表:谢谢分享liuyongqing 于 2012-11-15 11:52:46发表:谢谢分享liuyongqing 于 2012-11-15 11:52:43发表:谢谢分享wankuixing 于 2012-11…