Điều này có liên quan đến một câu hỏi tôi đã hỏi trên tex.stackexchange , có một khía cạnh màu sắc. Kết quả của câu hỏi đó là hình ảnh sau đây:
Tôi đã vẽ một loạt các hình vuông màu xám ở bên trái, với một nhánh màu đỏ khởi hành ở bên phải. Mục tiêu là có các ô vuông màu đỏ khác nhau với độ bão hòa khác nhau, nhưng tất cả đều có cùng giá trị màu xám. Trong mô hình màu hsv, tất cả chúng đều giống nhau v
, nhưng khi tôi chuyển đổi hình ảnh sang thang độ xám bằng Gimp, chúng không được chuyển đổi sang cùng một màu xám. Ngoài ra ấn tượng thị giác là các hình vuông màu đỏ ở bên phải tối hơn so với bên trái.
Làm thế nào tôi có thể, cho một màu xám nhất định, tính toán màu sắc với một màu sắc nhất định và cùng một giá trị màu xám (hoặc, thậm chí tốt hơn, với cùng một ấn tượng màu xám )? Các màu được sử dụng trong ảnh đều được tính toán, vì vậy tôi thích các giải pháp kết hợp cả tính toán.
Tôi có thể đã sử dụng các thuật ngữ sai ở đây - Tôi là một kỹ sư cơ khí, vì vậy vui lòng sửa cho tôi khi thích hợp hoặc yêu cầu làm rõ.
Đề xuất sử dụng không gian màu Lab đã đưa tôi đến một số kết luận:
Tôi có thể sử dụng
L
giá trị của mô hình Lab để đặt một số loại giá trị xám cho các màu khác nhau. Trong mô hình hsv này làv
. Tôi không chắc liệu tôi có thực sự được phép so sánh chúng không, nhưng tôi sẽ làm điều đó cho đến khi có ai đó phàn nàn.Trong mô hình hsv, tôi cũng có thể đặt một số "màu cơ bản" (màu sắc) mà tôi không thể tìm thấy trong mô hình Lab.
Trong mô hình hsv, tôi có 2 hằng số (trong hình trên:
h
= 0,v
= 0.375) và một biến (s
).Cho đến thời điểm này, tôi chỉ có một hằng số trong mô hình Lab. Điều đó là không đủ để tạo ra một cái gì đó tương tự như những gì tôi đã làm với mô hình hsv.
Tôi đoán đó là thời gian cho các thí nghiệm.
Làm xong! Sau khi tôi nhận được mã chuyển đổi đang chạy, nó thật dễ dàng. Bước đầu tiên là xác định "mục tiêu màu đỏ" ở bên phải. Tôi đã tính toán RGB2Lab (255,0,0) và thay đổi giá trị L của kết quả thành L mong muốn trong hình (L = 62,5). Các màu được tính bằng cách sử dụng phép nội suy tuyến tính trong không gian Lab từ (L, 0,0) đến (L, aTarget, bTarget). Kết quả:
Cảm ơn bạn!