亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python讀取圖片顏色值并生成excel像素畫的方法實例

瀏覽:2日期:2022-06-27 16:28:29

像素畫:

python讀取圖片顏色值并生成excel像素畫的方法實例

需要用到的包:

進度條:progressbar

pip install progressbar -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

excel:操作包openpyxl

pip install openpyxl -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

食用指南:

文件目錄:

python讀取圖片顏色值并生成excel像素畫的方法實例

運行:

進入程序img2excel_user.py 所在目錄,輸入:

python img2excel_user.py 圖片地址 excel保存地址(要加上excel名字)

例如:

python img2excel_user.py D:myPythonProgramimg2excel3.jpg D:myPythonProgramimg2excel3.xlsx

注意:

進入二級目錄的方法:cd .文件夾名

python讀取圖片顏色值并生成excel像素畫的方法實例

若圖片太大,生成的文件會打不開,所以準備的圖片不能太大:

python讀取圖片顏色值并生成excel像素畫的方法實例

源碼:

# -*- coding: utf-8 -*-from PIL import Imageimport openpyxlimport openpyxl.stylesfrom openpyxl.styles import PatternFillfrom openpyxl.utils import get_column_letterfrom progressbar import *def RGB_to_Hex(rgb): ''' RGB顏色轉換成16進制顏色 :param rgb: :return: ''' RGB = rgb.split(’,’) # 將RGB格式劃分開來 color = ’’ for i in RGB: num = int(i) # 將R、G、B分別轉化為16進制拼接轉換并大寫 hex() 函數用于將10進制整數轉換成16進制,以字符串形式表示 color += str(hex(num))[-2:].replace(’x’, ’0’).upper() return colordef img2excel(img_path,excelout_path): ''' 圖片轉換成excel :param img_path: 圖片地址 :param excelout_path: excel保存地址 :return: ''' img_src = Image.open(img_path) #寬高 img_width=img_src.size[0] img_height=img_src.size[1] print('圖片寬%s,高%s'%(img_width,img_height)) # 類型 # print(img_src.mode) if img_src.mode != 'RGB': img_src = img_src.convert(’RGB’) str_strlist = img_src.load() wb=openpyxl.Workbook() wb.save(excelout_path) wb=openpyxl.load_workbook(excelout_path) sheet=wb['Sheet'] sheet.title='img2excel' cell_width = 1.0 cell_height = cell_width * (2.2862 / 0.3612) print('正在瘋狂生成excel,請耐心等待...') #進度條 widgets=[’進度:’,Percentage(),’’,Bar(’#’),’’,Timer(),’ ’, ETA(), ’ ’] pb=ProgressBar(widgets=widgets) for w in pb(range(img_width)): for h in range(img_height): data = str_strlist[w,h] # 把元組rgb顏色變成字符串,轉換成16進制顏色(1,2,3)-->’1,2,3’ color=str(data).replace('(','').replace(')','') #16進制的顏色,不帶前面#號的,要#自己拼接到color前面即可 color=RGB_to_Hex(color) # 設置填充顏色為color,solid參數表示填充實色 fille=PatternFill('solid',fgColor=color) sheet.cell(h+1,w+1).fill=fille print('生成完成,正在設置單元格格式...') for i in range(1, sheet.max_row+1): sheet.row_dimensions[i].height=cell_height for i in range(1, sheet.max_column+1): sheet.column_dimensions[get_column_letter(i)].width = cell_width print(’格式設置完成,正在保存excel...’) wb.save(excelout_path) img_src.close() print('保存excel成功!請打開[%s]查看'%excelout_path)if __name__==’__main__’: import sys,os if len(sys.argv)!=3: print('請輸入圖片地址和excel保存的地址n' '例如命令行輸入 python img2excel_user.py D:/result.png D:/outExcel.xlsx') sys.exit(0) else: img_virify=[’.jpg’,’.png’,’.gif’,’.bmp’,’.jpeg’,’.jpe’,’.jfif’] excel_virify=[’.xlsx’,’.xlsm’,’.xltx’,’.xltm’] # 圖片地址 img_path=sys.argv[1] # excel保存地址 excelout_path=sys.argv[2] endName=os.path.splitext(img_path) if endName[1] not in img_virify: print('請選擇支持的圖片類型',img_virify) sys.exit(0) endName_excel=os.path.splitext(excelout_path) if endName_excel[1] not in excel_virify: print('excel 格式不支持,請選擇支持的格式',excel_virify) sys.exit(0) img2excel(r''+img_path+'',excelout_path)

運行:

python讀取圖片顏色值并生成excel像素畫的方法實例

原圖:

python讀取圖片顏色值并生成excel像素畫的方法實例

效果圖:

python讀取圖片顏色值并生成excel像素畫的方法實例

python讀取圖片顏色值并生成excel像素畫的方法實例python讀取圖片顏色值并生成excel像素畫的方法實例

總結

到此這篇關于python讀取圖片顏色值并生成excel像素畫的文章就介紹到這了,更多相關python讀取圖片顏色值生成excel像素畫內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: python
相關文章:
主站蜘蛛池模板: 五月天久久婷婷 | 国产精品久久影院 | 国产主播福利一区二区 | 国产看片在线 | 直接看黄的网站 | 999伊人| 影音先锋日韩资源 | 99精品国产一区二区三区 | 啪啪国产| 中文字幕在线播 | 麻豆国产精品视频 | 久久中文亚洲国产 | 又做又爱高清免费观看 | 手机在线观看精品国产片 | 亚洲欧美日韩国产色另类 | 亚洲国产精品自产拍在线播放 | 三级三级三级网站网址 | 日本在线日本中文字幕日本在线视频播放 | 日产国产欧美韩国在线 | 亚洲一区二区三区不卡在线播放 | 欧美做爱毛片 | 免费观看国产 | 久久精品成人欧美大片免费 | 特级做人爱c欧美网站 | 国产高清色播视频免费看 | 99精品视频不卡在线观看免费 | 黄色片中文字幕 | 国产美女挤奶水在线观看 | 成年男女男免费视频网站不卡 | 私人影院毛片 | 欧美亚洲国产激情一区二区 | 欧美日韩一区二区三区四区在线观看 | a毛片在线看片免费 | 九九久久99综合一区二区 | 成人欧美一区二区三区在线观看 | 国产在线一二三区 | 国产精品2022不卡在线观看 | 中文在线观看永久免费 | 永久免费看毛片 | 啪视频在线观看 | 亚洲美女亚洲精品久久久久 |