Google Cloud विज़न एक्सटेंशन

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

वर्शन: 1.4.1

मशीन लर्निंग मॉडल का इस्तेमाल करके, इमेज में मौजूद कॉन्टेंट और टेक्स्ट को खोजें.

इस कॉन्टेंट में, इस एक्सटेंशन को कॉन्फ़िगर करने और इसका इस्तेमाल करने का रेफ़रंस दिया गया है. किसी API प्रॉक्सी से इस एक्सटेंशन का उपयोग करने से पहले, आपको:

  1. अपने सेवा खाते के लिए, Cloud Vision API चालू करें.

  2. अगर इमेज के सोर्स के तौर पर Cloud Storage का इस्तेमाल किया जाता है, तो आपको इस एक्सटेंशन के लिए भी Cloud Storage का ऐक्सेस देना होगा. इसके बारे में Google Cloud Storage एक्सटेंशन रेफ़रंस में बताया गया है.

  3. अगर आपके पास ऐसा सेवा खाता है जिसमें Cloud Vision (और अगर आप Cloud Storage का इस्तेमाल कर रहे हैं) के लिए अनुमति है, तो सेवा खाते के लिए कुंजी जनरेट करने के लिए GCP कंसोल का इस्तेमाल करें.

  4. कॉन्फ़िगरेशन रेफ़रंस का इस्तेमाल करके, एक्सटेंशन को जोड़ते और कॉन्फ़िगर करते समय, जनरेट हुई कुंजी JSON फ़ाइल के कॉन्टेंट का इस्तेमाल करें.

Cloud Vision के बारे में जानकारी

Google Cloud Vision API, इमेज का विश्लेषण करने के लिए मशीन लर्निंग मॉडल का इस्तेमाल करता है. एपीआई को किसी मॉडल को ट्रेनिंग दें, ताकि वह एपीआई का इस्तेमाल कर सके. इसके अलावा, पहले से मौजूद मॉडल का इस्तेमाल भी किया जा सकता है.

पहले से मौजूद मॉडल का इस्तेमाल करके Cloud Vision, इमेज को "गगनचुंबी", सेलबोट", "शेर" या "आइफ़िल टावर" जैसी कैटगरी में बांटता है. यह इमेज में मौजूद ऑब्जेक्ट, चेहरों, लोगो, और लैंडमार्क की पहचान करता है और इमेज में मौजूद शब्दों की पहचान करता है.

सैंपल

नीचे दिए गए उदाहरणों में, एक्सटेंशन कॉलआउट नीति का इस्तेमाल करके, Cloud Vision एक्सटेंशन की कार्रवाइयों के लिए सहायता कॉन्फ़िगर करने का तरीका बताया गया है.

लेबल का पता लगाएं

यहां दिए गए उदाहरण में, एक्सटेंशन की detectLabels कार्रवाई के तहत, image_uri पर इमेज मिलती है और विश्लेषण के लिए उसे Cloud Vision API को भेजा जाता है. एपीआई इमेज की जांच करेगा और यह तय करेगा कि इमेज के कॉन्टेंट पर कौनसे लेबल लागू होते हैं.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Cloud-Vision-Extension">
    <DisplayName>Cloud Vision Extension</DisplayName>
    <Connector>cloud-vision-extension-example</Connector>
    <Action>detectLabels</Action>
    <Input><![CDATA[
    {
        "image_uri" : "gs://cloud-vision-example/empire-state-building.jpg"
    }
    ]]></Input>
    <Output>vision.labels.retrieved</Output>
</ConnectorCallout>

नीचे दी गई मैसेज असाइन करें नीति, रिस्पॉन्स पेलोड असाइन करने के लिए, एक्सटेंशन के रिस्पॉन्स को स्टोर करने वाले वैरिएबल की वैल्यू का इस्तेमाल करती है.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Image-Labels">
    <DisplayName>Get Image Labels</DisplayName>
    <AssignTo type="response" createNew="false"/>
    <Set>
        <Payload contentType="application/json">{vision.labels.retrieved}</Payload>
    </Set>
</AssignMessage>

अगर किसी शहरी इलाके की इमेज में एक बहुत ऊंची इमारत की इमेज दी गई है, तो आपको इस तरह का जवाब मिल सकता है:

{
  "labels": [
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "/m/0j_s4",
          "locale": "",
          "description": "metropolitan area",
          "score": 0.9868549704551697,
          "confidence": 0,
          "topicality": 0.9868549704551697,
          "boundingPoly": null
      },
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "/m/079cl",
          "locale": "",
          "description": "skyscraper",
          "score": 0.966157853603363,
          "confidence": 0,
          "topicality": 0.966157853603363,
          "boundingPoly": null
      }
  ]
}

टेक्स्ट का पता लगाएं

नीचे दिए गए उदाहरण में, एक्सटेंशन detectText कार्रवाई के तहत, image_uri पर इमेज मिलती है और विश्लेषण के लिए उसे Cloud Vision API को भेजा जाता है. एपीआई, इमेज की जांच करेगा और इमेज में मौजूद टेक्स्ट की पहचान करेगा.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Cloud-Vision-Text">
    <DisplayName>Cloud Vision Text</DisplayName>
    <Connector>cloud-vision-extension-example</Connector>
    <Action>detectText</Action>
    <Input><![CDATA[
    {
        "image_uri" : "gs://cloud-vision-example/parking-signs1.jpg"
    }
    ]]></Input>
    <Output>vision.text.retrieved</Output>
