बस आप जो भी करना चाहते हैं उसके लिए सभी टुकड़े हैं ... आपको ज्यादातर उन्हें एक साथ रखना होगा।
आप ARFrame
रों या तो प्राप्त समय-समय पर मतदान इसके currentFrame
के लिए या उन्हें होने से ARSession
अपने सत्र प्रतिनिधि को धक्का दे द्वारा। (यदि आप अपना खुद का रेंडरर बना रहे हैं, तो यह ARSessionDelegate
है; यदि आप ARSCNView
या ARSKView
के साथ काम कर रहे हैं, तो उनके प्रतिनिधि कॉलबैक दृश्य को संदर्भित करते हैं, ताकि आप currentFrame
प्राप्त करने के लिए सत्र से वापस काम कर सकें जिससे कॉलबैक हो गया ।)
ARFrame
के रूप में वर्तमान capturedImage
प्रदान करता है।
आप या तो VNImageRequestHandler
या VNSequenceRequestHandler
वर्ग, जो दोनों के तरीकों कि एक इनपुट छवि पर कार्रवाई करने के रूप में एक CVPixelBuffer
ले का उपयोग कर के प्रसंस्करण के लिए Vision के लिए छवियों गुजरती हैं।
आप WWDC17 session on Vision से जुड़ी विजन + कोर एमएल के लिए छवियों को पारित करने के लिए सामान्य कोड प्राप्त कर सकते हैं, और यदि आप उस सत्र घड़ी लाइव डेमो भी विजन को CVPixelBuffer
रों गुजर शामिल हैं। (वे पाते हैं कि डेमो में AVCapture से पिक्सेल बफ़र्स मिलता है, लेकिन विजन हिस्सा आप ARKit से बफ़र्स प्राप्त हो रहे हैं एक ही है।)
एक चिपका बिंदु आप होने की संभावना हो की पहचान है/वस्तुओं का पता लगाने। ज्यादातर "ऑब्जेक्ट रिकॉग्नाइजेशन" मॉडल कोर एमएल + विजन के साथ उपयोग करते हैं (जिनमें से ऐप्पल उनके ML developer page पर पूर्व-रूपांतरित संस्करण प्रदान करता है) दृश्य क्लासिफायर हैं।यही कारण है, वे एक छवि को देखो और कहते हैं, की तरह कुछ नहीं "यह एक (बात) की एक तस्वीर है," "इस तस्वीर में एक (बात) है, (बाउंडिंग बॉक्स) में स्थित" ।
विजन क्लासिफायर से निपटने के लिए आसान एपीआई प्रदान करता है - आपके अनुरोध के परिणाम सरणी VNClassificationObservation
ऑब्जेक्ट्स से भरे हुए हैं जो आपको बताती हैं कि दृश्य क्या है (या "शायद" है, आत्मविश्वास रेटिंग के साथ)।
आप पाते हैं या एक मॉडल है कि दोनों की पहचान करता है और स्थित वस्तुओं को प्रशिक्षित है - और उस भाग के लिए, मैं तनाव चाहिए, गेंद अपने अदालत में है - विजन के साथ यह VNCoreMLFeatureValueObservation
वस्तुओं का परिणाम देगा का उपयोग कर। वे मनमानी कुंजी-मूल्य जोड़े की तरह हैं, इसलिए आप उन वस्तुओं से कैसे पहचानते हैं, इस पर निर्भर करता है कि आप अपने मॉडल से आउटपुट को कैसे लेबल करते हैं और लेबल करते हैं।
यदि आप किसी ऐसे व्यक्ति से बात कर रहे हैं जो विजन पहले से ही जानता है कि अपने मॉडल का उपयोग करने के बजाय - चेहरे और क्यूआर कोड जैसी सामग्री - आप विजन एपीआई के साथ छवि फ्रेम में उन लोगों के स्थान प्राप्त कर सकते हैं।
2 डी छवि में एक वस्तु का पता लगाने के बाद, आप एआर में इसके साथ जुड़े 3 डी सामग्री प्रदर्शित (या 2 डी सामग्री प्रदर्शित है, लेकिन साथ सामग्री ARKit साथ 3 डी में तैनात कहा) करना चाहते हैं, तो आप की आवश्यकता होगी hit test 3 डी दुनिया के खिलाफ उन 2 डी छवि अंक।
एक बार जब आप इस चरण तक पहुंच जाते हैं, तो एआर सामग्री को हिट टेस्ट के साथ रखना कुछ ऐसा है जो by Apple और the community दोनों में पहले से ही बहुत अच्छी तरह से कवर किया गया है।
मूल बातें के साथ शुरू करें। ओह, और आपको समझते हैं ** ** ** एक्सकोड 9 और आईओएस 11 का उपयोग करना चाहिए। अब, "मूल बातें" से, मेरा मतलब है कि प्रत्येक टुकड़ा * क्या है * और * नहीं है *। विजन उच्चतम स्तर होगा - यह कोरएमएल मॉडल को ट्रैक और उपयोग कर सकता है। लेकिन क्या आप जानते हैं कि मॉडल को कैसे प्रशिक्षित किया जाए? यदि नहीं, तो पहले एमएल सीखें, और फिर * सीखें कि एक प्रशिक्षित मॉडल को CoreML में कैसे आयात करें। मैं एआरकिट को संबोधित नहीं करूंगा (खेद है कि यह मेरे आला के लिए बहुत व्यापक है - क्या आपको यकीन है कि यह आपके लिए जरूरी है?) लेकिन यदि आप सीधे कोरएमएल को संबोधित करना चाहते हैं तो आपको समझना होगा कि 'सीवी पिक्सेलबफर' क्या है। सौभाग्य! आपकी प्रतिक्रिया के लिए – dfd
धन्यवाद; हां, मैं दोनों एक्सकोड 9 और आईओएस 11 का उपयोग कर रहा हूं। मैं एक मॉडल को प्रशिक्षित कर सकता हूं, इस तरह मैं वास्तव में प्रोग्रामिंग में शुरू हुआ (पायथन में एनएलपी) और मैं मॉडल को एक्सकोड में परिवर्तित और सम्मिलित कर सकता हूं। इसके अलावा, पूर्व-प्रशिक्षित मॉडल हैं जिनका उपयोग मैं समय के लिए ऐप की कार्यक्षमता का परीक्षण करने के लिए कर सकता हूं। मुझे ARframe निकालने और CoreML के मॉडल का उपयोग करके विज़न के माध्यम से इसे पार करने की पद्धति को समझने में समस्या हो रही है। वास्तव में अभी तक कोई गहरा दस्तावेज नहीं है और अगर कोई अंतर्दृष्टि शेड कर सकता है तो @dfd – pythlang
आपका स्वागत है। अब, आपके पास * विशिष्ट * समस्या क्या है? विजन का उपयोग कर ऑब्जेक्ट को ट्रैक करने के साथ कुछ? कोरएमएल में एक प्रशिक्षित मॉडल आयात करना? एक बाध्यकारी बॉक्स प्रदर्शित करना? – dfd