एक पिक्सेल के भीतर कई यादृच्छिक नमूनों का उपयोग करके एंटी अलियासिंग के लिए मौलिक तर्क क्या है?


12

ग्राफिक्स में, एक पिक्सेल की सीमा के भीतर कई नमूने लेना और अंतिम नमूना पिक्सेल रंग के लिए उन्हें एक साथ जोड़ना (सबसे आम तौर पर औसतन औसत) करना आम है। यह एक छवि के विरोधी अलियासिंग का प्रभाव है।

एक तरफ यह मेरे लिए समझ में आता है क्योंकि आप जो प्रभावी ढंग से कर रहे हैं वह पिक्सेल के उस क्षेत्र पर पिक्सेल के रंग को एकीकृत कर रहा है जो पिक्सेल का प्रतिनिधित्व करता है। सोच की इस पंक्ति में, मोंटे कार्लो एकीकरण करने के लिए "यादृच्छिक" नमूने का औसत आदर्श सेटअप लगता है। ("यादृच्छिक" स्तरीकृत किया जा सकता है, नीला शोर आधारित, कम विसंगति अनुक्रम आदि)

दूसरी ओर, यह एक डिजिटल सिग्नल प्रोसेसिंग बिंदु से गलत (या कम से कम उतना सही नहीं है जितना कि हो सकता है) लगता है। उस दृष्टिकोण से, ऐसा लगता है कि हम बहुत सारे नमूने ले रहे हैं और फिर अंतिम पिक्सेल मूल्य प्राप्त करने के लिए एक बॉक्स फिल्टर (बॉक्स ब्लर) का उपयोग करके डाउनसमलिंग कर रहे हैं। उस प्रकाश में, यह ऐसा लगता है कि नमूने के औसत के बजाय sinc फ़िल्टरिंग का उपयोग करना आदर्श बात होगी। मैं देख सकता था कि बॉक्स फिल्टर इन पंक्तियों के साथ ईमानदारी से सोचने के लिए एक सस्ता औचित्य है।

यह मुझे थोड़ा भ्रमित करता है। क्या मूल विचार है कि हम पिक्सेल क्षेत्र को एकीकृत कर रहे हैं और औसत सही है? या क्या यह है कि हम डाउनसम्पलिंग कर रहे हैं और इसे sinc का उपयोग करना चाहिए, लेकिन एक बॉक्स फ़िल्टर का उपयोग कर रहे हैं क्योंकि यह तेज़ है?

या यह पूरी तरह से कुछ और है?

थोड़ा संबंधित: एंटी-अलियासिंग / फ़िल्टरिंग रे ट्रेसिंग में


मुझे यहाँ कुछ उत्तर मिल रहे हैं: group.csail.mit.edu/graphics/classes/6.837/F04/lectures/…
एलन वुल्फ

जवाबों:


9

एक सिग्नल प्रोसेसिंग बिंदु से, आप एक निरंतर-डोमेन सिग्नल का नमूना ले रहे हैं, और आपको Nyquist सीमा से परे आवृत्तियों से छुटकारा पाने के लिए इसे फ़िल्टर करने की आवश्यकता है। यह फ़िल्टरिंग है जो पिक्सेल क्षेत्र को एकीकृत करने की ओर जाता है - या अधिक आम तौर पर, आपके एंटीएलियासिंग कर्नेल (जिसे बॉक्स की आवश्यकता नहीं है) के समर्थन पर एकीकृत करता है।

अपने रेंडरिंग फ़ंक्शन पर विचार करें जो स्क्रीन स्पेस में एक नमूना बिंदु लेता है और उस बिंदु पर पाए गए रंग को वापस करता है। (आइए इस पल के लिए यादृच्छिक नमूने के किसी भी मुद्दे को अनदेखा करें, और मान लें कि यह उस विशिष्ट बिंदु के लिए "सही" प्रदान किया गया रंग है।) यह फ़ंक्शन प्रभावी रूप से एक 2D निरंतर-डोमेन सिग्नल को परिभाषित करता है। या इसे दूसरे तरीके से रखने के लिए, यह एक अनंत-रिज़ॉल्यूशन छवि को परिभाषित करता है , क्योंकि कुछ भी इस फ़ंक्शन को मनमाने ढंग से छोटे पैमाने पर होने से रोकता है। फ़्रीक्वेंसी डोमेन के संदर्भ में: फ़ंक्शन बैंड-लिमिटेड नहीं है; इसमें मनमाने ढंग से उच्च स्थानिक आवृत्तियों के घटक शामिल हो सकते हैं।x,y

