Я пытаюсь включить OpenCV (версия 2.3.1) в проект, над которым я работаю. Камера отправляет моей программе (в Microsoft Visual C ++ 2008 на 64-разрядной машине Windows 7) поток изображений, который программа сохраняет в 8-разрядном целочисленном буфере без знака. Я хотел бы отобразить этот поток в окне, используя OpenCV. Сейчас я не могу получить изображения для отображения в своих окнах OpenCV, поэтому я пока не использую свой поток изображений; просто файл JPEG.
Сначала я объявляю свое окно:
namedWindow( "Window", CV_WINDOW_AUTOSIZE );
Тогда я пытаюсь заполнить его:
char* imgName = "C:\...\Jellyfish.jpg";
Mat imgMat = imread(imgName, 1);
if(imgMat.data)
{
imshow( "Window", imgMat );
}
Когда моя программа достигает точки, где окно объявляется, появляется крошечное серое окно. Когда он достигает точки, где должно отображаться изображение, размеры окна изменяются на размеры изображения (я проверял это на разных изображениях), но внутренняя часть окна остается простой серой рамкой.
Что вызывает эту странную ошибку? Программа явно нашла изображение, иначе не смогла бы правильно изменить его размеры.