cwebp 命令大全

本文由月小升博客https://java-er.com翻譯自google官方文檔https://developers.google.com/speed/webp/docs/cwebp

翻譯的感覺

  1. 我背了3年的單詞,有點用
  2. 翻譯讓我靜下心來仔細的閱讀官方文檔,對webp瞭解更深入一層了
    2020.02.29

cwebp

名字
cwebp — 壓縮一張圖片文件爲webp文件

摘要命令行

cwebp [options] input_file -o output_file.webp
描述
cwebp壓縮一張圖片爲WebP格式。輸入的數據可以是PNG, JPEG, TIFF, WebP 或者 raw Y’CbCr samples (備註,月小升沒看懂)

參數

基本參數:

-o string
制定輸出文件名稱。如果省略,cwebp將進行壓縮,輸出靜態報告,使用 “-” 作爲一個輸出名稱,將直接輸入到文件

-- string
明確制定輸入文件。這個選項以 – 開頭。這個選項必須出現在最後,任何其他在他後面的選項都會被忽略

-h, -help
幫助手冊簡單版

-H, -longhelp
幫助手冊詳情版

-version
打印版本

-lossless
編碼圖片,不需要進行任何損失。整個圖片,包含透明區域,看不見的像素值(R/G/B or Y/U/V)都會被保存。

-near_lossless int
指定無損壓縮級別對圖片處理預處理。這個參數用來調整像素幫助圖片的可壓縮性,但是儘可能減少圖片可見區域質量。 這個參數會自動觸發無損壓縮模式。參數範圍0-100,典型的數值爲60. 記住:有損壓縮-q 100 可以達到更好的結果。

-q float
爲RGB通道指定壓縮參數0-100, 默認值75

如果是在有損壓縮中(默認爲有損壓縮)參數越小,圖片質量越低,文件越小。最好的質量參數是100

如是是在無損壓縮中(特別是指定了 -lossless 參數),小的參數會獲得快的壓縮速度,但是生產出較大的文件。最大的壓縮值爲100.

-z int
https://java-er.com/blog/cwebp-useage/

切換無損壓縮模式級別從0-9,0最快,9最慢。速度越快文件越大。比較好的默認值是6. 這個參數是一個預定義壓縮質量快捷闡述。如果參數 -q 或者 -m 被隨後用到,這個-z 就無效了。

-alpha_q int
爲alpha壓縮指定一個0-100的數值。alpha無損壓縮用100,小於100將產生有損壓縮。默認值100.

-preset string
指定一組預定義的值用來區分不同的文件材料。可能的值有default, photo, picture, drawing, icon, text.

由於 -preset 覆蓋其他參數的值(除了-q),這個值最好出現在所有參數最前面。

-m int
制定壓縮模式。這個參數控制了編碼的速度,壓縮文件大小,質量。值範圍爲0-6. 默認4. 值越大,花費時間越大用來檢查額外的編碼能力和質量。小的值會產生快的壓縮速度,大的文件和低的壓縮質量。

-resize width height
調整源文件的寬高。如果任意一個寬或者高的參數爲0,那麼將按比例計算。

-crop x_position y_position width height
從左邊頂部的點開始(x_position, y_position)計算來裁切圖片。裁切區域必須在原文件圖片區域內。

-mt
如果支持,採用多線程編碼

-low_memory
通過節省四倍於壓縮大小(通常)來減少有損編碼的內存使用。 這將使編碼變慢,並且輸出的大小和失真會稍有不同。 該標誌僅對方法3及更高版本有效,在默認情況下處於禁用狀態。 請注意,禁用此標誌會對比特流產生一些副作用:它將強制執行某些比特流功能,例如分區數(強制爲1)。 請注意,使用此選項時,cwebp將打印更詳細的比特流大小報告。

有損壓縮選項

這些選項僅僅對有損壓縮有效(默認情況下,帶或者不帶alpha)

-size int
爲輸出文件指定一個目標大小(單位bytes),壓縮器將多次壓縮以接近這個目標。如果-size 和 -psnr 同時使用, 那麼-size 優先

-psnr float
指定目標PSNR(以dB爲單位)以嘗試達到壓縮輸出。 壓縮程序將通過幾次部分編碼,以便儘可能接近此目標。 如果同時使用-size和-psnr,則以-size值爲準。

-pass int
設置選項-size或-psnr程序執行期間要使用的最大通過次數。 最大值爲10,默認值爲1。如果使用選項-size或-psnr,但未指定-pass,則將使用默認值“6”。

-af
打開自動過濾器。 該算法將花費額外的時間來優化過濾強度以達到均衡的質量。

-jpeg_like
更改內部參數映射以更好地匹配JPEG壓縮的預期大小。 通常,此標誌將產生與JPEG等效的大小相似的輸出文件(對於相同的-q設置),但視覺失真較小。

高級選項:

-f int
指定解過濾器的強度,介於0(不過濾)和100(最大過濾)之間。 值爲0將關閉任何過濾。 較高的值將增加在解碼圖片後應用的濾波過程的強度。 值越高,圖片將顯得越平滑。 典型值通常在20到50的範圍內。

-sharpness int
指定過濾的清晰度(如果使用)。 範圍是0(最清晰)至7(最不清晰)。 默認值爲0。

-strong
使用強過濾(如果通過-f選項使用了過濾)。 默認情況下,強過濾處於啓用狀態。

-nostrong
禁用強過濾(如果通過-f選項使用了過濾),而改用簡單過濾。

-sharp_yuv
如果需要,請使用更準確,更清晰的RGB-> YUV轉換。 請注意,此過程比默認的“快速” RGB-> YUV轉換要慢。

-sns int
指定空間噪聲整形的幅度。 空間噪聲整形(或簡稱爲sns)是指用於確定圖片的哪個區域應使用相對較少的位以及在何處更好地傳輸這些位的內置算法的常規集合。 可能的範圍是從0(關閉算法)到100(最大效果)。 默認值爲50。

-segments int
更改在sns算法分段期間要使用的分區數。 段的範圍應爲1到4。默認值爲4。除非使用-low_memory,否則此選項對方法3及更高版本無效。

-partition_limit int
通過限制某些宏塊使用的位數來降低質量。範圍是0(無降級,默認)到100(完全降級)。對於中等大小的圖像,有用的值通常在30-70左右。在VP8格式中,所謂的控制分區限制爲512k,用於存儲以下信息:宏塊是否被跳過,宏塊屬於哪個段,是否被編碼爲4×4幀內或16×16幀內模式;以及最後,將預測模式用於每個子塊。對於非常大的圖像,每個16×16宏塊只有512k的空間。每個宏塊的絕對最小值爲4位。跳過,分段和模式信息幾乎會用完所有這4位(儘管情況不太可能),這對於非常大的圖像來說是個問題。 partition_limit因子控制將使用最昂貴的模式(4×4內)的頻率。如果達到512k限制並顯示以下消息,這將很有用:錯誤代碼:6(PARTITION0_OVERFLOW:分區#0太大,無法容納512k)。如果使用-partition_limit不足以滿足512k約束,則應使用較少的段,以便爲每個宏塊節省更多的報頭位。請參閱-segments選項。

https://java-er.com/blog/cwebp-useage/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章