> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/deployment/hi/self-hosted/sdks/luxonis-oak.md).

# Luxonis OAK

यह [Luxonis OAK (OpenCV AI Kit)](https://shop.luxonis.com/) एक एज डिवाइस है जिसका उपयोग एम्बेडेड कंप्यूटर विज़न सिस्टम की तैनाती के लिए व्यापक रूप से किया जाता है।

OAK डिवाइस को एक होस्ट मशीन के साथ जोड़ा जाता है, जो डाउनस्ट्रीम एप्लिकेशन के संचालन को नियंत्रित करती है। कुछ रोचक प्रेरणा के लिए देखें [Luxonis के उपयोग के मामले](https://docs.luxonis.com/en/latest/#example-use-cases) और [Roboflow के केस स्टडीज़](https://blog.roboflow.com/tag/case-studies/).

**वैसे:** यदि आपके पास अभी तक आपका OAK डिवाइस नहीं है, तो आप [Roboflow Store के माध्यम से एक खरीद सकते हैं](https://store.roboflow.com/) और 10% की छूट पा सकते हैं।

### टास्क समर्थन

होस्ट की गई API द्वारा निम्न कार्य प्रकार समर्थित हैं:

| कार्य प्रकार                                                                                                                                                              | Luxonis OAK Deployment द्वारा समर्थित |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- |
| <p>ऑब्जेक्ट डिटेक्शन:</p><ul><li>Roboflow पर प्रशिक्षित YOLOv8 मॉडल (सभी आकार: Nano, Small, Medium, Large, X Large)</li><li>Roboflow पर प्रशिक्षित YOLOv11 मॉडल</li></ul> | ✅                                     |
| वर्गीकरण                                                                                                                                                                  |                                       |
| इंस्टेंस सेगमेंटेशन                                                                                                                                                       |                                       |
| सार्थक विभाजन                                                                                                                                                             |                                       |

### Luxonis OAK पर एक मॉडल तैनात करें

#### समर्थित Luxonis डिवाइस और होस्ट आवश्यकताएँ

Roboflow Inference Server निम्नलिखित डिवाइसों का समर्थन करता है:

* OAK-D
* OAK-D-Lite
* OAK-D-POE
* OAK-1 (गहराई नहीं)

#### इंस्टॉलेशन

इंस्टॉल करें `roboflowoak`, `depthai`और `opencv-python` पैकेज:

```bash
pip install roboflowoak
pip install depthai
pip install opencv-python
```

अब आप `roboflowoak` पैकेज का उपयोग करके अपना कस्टम-प्रशिक्षित Roboflow मॉडल चला सकते हैं।

#### इन्फरेंस चलाना: तैनाती

यदि आप Depth क्षमताओं के बिना किसी OAK डिवाइस पर तैनात कर रहे हैं, तो सेट करें `depth=False` जब `rf` ऑब्जेक्ट को इंस्टैंशिएट (बनाते) करते समय। Depth वाले OAK के मॉडल नाम के साथ "D" जुड़ा होता है, जैसे OAK-D और OAK-D-Lite।

साथ ही, टिप्पणी करें `max_depth = np.amax(depth)` और `cv2.imshow("depth", depth/max_depth)`

```python
from roboflowoak import RoboflowOak
import cv2
import time
import numpy as np

if __name__ == '__main__':
    # RoboflowOak मॉड्यूल के साथ एक ऑब्जेक्ट (rf) इंस्टैंशिएट करना
    rf = RoboflowOak(model="YOUR-MODEL-ID", confidence=0.05, overlap=0.5,
    version="YOUR-MODEL-VERSION-#", api_key="YOUR-PRIVATE_API_KEY", rgb=True,
    depth=True, device=None, blocking=True)
    # अपने मॉडल को चलाना और डिटेक्शनों के साथ वीडियो आउटपुट प्रदर्शित करना
    while True:
        t0 = time.time()
        # rf.detect() फ़ंक्शन मॉडल इन्फरेंस चलाता है
        result, frame, raw_frame, depth = rf.detect()
        predictions = result["predictions"]
        #{
        #    predictions:
        #    [ {
        #        x: (मध्य),
        #        y:(मध्य),
        #        width:
        #        height:
        #        depth: ###->
        #        confidence:
        #        class:
        #        mask: {
        #    ]
        #}
        #frame - पूर्व-प्रसंस्करण के बाद का फ्रेम, डिटेक्शनों के साथ
        #raw_frame - आपके OAK से प्राप्त मूल फ्रेम
        #depth - raw_frame के लिए डेप्थ मैप, केंद्र कैमरे के अनुसार केंद्र-सुधारित
        
        # timing: बेंचमार्किंग उद्देश्यों के लिए
        t = time.time()-t0
        print("FPS ", 1/t)
        print("PREDICTIONS ", [p.json() for p in predictions])

        # डेप्थ गणना के लिए पैरामीटर सेट करना
        # यदि आप बिना Depth वाले OAK का उपयोग कर रहे हैं, तो निम्नलिखित 2 पंक्तियों पर टिप्पणी करें
        max_depth = np.amax(depth)
        cv2.imshow("depth", depth/max_depth)
        # वीडियो फ़ीड को क्रमिक फ्रेमों के रूप में प्रदर्शित करना
        cv2.imshow("frame", frame)
    
        # OAK इन्फरेंस विंडो को कैसे बंद करें / इन्फरेंस रोकें: CTRL+q या CTRL+c
        if cv2.waitKey(1) == ord('q'):
            break
```

नीचे दिया गया कोड दर्ज करें (प्लेसहोल्डर टेक्स्ट को अपनी Python स्क्रिप्ट के पथ से बदलने के बाद)

```bash
# विंडो बंद करने के लिए (इंटरप्ट या इन्फरेंस समाप्त करने के लिए), अपने कीबोर्ड पर CTRL+c दर्ज करें
python3 /path/to/[YOUR-PYTHON-FILE].py
```

Apple Macbook Air (M1) को होस्ट डिवाइस के रूप में उपयोग करने पर इन्फरेंस गति (मिलीसेकंड में) औसतन लगभग 15 ms, या 66 FPS रही। ***नोट**: OAK के साथ उपयोग किए गए होस्ट डिवाइस का FPS पर बहुत बड़ा प्रभाव पड़ेगा। अपना सिस्टम बनाते समय इसे ध्यान में रखें।*

#### समस्या निवारण

यदि आपको अपना OAK डिवाइस सेट करने में समस्याएँ आ रही हैं, तो Luxonis के इंस्टॉलेशन निर्देश देखें और सुनिश्चित करें कि आप पर RGB उदाहरण सफलतापूर्वक चला सकते हैं [Luxonis स्थापना](https://docs.luxonis.com/en/latest/#demo-script). आप सहायता के लिए [Roboflow फ़ोरम](https://discuss.roboflow.com/).

### यह भी देखें

* [स्टेप-बाय-स्टेप Luxonis OAK सेटअप गाइड](https://blog.roboflow.com/opencv-ai-kit-deployment/)
* [M1 Chip का उपयोग करते समय स्थापना समस्या · Issue #299 · luxonis/depthai · GitHub](https://github.com/luxonis/depthai/issues/299) (depthai SDK)
