2 điểm bởi GN⁺ 2024-03-02 | 2 bình luận | Chia sẻ qua WhatsApp

JPEG XL và biên Pareto

  • Phát hành libjxl phiên bản 0.10: Phiên bản mới của libjxl, bản triển khai tham chiếu của JPEG XL, đã được phát hành. Cải tiến chính của phiên bản này là triển khai hoàn chỉnh API 'mã hóa streaming'.
  • API mã hóa streaming: Cho phép mã hóa các ảnh lớn theo từng 'mảnh'. Thay vì xử lý toàn bộ ảnh cùng một lúc, có thể xử lý theo cách thân thiện hơn với bộ nhớ.

Không mất dữ liệu: cải thiện lớn về mức dùng bộ nhớ và tốc độ

  • Cải thiện so với libjxl phiên bản 0.9: Ở phiên bản trước, mã hóa JPEG XL không mất dữ liệu tiêu tốn nhiều bộ nhớ và mất nhiều thời gian. Khi mã hóa ảnh lớn, điều này có thể gây ra các vấn đề nghiêm trọng.
  • Ví dụ ảnh Trái Đất ban đêm của NASA: Để nén một ảnh kích thước 13500×6750, libjxl 0.9 cần khoảng 8GB RAM và hơn 2 phút. Sau khi nâng cấp lên libjxl 0.10, có thể nén chỉ với 0.7GB RAM trong 30 giây.
  • Kết quả theo nhiều mức effort khác nhau: Bảng cung cấp so sánh mức dùng bộ nhớ, thời gian và kích thước nén theo các mức effort khác nhau (e1~e9). Effort càng cao thì khả năng nén càng tốt, nhưng mức cải thiện là phi tuyến.

Biên Pareto

  • So sánh công nghệ nén: Không chỉ kích thước tệp nén mà tốc độ mã hóa cũng quan trọng. Cần xem xét hai chiều là mật độ nén và tốc độ mã hóa.
  • Tối ưu Pareto: Là trường hợp không có phương pháp nào khác đạt cùng mật độ nén trong ít thời gian hơn. Một phương pháp tối ưu Pareto sẽ cho ra tệp nhỏ nhất trong phạm vi ngân sách thời gian nhất định.
  • Trực quan hóa biên Pareto: Được biểu diễn bằng biểu đồ thể hiện tốc độ mã hóa và mật độ nén. Sử dụng nhiều bộ ảnh khác nhau để so sánh tốc độ trung bình và mật độ nén.

Ảnh không phải ảnh chụp

  • Tầm quan trọng của việc chọn ảnh thử nghiệm: Nếu phần lớn ảnh là ảnh chụp, chúng khó nén hơn do có nhiễu tự nhiên.
  • Trường hợp ảnh truyện tranh: Ảnh không phải ảnh chụp nén tốt hơn rất nhiều so với ảnh chụp. Ảnh truyện tranh có thể được nén xuống khoảng 4bpp.
  • Cải tiến của libjxl: Phiên bản mới của libjxl nhanh hơn nhiều so với phiên bản trước và cũng cho tỷ lệ nén tốt hơn.

Về nén mất dữ liệu

  • Benchmark nén mất dữ liệu: Chỉ kích thước nén và tốc độ là quan trọng. Chất lượng ảnh cần được xem như chiều thứ ba.
  • Hiệu năng của codec và encoder ảnh mất dữ liệu: Có thể hoạt động khác nhau ở các mức chất lượng khác nhau. Một encoder hoạt động tốt ở mức chất lượng cao chưa chắc cũng hoạt động tốt ở mức chất lượng thấp.

Biên Pareto cho nén mất dữ liệu

  • Các encoder được thử nghiệm: Đã thử nghiệm các phiên bản mới nhất của nhiều encoder như libjpeg-turbo, sjpeg, mozjpeg, jpegli, libavif / libaom, libjxl, libwebp, libheif.
  • Chất lượng trung bình: Kết quả ở thiết lập tương ứng với điểm SSIMULACRA2 là 60. Đây là mức phù hợp nhất khi việc giảm trọng lượng trang quan trọng hơn độ trung thực của ảnh.
  • Chất lượng trung cao và chất lượng cao: Kết quả ở các thiết lập tương ứng với điểm SSIMULACRA2 là 70 và 85. Ở các mốc chất lượng cao, JPEG XL chủ yếu chiếm lĩnh biên Pareto.

Kết luận

  • Cải tiến của libjxl phiên bản 0.10: Mức tiêu thụ bộ nhớ giảm mạnh, đặc biệt tốc độ mã hóa không mất dữ liệu đa luồng được cải thiện.
  • Khẳng định vị thế của JPEG XL: Được xác nhận là tối ưu Pareto ở nhiều thiết lập tốc độ, từ chất lượng cao đến gần như không mất dữ liệu về mặt thị giác.
  • Sức hút bền bỉ của JPEG: Encoder jpegli mới mang lại cải thiện về tốc độ và khả năng nén. Khi cần mã hóa cực nhanh, đây vẫn có thể là lựa chọn tốt nhất.
  • Đóng góp của Cloudinary: Tích cực tham gia mang đến trải nghiệm người dùng tốt nhất bằng cách áp dụng công nghệ và insight mới nhất trong lĩnh vực nén ảnh.

Ý kiến của GN⁺

  • Việc phát hành libjxl 0.10 cho thấy một bước tiến quan trọng trong công nghệ nén ảnh. Đặc biệt, cải thiện lớn về mức dùng bộ nhớ và tốc độ mã hóa khi xử lý ảnh lớn sẽ mang lại lợi ích đáng kể cho người dùng.
  • Việc nhấn mạnh rằng JPEG XL là tối ưu Pareto ở nhiều mức chất lượng và tốc độ là hữu ích ở chỗ nó giúp người dùng tìm ra điểm cân bằng tối ưu giữa chất lượng ảnh và kích thước tệp.
  • Ở góc nhìn phản biện, việc áp dụng công nghệ mới như libjxl có thể gây ra vấn đề tương thích với hạ tầng hiện có. Vì vậy, cần triển khai theo lộ trình từng bước có cân nhắc đến khả năng tích hợp với các hệ thống hiện tại.
  • Khi lựa chọn công nghệ nén ảnh, cần cân nhắc nhiều yếu tố như tốc độ mã hóa và giải mã, kích thước tệp, cũng như các nền tảng và thiết bị được hỗ trợ. JPEG XL là một lựa chọn hấp dẫn cho nén ảnh chất lượng cao, nhưng chưa được hỗ trợ rộng rãi trên mọi người dùng và hệ thống.
  • Lợi ích của việc áp dụng công nghệ này là giảm mức dùng bộ nhớ, tăng tốc độ mã hóa và giảm kích thước tệp; mặt trái có thể là vấn đề tương thích với hệ thống hiện có và đường cong học tập đối với công nghệ mới.

2 bình luận

 
dofuuz 2024-03-08

Bộ mã hóa jpegli lại một lần nữa kéo dài tuổi thọ của jpg sau mozjpeg...
Được phe JXL tạo ra, nhưng trớ trêu thay, nó cũng có thể cản trở việc phổ biến JXL...

 
GN⁺ 2024-03-02
Ý kiến trên Hacker News
  • Hiệu năng nén không mất dữ liệu của định dạng WebP rất xuất sắc

    Tính năng nén lossless của WebP vượt trội hơn nhiều so với PNG hay OptiPNG cả về hiệu năng lẫn tốc độ, và hiện được hỗ trợ rộng rãi trên Internet. Ngoài ra, nó cũng tốt hơn nhiều so với AVIF lossless.

  • Đánh giá khả năng giữ lại chi tiết của JPEG ở thiết lập chất lượng thấp

    JPEG rất giỏi trong việc giữ chất lượng tổng thể của hình ảnh ngay cả ở thiết lập chất lượng thấp, đồng thời biến các chi tiết thành một phong cách nghệ thuật trừu tượng. Trong khi đó, JXL và AVIF lại bị mờ đi.

  • Khó khăn của người dùng khi tìm thông tin chi tiết về định dạng JPEG XL

    Rất khó tìm được trang web hay tài liệu giải thích chi tiết từng bước của định dạng JPEG XL. JPEG XL chứa nhiều kỹ thuật đổi mới, nhưng lại thiếu tài liệu giúp tìm hiểu sâu về chúng.

  • Thắc mắc về bài viết tập trung vào tốc độ mã hóa

    Trên máy tính hiện đại, tốc độ giải mã không phải là vấn đề lớn, nhưng dữ liệu về tốc độ vẫn là điều thú vị để xem xét.

  • Đánh giá về chất lượng và khả năng nén của JPEG XL

    JPEG XL rất xuất sắc trong việc tạo ra hình ảnh nén chất lượng cao chỉ với các thiết lập đơn giản. Các codec khác cần nhiều thiết lập chất lượng khác nhau tùy theo loại ảnh để đạt được kết quả tương tự.

  • Thư viện xử lý song song mới được phát triển nhờ dự án JPEG XL

    Dự án JPEG XL đã phát triển một thư viện xử lý song song mới có tên Highway. Thư viện này không chỉ được dùng cho JPEG XL mà còn được sử dụng trong mô hình AI Gemma mới nhất của Google.

  • Phản ứng về việc đưa định dạng QOI vào

    Thật thú vị khi định dạng QOI, vốn chỉ nhắm tới mức "đủ ổn" và không được hỗ trợ mặc định trong phần mềm phổ thông, lại được đưa vào benchmark mã hóa ảnh phi nhiếp ảnh.

  • Phiên bản mới của libjxl giảm mạnh mức tiêu thụ bộ nhớ

    Phiên bản mới của libjxl giúp giảm đáng kể mức tiêu thụ bộ nhớ ở cả nén mất dữ liệu lẫn không mất dữ liệu, đồng thời cải thiện tốc độ mã hóa lossless đa luồng. Bài viết cũng được viết rất tốt.

  • Lợi ích khi tái nén các tệp JPEG cũ bằng JPEG XL

    Với JPEG XL, có thể tái nén các tệp JPEG cũ để tiết kiệm từ 15% đến 30% dung lượng, đồng thời khôi phục lại tệp JPG gốc hoàn toàn giống hệt ở mức bit.

  • Đề cập đến khả năng tiết kiệm thêm của AVIF không mất dữ liệu

    Có ý kiến cho rằng AVIF lossless có thể mang lại mức tiết kiệm lớn hơn nữa.