सामग्री पर जाएं

कोरल एज TPU के साथ एक रास्पबेरी पाई पर Ultralytics YOLOv8 🚀

रास्पबेरी पाई यूएसबी एज के साथ सिंगल बोर्ड कंप्यूटर TPU एक्‍सेलरेटर

कोरल एज क्या है TPU?

कोरल एज TPU एक कॉम्पैक्ट डिवाइस है जो एज जोड़ता है TPU आपके सिस्टम के लिए कोप्रोसेसर। यह कम-शक्ति, उच्च-प्रदर्शन एमएल अनुमान लगाने में सक्षम बनाता है TensorFlow लाइट मॉडल। पर और अधिक पढ़ें कोरल एज TPU होम पेज

कोरल एज के साथ रास्पबेरी पाई मॉडल प्रदर्शन को बढ़ावा दें TPU

बहुत से लोग अपने मॉडल को रास्पबेरी पाई जैसे एम्बेडेड या मोबाइल डिवाइस पर चलाना चाहते हैं, क्योंकि वे बहुत ही कुशल हैं और कई अलग-अलग अनुप्रयोगों में उपयोग किए जा सकते हैं। हालांकि, इन उपकरणों पर अनुमान प्रदर्शन आमतौर पर प्रारूपों का उपयोग करते समय भी खराब होता है जैसे onnx नहीं तो openvino. कोरल एज TPU इस समस्या का एक बढ़िया समाधान है, क्योंकि इसका उपयोग रास्पबेरी पाई के साथ किया जा सकता है और अनुमान प्रदर्शन को बहुत तेज कर सकता है।

किनारा TPU रास्पबेरी पाई पर के साथ TensorFlow लाइट (नया) ⭐

एज का उपयोग करने के तरीके पर कोरल द्वारा मौजूदा गाइडTPU रास्पबेरी पाई के साथ पुराना है, और वर्तमान कोरल एज TPU रनटाइम बिल्ड वर्तमान के साथ काम नहीं करते हैं TensorFlow लाइट रनटाइम संस्करण अब। इसके अलावा, ऐसा लगता है कि Google ने कोरल प्रोजेक्ट को पूरी तरह से छोड़ दिया है, और 2021 और 2024 के बीच कोई अपडेट नहीं हुआ है। यह मार्गदर्शिका आपको दिखाएगी कि एज कैसे प्राप्त करें TPU के नवीनतम संस्करणों के साथ कार्य करना TensorFlow लाइट रनटाइम और एक अद्यतन कोरल एज TPU रास्पबेरी पाई सिंगल बोर्ड कंप्यूटर (SBC) पर रनटाइम।

आवश्यकताएँ

स्थापना पूर्वाभ्यास

यह मार्गदर्शिका मानती है कि आपके पास पहले से ही एक कार्यशील रास्पबेरी पाई ओएस इंस्टॉल है और आपने इंस्टॉल किया है ultralytics और सभी निर्भरताएं। पाने के लिए ultralytics स्थापित, भ्रमण गर्नुहोस् क्विकस्टार्ट गाइड यहां जारी रखने से पहले सेटअप प्राप्त करने के लिए।

एज स्थापित करना TPU रनटाइम

सबसे पहले, हमें एज स्थापित करने की आवश्यकता है TPU रनटाइम। कई अलग-अलग संस्करण उपलब्ध हैं, इसलिए आपको अपने ऑपरेटिंग सिस्टम के लिए सही संस्करण चुनने की आवश्यकता है।

रास्पबेरी पाई ओएस उच्च आवृत्ति मोड डाउनलोड करने के लिए संस्करण
बुल्सआई 32 बिट नहीं libedgetpu1-std_ ... . bullseye_armhf.deb
बुल्सआई 64 बिट नहीं libedgetpu1-std_ ... . bullseye_arm64.deb
बुल्सआई 32 बिट हाँ libedgetpu1-max_ ... . bullseye_armhf.deb
बुल्सआई 64 बिट हाँ libedgetpu1-max_ ... . bullseye_arm64.deb
किताबी कीड़ा 32 बिट नहीं libedgetpu1-std_ ... . bookworm_armhf.deb
किताबी कीड़ा 64 बिट नहीं libedgetpu1-std_ ... . bookworm_arm64.deb
किताबी कीड़ा 32 बिट हाँ libedgetpu1-max_ ... . bookworm_armhf.deb
किताबी कीड़ा 64 बिट हाँ libedgetpu1-max_ ... . bookworm_arm64.deb

