2012-04-11 93 views
-1

我想知道是否有人可以使用PyPNG发布示例来读取48位图像(16位通道R,G和B),并获取并显示特定的像素颜色(比如像素88或其他),更改该值并将其写回到png中。 我发现文档非常稀疏,任何帮助将不胜感激。PyPNG读取48位,更改像素颜色,写入像素

def readPNG2(f): 
    r=png.Reader(f) 
    r.read() 
    print r.bitdepth 

这产生了16的结果。我将Photoshop中的图像保存为每个通道16个(48位)。我错过了什么,这实际上是说每个通道16位?

+0

我被困在语法,它看起来像: 高清readPNG2(文件名): R = png.Reader(filenameherehow) r.read() – wren 2012-04-11 15:36:01

回答

0

是的,这意味着每个通道16位。大约每像素16或15位是过去的事情。该文件解释如何load 16bpc into a numpy array

PyPNG的API似乎是非常低级的,离直接使用C的libpng只有一步之遥(请参阅libpng manual了解更多信息,它是一个用于python应用程序的选项,例如MyPaint does it via swig extension

+0

啊!万分感谢! – wren 2012-04-12 00:52:00