تشخیص گل و گیاه از روی عکس با هوش مصنوعی؛ آموزش شناسایی نام گیاه
چگونه نام یک گل، درخت یا گیاه آپارتمانی را از روی عکس پیدا کنیم؟ در این راهنما روش عکاسی صحیح، بهترین ابزارهای تشخیص گیاه، اعتبارسنجی نتیجه و ساخت اپلیکیشن شناسایی گیاه با API درواره را یاد میگیرید.
ممکن است هنگام قدمزدن در پارک، طبیعتگردی یا خرید از گلفروشی با گیاهی روبهرو شوید که نام آن را نمیدانید. گاهی نیز یک گیاه آپارتمانی هدیه میگیرید، اما هیچ اطلاعاتی درباره گونه، میزان نور موردنیاز یا روش نگهداری آن ندارید.
در چنین شرایطی، ابزارهای تشخیص گیاه با هوش مصنوعی میتوانند تصویر برگ، گل، میوه، ساقه یا نمای کامل گیاه را تحلیل کنند و چند گونه احتمالی را پیشنهاد دهند. بعضی از این ابزارها علاوهبر نام رایج، نام علمی، تصاویر مشابه و اطلاعات کلی نگهداری را نیز نمایش میدهند.
برای مثال، میتوانید از برگ و گل یک گیاه عکس بگیرید و از یک مدل دارای قابلیت پردازش تصویر بخواهید:
این گیاه را شناسایی کن. ابتدا ویژگیهای قابلمشاهده در تصویر را توضیح بده، سپس حداکثر سه گونه احتمالی را همراه با نام فارسی و علمی، میزان اطمینان و تفاوتهای تشخیصی ارائه کن.
بااینحال، تشخیص گیاه از روی یک عکس همیشه قطعی نیست. چند گونه ممکن است برگهای بسیار مشابهی داشته باشند، گیاه ممکن است هنوز گل نداده باشد یا کیفیت عکس برای مشاهده ویژگیهای کلیدی کافی نباشد.
بنابراین استفاده درست از این ابزارها فقط به بارگذاری یک عکس و پذیرش اولین پاسخ محدود نمیشود. باید تصاویر مناسب تهیه کنید، چند نتیجه را با هم مقایسه کنید و ویژگیهای گیاه را بهصورت جداگانه کنترل کنید.
در این مقاله، روش کامل تشخیص گل و گیاه از روی عکس را بررسی میکنیم، ابزارهای معتبر را معرفی میکنیم و در بخش فنی یک نمونه ابزار شناسایی گیاه با API درواره میسازیم.
تشخیص گیاه با هوش مصنوعی چگونه کار میکند؟
سیستمهای شناسایی گیاه معمولاً تصویر ورودی را با الگوهایی که از تصاویر متعدد آموختهاند مقایسه میکنند. این الگوها میتوانند شامل ویژگیهای زیر باشند:
- شکل کلی برگ
- فرم لبه برگ
- نحوۀ قرارگیری برگها روی ساقه
- رنگ و بافت برگ
- تعداد و شکل گلبرگها
- رنگ گل
- فرم میوه
- ساختار ساقه
- الگوی پوست درخت
- فرم کلی رشد گیاه
- نسبت ابعاد اجزای مختلف
- محیطی که گیاه در آن دیده شده است
سیستم ممکن است بهجای یک پاسخ قطعی، چند نتیجه احتمالی ارائه کند. برای نمونه:
گزینه اول: شمعدانی معمولی
نام علمی: Pelargonium × hortorum
اطمینان تقریبی: متوسط
گزینه دوم: شمعدانی عطری
نام علمی: Pelargonium graveolens
اطمینان تقریبی: متوسط رو به پایین
وجود چند گزینه الزاماً به معنای ضعف کامل سیستم نیست. بسیاری از گونهها یا ارقام یک جنس، از روی یک تصویر عمومی بهسختی از هم تشخیص داده میشوند.
یک سیستم مناسب باید علاوهبر پیشنهاد نام، توضیح دهد برای تشخیص دقیقتر به چه تصویر یا اطلاعاتی نیاز دارد.
برای مثال:
- تصویر نزدیک از سطح برگ
- تصویر پشت برگ
- نمای واضح گل
- شکل اتصال برگ به ساقه
- تصویر میوه یا بذر
- ارتفاع تقریبی گیاه
- محل جغرافیایی مشاهده
- فصل ثبت تصویر
- وجود یا نبود خار
- بافت و بوی برگ
چه گیاهانی را میتوان با عکس شناسایی کرد؟
ابزارهای تشخیص تصویر میتوانند برای گروههای مختلف گیاهی استفاده شوند:
گیاهان آپارتمانی
گیاهانی مانند پتوس، سانسوریا، زامیفولیا، فیکوس، آگلونما، دیفنباخیا و انواع کاکتوس از موضوعات رایج جستوجوی تصویری هستند.
در گیاهان آپارتمانی، شباهت میان ارقام مختلف ممکن است زیاد باشد. برای مثال، دو رقم از یک گونه میتوانند فقط در نقش برگ یا شدت رنگ تفاوت داشته باشند.
گلهای زینتی
برای شناسایی گلهایی مانند رز، داوودی، شمعدانی، اطلسی، میخک و نرگس بهتر است تصویر گل و برگ را همزمان ثبت کنید. عکس گل بهتنهایی ممکن است برای تشخیص گونه یا رقم دقیق کافی نباشد.
درختان
در شناسایی درخت، تصویر برگ، پوست تنه، میوه و نمای کلی تاج درخت اهمیت دارد. یک تصویر از فاصله دور معمولاً جزئیات لازم را نشان نمیدهد.
گیاهان خودرو
گیاهان خودرو ممکن است شباهت زیادی به یکدیگر داشته باشند. ثبت محل مشاهده و چند تصویر از بخشهای مختلف میتواند دایره گزینهها را محدود کند.
کاکتوسها و ساکولنتها
برای شناسایی کاکتوس و ساکولنت، شکل بدنه، نحوۀ قرارگیری خارها، تعداد شیارها، فرم برگ و الگوی رشد اهمیت دارد. گلدان تزئینی یا سنگهای رنگی نباید بخش زیادی از تصویر را اشغال کنند.
علفهای هرز باغچه
ابزارهای تصویری میتوانند چند گزینه برای علفهای هرز پیشنهاد دهند، اما حذف یک گیاه فقط براساس تشخیص خودکار مناسب نیست. ممکن است گیاه جوان هنوز ویژگیهای بالغ خود را نشان نداده باشد.
چگونه از گیاه عکس مناسب بگیریم؟
کیفیت تشخیص به کیفیت تصویر وابسته است. یک عکس تار یا بسیار دور حتی برای مدل قدرتمند نیز اطلاعات کافی فراهم نمیکند.
از نور طبیعی استفاده کنید
نور روز معمولاً رنگ و بافت گیاه را بهتر نشان میدهد. از نور مستقیم شدید، سایههای عمیق و فلاش نزدیک خودداری کنید.
اگر خورشید پشت گیاه باشد، برگها ممکن است به شکل سایه تیره ثبت شوند. زاویه خود را تغییر دهید تا نور از کنار یا پشت دوربین به گیاه برسد.
دوربین را روی بخش اصلی متمرکز کنید
مطمئن شوید برگ یا گل واضح است. پیش از گرفتن عکس، روی سوژه ضربه بزنید تا دوربین فوکوس کند.
پسزمینه را ساده نگه دارید
اگر گیاه کوچک است، یک کاغذ ساده پشت برگ یا گل قرار دهید. پسزمینه شلوغ ممکن است تشخیص مرزهای گیاه را دشوار کند.
فقط یک عکس نگیرید
برای تشخیص بهتر، مجموعهای از تصاویر تهیه کنید:
- نمای کامل گیاه
- تصویر نزدیک از برگ
- پشت برگ
- محل اتصال برگ به ساقه
- نمای نزدیک گل
- تصویر میوه یا بذر، در صورت وجود
- ساقه یا پوست تنه
- تصویر گیاه در محیط اطراف
Pl@ntNet نیز برای شناسایی گیاه از تصاویر بخشهایی مانند برگ، گل، میوه، ساقه یا پوست استفاده میکند و نتایج مشابه را برای بررسی کاربر پیشنهاد میدهد. منبع رسمی Pl@ntNet
مقیاس را مشخص کنید
بدون مقیاس، مدل ممکن است اندازه برگ یا گل را اشتباه برداشت کند. میتوانید اندازه تقریبی را در متن بنویسید:
طول برگ تقریباً ۱۲ سانتیمتر است.
قطر گل حدود ۵ سانتیمتر است.
ارتفاع کل گیاه تقریباً ۸۰ سانتیمتر است.
عکس را بیش از حد ویرایش نکنید
فیلترهای رنگی، افزایش شدید اشباع و محوکردن پسزمینه ممکن است ویژگیهای واقعی گیاه را تغییر دهند. بهتر است نسخه اصلی تصویر را استفاده کنید.
آموزش تشخیص گیاه با Google Lens
Google Lens یکی از سادهترین ابزارهای جستوجوی تصویری است. این سرویس میتواند تصویر را تحلیل و نمونههای مشابه را در وب پیدا کند. گوگل بهصورت رسمی قابلیت شناسایی گیاهان و حیوانات را از کاربردهای Lens معرفی کرده است. Google Lens
روش استفاده:
- برنامه Google یا Google Photos را باز کنید.
- تصویر گیاه را انتخاب کنید.
- روی آیکون Lens بزنید.
- کادر انتخاب را روی خود گیاه تنظیم کنید.
- نتایج تصویری و نامهای پیشنهادی را بررسی کنید.
- چند تصویر مشابه را باز کنید.
- شکل برگ، گل و ساقه را با گیاه واقعی مقایسه کنید.
اگر در تصویر چند گیاه وجود دارد، محدوده انتخاب را فقط روی گیاه موردنظر قرار دهید.
مزایای Google Lens
- استفاده آسان
- جستوجوی مستقیم با دوربین یا عکس
- نمایش تصاویر مشابه
- مناسب برای شناسایی اولیه
- دسترسی از طریق بعضی برنامههای گوگل
- مناسب برای اشیاء و موضوعات دیگر نیز
محدودیتهای Google Lens
- ممکن است نتیجه را از روی شباهت ظاهری انتخاب کند.
- همیشه نام علمی دقیق ارائه نمیشود.
- تصاویر فروشگاهی یا محتوای نامعتبر ممکن است در نتایج دیده شوند.
- برای گونههای بسیار مشابه به اطلاعات تکمیلی نیاز دارد.
- درصد اطمینان استانداردی برای تمام نتایج نمایش نمیدهد.
آموزش تشخیص گیاه با Pl@ntNet
Pl@ntNet یک پروژه علوم شهروندی برای شناسایی گیاهان از روی تصویر است. این سرویس در نسخه وب و اپلیکیشن موبایل در دسترس قرار دارد و بر ثبت و شناخت تنوع گیاهی تمرکز میکند. وبسایت رسمی Pl@ntNet
روش کلی استفاده:
- برنامه یا نسخه وب Pl@ntNet را باز کنید.
- عکس گیاه را بارگذاری کنید.
- نوع بخش گیاه را مشخص کنید؛ مانند برگ، گل، میوه یا پوست.
- در صورت امکان، چند تصویر اضافه کنید.
- محدودۀ جغرافیایی یا مجموعۀ گیاهی مناسب را انتخاب کنید.
- فهرست گونههای پیشنهادی را بررسی کنید.
- تصاویر مرجع را با گیاه خود مقایسه کنید.
- فقط در صورت تطابق چند ویژگی، نتیجه را بپذیرید.
چرا انتخاب بخش گیاه مهم است؟
اگر تصویر برگ را بهعنوان گل ثبت کنید، مقایسه ممکن است بهدرستی انجام نشود. نوع عضو گیاه به سیستم کمک میکند ویژگیهای مرتبط را بررسی کند.
Pl@ntNet برای چه کاری مناسب است؟
- شناسایی گیاهان طبیعت
- گیاهان خودرو
- درختان و درختچهها
- ثبت مشاهدات گیاهی
- مقایسه چند گونه مشابه
- دسترسی به نام علمی و تصاویر مرجع
تمرکز اصلی Pl@ntNet بر گیاهان مشاهدهشده در طبیعت است؛ هرچند تعداد زیادی از گیاهان پرورشی نیز ممکن است شناسایی شوند. توضیحات رسمی برنامه در Google Play
تشخیص گیاه با Seek و iNaturalist
Seek برنامهای از مجموعه iNaturalist است که از فناوری تشخیص تصویر برای شناسایی گیاهان، جانوران و قارچها استفاده میکند. کاربر میتواند دوربین را به سمت موجود زنده بگیرد و نتیجه احتمالی را مشاهده کند. صفحه رسمی Seek
iNaturalist علاوهبر پیشنهاد ماشینی، یک جامعۀ طبیعتشناسی نیز دارد. کاربران میتوانند مشاهده خود را ثبت کنند و در بعضی شرایط از مشارکت دیگر کاربران برای رسیدن به شناسایی دقیقتر بهره بگیرند. وبسایت رسمی iNaturalist
Seek برای چه افرادی مناسب است؟
- علاقهمندان طبیعت
- دانشآموزان
- خانوادهها
- کاربران تازهکار
- افرادی که میخواهند مشاهدات محیطی را ثبت کنند
تفاوت Seek و iNaturalist
Seek بیشتر برای تشخیص سریع و تجربۀ آموزشی طراحی شده است. iNaturalist بر ثبت مشاهده، دادههای مکانی و مشارکت جامعۀ کاربران تمرکز بیشتری دارد.
استفاده از PictureThis برای شناسایی گیاه
PictureThis یک اپلیکیشن تخصصی برای شناسایی گیاهان است. این برنامه علاوهبر تشخیص نام گیاه، امکاناتی مانند راهنمای نگهداری و ثبت گیاهان را ارائه میکند. وبسایت رسمی PictureThis
هنگام نصب، شرایط نسخۀ رایگان، اشتراک و تمدید خودکار را بررسی کنید. قابلیتهای قابلاستفاده بدون پرداخت ممکن است در طول زمان یا براساس سیستمعامل تغییر کنند.
قابلیتهای رایج PictureThis
- شناسایی گیاه از روی عکس
- نمایش نام رایج و علمی
- ارائۀ اطلاعات عمومی گیاه
- نگهداری فهرست گیاهان
- یادآوری بعضی فعالیتهای مراقبتی
- پیشنهاد بررسی بخشهای مختلف گیاه
ادعاهای دقت اعلامشده در صفحۀ یک سرویس را نباید برای تمام تصاویر، مناطق و گونهها قطعی در نظر گرفت. عملکرد واقعی به کیفیت عکس و نوع گیاه بستگی دارد.
مقایسه ابزارهای تشخیص گیاه
| ابزار | کاربرد اصلی | نقطه قوت | محدودیت |
|---|---|---|---|
| Google Lens | جستوجوی تصویری عمومی | سریع و ساده | نتیجه همیشه گونه دقیق نیست |
| Pl@ntNet | شناسایی گیاهان و علوم شهروندی | تصاویر مرجع و تمرکز گیاهی | نیازمند انتخاب و بررسی نتیجه |
| Seek | شناسایی طبیعت با دوربین | تجربۀ ساده و آموزشی | ممکن است فقط تا سطح جنس تشخیص دهد |
| iNaturalist | ثبت مشاهده و کمک جامعه | امکان بررسی توسط کاربران | پاسخ جامعه ممکن است فوری نباشد |
| PictureThis | مدیریت و شناسایی گیاهان | رابط تخصصی گیاه | برخی قابلیتها ممکن است اشتراکی باشند |
| مدل چندوجهی | تحلیل تصویر همراه با گفتوگو | امکان پرسیدن سؤال تکمیلی | ممکن است نام علمی را اشتباه تولید کند |
استفاده از مدلهای چندوجهی برای تشخیص گیاه
مدل چندوجهی یا Multimodal Model میتواند هم تصویر و هم متن را دریافت کند. مزیت اصلی این مدلها امکان گفتوگوی مرحلهای است.
میتوانید ابتدا تصویر را ارسال کنید و سپس بپرسید:
- چه ویژگیهایی در تصویر دیده میشود؟
- برای تشخیص دقیقتر از کدام بخش عکس بگیرم؟
- چه گونههایی شبیه این گیاه هستند؟
- تفاوت گزینه اول و دوم چیست؟
- آیا نتیجه فقط تا سطح جنس قابلاعتماد است؟
- نامهای رایج فارسی این گیاه چیست؟
- چه اطلاعاتی برای ردکردن گزینههای دیگر لازم است؟
بهتر است مدل را مجبور نکنید حتماً یک نام قطعی ارائه کند. پرامپت باید اجازۀ اعلام عدم اطمینان را بدهد.
پرامپت نامناسب:
نام دقیق این گیاه چیست؟
پرامپت بهتر:
تصویر را بررسی کن، اما اگر اطلاعات کافی نیست نام قطعی اعلام نکن. ابتدا ویژگیهای قابلمشاهده را استخراج کن، سپس حداکثر سه گزینه احتمالی بده و برای هر گزینه شواهد موافق، شواهد مخالف و تصویر تکمیلی موردنیاز را مشخص کن.
پرامپت کامل تشخیص گیاه از روی عکس
نقش تو دستیار شناسایی تصویری گیاهان است.
تصویر پیوستشده را بررسی کن. نتیجه را قطعی فرض نکن و مراحل زیر را انجام بده:
1. ویژگیهای قابلمشاهده را بدون حدس توضیح بده:
- فرم برگ
- لبه برگ
- رگبرگ
- رنگ
- نوع ساقه
- گل یا میوه
- فرم کلی رشد
2. حداکثر سه گونه یا جنس احتمالی پیشنهاد بده.
3. برای هر گزینه بنویس:
- نام فارسی رایج
- نام انگلیسی
- نام علمی احتمالی
- شواهد موافق
- شواهد مخالف
- سطح اطمینان: کم، متوسط یا زیاد
4. تفاوتهای تشخیصی گزینهها را توضیح بده.
5. مشخص کن برای افزایش دقت از کدام بخشهای گیاه عکس بگیرم.
اگر تصویر کافی نیست، بهجای انتخاب اجباری یک گونه، صریحاً اعلام کن که تشخیص دقیق ممکن نیست.
پرامپت تشخیص درخت از روی عکس
این تصاویر مربوط به یک درخت هستند:
- تصویر نمای کامل
- برگ
- پوست تنه
- میوه یا بذر
محل مشاهده:
[شهر یا استان]
فصل:
[فصل]
ارتفاع تقریبی:
[ارتفاع]
براساس تصاویر و اطلاعات، سه گزینه احتمالی ارائه کن. برای هر گزینه نام فارسی، نام علمی، ویژگیهای تطبیقیافته و ویژگیهایی که هنوز باید بررسی شوند را بنویس. نتیجه را قطعی اعلام نکن.
پرامپت شناسایی گیاه آپارتمانی
گیاه آپارتمانی موجود در تصویر را بررسی کن.
اطلاعات تکمیلی:
- ارتفاع: [مقدار]
- اندازۀ برگ: [مقدار]
- بافت برگ: [نازک/ضخیم/چرمی]
- وجود شیره: [بله/خیر/نامشخص]
- وجود گل: [توضیح]
- شکل رشد: [ایستاده/رونده/بوتهای]
ابتدا جنس احتمالی گیاه را مشخص کن. فقط در صورت وجود شواهد کافی گونه یا رقم را پیشنهاد بده. تفاوت میان گزینهها و عکسهای تکمیلی موردنیاز را توضیح بده.
چگونه نتیجۀ تشخیص را اعتبارسنجی کنیم؟
نام علمی را جداگانه جستوجو کنید
نام علمی پیشنهادی را جستوجو و تصاویر منابع مختلف را بررسی کنید. فقط به یک تصویر شبیه اکتفا نکنید.
چند ویژگی را همزمان مقایسه کنید
برای تأیید نتیجه، دستکم چند ویژگی مستقل را مقایسه کنید:
- فرم و آرایش برگ
- شکل لبه برگ
- نوع گل
- تعداد گلبرگ
- ساختار ساقه
- شکل میوه
- ارتفاع و الگوی رشد
- فصل گلدهی
- محل جغرافیایی
از چند ابزار استفاده کنید
یک تصویر را در دو یا سه ابزار مستقل بررسی کنید. اگر نتایج متفاوت بودند، علت اختلاف را تحلیل کنید.
توافق چند ابزار نیز تضمین قطعی نیست؛ زیرا ممکن است همه ابزارها بهدلیل شباهت ظاهری یک اشتباه مشابه انجام دهند.
تصاویر بیشتری تهیه کنید
اگر ابزار فقط براساس برگ نتیجه داده است، گل، ساقه، میوه یا نمای کامل را نیز اضافه کنید.
از فرد متخصص کمک بگیرید
برای موارد مهم مانند تشخیص گونههای نادر، گیاهان بالقوه آسیبرسان یا تصمیمهای مرتبط با مصرف، دام و محیطزیست، نظر کارشناس گیاهشناسی یا مرکز معتبر ضروری است.
چرا هوش مصنوعی گیاه را اشتباه تشخیص میدهد؟
گونههای ظاهراً مشابه
بعضی گیاهان فقط در جزئیاتی مانند شکل کرک، رگبرگ، ساختار گل یا ویژگیهای میکروسکوپی متفاوتاند.
تصویر گیاه نابالغ
برگ و فرم رشد گیاه جوان ممکن است با نمونۀ بالغ فرق داشته باشد.
نبود گل یا میوه
در بسیاری از گونهها، برگ بهتنهایی برای تشخیص کافی نیست.
نور یا رنگ نامناسب
نور مصنوعی و فیلترهای دوربین میتوانند رنگ واقعی را تغییر دهند.
پوشیدهبودن بخشهای مهم
ممکن است زاویۀ تصویر، محل اتصال برگ یا ساختار گل را پنهان کند.
پسزمینۀ شلوغ
وجود چند گیاه، گلدانهای طرحدار یا اشیای متعدد میتواند توجه مدل را از سوژۀ اصلی منحرف کند.
اطلاعات جغرافیایی ناکافی
دو گیاه مشابه ممکن است در مناطق متفاوت رشد کنند. موقعیت تقریبی مشاهده میتواند به محدودکردن گزینهها کمک کند.
واریتهها و گیاهان پرورشی
ارقام پرورشی ممکن است رنگ و شکل متفاوتی با نمونههای طبیعی داشته باشند و با گونه دیگری اشتباه شوند.
آیا میتوان بیماری گیاه را از روی عکس تشخیص داد؟
بعضی ابزارها میتوانند نشانههایی مانند زردشدگی، لکه برگ، سوختگی لبه، افتادگی یا وجود آفت قابلمشاهده را تحلیل کنند. اما این نشانهها ممکن است علتهای مختلفی داشته باشند.
برای مثال، زردشدن برگ میتواند با عوامل متفاوتی مرتبط باشد:
- آبیاری نامناسب
- زهکشی ضعیف
- تغییر نور
- جابهجایی گیاه
- شرایط نامناسب ریشه
- کمبود یا عدم تعادل بعضی مواد
- آفت
- بیماری
- پیرشدن طبیعی برگ
یک عکس معمولاً برای تفکیک تمام این علتها کافی نیست. اگر از هوش مصنوعی کمک میگیرید، اطلاعات زمینهای را نیز ارائه کنید:
این گیاه در دو هفته اخیر زرد شده است.
اطلاعات:
- فاصله آبیاری: هر پنج روز
- نور: کنار پنجره شرقی
- گلدان: دارای سوراخ زهکشی
- زمان تعویض گلدان: سه ماه قبل
- برگهای درگیر: برگهای پایینی
- وجود حشره: مشاهده نشده
- تصویر روی برگ و پشت برگ پیوست شده است
علت قطعی اعلام نکن. چند احتمال را براساس شواهد مرتب کن و بگو برای بررسی هر احتمال چه اطلاعاتی لازم است.
از پیشنهادهای خودکار برای مصرف مواد شیمیایی یا ترکیب چند محصول استفاده نکنید. ابتدا علت باید بهدرستی مشخص شود و دستور محصول نیز باید رعایت شود.
آیا میتوان به تشخیص خوراکیبودن گیاه اعتماد کرد؟
خیر. هیچ گیاه، میوه وحشی، برگ، قارچ یا بذر ناشناختهای را فقط براساس پاسخ یک اپلیکیشن یا مدل هوش مصنوعی مصرف نکنید.
گونههای خوراکی و غیرخوراکی ممکن است بسیار شبیه باشند. اشتباه در این حوزه میتواند پیامد جدی داشته باشد. حتی اگر چند ابزار یک نام مشابه ارائه کردند، این نتیجه جایگزین شناسایی حضوری توسط متخصص واجد صلاحیت نیست.
هوش مصنوعی را برای یادگیری و محدودکردن گزینهها به کار ببرید، نه برای تصمیم قطعی درباره خوردن، لمسکردن یا مصرف درمانی گیاه ناشناخته.
ساخت ابزار تشخیص گیاه با API درواره
درواره یک برنامۀ آماده شناسایی گیاه نیست. درواره زیرساخت API هوش مصنوعی را ارائه میدهد تا توسعهدهندگان بتوانند قابلیت تحلیل تصویر را در سایت، ربات یا اپلیکیشن خود پیادهسازی کنند.
برای ساخت این ابزار به مدلی نیاز دارید که ورودی تصویر یا Vision را پشتیبانی کند. مدل مناسب و Model ID دقیق را از صفحه مدلها و قیمتهای درواره انتخاب کنید.
مراحل کلی:
- در درواره ثبتنام کنید.
- API Key بسازید.
- یک مدل دارای قابلیت تحلیل تصویر انتخاب کنید.
- تصویر را به URL قابلدسترسی یا داده Base64 تبدیل کنید.
- تصویر و پرامپت را به مدل ارسال کنید.
- پاسخ را اعتبارسنجی کنید.
- چند گزینۀ احتمالی را به کاربر نمایش دهید.
- برای دریافت عکسهای تکمیلی رابط مناسبی طراحی کنید.
در نمونههای زیر، YOUR_MODEL_ID را با شناسه مدل درواره جایگزین کنید.
نمونه درخواست با cURL
curl https://api.darvareh.ir/v1/chat/completions \
-H "Authorization: Bearer $DARVAREH_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "YOUR_MODEL_ID",
"messages": [
{
"role": "system",
"content": "تو یک دستیار تحلیل تصویر گیاهان هستی. هیچ تشخیصی را قطعی اعلام نکن. ویژگیهای قابل مشاهده، گزینههای احتمالی و تصاویر تکمیلی موردنیاز را بنویس."
},
{
"role": "user",
"content": [
{
"type": "text",
"text": "این گیاه را بررسی کن. حداکثر سه گزینه احتمالی با نام علمی، شواهد موافق، شواهد مخالف و سطح اطمینان ارائه بده."
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/plant-photo.jpg"
}
}
]
}
],
"temperature": 0.2
}'
آدرس تصویر باید برای سرویس قابلدسترسی باشد. برای تصاویر خصوصی میتوانید در صورت پشتیبانی مدل و SDK، داده تصویر را بهصورت Base64 ارسال کنید.
نمونه Python با تصویر آنلاین
ابتدا کتابخانه را نصب کنید:
pip install openai
کد:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["DARVAREH_API_KEY"],
base_url="https://api.darvareh.ir/v1"
)
response = client.chat.completions.create(
model="YOUR_MODEL_ID",
messages=[
{
"role": "system",
"content": (
"تو دستیار شناسایی تصویری گیاهان هستی. "
"ابتدا مشاهدات را از استنتاج جدا کن. "
"اگر تصویر کافی نیست، نام قطعی ارائه نده. "
"حداکثر سه گزینه و روش بررسی آنها را بنویس."
)
},
{
"role": "user",
"content": [
{
"type": "text",
"text": (
"این گیاه در تهران و در فصل بهار دیده شده است. "
"ارتفاع آن حدود ۶۰ سانتیمتر و طول برگ حدود ۸ سانتیمتر است. "
"ویژگیها را استخراج و گزینههای احتمالی را مقایسه کن."
)
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/plant.jpg"
}
}
]
}
],
temperature=0.2
)
print(response.choices[0].message.content)
کلید API را در کد قرار ندهید. آن را در متغیر محیطی DARVAREH_API_KEY نگه دارید.
ارسال تصویر Base64 با Python
import os
import base64
from pathlib import Path
from openai import OpenAI
client = OpenAI(
api_key=os.environ["DARVAREH_API_KEY"],
base_url="https://api.darvareh.ir/v1"
)
image_path = Path("plant.jpg")
image_bytes = image_path.read_bytes()
image_base64 = base64.b64encode(image_bytes).decode("utf-8")
data_url = f"data:image/jpeg;base64,{image_base64}"
response = client.chat.completions.create(
model="YOUR_MODEL_ID",
messages=[
{
"role": "system",
"content": (
"تو یک دستیار تحلیل تصویر گیاهان هستی. "
"مشاهدات قابل رؤیت را از حدس جدا کن و عدم قطعیت را اعلام کن."
)
},
{
"role": "user",
"content": [
{
"type": "text",
"text": (
"تصویر را بررسی کن. سه گزینه احتمالی ارائه بده و "
"برای افزایش دقت بگو از کدام بخشهای گیاه عکس بگیرم."
)
},
{
"type": "image_url",
"image_url": {
"url": data_url
}
}
]
}
],
temperature=0.2
)
print(response.choices[0].message.content)
پشتیبانی از تصویر Base64، قالب دقیق ورودی و حداکثر اندازۀ فایل ممکن است میان مدلها متفاوت باشد. پیش از پیادهسازی، مشخصات مدل انتخابشده را بررسی کنید.
طراحی خروجی JSON برای اپلیکیشن
برای نمایش نتایج در رابط کاربری، خروجی ساختیافته مناسبتر از متن آزاد است.
نمونۀ خروجی:
{
"observations": {
"leaf_shape": "بیضی کشیده",
"leaf_margin": "صاف",
"leaf_arrangement": "متقابل",
"flower_color": "بنفش",
"stem_type": "علفی"
},
"candidates": [
{
"common_name_fa": "نام احتمالی گیاه",
"common_name_en": "Possible common name",
"scientific_name": "Genus species",
"confidence": "medium",
"supporting_evidence": [
"شکل برگ مشابه است",
"رنگ گل با نمونههای مرجع تطابق دارد"
],
"conflicting_evidence": [
"جزئیات پشت برگ در تصویر مشخص نیست"
]
}
],
"required_photos": [
"پشت برگ",
"محل اتصال برگ به ساقه",
"نمای نزدیک گل"
],
"identification_status": "needs_more_evidence"
}
System Prompt پیشنهادی:
خروجی را فقط به شکل JSON معتبر تولید کن.
قواعد:
- حداکثر سه گزینه ارائه بده.
- confidence فقط یکی از low، medium یا high باشد.
- اگر شواهد کافی نیست، identification_status را needs_more_evidence قرار بده.
- نام علمی را در صورت عدم اطمینان null قرار بده.
- از تولید نام علمی ساختگی خودداری کن.
- مشاهدات تصویری را از استنتاج جدا نگه دار.
اگر مدل انتخابشده از Structured Outputs یا JSON Schema پشتیبانی میکند، Schema را در سطح API تعریف کنید تا ساختار پاسخ قابلاعتمادتر شود.
معماری پیشنهادی اپلیکیشن شناسایی گیاه
یک نسخۀ کاربردی میتواند این اجزا را داشته باشد:
رابط ثبت مشاهده
کاربر اطلاعات زیر را وارد میکند:
- تصویر نمای کامل
- تصویر برگ
- تصویر گل
- تصویر ساقه یا تنه
- شهر یا منطقۀ تقریبی
- فصل
- ارتفاع گیاه
- اندازۀ برگ
- توضیحات تکمیلی
پردازش تصویر
پیش از ارسال:
- نوع فایل بررسی شود.
- حجم تصویر محدود شود.
- جهت تصویر اصلاح شود.
- ابعاد بسیار بزرگ کاهش پیدا کند.
- نسخۀ اصلی حفظ شود.
- اطلاعات مکانی حساس تصویر در صورت نیاز حذف شود.
تحلیل با مدل چندوجهی
مدل تصاویر و متن را دریافت و این اطلاعات را تولید میکند:
- ویژگیهای قابلمشاهده
- نامهای احتمالی
- میزان اطمینان
- شواهد موافق و مخالف
- تصاویر تکمیلی موردنیاز
مقایسه با پایگاه داده
برای افزایش قابلیت اعتماد، نام علمی پیشنهادی مدل باید با یک فهرست کنترلشده از نامهای گیاهی تطبیق داده شود. این کار از نمایش نامهای ساختگی یا غلط املایی جلوگیری میکند.
نمایش نتیجه
بهجای نمایش یک پاسخ قطعی، رابط کاربری بهتر است چند کارت نتیجه نشان دهد:
- نام فارسی
- نام علمی
- تصویر مرجع
- میزان تطابق
- ویژگیهای کلیدی
- موارد نیازمند بررسی
- دکمۀ افزودن تصویر جدید
نمونه طراحی Backend با FastAPI
ابتدا وابستگیها را نصب کنید:
pip install fastapi uvicorn python-multipart openai
نمونۀ ساده:
import os
import base64
from fastapi import FastAPI, UploadFile, File, Form, HTTPException
from openai import OpenAI
app = FastAPI()
client = OpenAI(
api_key=os.environ["DARVAREH_API_KEY"],
base_url="https://api.darvareh.ir/v1"
)
ALLOWED_TYPES = {"image/jpeg", "image/png", "image/webp"}
MAX_FILE_SIZE = 8 * 1024 * 1024
@app.post("/identify-plant")
async def identify_plant(
image: UploadFile = File(...),
location: str = Form("نامشخص"),
season: str = Form("نامشخص"),
description: str = Form("")
):
if image.content_type not in ALLOWED_TYPES:
raise HTTPException(
status_code=400,
detail="فرمت تصویر پشتیبانی نمیشود."
)
content = await image.read()
if len(content) > MAX_FILE_SIZE:
raise HTTPException(
status_code=400,
detail="حجم تصویر بیش از حد مجاز است."
)
encoded = base64.b64encode(content).decode("utf-8")
data_url = f"data:{image.content_type};base64,{encoded}"
prompt = f"""
تصویر گیاه را تحلیل کن.
محل مشاهده: {location}
فصل: {season}
توضیحات کاربر: {description}
ابتدا ویژگیهای قابلمشاهده را بنویس.
سپس حداکثر سه گزینه احتمالی ارائه بده.
برای هر گزینه نام فارسی، نام علمی احتمالی، شواهد موافق،
شواهد مخالف و سطح اطمینان را مشخص کن.
اگر اطلاعات کافی نیست، تصاویر تکمیلی موردنیاز را اعلام کن.
"""
response = client.chat.completions.create(
model="YOUR_MODEL_ID",
messages=[
{
"role": "system",
"content": (
"تو دستیار شناسایی تصویری گیاهان هستی. "
"نتیجه را قطعی اعلام نکن و نام علمی ساختگی تولید نکن."
)
},
{
"role": "user",
"content": [
{
"type": "text",
"text": prompt
},
{
"type": "image_url",
"image_url": {
"url": data_url
}
}
]
}
],
temperature=0.2
)
return {
"filename": image.filename,
"result": response.choices[0].message.content
}
اجرای برنامه:
uvicorn main:app --reload
این کد یک نمونۀ آموزشی است. در محصول واقعی باید مدیریت خطا، اعتبارسنجی محتوای فایل، محدودیت درخواست، ثبت گزارش و کنترل خروجی مدل را نیز اضافه کنید.
نکات حریم خصوصی تصاویر
تصویر گیاه ممکن است اطلاعات دیگری نیز در پسزمینه داشته باشد:
- چهرۀ افراد
- پلاک خودرو
- آدرس
- فضای خصوصی خانه
- اطلاعات مکانی ذخیرهشده در فایل
- مدارک یا نوشتههای قابلمشاهده
پیش از بارگذاری:
- تصویر را برش دهید.
- افراد و اطلاعات خصوصی را حذف کنید.
- فقط بخش موردنیاز گیاه را نگه دارید.
- در صورت عدم نیاز، Metadata مکانی تصویر را حذف کنید.
- سیاست نگهداری تصویر در سرویس موردنظر را بررسی کنید.
اشتباهات رایج در تشخیص گیاه از روی عکس
پذیرش اولین نتیجه
اولین نتیجه لزوماً دقیقترین گزینه نیست. تصاویر و ویژگیهای چند نتیجه را مقایسه کنید.
ارسال فقط نمای کامل
نمای کامل فرم رشد را نشان میدهد، اما جزئیات برگ و گل در آن مشخص نیست. عکس نزدیک نیز تهیه کنید.
استفاده از عکس اینترنتی بهجای گیاه واقعی
ممکن است عکس اینترنتی مربوط به گونه یا رقم دیگری باشد. برای تشخیص، تصاویر خود گیاه را ارسال کنید.
اعلام نام قطعی با وجود اطمینان پایین
اگر شواهد کافی نیست، نتیجه باید در سطح جنس یا خانواده باقی بماند. انتخاب یک گونه مشخص بدون شواهد کافی میتواند گمراهکننده باشد.
نادیدهگرفتن مکان و فصل
محل مشاهده و فصل میتوانند برای محدودکردن گزینهها مفید باشند.
استفاده از نام رایج بهتنهایی
یک نام رایج ممکن است برای چند گیاه استفاده شود. نام علمی پیشنهادی را نیز بررسی کنید.
اعتماد به درصدهای تبلیغاتی
دقت کلی اعلامشده برای یک ابزار، تضمینکنندۀ دقت همان ابزار برای تصویر شما نیست. گونه، منطقه، کیفیت عکس و مرحلۀ رشد گیاه بر نتیجه اثر میگذارند.
چکلیست تشخیص گل و گیاه با هوش مصنوعی
پیش از پذیرش نتیجه بررسی کنید:
- تصویر واضح و بدون تاری است.
- نمای کامل گیاه ثبت شده است.
- از برگ عکس نزدیک دارید.
- پشت برگ نیز مشخص است.
- گل یا میوه، در صورت وجود، ثبت شده است.
- ساقه یا پوست تنه قابلمشاهده است.
- اندازۀ تقریبی نوشته شده است.
- محل و فصل مشاهده مشخص است.
- چند گزینۀ احتمالی بررسی شدهاند.
- نام علمی جداگانه جستوجو شده است.
- تصاویر منابع مختلف با گیاه مقایسه شدهاند.
- نتیجه برای تصمیم حساس یا مصرف استفاده نمیشود.
پرسشهای متداول
چگونه با عکس نام گل را پیدا کنیم؟
از گل، برگ و نمای کامل گیاه تصاویر واضح بگیرید و آنها را در Google Lens، Pl@ntNet یا یک مدل دارای قابلیت تحلیل تصویر بارگذاری کنید. سپس چند نتیجۀ احتمالی را با گیاه واقعی مقایسه کنید.
بهترین برنامه تشخیص گل و گیاه چیست؟
انتخاب ابزار به هدف شما بستگی دارد. Google Lens برای جستوجوی سریع، Pl@ntNet برای شناسایی تخصصیتر گیاهان، Seek برای تجربۀ آموزشی و iNaturalist برای ثبت مشاهده و مشارکت جامعه مناسب است.
آیا برنامه تشخیص گیاه فارسی وجود دارد؟
بعضی ابزارها رابط یا نتایج فارسی ارائه میکنند و مدلهای چندوجهی نیز میتوانند توضیحات را به فارسی تولید کنند. بااینحال، نام علمی گیاه برای اعتبارسنجی نتیجه اهمیت بیشتری دارد.
آیا Google Lens میتواند گیاه را تشخیص دهد؟
بله. گوگل شناسایی گیاهان و حیوانات را یکی از کاربردهای رسمی Lens معرفی کرده است. بااینحال، نتیجه باید با تصاویر و ویژگیهای منابع دیگر مقایسه شود.
آیا میتوان درخت را از روی برگ تشخیص داد؟
گاهی ممکن است، اما برگ بهتنهایی همیشه کافی نیست. تصویر پوست تنه، میوه، جوانه، آرایش برگها و فرم کلی درخت میتواند دقت را افزایش دهد.
آیا هوش مصنوعی میتواند نوع کاکتوس را تشخیص دهد؟
بله، اما تشخیص رقم یا گونه دقیق ممکن است دشوار باشد. از نمای کامل، خارها، شیارهای بدنه، گل و الگوی رشد عکس بگیرید.
آیا میتوان گیاه سمی را با هوش مصنوعی تشخیص داد؟
ابزار ممکن است یک نام احتمالی پیشنهاد کند، اما نباید برای تصمیمگیری قطعی درباره سمیت، خوردن یا لمس گیاه ناشناخته فقط به تشخیص خودکار اعتماد کرد.
آیا میتوان اپلیکیشن تشخیص گیاه ساخت؟
بله. با یک مدل چندوجهی، API درواره، Backend و رابط بارگذاری تصویر میتوانید ویژگیهای قابلمشاهده و چند نام احتمالی را استخراج کنید. برای دقت بیشتر، خروجی باید با پایگاه داده معتبر گیاهان تطبیق داده شود.
هزینه استفاده از مدل تصویری چقدر است؟
هزینه به مدل، اندازۀ تصویر، تعداد تصاویر، طول ورودی و خروجی بستگی دارد. برای مشاهده مدلهای دارای قابلیت Vision و قیمت بهروز، صفحه مدلهای درواره را بررسی کنید.
جمعبندی
تشخیص گیاه با هوش مصنوعی یکی از کاربردهای مفید پردازش تصویر است. ابزارهایی مانند Google Lens، Pl@ntNet، Seek، iNaturalist و PictureThis میتوانند تصویر گیاه را تحلیل و چند نام احتمالی پیشنهاد کنند.
برای رسیدن به نتیجۀ بهتر باید از نمای کامل، برگ، پشت برگ، گل، میوه و ساقه عکس بگیرید. همچنین واردکردن محل، فصل و اندازۀ تقریبی میتواند به محدودکردن گزینهها کمک کند.
پاسخ هوش مصنوعی را یک فرضیۀ اولیه در نظر بگیرید، نه شناسایی قطعی. نام علمی، تصاویر مرجع و ویژگیهای تشخیصی باید جداگانه بررسی شوند. در موارد حساس نیز تأیید متخصص ضروری است.
اگر قصد دارید امکان شناسایی گیاه را به سایت، ربات یا اپلیکیشن خود اضافه کنید، میتوانید در درواره ثبتنام کنید، یک مدل دارای قابلیت تحلیل تصویر انتخاب کنید و نمونه اولیه محصول خود را با API سازگار با OpenAI بسازید.
مقالات مرتبط
- بهترین اپلیکیشنهای هوش مصنوعی برای اندروید و آیفون
- حل سؤال از روی عکس با هوش مصنوعی
- تبدیل عکس به متن با هوش مصنوعی و OCR
- ویرایش عکس با هوش مصنوعی؛ آموزش کامل
- افزایش کیفیت عکس با هوش مصنوعی
- بهترین ابزارهای هوش مصنوعی فارسی
برای مطالعه شرایط استفاده و محدودیتهای مسئولیت، صفحه «سلب مسئولیت» را مشاهده کنید.