Ad
cwebp
-- Resim dosyasını WebP dosyası olarak sıkıştırın
Özet
cwebp [options] input_file -o output_file.webp
Açıklama
cwebp
, bir resmi WebP biçimini kullanarak sıkıştırır. Giriş biçimi şunlardan biri olabilir:
PNG, JPEG, TIFF, WebP veya ham Y'CbCr örnekleri.
Not: Animasyonlu PNG ve WebP dosyaları desteklenmez.
Seçenekler
Temel seçenekler şunlardır:
-o string
- Çıkış WebP dosyasının adını belirtir. Atlanırsa
cwebp
gerçekleştirilecek yalnızca istatistikleri rapor eder. "-" kullanma çıkışı "stdout" öğesine yönlendirilir. -- string
- Giriş dosyasını açıkça belirtin. Bu seçenek,
dosya '-' ile başlıyor örneğine bakalım. Bu seçenek
last
görünmelidir. Sonrasında diğer seçenekler yoksayılır. -h, -help
- Kısa bir kullanım özeti.
-H, -longhelp
- Olası tüm seçeneklerin özeti.
-version
- Sürüm numarasını yazdırın (birincil.alt.revision olarak) ve çıkış yapın.
-lossless
- Resmi herhangi bir kayıp olmadan kodlayın. Alanı tamamen şeffaf olan resimlerde
görünmez piksel değerleri (R/G/B veya Y/U/V) yalnızca
-exact
seçeneği kullanılır. -near_lossless int
- Neredeyse kayıpsız görüntü işleme seviyesini belirleyin. Bu seçenek,
piksel değerleri daraltılabilir, ancak görsel üzerindeki etkisi minimum düzeydedir.
kalitedir. Kayıpsız sıkıştırma modunu otomatik olarak tetikler.
Aralık
0
(maksimum ön işleme) -100
arasındadır (ön işleme yok, varsayılan olarak ayarlanır). Normal değer60
civarındadır.-q 100
ile kayıp olduğunu unutmayın bazen daha iyi sonuçlar verebilir. -q float
RGB kanalları için
0
ile100
arasında sıkıştırma faktörünü belirtin. İlgili içeriği oluşturmak için kullanılan varsayılan değer75
.Kayıplı sıkıştırma durumunda (varsayılan), küçük bir faktör daha küçük daha düşük kalitede olduğunu unutmayın. En yüksek kalite,
100
Kayıpsız sıkıştırma durumunda (
-lossless
seçeneği ile belirtilir), faktör daha yüksek bir sıkıştırma hızı sağlar ancak daha büyük bir dosya oluşturur. Maksimum sıkıştırma,100
değeri kullanılarak elde edilir.-z int
lossless
sıkıştırma modunu 0 arasında belirtilen bir düzeyde olacak şekilde açın ve 9. seviye en hızlı, 9 ise en yavaştır. Hızlı mod daha yavaş olanlardan daha büyük dosya boyutu üretir.-z 6
iyi bir varsayılan değerdir. Bu seçenek aslında kalite için önceden tanımlanmış bazı ayarların kısayoludur ve yöntem.-q
veya-m
seçenekleri daha sonra kullanılırsa bu seçeneğin etkisini geçersiz kılar.-alpha_q int
Alfa sıkıştırma için
0
ile arasında bir sıkıştırma faktörünü belirtin100
. Alfa,100
değeri kullanılarak kayıpsız sıkıştırılır. düşük değerler kayıplı bir sıkıştırmaya neden olur. Varsayılan değer100
-preset string
Belirli bir parametre türüne uygun olması için önceden tanımlanmış bir parametre kümesi belirtin kaynak malzeme. Olası değerler:
default
,photo
,picture
,drawing
,icon
,text
.-preset
, diğer parametrelerin üzerine yazdığından değerlerinin (-q
hariç) birinci) bu seçenek tercihen, bağımsız değişkenlerdir.-m int
Kullanılacak sıkıştırma yöntemini belirtin. Bu parametre, ticari değişimleri kontrol eder arasındaki farkları değerlendirebilirsiniz. Olası değerler
0
ile6
aralığındadır.4
varsayılan değerdir. Daha yüksek olduğunda kodlayıcı, ek incelemeleri yapmak için daha fazla zaman harcar ve ve kalite kazanımına karar vermeniz gerekecek. Daha düşük değer daha büyük dosya boyutlarına karşı daha hızlı işleme süresi Daha düşük sıkıştırma kalitesi.-crop x_position y_position width height
Kaynağı, koordinatlarda sol üst köşesi olan bir dikdörtgen olacak şekilde kırpın (
x_position
,y_position
) ve boyutwidth
xheight
. Bu kırpma alanı, kaynak dikdörtgen içinde tamamen bulunmalıdır. Not: Kırpma herhangi bir ölçeklendirmeden önce uygulanır.-resize width height
Kaynağı
width
xheight
boyutunda bir dikdörtgen olarak yeniden boyutlandırın. İkisinden biri genişlik veya yükseklik parametrelerinin (ikisi birden değil)0
olursa değer korunarak hesaplanır. Not: Ölçeklendirme, sonra uygulanır yardımcı olabilir.-mt
Mümkünse kodlama için çoklu iş parçacığı kullanın.
-low_memory
Sıkıştırılmış koddan dört kat tasarruf ederek kayıplı kodlamanın bellek kullanımını azaltın boyutu (tipik olarak). Bu durumda kodlama yavaşlar ve sonuç, boyut ve distorsiyon açısından biraz farklı. Bu işaret yalnızca şu süre için geçerlidir: varsayılan olarak kapalıdır. Bu işaretin kapalı bırakılmasının bit akışı üzerinde bazı yan etkilere sahip olur: Belirli bit akışını bölüm sayısı (
1
ile zorunlu kılınan) gibi özellikler içerir. Daha fazla bit akışı boyutunun ayrıntılı raporu bu ayar kullanılırkencwebp
tarafından yazdırılır seçeneğini belirleyin.
Kayıp Seçenekleri
Bu seçenekler yalnızca kayıplı kodlama (varsayılan, alfa sürümü olmadan) yapmayı deneyin.
-size int
- Sıkıştırılmış dosya için denenecek ve erişilecek bir hedef boyut (bayt cinsinden) belirtin.
çıktı. Kompresör, sıcaklığın düşük olması için
mümkün olduğunca yakınlaşmak için yapılması gerekenleri belirler. Hem
-size
hem de-psnr
kullanılır,-size
değeri geçerli olur. -psnr float
- Sıkıştırılmış çıktıya ulaşmaya çalışmak için bir hedef PSNR (dB cinsinden) belirtin.
Kompresör, sıcaklığın düşük olması için
olabildiğince yakın olması gerekir. Hem
-size
hem de-psnr
kullanılıyorsa-size
değeri geçerli olur. -pass int
- Seçeneklerin kullandığı ikilem sırasında kullanılacak maksimum kart sayısını belirleyin
-size
veya-psnr
. Maksimum değer10
, varsayılan değer1
. Eğer seçenekler-size
veya-psnr
kullanıldı ancak-pass
belirtilmedi; varsayılan değer '6' kart kullanılacak.-pass
belirtilmişse ancak-size
veya-psnr
ise 40 dB'lik bir hedef PSNR kullanılır. -af
- Otomatik filtreyi açar. Bu algoritma, optimizasyon için daha fazla zaman filtreleme gücünü artırır.
-jpeg_like
- Dahili parametre eşlemesini, beklenen boyutuyla daha iyi eşleşecek şekilde değiştir.
JPEG sıkıştırması. Bu işaret genellikle
(aynı
-q
ayarı için) JPEG eşdeğerine benzer bir boyuta sahiptir ancak daha az görsel distorsiyon.
Gelişmiş seçenekler:
-f int
0
arasında, engelleme filtresinin gücünü belirtin (filtreleme yok) ve100
(maksimum filtreleme).0
değeri tüm filtrelemeleri kapatır. Değerin yüksek olması, uygulanan filtreleme işleminin gücünü artırır. resmin kodunu çözdükten sonra. Değer ne kadar yüksek olursa görüntü de o kadar akıcı olur. görünür. Normal değerler genellikle20
-50
aralığındadır.-sharpness int
- Filtrelemenin keskinliğini belirtin (kullanılıyorsa). Aralık
0
(en keskin)7
(en az keskin) olarak.0
varsayılandır. -strong
- Güçlü filtreleme kullanın (
-f
seçeneği olarak sunulur). Güçlü filtreleme varsayılan olarak açıktır. -nostrong
- Güçlü filtrelemeyi devre dışı bırakın (
-f
seçeneği) tercih edin ve bunun yerine basit filtreleme kullanın. -sharp_yuv
- Gerekirse daha doğru ve daha keskin RGB->YUV dönüştürmesi kullanın. Bu işlem varsayılan "hızlı" işlemden daha yavaş RGB->YUV dönüşümü
-sns int
- Uzamsal gürültü şekillendirmenin genliğini belirtin. Üç boyutlu gürültü şekillendirme
(veya kısaca sns), yerleşik algoritmaların genel bir koleksiyonunu
resmin hangi kısmında nispeten daha az bit kullanılması gerektiğine karar vermek için kullanılır.
ve bu bit parçaların daha iyi aktarılabilmesi
için harika birer yöntem olabilir. Olası aralık
0
(algoritma kapalı) ile100
(maksimum etki) arasında. Varsayılan değer:50
-segments int
- SANS segmentasyonu sırasında kullanılacak bölüm sayısını değiştirin
algoritmasından faydalanırsınız. Segmentler
1
-4
aralığında olmalıdır.4
varsayılan değerdir.-low_memory
dışında, bu seçeneğin 3. ve sonraki yöntemler için etkisi yoktur. geçerlidir. -partition_limit int
- Bazı makro bloklar tarafından kullanılan bit sayısını sınırlayarak kaliteyi düşürün.
0
olan aralık (varsayılan değerde azalma yok,100
) ile100
(tam düşüş) aralığındadır. Orta büyüklükte resimler için yararlı değerler genellikle30
-70
civarındadır. İçinde kontrol bölümünün 512k limiti vardır ve şu bilgileri depolamak için kullanılır: makro bloğunun veya hangi segmente ait olduğu, 4x4 veya 4x4 biçiminde kodlanmış olup ve son olarak bu modların her biri için kullanılacak tahmin modları alt bloklar. Çok büyük resimlerde 512k, her bir resim için yalnızca birkaç bit 16x16 makro blok. Mutlak minimum değer, makro blok başına 4 bittir. Atla, ve mod bilgileri de bu 4 bitin neredeyse tamamını kullanabilir (ancak durum pek olası değildir). Bu da çok büyük resimler için soruna yol açar. İlgili içeriği oluşturmak için kullanılanpartition_limit
faktörü, en bit maliyetli modun ne sıklıkta kullanılacağını kontrol eder (intra 4x4) kullanılır. Bu, 512.000 sınırına ulaşıldığında yararlıdır. ve şu mesaj görüntülenir: Hata kodu: 6 (PARTITION0_OVERFLOW: 0 numaralı bölüm, 512k bölümüne sığamayacak kadar büyük). Şunu kullanıyorsanız:-partition_limit
, 512k kısıtlamasını karşılamak için yeterli değildir, makro blok başına daha fazla başlık biti kaydetmek için daha az segment kullanın. Görüntüleyin-segments
seçeneği.-m
ve-q
seçeneklerinin de kodlayıcının kararlarını ve bu sınıra ulaşma kabiliyetini
Günlük Kaydı Seçenekleri
Şu seçenekler çıkış düzeyini kontrol eder:
-v
- Ekstra bilgi yazdırın (özellikle kodlama süresini).
-print_psnr
- Ortalama PSNR'yi (En Yüksek Sinyal-Gürültü Oranı) hesaplayıp raporlayın.
-print_ssim
- Ortalama SSIM'yi (yapısal benzerlik metriği, bkz. https://en.wikipedia.org/wiki/SSIM) ziyaret edebilirsiniz.
-print_lsim
- Yerel benzerlik metriğini hesaplayıp raporlama sütun komşuları) ekleyin.
-progress
- Kodlama ilerleme durumunu yüzde cinsinden bildirin.
-quiet
- Hiçbir şey yazdırmayın.
-short
- Test için yalnızca kısa bilgileri (çıktı dosyası boyutu ve PSNR) yazdır amaçlar.
-map int
- Kodlama bilgilerinin ek ASCII haritası çıkartılır. Olası harita değerleri
1
-6
aralığında değişiyor. Bunun amacı yalnızca hata ayıklamaya yardımcı olmaktır.
Ek Seçenekler
Diğer gelişmiş seçenekler şunlardır:
-s width height
- Giriş dosyasının aslında ham Y'CbCr örneklerinden oluştuğunu belirtin
4:2:0 doğrusal biçiminde, ITU-R BT.601 önerisi uygulayarak. İlgili içeriği oluşturmak için kullanılan
luma düzlemi
width
xheight
boyutundadır. -pre int
- Ön işleme adımlarından bazılarını belirtin.
2
değeri kullanılması şu işlemi tetikler: RGBA->YUVA dönüşümü sırasında kaliteye bağlı sözde rastgele titreme (yalnızca kayıplı sıkıştırma). -alpha_filter string
- Alfa düzlemi için tahmine dayalı filtreleme yöntemini belirtir. Şunlardan biri:
Artan karmaşıklık ve yavaşlık sırasıyla
none
,fast
veyabest
.fast
varsayılandır. Dahili olarak, alfa filtreleme dört olası tahminler (hiçbiri, yatay, dikey, gradyan).best
her bir modu sırayla deneyecek ve daha küçük olan modu seçecek. seçin.fast
modu, herhangi bir işlem yapmadan önce öncelikli tahmin oluşturmaya çalışır. test ediyoruz. -alpha_method int
- Alfa sıkıştırma için kullanılan algoritmayı belirtin:
0
veya1
. Algoritma0
değeri sıkıştırma olmadığını belirtir,1
ise sıkıştırma için WebP kayıpsız biçimini kullanır. Varsayılan değer:1
. -exact
- RGB değerlerini şeffaf alanda koruyun. Size yardımcı olmak için varsayılan ayar "kapalı" özellikleri olabilir.
-blend_alpha int
- Bu seçenek, alfa kanalını (varsa) kaynak kodu kullanarak
onaltılı olarak 0xrrggbb olarak belirtilen arka plan rengi. Alfa
kanal daha sonra opak değere
255
sıfırlanır. -noalpha
- Bu seçenek kullanıldığında alfa kanalı silinir.
-hint string
- Giriş resmi türüyle ilgili ipucunu belirtin. Olası değerler:
photo
,picture
veyagraph
. -metadata string
Aşağıdaki durumlarda girişten çıkışa kopyalanacak meta verilerin virgülle ayrılmış listesi devam eder. Geçerli değerler:
all
,none
,exif
,icc
,xmp
. Varsayılan değernone
Her giriş biçiminin tüm kombinasyonları desteklemeyebileceğini unutmayın.
-noasm
Tüm derleme optimizasyonlarını devre dışı bırakın.
Hatalar
Lütfen tüm hataları sorun izleyiciye bildirin: https://issues.webmproject.org
Merhaba! Başlamak için şu sayfaya göz atın: https://www.webmproject.org/code/contribute/submitting-patches/
Örnekler
cwebp -q 50 -lossless picture.png -o picture_lossless.webp
cwebp -q 70 picture_with_alpha.png -o picture_with_alpha.webp
cwebp -sns 70 -f 50 -size 60000 picture.png -o picture.webp
cwebp -o picture.webp -- ---picture.png
Yazarlar
cwebp
, libwebp
bünyesindeki web sitesinde ve WebP ekibi tarafından yazılmıştır.
En son kaynak ağacı şu adrestedir:
https://chromium.googlesource.com/webm/libwebp/
Bu manuel sayfa Debian projesi için yazılmıştır (ve diğerleri).