Python实现将图片转为Excel
突发奇想,用Python实现一个小功能。
注意!!!
不是将图片像复制粘贴一样放在Excel中,而是将图片的每个像素点填充到Excel的每一个单元格中。
原图:我这里选的分辨率为260 x 397 (尽量小一点,分辨率都不要超过1000为好,否则生成的Excel过大,打开时容易卡住)
生成的Excel:看着像马赛克吧,对单元格行高列宽进行设置,再缩小一定的比例。
我这里将每一行每一列设置都为2磅,再按住Ctrl键,滑动滚轮将其再缩小一定的比例。
代码实现
import os
import time
import openpyxl
from PIL import Image
from openpyxl.styles import PatternFill
from openpyxl.utils import get_column_letter as ExcelColumndef image2excel(image_path):print("程序运行中...")start = time.time()image2excel_path = os.getcwd() + "\image2excel\\"if not os.path.exists(image2excel_path):os.mkdir(image2excel_path)image_name = image_path.split("\\")[-1].split(".")[0]image_excel = image_name + ".xlsx"image_txt = image_name + ".txt"image_excel_path = str(image2excel_path + image_excel)image_txt_path = image2excel_path + image_txtimload = Image.open(image_path)image2RGB = imload.convert("RGB")width, height = image2RGB.sizeif width >= 1000 and height >= 1000:print("温馨提示:分辨率小一点好,否则生成的txt和Excel文件过大。。。")image_color_txt = open(image_txt_path, 'a', encoding="utf-8")# 创建新的工作簿wb = openpyxl.Workbook()wb.active.title = image_name # 修改工作表名wb.save(image_excel_path)wb.close()# 打开(加载)文件wb1 = openpyxl.load_workbook(image_excel_path)sheet1 = wb1.worksheets[0] # 获取第一个sheet页for y in range(height):for x in range(width):# 将像素点转为RGBrgb = image2RGB.getpixel((x, y))color = ''# 将RGB转为十六进制for i in rgb:color += format(int(i), '02x').upper()# 为Excel添加背景颜色sheet1[ExcelColumn(x+1)+str(y+1)].fill = PatternFill("solid", fgColor=color)image_color_txt.write(color + "\t")image_color_txt.write("\n")image_color_txt.close()wb1.save(image_excel_path)wb1.close()print("程序运行结束,运行时间为: %s 秒" % str(time.time() - start))if __name__ == '__main__':image_path = r"C:\xxx\xxx\money.jpg"image2excel(image_path)
当然,也可以用代码实现对Excel的行高列宽进行设置,以及调整整体大小比例。
(完!!!)
Python实现将图片转为Excel相关推荐
- 15行Python代码将图片转为Excel
编写了一小段Python代码,将图片转为了Excel,纯属娱乐.原理很简单,就是将图片每个像素的颜色填充到Excel对应的单元格中. 原图(horse.jpg): 转换后的Excel文档(horse. ...
- python怎么将txt转为excel_使用matlab或python将txt文件转为excel表格
假设txt文件为: 一.matlab代码 data=importdata('data.txt'); xlswrite('data.xls',data); 二.python代码 利用pandas的Dat ...
- python小工具—图片转为字符txt
python小工具-图片转为字符txt 图片转为字符txt python小工具-图片转为字符txt 效果展示 转换图片信息 图片信息转字符 完整代码 效果展示 转换图片信息 将图片的rgb色彩信息转为 ...
- 电脑将图片转为excel表格的几种常用方法
一.用金鸣表格文字识别在线网页版: 1.打开金鸣表格文字识别(简称金鸣识别)网站. 2.点击"点此添加图片/PDF",将待识别的门脸图片添加进去. 3.点击"提交识别&q ...
- 用电脑将图片转为excel表格有几种方法?怎么操作?
将图片转为Excel表格,一般需要借助OCR(光学字符识别)技术.OCR技术可以将图片中的文字提取出来,并转换成Excel表格中的数据.以下是几种常用的方法: 一..使用在线OCR工具 1.打开金鸣表 ...
- python将txt文件转为excel格式以及写入excel超过65536行报错问题解决方法
参考链接: https://blog.csdn.net/levy_cui/article/details/82252183 https://blog.csdn.net/levy_cui/article ...
- 【python】txt记事本转为excel表格,超快超方便
txt记事本转为excel表格,太简单啦!!! 使用python将txt格式转化为xls,火箭般的速度,就转化好了!!! 完整代码: # -*- encoding: utf-8 -*- import ...
- Python 将矩形图片转为圆形图片
使用PIL库将矩形图片转为原型图片 from PIL import Image, ImageDraw, ImageFilterdef crop_max_square(pil_img):return c ...
- python将CSV文件转为excel
前言 有时候为了省去编代码的麻烦,可以将csv文件转化为excel表格,以实现用excel处理文件的目的. 一.将file.csv 转为file.xlsx 示例:pandas 是基于NumPy 的一种 ...
- 问题解决:opencv(python)将图片转为视频后视频无法打开问题
使用以下代码将图片转为视频,不会报错,但是视频无法播放,而且视频只有14kb. import cv2 img_size = (1700, 640) video_dir = '20211204.avi' ...
最新文章
- 心智图/思维导图(Mind Map/Mind Mapping),思维导图介绍
- C/C++中存储类型
- Android Log等级的介绍
- 使用绘图API自定义组件
- 笔记-项目配置管理-配置管理主要工作
- mysql安全权限的讲解
- 算法 --- 插入排序的JS实现
- @async 没有异步_扒一扒VueCLI3.0中Axios异步请求同步化
- DataWorks 功能实践速览03期 — 生产开发环境隔离
- STM32那点事(5)_ADC(上)
- sublimText3在ubuntu下的中文支持
- 【图像处理】直方图均衡化(附带Matlab及OpenCV3自编程实现代码)
- Multiple methods named 'status' found with mismatched result, parameter type or attributes
- Matrix Factorization: A Simple Tutorial and Implementation in Python
- 爬取表格类网站数据并保存为excel文件
- 19.看板方法---变异性的根源
- Linux 怎么找回管理员密码?
- 汉庭季琦:我用IT精神打造传统产业
- 【C语言】 《弹跳的小球》游戏编写过程及思路,清屏函数、Sleep()函数的应用
- 华为路由器接口IP地址如何配置与查看