其他分享
首页 > 其他分享> > c-显示时图像改变形状

c-显示时图像改变形状

作者:互联网

我正在尝试显示此图像,因为我的目录中有此图像

但是我用这段代码显示它

Mat img=imread("D:\\vig.png");
imshow("image",img);
waitKey();
imwrite("D:\\img.jpg",img);

相同的图像显示如下

它出什么问题了

解决方法:

您的小插图仅位于alpha [4th]通道中,并且看起来像是倒置的(此处为不透明度值).

(您的第一张图片似乎显示了带有白色图像(或背景)的适当Alpha合成图像,该图像可能来自photoshop等.)

Mat img=imread("vig.png",-1); // load 'as is', don't convert to bgr !!
Mat ch[4]; 
split(img,ch);

Mat im2 = ch[3];              // here's the vignette

// im2 = 255 - im2;           // eventually cure the inversion

imshow("image",im2);
waitKey();
imwrite("img.jpg",im2);

再次注意,opencv不会进行任何alpha合成,您必须为此滚动自己的公式.

标签:c,opencv,image,image-processing,computer-vision
来源: https://codeday.me/bug/20191011/1895553.html