from PIL import Image import struct import numpy as np def color565(r,g,b): return (r & 0xf8 )<< 8 | (g & 0xfc) << 3 | b >>3 def main(): img = Image.open("img13.png") print(img.format, img.size, img.mode) # 如果图像模式不是RGB,进行转换 if img.mode != "RGB": img = img.convert("RGB") img_data = np.array(img) with open("img13.dat", "wb") as f: for line in img_data: for dot in line: r, g, b = dot f.write(struct.pack("H", color565(r, g, b))[::-1]) if __name__=="__main__": main()