एआई विज़न सेंसर#

परिचय#

aivision क्लास का उपयोग V5 AI विज़न सेंसर से डेटा को नियंत्रित करने और एक्सेस करने के लिए किया जाता है। AI विज़न सेंसर निम्नलिखित का पता लगा सकता है:

  • एआई वर्गीकरण (जैसे गेम ऑब्जेक्ट)

  • अप्रैलटैग आईडी

  • कस्टम रंग हस्ताक्षर

  • कस्टम रंग कोड

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

यह सेंसर VEXcode में मौजूद AI विज़न यूटिलिटी में चुने गए ऑनबोर्ड AI मॉडल का उपयोग करके दृश्य जानकारी को प्रोसेस करता है। चुना गया मॉडल यह निर्धारित करता है कि सेंसर किन AI वर्गीकरणों का पता लगा सकता है। VS Code का उपयोग करते समय, AI मॉडल को आपके प्रोग्राम में उपयोग करने से पहले VEXcode में कॉन्फ़िगर करना आवश्यक है। takeSnapshot फ़ंक्शन को कॉल करने के बाद, पता लगाए गए ऑब्जेक्ट objects ऐरे के माध्यम से वापस किए जाते हैं।

क्लास कंस्ट्रक्टर#

aivision(
  int32_t index,
  Args&... sigs );

पैरामीटर#

पैरामीटर

प्रकार

विवरण

index

int32_t

स्मार्ट पोर्ट जिससे एआई विज़न सेंसर जुड़ा हुआ है, उसे PORTxके रूप में लिखा जाता है, जहां x पोर्ट संख्या है (उदाहरण के लिए, PORT1)।

sigs

colordesc, codedesc, or AI constants

सेंसर के साथ पंजीकृत करने के लिए एक या अधिक पहचान प्रकार:

  • aivision::ALL_AIOBJS — सभी AI वर्गीकरण
  • aivision::ALL_TAGS — सभी अप्रैलटैग आईडी
  • aivision::colordesc — कस्टम रंग हस्ताक्षर
  • aivision::codedesc — कस्टम रंग कोड

एआई मॉडल और वर्गीकरण#

एआई विज़न सेंसर विशिष्ट एआई वर्गीकरणों के आधार पर विभिन्न वस्तुओं का पता लगा सकता है। डिवाइस विंडो में एआई विज़न सेंसर को कॉन्फ़िगर करते समय चयनित एआई वर्गीकरण मॉडल के आधार पर, विभिन्न वस्तुओं का पता लगाया जा सकता है। वर्तमान में उपलब्ध मॉडल हैं:

कक्षा के तत्व

आईडी नंबर

एआई वर्गीकरण

0

blueBall

1

greenBall

2

redBall

3

blueRing

4

greenRing

5

redRing

6

blueCube

7

greenCube

8

redCube

VEX V5 रोबोटिक्स प्रतियोगिता में भारी दांव

आईडी नंबर

एआई वर्गीकरण

0

mobileGoal

1

redRing

2

blueRing

VEX V5 रोबोटिक्स प्रतियोगिता स्थगित

आईडी नंबर

एआई वर्गीकरण

0

blueBlock

1

redBlock

VEX V5 रोबोटिक्स प्रतियोगिता ओवरराइड

आईडी नंबर

एआई वर्गीकरण

0

redBluePin

1

blueYellowPin

2

redYellowPin

3

yellowPin

4

cup

उदाहरण#

// Create Color Signatures
aivision::colordesc AIVision1__greenBox(
    1,      // index
    85,     // red
    149,    // green
    46,     // blue
    23,     // hangle
    0.23 ); // hdsat

aivision::colordesc AIVision1__blueBox(
    2,      // index
    77,     // red
    135,    // green
    125,    // blue
    27,     // hangle
    0.29 ); // hdsat

// Create a Color Code from two color signatures
aivision::codedesc AIVision1__greenBlue(
    1,                    // code index
    AIVision1__greenBox,  // first color signature
    AIVision1__blueBox ); // second color signature

// Create the AI Vision Sensor instance
aivision AIVision1(
    PORT11,                  // Smart Port
    AIVision1__greenBlue,    // color code
    aivision::ALL_AIOBJS );  // enable AI Classifications

सदस्य कार्य#

aivision क्लास में निम्नलिखित सदस्य फ़ंक्शन शामिल हैं:

  • takeSnapshot — एक विशिष्ट रंग हस्ताक्षर, रंग कोड, एआई वर्गीकरण समूह, या अप्रैलटैग आईडी समूह के लिए डेटा कैप्चर करता है।

  • installed — यह बताता है कि एआई विज़न सेंसर वी5 ब्रेन से जुड़ा है या नहीं।

takeSnapshot को कॉल करने के बाद पता लगाए गए ऑब्जेक्ट डेटा तक पहुँचने के लिए, उपलब्ध Properties का उपयोग करें।

किसी भी aivision सदस्य फ़ंक्शन को कॉल करने से पहले, एक aivision इंस्टेंस बनाना होगा, जैसा कि नीचे दिखाया गया है:

/* This constructor is required when using VS Code.
AI Vision Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */


// Create Color Signatures
aivision::colordesc AIVision1__greenBox(
    1,      // index
    85,     // red
    149,    // green
    46,     // blue
    23,     // hangle
    0.23 ); // hdsat

aivision::colordesc AIVision1__blueBox(
    2,      // index
    77,     // red
    135,    // green
    125,    // blue
    27,     // hangle
    0.29 ); // hdsat

// Create a Color Code from two color signatures
aivision::codedesc AIVision1__greenBlue(
    1,                    // code index
    AIVision1__greenBox,  // first color signature
    AIVision1__blueBox ); // second color signature

// Create the AI Vision Sensor instance
aivision AIVision1(
    PORT1,                   // Smart Port
    AIVision1__greenBlue,    // color code
    aivision::ALL_AIOBJS );  // enable AI Classifications

takeSnapshot#

एआई विज़न सेंसर से एक छवि कैप्चर करता है, चयनित एआई मॉडल या कॉन्फ़िगर किए गए रंग संकेतों का उपयोग करके इसे संसाधित करता है, और objects ऐरे को अपडेट करता है।

Each call refreshes the objects array with the most recent detection results. Objects are ordered from largest to smallest (by width), beginning at index 0. If no objects are detected objectCount will be 0 and objects[i].exists will be false.

1 — ऑब्जेक्ट आईडी और ऑब्जेक्ट प्रकार का उपयोग करके स्नैपशॉट लेता है।

int32_t takeSnapshot(
  uint32_t id,
  objectType type,
  uint32_t count );

2 — कलर सिग्नेचर का उपयोग करके स्नैपशॉट लेता है।

int32_t takeSnapshot(
  const colordesc &desc,
  int32_t count = 8 );

3 — कलर कोड का उपयोग करके स्नैपशॉट लेता है।

int32_t takeSnapshot(
  const codedesc &desc,
  int32_t count = 8 );

4 — AprilTag ID का उपयोग करके स्नैपशॉट लेता है।

int32_t takeSnapshot(
  const tagdesc &desc,
  int32_t count = 8 );

5 — एआई वर्गीकरण का उपयोग करके स्नैपशॉट लेता है।

int32_t takeSnapshot(
  const aiobjdesc &desc,
  int32_t count = 8 );

6 — ऑब्जेक्ट डिस्क्रिप्टर का उपयोग करके स्नैपशॉट लेता है।

int32_t takeSnapshot(
  const objdesc &desc,
  int32_t count = 8 );

Parameters

पैरामीटर

प्रकार

विवरण

id

uint32_t

(id, type, count) फ़ंक्शन का उपयोग करते समय पता लगाने के लिए ऑब्जेक्ट का पहचानकर्ता। अर्थ typeपर निर्भर करता है:

  • colorObject — रंग विवरण सूचकांक (1–7)
  • codeObject — रंग कोड सूचकांक (1–8)
  • modelObject — एआई वर्गीकरण आईडी
  • tagObject — अप्रैलटैग आईडी (0–36)

नोट: VEXcode में, एआई वर्गीकरण नामों (जैसे blueBall) का सीधे उपयोग किया जा सकता है। VS कोड में, संख्यात्मक आईडी का उपयोग किया जाना चाहिए।

type

objectType

