فهرست مطالب:

ایجاد طبقه بندی کننده تصویر OpenCV با استفاده از پایتون: 7 مرحله
ایجاد طبقه بندی کننده تصویر OpenCV با استفاده از پایتون: 7 مرحله

تصویری: ایجاد طبقه بندی کننده تصویر OpenCV با استفاده از پایتون: 7 مرحله

تصویری: ایجاد طبقه بندی کننده تصویر OpenCV با استفاده از پایتون: 7 مرحله
تصویری: هوش مصنوعی خودتو با پایتون در ۱۵ دقیقه بساز !!! 2024, جولای
Anonim
ایجاد طبقه بندی کننده تصویر OpenCV با استفاده از پایتون
ایجاد طبقه بندی کننده تصویر OpenCV با استفاده از پایتون

طبقه بندی Haar در پایتون و opencv کار بسیار دشواری است اما آسان است.

ما اغلب در تشخیص و طبقه بندی تصویر با مشکلاتی روبرو هستیم. بهترین راه حل این است که طبقه بندی کننده خود را ایجاد کنید. در اینجا ما یاد می گیریم که طبقه بندی کننده تصویر خود را با چند دستور و برنامه های طولانی و در عین حال ساده پایتون بسازیم

طبقه بندی نیاز به تعداد زیادی از تصاویر منفی و مثبت دارد که نگاتیوها شیء مورد نیاز را ندارند ، در حالی که موارد مثبت آن شیئی هستند که باید شناسایی شوند.

حدود 2000 مورد منفی و مثبت مورد نیاز است. برنامه پایتون تصویر را به مقیاس خاکستری و اندازه مناسب تبدیل می کند تا طبقه بندی کننده ها زمان بهینه را برای ایجاد آن صرف کنند.

مرحله 1: نرم افزارهای مورد نیاز

برای ایجاد طبقه بندی کننده خود به نرم افزارهای زیر نیاز دارید

1) OpenCV: نسخه ای که من استفاده کردم 3.4.2 است. نسخه به راحتی در اینترنت در دسترس است

2) پایتون: نسخه مورد استفاده 3.6.2 است. قابل بارگیری از python.org

علاوه بر این ، شما به یک وب کم (البته) نیاز دارید.

مرحله 2: بارگیری تصاویر

اولین قدم این است که تصویری واضح از شیء طبقه بندی شده بگیرید.

اندازه نباید بسیار بزرگ باشد زیرا زمان بیشتری برای پردازش کامپیوتر طول می کشد. سایز 50 در 50 گرفتم.

در ادامه تصاویر منفی و مثبت را بارگیری می کنیم. می توانید آنها را به صورت آنلاین پیدا کنید. اما ما از کد پایتون برای بارگیری تصاویر از "https://image-net.org" استفاده می کنیم

سپس تصاویر را به مقیاس خاکستری و به اندازه معمولی تبدیل می کنیم. این به تنهایی در کد پیاده سازی شده است. کد همچنین هر گونه تصویر معیوب را حذف می کند

در حال حاضر دایرکتوری شما باید شامل تصویر شیء مانند پوشه داده های خالی watch5050-j.webp

اگر پوشه داده ایجاد نشده است ، آن را به صورت دستی انجام دهید

کد پایتون در فایل.py ارائه شده است

مرحله 3: ایجاد نمونه های مثبت در OpenCV

ایجاد نمونه های مثبت در OpenCV
ایجاد نمونه های مثبت در OpenCV
ایجاد نمونه های مثبت در OpenCV
ایجاد نمونه های مثبت در OpenCV

حالا به پوشه opencv_createsamples بروید و تمام محتوای ذکر شده را اضافه کنید

در دستور commad به C: / opencv342 / build / x64 / vc14 / bin بروید تا opencv_createsamples و برنامه های opencv_traincascade را بیابید

حالا دستورات زیر را اجرا کنید

opencv_createsamples -img watch5050-j.webp

این دستور برای ایجاد نمونه های مثبت شیء 1950 دقیق و فایل توضیحات info.lst از تصاویر مثبت توضیحات باید به این صورت باشد 0001_0014_0045_0028_0028-j.webp

اکنون پوشه حاوی است

اطلاعات

پوشه neg images

فایل bg.txt

پوشه داده خالی

مرحله 4: ایجاد فایل برداری مثبت

ایجاد فایل وکتور مثبت
ایجاد فایل وکتور مثبت

حالا فایل بردار مثبت را ایجاد کنید که مسیر رمزگشایی تصاویر مثبت را فراهم می کند

از دستور زیر استفاده کنید

opencv_createsamples -info info/info.lst -num 1950 -w 20 -h 20 -vec positives.vec

در حال حاضر محتویات فهرست باید به شرح زیر باشد:

--نگه

---- negimages.jpg

--opencv

-اطلاعات

--داده ها

-positives.vec

--bg.txt

--watch5050-j.webp

مرحله 5: آموزش طبقه بندی کننده

آموزش طبقه بندی کننده
آموزش طبقه بندی کننده
آموزش طبقه بندی کننده
آموزش طبقه بندی کننده
آموزش طبقه بندی کننده
آموزش طبقه بندی کننده

اکنون اجازه دهید آبشار haar را آموزش داده و فایل xml را ایجاد کنید

از دستور زیر استفاده کنید

opencv_traincascade -data data -vec positives.vec -bg bg.txt -numPos 1800 -numNeg 900 -num مراحل 10 -w 20 -h 20

مراحل 10 هستند افزایش مراحل نیاز به پردازش بیشتری دارد اما طبقه بندی کننده بسیار کارآمدتر است.

در حال حاضر haarcascade ایجاد شده است اتمام حدود دو ساعت طول می کشد پوشه داده ها را باز کنید cascade.xml این طبقه بندی ایجاد شده است

مرحله 6: آزمایش طبقه بندی کننده

پوشه داده شامل فایلهایی است که در تصویر بالا نشان داده شده است.

پس از ایجاد طبقه بندی ، با اجرای برنامه object_detect.py می بینیم که آیا طبقه بندی کننده کار می کند یا خیر. فراموش نکنید که فایل classifier.xml را در فهرست python قرار دهید.

مرحله 7: تشکر ویژه

من می خواهم از Sentdex در اینجا تشکر کنم که یک برنامه نویس عالی پایتون است.

او دارای نام یوتیوب با نام فوق است و ویدیویی که بسیار به من کمک کرد این پیوند را دارد

بیشتر کد از sentdex کپی شده است. اگرچه از sentdex کمک زیادی گرفتم ، اما هنوز با مشکلات زیادی روبرو هستم. من فقط می خواستم تجربه خود را به اشتراک بگذارم.

امیدوارم این دستورالعمل به شما کمک کرده باشد !!! برای اطلاعات بیشتر با ما همراه باشید.

BR

طاهر الحق

توصیه شده: