利用python将图片转换成excel文档格式


Posted in Python onDecember 30, 2017

前言

本文主要介绍了关于利用python将图片转换成excel文档的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

实现步骤

  • 读取图像,获取图像每个像素点的RGB值;
  • 根据每个像素点的RGB值设置excel每个方格的颜色值;
  • 根据像素点的坐标,写入excel文件;
  • 保存退出;

示例代码

from PIL import Image
import numpy as np
import time
import matplotlib.pyplot as plt
import xlsxwriter
def get_xy(row, col):
 table = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
 num1 = col / 26
 num2 = col % 26
 # print num1, num2
 if num1 == 0:
  return table[num2 - 1] + str(row)
 else:
  return table[num1-1] + table[num2 - 1] + str(row)
def main():
 img = np.array(Image.open('whale.jpeg'))
 
 # plt.figure("whale")
 # plt.imshow(img)
 # plt.show()
 rows, cols, dims = img.shape
 print img.shape 
 print img.dtype 
 print img.size 
 print type(img)
 # print img[188, 188, 0]
 excel = xlsxwriter.Workbook('image_excel.xlsx')
 cellformat = excel.add_format({'bg_color': '#123456',
         'font_color': '#654321'})
 worksheet1 = excel.add_worksheet()
 data = []
 color = [''] * cols
 cellcolor = ""
 for i in range(rows):
  for j in range(cols):
   # print hex(img[i, j, 0]), hex(img[i, j, 1]), hex(img[i, j, 2])
   cellcolor = (hex(img[i, j, 0]) + hex(img[i, j, 1]) + hex(img[i, j, 2])).replace('0x', '')
   # print cellcolor
   
   cellformat = excel.add_format({'bg_color': '#'+cellcolor, 
           'font_color': '#'+cellcolor})
   
   # cellformat = excel.add_format({'bg_color': '#C6EFCE', 
   #        'font_color': '#006100'})
   
   worksheet1.conditional_format(get_xy(i, j), {'type': 'cell',
              'criteria': '<',
              'value': 50,
              'format': cellformat})
  # data.append(data_row)
 excel.close() 

if __name__ == '__main__':
 main()
 # print get_xy(133, 27)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python中Random和Math模块学习笔记
May 18 Python
Python实现Linux的find命令实例分享
Jun 04 Python
Python实现带参数与不带参数的多重继承示例
Jan 30 Python
python3处理含有中文的url方法
May 10 Python
python爬虫框架scrapy实现模拟登录操作示例
Aug 02 Python
python字典值排序并取出前n个key值的方法
Oct 17 Python
python 删除字符串中连续多个空格并保留一个的方法
Dec 22 Python
pandas DataFrame 行列索引及值的获取的方法
Jul 02 Python
详解Python图像处理库Pillow常用使用方法
Sep 02 Python
python错误调试及单元文档测试过程解析
Dec 19 Python
python代码能做成软件吗
Jul 24 Python
在pycharm中使用pipenv创建虚拟环境和安装django的详细教程
Nov 30 Python
书单|人生苦短,你还不用python!
Dec 29 #Python
python ansible服务及剧本编写
Dec 29 #Python
详解python 拆包可迭代数据如tuple, list
Dec 29 #Python
详解Python异常处理中的Finally else的功能
Dec 29 #Python
Python2.7+pytesser实现简单验证码的识别方法
Dec 29 #Python
Python实现破解12306图片验证码的方法分析
Dec 29 #Python
解决python使用open打开文件中文乱码的问题
Dec 29 #Python
You might like
PHP的FTP学习(二)
2006/10/09 PHP
PHP4实际应用经验篇(4)
2006/10/09 PHP
js代码实现微博导航栏
2015/07/30 PHP
ThinkPHP5框架实现简单的批量查询功能示例
2018/06/07 PHP
Jquery 基础学习笔记之文档处理
2009/05/29 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
Jquery中的$.each获取各种返回类型数据的使用方法
2015/05/03 Javascript
AngularJS HTML DOM详解及示例代码
2016/08/17 Javascript
JavaScript reduce和reduceRight详解
2016/10/24 Javascript
Javascript的this用法
2017/01/16 Javascript
详解如何实现一个简单的 vuex
2018/02/10 Javascript
JavaScript中的事件与异常捕获详析
2019/02/24 Javascript
vue渲染方式render和template的区别
2020/06/05 Javascript
多个Vue项目部署到服务器的步骤记录
2020/10/22 Javascript
[05:08]2014DOTA2国际邀请赛 Hao专访复仇的胜利很爽
2014/07/15 DOTA
Python实现连接postgresql数据库的方法分析
2017/12/27 Python
django中模板的html自动转意方法
2018/05/27 Python
使用Python机器学习降低静态日志噪声
2018/09/29 Python
python3实现多线程聊天室
2018/12/12 Python
Python使用pydub库对mp3与wav格式进行互转的方法
2019/01/10 Python
python调用动态链接库的基本过程详解
2019/06/19 Python
Django REST framework内置路由用法
2019/07/26 Python
Python常用数据类型之间的转换总结
2019/09/06 Python
俄罗斯家居用品购物网站:Евродом
2020/11/21 全球购物
会计专业毕业生自我评价
2013/09/25 职场文书
成人大专自我鉴定范文
2013/10/19 职场文书
护士实习自我鉴定
2013/10/22 职场文书
毕业生求职信的经典写法
2014/01/31 职场文书
个人自我评价范文
2014/02/05 职场文书
社区活动策划方案
2014/08/21 职场文书
医生党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
局领导领导班子四风对照检查材料
2014/09/27 职场文书
党的群众路线教育实践活动查摆问题自查报告
2014/10/10 职场文书
2015年党员干部承诺书
2015/01/21 职场文书
卢旺达饭店观后感
2015/06/05 职场文书
实体类或对象序列化时,忽略为空属性的操作
2021/06/30 Java/Android