मिपमैप

From Vigyanwiki

कंप्यूटर ग्राफिक्स में मिपमैप (एमआईपी मैप) या पिरामिड डिजिटल इमेज की पूर्व-गणना पर आधारित है जिनमें से प्रत्येक पिछले टेक्सचर का प्रोग्रेसिवली रिज़ॉल्यूशन अपेक्षाकृत कम होता है।[1][2][3] मिपमैप में प्रत्येक इमेज या लेवल की ऊंचाई और चौड़ाई पिछले लेवल की तुलना में दो गुना कम होती है। मिपमैप का वर्गाकार होना आवश्यक नहीं है। इसका उद्देश्य रेंडरिंग गति को बढ़ाना और ऐलियासिंग अर्टिफैक्ट को अपेक्षाकृत कम करना है। हाई-रिज़ॉल्यूशन मिपमैप इमेज का उपयोग उच्च-घनत्व वाले सैंपल के लिए किया जाता है जैसे कि कैमरे के निकट की वस्तुओं के लिए कम-रिज़ॉल्यूशन वाली इमेज का उपयोग किया जाता है क्योंकि वस्तु अधिक दूर दिखाई देती है। यह मूल टेक्सचर में सभी टेक्सल के सैंपल लेने की तुलना में किसी टेक्सचर को डाउनफ़िल्टर करने (छोटा करने) का एक अधिक सफल प्रयोग है जो स्क्रीन पिक्सेल में योगदान देता है। यह उपयुक्त रूप से डाउनफ़िल्टर किए गए टेक्सचर से सैंपल की निरंतर संख्या प्राप्त करने के लिए तीव्र होता है। मिपमैप का व्यापक रूप से 3डी कंप्यूटर गेम, फ़ाइट सिम्युलेटर, टेक्सचर फ़िल्टरिंग के लिए अन्य 3डी जीआईएफ सिस्टम, 2डी और 3डी जीआईएस सॉफ्टवेयर में उपयोग किया जाता है। इनके प्रयोग को मिपमैपिंग के नाम से जाना जाता है। नाम में एमआईपी लैटिन शब्द 'मल्टीम पार्वो' का संक्षिप्त रूप है।[4]

चूंकि मिपमैप परिभाषा के अनुसार पूर्व-गणना पर आधारित हैं इसलिए इसमे अतिरिक्त कंप्यूटर डेटा स्टोरेज की आवश्यकता होती है जो वावेलेट कंप्रेशन से भी संबंधित है। किसी दृश्य को प्रस्तुत करने में लगने वाले समय को अपेक्षाकृत कम करने के लिए 3डी दृश्यों में मिपमैप टेक्सचर का उपयोग किया जाता है। सामान्यतः ये प्रति टेक्सचर 33% अधिक मेमोरी की लागत पर दूर से प्रदर्शित होने वाले ऐलियासिंग और मोइरे पैटर्न को कम करके इमेज गुणवत्ता में सुधार करते हैं।[5]

Mipmap Aliasing Comparison.png

संक्षिप्त विवरण

सामान्यतः मिपमैप का उपयोग निम्नलिखित के लिए किया जाता है:

  • एलओडी मे[6][7]
  • इमेज गुणवत्ता में सुधार, बड़े टेक्सचरों से रेंडरिंग और छोटे टेक्सेल मे मोइरे पैटर्न को उत्पन्न करने के लिए किया जा सकता है।
  • प्रत्येक पिक्सेल को रेंडर करने के लिए सैंपल किए गए टेक्सल की संख्या को कम करके या लिए गए सैंपल की मेमोरी लोकैलिटी को बढ़ाकर रेंडरिंग समय को बढ़ाया जा सकता है।
  • जीपीयू या सीपीयू पर स्ट्रेस को कम करने के लिए किया जा सकता है।
  • पानी की सतह पर प्रतिबिंब के लिए किया जा सकता है।[8]

ओरिजिन (उत्पत्ति)

