2009-12-15 14 views
5

मेरे पास एक तस्वीर से एक ग्रेस्केल छवि है। मैंने यह निर्धारित किया है कि छवि के कुछ हिस्सों को कम किया गया है, और यह कि चमकदार वाई = 0.8 के साथ एक पिक्सेल वास्तव में 90% ग्रे में समायोजित किया जाना चाहिए, यानी, उस पिक्सेल को ल्यूमिनेंस 0.9 दिया जाना चाहिए। मेरा प्रश्न मैं अन्य पिक्सेल को कैसे स्केल कर सकता हूं? मुझे यकीन है कि 9/8 तक सभी ल्यूमिनेंस गुणा करना गलत है, क्योंकि मुझे अस्पष्टता से यह याद रखना याद है कि वर्दी देखें, स्केलिंग को नॉनलाइनर होना चाहिए। लेकिन मुझे एक समीकरण खोजने में परेशानी हो रही है जो मुझे प्रगति करने में सक्षम करेगी।चमक को समायोजित करने के लिए किसी छवि में पिक्सल को स्केल कैसे करें?

मेरी पिक्सल के स्रोत (। बेशक मैं वास्तव में एक कार्यक्रम लिख रहा हूँ एक महान कई तस्वीरें करने के लिए इसे समायोजित करना) pbmplus PGM प्रारूप, जिसके बारे में आदमी पेज का कहना है:

प्रत्येक ग्रे मान पिक्सेल की तीव्रता के लिए आनुपातिक संख्या है, जो सीआईई रिक द्वारा समायोजित किया गया है। 70 9 गामा स्थानांतरण समारोह। (वह स्थानांतरण फ़ंक्शन 2.2 की गामा संख्या निर्दिष्ट करता है और इसमें छोटी तीव्रता के लिए रैखिक अनुभाग होता है)। शून्य का एक मूल्य इसलिए काला है। मैक्सवल का एक मूल्य छवि में सीआईई डी 65 सफेद और सबसे तीव्र मूल्य का प्रतिनिधित्व करता है और किसी भी अन्य छवि जिस पर छवि की तुलना की जा सकती है।

यदि मैं इसे बेहतर समझता हूं तो शायद मुझे आगे बढ़ने का बेहतर विचार होगा।

मुझे making an image of uniform brightness पर एक संबंधित प्रश्न मिला।


धन्यवाद मुझे ट्रैक पर लाने के लिए शमोप्टी। मैंने आपका जवाब स्वीकार कर लिया और फिर इसमें कुछ जानकारी दी।

+1

क्या आप आम तौर पर ग्रेस्केल छवि के विपरीत को बढ़ाने की कोशिश कर रहे हैं? – Andres

+0

नहीं, असल में, मेरे पास एक छवि है जिसके लिए मेरा मानना ​​है कि फोटोग्राफ ऑब्जेक्ट मोटे तौर पर समान चमक (चमक/अल्बेडो) था, लेकिन तस्वीर असमान रोशनी के तहत ली गई थी। मैं गरीब रोशनी के लिए सही करने की कोशिश कर रहा हूं और ऐसी छवि तैयार करता हूं जो कि मूल ऑब्जेक्ट की फोटोग्राफ की गई हो। –

उत्तर

6

आप शायद gamma correction चाहते हैं, जो सही काले और सफ़ेद सफेद सही रखेगा, जबकि मूल्यों को झुकाव के दौरान।

गामा समायोजन के लिए सूत्र, जब इनपुट रेंज (0.0, 1.0) में है:

output = pow(input, gamma) 

... जहां gamma जब 1.0 की तुलना में कम हल्का और काला कर जब 1.0 से ऊपर होगा।

0.8 से 0.9 तक धक्का देने के लिए, 0.4722 की गामा प्राप्त करने के लिए आप log(0.9)/log(0.8) की गणना करें।

ध्यान दें कि यह बहुत से सूत्रों में से एक है - और यह गणितीय रूप से सरल है जो अद्वितीय रंगों के रूप में काले और सफेद को संरक्षित रखेगा (जो कुछ महत्वपूर्ण मानेंगे) - हालांकि आपको देने के लिए कोई भी सही सूत्र नहीं है "सच" क्या है।


परिशिष्ट: मैं सत्यापित है कि गामा सुधार मूल्यों कि पहले से ही गामा इनकोडिंग हैं के लिए लागू किया जा सकता है। यह markdown में गणित notate करना मुश्किल है, लेकिन कुंजी बीजीय कानून

(y**a)**b == y**(a*b) == y**(b*a) == (y**b)**a 

आप इस कानून लागू होते हैं, आपको लगता है कि गामा सुधार लघुकरण निर्धारित कर सकते हैं है, इसलिए यह ठीक है, गामा सुधार लागू करने के लिए पहले से ही मान को सही करने के लिए ।— एनआर

+0

गामा के लिए क्या मूल्य चुनना? और क्या इससे कोई फर्क नहीं पड़ता कि मेरे पास पिक्सेल पहले से ही गामा-एन्कोडेड हैं? –

संबंधित मुद्दे