پردازش تصویر در PHP با کمک OpenCV

پردازش تصویر علمی است که تحت آن بر روی تصاویر دیجیتال، اعمال خاصی برای مقاصد خاص انجام می‌شود. یک کاربرد تقریبا تزئینی آن را در گوشی های تلفن همراه و دوربین‌های دیجیتال دیده‌اید؛ همان تشخیص چهره افراد در هنگام عکاسی.

در صنعت، راهنمایی رانندگی، نظامی و پزشکی از پردازش تصویر بسیار استفاده می شود. بعنوان مثال وقتی می‌خواهید وارد طرح ترافیک در شهر تهران بشوید دوربین‌های قرار گرفته در ورودی محدوده طرح ترافیک، تصویری رنگی را از پشت خودروی شما می‌گیرد و به مرکز پردازش تصویر ارسال می‌کند، پس از پردازش پلاک خودروی شما از روی تصویر دریافتی، مقایسه‌ای با دیتابیس پلاک‌های مجاز به عبور و مرور در محدوده طرح ترافیک انجام می‌گیرد و در صورت عدم وجود پلاک خودروی شما در پلاک‌های مجاز، جریمه ورود به طرح برای شما منظور می‌گردد.

برای پردازش تصویر کتابخانه‌ای با نام OpenCV به زبان ++C موجود است. این کتابخانه قابلیت‌های متعددی برای پردازش تصویر ارائه می‌دهد. برای پتلفرم‌های مختلف قابل استفاده است. همچنین با کمک آن می‌توانید در زبان‌های مختلف برنامه نویسی برای آن کدهای پردازش تصویر بنویسید.

 

نمونه‌ای از قابلیت‌های این کتابخانه را در اینجا می‌توانید مشاهده کنید.

در ادامه تصمیم دارم یک نمونه کوچک برای دوستانی که در PHP کدنویسی می‌کنند را پیاده کنم تا با طرز کار این کتابخانه پردازش تصویر آشنا شوید.

به تصویر زیر نگاه کنید:

boys

 

حال به همان تصویر نگاه کنید، اما پس از پردازش شدن توسط کدهای PHP، با کمک OpenCV:

test2.php

کد PHP:

 

نحوه نصب اکستنشن PHP برای تشخیص چهره: php-facedetect

لازم به ذکر است که قبل از استفاده از اکستنشن فوق نیاز به نصب OpenCV دارید.

علی ذوقی

از سال ۸۷ بطور تخصصی برنامه نویس PHP هستم. اوایل با PEAR کار می کردم ولی از سال ۹۱ تاکنون بطور حرفه ای با Yii کار می کنم. از دروپال هم برای پروژه های بزرگ استفاده می کنم. به مباحث فنی سرور و شبکه علاقه خاصی دارم ...

همچنین ممکن است دوست داشته باشید ...

۱۵ واکنش

  1. androider گفت:

    عالی بود
    چه اکستنشن جالبی

  2. چجوری اوپن سی وی رو نصب کنیم؟

  3. وحید گفت:

    خیلی عالی بود.
    آقای ذوقی باز هم از این مطلب ها بگذار لطفا.
    اگه در مورد لاراول هم آموزش خوب داری بگذار.
    ممنون

  4. مرضیه گفت:

    سلام ممکنه اگر لینکی میشناسید که به زبان آندروید این کار را با opencv انجام میده معرفی کنید؟ممنون

  5. mohammad گفت:

    با سلام
    متوجه شدم که شما سه سال است که فریم ورک yii2 را به صورت عملی شروع به کار کرده اید،لطفا نمونه ای از پروژه ها و فایل های مهمی که در این زمینه دارید،برای بنده بفرستید.
    اجرتان با آقا ابا عبدالله

  6. مهدی گفت:

    جناب اقای ذوقی -با سلام

    من دارم روی یک کار تحقیقاتی تشخیص لبه پانچ متال فلزی کار میکنم ( ۱٫۵ میلی متر پانچ ۳ میلیمتر متال مجدد ۱٫۵ میلیمتر پانچ و الی اخر و ضخامت متال ۱ میلی متر و عرض متال ۳۰ میلی متر ) و در حال نصب opencv2.3.1 در visual studio 2010 هستم با توجه به اینکه تا حالا با ماشین بینایی در ++c را کار نکرده ام . در صورت امکان برنامه مشابه قابل اجرا تشخیص لبه پانچ را برایم بفرستیدو در صورتی که ابعاد پاچ با ابعاد گفته شده یکی نباشد اعلام خطا کند .با سپاس و تشکر- بدری

  7. سپاس. میشه در مورد خود پردازش توضیح بدید. در مورد خود opencv بگید که به چه الگوریتمی چنین کاری رو روی تصاویر انجام میده؟

  8. امیر گفت:

    سلام مهندس خسته نباشید برای افزودن این کتابخانه(opencv) به php باید چه مراحلی رو انجام داد

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *