Có phải chỉ cần mở và đóng tệp JPEG sẽ làm giảm chất lượng hình ảnh?


24

Tôi đã có khá nhiều lớp học nhiếp ảnh, đọc nhiều sách ảnh và sàng lọc nhiều diễn đàn. Và tôi không thể tìm thấy một câu trả lời nhất quán cho câu hỏi này. Một "trại" nói rằng có sự mất chất lượng hình ảnh mỗi khi bạn mở và đóng tệp JPEG (do nén). Các trại khác nói rằng không làm giảm chất lượng hình ảnh trừ khi bạn thực sự CHỈNH SỬA ảnh, sau đó lưu lại.

Liệu nó có làm nên sự khác biệt nếu:

  • Tôi mở hình ảnh trong trình xem ảnh tiêu chuẩn và đơn giản "đóng" pic?
  • Tôi mở hình ảnh trong Photoshop Elements Editor và đóng nó ở đó?
  • Nếu tôi chỉ đơn giản là Đóng và hình ảnh so với Lưu lại?

Ai đó có thể đưa ra câu trả lời đơn giản về việc khi nào đóng hoặc lưu JPEG sẽ làm giảm chất lượng hình ảnh và khi nào không?


1
Mở một JPEG không 'giải nén nó' và đóng nó do đó không 'giải nén nó' và làm giảm chất lượng. Quá trình nén (và 'thiệt hại') được thực hiện khi JPEG được tạo ban đầu, không phải khi nó được mở.
ElendilTheTall

11
@ElendilTheTall: mở một hình ảnh JPEG chắc chắn sẽ khiến nó được giải nén, ít nhất là nếu mở bạn có nghĩa là thực sự hiển thị nó chứ không phải là hoạt động của hệ thống tập tin.
Michael Borgwardt

Câu trả lời:


55

Điều này dựa trên một sự hiểu lầm. Mất chất lượng chỉ xảy ra trong quá trình nén được thực hiện khi hình ảnh được lưu dưới dạng JPEG. Nhưng nó không quan trọng cho dù nó đã được chỉnh sửa hay không.

Vì vậy: bạn sẽ (với một số ngoại lệ rất cụ thể, xem các bình luận) sẽ mất chất lượng nếu bạn mở một hình ảnh trong trình chỉnh sửa hình ảnh và lưu lại nó, ngay cả khi bạn không thực hiện bất kỳ chỉnh sửa nào. Nhưng nếu bạn chỉ mở nó để hiển thị và sau đó đóng nó thay vì lưu, thì sẽ không có gì thay đổi.

Nhân tiện: điều này chỉ dành cho các chương trình chỉnh sửa hình ảnh truyền thống như Photoshop. Các chương trình như Lightroom "phát triển" tệp RAW theo một cách tiếp cận khác (ngay cả khi xử lý tệp JPEG): chúng luôn giữ nguyên hình ảnh gốc và lưu riêng các bước chỉnh sửa đã được thực hiện, được áp dụng khi xuất kết quả cuối cùng. Vì vậy, với các chương trình như vậy, bạn không phải lo lắng về việc giảm chất lượng (hơn một lần, đó là). Nhưng sau đó, bạn không nên sử dụng các tệp nguồn JPEG cho chúng.


4
"bạn sẽ mất chất lượng ... ngay cả khi bạn không thực hiện bất kỳ chỉnh sửa nào." Điều đó phụ thuộc vào ứng dụng. Một ứng dụng có thể biết rằng không có thay đổi nào được thực hiện và viết lại sơ đồ nén ban đầu mà không làm giảm chất lượng so với JPEG gốc.
DocMax

9
@LightnessRacesinOrbit: Tôi rất chắc chắn rằng bạn đã sai về điều đó. Chuyển đổi dữ liệu từ vương quốc tần số sang trạng thái ban đầu và trở lại có thể thêm các lỗi bổ sung do lượng tử hóa mỗi lần. Có thể cuối cùng nó sẽ hội tụ về một số trạng thái ổn định, nhưng tôi nghi ngờ điều đó.
Michael Borgwardt

2
Ở đây: photo.stackexchange.com/a 432192 hội tụ trong 8 hoặc 9 chu kỳ trong các ví dụ của tôi.
mattdm

1
@DocMax: Điều đó sẽ yêu cầu 1) ứng dụng lưu trữ trong bộ nhớ (hoặc đọc lại) luồng đã nén hoặc 2) nó thực sự không ghi lại tệp JPEG, nếu nó còn nguyên vẹn (bao gồm cả dấu thời gian, nếu có). Kịch bản rất khó xảy ra
leonbloy

