أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
الإصدار: 2.0.2
استكشاف المحتوى والنص في الصور باستخدام نماذج تعلُّم الآلة
يوفّر هذا المحتوى مرجعًا لإعداد هذه الإضافة واستخدامها. قبل استخدام هذه الإضافة من خادم وكيل لواجهة برمجة التطبيقات، عليك إجراء ما يلي:
فعِّل 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>
تستخدم سياسة تحديد الرسالة التالية قيمة المتغيّر الذي يخزّن استجابة الإضافة لتحديد حمولة الاستجابة.
<?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.
مَعلمات الطلب
| المَعلمة | الوصف | النوع | تلقائي | مطلوب |
|---|---|---|---|---|
| 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 للنص الذي تم رصده. لمزيد من المعلومات، يُرجى الاطّلاع على التعرّف على التصنيفات.
مرجع الإعدادات
استخدِم ما يلي عند ضبط هذه الإضافة ونشرها لاستخدامها في خوادم API الوكيلة. للاطّلاع على خطوات إعداد إضافة باستخدام وحدة تحكّم Apigee، يُرجى الرجوع إلى إضافة إضافة وإعدادها.
خصائص الإضافة الشائعة
السمات التالية متاحة لكل إضافة.
| الموقع | الوصف | تلقائي | عنصر مطلوب |
|---|---|---|---|
name |
الاسم الذي تُعطِه هذه الإضافة من الإضافات. | لا ينطبق | متوافق |
packageName |
اسم حزمة الإضافة كما هو مُوضَّح من Apigee Edge. | لا ينطبق | متوافق |
version |
رقم إصدار حزمة الإضافة التي تجري عملية إعداد الإضافة منها. | لا ينطبق | متوافق |
configuration |
قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه | لا ينطبق | متوافق |