Цвета маркировки OpenCV Connected Component? - PullRequest
0 голосов
/ 15 ноября 2011

это показывает правильный результат, но он окрашивает объекты в серый цвет и его оттенки, я хочу, чтобы они были разных цветов, а не оттенков серого, таких как красный, синий, зеленый, розовый, желтый и т. Д. Как я должен сделать это? Кроме того, я хотел бы знать, возможно ли также увидеть матрицу изображения, как в форме 0, 1?

1 Ответ

2 голосов
/ 15 ноября 2011

Ваша проблема в том, что вы пытаетесь нарисовать контуры на одном черно-белом изображении. Вы должны сделать другое изображение, как это:

image = cvCreateImage(cvSize(img_bw->width, img_bw->height), IPL_DEPTH_8U, 3);

Это будет 3-канальное изображение, и вы сможете рисовать цвета BGR.

Если вы хотите увидеть матрицу интенсивности, представляющую все пиксели в черно-белом изображении, вы можете просто вывести их в текстовый файл или что-то подобное. Вы можете получить доступ к любому элементу, как этот:

unsigned char* dataRow = (unsigned char*)img_bw->imageData + i * img_bw->width;
unsigned char value = dataRow[j];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...