Gamma vẫn còn quan trọng để đưa vào tài khoản?


17

Các màn hình khác nhau (bao gồm cả màn hình di động) vẫn sử dụng các chức năng gamma khác nhau đáng kể khi hiển thị hình ảnh màu? Có một cách tiêu chuẩn hóa để thể hiện màu sắc mà sau đó có thể được dịch theo gamma của màn hình, hay tất cả chúng đều đủ tương tự để loại trừ sự cần thiết cho điều này ngày nay?


5
Tôi muốn nói bài này là về chủ đề. Nó dường như liên quan nhiều đến GPU Gems 3: Chương 24. Tầm quan trọng của việc trở thành tuyến tính http.developer.nvidia.com/GPUGems3/gpugems3_ch24.html
Alan Wolfe

5
Cho dù một cái gì đó là về chủ đề ở nơi khác không liên quan đến quyết định này. Chúng ta chỉ cần biết liệu đó là chủ đề ở đây .
trichoplax

1
Tôi đang cố tình đăng các câu hỏi về đường biên để đo vị trí của đường biên. Vui lòng đưa ra càng nhiều điều không chắc chắn càng tốt trên Meta.
trichoplax

3
Được chào đón ở nơi khác không bao giờ là một lý do thích hợp để tuyên bố một cái gì đó lạc đề ở đây .
Chris nói phục hồi Monica

2
@robobenklein không ở đâu trong phạm vi của ngăn xếp này nói rằng ngăn xếp này dành riêng cho đồ họa 3D.
Qix

Câu trả lời:


15

Có, trong khi nhiều màn hình và hoạt động của hệ điều hành đang sử dụng gamma 2.2, kết quả tính toán và phần cứng của bạn vẫn cần được sửa chữa. Ngoài ra còn có các phương tiện đặc biệt như TV phát sóng có gamma khác. Thiết bị cảm biến như máy ảnh chủ yếu là tuyến tính nên chúng cần được điều chỉnh cho phù hợp. Bên cạnh đó, người dùng có thể thiết lập hệ thống của họ thành bất kỳ gamma nào họ thích.

Trong đồ họa máy tính, lý do chính để giải thích cho gamma là tính toán của bạn rất có thể được thực hiện trong không gian tuyến tính * hoặc việc đóng góp ánh sáng trở nên phức tạp không cần thiết. Trong mọi trường hợp, gamma thực sự là một sự đơn giản hóa mọi thứ, bạn sẽ tốt hơn nhiều khi thực hiện hồ sơ để chuyển đổi hồ sơ nếu có thể đầu tư thời gian tính toán để làm việc đó.

Giải thích toán học

g(x)g(x)

a+b+c+d

abcdg(x)

g(g1(a)+g1(b)+g1(c)+g1(d))

Bạn sẽ cần phải làm điều này cho từng yếu tố phụ nhiều lần. Do đó, thay vì chạy biến đổi mỗi lần bạn biến đổi tất cả một lần thành tuyến tính và sau đó một lần quay lại.

Và cuối cùng là một lý do nghệ thuật

Nó có thể trông đẹp hơn với một gamma khác. Nhiều trò chơi có một điều chỉnh gamma vì lý do này.

* Trường hợp xấu nhất là bạn nghĩ rằng các tính toán của bạn là tuyến tính nhưng không bù cho các đặc tính đầu ra của màn hình phi tuyến.


Chúng ta có latex chưa?
joojaa

2
Không, nhưng hy vọng chúng ta sẽ có trong tương lai . Mặc dù vậy, hãy thêm bạn trả lời làm ví dụ cho sự cần thiết của nó.
Chris nói phục hồi Monica

Nếu bạn muốn cho biết câu trả lời của bạn sẽ như thế nào nếu chúng tôi có MathJax, để giúp giải quyết vụ việc, bạn có thể sử dụng mathurl.com .
trichoplax

11

Không gian màu tiêu chuẩn thực tế cho hình ảnh kỹ thuật số ngày nay là sRGB . sRGB là một giả định mặc định tốt nếu làm việc với màn hình không biết không gian màu chính xác (nghĩa là hầu hết hiển thị ngẫu nhiên ai đó có thể chạy ứng dụng của bạn) hoặc hình ảnh không mã hóa không gian màu (ví dụ: hầu hết các tệp hình ảnh ngẫu nhiên bạn có thể gặp) .

Tiêu chuẩn sRGB xác định màu sắc CIE của các nguyên thủy màu đỏ, lục và lam thuần túy và điểm trắng, nói cách khác, nó định nghĩa những gì các nguyên thủy và màu trắng trông giống như các bước sóng thuần túy.

sRGB cũng xác định đường cong gamma được sử dụng để mã hóa các giá trị RGB. Đường cong gamma là phần mà các lập trình viên đồ họa thường quan tâm, vì chúng ta phải chuyển đổi màu sắc qua lại giữa sRGB và tuyến tính để thực hiện ánh sáng toán học một cách chính xác. Tất cả các GPU hiện đại đều có hỗ trợ sRGB tích hợp: chúng có thể tự động áp dụng các biến đổi gamma trong phần cứng khi lấy mẫu kết cấu hoặc ghi giá trị pixel vào mục tiêu kết xuất.

Đối với các màn hình có liên quan, với chất lượng cao, có thể hiệu chỉnh các cài đặt của nó (hoặc có thể được hiệu chuẩn trước) để đầu ra của nó khớp với sRGB một cách trung thực nhất có thể. Trong trường hợp màn hình không thể tự làm điều đó, một số hiệu chỉnh màu hạn chế cũng có thể được thực hiện trên GPU trong quá trình quét; có một số bảng tra cứu phần cứng nhỏ mà các giá trị RGB được ánh xạ qua trước khi được gửi qua dây.

Bạn cũng có thể đi qua Rec. 709 , là không gian màu tiêu chuẩn cho HDTV; nó rất giống với sRGB, sử dụng cùng một điểm gốc và điểm trắng, nhưng đường cong gamma hơi khác nhau. Một số màn hình cao cấp sử dụng không gian màu Adobe RGB , có phần rộng hơn so với sRGB; các nhiếp ảnh gia có xu hướng thích những thứ đó bởi vì chúng trung thực hơn đại diện cho những bức ảnh sẽ trông như thế nào khi được in. Thế hệ TV HDR tiếp theo sắp ra mắt (hy vọng) trong vài năm tới sẽ sử dụng Rec. Năm 2020 , có một giao diện rất lớn và cần 10 hoặc 12 bit cho mỗi thành phần thay vì 8.

Vì vậy, để trở lại câu hỏi của bạn cho dù bạn cần phải lo lắng về các màn hình khác nhau có gamma khác nhau: không nhiều. Đối với đồ họa PC và chơi game nói chung, bạn có thể sử dụng sRGB khá nhiều và hình dung rằng nếu người dùng thực sự quan tâm đến độ chính xác của màu sắc, họ sẽ có một màn hình hiệu chỉnh tốt. Nếu bạn đang sản xuất phần mềm cho các nhiếp ảnh gia hoặc phương tiện in, hoặc cho các tiêu chuẩn video HDR thế hệ tiếp theo, thì bạn có thể phải bắt đầu lo lắng về không gian màu rộng.


Màn hình gam rộng hơn cũng sẽ bắt đầu phổ biến trong tương lai gần. Ví dụ: tôi không hiệu chỉnh thành sRGB trên worstation nghệ thuật của mình, nhưng trình chuyển đổi cấu hình thành hồ sơ làm cho hình ảnh vẫn trông giống như trên máy dev của tôi.
joojaa
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.