ValueError: operands could not be broadcast together with shapes (299,299,4) (3,) (299,299,4) 读取图片是报错,代码是按照官方示例的
https://blog.csdn.net/weixin_41278720/article/details/84594066
java调用的时候遇到一样的问题,已解决,就是用于检测的图片的问题换了波图片就ok了
一般是读三通道的图片,即RGB图片,而根据报错情况,可以看到图片是四通道,此外还有灰度图是单通道也会类似情况。
在图像处理中,真彩位图文件的每个通道都定义为 8 位,可以提供 256 个级别的强度。因此,一个 RGB 文件是 24 位的,具有 256 个级别(都带有红、绿和蓝)。而RGBA 文件(红、绿、蓝、alpha)是 32 位的,具有额外的 8 位 alpha,Alpha用来衡量一个像素或图像的透明度,可以提供 256 个级别的透明度。这样,每个像素是由四个部分组成:一个Alpha通道和三个颜色分量(R、G和B)。当Alpha值为0时,该像素是完全透明的,而当Alpha值为255时,该像素完全不透明。 Alpha混色是将源像素和背景像素的颜色进行混合,最终显示的颜色取决于其RGB颜色分量和Alpha值。它们之间的关系可用下列公式来表示:显示颜色 = 源像素颜色 X alpha / 255 + 背景颜色 X (255 - alpha) / 255--------------------- 作者:spectre7 来源:CSDN 原文:https://blog.csdn.net/weixin_41278720/article/details/84594066 版权声明:本文为博主原创文章,转载请附上博文链接!
https://blog.csdn.net/weixin_41278720/article/details/84594066
java调用的时候遇到一样的问题,已解决,就是用于检测的图片的问题换了波图片就ok了
java调用的时候遇到一样的问题,已解决,就是用于检测的图片的问题换了波图片就ok了
一般是读三通道的图片,即RGB图片,而根据报错情况,可以看到图片是四通道,此外还有灰度图是单通道也会类似情况。
在图像处理中,真彩位图文件的每个通道都定义为 8 位,可以提供 256 个级别的强度。因此,一个 RGB 文件是 24 位的,具有 256 个级别(都带有红、绿和蓝)。而RGBA 文件(红、绿、蓝、alpha)是 32 位的,具有额外的 8 位 alpha,Alpha用来衡量一个像素或图像的透明度,可以提供 256 个级别的透明度。这样,每个像素是由四个部分组成:一个Alpha通道和三个颜色分量(R、G和B)。当Alpha值为0时,该像素是完全透明的,而当Alpha值为255时,该像素完全不透明。
Alpha混色是将源像素和背景像素的颜色进行混合,最终显示的颜色取决于其RGB颜色分量和Alpha值。
它们之间的关系可用下列公式来表示:
显示颜色 = 源像素颜色 X alpha / 255 + 背景颜色 X (255 - alpha) / 255
---------------------
作者:spectre7
来源:CSDN
原文:https://blog.csdn.net/weixin_41278720/article/details/84594066
版权声明:本文为博主原创文章,转载请附上博文链接!