利用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 MD5文件生成码
Jan 12 Python
python高并发异步服务器核心库forkcore使用方法
Nov 26 Python
python使用mysqldb连接数据库操作方法示例详解
Dec 03 Python
python基于xmlrpc实现二进制文件传输的方法
Jun 02 Python
Python中的fileinput模块的简单实用示例
Jul 09 Python
python实现RSA加密(解密)算法
Feb 17 Python
Python文本处理之按行处理大文件的方法
Apr 09 Python
Python告诉你木马程序的键盘记录原理
Feb 02 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
Feb 20 Python
用Python识别人脸,人种等各种信息
Jul 15 Python
Pytorch 卷积中的 Input Shape用法
Jun 29 Python
Python基础之变量的相关知识总结
Jun 23 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
暴雪前总裁遗憾:没尽早追赶Dota 取消星际争霸幽灵
2020/03/08 星际争霸
php环境下利用session防止页面重复刷新的具体实现
2014/01/09 PHP
php导入模块文件分享
2015/03/17 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
php使用curl模拟多线程实现批处理功能示例
2019/07/25 PHP
jQuery 判断页面元素是否存在的代码
2009/08/14 Javascript
javascript实现的在当前窗口中漂浮框的代码
2010/03/15 Javascript
JSON 和 JavaScript eval使用说明
2010/06/13 Javascript
function foo的原型与prototype属性解惑
2010/11/19 Javascript
关于IE中getElementsByClassName不能用的问题解决方法
2013/08/26 Javascript
node.js使用nodemailer发送邮件实例
2014/03/10 Javascript
jQuery增加自定义函数的方法
2015/07/18 Javascript
jQuery中$.ajax()和$.getJson()同步处理详解
2015/08/12 Javascript
jQuery中fadein与fadeout方法用法示例
2016/09/16 Javascript
JS全角与半角转化实例(分享)
2017/07/04 Javascript
webpack开发跨域问题解决办法
2017/08/03 Javascript
微信小程序实现星级评分和展示
2018/07/05 Javascript
vue实现简单的登录弹出框
2020/10/26 Javascript
用Python写的图片蜘蛛人代码
2012/08/27 Python
Python+OpenCV采集本地摄像头的视频
2019/04/25 Python
Django后台admin的使用详解
2019/07/08 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
tensorflow之tf.record实现存浮点数数组
2020/02/17 Python
如何基于Python按行合并两个txt
2020/11/03 Python
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
世界领先的在线地板和建筑材料批发商:BuildDirect
2017/02/26 全球购物
Fenty Beauty官网:蕾哈娜创立的美妆品牌
2021/01/07 全球购物
施工质量承诺书范文
2014/05/30 职场文书
高中校园广播稿
2014/10/21 职场文书
承诺书模板大全
2015/05/04 职场文书
教师节大会主持词
2015/07/06 职场文书
使用pytorch实现线性回归
2021/04/11 Python
python 用递归实现通用爬虫解析器
2021/04/16 Python
如何理解Vue前后端数据交互与显示
2021/05/10 Vue.js
Vue如何清空对象
2022/03/03 Vue.js