如何用Python将黑白方块图片按左到右扫描并导出二进制数据到TXT文件?
实现步骤
1. 安装依赖
首先需要安装Pillow库来处理图片:
pip install pillow
2. 编写Python代码
以下代码可实现从左到右(逐行扫描)读取黑白方块,将黑方块转为0、白方块转为1,并写入TXT文件:
from PIL import Image # 打开目标图片 img = Image.open("KbRQS.png") # 转为灰度图,简化颜色判断逻辑 gray_img = img.convert("L") # 获取图片的宽高尺寸 width, height = gray_img.size binary_content = "" # 按从上到下、每行从左到右的顺序扫描像素 for y in range(height): line_data = "" for x in range(width): # 获取当前像素的灰度值(0为纯黑,255为纯白) pixel_val = gray_img.getpixel((x, y)) # 以127为阈值区分黑白,可根据图片实际明暗调整 line_data += "0" if pixel_val < 127 else "1" # 每行扫描完成后添加换行,让输出文件更易读 binary_content += line_data + "\n" # 将生成的二进制字符串写入TXT文件 with open("binary_output.txt", "w") as f: f.write(binary_content) print("二进制数据已成功写入binary_output.txt")
关键说明
- 转为灰度图是为了避免RGB多通道的颜色判断复杂度,简化逻辑
- 阈值127可根据图片实际的黑白深浅调整,确保方块颜色判定准确
- 扫描顺序严格遵循每行从左到右,整体从上到下,符合常规图片读取逻辑
内容的提问来源于stack exchange,提问作者Denis
相关产品推荐
相关产品推荐

