> 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/workflows/hi/developer-guide/developer-guide/kinds/qr-code-detection.md).

# qrcodedetection प्रकार

QR कोड पहचान के साथ पूर्वानुमान

## डेटा निरूपण

{% hint style="warning" %}
**डेटा निरूपण**

इस प्रकार की आंतरिक और बाह्य निरूपण अलग-अलग होता है। **बाह्य** निरूपण आपके वर्कफ़्लो के साथ एकीकरण के लिए प्रासंगिक है, जबकि **आंतरिक** यह एक कार्यान्वयन विवरण है जो Workflows blocks के विकास में उपयोगी है।
{% endhint %}

### बाह्य

बाह्य डेटा निरूपण Workflows क्लाइंट्स के लिए प्रासंगिक है - यह तय करता है कि डेटा का इनपुट और आउटपुट प्रारूप क्या होगा।

प्रकार: `dict`

### आंतरिक

आंतरिक डेटा निरूपण Workflows ब्लॉक्स के निर्माताओं के लिए प्रासंगिक है - यह वह प्रकार है जिसे Execution Engine रनटाइम में उस ब्लॉक को प्रदान करेगा जो इस प्रकार के इनपुट को उपभोग करता है।

प्रकार: `sv.Detections`

## विवरण

यह प्रकार QR कोड के स्थान और उनके द्वारा प्रदान किए गए डेटा से संबंधित पूर्वानुमानों के बैच का प्रतिनिधित्व करता है।

उदाहरण:

```
sv.Detections(
    xyxy=array([
       [        865,       153.5,        1189,       422.5],
       [      192.5,        77.5,       995.5,       722.5],
       [        194,          82,         996,         726],
       [        460,         333,         704,         389]]
    ), 
    mask=None, 
    confidence=array([    1.0, 1.0, 1.0, 1.0]), 
    class_id=array([2, 7, 2, 0]), 
    tracker_id=None, 
    data={
        'class_name': array(['qr_code', 'qr_code', 'qr_code', 'qr_code'], dtype='<U13')
        'detection_id': array([
            '51dfa8d5-261c-4dcb-ab30-9aafe9b52379', 'c0c684d1-1e30-4880-aedd-29e67e417264'
            '8cfc543b-9cfe-493b-b5ad-77afed7bee83', 'c0c684d1-1e30-4880-aedd-38e67e441454'
        ], dtype='<U36'),
        'parent_id': array(['image.[0]', 'image.[0]', 'image.[0]', 'image.[0]'], dtype='<U9'),
        'image_dimensions': array([[425, 640], [425, 640], [425, 640], [425, 640]]),
        'inference_id': array([
            '51dfa8d5-261c-4dcb-ab30-9aafe9b52379', 'c0c684d1-1e30-4880-aedd-29e67e417264'
            '8cfc543b-9cfe-493b-b5ad-77afed7bee83', 'c0c684d1-1e30-4880-aedd-38e67e441454'
        ], dtype='<U36'),
        'prediction_type': array([
            'qrcode-detection', 'qrcode-detection', 
            'qrcode-detection', 'qrcode-detection'
        ], dtype='<U16'),
        'root_parent_id': array(['image.[0]', 'image.[0]', 'image.[0]', 'image.[0]'], dtype='<U9'),
        'root_parent_coordinates': array([[0, 0], [0, 0], [0, 0], [0, 0]]),
        'root_parent_dimensions': array([[425, 640], [425, 640], [425, 640], [425, 640]]),
        'parent_coordinates': array([[0, 0], [0, 0], [0, 0], [0, 0]]),
        'parent_dimensions': array([[425, 640], [425, 640], [425, 640], [425, 640]]),
        'scaling_relative_to_parent': array([1, 1, 1, 1]),
        'scaling_relative_to_root_parent': array([1, 1, 1, 1]),
        'data': np.array(['qr-code-1-data', 'qr-code-2-data', 'qr-code-3-data', 'qr-code-4-data'])
    }
)
```

जैसा कि आप देख सकते हैं, हमने द्वारा बनाए रखे गए पूर्वानुमानों के लिए मानक मेटाडेटा सेट का विस्तार किया है `supervision`. यह मेटाडेटा जोड़ना `roboflow_core` plugin.

मेटाडेटा का डिज़ाइन उपयुक्त नहीं है (क्योंकि पूरे चित्र से संबंधित मेटाडेटा सभी बाउंडिंग बॉक्सों में दोहराया जाता है और खाली पूर्वानुमानों के लिए मेटाडेटा सहेजने का कोई तरीका नहीं है)। हमारे पास है [GH issue](https://github.com/roboflow/inference/issues/567) इस समस्या के बारे में संवाद करने के लिए।

**अतिरिक्त फ़ील्ड्स का विवरण:**

* `detection_id` - प्रत्येक डिटेक्शन के लिए अद्वितीय पहचानकर्ता, जिसका उपयोग तब किया जाएगा जब विशिष्ट डिटेक्शन के आधार पर निर्भर तत्व बनाए जाते हैं (उदाहरण: Dynamic Crop इस मान को नई छवि के लिए parent id के रूप में लेता है)
* `parent_id` - उस छवि का पहचानकर्ता जिसने पूर्वानुमान उत्पन्न किया (से प्राप्त किया जाना है `WorkflowImageData` object)
* `image_dimensions` - उस छवि के आयाम जो पूर्वानुमान का आधार थे - प्रारूप: `(ऊँचाई, चौड़ाई)`
* `inference_id` - inference अनुरोध का पहचानकर्ता (वैकल्पिक, Roboflow मॉडलों के लिए प्रासंगिक)
* `पूर्वानुमान_प्रकार` - पूर्वानुमान का प्रकार
* `root_parent_id` - प्राथमिक Workflow इनपुट का पहचानकर्ता जो downstream पूर्वानुमान के लिए जिम्मेदार था (से प्राप्त किया जाना है `WorkflowImageData` object) - आमतौर पर Workflow इनपुट प्लेसहोल्डर का पहचानकर्ता
* `root_parent_coordinates` - मूल इनपुट के संदर्भ में ऑफ़सेट - प्रारूप (`offset_x`, `offset_y`)
* `root_parent_dimensions` - मूल इनपुट छवि के आयाम `(ऊँचाई, चौड़ाई)`
* `parent_coordinates` - parent के संदर्भ में ऑफ़सेट - प्रारूप (`offset_x`, `offset_y`)
* `parent_dimensions` - parent छवि के आयाम `(ऊँचाई, चौड़ाई)`
* `scaling_relative_to_parent` - parent छवि के संबंध में स्केलिंग गुणक
* `scaling_relative_to_root_parent` - मूल इनपुट छवि के संबंध में स्केलिंग गुणक
* `डेटा` - निकाला गया QR कोड

**सीरीयलाइज़ेशन:** API के पीछे का Execution Engine, जैसे ही इस प्रकार का selector Workflow output के रूप में घोषित किया जाता है, अंतर्निहित डेटा को सीरीयलाइज़ करेगा - सीरीयलाइज़ेशन इस प्रकार किया जाएगा कि `sv.Detections.from_inference(...)` आउटपुट को डिकोड कर सके। इकाई विवरण: [ObjectDetectionInferenceResponse](https://detect.roboflow.com/docs)
