أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلىمستندات Apigee X. info
الإصدار: 2.0.1
يمكنك التعرّف على المحتوى والنص في الصور باستخدام نماذج تعلُّم الآلة.
يوفر هذا المحتوى مرجعًا لإعداد هذه الإضافة واستخدامها. قبل استخدام هذه الإضافة من خلال خادم وكيل لواجهة برمجة التطبيقات، عليك تنفيذ ما يلي:
تفعيل Cloud Vision API لحساب الخدمة
إذا كنت ستستخدم Cloud Storage كمصدر لصورك، عليك أيضًا منح هذه الإضافة إذن الوصول إلى Cloud Storage كما هو موضّح في مرجع إضافة Google Cloud Storage.
عندما يكون لديك حساب خدمة لديه إذن الوصول إلى Cloud Vision (وCloud Storage إذا كنت تستخدمه)، استخدِم Google Cloud Console لإنشاء مفتاح لحساب الخدمة.
استخدِم محتوى ملف JSON للمفتاح الناتج عند إضافة الإضافة وضبطها باستخدام مرجع الإعدادات.
لمحة عن Cloud Vision
تستخدم Google Cloud Vision API نماذج تعلُّم الآلة لتحليل الصور. يمكنك تدريب نموذج لاستخدامه في واجهة برمجة التطبيقات أو استخدام النموذج المضمّن.
باستخدام النموذج المضمّن، تصنّف Cloud Vision الصور في فئات مثل "ناطحة سحاب" أو "قارب شراعي" أو "أسد" أو "برج إيفل". وتتعرّف على الكائنات والوجوه والشعارات والمعالم داخل الصور، وتحدّد موقع الكلمات الواردة فيها.
نماذج
توضّح الأمثلة التالية كيفية إعداد دعم إجراءات إضافة Cloud Vision باستخدام سياسة ExtensionCallout.
التعرّف على التصنيفات
في المثال التالي، يحصل الإجراء 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>
تستخدم سياسة Assign Message التالية قيمة المتغيّر الذي يخزّن ردّ الإضافة لتعيين حمولة الردّ.
<?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>
تستخدم سياسة Assign Message التالية قيمة المتغيّر الذي يخزّن ردّ الإضافة لتعيين حمولة الردّ.
<?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.
معلَمات الطلب
| المَعلمة | الوصف | النوع | تلقائي | مطلوب |
|---|---|---|---|---|
| image_uri | مصدر الصورة يمكن أن يكون هذا المصدر من الإنترنت أو Google Cloud Storage (التنسيق: gs://bucketname/filename). إذا كان المصدر هو Google Cloud Storage، يجب أن يكون ملف الصورة علنيًا. |
سلسلة | بلا عُري | نعم. |
البنية
<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
يتعرّف على النص من الصورة المحدّدة ويستخرجه.
معلَمات الطلب
| المَعلمة | الوصف | النوع | تلقائي | مطلوب |
|---|---|---|---|---|
| image_uri | مصدر الصورة يمكن أن يكون هذا المصدر من الإنترنت أو Google Cloud Storage (التنسيق: gs://bucketname/filename). إذا كان المصدر هو Google Cloud Storage، يجب أن يكون ملف الصورة علنيًا. |
سلسلة | بلا عُري | نعم. |
البنية
<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 |
قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه | لا ينطبق | متوافق |