التشغيل السريع: تحليل الصور
ابدأ باستخدام واجهة برمجة تطبيقات REST لتحليل الصور أو مكتبات العميل لإعداد برنامج نصي أساسي لوضع علامات على الصور. توفر لك خدمة تحليل الصور خوارزميات الذكاء الاصطناعي لمعالجة الصور وإعادة المعلومات عن ميزاتها المرئية. اتبع هذه الخطوات لتثبيت حزمة للتطبيق الخاص بك وتجربة نموذج التعليمات البرمجية.
استخدم مكتبة العميل لتحليل الصور لـ C# لتحليل صورة لعلامات المحتوى. يحدد التشغيل السريع المُشار إليه أسلوب، AnalyzeImageUrl
، الذي يستخدم عنصر العميل لتحليل صورة بعيدة وطباعة النتائج.
الوثائق المرجعية | التعليمات البرمجية لمصدر المكتبة | حزمة (NuGet) | نماذج
تلميح
يمكنك أيضًا تحليل صورة محلية. راجع أساليب ComputerVisionClient مثل AnalyzeImageInStreamAsync. أو راجع نموذج التعليمات البرمجية على GitHub لمعرفة السيناريوهات التي تتضمن صورًا محلية.
تلميح
يمكن أن تتولى واجهة برمجة التطبيقات Analyze بعدة عمليات مختلفة بخلاف إنشاء علامات الصور. راجع الدليل الإرشادي لتحليل الصور للاطلاع على الأمثلة التي تعرض جميع الميزات المتوفرة.
المتطلبات الأساسية
- اشتراك Azure - إنشاء اشتراك مجاناً
- إصدار Visual Studio IDE أو الإصدار الحالي من .NET Core.
- بمجرد أن يكون لديك اشتراك Azure، قم بإنشاء مورد Computer Vision في مدخل Microsoft Azure للحصول على المفتاح ونقطة النهاية. بعد انتشاره، حدد "Go to resource".
- تحتاج إلى المفتاح ونقطة النهاية من المورد الذي تقوم بإنشائه لتوصيل التطبيق الخاص بك بخدمة Azure الذكاء الاصطناعي Vision.
- يمكنك استخدام مستوى التسعير الحر (
F0
) لتجربة الخدمة، والترقية لاحقًا إلى مستوى مدفوع للإنتاج.
إنشاء متغيرات البيئة
في هذا المثال، اكتب بيانات الاعتماد الخاصة بك إلى متغيرات البيئة على الجهاز المحلي الذي يقوم بتشغيل التطبيق.
انتقل إلى مدخل Azure. إذا تم نشر المورد الذي أنشأته في قسم المتطلبات الأساسية بنجاح، فحدد الانتقال إلى المورد ضمن الخطوات التالية. يمكنك العثور على المفتاح ونقطة النهاية ضمن إدارة الموارد في صفحة المفاتيح ونقطة النهاية. مفتاح المورد الخاص بك ليس هو نفسه معرف اشتراك Azure الخاص بك.
تلميح
لا تقم بتضمين المفتاح مباشرة في التعليمات البرمجية الخاصة بك، ولا تنشره بشكل عام. راجع مقالة أمان خدمات Azure الذكاء الاصطناعي لمزيد من خيارات المصادقة مثل Azure Key Vault.
لتعيين متغير البيئة للمفتاح ونقطة النهاية، افتح نافذة وحدة التحكم واتبع الإرشادات الخاصة بنظام التشغيل وبيئة التطوير.
- لتعيين
VISION_KEY
متغير البيئة، استبدلyour-key
بأحد مفاتيح المورد الخاص بك. - لتعيين
VISION_ENDPOINT
متغير البيئة، استبدلyour-endpoint
بنقطة النهاية للمورد الخاص بك.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint
بعد إضافة متغيرات البيئة، قد تحتاج إلى إعادة تشغيل أي برامج قيد التشغيل ستقرأ متغيرات البيئة، بما في ذلك نافذة وحدة التحكم.
تحليل الصورة
إنشاء تطبيق C# جديد.
باستخدام Visual Studio، قم بإنشاء تطبيق .NET Core جديد.
تثبيت مكتبة العميل
بمجرد إنشاء مشروع جديد، تثبيت مكتبة العميل بالنقر بزر الماوس الأيمن فوق حل المشروع في "Solution Explorer" وتحديد "Manage NuGet Packages". في إدارة الحزمة التي يتم فتحها، حدد تصفح، وحدد تضمين الإصدار التجريبي، وابحث عن
Microsoft.Azure.CognitiveServices.Vision.ComputerVision
. حدد الإصدار7.0.0
، ثم حدد Install.من دليل المشروع، افتح الملف Program.cs في المحرر المفضل لديك أو IDE. ألصق التعليمات البرمجية الآتية:
using System; using System.Collections.Generic; using Microsoft.Azure.CognitiveServices.Vision.ComputerVision; using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models; using System.Threading.Tasks; using System.IO; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System.Threading; using System.Linq; namespace ComputerVisionQuickstart { class Program { // Add your Computer Vision key and endpoint static string key = Environment.GetEnvironmentVariable("VISION_KEY"); static string endpoint = Environment.GetEnvironmentVariable("VISION_ENDPOINT"); // URL image used for analyzing an image (image of puppy) private const string ANALYZE_URL_IMAGE = "https://moderatorsampleimages.blob.core.windows.net/samples/sample16.png"; static void Main(string[] args) { Console.WriteLine("Azure Cognitive Services Computer Vision - .NET quickstart example"); Console.WriteLine(); // Create a client ComputerVisionClient client = Authenticate(endpoint, key); // Analyze an image to get features and other properties. AnalyzeImageUrl(client, ANALYZE_URL_IMAGE).Wait(); } /* * AUTHENTICATE * Creates a Computer Vision client used by each example. */ public static ComputerVisionClient Authenticate(string endpoint, string key) { ComputerVisionClient client = new ComputerVisionClient(new ApiKeyServiceClientCredentials(key)) { Endpoint = endpoint }; return client; } public static async Task AnalyzeImageUrl(ComputerVisionClient client, string imageUrl) { Console.WriteLine("----------------------------------------------------------"); Console.WriteLine("ANALYZE IMAGE - URL"); Console.WriteLine(); // Creating a list that defines the features to be extracted from the image. List<VisualFeatureTypes?> features = new List<VisualFeatureTypes?>() { VisualFeatureTypes.Tags }; Console.WriteLine($"Analyzing the image {Path.GetFileName(imageUrl)}..."); Console.WriteLine(); // Analyze the URL image ImageAnalysis results = await client.AnalyzeImageAsync(imageUrl, visualFeatures: features); // Image tags and their confidence score Console.WriteLine("Tags:"); foreach (var tag in results.Tags) { Console.WriteLine($"{tag.Name} {tag.Confidence}"); } Console.WriteLine(); } } }
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. راجع مقالة أمان خدمات Azure الذكاء الاصطناعي للحصول على مزيد من المعلومات.
شغّل التطبيق
قم بتشغيل التطبيق بنقر الزر Debug أعلى نافذة IDE.
المخرجات
----------------------------------------------------------
ANALYZE IMAGE - URL
Analyzing the image sample16.png...
Tags:
grass 0.9957543611526489
dog 0.9939157962799072
mammal 0.9928356409072876
animal 0.9918001890182495
dog breed 0.9890419244766235
pet 0.974603533744812
outdoor 0.969241738319397
companion dog 0.906731367111206
small greek domestic dog 0.8965123891830444
golden retriever 0.8877675533294678
labrador retriever 0.8746421337127686
puppy 0.872604250907898
ancient dog breeds 0.8508287668228149
field 0.8017748594284058
retriever 0.6837497353553772
brown 0.6581960916519165
تنظيف الموارد
إذا كنت ترغب في تنظيف اشتراك خدمات Azure الذكاء الاصطناعي وإزالته، يمكنك حذف المورد أو مجموعة الموارد. يؤدي حذف مجموعة الموارد إلى حذف أية موارد أخرى مقترنة بها أيضًا.
الخطوات التالية
في التشغيل السريع هذا، تعلمت كيفية تثبيت مكتبة عميل تحليل الصور وإجراء مكالمات تحليل الصور الأساسية. بعد ذلك، تعرف على المزيد عن ميزات واجهة برمجة التطبيقات التحليلية.
- نظرة عامة على تحليل الصور
- يمكن العثور على التعليمات البرمجية المصدر لهذه النماذج على GitHub.
استخدم مكتبة العميل لتحليل الصور لـ Python لتحليل صورة بعيدة لعلامات المحتوى.
تلميح
يمكنك أيضًا تحليل صورة محلية. راجع أساليب ComputerVisionClientOperationsMixin مثل analyze_image_in_stream. أو راجع نموذج التعليمات البرمجية على GitHub لمعرفة السيناريوهات التي تتضمن صورًا محلية.
تلميح
يمكن أن تتولى واجهة برمجة التطبيقات Analyze بعدة عمليات مختلفة بخلاف إنشاء علامات الصور. راجع الدليل الإرشادي لتحليل الصور للاطلاع على الأمثلة التي تعرض جميع الميزات المتوفرة.
Reference documentation | Library source code | Package (PiPy) | Samples
المتطلبات الأساسية
اشتراك Azure - إنشاء اشتراك مجاناً
-
- يجب أن يتضمن تثبيت Python خاصتك pip. يمكنك التحقق مما إذا كانت لديك نقطة مثبتة عن طريق تشغيل
pip --version
على سطر الأوامر. الحصول على نقطة عن طريق تثبيت أحدث إصدار من Python.
- يجب أن يتضمن تثبيت Python خاصتك pip. يمكنك التحقق مما إذا كانت لديك نقطة مثبتة عن طريق تشغيل
بمجرد أن يكون لديك اشتراك Azure، قم بإنشاء مورد Vision في مدخل Microsoft Azure للحصول على المفتاح ونقطة النهاية. بعد انتشاره، حدد "Go to resource".
- تحتاج إلى المفتاح ونقطة النهاية من المورد الذي تقوم بإنشائه لتوصيل التطبيق الخاص بك بخدمة Azure الذكاء الاصطناعي Vision.
- يمكنك استخدام مستوى التسعير الحر (
F0
) لتجربة الخدمة، والترقية لاحقًا إلى مستوى مدفوع للإنتاج.
إنشاء متغيرات البيئة
في هذا المثال، اكتب بيانات الاعتماد الخاصة بك إلى متغيرات البيئة على الجهاز المحلي الذي يقوم بتشغيل التطبيق.
انتقل إلى مدخل Azure. إذا تم نشر المورد الذي أنشأته في قسم المتطلبات الأساسية بنجاح، فحدد الانتقال إلى المورد ضمن الخطوات التالية. يمكنك العثور على المفتاح ونقطة النهاية ضمن إدارة الموارد في صفحة المفاتيح ونقطة النهاية. مفتاح المورد الخاص بك ليس هو نفسه معرف اشتراك Azure الخاص بك.
تلميح
لا تقم بتضمين المفتاح مباشرة في التعليمات البرمجية الخاصة بك، ولا تنشره بشكل عام. راجع مقالة أمان خدمات Azure الذكاء الاصطناعي لمزيد من خيارات المصادقة مثل Azure Key Vault.
لتعيين متغير البيئة للمفتاح ونقطة النهاية، افتح نافذة وحدة التحكم واتبع الإرشادات الخاصة بنظام التشغيل وبيئة التطوير.
- لتعيين
VISION_KEY
متغير البيئة، استبدلyour-key
بأحد مفاتيح المورد الخاص بك. - لتعيين
VISION_ENDPOINT
متغير البيئة، استبدلyour-endpoint
بنقطة النهاية للمورد الخاص بك.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint
بعد إضافة متغيرات البيئة، قد تحتاج إلى إعادة تشغيل أي برامج قيد التشغيل ستقرأ متغيرات البيئة، بما في ذلك نافذة وحدة التحكم.
تحليل الصورة
ثبت مكتبة العميل.
يمكنك تثبيت مكتبة العميل باستخدام:
pip install --upgrade azure-cognitiveservices-vision-computervision
أيضًا تثبيت مكتبة Pillow.
pip install pillow
أنشئ تطبيق Python جديد.
أنشئ ملف Python جديد —quickstart-file.py، على سبيل المثال.
افتح quickstart-file.py في محرر نص أو بيئة التطوير المتكامل وألصق التعليمات البرمجية الآتية.
from azure.cognitiveservices.vision.computervision import ComputerVisionClient from azure.cognitiveservices.vision.computervision.models import OperationStatusCodes from azure.cognitiveservices.vision.computervision.models import VisualFeatureTypes from msrest.authentication import CognitiveServicesCredentials from array import array import os from PIL import Image import sys import time ''' Authenticate Authenticates your credentials and creates a client. ''' subscription_key = os.environ["VISION_KEY"] endpoint = os.environ["VISION_ENDPOINT"] computervision_client = ComputerVisionClient(endpoint, CognitiveServicesCredentials(subscription_key)) ''' END - Authenticate ''' ''' Quickstart variables These variables are shared by several examples ''' # Images used for the examples: Describe an image, Categorize an image, Tag an image, # Detect faces, Detect adult or racy content, Detect the color scheme, # Detect domain-specific content, Detect image types, Detect objects images_folder = os.path.join (os.path.dirname(os.path.abspath(__file__)), "images") remote_image_url = "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/landmark.jpg" ''' END - Quickstart variables ''' ''' Tag an Image - remote This example returns a tag (key word) for each thing in the image. ''' print("===== Tag an image - remote =====") # Call API with remote image tags_result_remote = computervision_client.tag_image(remote_image_url ) # Print results with confidence score print("Tags in the remote image: ") if (len(tags_result_remote.tags) == 0): print("No tags detected.") else: for tag in tags_result_remote.tags: print("'{}' with confidence {:.2f}%".format(tag.name, tag.confidence * 100)) print() ''' END - Tag an Image - remote ''' print("End of Computer Vision quickstart.")
شغّل التطبيق باستخدام الأمر
python
المُتاح على ملف التشغيل السريع.python quickstart-file.py
المخرجات
===== Tag an image - remote =====
Tags in the remote image:
'outdoor' with confidence 99.00%
'building' with confidence 98.81%
'sky' with confidence 98.21%
'stadium' with confidence 98.17%
'ancient rome' with confidence 96.16%
'ruins' with confidence 95.04%
'amphitheatre' with confidence 93.99%
'ancient roman architecture' with confidence 92.65%
'historic site' with confidence 89.55%
'ancient history' with confidence 89.54%
'history' with confidence 86.72%
'archaeological site' with confidence 84.41%
'travel' with confidence 65.85%
'large' with confidence 61.02%
'city' with confidence 56.57%
End of Azure AI Vision quickstart.
تنظيف الموارد
إذا كنت ترغب في تنظيف اشتراك خدمات Azure الذكاء الاصطناعي وإزالته، يمكنك حذف المورد أو مجموعة الموارد. يؤدي حذف مجموعة الموارد إلى حذف أية موارد أخرى مقترنة بها أيضًا.
الخطوات التالية
في التشغيل السريع هذا، تعلمت كيفية تثبيت مكتبة عميل تحليل الصور وإجراء مكالمات تحليل الصور الأساسية. بعد ذلك، تعرف على المزيد عن ميزات واجهة برمجة التطبيقات التحليلية.
- نظرة عامة على تحليل الصور
- يمكن العثور على التعليمات البرمجية المصدر لهذه النماذج على GitHub.
استخدم مكتبة العميل لتحليل الصور لتحليل صورة بعيدة للعلامات ووصف النص والوجوه ومحتوى البالغين والمزيد.
تلميح
يمكنك أيضًا تحليل صورة محلية. راجع أساليب ComputerVision مثل AnalyzeImage. أو راجع نموذج التعليمات البرمجية على GitHub لمعرفة السيناريوهات التي تتضمن صورًا محلية.
تلميح
يمكن أن تتولى واجهة برمجة التطبيقات Analyze بعدة عمليات مختلفة بخلاف إنشاء علامات الصور. راجع الدليل الإرشادي لتحليل الصور للاطلاع على الأمثلة التي تعرض جميع الميزات المتوفرة.
المرجع | رمز مصدر المكتبة |عينات من برنامج | (Maven)
المتطلبات الأساسية
- اشتراك Azure - إنشاء اشتراك مجاناً
- الإصدار الحالي من Java Development Kit (JDK)
- أداة إنشاء Gradleأو مدير تبعية آخر.
- بمجرد أن يكون لديك اشتراك Azure، قم بإنشاء مورد Vision في مدخل Microsoft Azure للحصول على المفتاح ونقطة النهاية. بعد انتشاره، حدد "Go to resource".
- تحتاج إلى المفتاح ونقطة النهاية من المورد الذي تقوم بإنشائه لتوصيل التطبيق الخاص بك بخدمة Azure الذكاء الاصطناعي Vision.
- يمكنك استخدام مستوى التسعير الحر (
F0
) لتجربة الخدمة، والترقية لاحقًا إلى مستوى مدفوع للإنتاج.
إنشاء متغيرات البيئة
في هذا المثال، اكتب بيانات الاعتماد الخاصة بك إلى متغيرات البيئة على الجهاز المحلي الذي يقوم بتشغيل التطبيق.
انتقل إلى مدخل Azure. إذا تم نشر المورد الذي أنشأته في قسم المتطلبات الأساسية بنجاح، فحدد الانتقال إلى المورد ضمن الخطوات التالية. يمكنك العثور على المفتاح ونقطة النهاية ضمن إدارة الموارد في صفحة المفاتيح ونقطة النهاية. مفتاح المورد الخاص بك ليس هو نفسه معرف اشتراك Azure الخاص بك.
تلميح
لا تقم بتضمين المفتاح مباشرة في التعليمات البرمجية الخاصة بك، ولا تنشره بشكل عام. راجع مقالة أمان خدمات Azure الذكاء الاصطناعي لمزيد من خيارات المصادقة مثل Azure Key Vault.
لتعيين متغير البيئة للمفتاح ونقطة النهاية، افتح نافذة وحدة التحكم واتبع الإرشادات الخاصة بنظام التشغيل وبيئة التطوير.
- لتعيين
VISION_KEY
متغير البيئة، استبدلyour-key
بأحد مفاتيح المورد الخاص بك. - لتعيين
VISION_ENDPOINT
متغير البيئة، استبدلyour-endpoint
بنقطة النهاية للمورد الخاص بك.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint
بعد إضافة متغيرات البيئة، قد تحتاج إلى إعادة تشغيل أي برامج قيد التشغيل ستقرأ متغيرات البيئة، بما في ذلك نافذة وحدة التحكم.
تحليل الصورة
قم بإنشاء مشروع Gradle جديد.
في إطار نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، يمكنك إنشاء دليل جديد لتطبيقك وانتقل إليه.
mkdir myapp && cd myapp
بادر بتشغيل الأمر
gradle init
من دليل العمل خاصتك. سينشئ هذا الأمر ملفات بناء أساسية لـ Gradle، بما في ذلك build.gradle.kts، والذي يجري استخدامه في وقت التشغيل لإنشاء تطبيقك وتكوينه.gradle init --type basic
عند طلب اختيار DSL، حدد Kotlin.
ثبت مكتبة العميل.
يستخدم هذا التشغيل السريع مدير تبعية Gradle. يمكنك العثور على مكتبة العميل ومعلومات مديري التبعية الآخرين على Maven Central Repository.
حدد build.gradle.kts وافتحه باستخدام IDE أو محرر النص المفضل لديك. ثم انسخ في تكوين البناء التالي. يُعرّف هذا التكوين المشروع على أنه تطبيق Java التي تُعد نقطة دخوله هي الفئة ImageAnalysisQuickstart. يستورد مكتبة Azure الذكاء الاصطناعي Vision.
plugins { java application } application { mainClass.set("ImageAnalysisQuickstart") } repositories { mavenCentral() } dependencies { implementation(group = "com.microsoft.azure.cognitiveservices", name = "azure-cognitiveservices-computervision", version = "1.0.9-beta") }
أنشئ ملف Java.
من دليل العمل الخاص بك، قم بتشغيل الأمر التالي لإنشاء مجلد مصدر المشروع:
mkdir -p src/main/java
انتقل إلى المجلد الجديد وأنشِئ ملفاً باسم ImageAnalysisQuickstart.java.
افتح ImageAnalysisQuickstart.java في محررك المفضل أو بيئة التطوير المتكامل وألصق التعليمات البرمجية الآتية.
import com.microsoft.azure.cognitiveservices.vision.computervision.*; import com.microsoft.azure.cognitiveservices.vision.computervision.implementation.ComputerVisionImpl; import com.microsoft.azure.cognitiveservices.vision.computervision.models.*; import java.io.*; import java.nio.file.Files; import java.util.ArrayList; import java.util.List; import java.util.UUID; public class ImageAnalysisQuickstart { // Use environment variables static String key = System.getenv("VISION_KEY"); static String endpoint = System.getenv("VISION_ENDPOINT"); public static void main(String[] args) { System.out.println("\nAzure Cognitive Services Computer Vision - Java Quickstart Sample"); // Create an authenticated Computer Vision client. ComputerVisionClient compVisClient = Authenticate(key, endpoint); // Analyze local and remote images AnalyzeRemoteImage(compVisClient); } public static ComputerVisionClient Authenticate(String key, String endpoint){ return ComputerVisionManager.authenticate(key).withEndpoint(endpoint); } public static void AnalyzeRemoteImage(ComputerVisionClient compVisClient) { /* * Analyze an image from a URL: * * Set a string variable equal to the path of a remote image. */ String pathToRemoteImage = "https://github.com/Azure-Samples/cognitive-services-sample-data-files/raw/master/ComputerVision/Images/faces.jpg"; // This list defines the features to be extracted from the image. List<VisualFeatureTypes> featuresToExtractFromRemoteImage = new ArrayList<>(); featuresToExtractFromRemoteImage.add(VisualFeatureTypes.TAGS); System.out.println("\n\nAnalyzing an image from a URL ..."); try { // Call the Computer Vision service and tell it to analyze the loaded image. ImageAnalysis analysis = compVisClient.computerVision().analyzeImage().withUrl(pathToRemoteImage) .withVisualFeatures(featuresToExtractFromRemoteImage).execute(); // Display image tags and confidence values. System.out.println("\nTags: "); for (ImageTag tag : analysis.tags()) { System.out.printf("\'%s\' with confidence %f\n", tag.name(), tag.confidence()); } } catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); } } // END - Analyze an image from a URL. }
انتقل مرة أخرى إلى المجلد الجذر للمشروع، وأنشئ التطبيق باستخدام:
gradle build
ثم، شغله باستخدام أمر
gradle run
:gradle run
المخرجات
Azure AI Vision - Java Quickstart Sample
Analyzing an image from a URL ...
Tags:
'person' with confidence 0.998895
'human face' with confidence 0.997437
'smile' with confidence 0.991973
'outdoor' with confidence 0.985962
'happy' with confidence 0.969785
'clothing' with confidence 0.961570
'friendship' with confidence 0.946441
'tree' with confidence 0.917331
'female person' with confidence 0.890976
'girl' with confidence 0.888741
'social group' with confidence 0.872044
'posing' with confidence 0.865493
'adolescent' with confidence 0.857371
'love' with confidence 0.852553
'laugh' with confidence 0.850097
'people' with confidence 0.849922
'lady' with confidence 0.844540
'woman' with confidence 0.818172
'group' with confidence 0.792975
'wedding' with confidence 0.615252
'dress' with confidence 0.517169
تنظيف الموارد
إذا كنت ترغب في تنظيف اشتراك خدمات Azure الذكاء الاصطناعي وإزالته، يمكنك حذف المورد أو مجموعة الموارد. يؤدي حذف مجموعة الموارد إلى حذف أية موارد أخرى مقترنة بها أيضًا.
الخطوات التالية
في التشغيل السريع هذا، تعلمت كيفية تثبيت مكتبة عميل تحليل الصور وإجراء مكالمات تحليل الصور الأساسية. بعد ذلك، تعرف على المزيد عن ميزات واجهة برمجة التطبيقات التحليلية.
- نظرة عامة على تحليل الصور
- يمكن العثور على التعليمات البرمجية المصدر لهذه النماذج على GitHub.
استخدم مكتبة العميل لتحليل الصور لـ JavaScript لتحليل صورة بعيدة لعلامات المحتوى.
تلميح
يمكنك أيضًا تحليل صورة محلية. راجع أساليب ComputerVisionClient، مثل describeImageInStream. أو راجع نموذج التعليمات البرمجية على GitHub لمعرفة السيناريوهات التي تتضمن صورًا محلية.
تلميح
يمكن أن تتولى واجهة برمجة التطبيقات Analyze بعدة عمليات مختلفة بخلاف إنشاء علامات الصور. راجع الدليل الإرشادي لتحليل الصور للاطلاع على الأمثلة التي تعرض جميع الميزات المتوفرة.
الوثائق المرجعية | التعليمات البرمجية لمصدر المكتبة | الحزمة (npm) | النماذج
المتطلبات الأساسية
- اشتراك Azure - إنشاء اشتراك مجاناً
- الإصدار الحالي من Node.js
- بمجرد أن يكون لديك اشتراك Azure، قم بإنشاء مورد Vision في مدخل Microsoft Azure للحصول على المفتاح ونقطة النهاية. بعد انتشاره، حدد "Go to resource".
- تحتاج إلى المفتاح ونقطة النهاية من المورد الذي تقوم بإنشائه لتوصيل التطبيق الخاص بك بخدمة Azure الذكاء الاصطناعي Vision.
- يمكنك استخدام مستوى التسعير الحر (
F0
) لتجربة الخدمة، والترقية لاحقًا إلى مستوى مدفوع للإنتاج.
إنشاء متغيرات البيئة
في هذا المثال، اكتب بيانات الاعتماد الخاصة بك إلى متغيرات البيئة على الجهاز المحلي الذي يقوم بتشغيل التطبيق.
انتقل إلى مدخل Azure. إذا تم نشر المورد الذي أنشأته في قسم المتطلبات الأساسية بنجاح، فحدد الانتقال إلى المورد ضمن الخطوات التالية. يمكنك العثور على المفتاح ونقطة النهاية ضمن إدارة الموارد في صفحة المفاتيح ونقطة النهاية. مفتاح المورد الخاص بك ليس هو نفسه معرف اشتراك Azure الخاص بك.
تلميح
لا تقم بتضمين المفتاح مباشرة في التعليمات البرمجية الخاصة بك، ولا تنشره بشكل عام. راجع مقالة أمان خدمات Azure الذكاء الاصطناعي لمزيد من خيارات المصادقة مثل Azure Key Vault.
لتعيين متغير البيئة للمفتاح ونقطة النهاية، افتح نافذة وحدة التحكم واتبع الإرشادات الخاصة بنظام التشغيل وبيئة التطوير.
- لتعيين
VISION_KEY
متغير البيئة، استبدلyour-key
بأحد مفاتيح المورد الخاص بك. - لتعيين
VISION_ENDPOINT
متغير البيئة، استبدلyour-endpoint
بنقطة النهاية للمورد الخاص بك.
setx VISION_KEY your-key
setx VISION_ENDPOINT your-endpoint
بعد إضافة متغيرات البيئة، قد تحتاج إلى إعادة تشغيل أي برامج قيد التشغيل ستقرأ متغيرات البيئة، بما في ذلك نافذة وحدة التحكم.
تحليل الصورة
إنشاء تطبيق Node.js جديد
في إطار نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، يمكنك إنشاء دليل جديد لتطبيقك وانتقل إليه.
mkdir myapp && cd myapp
شغّل الأمر
npm init
لإنشاء تطبيق node باستخدام ملفpackage.json
.npm init
تثبيت مكتبة العميل
تثبيت حزمة
ms-rest-azure
و@azure/cognitiveservices-computervision
npm:npm install @azure/cognitiveservices-computervision
بادر أيضاً بتثبيت الوحدة غير المتزامنة:
npm install async
تحديث ملف تطبيقك
package.json
باستخدام التبعيات.أنشئ ملف جديد، index.js.
افتح index.js في محرر نص وألصق التعليمات البرمجية الآتية.
'use strict'; const async = require('async'); const fs = require('fs'); const https = require('https'); const path = require("path"); const createReadStream = require('fs').createReadStream const sleep = require('util').promisify(setTimeout); const ComputerVisionClient = require('@azure/cognitiveservices-computervision').ComputerVisionClient; const ApiKeyCredentials = require('@azure/ms-rest-js').ApiKeyCredentials; /** * AUTHENTICATE * This single client is used for all examples. */ const key = process.env.VISION_KEY; const endpoint = process.env.VISION_ENDPOINT; const computerVisionClient = new ComputerVisionClient( new ApiKeyCredentials({ inHeader: { 'Ocp-Apim-Subscription-Key': key } }), endpoint); /** * END - Authenticate */ function computerVision() { async.series([ async function () { /** * DETECT TAGS * Detects tags for an image, which returns: * all objects in image and confidence score. */ console.log('-------------------------------------------------'); console.log('DETECT TAGS'); console.log(); // Image of different kind of dog. const tagsURL = 'https://moderatorsampleimages.blob.core.windows.net/samples/sample16.png'; // Analyze URL image console.log('Analyzing tags in image...', tagsURL.split('/').pop()); const tags = (await computerVisionClient.analyzeImage(tagsURL, { visualFeatures: ['Tags'] })).tags; console.log(`Tags: ${formatTags(tags)}`); // Format tags for display function formatTags(tags) { return tags.map(tag => (`${tag.name} (${tag.confidence.toFixed(2)})`)).join(', '); } /** * END - Detect Tags */ console.log(); console.log('-------------------------------------------------'); console.log('End of quickstart.'); }, function () { return new Promise((resolve) => { resolve(); }) } ], (err) => { throw (err); }); } computerVision();
شغّل التطبيق باستخدام الأمر
node
المُتاح على ملف التشغيل السريع.node index.js
المخرجات
-------------------------------------------------
DETECT TAGS
Analyzing tags in image... sample16.png
Tags: grass (1.00), dog (0.99), mammal (0.99), animal (0.99), dog breed (0.99), pet (0.97), outdoor (0.97), companion dog (0.91), small greek domestic dog (0.90), golden retriever (0.89), labrador retriever (0.87), puppy (0.87), ancient dog breeds (0.85), field (0.80), retriever (0.68), brown (0.66)
-------------------------------------------------
End of quickstart.
تنظيف الموارد
إذا كنت ترغب في تنظيف اشتراك خدمات Azure الذكاء الاصطناعي وإزالته، يمكنك حذف المورد أو مجموعة الموارد. يؤدي حذف مجموعة الموارد إلى حذف أية موارد أخرى مقترنة بها أيضًا.
الخطوات التالية
في التشغيل السريع هذا، تعلمت كيفية تثبيت مكتبة عميل تحليل الصور وإجراء مكالمات تحليل الصور الأساسية. بعد ذلك، تعرف على المزيد عن ميزات واجهة برمجة التطبيقات التحليلية.
- نظرة عامة على تحليل الصور
- يمكن العثور على التعليمات البرمجية المصدر لهذه النماذج على GitHub.
استخدم واجهة برمجة تطبيقات REST لتحليل الصور لتحليل صورة لوضع علامة عليها.
تلميح
يمكن أن تتولى واجهة برمجة التطبيقات Analyze بعدة عمليات مختلفة بخلاف إنشاء علامات الصور. راجع الدليل الإرشادي لتحليل الصور للاطلاع على الأمثلة التي تعرض جميع الميزات المتوفرة.
إشعار
يستخدم هذا التشغيل السريع أوامر cURL لاستدعاء REST API. يمكنك أيضاً استدعاء REST API باستخدام لغة برمجة. راجع نماذج GitHub للحصول على أمثلة في #C وPython و Java وJavaScript.
المتطلبات الأساسية
- اشتراك Azure - إنشاء اشتراك مجاناً
- بمجرد أن يكون لديك اشتراك Azure، قم بإنشاء مورد Vision في مدخل Microsoft Azure للحصول على المفتاح ونقطة النهاية. بعد انتشاره، حدد "Go to resource".
- ستحتاج إلى المفتاح ونقطة النهاية من المورد الذي تقوم بإنشائه لتوصيل التطبيق الخاص بك بخدمة Azure الذكاء الاصطناعي Vision. ستلصق المفتاح ونقطة النهاية في التعليمات البرمجية أدناه لاحقًا في التشغيل السريع.
- يمكنك استخدام مستوى التسعير الحر (
F0
) لتجربة الخدمة، والترقية لاحقًا إلى مستوى مدفوع للإنتاج.
- cURL مُثبت
تحليل صورة
لتحليل صورة لمجموعة متنوعة من الميزات المرئية، اتبع الخطوات الآتية:
نسخ الأمر التالي إلى محرر نص.
curl.exe -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/analyze?visualFeatures=Tags" -d "{'url':'https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png'}"
قم بإجراء التغييرات التالية في الأمر عند الحاجة:
- استبدل القيمة
<subscriptionKey>
بمفتاحك. - استبدال الجزء الأول من عنوان URL للطلب (
westcentralus
) بالنص في عنوان URL لنقطة النهاية الخاص بك.إشعار
الموارد الجديدة التي تم إنشاؤها بعد 1 يوليو 2019 ستستخدم أسماء النطاقات الفرعية المخصصة. لمزيد من المعلومات وقائمة كاملة بنقاط النهاية الإقليمية، راجع أسماء النطاقات الفرعية المخصصة لخدمات Azure الذكاء الاصطناعي.
- اختياريًا، تغيير عنوان URL الصورة في نص الطلب (
https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png
) إلى URL صورة مختلفة لتحليلها.
- استبدل القيمة
افتح نافذة موجه الأوامر.
الصق الأمر الذي تم تحريره
curl
من محرر النص في نافذة موجه الأوامر، ثم قم بتشغيل الأمر.
فحص الاستجابة
تعود الاستجابة الناجحة في JSON. يحلل نموذج التطبيق ويعرض استجابة ناجحة في إطار موجه الأوامر، مشابهة للمثال التالي:
{{
"tags":[
{
"name":"text",
"confidence":0.9992657899856567
},
{
"name":"post-it note",
"confidence":0.9879657626152039
},
{
"name":"handwriting",
"confidence":0.9730165004730225
},
{
"name":"rectangle",
"confidence":0.8658561706542969
},
{
"name":"paper product",
"confidence":0.8561884760856628
},
{
"name":"purple",
"confidence":0.5961999297142029
}
],
"requestId":"2788adfc-8cfb-43a5-8fd6-b3a9ced35db2",
"metadata":{
"height":945,
"width":1000,
"format":"Jpeg"
},
"modelVersion":"2021-05-01"
}
الخطوات التالية
في التشغيل السريع المُشار إليه، تعلمت كيفية إجراء استدعاءات تحليل الصور الأساسية باستخدام واجهة برمجة تطبيقات REST. بعد ذلك، تعرف على المزيد عن ميزات واجهة برمجة التطبيقات التحليلية.