核心代码,不是项目工程,不能直接使用
code
// 颜色映射关系
const cv::Vec3b colorMap[]=
{
cv::Vec3b(128, 64,128),
cv::Vec3b(244, 35,232),
cv::Vec3b( 70, 70, 70),
cv::Vec3b(102,102,156),
cv::Vec3b(190,153,153),
cv::Vec3b(153,153,153),
cv::Vec3b(250,170, 30),
cv::Vec3b(220,220, 0),
cv::Vec3b(107,142, 35),
cv::Vec3b(152,251,152),
cv::Vec3b( 70,130,180),
cv::Vec3b(220, 20, 60),
cv::Vec3b(255, 0, 0),
cv::Vec3b( 0, 0,142),
cv::Vec3b( 0, 0, 70),
cv::Vec3b( 0, 60,100),
cv::Vec3b( 0, 80,100),
cv::Vec3b( 0, 0,230),
cv::Vec3b(119, 11, 32),
cv::Vec3b( 0, 0, 0)
};
// // 准备绘制带有颜色的结果图像
cv::Mat coloredImg(label_img.rows,label_img.cols, CV_8UC3);
size_t min_label=255,max_label=0;
for(size_t x=0;x<coloredImg.rows;++x)
{
for(size_t y=0;y<coloredImg.cols;++y)
{
uint8_t label=label_img.at<uint8_t>(x,y);
if(label<20)
{
coloredImg.at<cv::Vec3b>(x,y)=colorMap[label];
}
else
{
coloredImg.at<cv::Vec3b>(x,y)=cv::Vec3b(0,0,0);
}
min_label=label<min_label? label:min_label;
max_label=label>max_label? label:max_label;
}
}
```cpp