wangqiuqiu_123 2020-04-02 21:15 采纳率: 0%
浏览 1194
已采纳

python opencv中打开.png图片的问题

图片在文件夹中显示为白底的。

通过cv2.imshow()后显示是黑色背景。
图片说明

然后我就提取这个图片的(0,0)处位置的BGR值,确实是[0,0,0]黑色,请问这个原因是什么?有大神解惑下吗?

  • 写回答

1条回答 默认 最新

  • Venquieu 2020-04-03 09:51
    关注

    首先,这个图像的背景不是白色的,而是**透明**的。
    这个图像真实的样子
    #.png图像
    .png图像的一个特点就是支持透明效果, PNG可以为原图像定义256个透明层次(参见α通道),使得彩色图像的边缘能与任何背景平滑地融合,所以你看到的白色背景不是这个图像的背景,而是显示图像的底版的颜色。
    #为什么会显示黑色?
    读取图像时使用的cv2.imread()函数有两个参数,第一个参数为图像路径,第二个参数要告诉函数如何读取该图像,默认读入一幅BGR图像,图像的**透明度会被忽略**,这时使用cv2.imshow()显示的就是RGB图像,根据显示结果可知这个图像的背景本来就是黑色的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    悬赏问题

    • ¥15 编译arm板子的gcc
    • ¥20 C语言用栈实现无向图邻接矩阵广度优先遍历
    • ¥15 C++代码报错问题,c++20协程
    • ¥15 c++图Djikstra算法求最短路径
    • ¥15 Linux操作系统中的,管道通信问题
    • ¥15 ansible tower 卡住
    • ¥15 等间距平面螺旋天线方程式
    • ¥15 通过链接访问,显示514或不是私密连接
    • ¥100 系统自动弹窗,键盘一接上就会
    • ¥50 股票交易系统设计(sql语言)