इंजन खुला है। पढ़िए, चलाइए, उस पर बनाइए।
LocalMesh Engine वह हिस्सा है जो फ़ोटो को टेक्सचर वाले मेश में बदलता है, आपके अपने ग्राफ़िक्स कार्ड पर, और कुछ भी मशीन से बाहर नहीं जाता। यह GitHub पर Apache 2.0 के तहत प्रकाशित है। एक फ़ोटो से यह Microsoft का TRELLIS.2 चलाता है; चार से, TencentARC का Pixal3D, जिसे यहाँ FP8 में बदला गया है ताकि 8 GB के कार्ड में समा जाए।
इससे बनाया गया
छह वस्तुएँ, हर एक की चार छवियाँ, एक लैपटॉप RTX 4060 पर बनाई गईं। जैसी वे इंजन से निकलीं, एक ही एनवायरनमेंट लाइट के नीचे, हर एक पूरा चक्कर लगाती है।
हमने TRELLIS.2 में क्या जोड़ा
TRELLIS.2 एक फ़ोटो को टेक्सचर वाले मेश में बदलता है। उसके ऊपर जो बैठता है, वह यह है।
- एक ही वस्तु की चार फ़ोटो। TRELLIS.2 एक छवि पर काम करता है। यह रास्ता आपके सामने, दाएँ, बाएँ और पीछे को एक ही ग्रिड पर रखता है और वहीं मॉडल को तय करने देता है — पहले मोटे आयतन पर, फिर सतह तराशने वाले दोनों चरणों में एक-एक बार — चार वस्तुएँ बनाकर उनका औसत लेने के बजाय। मल्टी-व्यू वेट Pixal3D (TencentARC, MIT) के हैं, यहाँ FP8 में बदले गए ताकि पूरा रास्ता 8 GB के कार्ड में समा जाए।
- हर फ़ोटो का कोण मापा जाता है। Depth Anything 3 पिक्सेल से पढ़ता है कि हर फ़ोटो किस कोण से ली गई और हर प्रोफ़ाइल कौन-सा पक्ष दिखाती है, इसलिए हाथ से घुमाया गया चक्कर साफ़ 90 डिग्री का होना ज़रूरी नहीं। जब पढ़ना साफ़ न हो, इंजन पूरे 90 डिग्री पर लौट आता है, और नतीजा बताता है कि दोनों में से क्या इस्तेमाल हुआ।
- चारों छवियाँ एक ही पैमाने पर पहुँचती हैं। हर क्रॉप विषय की ऊँचाई पर तय होता है, और घूमने से ऊँचाई नहीं बदलती। अलग-अलग क्रॉप करने पर मोटरसाइकिल अपने दृश्यों के बीच 37.9 % अलग पैमानों पर मॉडल तक पहुँचती थी और ज़्यादा मोटी निकलती थी; कैसेट 39.7 %। चौड़ाई से ऊँचे विषय पर, सिर या आकृति पर, क्रॉप पहले से ही सहमत थे और कुछ नहीं बदलता।
- टुकड़ा तभी हटता है जब वह छोटा भी हो और उखड़ा भी। सबसे बड़े टुकड़े के मुक़ाबले छोटा, और उससे दूर खड़ा। समुराई पर: 1,133 अलग-अलग टुकड़े, जिनमें से 185 सचमुच उखड़े हुए थे और हटा दिए गए, सतह का 1.21 %; खोल पर सटे 941 रह गए, क्योंकि उन्हें हटाने से वहीं छेद बन जाता है। अगर सफ़ाई सतह के 5 % से ज़्यादा माँगे, तो वह कुछ नहीं करती और यह बता देती है।
- फ़ाइल निकलने से पहले सामग्री जाँची जाती है। मॉडल रेज़िन की मूर्ति पर 0.6 से 0.8 का मेटल लिखता है। वह शोर है, और किसी भी व्यूअर में रंग गहरा कर देता है और परावर्तन रंग देता है, इसलिए उसे शून्य लिखा जाता है। वह चमक की नक़ल करने वाली पारदर्शिता भी बेक करता है — एक काले कैसेट के एटलस का 53 % पारभासी चिह्नित निकला, और कुछ व्यूअर उसे काँच की तरह दिखाते हैं, इसलिए अपारदर्शी वस्तु उसके बिना जाती है। और पिछली सतहें उन्हीं खुले किनारों से तय होती हैं जो मेश में सचमुच हैं।
- 8 GB वाले कार्ड के लिए बनाया गया। FP8 वेट, और मॉडल एक के बाद एक लोड होते हैं ताकि चरणों के बीच कार्ड ख़ाली रहे। त्रिभुजों की संख्या स्तर तय करता है, स्टैंडर्ड पर 150,000, और सुरक्षा सीमाएँ कार्ड से पढ़ी जाती हैं: री-मेश के लिए बहुत भारी आकृति ड्राइवर को साथ ले डूबने के बजाय सीमा के नीचे लाई जाती है।
इसे चलाना
- 1इसे इंस्टॉल करें। तीन नहीं, दस चरण। तीन CUDA एक्सटेंशन आपकी अपनी मशीन पर कंपाइल होते हैं, इसलिए सबसे पहले Python 3.12, CUDA 12.8 टूलकिट और एक C++ कंपाइलर चाहिए। कोड के साथ कोई वेट नहीं आता और इंजन उन्हें आपके लिए नहीं लाता: एक फ़ोटो के रास्ते के लिए लगभग 9.5 GB हाथ से, चार के लिए 14.3 GB, और DINOv3 Meta के किसी व्यक्ति की मंज़ूरी का इंतज़ार करता है। सब कुछ Windows पर मापा गया; Linux चलना चाहिए, हमने चलाया नहीं।
- 2इसे एक फ़ोटो दें। एक छवि से मेश मिल जाता है, और यही छोटा इंस्टॉल है। दाएँ, बाएँ और पीछे जोड़ दें तो इंजन चारों को मिलाता है: 4.8 GB और वेट, और एक और एक्सटेंशन कंपाइल करने को। तीनों तरफ़ें या कोई नहीं; दो को मना कर दिया जाता है।
- 3एक .glb लें। टेक्सचर वाला, UV खुला हुआ, Y ऊपर की ओर। यह Blender में, Unreal में, और glTF पढ़ने वाली किसी भी चीज़ में खुलता है।
या ऐप्लिकेशन लीजिए
LocalMesh इसी इंजन के चारों ओर बना स्टूडियो है: एक बोर्ड जहाँ तस्वीरें ऑब्जेक्ट बन जाती हैं, एक लाइब्रेरी, एक इमेज स्टूडियो, और एक व्यूअर। 14 दिन मुफ़्त, फिर $39 का एक ही भुगतान। कोई सब्सक्रिप्शन नहीं।
LocalMesh डाउनलोड करें