अब आप इसे पिक्सेल की एक सीमित संख्या में बदलना चाहते हैं। ऑडियो सिग्नल को डिजिटाइज़ करने जैसा बहुत कुछ, जब आप इसका नमूना लेते हैं, तो आप तब तक एलियासिंग करेंगे जब तक कि आप पहले नमूना दर द्वारा लगाए गए Nyquist सीमा से परे आवृत्तियों को समाप्त नहीं करते हैं। दूसरे शब्दों में, आपको पिक्सेल ग्रिड से छोटी सुविधाओं से छुटकारा पाना होगा। ऐसा करने के लिए, आप एक कम-पास फ़िल्टर लागू करते हैं। आदर्श कम पास फिल्टर sinc समारोह है, लेकिन व्यावहारिकता के विभिन्न कारणों के लिए हम अन्य फिल्टर का उपयोग (है कि पूरी तरह से Nyquist सीमा से परे आवृत्तियों को खत्म नहीं है, लेकिन वे कम से कम उन्हें attenuate)।

लो-पास फ़िल्टरिंग को कनवल्शन द्वारा किया जाता है। यदि रेंडरिंग फंक्शन है और एक फिल्टर कर्नेल है, तो हम निम्न-पास फिल्टर्ड इमेज को इस प्रकार परिभाषित कर सकते हैं:k ( x , y )f(x,y)k(x,y)

ffiltered(x,y)=f(x,y)k(xx,yy)dxdy

तब छवि नमूना करने के लिए सुरक्षित है, इसलिए अंतिम पिक्सेल मूल्यों को केवल निर्देश पर मूल्यांकन करके प्राप्त किया ।ffiltered

यदि एक बॉक्स फ़िल्टर है, जो पिक्सेल बॉक्स के भीतर जैसा दिखता है और कहीं और है, तो यह पिक्सेल बॉक्स के ऊपर को एकीकृत करने के लिए सरल करता है । लेकिन जैसा कि कहा गया है, बॉक्स फ़िल्टर इतना बढ़िया नहीं है और इसमें तम्बू, बाइसिक, और गाऊसी फिल्टर जैसे बेहतर विकल्प हैं।k = 1 k = 0 fkk=1k=0f

वैसे भी, अब हमारे पास एक अभिन्न अंग है, हम इसके लिए मोंटे कार्लो का उपयोग कर सकते हैं और इसे किसी भी अन्य अभिन्न अंग के साथ जोड़ सकते हैं, जिसे हम करना चाहते हैं - प्रकाश व्यवस्था, गति धुंधला, और इसी तरह। हम अनुसार पिक्सेल केंद्र के आसपास वितरित किए जाने वाले प्रत्येक पिक्सेल के लिए नमूने उत्पन्न करके, अभिन्न कारक में नमूने के महत्व को भी लागू कर सकते हैं ।कश्मीरkk


उत्कृष्ट उत्तर, हमेशा की तरह।
ivokabel

4

आप वास्तव में दोनों चीजें कर रहे हैं। आप क्षेत्र को एकीकृत कर रहे हैं और क्योंकि आपका परिणाम अभी भी असतत है नमूने आप इसे लगातार कार्य करने के लिए सिग्नल को फिर से संगठित कर रहे हैं। इसलिए उच्च क्रम फ़िल्टरिंग। (इसके अलावा मानव आंख एक असतत नमूना है इसलिए यह सिग्नल को फिर से संगठित करता है)

इस स्पष्टीकरण के संदर्भ में आने में मुझे काफी समय लगा। टोनी अपोडाका ने द लोर ऑफ टीडीएस शीर्षक से एक पेपर में मेरी मदद की थी ।


बढ़िया लिंक के लिए धन्यवाद! उस पृष्ठ पर अंतिम लिंक इस में सही गोता लगाने के लिए लगता है। व्यावहारिक रूप से, क्या आपको पता है कि बॉक्स ब्लर के ऊपर कुछ भी करने से वास्तव में बहुत दृश्य अंतर होता है? या इससे अभिसरण को कोई बढ़ावा मिलेगा?
एलन वोल्फ

2
3 डी ग्राफिक्स प्रतिपादन अवधारणाओं के लिए इसका सबसे अच्छा प्राइमर, जो मैंने कभी देखा है (शारीरिक रूप से आधारित या ट्रेसिंग सामान के बारे में इतना नहीं है, लेकिन वैसे भी)। बॉक्स फ़िल्टर की तुलना में एक सिन फ़िल्टर की गई छवि बहुत तेज होती है जो बहुत धुंधली दिखती है और महसूस करती है। यह तेजी से अभिसरण होगा, मुझे संदेह है।
पूजा

लगता है कि लिंक अब चला गया है। आप किस शीर्षक का सबसे अच्छा 3D प्राइमर पढ़ रहे हैं?
जॉन्बेकर्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.