1
Tôi đồng ý rằng rất hiếm khi ứng dụng giữ và ghi lại luồng đã nén. Tôi đã nhìn thấy nó một lần, nhưng đó là nhiều năm trước khi ký ức quý giá hơn ngày nay. Quan điểm của tôi chỉ là " sẽ giảm chất lượng" ngụ ý rằng không thể tránh được việc giảm chất lượng; Tôi sẽ không có vấn đề với "gần như chắc chắn sẽ mất chất lượng".
DocMax

23

Tuyệt đối không. Bạn cần chỉnh sửa tệp và lưu lại dưới dạng JPEG để kết hợp các hiệu ứng nén ảnh. Chỉ xem nó không có tác dụng gì cả - nếu có, tất cả các JPEG trên web sẽ "hao mòn" hoàn toàn trong một hoặc hai ngày.


FYI - đây là một ví dụ về loại hướng dẫn mà tôi thấy khó hiểu (đây là từ trang web photoblog): "Nhược điểm của việc chụp .JPEG là gì? Nó có sơ đồ nén gây suy giảm hình ảnh mỗi khi tệp được mở và lưu. Sự xuống cấp là nhỏ. Ban đầu bạn có thể sẽ không nhận ra điều đó. Nhưng bạn sẽ thấy nó theo thời gian. "
markthomas

14
@markthomas: từ quan trọng được lưu - tiết kiệm là một điều hoàn toàn khác với đóng cửa.
Michael Borgwardt

2
+1 cho "hao mòn" ... Google sẽ cần áp dụng các lớp "sơn" mới mỗi vài giây trên trang kết quả tìm kiếm của họ!
hjk

@MichaelBorgwardt Thật vậy, nhưng nó có thể bị hiểu nhầm là "mỗi lần mở tệp và mỗi lần lưu tệp". Cứ cho là bạn sẽ xuống cấp nhiều hơn nếu bạn lưu mà không mở trước, nhưng tôi vẫn không nghĩ mở nên được đề cập.
Fax

7

Nén JPEG có thể được mô tả là có hai pha riêng biệt: đầu tiên là pha mất, sau đó là pha không mất. Hiểu sự khác biệt giữa chúng rất quan trọng đối với câu hỏi này. Điều này không quá nhiều vì nó giúp hiểu những gì đang xảy ra, nhưng bởi vì nó giúp hiểu được những sai lầm phổ biến đến từ đâu.

Nén mất dữ liệu chỉ xảy ra khi tập tin được lưu . Đây là phần gây mất chất lượng. Tuy nhiên, chỉ đóng tệp là không đủ để kích hoạt nén mất dữ liệu: bạn phải lưu tệp . Một số biên tập viên có thể từ chối lưu các tệp JPEG chưa được chỉnh sửa, để tránh việc vô tình kích hoạt nén không mất dữ liệu, nhưng tôi không biết trên đầu mình có bất kỳ trình chỉnh sửa nào thực sự làm điều đó hay không.

Nén không mất dữ liệu cũng chỉ xảy ra khi tệp được lưu . Sự khác biệt chính là ngay cả khi nó xảy ra khi tệp được đóng mà không lưu, điều đó cũng không thành vấn đề, vì nó không mất dữ liệu. JPEG sử dụng cả hai kỹ thuật với nhau.

Giải nén không mất dữ liệu xảy ra bất cứ khi nào tệp được mở, nhưng không phải lúc nào khác . Không phải khi nó đóng cửa, và ngay cả khi nó được lưu. Như với việc giải nén không mất mát, sẽ không có vấn đề gì ngay cả khi điều đó xảy ra trong những khoảng thời gian này, bởi vì đó là sự mất mát.

"Giải nén mất mát" không bao giờ xảy ra. Không có điều đó . Không thể có, bởi vì dữ liệu bị loại bỏ trong giai đoạn nén mất dữ liệu đã biến mất. Nếu bạn có thể tái cấu trúc nó bằng cách nào đó, thì bạn sẽ có một thuật toán nén không mất dữ liệu, không phải là một thuật toán mất mát. Tôi thậm chí chỉ đề cập đến khái niệm này bởi vì, đã đề cập đến hai loại nén, sẽ thật lạ nếu tôi đề cập đến một loại giải nén duy nhất mà không giải thích lý do tại sao.

Lưu ý rằng việc lưu tệp kích hoạt cả hai loại nén . Không có nhiều cách để giải quyết vấn đề này, trừ khi bạn biết rằng hình ảnh chưa được chỉnh sửa, nhưng sau đó cũng không có nhiều điểm để lưu nó. Cũng lưu ý rằng chỉ đóng tệp mà không lưu sẽ không kích hoạt cả hai pha , thậm chí không nén "mất an toàn". Bởi vì điều này, chỉ cần mở và đóng tệp có thể làm giảm chất lượng hình ảnh .


"Không có điểm để lưu" Tôi đã lo lắng về việc chương trình sẽ làm gì nếu tôi chỉ chỉnh sửa siêu dữ liệu (Nhận xét, ghi chú) khi giao diện người dùng là Open-edit-save và không có dấu hiệu đặc biệt nào cho thấy dữ liệu hình ảnh được sao chép nhưng không được nén lại.
JDługosz

