Python alpha的像素数据不正确

Python alpha的像素数据不正确,python,pandas,opencv,scikit-learn,alpha,Python,Pandas,Opencv,Scikit Learn,Alpha,我正在加载一个带有alpha的图像,我对显示每个像素的数据感到困惑。我正在分割像素以分别获得每个b、g、r和a波段,当加载到数据集中时,我与我的输出混淆,如下所示: 像素----------------B波段------G波段------R波段-----------A波段 为什么我的白色像素在r波段(第4列)是254而不是255? 为什么alpha值在0到255之间,而不是0到1之间 另一个有趣的注意事项是,当alpha设置为0(透明)时,我不明白为什么给像素一种颜色,为什么不透明像素显示为白

我正在加载一个带有alpha的图像,我对显示每个像素的数据感到困惑。我正在分割像素以分别获得每个b、g、r和a波段,当加载到数据集中时,我与我的输出混淆,如下所示:

像素----------------B波段------G波段------R波段-----------A波段

为什么我的白色像素在r波段(第4列)是254而不是255? 为什么alpha值在0到255之间,而不是0到1之间


另一个有趣的注意事项是,当alpha设置为0(透明)时,我不明白为什么给像素一种颜色,为什么不透明像素显示为白色而不是透明?

代码:


Alpha值的范围为0到255,因为这样还可以获得部分透明度。完全透明的像素是不可见的,所以它们的值是多少并不重要。你必须调查代码,并可能首先询问生成该图像的任何软件的作者。“为什么不透明像素显示为白色而非透明”——很可能是因为你用来显示图像的任何东西都是在白色背景上显示的(因此背景以透明位显示)。@DanMašek我同意你的观点,但我的分类器选择的像素应该为白色(255255)你的分类器是如何实现的(比如,它如何处理alpha通道)?也许你必须做一些每处理。。。
img = cv2.imread('/Volumes/EXTERNAL/ClassifierImageSets/Origional_2.png',-1)
b,g,r,a = cv2.split(img)
    test = pd.DataFrame({'bBnad':b.flat[:],'gBnad':g.flat[:],'rBnad':r.flat[:],'Alpha':a.flat[:]})
    with pd.option_context('display.max_rows', None, 'display.max_columns', 4):
        print(test)