ऑब्जेक्ट की श्रेणी निर्दिष्ट करता है जो idसे जुड़ी है:

  • objectType::tagObject — अप्रैलटैग आईडी का पता लगाता है
  • objectType::colorObject — रंग हस्ताक्षर का पता लगाता है
  • objectType::codeObject — रंग कोड का पता लगाता है
  • objectType::modelObject — एआई वर्गीकरण का पता लगाता है
  • objectType::allObject — सेंसर द्वारा पहचाने जा सकने वाली हर चीज़ का पता लगाता है

desc

colordesc &, codedesc &, tagdesc &, aiobjdesc &, or objdesc &

किसी विशिष्ट ऑब्जेक्ट का पता लगाने के लिए उपयोग किया जाने वाला डिस्क्रिप्टर। इसे सीधे takeSnapshotपर पास किया जाता है, उदाहरण के लिए:

  • AIVision1.takeSnapshot(AIVision1__greenBox);
  • AIVision1.takeSnapshot(aivision::ALL_AIOBJS);
पूर्वनिर्धारित वर्णनात्मक स्थिरांक:
  • aivision::ALL_TAGS — सभी अप्रैलटैग आईडी का पता लगाता है
  • aivision::ALL_COLORS — सभी कॉन्फ़िगर किए गए रंग हस्ताक्षर का पता लगाता है
  • aivision::ALL_CODES — सभी कॉन्फ़िगर किए गए रंग कोड का पता लगाता है
  • aivision::ALL_AIOBJS — सभी एआई वर्गीकरण का पता लगाता है
  • aivision::ALL_OBJECTS — सेंसर द्वारा पहचाने जा सकने वाली हर चीज़ का पता लगाता है

count

uint32_t / int32_t

स्नैपशॉट से संग्रहीत की जा सकने वाली वस्तुओं की अधिकतम संख्या। डिफ़ॉल्ट रूप से 8 है।

वापसी मान

यह निर्दिष्ट हस्ताक्षर या पहचान प्रकार से मेल खाने वाली पहचानी गई वस्तुओं की संख्या को दर्शाने वाला int32_t लौटाता है।

नोट्स

  • ऑब्जेक्ट डेटा तक पहुंचने से पहले एआई विजन सेंसर को एक स्नैपशॉट लेना होगा।

  • प्रत्येक कॉल पर objects ऐरे को रीफ्रेश किया जाता है।

  • जब count निर्दिष्ट किया जाता है, तो केवल सबसे बड़ी पहचानी गई वस्तुएं (निर्दिष्ट मात्रा तक) ही संग्रहीत की जाती हैं।

एआई वर्गीकरण वीईएक्सकोड में एआई विजन यूटिलिटी में चयनित मॉडल पर निर्भर करता है।

उदाहरण

// Move forward if an object is detected
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);
  if (AIVision1.objects[0].exists) {
    Drivetrain.driveFor(forward, 50, mm);
  }
  wait(50, msec);
}

installed#

यह बताता है कि एआई विज़न सेंसर वी5 ब्रेन से जुड़ा है या नहीं।

उपलब्ध फ़ंक्शन

bool installed();

पैरामीटर

यह फ़ंक्शन कोई पैरामीटर नहीं लेता है।

वापसी मान

यह एक बूलियन मान लौटाता है जो दर्शाता है कि एआई विज़न सेंसर कनेक्टेड है या नहीं:

  • true — एआई विज़न सेंसर कनेक्टेड है।

  • false — एआई विज़न सेंसर कनेक्टेड नहीं है।

// Display a message if the AI Vision Sensor is connected
if (AIVision1.installed()){
  Brain.Screen.print("Installed!");
}

गुण#

takeSnapshot को कॉल करने से एआई विज़न सेंसर के डिटेक्शन परिणाम अपडेट होते हैं। प्रत्येक स्नैपशॉट objects ऐरे को रीफ़्रेश करता है, जिसमें अनुरोधित एआई वर्गीकरण, रंग हस्ताक्षर, रंग कोड या अप्रैलटैग आईडी के लिए पता लगाए गए ऑब्जेक्ट होते हैं।