"Giải nén mất mát" như một khái niệm có ý nghĩa hoàn hảo, mặc dù tôi không nhận thức được bất cứ điều gì thực hiện nó. Tệp nén chứa một lượng dữ liệu nhất định; người ta có thể tưởng tượng một thuật toán giải nén chỉ trích xuất một phiên bản có độ phân giải thấp của dữ liệu đó. Làm như vậy có thể nhanh hơn nhiều so với trích xuất tất cả dữ liệu có sẵn và người ta có thể sử dụng thuật toán như vậy để cung cấp bản xem trước chẳng hạn. (Ví dụ: JPEG nén hình ảnh dưới dạng một chuỗi gồm 8 khối; bạn có thể trích xuất màu trung bình của mỗi khối và hiển thị dưới dạng một pixel cho bản xem trước kích thước 1/8.)
David Richerby

@jdlugosz Các chương trình chỉ cập nhật dữ liệu meta nói chung không giải nén / nén lại phần hình ảnh của JPG. Họ chỉ sao chép phần đó như trong tập tin mới. Định dạng tệp JPG được xây dựng sao cho thực sự dễ dàng hơn và ít phải làm việc như vậy nếu bạn chỉ cần cập nhật dữ liệu meta. Nhưng tất cả phụ thuộc vào phần mềm. Nếu điều đó là ngu ngốc trong cách nó làm mọi thứ, không có cách nào xung quanh nó (ngoài việc sử dụng phần mềm khác).
Tonny

@DavidR Richby Có rất nhiều phần mềm sử dụng công cụ giải nén để xem trước và như vậy. Hầu hết các album ảnh dựa trên web làm điều này để tạo hình thu nhỏ và gửi phiên bản độ phân giải thấp đến trình duyệt có màn hình nhỏ. Trong MacOSX, chế độ xem hình thu nhỏ trong Finder và iPhoto làm điều đó. Tôi nghi ngờ rằng hình thu nhỏ trong Explorer trên Windows cũng làm điều đó, nhưng tôi không chắc về hình thu nhỏ đó.
Tonny

Trên thực tế, AIUI, cả nén giải nén JPEG đều có thể bị mất (phần nào). Điều đó có nghĩa là, bạn không thể tái cấu trúc chính xác hình ảnh gốc từ dữ liệu nén bạn không thể (luôn luôn) cấu trúc lại chính xác dữ liệu nén từ hình ảnh được giải nén. Hầu hết, AFAIK, điều này có thể xảy ra do cắt: khi ánh xạ các hệ số YUV DCT đã nén trở lại màu pixel RGB 8 bit, một số pixel có thể có giá trị màu nhỏ hơn 0 hoặc lớn hơn 255, sẽ bị cắt bớt.
Ilmari Karonen

4

Chỉ cần mở và đóng tệp JPEG sẽ không kích hoạt lệnh lưu (trong bất kỳ chương trình nào tôi biết) và do đó không có quá trình nén lại diễn ra.

Đối với những lần bạn thực sự nhấn "lưu", điều gì xảy ra phụ thuộc vào những thay đổi bạn đã thực hiện và mức độ thông minh của chương trình hình ảnh được đề cập.

Người dùng CutNGlass đã đề cập đến một ví dụ về chương trình hình ảnh thông minh, "JPEG tốt hơn", lợi dụng thực tế là hình ảnh JPEG được tạo thành từ rất nhiều khối pixel hình chữ nhật được mã hóa độc lập và chỉ các khối thực sự CẦN -được nén khi lưu hình ảnh. Ví dụ, với một chương trình như vậy, bạn có thể loại bỏ mắt đỏ và khi hình ảnh JPEG được lưu, chỉ các khối bị ảnh hưởng bởi thay đổi mới được nén lại. http://www.betterjpeg.com/features.htmlm

Bây giờ, kỹ thuật này để tránh phải nén lại bất kỳ phần nào của hình ảnh JPEG không cần phải nén lại thực sự là "tin cũ" (Tôi không phải là chuyên gia và tôi đã biết nó trong hơn một thập kỷ), Vì vậy, tôi đoán rằng tôi đã chấp nhận điều đó vì tất cả các chương trình xử lý hình ảnh tốt sẽ xử lý việc này một cách hoàn hảo (điều này có nghĩa là thông thường sẽ không có bất kỳ nén lại nào khi chỉ mở một hình ảnh JPEG và nhấn "lưu", bởi vì chương trình sẽ biết rằng không có sự thay đổi nào đối với bất kỳ khối nào và chỉ để chúng không bị ảnh hưởng), nhưng khi nhìn vào câu hỏi này và các câu trả lời khác nhau của nó, tôi chỉ có thể thu thập rằng VẪN không đúng! * Có thể việc lập trình đằng sau các giải pháp như vậy phức tạp hơn tôi tin - nếu không tất cả các chương trình xử lý JPEG sẽ có từ nhiều năm trước! *


Chào người dùng mới. Cảm ơn bạn đã đóng góp, việc bao gồm một liên kết đến betterjpeg là một bổ sung hữu ích. Từ góc độ của các nhà phát triển, tình huống là cái mà chúng ta gọi là trường hợp cực đoan - để trở nên hữu ích, nó phụ thuộc vào người dùng thực hiện chỉnh sửa một phần VÀ muốn cài đặt đầu ra chất lượng giống hệt nhau VÀ tệp nguồn là một trong một vài tùy chọn mã hóa JPEG . Đối với số lượng công việc liên quan không có đủ lợi ích.
James Snell

Xin chào @JamesSnell! Trước hết, tôi thực sự đánh giá cao phản hồi của bạn và cho tôi một lời giải thích về lý do tại sao tất cả các chương trình xử lý hình ảnh không làm tất cả để tránh sự xuống cấp của JPEG bất cứ khi nào có thể. Tuy nhiên, tôi phải nói rằng nó khá chủ quan nếu đặt vào nỗ lực lập trình này là quá nhiều công việc và liệu trường hợp sử dụng có đại diện cho "trường hợp cực đoan" hay không! Nó phụ thuộc vào số lượng định dạng hình ảnh mà chương trình xử lý và mức độ sử dụng JPEG phổ biến, và nó phụ thuộc vào mức độ hậu môn của bạn không bao giờ muốn mất bất cứ thứ gì bạn không phải mất (trong trường hợp này là mất chất lượng hình ảnh không cần thiết) .
Carl

Ngoài ra, tôi sẽ nói rằng vì JPEG là định dạng hình ảnh số 1 thế giới (được sử dụng nhiều nhất), nên, chính nó, làm cho cái gì đó khác hơn là một "trường hợp cực đoan" (ít nhất là nên loại bỏ từ "cực đoan" ). Nếu bạn cũng xem xét thực tế rằng kỹ thuật xử lý khối này, nếu được triển khai trong một chương trình hình ảnh, có thể được sử dụng cho nhiều tình huống khác nhau (chỉnh sửa một phần, như loại bỏ mắt đỏ, xoay / lật hình ảnh, cắt xén), cũng chỉ ra một cái gì đó khác hơn là "trường hợp cực đoan." Nó có thể không phải là tính năng được yêu cầu NHẤT, nhưng đồng thời, tôi chắc chắn rằng nó sẽ được đánh giá cao!
Carl

1
Carl, tôi sẽ đồng ý với @JamesSnell rằng đây là một trường hợp cạnh - và tôi đã làm việc với một trình chỉnh sửa hình ảnh phổ biến để tôi có một số kinh nghiệm ở đây. Khi bạn mở một tệp, nó sẽ được sao chép sang phiên bản không nén trong bộ nhớ để chỉnh sửa và bản gốc sẽ bị loại bỏ ngay lập tức . Điều này giúp tiết kiệm bộ nhớ và cho phép bạn linh hoạt sử dụng bất kỳ định dạng tệp nào làm nguồn. Tôi đã thấy phần mềm có thể thực hiện thao tác lật hoặc xoay JPEG một cách dễ dàng, nhưng đó là một chức năng rất chuyên dụng. Chương trình bạn liên kết đến là trình soạn thảo duy nhất tôi từng thấy mở rộng tính năng này sang chỉnh sửa chung.
Đánh dấu tiền chuộc

Cảm ơn bạn đã cân nhắc, Mark - và cảm ơn vì sự sáng suốt của bạn. Tuy nhiên, tôi vẫn không gọi đây là "trường hợp cạnh", vì chúng ta đang nói về các loại chỉnh sửa rất phổ biến sử dụng loại tệp hình ảnh phổ biến nhất thế giới ... Các lập trình viên muốn giữ nó đơn giản và có lẽ không quan tâm lắm về sự xuống cấp hình ảnh để nó cảm thấy "đáng giá" đối với họ để xử lý đây là một lời giải thích cho lý do tại sao hầu hết các chương trình hình ảnh không xử lý việc này, nhưng nó không làm cho nó trở thành "trường hợp cạnh". Tệp JPEG thường nhỏ hơn nhiều so với phiên bản không nén, vì vậy nó có thể được giữ trong bộ nhớ và chức năng này được thêm vào.
Carl

3

Bạn chắc chắn sẽ không mất bất kỳ chất lượng chỉ bằng cách xem nó. Nhưng, như đã chỉ ra ở trên, bạn có thể mất chất lượng hình ảnh khi lưu nó mà không thực hiện thay đổi nếu trình chỉnh sửa nén nó khi lưu tệp . Ví dụ: giả sử bạn có JPEG không nén:

  1. Bạn mở nó trong GIMP, không thay đổi và lưu nó
  2. GIMP hỏi bạn muốn nén bao nhiêu (chất lượng)
  3. Bạn nhập 90% chất lượng (mặc định)

