def _unpack_bitplanes(self, data):
"""The values that make up a row of pixels are organized like:
[bp1-row1] [bp2-row1] [bp3-row1] [bp4-row1]...
[bp1-row8] [bp2-row8] [bp3-row8] [bp4-row8]
Returns a list of lists containing bitplane values (bytes).
"""
planes = [[], [], [], []]
data_iter = Struct('c').iter_unpack(data)
for bp in data_iter:
planes[0].extend(*bp)
planes[1].extend(*next(data_iter))
planes[2].extend(*next(data_iter))
planes[3].extend(*next(data_iter))
return planes
评论列表
文章目录