استخراج موقعیت هلیکوپتر
X و Y هماهنگ هلیکوپتر از قاب تصویر گرفته شده توسط دوربین وبکم به دست آمده است. این فریم آنالیز و پردازش یک به یک با بهره گرفتن از توابع کتابخانه OpenCV برای استخراج این هلیکوپتر در تصویر می باشد. هلیکوپتر توسط پیدا کردن موقعیت رنگ زرد آن ردیابی شده است. تابع دودویی thresholding جهت استخراج پیکسل روشنایی برای تصویر استفاده شده است. اندازه گیری روشنایی با بهره گرفتن از فضای رنگی RGB لازم برای تبدیل تصاویر به فضای رنگی HSV توسط تابع inRenge استفاده شده است.
شکل ۸،۴: (الف) قاب اصلی (ب) ماسک های تولید شده توسط آستانه حاوی نویز (ج) ماسک پس از فرسایش تولید شده توسط آستانه.
ردیابی لبه
لبه یک تغییر ناگهانی در شدت روشنایی تصویر است. به عنوان مثال در پلاک خودرو به دلیل اعداد و حروف نوشته شده روی آن دارای لبه های عمودی زیادی می باشد. از همین ویژگی برای یافتن محل آن در تصویر استفاده می شود. روش ها و الگوریتم های مختلفی برای پیدا کردن لبه در پردازش تصویر مطرح شده است. در این میان روش سوبل به دلیل سرعت بالا و حجم پردازشی کم در مقایسه با دیگر روش ها کارایی مطلوبی دارد. لبه یابی به روش سوبل در حقیقت استفاده از ماسک سوبل می باشد. در حالت کلی سوبل دارای دو ماسک تشخیص لبه عمودی و افقی می باشد. با بهره گرفتن از فاصله هلیکوپتر برای تعیین بزرگ یا کوچک بودن پنجره جستجو ابعاد پنجره جستجو را با قرار دادن هلی کوپتر در فاصله خاص از دوربین، رو به شرق یا غرب محاسبه می کنیم.
شکل ۹،۴: راه اندازی سیستم خلبان اتوماتیک.
دوربین مورد استفاده پروژه
جهت پردازش تصویر در این پروژه، نیاز به یک دوربین می باشد، که می توان از یک وبکم (شکل ۳-۱) یا یک دوربین حرفه ای CCTV (شکل ۳-۲ ) استفاده نمود. قابلیت پردازش هم به صورت آنالوگ و هم به صورت دیجیتال می باشد بدین صورت که تصویر خروجی از وبکم تصویر دیجیتال می باشد. در زیر نمونه ای از دوربین های مورد استفاده مشاهده می شود.
۴-۱۰- نمونه ای از وبکم استفاده شده در پروژه ۴-۱۱- نمونه ای از یک دوربین CCTV حرفه ای
کامپیوتر مورد نیاز پروژه
برای راه اندازی این پروژه یک کامپیوتر معمولی با CPU قدیمی، حافظه رم با ظرفیت کم، هارد با ظرفیت کم و گرافیک پایین کفایت می کند.
به طور مثال حداقل سیستم تست شده برای این پروژه یک سیستم به شرح زیر می باشد:
پردازشگر مرکزی: Celeron
رم : ۵۱۲
گرافیک : ۱۲۸ داخلی
هارد:۴۰ گیگ
سیستم عامل : مایکروسافت ویندوز XP
دوربین : وبکم داخلی لپتاپ، وبکم جداگانه
روش تشخیص رنگ
استفاده از رنگ در پردازش تصویر، ناشی از دو عامل است. اولاً، رنگ توصیف گر قدرتی است که غالباً شناسایی و استخراج اشیا را از صحنه آسان می سازد. ثانیاً، انسان می تواند در مقایسه با فقط ۲۴ سایه خاکستری، هزاران سایه رنگ و شدت را تشخیص دهد. این عامل دوم، مخصوصاً در تحلیل تصویر، بصورت دستی (وقتی که توسط انسان انجام می گیرد) مهم است. پردازش تصویر رنگی به دو ناحیه مهم تقسیم می شود: پردازش تمام رنگی وپردازش شبه رنگی. در دسته اول، رنگی یا اسکنر رنگی و در دسته دوم، TV تصاویر معمولاً توسط حسگر تما م رنگی دریافت می شود. مثل دوربین مسئله، تخصیص رنگ، به شدت تک رنگ خاص یا بازه ای از شدت ها است. تاکنون تقریباً اغلب پردازش های تصویر رنگی در سطح شبه رنگی انجام شده اند. اما، در دهه گذشته، حسگرهای رنگی و سخت افزار مربوط به پردازش تصاویر رنگی، با قیمتهای مناسبی فراهم شدند. لذا، اکنون تکنیک های پردازش تصویر تمام رنگی در گستره ی بیشتری از کاربردها استفاده می شود. از جمله چاپ و نشر، تجسم و اینترنت. شکل ۵-۱ طیف رنگ های مهم را توسط مخروط های قرمز، سبز، و آبی نشان می دهد.
۴-۱۲- طیف رنگ های مهم
تشخیص رنگ و فیلتر رنگ ها
نحوه تشخیص رنگ به این صورت می باشد که بعد از دریافت تصویرتوسط دوربین، تصویر به ۳ رنگ اصلی قرمز، آبی، سبز دیده می شود. مجموع پیکسل ها در فریم، کل تصویر ما را تشکیل می دهند و رنگ هر پیکسل به طور جداگانه مشخص است.
جهت تشخیص رنگ آبی (if(B>G>R) ) : اگر در آن نقطه رنگ آبی بیشتر از رنگ سبز و رنگ سبز بیشتر از رنگ قرمز باشد، فیلتر آبی رنگ می شود (فقط رنگ آبی را در نظر گرفته می شود و بقیه رنگ ها را در نظر گرفته نمی شود).
جهت تشخیص رنگ سبز (if(G>R>B)) : اگر در آن نقطه رنگ سبز بیشتر از رنگ قرمز و رنگ قرمز بیشتر از رنگ آبی باشد، فیلتر سبز رنگ می شود (فقط رنگ سبز در نظر گرفته می شود و بقیه رنگ ها در نظر گرفته نمی شود).
جهت تشخیص رنگ قرمز (if (R>G>B) ) : اگر در آن نقطه رنگ قرمز بیشتر از رنگ سبز و رنگ سبز بیشتر از رنگ آبی باشد، فیلتر قرمز رنگ می شود (فقط رنگ قرمز در نظر گرفته می شود و بقیه رنگ ها در نظر گرفته نمی شود).
به عنوان نمونه برای تشخیص رنگ های دیگر از ترکیب این رنگ ها استفاده می شود. با قرار دادن مقدار رنگ قرمز به ۲۵۵، رنگ سبز ۲۵۵، رنگ آبی ۰، نتیجه رنگ زرد را مشخص می نماید.
نرم کننده تصویر
نرم کننده تصویر برای کاهش جزئیات تصویر اصلی به کار برده می شود و لبه های عکس را نرم می کند. تصویر حاصل با تصویر قدیم تفاوت چندانی نمی کند با این تفاوت که از جزئیات آن کم می شود. برای این کار باید اختلاف رنگ پیکسل های مجاور کاهش یابد. بدین منظور، در اطراف هر پیکسل یک مربع ۳*۳ را در نظر می گیریم، به طوری که پیکسل مورد نظر در وسط باشد. سپس از رنگ تمامی این ۹ پیکسل میانگین گرفته شده و در پیکسل وسط قرار داده می شود. در این راستا، می توان مربع ۵*۵ یا بیشتر را انتخاب کرد. در برنامه زیر پیکسل های مرزی را بدلیل مجهول بودن همسایه های آنها، ثابت می گذاریم تا برنامه ساده باشد. به علت آنکه تصویر تغییر خواهد کرد و همچنین برخی از این رنگها جدید و برخی دیگر قدیمی هستند، برای محاسبات آتی مشکل پیش خواهد آمد لذا دارای اعتبار لازم نمی باشد. برای این منظور یک کپی از تصویر تهیه می کنیم تا بدون تغییر باقی بماند.
ماژول ارتباط سخت افزار با کامپیوتر مورد استفاده در پروژه
جهت ارسال اطلاعات از کامپیوتر به سخت افزار از طریق مبدل USB to Serial استفاده شده و ارتباط سیمی میباشد. به طوری که پایه TX در مبدل متصل به رایانه را با سیم به پایهRX میکروکنترلر متصل می نمائیم و اطلاعات را به صورت سریال به سخت افزار ارسال می کنیم.
۴-۱۳- مبدل USB to Serial
پایه ها به ترتیب از سمت راست به چپ را شماره گذاری می کنیم:
پایه شماره ۱ : GND منفی
پایه شماره ۲ : خروجی ولتاژ +۴ ولت
پایه شماره ۳ : RXD- TTL ورودی