Làm điều này 20 lần và bạn sẽ thấy chất lượng giảm đáng kể, vì nó đã được nén 20 lần. Nếu bạn lưu nó mà không nén (chất lượng 100%), bạn sẽ không thấy thay đổi.


3
JPEG luôn có nén; không có thứ gọi là "không nén" với JPEG. Đó là sự mất mát vốn có. Tuy nhiên, việc truyền hình ảnh [JPEG-nén] qua máy nén JPEG với chất lượng 100% có thể không làm giảm chất lượng.
Cuộc đua nhẹ nhàng với Monica

2
@geometrikal Thật sao?
Rawling

1
@geometrikal chắc chắn không phải vậy
mattdm

2
Ví dụ về mất chất lượng khi lưu lại ở cùng mức chất lượng: photo.stackexchange.com/a 432192
mattdm

2
Cũng lưu ý rằng chất lượng 100% không phải là không nén.
mattdm

2

Chắc chắn, giống như bất kỳ tệp nào, nếu bạn không nhấn "lưu" nhưng chỉ cần đóng tệp, sẽ không có thay đổi nào được thực hiện. (nghĩ về nó giống như một từ Doc mà bạn chỉ cần mở và đóng)

Nếu bạn thực hiện thay đổi, hầu hết các chương trình sẽ cung cấp cho bạn thông báo hỏi bạn có muốn "lưu thay đổi" không

Vì vậy, câu trả lời chắc chắn là không cho câu hỏi của bạn.

Mong rằng sẽ giúp.


1

Chỉ cần đặt:

  • Khai trương: không giảm chất lượng
  • Sao chép: không giảm chất lượng
  • Hiển thị: không giảm chất lượng
  • Tiết kiệm mà không cần chỉnh sửa: là sao chép, không làm giảm chất lượng *
  • Lưu chỉ với các chỉnh sửa siêu dữ liệu: không làm giảm chất lượng *
  • Tiết kiệm với những thay đổi đối với chất lượng nén: mất chất lượng
  • Lưu sau khi chỉnh sửa dữ liệu hình ảnh: mất chất lượng

* Phụ thuộc vào chương trình, các chương trình được triển khai kém có thể thực sự phục hồi ngay cả khi không cần thiết với việc giảm chất lượng kết quả

Giải mã bất kỳ dữ liệu kỹ thuật số là mất mát. Không có một định dạng kỹ thuật số duy nhất trong đó chỉ giải mã và hiển thị sẽ thay đổi dữ liệu.

Nó chỉ giải nén dữ liệu hình ảnh có khả năng bị mất. Một số thao tác chỉnh sửa thực sự chỉ là chỉnh sửa siêu dữ liệu sẽ không gây ra bất kỳ tổn thất nào về chất lượng, ví dụ xoay vòng EXIF ​​là không mất mát.


Chương trình có thể tạo tệp bằng cách sử dụng dữ liệu được sao chép nguyên văn từ các phần của hình ảnh không thay đổi, nhưng tạo ra dữ liệu nén mới cho các phần khác. Chẳng hạn, JPEG Wizard cho phép làm nổi bật các khu vực "quan trọng" của JPEG và để nguyên như vậy, đồng thời nén mạnh các khu vực ít quan trọng khác của hình ảnh bằng nhiều mức độ khác nhau.
supercat

Sao chép tệp (trong Explorer, Finder, v.v.) sẽ không dẫn đến giảm chất lượng. Mở hình ảnh, thực hiện chọn tất cả, sao chép, hình ảnh mới từ bản sao và sau đó lưu sẽ dẫn đến giảm chất lượng.
fzwo

@supercat - chỉ có thể thay thế khối cho một số lược đồ mã hóa jpeg nhất định. Nhưng tùy chọn chất lượng chọn lọc (như chỉ ở một số khu vực) có thể giúp tiết kiệm không gian thú vị mà không làm suy giảm hình ảnh lớn trên web.
James Snell

@JamesSnell: Tôi đã sử dụng JPEG Wizard từ lâu; Tôi đã không nhìn xem liệu nó được duy trì hay cập nhật như thế nào, nhưng nó có thể cho phép một số tiết kiệm không gian tuyệt vời trong trường hợp một bức ảnh có một vài nơi cần chi tiết và nhiều khu vực không có. Trong một số trường hợp, làm mờ mọi thứ trừ các đối tượng chính của ảnh có thể cải thiện hình ảnh về mặt thẩm mỹ đồng thời vì nó làm cho tệp nhỏ hơn nhiều.
supercat

1

Đơn giản chỉ cần đặt Không .

