利用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使用shelve模块实现简单数据存储的方法
May 20 Python
使用python检测主机存活端口及检查存活主机
Oct 12 Python
解析Python中的__getitem__专有方法
Jun 27 Python
pandas.loc 选取指定列进行操作的实例
May 18 Python
TensorFlow用expand_dim()来增加维度的方法
Jul 26 Python
浅析python中的迭代与迭代对象
Oct 08 Python
Python 实现Windows开机运行某软件的方法
Oct 14 Python
Python补齐字符串长度的实例
Nov 15 Python
django 邮件发送模块smtp使用详解
Jul 22 Python
python使用if语句实现一个猜拳游戏详解
Aug 27 Python
jupyter notebook oepncv 显示一张图像的实现
Apr 24 Python
opencv 实现特定颜色线条提取与定位操作
Jun 02 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
ThinkPHP模板替换与系统常量及应用实例教程
2014/08/22 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
2019/03/22 PHP
php array_chunk()函数用法与注意事项
2019/07/12 PHP
javascript iframe内的函数调用实现方法
2009/07/19 Javascript
JS 控制非法字符的输入代码
2009/12/04 Javascript
JavaScript中使用replace结合正则实现replaceAll的效果
2010/06/04 Javascript
jQuery实现鼠标移到元素上动态提示消息框效果
2013/10/20 Javascript
javascript设计模式之中介者模式Mediator
2014/12/30 Javascript
js对象的复制继承实例
2015/01/10 Javascript
JavaScript检测鼠标移动方向的方法
2015/05/22 Javascript
JQuery实现简单的图片滑动切换特效
2015/11/22 Javascript
JavaScript中Window对象的属性及事件
2015/12/25 Javascript
Angular发布1.5正式版,专注于向Angular 2的过渡
2016/02/18 Javascript
JavaScript实现in-place思想的快速排序方法
2016/08/07 Javascript
Js调用Java方法并互相传参的简单实例
2016/08/11 Javascript
jQuery实现智能判断固定导航条或侧边栏的方法
2016/09/04 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
Ant Design Vue 添加区分中英文的长度校验功能
2020/01/21 Javascript
解决vscode进行vue格式化,会自动补分号和双引号的问题
2020/10/26 Javascript
Python Tkinter简单布局实例教程
2014/09/03 Python
Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例
2017/08/18 Python
Pandas:DataFrame对象的基础操作方法
2018/06/07 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
python使用wxpy轻松实现微信防撤回的方法
2019/02/21 Python
python 实现手机自动拨打电话的方法(通话压力测试)
2019/08/08 Python
Python二元赋值实用技巧解析
2019/10/25 Python
Python变量作用域LEGB用法解析
2020/02/04 Python
html5播放视频且动态截图实现步骤与代码(支持safari其他未测试)
2013/01/06 HTML / CSS
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
写求职信有什么意义
2014/02/17 职场文书
党校学习自我鉴定
2014/02/24 职场文书
募捐倡议书
2014/04/14 职场文书
成本会计岗位职责
2015/02/03 职场文书
办公室卫生管理制度
2015/08/04 职场文书
2016年清明节期间群众祭祀活动工作总结
2016/04/01 职场文书
python编写五子棋游戏
2021/05/25 Python