मिपमैपिंग का आविष्कार लांस विलियम्स (ग्राफिक्स शोधकर्ता) द्वारा 1983 में किया गया था। इसका वर्णन उनके पेपर पिरामिड पैरामेट्रिक्स में किया गया है। संक्षेप मे "यह पेपर एक 'पिरामिडल पैरामीट्रिक' प्रीफ़िल्टरिंग और सैंपलिंग ज्योमेट्री को आगे बढ़ाता है जो ऐलियासिंग प्रभाव को कम करता है और टेक्सचर इमेज मे निरंतरता को बनाए रखता है। संदर्भित पिरामिड की कल्पना एक दूसरे के सामने रखे गए मिपमैप के सेट के रूप में की जा सकती है।

मिपमैप शब्द की उत्पत्ति लैटिन शब्द मल्टीम पार्वो ("छोटे स्थान में बहुत कुछ") मानचित्र का प्रारंभिक रूप है जो बिटमैप पर आधारित है।[4] पिरामिड शब्द का प्रयोग अभी भी सामान्यतः जीआईएस के संदर्भ में किया जाता है। जीआईएस सॉफ्टवेयर में पिरामिड का उपयोग मुख्य रूप से रेंडरिंग टाइम (प्रतिपादन समय) को तीव्र करने के लिए किया जाता है।

क्रियाविधि

मिपमैप इमेज स्टोरेज: बाईं ओर की मुख्य इमेज कम आकार की फ़िल्टर की गई प्रतियों के साथ है।

मिपमैप सेट की प्रत्येक बिटमैप इमेज मुख्य टेक्सचर की एक छोटी इमेज है लेकिन विवरण के एक निश्चित भाग पर मुख्य टेक्सचर का उपयोग तब किया जा सकता है जब इमेज इसे पूर्ण विवरण में प्रस्तुत करने के लिए पर्याप्त होती है। रेंडरर एक उपयुक्त मिपमैप इमेज को परिवर्तित करता है या दो निकटतम इमेज के बीच इंटरपोलेट ट्रिलिनियर फ़िल्टरिंग को सक्रिय करता है जब टेक्सचर को दूर से छोटे आकार में देखा जाता है तब रेंडरिंग गति बढ़ जाती है क्योंकि समान मिपमैप टेक्सचर के साथ समान परिणामों के लिए प्रति डिस्प्ले पिक्सेल पर संसाधित होने वाले टेक्सचर पिक्सेल की संख्या बहुत अपेक्षाकृत कम हो सकती है। यदि प्रति डिस्प्ले पिक्सेल सीमित संख्या में टेक्सचर के सैंपल का उपयोग किया जाता है। जैसा कि बिलिनियर फ़िल्टरिंग की स्थिति में होता है तब इमेज की प्रदर्शन क्षमता स्वतः कम हो जाती हैं क्योंकि मिपमैप छवियां प्रभावी रूप से पहले से ही एंटी-एलियास्ड होती हैं। मिपमैप के साथ नीचे और ऊपर के स्केलिंग प्रभाव को भी अधिक सक्षम किया जा सकता है।

यदि टेक्सचर का मूल आकार 256×256 पिक्सेल है तो संबंधित मिपमैप सेट में 8 इमेज की संख्या हो सकती है जो कि प्रत्येक पिछले टेक्सचर के कुल क्षेत्रफल का एक चौथाई 128×128 पिक्सेल, 64×64, 32×32 , 16×16, 8×8, 4×4, 2×2, 1×1 (एकल पिक्सेल) है। उदाहरण के लिए कोई दृश्य इस टेक्सचर को 40×40 पिक्सेल के स्थान में प्रस्तुत कर रहा है तो 32×32 का एक पिक्सेल संस्करण (ट्रिलिनियर इंटरपोलेशन के अतिरिक्त) या 64×64 और 32×32 का एक इंटरपोलेशन मिपमैप (ट्रिलीनियर इंटरपोलेशन के साथ) का उपयोग किया जा सकता है। इन टेक्सचरों को उत्पन्न करने का सबसे सामान्य प्रकार क्रमिक औसत है। हालांकि अधिक सॉफिस्टिकेटेड एल्गोरिदम (सिग्नल प्रोसेसिंग और फूरियर ट्रांसफॉर्म पर आधारित) का भी उपयोग किया जा सकता है।

