用于实现图像的各种色系转换。
函数:
applyColorMap(src, dst, COLORMAP)
src——输入图像
dst——输出图像
COLORMAP
Value | Name | Scale |
0 | COLORMAP_AUTUMN | |
1 | COLORMAP_BONE | |
2 | COLORMAP_JET | |
3 | COLORMAP_WINTER | |
4 | COLORMAP_RAINBOW | |
5 | COLORMAP_OCEAN | |
6 | COLORMAP_SUMMER | |
7 | COLORMAP_SPRING | |
8 | COLORMAP_COOL | |
9 | COLORMAP_HSV | |
10 | COLORMAP_PINK | |
11 | COLORMAP_HOT |
应用:循环播放所有图片色彩风格
思路:使用while循环,结合输入索引取模方式,使得每次循环始终都能有一个风格变化。
索引取模
list[index%list.size()]
index++
代码:
void QuickDemo::color_style_Demo(Mat& image) {
int COLORMAP[] = {COLORMAP_AUTUMN,COLORMAP_BONE,COLORMAP_JET,COLORMAP_WINTER,COLORMAP_RAINBOW,COLORMAP_OCEAN,COLORMAP_SUMMER,COLORMAP_SPRING,COLORMAP_COOL,COLORMAP_HSV,COLORMAP_PINK,COLORMAP_HOT};
Mat dst;
int index = 0;
while (true) {
int c = waitKey(2000);
if (c == 27) {
cout << "enter esc ,quit!" << endl;
break;
}
//在此处对索引进行取模,会使得输入索引永远在合适的区间
applyColorMap(image, dst, COLORMAP[index % 12]);
index++;
imshow("颜色风格", dst);
}
}