एआई विज़न डेटा को AIVisionSensor.objects[index]में संग्रहीत वस्तुओं के गुणों के माध्यम से एक्सेस किया जाता है, जहां index 0 से शुरू होता है।

वस्तुओं को क्षेत्रफल के अनुसार सबसे बड़ी से सबसे छोटी के क्रम में व्यवस्थित किया गया है।

एआई विज़न सेंसर की छवि का रिज़ॉल्यूशन 320 × 240 पिक्सेलहै। वस्तु की स्थिति और आकार के मान सेंसर के वर्तमान दृश्य के सापेक्ष पिक्सेल इकाइयों में बताए जाते हैं।

निम्नलिखित प्रॉपर्टीज़ उपलब्ध हैं:

  • objectCount — सबसे हालिया स्नैपशॉट से पता लगाए गए ऑब्जेक्टों की संख्या लौटाता है।

  • largestObject — सबसे हालिया स्नैपशॉट से सबसे बड़ी पता लगाई गई वस्तु का चयन करता है।

  • objects — पता लगाए गए ऑब्जेक्ट युक्त सरणी takeSnapshot द्वारा अपडेट की गई।

  • .exists — क्या ऑब्जेक्ट प्रविष्टि में वैध डेटा है।

  • .width — पिक्सेल में पता लगाई गई वस्तु की चौड़ाई।

  • .height — पिक्सेल में पता लगाई गई वस्तु की ऊँचाई।

  • .centerX — पिक्सेल में वस्तु के केंद्र की X स्थिति।

  • .centerY — पिक्सेल में वस्तु के केंद्र की Y स्थिति।

  • .originX — पिक्सेल में वस्तु के शीर्ष-बाएँ कोने की X स्थिति।

  • .originY — पिक्सेल में वस्तु के शीर्ष-बाएँ कोने की Y स्थिति।

  • .angle — डिग्री में रंग कोड या अप्रैलटैग आईडी का अभिविन्यास।

  • .id — वर्गीकरण आईडी या अप्रैलटैग आईडी.

  • .score — एआई वर्गीकरण के लिए आत्मविश्वास स्कोर।

objectCount#

objectCount objects सरणी के अंदर वस्तुओं की संख्या को पूर्णांक के रूप में लौटाता है।

Syntax
AIVisionSensor.objectCount

Components

अवयव

विवरण

AIVisionSensor

आपके एआई विज़न सेंसर इंस्टेंस का नाम।

उदाहरण

// Display the number of detected objects
while (true) {
  Brain.Screen.setCursor(1, 1);
  Brain.Screen.clearLine(1);
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);
  if (AIVision1.objects[0].exists) {
    Brain.Screen.print("%d", AIVision1.objectCount);
  }
  wait(50, msec);
}

largestObject#

largestObject objects सरणी से सबसे बड़ी पहचानी गई वस्तु को पुनः प्राप्त करता है।

इस विधि का उपयोग बिना इंडेक्स निर्दिष्ट किए, objects ऑब्जेक्ट में से हमेशा सबसे बड़ा ऑब्जेक्ट प्राप्त करने के लिए किया जा सकता है।

Syntax
AIVisionSensor.largestObject

Components

अवयव

विवरण

AIVisionSensor

आपके एआई विज़न सेंसर इंस्टेंस का नाम।

उदाहरण

// Display the closest AprilTag ID
while (true) {
  Brain.Screen.setCursor(1, 1);
  Brain.Screen.clearLine(1);
  AIVision1.takeSnapshot(aivision::ALL_TAGS);
  if (AIVision1.objects[0].exists) {
    Brain.Screen.print("%d", AIVision1.largestObject.id);
  }
  wait(50, msec);
}

objects#

objects पता लगाए गए ऑब्जेक्ट गुणों का एक सरणी लौटाता है। व्यक्तिगत ऑब्जेक्ट के विशिष्ट प्रॉपर्टी मानों तक पहुँचने के लिए सरणी का उपयोग करें।

takeSnapshot का उपयोग करने के बाद objects सरणी में संग्रहीत प्रत्येक ऑब्जेक्ट के साथ दस गुण शामिल होते हैं।

