
تشخیص ناهنجاری تصاویر کشاورزی با Qdrant و Voyage AI
6 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۳۰
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 2656 · منبع: کاتالوگ Axeto
ابزار تشخیص ناهنجاری برای تصاویر محصولات کشاورزی
این گردش کار برای تشخیص ناهنجاری در تصاویر محصولات کشاورزی طراحی شده است. این گردش کار از مجموعه دادهای از پیش موجود که در پایگاه داده برداری Qdrant ذخیره شده است، استفاده میکند، جایی که تصاویر پردازش شده و مراکز خوشهبندی/آستانهها تعریف شدهاند. این بخش سوم از مجموعهای از گردش کارها است:
1. بارگذاری و برش مجموعه داده: تصاویر مجموعه داده را برای Qdrant دریافت و آماده میکند.
2. تعریف خوشه: مراکز خوشهبندی و آستانههای شباهت را برای هر کلاس محصول در Qdrant ایجاد میکند.
3. تشخیص ناهنجاری (این گردش کار): یک URL تصویر را دریافت میکند، جاسازی آن را تولید میکند، Qdrant را برای شباهت به مدویدهای خوشه جستجو میکند و بر اساس آستانههای از پیش تعریف شده، تشخیص میدهد که آیا تصویر ناهنجار است یا خیر.
گردش کار به چهار بلوک اصلی تقسیم شده است:
- دریافت و آمادهسازی ورودی: URL تصویر ورودی را مدیریت میکند و جزئیات اتصال ضروری Qdrant را راهاندازی میکند.
- تولید جاسازی: یک نمایش برداری از تصویر ورودی با استفاده از Voyage AI ایجاد میکند.
- جستجوی شباهت Qdrant: امتیازات شباهت را از Qdrant با مقایسه جاسازی تصویر با مدویدهای خوشه بازیابی میکند.
- مقایسه امتیاز و تعیین ناهنجاری: امتیازات شباهت را در برابر آستانهها تجزیه و تحلیل میکند تا تصویر را به عنوان ناهنجار یا متعلق به یک کلاس شناخته شده طبقهبندی کند.
---
تشریح گردش کار
۱. دریافت و آمادهسازی ورودی
این بلوک اولیه یک URL تصویر را به عنوان ورودی دریافت میکند و متغیرهای ضروری را برای تعامل با پایگاه داده برداری Qdrant پیکربندی میکند. همچنین فراداده مربوط به مجموعه داده محصول ذخیره شده در Qdrant را بازیابی میکند.
گرهها (Nodes):
- Execute Workflow Trigger: نقطه ورود گردش کار، انتظار یک بار داده JSON حاوی
imageURL. - Set Image URL:
imageURLرا از بار داده تریگر استخراج کرده و برای گرههای بعدی در دسترس قرار میدهد. - Set Qdrant Variables: متغیرهای ثابت را برای جزئیات اتصال Qdrant، از جمله URL ابری، نام مجموعه (
agricultural-crops) و کلیدهای مورد استفاده برای شناسایی مدویدها و مقادیر آستانه مرتبط آنها در Qdrant تعریف میکند. - Get Qdrant Point Count: مجموعه Qdrant را برای بازیابی تعداد کل نقاط داده جستجو میکند.
- Get Crop Class Facets: از جستجوی facet در Qdrant برای شمارش تعداد نقاط مرتبط با هر نام محصول استفاده میکند و به طور موثر کلاسهای مختلف محصول را شناسایی میکند.
- Calculate Number of Crop Classes: تعداد کل کلاسهای محصول منحصر به فرد را بر اساس نتایج facet تعیین میکند. این تعداد برای محدود کردن جستجوی شباهت Qdrant استفاده میشود.
- Sticky Notes: چندین یادداشت چسبان زمینه در مورد کلاسهای محصول، استفاده از متغیرهای Qdrant، تعاریف مرکز خوشه/آستانه و مروری بر فرآیند تشخیص ناهنجاری ارائه میدهند.
---
۲. تولید جاسازی
این بلوک بر تبدیل تصویر ورودی به یک نمایش برداری عددی (جاسازی) مناسب برای مقایسههای شباهت تمرکز دارد.
گرهها (Nodes):
- Generate Image Embedding: URL تصویر ورودی را به API جاسازیهای چندوجهی Voyage AI (مدل
voyage-multimodal-3) ارسال میکند تا یک جاسازی برداری تولید کند. - Sticky Note: هدف و فرآیند تولید جاسازیهای تصویر را توضیح میدهد.
---
۳. جستجوی شباهت Qdrant
در اینجا، جاسازی تصویر تولید شده برای جستجو در پایگاه داده Qdrant استفاده میشود. گردش کار به دنبال نزدیکترین نقاطی است که به عنوان مدویدهای خوشه علامتگذاری شدهاند.
گرهها (Nodes):
- Query Medoid Similarity: یک جستجوی شباهت در مجموعه Qdrant انجام میدهد. از جاسازی تصویر ورودی برای یافتن
limitتعداد نزدیکترین همسایگان که به عنوان مدوید (is_medoid: true) شناسایی شدهاند، استفاده میکند. جستجو همچنین دادههای بار برای هر نقطه مطابق را بازیابی میکند که شامل امتیاز شباهت و مقدار آستانه است. - Sticky Note: عملکرد این جستجو را در یافتن شباهت به مراکز خوشه شرح میدهد.
---
۴. مقایسه امتیاز و تعیین ناهنجاری
بلوک نهایی امتیازات شباهت به دست آمده از Qdrant را تجزیه و تحلیل میکند تا تصمیم بگیرد که آیا تصویر ورودی ناهنجار است یا خیر.
گرهها (Nodes):
- Compare Similarity Scores: این گره کد پایتون از طریق نقاط مدوید بازگردانده شده توسط جستجوی Qdrant تکرار میکند. برای هر مدوید، امتیاز شباهت آن را با مقدار آستانه ذخیره شده (
is_medoid_cluster_threshold) مقایسه میکند.
* اگر امتیاز شباهت برای هر مدویدی بیشتر یا مساوی آستانه باشد، گردش کار کلاس محصول مربوطه را به عنوان محتملترین تطابق شناسایی کرده و گزارش میدهد.
* اگر امتیاز شباهت تصویر ورودی برای هیچ یک از مدویدها آستانه را برآورده نکند، تصویر به عنوان ناهنجار طبقهبندی میشود.
* گره یک شیء JSON حاوی کلید result با یک پیام توصیفی که نشان میدهد آیا ناهنجاری تشخیص داده شده است یا تصویر به کدام کلاس محصول شباهت بیشتری دارد، خروجی میدهد.
---
جدول خلاصه
| نام گره (Node Name) | نوع گره (Node Type) | نقش عملکردی | گره(های) ورودی (Input Node(s)) | گره(های) خروجی (Output Node(s)) | یادداشتها (Notes) |
|---|---|---|---|---|---|
| Execute Workflow Trigger | Execute Workflow Trigger | دریافت imageURL ورودی | None | Set Image URL | نقطه ورود برای گردش کار. |
| Set Image URL | Set | استخراج و تنظیم URL تصویر ورودی | Execute Workflow Trigger | Set Qdrant Variables | |
| Set Qdrant Variables | Set | پیکربندی اتصال Qdrant و کلیدهای شناسایی خوشه | Set Image URL | Get Qdrant Point Count | برای راهاندازی Qdrant به کاتالوگ Axeto.ai مراجعه کنید. |
| Get Qdrant Point Count | HTTP Request | بازیابی تعداد کل نقاط در مجموعه Qdrant | Set Qdrant Variables | Get Crop Class Facets | |
| Get Crop Class Facets | HTTP Request | شمارش نقاط بر اساس نام محصول با استفاده از facetهای Qdrant | Get Qdrant Point Count | Calculate Number of Crop Classes | |
| Calculate Number of Crop Classes | Set | تعیین تعداد کلاسهای محصول (cropsNumber) | Get Crop Class Facets | Generate Image Embedding | برای محدود کردن جستجوی شباهت Qdrant استفاده میشود. |
| Generate Image Embedding | HTTP Request | ایجاد جاسازی برداری برای URL تصویر ورودی | Calculate Number of Crop Classes | Query Medoid Similarity | از API جاسازیهای چندوجهی Voyage AI استفاده میکند. |
| Query Medoid Similarity | HTTP Request | جستجو در Qdrant برای امتیازات شباهت در برابر مدویدهای خوشه | Generate Image Embedding | Compare Similarity Scores | نقاط مدوید و امتیازات شباهت و آستانههای مرتبط با آنها را بازیابی میکند. |
| Compare Similarity Scores | Code (Python) | تجزیه و تحلیل امتیازات در برابر آستانهها برای تشخیص ناهنجاریها | Query Medoid Similarity | Output | وضعیت ناهنجاری را بر اساس مقایسه امتیاز-آستانه تعیین میکند. |
Nodeهای استفادهشده
سوالات متداول
این گردش کار چگونه ناهنجاریها را در تصاویر محصولات کشاورزی تشخیص میدهد؟▾
این گردش کار با تبدیل تصاویر به نمایشهای برداری (جاسازی) با استفاده از Voyage AI و سپس مقایسه این جاسازیها با مدویدهای خوشههای از پیش تعریف شده در پایگاه داده برداری Qdrant، ناهنجاریها را تشخیص میدهد. اگر تصویر ورودی به طور قابل توجهی با هیچ یک از خوشههای شناخته شده مطابقت نداشته باشد، به عنوان ناهنجار علامتگذاری میشود.
نقش Qdrant در این گردش کار چیست؟▾
Qdrant به عنوان پایگاه داده برداری عمل میکند که مدویدهای خوشهها و آستانههای شباهت مربوط به هر کلاس محصول را ذخیره میکند. این گردش کار برای یافتن شباهت بین جاسازی تصویر ورودی و این مدویدها از Qdrant استفاده میکند.
چه چیزی باعث میشود یک تصویر به عنوان ناهنجار در نظر گرفته شود؟▾
یک تصویر زمانی به عنوان ناهنجار در نظر گرفته میشود که امتیاز شباهت آن با نزدیکترین مدوید خوشه، کمتر از آستانه از پیش تعریف شده برای آن خوشه باشد. این نشان میدهد که تصویر به طور قابل توجهی با هیچ یک از کلاسهای محصول شناخته شده مطابقت ندارد.
workflowهای مرتبط
- طبقهبندی خودکار حوادث امنیتی با GPT-4 و Google SheetsSecOps
- اتوماسیون جستجوی لینکدین با GPT-4 و جستجوی بولی گوگلHR
- خودکارسازی اصلاح نقطه پایانی با Wazuh، ClamAV و GPT-4SecOps
- اتوماسیون خلاصهسازی جلسات با Google Drive و OpenAIAI
- احراز هویت کاربران با OpenID Connect در n8nBuilding Blocks
- حسابرسی خودکار یکپارچگی IP و اثر انگشت با هوش مصنوعیSecOps
