最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python將圖片批量從png格式轉(zhuǎn)換至WebP格式

 更新時(shí)間:2020年08月22日 22:28:44   投稿:daisy  
最近因?yàn)楣ぷ餍枰パ芯苛讼聀ng的壓縮,發(fā)現(xiàn)轉(zhuǎn)換成webp格式可以小很多,下面給大家分享利用Python將圖片批量從png格式轉(zhuǎn)換至WebP格式的方法,下面來一起看看。

實(shí)現(xiàn)效果

將位于/img目錄下的1000張.png圖片,轉(zhuǎn)換成.webp格式,并存放于img_webp文件夾內(nèi)。


源圖片目錄


目標(biāo)圖片目錄

關(guān)于批量生成1000張圖片,可以參考這篇文章:利用Python批量生成任意尺寸的圖片

實(shí)現(xiàn)示例

import glob
import os
import threading

from PIL import Image


def create_image(infile, index):
 os.path.splitext(infile)
 im = Image.open(infile)
 im.save("img_webp/webp_" + str(index) + ".webp", "WEBP")


def start():
 index = 0
 for infile in glob.glob("img/*.png"):
  t = threading.Thread(target=create_image, args=(infile, index,))
  t.start()
  t.join()
  index += 1


if __name__ == "__main__":
 start()

注意:該項(xiàng)目需要引用PIL庫。

考慮到是大量的線性密集型運(yùn)算,因此使用了多線程并發(fā)。通過threading.Thread()創(chuàng)建線程對(duì)象時(shí)注意,args參數(shù)僅接受元祖。

在這里,我們使用Image.open()函數(shù)打開圖像。

最終調(diào)用save("img_webp/webp_" + str(index) + ".webp", "WEBP")方法,以指定格式寫入指定位置。其中format參數(shù)為目標(biāo)格式。

下面是其他網(wǎng)友的補(bǔ)充

WebP與PNG, JPEG的轉(zhuǎn)換

webp文件是的谷歌制定的文件,編碼和解碼當(dāng)然要用谷歌自己提供的工具libwebp,別整那些有的沒的的方法。
如果再pc上的瀏覽器(如Chrome,Edge等)打開微信的推送,爬蟲爬取到圖片可能就是webp格式的

1、下載對(duì)應(yīng)平臺(tái)的libwebp

2、解壓得到二進(jìn)制文件,在bin目錄下(編程的使用include和lib目錄下的文件),以下是以windows 64bit為例,摘自readme.txt。詳細(xì)的可以使用-h選項(xiàng)查看具體的用法。

path/to/file description
bin/cwebp.exe encoding tool
bin/dwebp.exe decoding tool
bin/gif2webp.exe gif conversion tool
bin/vwebp.exe webp visualization tool
bin/webpinfo.exe webp analysis tool
lib/ static libraries
include/webp headers
test.webp a sample WebP file
test_ref.ppm the test.webp file decoded into the PPM format

3、其他 --> webp: cwebp [-preset <...>] [options] in_file [-o out_file]
4、webp --> 其他: dwebp in_file [options] [-o out_file]

  • 不指明格式默認(rèn)轉(zhuǎn)成PNG格式
  • webp文件名不能有空格

5、批量轉(zhuǎn)的話那就是腳本的事了,例如Python3腳本批量將webp轉(zhuǎn)png(轉(zhuǎn)換成png后再轉(zhuǎn)成其他格式就很簡(jiǎn)單了):

import os
import sys

decoder_path = r"path/to/dwebp.exe" # Windows10下其實(shí)也支持斜杠/路徑
webp_path = r"path/to/webp" # webp文件所在目錄,webp文件名不能有空格!
res_path = r"path/to/png_res" # 存儲(chǔ)轉(zhuǎn)換后圖片的目錄,假設(shè)是png

if not os.path.exists(res_path) :
  os.mkdir("result")

for f in os.listdir(webp_path):
  res_f = str(f).replace(".webp", ".png") # 若webp文件命名有特殊,這里需要改改映射規(guī)則
  cmd = "{0} {1} -o {2}".format(
    decoder_path, os.path.join(webp_path, f), os.path.join(res_path, res_f))
  os.system(cmd)

好了,這篇文章的內(nèi)容到這就基本結(jié)束了,大家都學(xué)會(huì)了嗎?希望對(duì)大家的學(xué)習(xí)和工作能有一定的幫助。

相關(guān)文章

  • Python自定義sorted排序?qū)崿F(xiàn)方法詳解

    Python自定義sorted排序?qū)崿F(xiàn)方法詳解

    這篇文章主要介紹了Python自定義sorted排序?qū)崿F(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 中秋陰天看不見月亮只好用python寫賞月工具

    中秋陰天看不見月亮只好用python寫賞月工具

    女神約我去賞月!我一看中秋節(jié)可能會(huì)下雨,立馬用Python寫了款賞月工具!本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Python代碼連接到 Chat GPT API的方法

    Python代碼連接到 Chat GPT API的方法

    Chat GPT 由于其獨(dú)特、近乎準(zhǔn)確且類似人類的響應(yīng),如今在互聯(lián)網(wǎng)上引起了過多的討論,本文討論如何通過 Python 代碼連接到 Chat GPT API,感興趣的朋友一起看看吧
    2023-02-02
  • python中使用while循環(huán)的實(shí)例

    python中使用while循環(huán)的實(shí)例

    在本篇內(nèi)容里小編給各位整理的是關(guān)于python中使用while循環(huán)的實(shí)例以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-08-08
  • 基于Python實(shí)現(xiàn)m3u8視頻下載

    基于Python實(shí)現(xiàn)m3u8視頻下載

    m3u8?是一種基于文本的媒體播放列表文件格式,通常用于指定流媒體播放器播放在線媒體流,本文將利用Python實(shí)現(xiàn)m3u8視頻下載器,感興趣的可以了解一下
    2023-05-05
  • tensorflow下的圖片標(biāo)準(zhǔn)化函數(shù)per_image_standardization用法

    tensorflow下的圖片標(biāo)準(zhǔn)化函數(shù)per_image_standardization用法

    這篇文章主要介紹了tensorflow下的圖片標(biāo)準(zhǔn)化函數(shù)per_image_standardization用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python去除字符串中的空格、特殊字符和指定字符的三種方法

    python去除字符串中的空格、特殊字符和指定字符的三種方法

    本文主要介紹了python去除字符串中的空格、特殊字符和指定字符的三種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python使用CRC實(shí)現(xiàn)圖片去重

    Python使用CRC實(shí)現(xiàn)圖片去重

    這篇文章主要為大家詳細(xì)介紹了Python如何使用CRC實(shí)現(xiàn)圖片去重功能,文中的示例代碼講解詳細(xì),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • python驗(yàn)證碼圖片處理(二值化)

    python驗(yàn)證碼圖片處理(二值化)

    這篇文章主要介紹了python驗(yàn)證碼圖片處理(二值化),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • python3.7環(huán)境下安裝Anaconda的教程圖解

    python3.7環(huán)境下安裝Anaconda的教程圖解

    這篇文章主要介紹了python3.7環(huán)境下安裝Anaconda的教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論

漳浦县| 潮安县| 柞水县| 祁门县| 阳春市| 聊城市| 通州市| 马关县| 济源市| 正定县| 青海省| 长垣县| 永修县| 息烽县| 囊谦县| 银川市| 白河县| 屏东县| 临西县| 永嘉县| 曲沃县| 保定市| 登封市| 饶阳县| 张家口市| 全南县| 天台县| 彭山县| 平罗县| 金山区| 平湖市| 疏勒县| 甘孜县| 安仁县| 鹰潭市| 漠河县| 梁平县| 万年县| 高州市| 河北省| 繁峙县|