आरजीबी मिपमैप के प्रत्येक स्तर के प्रत्येक रंग चैनल को एक अलग टेक्सचर (बाएं) के रूप में दिखाने से पता चलता है कि पूर्ण मिपमैप 4 गुना क्षेत्रफल का एक वर्ग बनाता है। चूंकि प्रत्येक टेक्सचर को स्टोरेज के लिए 13 की आवश्यकता होती है, इसलिए मिपमैप को 43 मेमोरी की आवश्यकता होती है अर्थात 13 ≈ 33% से अधिक मेमोरी की आवश्यकता होती है ।

इन सभी मिपमैप के लिए आवश्यक स्टोरेज में वृद्धि मूल टेक्सचर की एक तिहाई है क्योंकि क्षेत्रों का योग 1/4 + 1/16 + 1/64 + 1/256 + ⋯ 1/3 में परिवर्तित हो जाता है। अलग-अलग टेक्सचर के रूप में संग्रहीत तीन चैनलों वाली आरजीबी इमेज की स्थिति में कुल मिपमैप को एक वर्ग क्षेत्र में स्वच्छतापूर्वक देखा जा सकता है जो प्रत्येक मूल इमेज के आयामों से दोगुना हो सकता है। प्रत्येक मूल क्षेत्र लाल, हरे और नीले रंग के प्रत्येक टेक्सचर के लिए मूल आकार का एक टेक्सचर मूल क्षेत्र का तीन गुना बनाता है चूंकि छोटे टेक्सचर का मूल क्षेत्र 1/3 माना जाता है। इसलिए ये लाल, हरे या नीले टेक्सचर में से एक के समान कुल स्थान मे स्थित होते हैं। सामान्यतः यह पार्वों में मल्टीम टैग के लिए एक प्रेरणा है।

एनिस्ट्रोपिक फ़िल्टरिंग

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

डाटा सारणी

डाटा सारणी मेमोरी को संरक्षित कर सकती हैं और अधिक रिज़ॉल्यूशन प्रदान कर सकती हैं। हालाँकि इससे कैश कोहेरेंस का डाटा नष्ट हो सकता है क्योकि पार्शियल डाटा को संग्रहीत करने के लिए वाइडर डाटा टाइप की आवश्यकता होती है जो टेक्सचर के आकार से बड़े होता है। इस प्रकार आधुनिक ग्राफ़िक्स हार्डवेयर इसका समर्थन नहीं करता है।

यह भी देखें

संदर्भ

  1. "Texture Filtering with Mipmaps (Direct3D 9)". microsoft.com. Microsoft.
  2. "मिपमैप्स के साथ बनावट फ़िल्टरिंग". microsoft.com. Microsoft. April 8, 2010.
  3. "मिपमैप टेक्सचरिंग" (PDF). Retrieved December 10, 2019.
  4. 4.0 4.1 Williams, Lance. "पिरामिड पैरामीट्रिक्स" (PDF). Archived from the original (PDF) on 2014-04-14. Retrieved 2012-09-25.
  5. "एंटी-अलियासिंग समस्या और मिपमैपिंग". textureingraphics (in English). 2011-12-13. Retrieved 2019-02-21.
  6. "विवरण के अनेक स्तर" (PDF).
  7. "D3D11_SAMPLER_DESC structure". microsoft.com. Microsoft.
  8. "सुपर मारियो सनशाइन में जल प्रभाव का पुनर्निर्माण". Retrieved 25 February 2023.
  9. Olano, Marc; Mukherjee, Shrijeet]]; Dorbie, Angus. "वर्टेक्स-आधारित अनिसोट्रोपिक टेक्सचरिंग" (PDF).