2013-08-28 3 views
1

Я пытаюсь создать прозрачное изображение в OpenCV и без волнения пропустить его как jpg.Создание прозрачного изображения в OpenCV

Мой код что-то такое, как это:

string outputImageName="myimage.jpg"; 
Mat outputImage(outputRows,outputCols,CV_8UC4); 
outputImage=cv::Scalar(255,255,255,255); 
imwrite(outputImageName,outputImage); 

Но изображение не является прозрачным и его цвет белый.

Как это сделать?

Если OpenCV не может этого сделать, есть ли бесплатная библиотека, которую я использую для этого?

ответ

5

Похоже, что JPEG doesn't support transparency. Однако PNG делает так, что вы захотите изменить формат выходного файла.

Также значение альфа 255 указывает на полную видимость. Измените значение альфа-значения на ноль, чтобы сделать изображение полностью прозрачным:

outputImage=cv::Scalar(255,255,255,0); 
3

Это не возможно сделать .jpg изображение прозрачным, оно не поддерживается форматом, попробуйте .png вместо этого.

Смежные вопросы