Để được cụ thể. Khi lưu hình ảnh JPEG, bạn có một số tổn thất vì JPEG được định nghĩa là nén tổn thất.

Hình ảnh được nén bằng mã hóa Huffman nếu tôi không nhầm. Bây giờ khi một trình chỉnh sửa hình ảnh mở ra một hình ảnh, nó không giải nén hình ảnh. Nó chỉ đơn giản là giải mã hình ảnh nén để màn hình có thể hiển thị những gì trong đó.

Nhưng khi bạn thực hiện thay đổi và lưu lại, hình ảnh sẽ được nén lại thành một jpeg mới với việc mất nhiều dữ liệu hơn. Phần mềm như GIMP hỏi bạn bao nhiêu chất lượng bạn muốn mặc dù vậy bạn có thể chọn 100% để giữ chất lượng hiện có.

Bây giờ mở và đóng một hình ảnh mà không thực hiện bất kỳ thay đổi nào sẽ không bao giờ quan trọng về cách nó được lưu trữ và dữ liệu bị mất. Mở nó để xem và sau đó đóng không thực hiện bất kỳ thay đổi nào đối với tệp. Không có vấn đề gì (mp3, hình ảnh, tài liệu từ). Vì không có gì được lưu, chất lượng sẽ luôn giữ nguyên.

Nhưng như các câu trả lời trước đây đã nói, nếu bạn thực sự lo lắng về việc mất dữ liệu, bạn có thể chỉ cần sử dụng các định dạng khác như png hoặc tiff.


2
Lưu ý rằng bạn sẽ không giữ được chất lượng hiện có khi lưu lại ảnh trong GINMP bằng cách sử dụng giá trị 100% của "cài đặt phần trăm chất lượng". Nó chỉ đặt các tham số nhất định được sử dụng bởi bộ mã hóa ở mức chất lượng cao nhất có thể. Những thiết lập không mất mát.
Hugo

2
Không vấn đề gì. Bạn có thể đọc thêm về nó trong câu hỏi này .
Hugo

0

Dường như có rất nhiều thông tin sai lệch ngay cả trong những câu trả lời này.

JPEG là một tiêu chuẩn mã hóa khối mất mát. Đây là một mã miền tần số được nén bằng cách biểu diễn các thành phần hình ảnh tần số cao hơn với độ chính xác thấp hơn. Kích thước khối là 8x8 pixel.

Để mã hóa hình ảnh JPEG, bạn lấy từng khối, thực hiện DCT 2 chiều và ghi lại kết quả theo kiểu mẫu zig-zag với càng ít bit bắt đầu ở tần số thấp nhất và kết thúc ở mức cao nhất. Hồ sơ chính xác được điều chỉnh bởi một biến chất lượng duy nhất.

Miễn là bạn đã thực hiện quy trình này trên một khối, bạn có thể giải mã và mã hóa lại bao nhiêu lần tùy ý mà không làm mất bất kỳ chất lượng hình ảnh nào (miễn là bạn luôn sử dụng cùng một biến chất lượng). Đây không phải là một lời nói quá; quá trình giải mã và mã hóa lại một khối jpeg có thể được thực hiện hoàn toàn không mất dữ liệu và bất kỳ ứng dụng chỉnh sửa nào xứng đáng với muối của nó đều có thể làm được điều này.

Điều này có ý nghĩa gì đối với một người chỉnh sửa hình ảnh? Nếu bạn mở một hình ảnh và lưu (mã hóa lại) nó với cùng chất lượng hình ảnh thì sẽ không bị giảm chất lượng (ứng dụng chỉnh sửa của bạn sẽ có thể cho bạn biết biến chất lượng được sử dụng để mã hóa hình ảnh). Nếu bạn mở một hình ảnh và chỉ chỉnh sửa một số hình ảnh, các khối duy nhất sẽ thay đổi hoàn toàn là các khối 8x8 bạn đã chỉnh sửa. Mọi thứ khác sẽ giống hệt nhau.


2
rằng nên ?
Rawling

1
Tôi đã không điều tra cẩn thận, nhưng tôi cho rằng đó là lỗi làm tròn khiến cho điều này không chính xác.
mattdm

Nếu chương trình sử dụng cùng một ma trận Q và bạn chỉ thay đổi các khu vực bị cô lập, tóm tắt @stevecox là chính xác. Nếu cùng một chương trình được sử dụng, cùng một cài đặt thanh trượt phải đưa ra các tham số bên trong giống nhau. Cắt từ bên trái / trên cùng có thể thay đổi căn chỉnh khối; thay đổi tổng thể như màu sắc và độ sáng chạm vào mọi thứ và có thể gây ra sự xuống cấp khủng khiếp ngoài chất lượng nén danh nghĩa. Nếu lưu ban đầu có chất lượng rất cao, các hiệu ứng sẽ tinh tế nhưng tích lũy.
JDługosz

