利用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 __setattr__、 __getattr__、 __delattr__、__call__用法示例
Mar 06 Python
Python判断字符串与大小写转换
Jun 08 Python
Scrapy的简单使用教程
Oct 24 Python
Python BS4库的安装与使用详解
Aug 08 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
Jun 04 Python
Django3.0 异步通信初体验(小结)
Dec 04 Python
python飞机大战pygame游戏背景设计详解
Dec 17 Python
常用python爬虫库介绍与简要说明
Jan 25 Python
tensorflow 实现自定义layer并添加到计算图中
Feb 04 Python
Python字符串的15个基本操作(小结)
Feb 03 Python
Python 中面向接口编程
May 20 Python
python缺失值填充方法示例代码
Dec 24 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
咖啡的种类和口感
2021/03/03 新手入门
global.php
2006/12/09 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
php中explode与split的区别介绍
2012/10/03 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
PHP中关于php.ini参数优化详解
2020/02/28 PHP
jQuery创建自己的插件(自定义插件)的方法
2010/06/10 Javascript
js制作简易年历完整实例
2015/01/28 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
使用jQuery实现WordPress中的Ctrl+Enter和@评论回复
2016/05/21 Javascript
jQuery ajax应用总结
2016/06/02 Javascript
解决node.js安装包失败的几种方法
2016/09/02 Javascript
JS中数组重排序方法
2016/11/11 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
2017/01/17 Javascript
Vue 滚动行为的具体使用方法
2017/09/13 Javascript
JavaScript实现精美个性导航栏筋斗云效果
2017/10/29 Javascript
Vue2实时监听表单变化的示例讲解
2018/08/30 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
2020/05/16 Javascript
JavaScript设计模式--简单工厂模式定义与应用案例详解
2020/05/23 Javascript
[16:21]教你分分钟做大人:圣堂刺客
2014/12/03 DOTA
python 简单的多线程链接实现代码
2016/08/28 Python
Python 描述符(Descriptor)入门
2016/11/20 Python
python按照多个条件排序的方法
2019/02/08 Python
python的debug实用工具 pdb详解
2019/07/12 Python
django配置app中的静态文件步骤
2020/03/27 Python
Python实现一个论文下载器的过程
2021/01/18 Python
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
车贷收入证明范本
2014/01/09 职场文书
房屋买卖协议书范本
2014/04/10 职场文书
艾滋病宣传活动总结
2014/05/08 职场文书
小班下学期个人总结
2015/02/12 职场文书
技术员岗位职责范本
2015/04/11 职场文书
党员转正大会主持词
2015/07/02 职场文书
2016年教师新年寄语
2015/08/18 职场文书
教你怎么用Python实现GIF动图的提取及合成
2021/06/15 Python
如何让你的Nginx支持分布式追踪详解
2022/07/07 Servers