webp

Tên

cwebp – Nén tệp hình ảnh thành tệp WebP

Tóm tắt phim

cwebp [options] input_file -o output_file.webp

Mô tả

cwebp nén hình ảnh bằng định dạng WebP. Định dạng mục nhập có thể là Mẫu PNG, JPEG, TIFF, WebP hoặc mẫu Y'CbCr thô. Lưu ý: Các tệp PNG động và WebP không được hỗ trợ.

Tùy chọn

Các tuỳ chọn cơ bản là:

-o string
Chỉ định tên của tệp WebP đầu ra. Nếu bạn bỏ qua, cwebp sẽ thực hiện nén mà chỉ báo cáo số liệu thống kê. Sử dụng "-" làm tên đầu ra sẽ chuyển đầu ra tới "stdout".
-- string
Chỉ định rõ tệp đầu vào. Tuỳ chọn này rất hữu ích nếu dữ liệu đầu vào tệp bắt đầu bằng '-' chẳng hạn. Lựa chọn này phải xuất hiện last. Sau đó, mọi tuỳ chọn khác sẽ bị bỏ qua.
-h, -help
Tóm tắt về hoạt động sử dụng.
-H, -longhelp
Bản tóm tắt tất cả phương án có thể áp dụng.
-version
In số phiên bản (dưới dạng main.minor.revision) rồi thoát.
-lossless
Mã hoá hình ảnh mà không bị mất dữ liệu. Đối với hình ảnh có vùng hoàn toàn trong suốt, các giá trị pixel vô hình (R/G/B hoặc Y/U/V) sẽ chỉ được bảo toàn nếu Tuỳ chọn -exact được sử dụng.
-near_lossless int
Chỉ định mức độ xử lý trước hình ảnh gần như không bị suy hao. Tùy chọn này điều chỉnh để tăng khả năng nén, nhưng ảnh hưởng rất ít đến hình ảnh chất lượng. Phương thức này tự động kích hoạt chế độ nén không tổn hao. Phạm vi từ 0 (xử lý trước tối đa) đến 100 (không xử lý trước, mặc định). Giá trị thông thường là vào khoảng 60. Lưu ý rằng có tổn hao với -q 100 đôi khi có thể mang lại kết quả tốt hơn.
-q float

Chỉ định hệ số nén cho các kênh RGB trong khoảng từ 0 đến 100. Chiến lược phát hành đĩa đơn mặc định là 75.

Trong trường hợp nén có tổn hao (mặc định), một yếu tố nhỏ sẽ tạo ra có chất lượng thấp hơn. Chất lượng tốt nhất đạt được bằng cách sử dụng giá trị của 100.

Trong trường hợp nén không tổn hao (được chỉ định theo tuỳ chọn -lossless), yếu tố nhỏ cho phép tốc độ nén nhanh hơn nhưng tạo ra tệp lớn hơn. Độ nén tối đa đạt được bằng cách sử dụng giá trị 100.

-z int

Bật chế độ nén lossless với mức được chỉ định trong khoảng từ 0 và 9, với cấp 0 là nhanh nhất, 9 là chậm nhất. Chế độ nhanh tạo ra kích thước tệp lớn hơn các tệp chậm hơn. Giá trị mặc định phù hợp là -z 6. Tuỳ chọn này thực ra là lối tắt cho một số chế độ cài đặt chất lượng định sẵn và phương thức. Nếu sau đó bạn sử dụng các tuỳ chọn -q hoặc -m, chúng sẽ làm mất hiệu lực tác động của tuỳ chọn này.

-alpha_q int

Chỉ định hệ số nén để nén alpha từ 0 đến 100 Nén alpha không tổn hao bằng cách sử dụng giá trị 100, còn giá trị thấp hơn sẽ dẫn đến nén có tổn hao. Mặc định là 100.

-preset string

Chỉ định một tập hợp các tham số được xác định trước để phù hợp với một loại tài liệu nguồn. Các giá trị có thể là: default, photo, picture, drawing, icon, text.

-preset ghi đè các tham số khác các giá trị (ngoại trừ -q một), tuỳ chọn này nên xuất hiện đầu tiên theo thứ tự của đối số.

-m int