5
-1 Chỉ cần thực hiện một thử nghiệm nhanh với Photoshop CC và liên tục mở và lưu hình ảnh với cùng các cài đặt sẽ dẫn đến một tệp khác nhau mỗi lần, khi so sánh với bản gốc bằng chế độ hòa trộn "khác biệt". Rõ ràng Photoshop không phải là "giá trị muối". Tôi không thể nói cho các biên tập viên khác nhưng tôi cá là tiền họ giống nhau. Bạn có thể viết chương trình rất cẩn thận để tránh các lỗi làm tròn khi liên tục giải nén và giải nén hình ảnh, nhưng sẽ không có điểm nào - JPEG không phải là định dạng trung gian tốt, dừng hoàn toàn.
Matt Grum

3
@SteveCox Tôi đã mở một hình ảnh trong Photoshop, lưu nó dưới dạng JPEG chất lượng 7, mở JPEG đó và lưu nó dưới dạng JPEG chất lượng 7, sau đó lặp lại 5 lần. Sau đó, tôi so sánh JPEG đầu tiên với JPEG thứ 5. Những gì việc thực hiện tham chiếu chỉ mang lại lợi ích học thuật nếu tất cả các biên tập viên chính đều làm giảm chất lượng.
Matt Grum

0

Câu trả lời đơn giản là "Điều đó phụ thuộc."

Liệu nó có làm nên sự khác biệt nếu:

Tôi mở hình ảnh trong trình xem ảnh tiêu chuẩn và đơn giản "đóng" pic?

Nên an toàn, vì người xem sẽ không bao giờ có thể thay đổi hình ảnh.

Tôi mở hình ảnh trong Photoshop Elements Editor và đóng nó ở đó?

Không nên thay đổi hình ảnh.

Nếu tôi chỉ đơn giản là Đóng và hình ảnh so với Lưu lại?

Đóng hình ảnh không nên thay đổi hình ảnh. Việc lưu lại hình ảnh rất có thể sẽ làm thay đổi nó, tùy thuộc vào các plugin bạn đang sử dụng.

Một lý do bạn sẽ tìm thấy rất nhiều câu trả lời khác nhau cho "khi nào đóng hoặc lưu JPEG sẽ làm giảm chất lượng hình ảnh và khi nào thì không?" là nó phụ thuộc vào rất nhiều thứ khác nhau, bao gồm: phần mềm bạn đang sử dụng để chỉnh sửa hình ảnh, các plugin được cài đặt trên phần mềm đó, liệu phần mềm của bạn có thực hiện "tự động lưu" và trên các cài đặt bạn sử dụng không khi bạn lưu hình ảnh jpg! Đó thực sự là lý do tại sao tôi không chỉnh sửa các tập tin gốc.

Tôi không sử dụng photoshop, nhưng có một plugin có sẵn để hỗ trợ cho vấn đề cụ thể đang được đề cập - tránh mất chất lượng hình ảnh khi lưu jpeg: http://www.betterjpeg.com /jpeg-plug-in.htm

Trình cắm JPEG lossless Resave tốt hơn cho Adobe Photoshop và Adobe Photoshop Elements là một công cụ được thiết kế để tránh mất mát khi nén lại khi chỉnh lại hình ảnh JPEG đã chỉnh sửa trong Photoshop. Trình cắm lợi dụng thực tế là hình ảnh JPEG bao gồm một số khối độc lập nhỏ và không nén lại các khối không thay đổi.


0

Bộ câu trả lời thú vị. Nhưng một số vẫn còn một chút sai lệch. Tôi sẽ cố gắng để tổng hợp.

Hoàn toàn không

1) Mở một tập tin không hỗ trợ nó theo bất kỳ cách nào. Cũng đóng nó. Không phải trong một người xem hoặc chương trình chỉnh sửa.

Có khả năng bạn xem tệp khác nhau trong các chương trình khác nhau nhưng đó có thể là do cách chương trình này làm phiền một số thông tin như chế độ màu hoặc cấu hình màu. Nhưng quá trình đó chỉ đọc nó.

Có một cơ hội thay đổi nhỏ

2) Thực hiện các thao tác không mất tiền, như xoay một hình ảnh. Thông thường các chương trình chỉ sắp xếp lại dữ liệu của tệp jpg mà không cần phân tích và giải nén. Nhưng tôi sẽ không nhúng tay vào lửa cho tất cả các chương trình cho phép làm điều đó.

Những thay đổi nhỏ

3) Mở và lưu với cùng một nén trên cùng một chương trình.

Lần giải nén đầu tiên được thực hiện lần đầu tiên khi bạn lưu tệp jpg. Nếu bạn lưu lần thứ hai, tệp có cùng cài đặt, việc mất dữ liệu ban đầu đã được thực hiện, nhưng những thay đổi nhỏ có thể được áp dụng lại. Không phải trong cùng một phạm vi như lần đầu tiên, nhưng có thể đáng chú ý làm điều này nhiều lần. Nhưng điều đó phụ thuộc vào chương trình.