</ConnectorCallout>

नीचे दी गई मैसेज असाइन करें नीति, रिस्पॉन्स पेलोड असाइन करने के लिए, एक्सटेंशन के रिस्पॉन्स को स्टोर करने वाले वैरिएबल की वैल्यू का इस्तेमाल करती है.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Image-Text">
    <DisplayName>Get Image Text</DisplayName>
    <AssignTo type="response" createNew="false"/>
    <Set>
        <Payload contentType="application/json">{vision.text.retrieved}</Payload>
    </Set>
</AssignMessage>

पार्किंग लॉग में साइन वाली इमेज देने पर, आपको इस तरह के जवाब मिल सकते हैं:

{
  "text": [
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "",
          "locale": "en",
          "description": "RESERVED\nVISITORPARKING\nPARKING\nONLY>\n$150 FINE\n",
          "score": 0,
          "confidence": 0,
          "topicality": 0,
          "boundingPoly": {
              "vertices": [
                  {
                      "x": 64,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 218
                  },
                  {
                      "x": 64,
                      "y": 218
                  }
              ]
          }
      },
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "",
          "locale": "",
          "description": "RESERVED",
          "score": 0,
          "confidence": 0,
          "topicality": 0,
          "boundingPoly": {
              "vertices": [
                  {
                      "x": 243,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 84
                  },
                  {
                      "x": 243,
                      "y": 84
                  }
              ]
          }
      }
   ]
}

कार्रवाइयाँ

detectLabels

दी गई इमेज में मौजूद इकाइयों के बारे में जानकारी को पहचानता है और एक्सट्रैक्ट करता है. पहचानी गई इकाइयों की कैटगरी कई कैटगरी में आती है. उदाहरण के लिए, इस कार्रवाई का इस्तेमाल चीज़ों, जगहों, गतिविधियों, जानवरों की प्रजातियों, प्रॉडक्ट वगैरह की पहचान करने के लिए करें.

साथ ही, Cloud Vision API के दस्तावेज़ ज़रूर देखें.

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
image_uri इमेज का सोर्स. यह जानकारी इंटरनेट या Google Cloud Storage (फ़ॉर्मैट: gs://bucketname/filename) से हो सकती है. अगर सोर्स Google Cloud Storage है, तो इमेज फ़ाइल सार्वजनिक होनी चाहिए. String कोई नहीं. हां.

सिंटैक्स

<Input><![CDATA[{
    "image_uri" : "uri-of-image-to-analyze"
}
]]></Input>

उदाहरण

नीचे दिए गए उदाहरण में, एक्सटेंशन की detectLabels कार्रवाई, दी गई इमेज को विश्लेषण के लिए Vision API को भेजती है.

<Input><![CDATA[
{
    "image_uri" : "gs://cloud-vision-example/empire-state-building.jpg"
}
]]></Input>

जवाब

एक ऑब्जेक्ट, जिसमें इमेज में पहचानी गई इकाइयों को दिखाने वाले लेबल की labels कलेक्शन है. ज़्यादा जानकारी के लिए, लेबल का पता लगाएं देखें.

detectText

बताई गई इमेज से टेक्स्ट को पहचानता है और उससे टेक्स्ट निकालता है.

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
image_uri इमेज का सोर्स. यह जानकारी इंटरनेट या Google Cloud Storage (फ़ॉर्मैट: gs://bucketname/filename) से हो सकती है. अगर सोर्स Google Cloud Storage है, तो इमेज फ़ाइल सार्वजनिक होनी चाहिए. String कोई नहीं. हां.

सिंटैक्स

<Input><![CDATA[
{
    "image_uri" : "uri-of-image-to-analyze"
}
]]></Input>

उदाहरण

नीचे दिए गए उदाहरण में, एक्सटेंशन की detectText कार्रवाई, दी गई इमेज को विश्लेषण के लिए Vision API को भेजती है.

<Input><![CDATA[
{
    "image_uri" : "gs://cloud-vision-example/parking-signs1.jpg"
}
]]></Input>

जवाब

एक ऑब्जेक्ट का पता लगाया गया है, जिसमें टेक्स्ट के text कलेक्शन हैं. ज़्यादा जानकारी के लिए, लेबल का पता लगाएं देखें.

कॉन्फ़िगरेशन का रेफ़रंस

इस एक्सटेंशन को एपीआई प्रॉक्सी में इस्तेमाल करने के लिए, कॉन्फ़िगर और डिप्लॉय करते समय, इनका इस्तेमाल करें. Apigee कंसोल का इस्तेमाल करके, एक्सटेंशन को कॉन्फ़िगर करने का तरीका जानने के लिए, एक्सटेंशन जोड़ना और उसे कॉन्फ़िगर करना देखें.

सामान्य एक्सटेंशन प्रॉपर्टी

हर प्रॉपर्टी के लिए नीचे दी गई प्रॉपर्टी मौजूद हैं.

प्रॉपर्टी जानकारी डिफ़ॉल्ट ज़रूरी है
name वह नाम, जिसे आप एक्सटेंशन का यह कॉन्फ़िगरेशन दे रहे हैं. कभी नहीं हां
packageName एक्सटेंशन पैकेज का नाम, जो Apigee Edge से दिया गया है. कभी नहीं हां
version उस एक्सटेंशन पैकेज का वर्शन नंबर जिससे आपको एक्सटेंशन कॉन्फ़िगर करना है. कभी नहीं हां
configuration आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें कभी नहीं हां