Chỉ định phương thức nén sẽ sử dụng. Thông số này kiểm soát giao dịch thương mại giữa tốc độ mã hoá và kích thước cũng như chất lượng của tệp nén. Các giá trị có thể nằm trong khoảng từ 0 đến 6. Giá trị mặc định là 4. Khi ở mức cao hơn có sử dụng các giá trị khác nhau, thì bộ mã hoá sẽ mất nhiều thời gian hơn để kiểm tra các khả năng mã hoá và quyết định mức tăng chất lượng. Giá trị thấp hơn có thể dẫn đến thời gian xử lý nhanh hơn nhưng đổi lại kích thước tệp lớn hơn và chất lượng nén thấp hơn.

-crop x_position y_position width height

Cắt nguồn thành một hình chữ nhật có góc trên cùng bên trái tại toạ độ (x_position, y_position) và kích thước width x height. Kiểu cắt này phải được chứa hoàn toàn trong hình chữ nhật nguồn. Lưu ý: việc cắt được áp dụng trước khi bất kỳ tỷ lệ nào.

-resize width height

Đổi kích thước nguồn thành hình chữ nhật có kích thước width x height. Nếu (nhưng không phải cả hai) của tham số chiều rộng hoặc chiều cao là 0, giá trị sẽ là đã tính toán giúp duy trì tỷ lệ khung hình. Lưu ý: việc điều chỉnh tỷ lệ được áp dụng sau cắt.

-mt

Sử dụng phương thức đa luồng để mã hoá (nếu có thể).

-low_memory

Giảm mức sử dụng bộ nhớ của phương thức mã hoá có tổn hao bằng cách tiết kiệm gấp bốn lần dung lượng bộ nhớ được nén kích thước (thông thường). Việc này sẽ làm cho quá trình mã hoá chậm hơn và kết quả hơi khác nhau về kích thước và độ méo hình. Cờ này chỉ có hiệu lực cho phương thức 3 trở lên và bị tắt theo mặc định. Lưu ý rằng hãy tắt cờ này sẽ có một số tác dụng phụ đối với luồng bit: nó buộc các bit nhất định các tính năng như số lượng phân vùng (được buộc thành 1). Xin lưu ý rằng, báo cáo chi tiết về kích thước luồng bit được cwebp in khi sử dụng .

Tùy chọn tổn hao

Các tuỳ chọn này chỉ có hiệu quả khi mã hoá có tổn hao (mặc định, với hoặc không có alpha).

-size int
Chỉ định kích thước mục tiêu (tính bằng byte) để thử và tiếp cận cho tệp nén đầu ra. Bộ nén sẽ thực hiện một số lần mã hoá một phần trong để tiến gần mục tiêu này nhất có thể. Nếu cả -size và Bạn đang sử dụng -psnr, giá trị -size sẽ được ưu tiên áp dụng.
-psnr float
Chọn PSNR mục tiêu (tính bằng dB) để thử và tiếp cận cho đầu ra nén. Bộ nén sẽ thực hiện một số lượt mã hoá một phần để có càng gần mục tiêu này càng tốt. Nếu bạn dùng cả -size-psnr, Giá trị -size sẽ được ưu tiên áp dụng.
-pass int
Đặt số lượng thẻ và vé tối đa để sử dụng trong quá trình phân tách mà các lựa chọn sử dụng -size hoặc -psnr. Giá trị tối đa là 10, giá trị mặc định là 1. Nếu tùy chọn -size hoặc -psnr đã được sử dụng, nhưng -pass chưa được chỉ định, làm giá trị mặc định trong số '6' thẻ và vé sẽ được sử dụng. Nếu bạn chỉ định -pass, nhưng không phải -size-psnr thì sẽ sử dụng PSNR mục tiêu là 40 dB.
-af
Bật bộ lọc tự động. Thuật toán này sẽ dành thêm thời gian để tối ưu hoá cường độ lọc để đạt được chất lượng cân bằng.
-jpeg_like
Thay đổi ánh xạ tham số nội bộ để phù hợp hơn với kích thước dự kiến của Nén JPEG. Cờ này thường sẽ tạo ra một tệp đầu ra kích thước tương tự như ảnh JPEG tương đương (cho cùng chế độ cài đặt -q), nhưng có giảm hiện tượng méo hình.

Tùy chọn nâng cao:

