通过Python把图片转换为excel表格中的像素点
前提条件:
- 安装Python3.0以上版本
- 电脑以管理员身份运行“命令提示符”,输入pip install pillow
- 再输入pip install openpyxl
安装的插件功能可以百度搜索一下。
Python的代码如下:
from PIL import Image
import openpyxl
from openpyxl.styles import PatternFill
def image_to_excel(image_path, excel_path):
# 打开图片并获取尺寸
image = Image.open(image_path)
width, height = image.size
# 创建一个新的Excel工作簿
workbook = openpyxl.Workbook()
sheet = workbook.active
# 遍历图片的每个像素点
for y in range(height):
for x in range(width):
# 获取像素点的RGB值
r, g, b = image.getpixel((x, y))
# 根据RGB值设置单元格的背景颜色
cell = sheet.cell(row=y+1, column=x+1)
cell.fill = PatternFill(start_color=f"{r:02X}{g:02X}{b:02X}", end_color=f"{r:02X}{g:02X}{b:02X}", fill_type="solid")
# 调整列宽和行高以适应图片尺寸
for col in sheet.columns:
sheet.column_dimensions[col[0].column_letter].width = 1
for row in sheet.rows:
sheet.row_dimensions[row[0].row].height = 15
# 保存Excel文件
workbook.save(excel_path)
image_to_excel('C:\\11.jpg', 'C:\\aaa.xlsx')
使用说明:
- Python代码需要保持缩进关系,请参照图片调整缩进
- 代码最后一行中,蓝色背景的内容是图片的路径,绿色部分是生成的excel表格存放路径。请根据实际需求进行修改。
个人娱乐,如有疑问,欢迎留言讨论学习。