Những thay đổi đáng chú ý

4) Rõ ràng nhất là lưu lại với một cài đặt nén khác.

Không chỉ trên "thang điểm" trên bất cứ chương trình nào, mà cả thuật toán được sử dụng. Đây là một chút quá kỹ thuật nhưng có ít nhất hai thuật toán nén chính 4: 4: 4 và 4: 2: 2.

Bạn có thể sử dụng "thanh trượt" trên chương trình của mình để đạt "chất lượng" hàng đầu, nhưng nếu chương trình của bạn đang sử dụng 4: 2: 2 và bản gốc là vào 4: 4: 4, bạn sẽ bị mất dữ liệu đáng kể.

Đây là một bài báo nhỏ mà tôi đã làm cách đây vài năm để bạn có thể thấy việc mất dữ liệu này có nghĩa là gì, nó là tiếng Tây Ban Nha nhưng bạn có thể sử dụng google dịch: http://otake.com.mx/Apuntes/PruebasDeCompresion2/1-CompresionJpgProceso.htm

Một mớ hỗn độn

5) Nếu bạn mở một hình ảnh và lưu lại nó trên một chương trình có khả năng hạn chế. Ví dụ, một viwer chỉ có thể lưu các tệp RGB và không hoạt động chính xác với các CMYK hoặc có lẽ nó không hiểu cấu hình màu được nhúng. Bạn hoàn toàn có thể làm hỏng hình ảnh của bạn về tiết kiệm.

6) Sử dụng nhiều nén. Bạn lưu nó cho trang web của bạn và nén nó. Đừng xóa pease bản gốc của bạn!

Chỉ trên phần được chỉnh sửa của hình ảnh

7) Việc nén lại thường được thực hiện trên tất cả các hình ảnh, nhưng như tôi đã đề cập ở điểm 3, nó không phải là nhiều nếu hình ảnh không thay đổi. Khi bạn chỉnh sửa một hình ảnh, hậu môn này phải được thực hiện lại trên phần được chỉnh sửa này.

Hãy nhớ rằng một chỉnh sửa có thể được phân loại thành ba nhóm.

a) Chỉnh màu, độ tương phản, v.v.

b) Thay đổi một phần của hình ảnh (mắt đỏ, loại bỏ một người, làm sạch các điểm không mong muốn)

c) Một ảnh ghép hoàn toàn mới.

Vì vậy, trong một số trường hợp, hình ảnh là một hình ảnh hoàn toàn khác, ít nhất là đối với quan điểm của analisis và recompression.

Trong bài đăng này: /photo//a/67434/37321 người dùng đã đề cập đến một chương trình làm hậu môn rất thông minh cho việc nén hiện tại và không nén lại nếu không cần thiết.


0

Vâng, nó rõ ràng là có! Tôi sẽ chỉ làm điều đó với hình ảnh mẫu và chất lượng JPEG là 30 để làm cho hình ảnh ban đầu nhanh chóng. (160 Kb) nhập mô tả hình ảnh ở đây

Vòng đầu tiên (10 Kb) nhập mô tả hình ảnh ở đây

Vòng thứ hai (9Kb) nhập mô tả hình ảnh ở đây

Vì vậy, JPEG không làm giảm đáng kể chất lượng hình ảnh miễn là bạn không thay đổi kích thước hoặc thay đổi số liệu chất lượng. Hình ảnh sẽ tiếp tục xấu đi, nhưng không đáng kể. Và bây giờ, tôi xóa chỉ 4 pixel khỏi hình ảnh (một cột từ bên phải). Và lưu lại. nhập mô tả hình ảnh ở đây

Suy giảm đáng kể. Để giải thích rằng chúng ta sẽ cần đi sâu vào thuật toán JPEG. Dù sao đi nữa, nếu bạn thấy mình trong tình huống này, hãy ghi nhớ - nó chưa kết thúc. Có một số phần mềm loại bỏ nhiễu JPEG tuyệt vời, ví dụ như siêu phân giải và tăng cường hình ảnh mạng thần kinh. Tôi đã tải lên hình ảnh cuối cùng (hình ảnh xấu nhất) vào dịch vụ này và đây là những gì tôi nhận được. Kết quả thực sự tốt đẹp. nhập mô tả hình ảnh ở đây


Phần mềm nào bạn đang mở và đóng với ? Bạn có chắc chắn phần mềm của bạn không lưu (và do đó giải nén) hình ảnh khi bạn đóng nó?
mattdm

Chỉ cần thay đổi cơ bản Photoshop
Sofiia Shvets

1
Vì câu hỏi hỏi về một số tình huống khác nhau, câu trả lời này gây nhầm lẫn mà không làm rõ điều đó.
mattdm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.