-f int
Chỉ định độ mạnh của bộ lọc huỷ chặn, trong khoảng từ 0 (không lọc) và 100 (lọc tối đa). Giá trị 0 sẽ tắt mọi bộ lọc. Giá trị cao hơn sẽ làm tăng cường độ của quy trình lọc được áp dụng sau khi giải mã hình ảnh. Giá trị càng cao thì ảnh càng mượt sẽ xuất hiện. Các giá trị điển hình thường nằm trong khoảng từ 20 đến 50.
-sharpness int
Chọn độ sắc nét của bộ lọc (nếu sử dụng). Phạm vi là 0 (sắc nét nhất) thành 7 (ít sắc nét nhất). Mặc định là 0.
-strong
Sử dụng chế độ lọc mạnh (nếu bạn đang dùng tính năng lọc nhờ có -f ). Chế độ lọc mạnh được bật theo mặc định.
-nostrong
Tắt chế độ lọc mạnh (nếu chế độ lọc đang được sử dụng nhờ -f ) và thay vào đó hãy sử dụng cách lọc đơn giản.
-sharp_yuv
Sử dụng công cụ chuyển đổi RGB->YUV chính xác và sắc nét hơn nếu cần. Lưu ý rằng quá trình chậm hơn so với mặc định "nhanh" Chuyển đổi RGB->YUV.
-sns int
Chỉ định biên độ của định hình tiếng ồn không gian. Định hình nhiễu không gian (hay viết tắt là sns) là một tập hợp chung các thuật toán tích hợp sẵn được dùng để quyết định vùng nào của ảnh nên sử dụng tương đối ít bit hơn, và nơi khác để chuyển những bit này hiệu quả hơn. Phạm vi có thể có giá trị từ 0 (thuật toán tắt) đến 100 (hiệu ứng tối đa). Giá trị mặc định là 50.
-segments int
Thay đổi số lượng phân vùng để sử dụng trong quá trình phân đoạn sns thuật toán. Phân đoạn phải nằm trong dải ô từ 1 đến 4. Giá trị mặc định là 4. Tuỳ chọn này không có hiệu lực đối với các phương thức từ 3 trở lên, trừ phi -low_memory là sử dụng.
-partition_limit int
Giảm chất lượng bằng cách giới hạn số lượng bit mà một số khối macro sử dụng. Phạm vi là 0 (không suy giảm, mặc định) đến 100 (xuống cấp hoàn toàn). Giá trị hữu ích thường nằm trong khoảng 3070 đối với những hình ảnh có kích thước vừa phải. Ngang bằng còn được gọi là phân vùng điều khiển, được gọi là phân vùng điều khiển có giới hạn là 512k và được dùng để lưu trữ các thông tin sau: liệu khối macro bị bỏ qua, nó thuộc về phân đoạn nào, cho dù nó được mã hoá là intra 4x4 hay trong chế độ 16x16 và cuối cùng là các chế độ dự đoán để sử dụng cho mỗi chế độ các khối phụ. Đối với hình ảnh rất lớn, 512k chỉ chừa ra chỗ trống cho một vài bit mỗi Khối macro 16x16. Tối thiểu tuyệt đối là 4 bit cho mỗi khối macro. Bỏ qua, thông tin phân đoạn và chế độ có thể sử dụng gần như toàn bộ 4 bit này (mặc dù trường hợp hiếm gặp). Đây là vấn đề đối với các hình ảnh rất lớn. Chiến lược phát hành đĩa đơn Yếu tố partition_limit kiểm soát tần suất của chế độ chi phí bit cao nhất (intra 4x4) sẽ được sử dụng. Điều này hữu ích trong trường hợp đã đạt đến giới hạn 512k và thông báo sau sẽ xuất hiện: Mã lỗi: 6 (PARTITION0_OVERFLOW: Phân vùng #0 quá lớn để vừa với 512k). Nếu sử dụng -partition_limit là không đủ để đáp ứng giới hạn 512k, bạn nên sử dụng ít phân đoạn hơn để tiết kiệm nhiều bit tiêu đề hơn cho mỗi khối macro. Xem tuỳ chọn -segments. Xin lưu ý rằng các tuỳ chọn -m-q cũng ảnh hưởng đến quyết định và khả năng của bộ mã hoá đạt đến giới hạn này.

Tuỳ chọn ghi nhật ký

Các tuỳ chọn sau đây kiểm soát mức đầu ra:

-v
In thêm thông tin (cụ thể là thời gian mã hoá).
-print_psnr
Tính toán và báo cáo PSNR trung bình (Tỷ lệ cao nhất-tín hiệu-nhiễu âm).
-print_ssim
Tính toán và báo cáo SSIM trung bình (chỉ số tương đồng về cấu trúc, xem https://en.wikipedia.org/wiki/SSIM để biết thêm thông tin chi tiết).
-print_lsim
Tính toán và báo cáo chỉ số độ tương đồng cục bộ (tổng sai số thấp nhất trong số các pixel được sắp xếp xung quanh).
-progress
Báo cáo tiến trình mã hoá theo tỷ lệ phần trăm.
-quiet
Không in bất kỳ nội dung nào.
-short
Chỉ in thông tin tóm tắt (kích thước tệp đầu ra và PSNR) để thử nghiệm .
-map int
Xuất ra bản đồ ASCII bổ sung của thông tin mã hoá. Các giá trị bản đồ có thể có dao động từ 1 đến 6. Thao tác này chỉ nhằm mục đích hỗ trợ gỡ lỗi.

Tùy chọn bổ sung

Các tuỳ chọn nâng cao khác là:

-s width height
Chỉ định rằng tệp đầu vào thực sự bao gồm các mẫu Y'CbCr thô theo khuyến nghị ITU-R BT.601, ở định dạng tuyến tính 4:2:0. Chiến lược phát hành đĩa đơn mặt phẳng luma có kích thước width x height.
-pre int
Chỉ định một số bước xử lý trước. Việc sử dụng giá trị 2 sẽ kích hoạt phối màu giả ngẫu nhiên phụ thuộc vào chất lượng trong quá trình chuyển đổi RGBA->YUVA (chỉ nén mất dữ liệu).
-alpha_filter string
Chỉ định phương pháp lọc dự đoán cho mặt phẳng alpha. Một trong số none, fast hoặc best, có thứ tự tăng dần độ phức tạp và chậm trễ. Mặc định là fast. Trong nội bộ, quá trình lọc alpha được thực hiện bằng cách sử dụng 4 các dự đoán khả thi (không có, ngang, dọc, chuyển màu). best sẽ thử lần lượt từng chế độ và chọn chế độ đem lại kích thước nhỏ hơn kích thước. Chế độ fast sẽ chỉ cố gắng đưa ra dự đoán trước tiên mà không đang thử nghiệm mọi chế độ.
-alpha_method int
Chỉ định thuật toán dùng để nén alpha: 0 hoặc 1. Thuật toán 0 biểu thị là không nén, 1 dùng định dạng WebP không tổn hao để nén. Giá trị mặc định là 1.
-exact
Duy trì các giá trị RGB trong vùng trong suốt. Tuỳ chọn mặc định là tắt, để trợ giúp độ nén.
-blend_alpha int
Tùy chọn này kết hợp kênh alpha (nếu có) với nguồn sử dụng màu nền được chỉ định bằng hệ thập lục phân là 0xrrggbb. Phiên bản alpha sau đó được đặt lại thành giá trị mờ 255.
-noalpha
Việc sử dụng tuỳ chọn này sẽ loại bỏ kênh alpha.
-hint string
Chỉ định gợi ý về loại hình ảnh đầu vào. Các giá trị có thể sử dụng là: photo, picture hoặc graph.
-metadata string

Danh sách siêu dữ liệu được phân tách bằng dấu phẩy để sao chép từ dữ liệu đầu vào sang đầu ra nếu hiện tại. Các giá trị hợp lệ: all, none, exif, icc, xmp. Mặc định là none.

Xin lưu ý rằng mỗi định dạng đầu vào có thể không hỗ trợ tất cả các cách kết hợp.

-noasm

Tắt tất cả tính năng tối ưu hoá cấu thành.

Lỗi

Ví dụ

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

Tác giả

cwebp là một phần của libwebp và do nhóm WebP viết. Cây nguồn mới nhất hiện có tại https://chromium.googlesource.com/webm/libwebp/

Trang thủ công này được viết cho dự án Debian (và có thể được sử dụng bởi khác).