मिपमैप

From Vigyanwiki
Revision as of 18:27, 12 December 2023 by alpha>Ashutoshyadav

कंप्यूटर ग्राफिक्स में मिपमैप (एमआईपी मैप) या पिरामिड डिजिटल छवियों की पूर्व-गणना पर आधारित है जिनमें से प्रत्येक पिछले का प्रोग्रेसिवली रिज़ॉल्यूशन अपेक्षाकृत कम होता है।[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 की आवश्यकता होती है, इसलिए mipmaps को 43 मेमोरी की आवश्यकता होती है अर्थात 13 ≈ 33% से अधिक।

इन सभी मिपमैप के लिए आवश्यक स्टोरेज स्थान में वृद्धि मूल टेक्सचर का एक तिहाई है, क्योंकि क्षेत्रों का योग 1/4 + 1/16 + 1/64 + 1/256 + ⋯ 1/3 में परिवर्तित हो जाता है। अलग-अलग विमानों के रूप में संग्रहीत तीन चैनलों वाली आरजीबी छवि के मामले में, कुल मिपमैप को एक वर्ग क्षेत्र में बड़े करीने से फिट होने के रूप में देखा जा सकता है, जो प्रत्येक तरफ मूल छवि के आयामों से दोगुना है (प्रत्येक तरफ दोगुना बड़ा चार है)। मूल क्षेत्र का गुना - लाल, हरे और नीले प्रत्येक के लिए मूल आकार का एक विमान मूल क्षेत्र का तीन गुना बनाता है, और फिर चूंकि छोटे टेक्सचर मूल का 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).