我想開發一個可以計算顯示系統的伽瑪校正值的儀器設備,這個想法是使用一個校準過的攝像機(例如,通過USB上的PTP通過DSLR輸出的原始輸出),通過值(gamma = 0, Y = 0,1 step = bit(Y)),然後使用openCV或其他圖像處理軟件確定實際的灰度值,並與輸入值進行比較,以通過曲線擬合或其他方式計算伽馬值。如何從相機捕獲的顯示器測試圖像中計算伽馬校正值?
這可能嗎?
我想開發一個可以計算顯示系統的伽瑪校正值的儀器設備,這個想法是使用一個校準過的攝像機(例如,通過USB上的PTP通過DSLR輸出的原始輸出),通過值(gamma = 0, Y = 0,1 step = bit(Y)),然後使用openCV或其他圖像處理軟件確定實際的灰度值,並與輸入值進行比較,以通過曲線擬合或其他方式計算伽馬值。如何從相機捕獲的顯示器測試圖像中計算伽馬校正值?
這可能嗎?
這是可能的,當然。它在很大程度上取決於捕獲設備,特別是其準確性和線性度。你提到它是一個校準過的相機,但這可能意味着許多事情(例如它被校準到某個輸出色彩空間)。僅僅通過校準並不能告訴你有關其特性的所有信息。例如,當讀取RAW數據時,你會得到一個線性化表嗎?或者您是否擁有該設備的OECF?這些是您可以將傳感器輸出轉換爲適合您的伽馬計算的合適指標的兩種主要方法。
控制迴路可能看起來像:
Monitor ===> Sensor ===> LUT ==> Measurements
^ |
| |
+<-- GPU <--- OS <-- Control SW ---+
,其中傳感器是你的相機,和LUT或者是給定的線性化表或從OECF產生。
您還需要確保在圖形庫,操作系統,驅動程序和GPU硬件之間,您確切知道將哪些轉換應用於指定顏色,以便您知道顯示器上顯示的內容。 (例如,各種RGB色彩空間之間的轉換)。
根據顯示器色域的不同,您可能會發現灰階對單個純通道的響應也不同,因此您可能需要單獨測量R,G,B和W。
通常情況下,專用傳感器(光電二極管等)用於這種事情,而不是數碼單反相機,但您肯定可以從那開始,看看您得到了什麼樣的結果!
你可能有興趣在這些FLOSS工具: