मिपमैप: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 2: Line 2:
{{More citations needed|date=June 2009}}
{{More citations needed|date=June 2009}}


[[कंप्यूटर चित्रलेख|कंप्यूटर ग्राफिक्स]] में '''मिपमैप''' ('''एमआईपी मैप)''' या '''पिरामिड''' [[डिजिटल छवि|डिजिटल छवियों]] की पूर्व-गणना पर आधारित है जिनमें से प्रत्येक पिछले का प्रोग्रेसिवली रिज़ॉल्यूशन अपेक्षाकृत कम होता है।<ref>{{cite web |url=https://docs.microsoft.com/en-us/windows/win32/direct3d9/texture-filtering-with-mipmaps |title=Texture Filtering with Mipmaps (Direct3D 9)|publisher=Microsoft |work=microsoft.com}}</ref><ref>{{cite web|url=https://docs.microsoft.com/en-us/previous-versions/aa921432(v=msdn.10) |title=मिपमैप्स के साथ बनावट फ़िल्टरिंग|date=April 8, 2010 |work=microsoft.com |publisher=[[Microsoft]]}}</ref><ref>{{cite web |url=https://cgl.ethz.ch/teaching/former/vc_master_06/Downloads/Mipmaps_1.pdf |title=मिपमैप टेक्सचरिंग|access-date=December 10, 2019}}</ref> मिपमैप में प्रत्येक छवि या लेवल की ऊंचाई और चौड़ाई पिछले लेवल की तुलना में दो गुना कम होती है। मिपमैप का वर्गाकार होना आवश्यक नहीं है। इसका उद्देश्य रेंडरिंग गति को बढ़ाना और ऐलियासिंग अर्टिफैक्ट को अपेक्षाकृत कम करना है। उच्च रिज़ॉल्यूशन मिपमैप छवि का उपयोग उच्च-घनत्व वाले सैंपल के लिए किया जाता है जैसे कि कैमरे के निकट की वस्तुओं के लिए कम-रिज़ॉल्यूशन वाली छवियों का उपयोग किया जाता है क्योंकि वस्तु अधिक दूर दिखाई देती है। यह मूल टेक्सचर में सभी टेक्सल का सैंपल लेने की तुलना में किसी टेक्सचर को डाउनफ़िल्टर करने (छोटा करने) का एक अधिक सफल प्रयोग है जो स्क्रीन [[पिक्सेल]] में योगदान देता है। यह उपयुक्त रूप से डाउनफ़िल्टर किए गए टेक्सचर से सैंपल की निरंतर संख्या प्राप्त करने के लिए तीव्र होता है। मिपमैप का व्यापक रूप से 3डी [[ कंप्यूटर खेल |कंप्यूटर गेम]], [[फ़ाइट सिम्युलेटर]], टेक्सचर फ़िल्टरिंग के लिए अन्य 3डी जीआईएफ सिस्टम, 2डी और 3डी जीआईएस सॉफ्टवेयर में उपयोग किया जाता है। इनके प्रयोग को मिपमैपिंग के नाम से जाना जाता है। नाम में एमआईपी [[लैटिन]] शब्द 'मल्टीम पार्वो' का संक्षिप्त रूप है।<ref name="staff">{{cite web |title=पिरामिड पैरामीट्रिक्स|last=Williams |first=Lance |url=http://staff.cs.psu.ac.th/iew/cs344-481/p1-williams.pdf |access-date=2012-09-25 |url-status=dead |archive-url=https://web.archive.org/web/20140414134825/http://staff.cs.psu.ac.th/iew/cs344-481/p1-williams.pdf |archive-date=2014-04-14}}</ref>
[[कंप्यूटर चित्रलेख|कंप्यूटर ग्राफिक्स]] में '''मिपमैप''' ('''एमआईपी मैप)''' या '''पिरामिड''' [[डिजिटल छवि|डिजिटल छवियों]] की पूर्व-गणना पर आधारित है जिनमें से प्रत्येक पिछले टेक्सचर का प्रोग्रेसिवली रिज़ॉल्यूशन अपेक्षाकृत कम होता है।<ref>{{cite web |url=https://docs.microsoft.com/en-us/windows/win32/direct3d9/texture-filtering-with-mipmaps |title=Texture Filtering with Mipmaps (Direct3D 9)|publisher=Microsoft |work=microsoft.com}}</ref><ref>{{cite web|url=https://docs.microsoft.com/en-us/previous-versions/aa921432(v=msdn.10) |title=मिपमैप्स के साथ बनावट फ़िल्टरिंग|date=April 8, 2010 |work=microsoft.com |publisher=[[Microsoft]]}}</ref><ref>{{cite web |url=https://cgl.ethz.ch/teaching/former/vc_master_06/Downloads/Mipmaps_1.pdf |title=मिपमैप टेक्सचरिंग|access-date=December 10, 2019}}</ref> मिपमैप में प्रत्येक छवि या लेवल की ऊंचाई और चौड़ाई पिछले लेवल की तुलना में दो गुना कम होती है। मिपमैप का वर्गाकार होना आवश्यक नहीं है। इसका उद्देश्य रेंडरिंग गति को बढ़ाना और ऐलियासिंग अर्टिफैक्ट को अपेक्षाकृत कम करना है। हाई-रिज़ॉल्यूशन मिपमैप छवि का उपयोग उच्च-घनत्व वाले सैंपल के लिए किया जाता है जैसे कि कैमरे के निकट की वस्तुओं के लिए कम-रिज़ॉल्यूशन वाली छवियों का उपयोग किया जाता है क्योंकि वस्तु अधिक दूर दिखाई देती है। यह मूल टेक्सचर में सभी टेक्सल के सैंपल लेने की तुलना में किसी टेक्सचर को डाउनफ़िल्टर करने (छोटा करने) का एक अधिक सफल प्रयोग है जो स्क्रीन [[पिक्सेल]] में योगदान देता है। यह उपयुक्त रूप से डाउनफ़िल्टर किए गए टेक्सचर से सैंपल की निरंतर संख्या प्राप्त करने के लिए तीव्र होता है। मिपमैप का व्यापक रूप से 3डी [[ कंप्यूटर खेल |कंप्यूटर गेम]], [[फ़ाइट सिम्युलेटर]], टेक्सचर फ़िल्टरिंग के लिए अन्य 3डी जीआईएफ सिस्टम, 2डी और 3डी जीआईएस सॉफ्टवेयर में उपयोग किया जाता है। इनके प्रयोग को मिपमैपिंग के नाम से जाना जाता है। नाम में एमआईपी [[लैटिन]] शब्द 'मल्टीम पार्वो' का संक्षिप्त रूप है।<ref name="staff">{{cite web |title=पिरामिड पैरामीट्रिक्स|last=Williams |first=Lance |url=http://staff.cs.psu.ac.th/iew/cs344-481/p1-williams.pdf |access-date=2012-09-25 |url-status=dead |archive-url=https://web.archive.org/web/20140414134825/http://staff.cs.psu.ac.th/iew/cs344-481/p1-williams.pdf |archive-date=2014-04-14}}</ref>


चूंकि मिपमैप परिभाषा के अनुसार पूर्व-गणना पर आधारित हैं इसीलिए इसमे अतिरिक्त [[कंप्यूटर डेटा भंडारण|कंप्यूटर डेटा स्टोरेज]] की आवश्यकता होती है जो [[तरंगिका संपीड़न|वावेलेट कंप्रेशन]] से भी संबंधित है। किसी दृश्य को प्रस्तुत करने में लगने वाले समय को अपेक्षाकृत कम करने के लिए 3डी दृश्यों में मिपमैप टेक्सचर का उपयोग किया जाता है। सामान्यतः ये प्रति टेक्सचर 33% अधिक मेमोरी की लागत पर दूर से प्रदर्शित होने वाले ऐलियासिंग और मोइरे पैटर्न को कम करके छवि गुणवत्ता में सुधार करते हैं।<ref>{{Cite web|url=https://textureingraphics.wordpress.com/what-is-texture-mapping/anti-aliasing-problem-and-mipmapping/|title=एंटी-अलियासिंग समस्या और मिपमैपिंग|date=2011-12-13|website=textureingraphics|language=en|access-date=2019-02-21}}</ref>
चूंकि मिपमैप परिभाषा के अनुसार पूर्व-गणना पर आधारित हैं इसलिए इसमे अतिरिक्त [[कंप्यूटर डेटा भंडारण|कंप्यूटर डेटा स्टोरेज]] की आवश्यकता होती है जो [[तरंगिका संपीड़न|वावेलेट कंप्रेशन]] से भी संबंधित है। किसी दृश्य को प्रस्तुत करने में लगने वाले समय को अपेक्षाकृत कम करने के लिए 3डी दृश्यों में मिपमैप टेक्सचर का उपयोग किया जाता है। सामान्यतः ये प्रति टेक्सचर 33% अधिक मेमोरी की लागत पर दूर से प्रदर्शित होने वाले ऐलियासिंग और मोइरे पैटर्न को कम करके छवि गुणवत्ता में सुधार करते हैं।<ref>{{Cite web|url=https://textureingraphics.wordpress.com/what-is-texture-mapping/anti-aliasing-problem-and-mipmapping/|title=एंटी-अलियासिंग समस्या और मिपमैपिंग|date=2011-12-13|website=textureingraphics|language=en|access-date=2019-02-21}}</ref>
[[File:Mipmap Aliasing Comparison.png|thumb|395x395px]]
[[File:Mipmap Aliasing Comparison.png|thumb|395x395px]]


==संक्षिप्त विवरण==
==संक्षिप्त विवरण==
सामान्यतः मिपमैप का उपयोग निम्नलिखित के लिए किया जाता है:
सामान्यतः मिपमैप का उपयोग निम्नलिखित के लिए किया जाता है:
* एलओडी<ref>{{Cite web|url=http://people.cs.clemson.edu/~dhouse/courses/405/notes/OpenGL-mipmaps.pdf|title=विवरण के अनेक स्तर|format=[[PDF]]}}</ref><ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/desktop/ff476207(v=vs.85).aspx|title=D3D11_SAMPLER_DESC structure|publisher=Microsoft|work=microsoft.com}}</ref>
* एलओडी मे<ref>{{Cite web|url=http://people.cs.clemson.edu/~dhouse/courses/405/notes/OpenGL-mipmaps.pdf|title=विवरण के अनेक स्तर|format=[[PDF]]}}</ref><ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/windows/desktop/ff476207(v=vs.85).aspx|title=D3D11_SAMPLER_DESC structure|publisher=Microsoft|work=microsoft.com}}</ref>
* छवि गुणवत्ता में सुधार, बड़े टेक्सचरों से रेंडरिंग और छोटे टेक्सेल मे मोइरे पैटर्न को उत्पन्न करने के लिए किया जा सकता है।
* छवि गुणवत्ता में सुधार, बड़े टेक्सचरों से रेंडरिंग और छोटे टेक्सेल मे मोइरे पैटर्न को उत्पन्न करने के लिए किया जा सकता है।
* प्रत्येक पिक्सेल को रेंडर करने के लिए सैंपल किए गए टेक्सल की संख्या को कम करके या लिए गए सैंपल की मेमोरी लोकैलिटी को बढ़ाकर रेंडरिंग समय को बढ़ाया जा सकता है।
* प्रत्येक पिक्सेल को रेंडर करने के लिए सैंपल किए गए टेक्सल की संख्या को कम करके या लिए गए सैंपल की मेमोरी लोकैलिटी को बढ़ाकर रेंडरिंग समय को बढ़ाया जा सकता है।
Line 20: Line 20:


==क्रियाविधि==
==क्रियाविधि==
[[File:MipMap Example STS101.jpg|thumb|मिपमैप छवि स्टोरेज: बाईं ओर की मुख्य छवि कम आकार की फ़िल्टर की गई प्रतियों के साथ है।]]मिपमैप सेट की प्रत्येक बिटमैप छवि मुख्य टेक्सचर की एक छोटी छवि है लेकिन विवरण के एक निश्चित भाग पर मुख्य टेक्सचर का उपयोग तब किया जा सकता है जब छवि इसे पूर्ण विवरण में प्रस्तुत करने के लिए पर्याप्त है। रेंडरर एक उपयुक्त मिपमैप छवि को परिवर्तित करता है या दो निकटतम छवियों के बीच इंटरपोलेट ट्रिलिनियर फ़िल्टरिंग को सक्रिय है जब टेक्सचर दूर से छोटे आकार में देखा जाता है तब रेंडरिंग गति बढ़ जाती है क्योंकि समान मिपमैप टेक्सचर के साथ समान परिणामों के लिए प्रति डिस्प्ले पिक्सेल पर संसाधित होने वाले टेक्सचर पिक्सेल की संख्या बहुत अपेक्षाकृत कम हो सकती है। यदि प्रति डिस्प्ले पिक्सेल सीमित संख्या में टेक्सचर के सैंपल का उपयोग किया जाता है। जैसा कि [[बिलिनियर फ़िल्टरिंग]] की स्थिति में होता है तब छवि की प्रदर्शन क्षमता स्वतः कम हो जाती हैं क्योंकि मिपमैप छवियां प्रभावी रूप से पहले से ही एंटी-एलियास्ड होती हैं। मिपमैप के साथ नीचे और ऊपर की स्केलिंग प्रभाव को अधिक सक्षम किया जा सकता है।
[[File:MipMap Example STS101.jpg|thumb|मिपमैप छवि स्टोरेज: बाईं ओर की मुख्य छवि कम आकार की फ़िल्टर की गई प्रतियों के साथ है।]]मिपमैप सेट की प्रत्येक बिटमैप छवि मुख्य टेक्सचर की एक छोटी छवि है लेकिन विवरण के एक निश्चित भाग पर मुख्य टेक्सचर का उपयोग तब किया जा सकता है जब छवि इसे पूर्ण विवरण में प्रस्तुत करने के लिए पर्याप्त होती है। रेंडरर एक उपयुक्त मिपमैप छवि को परिवर्तित करता है या दो निकटतम छवियों के बीच इंटरपोलेट ट्रिलिनियर फ़िल्टरिंग को सक्रिय करता है जब टेक्सचर को दूर से छोटे आकार में देखा जाता है तब रेंडरिंग गति बढ़ जाती है क्योंकि समान मिपमैप टेक्सचर के साथ समान परिणामों के लिए प्रति डिस्प्ले पिक्सेल पर संसाधित होने वाले टेक्सचर पिक्सेल की संख्या बहुत अपेक्षाकृत कम हो सकती है। यदि प्रति डिस्प्ले पिक्सेल सीमित संख्या में टेक्सचर के सैंपल का उपयोग किया जाता है। जैसा कि [[बिलिनियर फ़िल्टरिंग]] की स्थिति में होता है तब छवि की प्रदर्शन क्षमता स्वतः कम हो जाती हैं क्योंकि मिपमैप छवियां प्रभावी रूप से पहले से ही एंटी-एलियास्ड होती हैं। मिपमैप के साथ नीचे और ऊपर के स्केलिंग प्रभाव को भी अधिक सक्षम किया जा सकता है।


यदि टेक्सचर का मूल आकार 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 का एक इंटरपोलेशन मिपमैप (ट्रिलीनियर इंटरपोलेशन के साथ) का उपयोग किया जा सकता है। इन टेक्सचरों को उत्पन्न करने का सबसे सामान्य प्रकार क्रमिक औसत है। हालांकि अधिक सॉफिस्टिकेटेड एल्गोरिदम (सिग्नल प्रोसेसिंग और फूरियर ट्रांसफॉर्म पर आधारित) का भी उपयोग किया जा सकता है।
यदि टेक्सचर का मूल आकार 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 का एक इंटरपोलेशन मिपमैप (ट्रिलीनियर इंटरपोलेशन के साथ) का उपयोग किया जा सकता है। इन टेक्सचरों को उत्पन्न करने का सबसे सामान्य प्रकार क्रमिक औसत है। हालांकि अधिक सॉफिस्टिकेटेड एल्गोरिदम (सिग्नल प्रोसेसिंग और फूरियर ट्रांसफॉर्म पर आधारित) का भी उपयोग किया जा सकता है।
Line 30: Line 30:
}}
}}


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


== एनिस्ट्रोपिक फ़िल्टरिंग ==
== एनिस्ट्रोपिक फ़िल्टरिंग ==
{{main|अनिसोट्रोपिक फ़िल्टरिंग}}
{{main|अनिसोट्रोपिक फ़िल्टरिंग}}


जब किसी टेक्सचर को तीव्र (स्टेप) कोण पर देखा जाता है तो फ़िल्टरिंग प्रत्येक दिशा में एक समान नहीं होती है क्योकि यह आइसोट्रोपिक के अतिरिक्त [[एनिस्ट्रोपिक]] होती है, इसीलिए इसमे कॉम्प्रोमाइज़ रिज़ॉल्यूशन की आवश्यकता होती है। यदि उच्च रिज़ॉल्यूशन का उपयोग किया जाता है तो कैश कोहेरेंस अपेक्षाकृत कम हो जाता है और ऐलियासिंग एक दिशा में बढ़ जाती है, लेकिन छवि स्पष्ट हो जाती है। यदि कम रिज़ॉल्यूशन का उपयोग किया जाता है तो कैश कोहेरेंस में सुधार होता है लेकिन छवि अत्यधिक अस्पष्ट (धुंधली) हो जाती है। यह ऐलियासिंग के लिए एमआईपी एलओडी का एक कॉम्प्रोमाइज़ रिज़ॉल्यूशन है। हालाँकि एनिस्ट्रोपिक फ़िल्टरिंग केवल एमआईपी एलओडी को समायोजित करने के अतिरिक्त प्रत्येक पिक्सेल के लिए नॉनइसोट्रोपिक टेक्सचर फुटप्रिंट के सैंपल को लेकर इस ट्रेड-आफ को हल करने का प्रयास करता है। इस नॉनइसोट्रोपिक टेक्सचर सैंपल के लिए या तो अधिक सॉफिस्टिकेटेड स्टोरेज की आवश्यकता होती है या उच्च आवृत्तियों पर अधिक टेक्सचर फेच की आवश्यकता होती है।<ref>{{cite web |url=https://www.csee.umbc.edu/~olano/papers/vbat/vbat.pdf |title=वर्टेक्स-आधारित अनिसोट्रोपिक टेक्सचरिंग|last=Olano |first=Marc |last2=Mukherjee |first2=<nowiki>Shrijeet]]</nowiki> |last3=Dorbie |first3=Angus}}</ref>
जब किसी टेक्सचर को तीव्र (स्टेप) कोण पर देखा जाता है तो फ़िल्टरिंग प्रत्येक दिशा में एक समान नहीं होती है क्योकि यह आइसोट्रोपिक के अतिरिक्त [[एनिस्ट्रोपिक]] होती है इसलिए इसमे कॉम्प्रोमाइज़ रिज़ॉल्यूशन की आवश्यकता होती है। यदि इसमे हाई-रिज़ॉल्यूशन का उपयोग किया जाता है तो कैश कोहेरेंस अपेक्षाकृत कम हो जाता है और ऐलियासिंग एक दिशा में बढ़ जाता है, लेकिन छवि स्पष्ट हो जाती है। यदि कम रिज़ॉल्यूशन का उपयोग किया जाता है तो कैश कोहेरेंस में सुधार होता है लेकिन छवि अत्यधिक अस्पष्ट (धुंधली) हो जाती है। यह ऐलियासिंग के लिए एमआईपी एलओडी का एक कॉम्प्रोमाइज़ रिज़ॉल्यूशन है। हालाँकि एनिस्ट्रोपिक फ़िल्टरिंग केवल एमआईपी एलओडी को समायोजित करने के अतिरिक्त प्रत्येक पिक्सेल के लिए नॉनइसोट्रोपिक टेक्सचर फुटप्रिंट के सैंपल को लेकर इस ट्रेड-आफ को हल करने का प्रयास करता है। इस नॉनइसोट्रोपिक टेक्सचर सैंपल के लिए या तो अधिक सॉफिस्टिकेटेड स्टोरेज की आवश्यकता होती है या उच्च आवृत्तियों पर अधिक टेक्सचर फेच की आवश्यकता होती है।<ref>{{cite web |url=https://www.csee.umbc.edu/~olano/papers/vbat/vbat.pdf |title=वर्टेक्स-आधारित अनिसोट्रोपिक टेक्सचरिंग|last=Olano |first=Marc |last2=Mukherjee |first2=<nowiki>Shrijeet]]</nowiki> |last3=Dorbie |first3=Angus}}</ref>
==डाटा सारणी==
==डाटा सारणी==
डाटा सारणी मेमोरी को संरक्षित कर सकती हैं और अधिक रिज़ॉल्यूशन प्रदान कर सकती हैं। हालाँकि इससे कैश कोहेरेंस का डाटा नष्ट हो सकता है क्योकि पार्शियल डाटा को संग्रहीत करने के लिए वाइडर डाटा टाइप की आवश्यकता होती है जो टेक्सचर के आकार से बड़े होता है। इस प्रकार आधुनिक ग्राफ़िक्स हार्डवेयर इसका समर्थन नहीं करता है।
डाटा सारणी मेमोरी को संरक्षित कर सकती हैं और अधिक रिज़ॉल्यूशन प्रदान कर सकती हैं। हालाँकि इससे कैश कोहेरेंस का डाटा नष्ट हो सकता है क्योकि पार्शियल डाटा को संग्रहीत करने के लिए वाइडर डाटा टाइप की आवश्यकता होती है जो टेक्सचर के आकार से बड़े होता है। इस प्रकार आधुनिक ग्राफ़िक्स हार्डवेयर इसका समर्थन नहीं करता है।

Revision as of 11:05, 13 December 2023

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