九、OpenCV自带colormap

项目功能实现:每隔1500ms轮流自动播放不同风格图像显示,按下Esc键退出

按照之前的博文结构来,这里就不在赘述了

一、头文件

colormap.h

cpp 复制代码
#pragma once
#include<opencv2/opencv.hpp>
using namespace cv;

class ColorMap {
public:
	void color_map(Mat& image);
};

二、函数实现

colorsapces.cpp

cpp 复制代码
#include"colormap.h"
#include<iostream>
#include<opencv2/opencv.hpp>


void ColorMap::color_map(Mat& image) {
	
	int color_map[] = {
		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
	};

	Mat result;
	int index = 0;

	while (true) {
		int key = waitKey(1500);
		if (key == 27) {//Esc
			break;
		}
		applyColorMap(image, result, color_map[index % 21]);//这里有22种类型,循环播放
		index++;
		imshow("colormap", result);
	}

}

三、主函数

yy_main.cpp

cpp 复制代码
#include <opencv2/opencv.hpp>
#include <iostream>
#include "colormap.h"

using namespace cv;
using namespace std;

int main(int argc, char** argv) {
	Mat src = cv::imread("E:/C++_workspace/beyond.jpg", IMREAD_COLOR);

	if (src.empty()) {
		printf("load image is false...\n");
		return -1;
	}

	namedWindow("yanyu", WINDOW_FREERATIO);
	imshow("yanyu", src);

	ColorMap yy;
	yy.color_map(src);

	waitKey(0);
	destroyAllWindows();

	return 0;
}

项目结构如下:

运行结果如下:

相关推荐
算法_小学生2 分钟前
循环神经网络(RNN, Recurrent Neural Network)
人工智能·rnn·深度学习
吱吱企业安全通讯软件35 分钟前
吱吱企业通讯软件保证内部通讯安全,搭建数字安全体系
大数据·网络·人工智能·安全·信息与通信·吱吱办公通讯
盲盒Q1 小时前
《频率之光:共振之战》
人工智能·硬件架构·量子计算
飞哥数智坊1 小时前
DeepSeek V3.1 发布:我们等的 R2 去哪了?
人工智能·deepseek
爱分享的飘哥1 小时前
第八十三章:实战篇:文 → 图:Prompt 控制图像生成系统构建——从“咒语”到“神作”的炼成!
人工智能·计算机视觉·prompt·文生图·stablediffusion·diffusers·text-to-image
ciku1 小时前
Spring Ai Advisors
人工智能·spring·microsoft
努力还债的学术吗喽1 小时前
【速通】深度学习模型调试系统化方法论:从问题定位到性能优化
人工智能·深度学习·学习·调试·模型·方法论
云边云科技2 小时前
零售行业新店网络零接触部署场景下,如何选择SDWAN
运维·服务器·网络·人工智能·安全·边缘计算·零售
audyxiao0012 小时前
为了更强大的空间智能,如何将2D图像转换成完整、具有真实尺度和外观的3D场景?
人工智能·计算机视觉·3d·iccv·空间智能
Monkey的自我迭代2 小时前
机器学习总复习
人工智能·机器学习