利用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返回昨天日期的方法
May 13 Python
在Django的URLconf中进行函数导入的方法
Jul 18 Python
Python实现的读取电脑硬件信息功能示例
May 30 Python
Python中的几种矩阵乘法(小结)
Jul 10 Python
python操作excel让工作自动化
Aug 09 Python
python+mysql实现个人论文管理系统
Oct 25 Python
关于Python Tkinter Button控件command传参问题的解决方式
Mar 04 Python
详解Python中pyautogui库的最全使用方法
Apr 01 Python
Python简单实现词云图代码及步骤解析
Jun 04 Python
python里的单引号和双引号的有什么作用
Jun 17 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 Python
Python爬虫教程之利用正则表达式匹配网页内容
Dec 08 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
使用sockets:从新闻组中获取文章(二)
2006/10/09 PHP
PHP中HTML标签过滤技巧
2014/01/07 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
PHP实现取得HTTP请求的原文
2014/08/18 PHP
JS中简单的实现像C#中using功能(有源码下载)
2007/01/09 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
2013/07/01 Javascript
javascript实现炫酷的拖动分页
2015/05/11 Javascript
JavaScript计划任务后台运行的方法
2015/12/18 Javascript
如何提高数据访问速度
2016/12/26 Javascript
Bootstrap表单制作代码
2017/03/17 Javascript
Vue实现双向数据绑定
2017/05/03 Javascript
js轮播图无缝滚动效果
2017/06/17 Javascript
vue使用iframe嵌入网页的示例代码
2020/06/09 Javascript
微信小程序实现刷脸登录
2018/05/25 Javascript
JavaScript事件冒泡与事件捕获实例分析
2018/08/01 Javascript
用webpack4开发小程序的实现方法
2019/06/04 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
[50:05]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
使用Python的Twisted框架编写简单的网络客户端
2015/04/16 Python
给Python中的MySQLdb模块添加超时功能的教程
2015/05/05 Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
2017/07/06 Python
Python3 适合初学者学习的银行账户登录系统实例
2017/08/08 Python
python paramiko远程服务器终端操作过程解析
2019/12/14 Python
Django用数据库表反向生成models类知识点详解
2020/03/25 Python
基于python和flask实现http接口过程解析
2020/06/15 Python
使用 prometheus python 库编写自定义指标的方法(完整代码)
2020/06/29 Python
python进度条显示之tqmd模块
2020/08/22 Python
python sleep和wait对比总结
2021/02/03 Python
玩转CSS3色彩
2010/01/16 HTML / CSS
css3绘制天猫logo实现代码
2012/11/06 HTML / CSS
CSS3中的clip-path使用攻略
2015/08/03 HTML / CSS
三分钟自我介绍演讲稿
2014/08/21 职场文书
外出考察学习心得体会
2016/01/18 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery
Mysql中常用的join连接方式
2022/05/11 MySQL