यहां से नवीनतम संस्करण डाउनलोड करें

फ़ाइल डाउनलोड करने के बाद, आप इसे निम्न कमांड के साथ इंस्टॉल कर सकते हैं:

sudo dpkg -i path/to/package.deb

रनटाइम स्थापित करने के बाद, आपको अपने कोरल एज में प्लग इन करना होगा TPU अपने रास्पबेरी पाई पर एक यूएसबी 3.0 पोर्ट में। ऐसा इसलिए है, क्योंकि आधिकारिक गाइड के अनुसार, एक नया udev स्थापना के बाद नियम को प्रभावी होने की आवश्यकता है।

महत्वपूर्ण

यदि आपके पास पहले से ही कोरल एज है TPU रनटाइम स्थापित, निम्न कमांड का उपयोग करके इसे अनइंस्टॉल करें।

# If you installed the standard version
sudo apt remove libedgetpu1-std 

# If you installed the high frequency version
sudo apt remove libedgetpu1-max 

अपने मॉडल को एज में निर्यात करें TPU संगत मॉडल

एज का उपयोग करने के लिए TPU, आपको अपने मॉडल को एक संगत प्रारूप में बदलने की आवश्यकता है। यह अनुशंसा की जाती है कि आप आधिकारिक का उपयोग करके Google Colab, x86_64 Linux मशीन पर निर्यात चलाएं Ultralytics डॉकर कंटेनर, या उपयोग कर रहा है Ultralytics HUB, एज के बाद से TPU एआरएम पर कंपाइलर उपलब्ध नहीं है। उपलब्ध तर्कों के लिए निर्यात मोड देखें।

निर्यात

from ultralytics import YOLO

# Load a model
model = YOLO('path/to/model.pt')  # Load a official model or custom model

# Export the model
model.export(format='edgetpu')
yolo export model=path/to/model.pt format=edgetpu  # Export a official model or custom model

निर्यात किए गए मॉडल को में सहेजा जाएगा <model_name>_saved_model/ नाम के साथ फ़ोल्डर <model_name>_full_integer_quant_edgetpu.tflite.

मॉडल चलाना

अपने मॉडल को निर्यात करने के बाद, आप निम्न कोड का उपयोग करके इसके साथ अनुमान चला सकते हैं:

भागना

from ultralytics import YOLO

# Load a model
model = YOLO('path/to/edgetpu_model.tflite')  # Load a official model or custom model

# Run Prediction
model.predict("path/to/source.png")
yolo predict model=path/to/edgetpu_model.tflite source=path/to/source.png  # Load a official model or custom model

पूर्ण भविष्यवाणी मोड विवरण के लिए भविष्यवाणी पृष्ठ पर व्यापक जानकारी प्राप्त करें।

महत्वपूर्ण

आपको मॉडल का उपयोग करके चलाना चाहिए tflite-runtime और नहीं tensorflow. अगर tensorflow स्थापित है, स्थापना रद्द करें tensorflow निम्न आदेश के साथ:

pip uninstall tensorflow tensorflow-aarch64

फिर इंस्टॉल/अपडेट करें tflite-runtime:

pip install -U tflite-runtime

यदि आप एक tflite-runtime के लिए पहिया tensorflow 2.15.0 इसे से डाउनलोड करें यहाँ और इसका उपयोग करके इसे स्थापित करें pip या आपकी पसंद का पैकेज मैनेजर।



2024-02-12 बनाया गया, अपडेट किया गया 2024-02-12
लेखक: स्किलनोब (1), ग्लेन-जोचर (1)

टिप्पणियाँ