
تحلیل تصاویر با Mediapipe Blendshape Labeler و Replicate AI
8 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۳۰
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 6881 · منبع: کاتالوگ Axeto
تحلیل تصاویر با استفاده از Mediapipe Blendshape Labeler از طریق API Replicate
این گردش کار، تحلیل تصاویر را با استفاده از مدل fire/v-sekai.mediapipe-labeler از طریق API Replicate خودکار میکند. این گردش کار برای ارسال یک URL تصویر برای تحلیل، بررسی وضعیت API برای تکمیل، و سپس ساختاردهی نتایج طراحی شده است.
ویژگیهای کلیدی:
- برچسبگذاری خودکار blendshape برای تصاویر.
- ادغام یکپارچه با API پیشبینی Replicate AI.
- مکانیزم بررسی وضعیت قوی برای پاسخهای ناهمزمان API.
موارد استفاده:
- تحلیل تصویر با هوش مصنوعی برای حالات چهره یا ژستهای بدن.
- ادغام تحلیل تصویر در زمان واقعی در خطوط لوله اتوماسیون بزرگتر.
- پردازش دستهای تصاویر برای استخراج دادههای blendshape.
ساختار گردش کار:
1. تنظیم ورودی و کلید API: گردش کار را به صورت دستی راهاندازی کرده و کلید API Replicate خود را پیکربندی کنید.
2. درخواست پیشبینی: یک URL تصویر را به API Replicate ارسال کنید تا تحلیل آغاز شود.
3. استخراج شناسه و وضعیت: شناسه پیشبینی منحصر به فرد و وضعیت اولیه را از پاسخ API دریافت کنید.
4. حلقه بررسی وضعیت: وضعیت پیشبینی را به طور مکرر بررسی کنید تا زمانی که تحلیل کامل شود.
5. پردازش نتایج: دادههای نهایی blendshape و فرادادههای مرتبط را قالببندی و استخراج کنید.
---
۱. تنظیم ورودی و کلید API
این بخش گردش کار را راهاندازی کرده و کلید API Replicate شما را به صورت امن ذخیره میکند.
۱.۱ راهاندازی دستی
- نوع Node:
manualTrigger - هدف: اجرای گردش کار را به صورت دستی آغاز میکند.
- پیکربندی: هیچ پارامتر خاصی لازم نیست.
- خروجی: به Node
Set API Keyمتصل میشود.
۱.۲ تنظیم کلید API
- نوع Node:
set - هدف: کلید API Replicate شما را به عنوان یک متغیر گردش کار برای استفاده در درخواستهای HTTP بعدی ذخیره میکند.
- پیکربندی:
* یک جفت کلید-مقدار جدید ایجاد کنید:
* کلید: replicate_api_key
* مقدار: "YOUR_REPLICATE_API_KEY" (کلید API Replicate واقعی خود را جایگزین کنید).
- ورودی: سیگنال را از Node
manualTriggerدریافت میکند. - خروجی: به Node
Create Predictionمتصل میشود. - نکته: اطمینان حاصل کنید که کلید API خود را محرمانه نگه دارید.
---
۲. درخواست پیشبینی
این بخش درخواست تحلیل تصویر را به API Replicate ارسال میکند.
۲.۱ ایجاد پیشبینی
- نوع Node:
httpRequest - هدف: یک درخواست POST به API Replicate برای شروع فرآیند برچسبگذاری blendshape ارسال میکند.
- پیکربندی:
* URL: https://api.replicate.com/v1/predictions
* متد HTTP: POST
* Headers:
* Authorization: ={{ 'Bearer ' + $('Set API Key').item.json.replicate_api_key }} (کلید API شما را به صورت پویا درج میکند)
* Content-Type: application/json
* پارامترهای بدنه (JSON):
```json
{
"version": "f6cda62f5bdf02558ef9f9d23512a296db9927b2b93b6c57295f3e9d6ae696fa",
"input": {
"media_path": "https://example.com/input.image",
"max_people": 100,
"export_train": true,
"frame_sample_rate": 1
}
}
```
* "https://example.com/input.image" را با URL واقعی تصویری که میخواهید تحلیل کنید جایگزین کنید.
* max_people، export_train و frame_sample_rate را در صورت نیاز تنظیم کنید.
* مهلت زمانی (Timeout): 60000 میلیثانیه (۶۰ ثانیه) برای در نظر گرفتن تأخیر شبکه.
- ورودی: کلید API را از Node
Set API Keyدریافت میکند. - خروجی: به Node
Extract Prediction IDمتصل میشود.
---
۳. استخراج شناسه و وضعیت
این بخش پاسخ اولیه API را تجزیه میکند تا اطلاعات لازم برای بررسی وضعیت را دریافت کند.
۳.۱ استخراج شناسه پیشبینی
- نوع Node:
code - هدف:
idوstatusپیشبینی را از پاسخ API استخراج کرده و URL را برای بررسی وضعیت ایجاد میکند. - پیکربندی (کد جاوا اسکریپت):
```javascript
const prediction = $input.item.json;
const predictionId = prediction.id;
const initialStatus = prediction.status;
return {
predictionId: predictionId,
status: initialStatus,
predictionUrl: https://api.replicate.com/v1/predictions/${predictionId}
};
```
- ورودی: پاسخ را از Node
Create Predictionدریافت میکند. - خروجی: به Node
Waitمتصل میشود.
---
۴. حلقه بررسی وضعیت
این بخش حلقهای را برای بررسی مکرر وضعیت پیشبینی تا زمان تکمیل آن پیادهسازی میکند.
۴.۱ انتظار
- نوع Node:
wait - هدف: تاخیری بین بررسیهای وضعیت برای جلوگیری از بارگذاری بیش از حد API و مدیریت مصرف منابع ایجاد میکند.
- پیکربندی:
* تأخیر (Delay): ۲ ثانیه.
- ورودی: سیگنال تأخیر را از
Extract Prediction ID(در ابتدا) یا از NodeCheck If Complete(در حلقه) دریافت میکند. - خروجی: به Node
Check Prediction Statusمتصل میشود.
۴.۲ بررسی وضعیت پیشبینی
- نوع Node:
httpRequest - هدف: API Replicate را برای دریافت وضعیت فعلی کار پیشبینی، پرس و جو میکند.
- پیکربندی:
* URL: ={{ $json.predictionUrl }} (URL تولید شده در Extract Prediction ID را به صورت پویا استفاده میکند)
* متد HTTP: GET
* Headers:
* Authorization: ={{ 'Bearer ' + $('Set API Key').item.json.replicate_api_key }}
- ورودی: سیگنال تأخیر را از Node
Waitدریافت میکند. - خروجی: به Node
Check If Completeمتصل میشود.
۴.۳ بررسی تکمیل بودن
- نوع Node:
if - هدف: وضعیت پیشبینی را ارزیابی میکند. اگر
succeededباشد، گردش کار به پردازش نتایج ادامه میدهد. در غیر این صورت، به NodeWaitبازمیگردد. - پیکربندی:
* شرط (Condition): ={{ $json.status === "succeeded" }}
- ورودی: بهروزرسانی وضعیت را از Node
Check Prediction Statusدریافت میکند. - خروجیها:
* شاخه True: به Node Process Result متصل میشود.
* شاخه False: برای ادامه بررسی وضعیت، به Node Wait بازمیگردد.
---
۵. پردازش نتایج
این بخش خروجی نهایی را از پیشبینی تکمیل شده قالببندی میکند.
۵.۱ پردازش نتیجه
- نوع Node:
code - هدف: دادههای خروجی مرتبط را از پیشبینی موفق، از جمله وضعیت، URLهای خروجی، معیارها و مُهرهای زمانی، ساختاردهی میکند.
- پیکربندی (کد جاوا اسکریپت):
```javascript
const result = $input.item.json;
return {
status: result.status,
output: result.output,
metrics: result.metrics,
created_at: result.created_at,
completed_at: result.completed_at,
model: 'fire/v-sekai.mediapipe-labeler',
image_url: result.output // فرض بر این است که خروجی حاوی URL تصویر پردازش شده یا دادههای blendshape است
};
```
- ورودی: دادههای پیشبینی موفق را از Node
Check If Complete(شاخه True) دریافت میکند. - خروجی: این خروجی نهایی گردش کار است.
---
جدول خلاصه گردش کار
| نام Node | نوع Node | نقش | Node(های) ورودی | Node(های) خروجی |
|---|---|---|---|---|
On clicking 'execute' | manualTrigger | راهانداز شروع گردش کار | None | Set API Key |
Set API Key | set | ذخیره کلید API Replicate | On clicking 'execute' | Create Prediction |
Create Prediction | httpRequest | ارسال درخواست پیشبینی به Replicate | Set API Key | Extract Prediction ID |
Extract Prediction ID | code | دریافت شناسه و وضعیت پیشبینی | Create Prediction | Wait |
Wait | wait | تأخیر بین درخواستهای بررسی وضعیت | Extract Prediction ID, Check If Complete | Check Prediction Status |
Check Prediction Status | httpRequest | بررسی وضعیت پیشبینی از Replicate | Wait | Check If Complete |
Check If Complete | if | بررسی اینکه آیا وضعیت پیشبینی 'succeeded' است | Check Prediction Status | Process Result (True), Wait (False) |
Process Result | code | قالببندی و ساختاردهی خروجی نهایی | Check If Complete (True) | پایان گردش کار |
---
بازسازی گردش کار
برای ساخت این گردش کار از ابتدا در Axeto.ai، مراحل زیر را دنبال کنید:
1. افزودن Node manualTrigger: نام آن را On clicking 'execute' بگذارید.
2. افزودن Node set: نام آن را Set API Key بگذارید. آن را برای تنظیم replicate_api_key با کلید API Replicate خود پیکربندی کنید. On clicking 'execute' را به این Node متصل کنید.
3. افزودن Node httpRequest: نام آن را Create Prediction بگذارید. آن را همانطور که در بخش ۲.۱ توضیح داده شده است، پیکربندی کنید. Set API Key را به این Node متصل کنید.
4. افزودن Node code: نام آن را Extract Prediction ID بگذارید. کد جاوا اسکریپت را از بخش ۳.۱ جایگذاری کنید. Create Prediction را به این Node متصل کنید.
5. افزودن Node wait: نام آن را Wait بگذارید. تأخیر را روی ۲ ثانیه تنظیم کنید. Extract Prediction ID را به این Node متصل کنید.
6. افزودن Node httpRequest: نام آن را Check Prediction Status بگذارید. آن را همانطور که در بخش ۴.۲ توضیح داده شده است، پیکربندی کنید. Wait را به این Node متصل کنید.
7. افزودن Node if: نام آن را Check If Complete بگذارید. شرط را همانطور که در بخش ۴.۳ توضیح داده شده است، تنظیم کنید. Check Prediction Status را به این Node متصل کنید.
8. افزودن Node code: نام آن را Process Result بگذارید. کد جاوا اسکریپت را از بخش ۵.۱ جایگذاری کنید. شاخه True از Check If Complete را به این Node متصل کنید.
9. ایجاد حلقه: شاخه False از Check If Complete را به Node Wait بازگردانید.
شما میتوانید این گردش کار و بسیاری دیگر را در کاتالوگ n8n در Axeto.ai پیدا کنید.
Nodeهای استفادهشده
سوالات متداول
Mediapipe Blendshape Labeler چیست؟▾
Mediapipe Blendshape Labeler یک مدل هوش مصنوعی است که میتواند ویژگیهای صورت مانند حالتها و احساسات را در تصاویر تشخیص دهد و آنها را به صورت دادههای blendshape برچسبگذاری کند.
چگونه میتوانم از Replicate AI برای تحلیل تصاویر استفاده کنم؟▾
شما میتوانید با استفاده از API Replicate، مدلهای هوش مصنوعی مانند Mediapipe Blendshape Labeler را فراخوانی کنید. گردش کار n8n این فرآیند را با ارسال URL تصویر و دریافت نتایج خودکار میکند.
این گردش کار n8n چه کاری انجام میدهد؟▾
این گردش کار، تحلیل تصاویر را با استفاده از Mediapipe Blendshape Labeler از طریق API Replicate خودکار میکند. این شامل ارسال تصویر، بررسی وضعیت پیشبینی و استخراج دادههای blendshape نهایی است.
موارد استفاده اصلی این گردش کار چیست؟▾
موارد استفاده شامل تحلیل خودکار حالات چهره برای برنامههای محتوای خلاقانه، ادغام تحلیل تصویر در زمان واقعی در خطوط لوله اتوماسیون، و پردازش دستهای تصاویر برای استخراج دادههای blendshape است.
workflowهای مرتبط
- طبقهبندی خودکار حوادث امنیتی با GPT-4 و Google SheetsSecOps
- دستهبندی خودکار ایمیل جیمیل با GPT-4o و هشدار SlackAI Summarization
- دستهبندی خودکار پستهای وبلاگ با هوش مصنوعی و گیتهابContent Creation
- اتوماسیون زیرنویسگذاری ویدیو با n8n، Google Drive و SubmagicContent Creation
- اتوماسیون پیامهای تشکر و کوپن واتساپ برای مشتریان ShopifyContent Creation
- خودکارسازی اصلاح نقطه پایانی با Wazuh، ClamAV و GPT-4SecOps