id , score को छोड़कर सभी प्रॉपर्टी मान, AI विज़न सेंसर के दृश्य में takeSnapshot लेते समय, पता लगाए गए ऑब्जेक्ट की स्थिति और आकार का वर्णन करते हैं। ये मान सेंसर के 320 x 240 पिक्सेल रिज़ॉल्यूशन के आधार पर पिक्सेल में मापे जाते हैं।

Syntax
AIVisionSensor.objects[index].property

Components

अवयव

विवरण

AIVisionSensor

आपके एआई विज़न सेंसर इंस्टेंस का नाम।

index

ऐरे में ऑब्जेक्ट इंडेक्स। इंडेक्स 0 से शुरू होता है।

property

उपलब्ध वस्तु गुणधर्मों में से एक।

मौजूद है#

.exists यह बताता है कि क्या निर्दिष्ट ऑब्जेक्ट इंडेक्स में एक वैध पता लगाया गया ऑब्जेक्ट है।

पहुँच

SensorName.objects[index].exists

वापसी मान

यह एक बूलियन मान लौटाता है जो यह दर्शाता है कि निर्दिष्ट ऑब्जेक्ट इंडेक्स में कोई वैध ऑब्जेक्ट मौजूद है या नहीं:

  • true — A valid object exists at the specified index.
  • false — No object exists at the specified index.

उदाहरण

// Move forward if an object is detected
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);
  if (AIVision1.objects[0].exists) {
    Drivetrain.driveFor(forward, 50, mm);
  }
  wait(50, msec);
}

।चौड़ाई#

.width पता लगाए गए ऑब्जेक्ट की चौड़ाई लौटाता है।

पहुँच

SensorName.objects[index].width

वापसी मान

यह int16_t लौटाता है जो पिक्सेल में पता लगाए गए ऑब्जेक्ट की चौड़ाई को दर्शाता है। मान 1 से 320 तक होता है।

उदाहरण

// Approach an object until it's at least 100 pixels wide
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);

  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].width < 100) {
      Drivetrain.drive(forward);
    } else {
      Drivetrain.stop();
    }
  } else {
    Drivetrain.stop();
  }
  wait(50, msec);
}

।ऊंचाई#

.height पता लगाए गए ऑब्जेक्ट की ऊंचाई लौटाता है।

पहुँच

SensorName.objects[index].height

वापसी मान

यह int16_t लौटाता है जो पिक्सेल में पता लगाए गए ऑब्जेक्ट की ऊंचाई को दर्शाता है। मान 1 से 240 तक होता है।

उदाहरण

// Approach an object until it's at least 90 pixels tall
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);

  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].height < 90) {
      Drivetrain.drive(forward);
    } else {
      Drivetrain.stop();
    }
  } else {
    Drivetrain.stop();
  }
  wait(50, msec);
}

.केंद्रएक्स#

.centerX पता लगाए गए ऑब्जेक्ट के केंद्र का x-निर्देशांक लौटाता है।

पहुँच

SensorName.objects[index].centerX

वापसी मान

यह ऑब्जेक्ट के केंद्र के x-निर्देशांक को पिक्सेल में दर्शाने वाला int16_t लौटाता है। मान 0 से 320 तक होता है।

उदाहरण

// Turn until an object is directly in front of the sensor
Drivetrain.setTurnVelocity(10, percent);
Drivetrain.turn(right);
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);

  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].centerX > 140 && AIVision1.objects[0].centerX < 180) {
      Drivetrain.stop();
    }
  }
  wait(10, msec);
}

.केंद्रवाई#

.centerY पता लगाए गए ऑब्जेक्ट के केंद्र का y-निर्देशांक लौटाता है।

पहुँच

SensorName.objects[index].centerY

वापसी मान

यह ऑब्जेक्ट के केंद्र के y-निर्देशांक को पिक्सेल में दर्शाने वाला int16_t लौटाता है। मान 0 से 240 तक होता है।

उदाहरण

// Approach an object until it's close to the sensor
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);

  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].centerY < 150) {
      Drivetrain.drive(forward);
    } else {
      Drivetrain.stop();
    }
  } else {
    Drivetrain.stop();
  }
  wait(50, msec);
}

।कोण#

.angle पता लगाए गए कलर कोड या अप्रैलटैग आईडी का ओरिएंटेशन लौटाता है।

पहुँच

SensorName.objects[index].angle

वापसी मान

यह मान float का मान लौटाता है, जो पता लगाए गए कलर कोड या अप्रैलटैग आईडी के घूर्णन को डिग्री में दर्शाता है। मान 0 359.9

उदाहरण

// Turn left or right depending on how a configured
// Color Code is rotated
while (true) {
  AIVision1.takeSnapshot(AIVision1__redBlue);
  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].angle > 50 && AIVision1.objects[0].angle < 100) {
      Drivetrain.turn(right);
    }
    else if (AIVision1.objects[0].angle > 270 && AIVision1.objects[0].angle < 330) {
      Drivetrain.turn(left);
    }
    else {
      Drivetrain.stop();
    }
  } else {
    Drivetrain.stop();
  }
  wait(50, msec);
}

.originX#

.originX पता लगाए गए ऑब्जेक्ट के बाउंडिंग बॉक्स के ऊपरी-बाएँ कोने का x-निर्देशांक लौटाता है।

पहुँच

SensorName.objects[index].originX

वापसी मान

यह ऑब्जेक्ट के बाउंडिंग बॉक्स ओरिजिन के x-निर्देशांक को पिक्सेल में दर्शाने वाला int16_t लौटाता है। मान 0 से 320 तक होता है।

उदाहरण

// Display if an object is to the left or the right
while (true) {
  Brain.Screen.clearScreen();
  Brain.Screen.setCursor(1, 1);
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);
  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].originX < 120) {
      Brain.Screen.print("To the left!");
    } else {
      Brain.Screen.print("To the right!");
    }
  } else {
    Brain.Screen.print("No objects");
  }
  wait(100, msec);
}

.originY#

.originY पता लगाए गए ऑब्जेक्ट के बाउंडिंग बॉक्स के ऊपरी-बाएँ कोने का y-निर्देशांक लौटाता है।

पहुँच

SensorName.objects[index].originY

वापसी मान

यह ऑब्जेक्ट के बाउंडिंग बॉक्स ओरिजिन के y-निर्देशांक को पिक्सेल में दर्शाने वाला int16_t लौटाता है। मान 0 से 240 तक होता है।

उदाहरण

// Display if an object is close or far
while (true) {
  Brain.Screen.clearScreen();
  Brain.Screen.setCursor(1, 1);
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);
  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].originY < 110) {
      Brain.Screen.print("Close");
    } else {
      Brain.Screen.print("Far");
    }
  }
  wait(100, msec);
}

।पहचान#

.id पता लगाया गया अप्रैलटैग आईडी या एआई वर्गीकरण आईडी लौटाता है।

पहुँच

SensorName.objects[index].id

वापसी मान

यह int32_t लौटाता है जो पता लगाए गए ऑब्जेक्ट की आईडी को दर्शाता है:

उदाहरण

// Move forward when AprilTag ID 1 is detected
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_TAGS);
  if (AIVision1.objects[0].exists) {
    if (AIVision1.objects[0].id == 1) {
      Drivetrain.drive(forward);
    }
  } else {
    Drivetrain.stop();
  }
  wait(50, msec);
}

।अंक#

.score पता लगाए गए एआई वर्गीकरण का आत्मविश्वास स्कोर लौटाता है।

पहुँच

SensorName.objects[index].score

वापसी मान

यह int16_t लौटाता है जो 1 और 100 के बीच पता लगाए गए एआई वर्गीकरण के आत्मविश्वास स्कोर को दर्शाता है।

कम स्कोर का मतलब है कि सेंसर को पता लगाए गए ऑब्जेक्ट के बारे में कम भरोसा है, जबकि उच्च स्कोर का मतलब है कि सेंसर को अधिक भरोसा है।

उदाहरण

// Display if a score is confident
while (true) {
  AIVision1.takeSnapshot(aivision::ALL_AIOBJS);

  if (AIVision1.objects[0].exists) {
    Brain.Screen.clearScreen();
    Brain.Screen.setCursor(1, 1);

    if (AIVision1.objects[0].score > 95) {
      Brain.Screen.print("Confident");
    } else {
      Brain.Screen.print("Not confident");
    }
  }
  wait(50, msec);
}