Ваша проблема в том, что вы пытаетесь нарисовать контуры на одном черно-белом изображении. Вы должны сделать другое изображение, как это:
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];