语义分割输出索引图如何将其转为彩色的标注图呢? 之前一直是python实现的, 但最近工程上要用到, 就用c++,opencv实现了简单的脚本。
踩得坑:
在写OpenCV程序时,发现通过image = imread(“the path of a image”);的方式读入的灰度图片都是3通道,并且每个通道都完全相同,可以通过打印image.channels()进行测试。
为了正确地读入灰度图像,需要通过image = imread(“the path of a image”, IMREAD_GRAYSCALE);的方式来实现,同样打印image.channels()发现读入的图片只有单通道。
基本知识:
方式1: at(i, j)访问
这种方式在Debug模式下的访问速度是最慢的,但是在Release模式下的访问速度也是相当快的,和其他方式相近。
- 单通道遍历(灰度图像)
cv::Mat image(100 , 100 , CV_8UC1);
int rows = image.rows;
int cols = image.cols;
for (int i=0; i<rows ; i++)
{
for (int j=0; j<cols ; j++)
{
image.at<uchar>(i,j) &#