تشخیص لبه و ارتباط (اتصال)
الگوریتم تشخیص لبه و ارتباط بر اساس فیلتر تشخیص لبه می باشند که برای تولید پیکسل ها که به عنوان قسمتی از لبه علامت گذاری شده اند، آستانه سازی می شوند. این لبه ها، زمانی که استخراج می شوند (مشخص می شوند)، توسط چند روش مناسب به هم متصل می شوند. اغلب، اگر دو پیکسل به عنوان لبه برچسب زده شود، و آنها فقط توسط یک بیشینه از n پیکسل غیر لبه جدا شوند، برای ایجاد یک لبه بزرگتر، فاصله میان این دو پیکسل لبه به هم وصل می شود. این فرایند تا زمانی که به نتیجه راضی کننده ای برسد ادامه خواهد داشت.
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
مدل های کانتور فعال مبتنی بر لبه
مدل های کانتور فعال مبتنی بر لبه که ۲۰ سال پیش توسط Kass، Witkin و Terzopoulosپیشنهاد شده است، مدتهاست که یک روش متداول در حل مسائل قطعه بندی تصویر می باشند[۱۰]. مدلهای کانتور فعال را می توان با بهره گرفتن از معیارهای مختلف تقسیم بندی کرد. بر اساس ارائه و اجرای آنها، مدل های کانتور فعال موجود را می توان به مارهای پارامتری و ژئومتری تقسیم کرد. با بهره گرفتن از ویژگی های استفاده شده برای رسیدن به تکامل، مدل های کانتور فعال همچنین می توانند به عنوان مدل های مبتنی بر لبه (اغلب به عنوان مدل های مبتنی بر مرز می باشند) و مبتنی بر ناحیه تقسیم بندی شوند.
اشکالات (معایب) بسیاری در این رویکردهای مبتنی بر لبه وجود دارد که بسیاری از مدل های مبتنی بر لبه دارای مشکل نشتی (ریزش) می باشند خصوصا زمانی که با لبه های ضعیفی مواجه می شوند[۱۶]. مشکل دوم اینکه، زمانی که تصویر ورودی بسیار نویز دار باشد به سختی بتوان مکان دقیقی که باید در آنجا توقف صورت گیرد را مشخص کرد. مشکل سوم اینکه، از آنجایی که برای توقف تکامل منحنی، غالبا بر اساس تابع لبه مبتنی بر گرادیان تصویر عمل می کنند، این گروه از مدل ها تنها می توانند اشیایی که لبه های آنها توسط گرادیان مشخص شده اند را شناسایی کنند[۶]. نوع دیگر جدا کننده مثل مرز بافت، مانند یک لبه رفتار نمی کند، بنابراین زمانی که سعی می شود از مدل های مبتنی بر لبه برای به دست آوردن نواحی جدا شده توسط بافت استفاده شود، مشکلاتی به وجود خواهد آمد.
ردیابی اشیای متحرک
تشخیص و ردیابی اشیا متحرک یکی از مباحث اصلی بینایی ماشین است که براساس تحلیل پیکسلی به تطابق مدلها و درک صحنه می پردازد دراین پروژه با بهره گرفتن از تکنیکهای بینایی کامپیوتر جهت بهینه سازی ردیابی اشیا متحرک روشی ترکیبی براساس تفاضلی و اکتیو بلاب ارائه شده است که بوسیله آن تصاویر بصورت بلادرنگ Real Time و با سرعت بالا مورد پردازش قرار می گیرند.در نتیجه اشیا یا اشخاص متحرک را ردیابی کرده که جهت و موقعیت آنها را تشخیص دهد در واقع می توان از ویژگیهای این الگوریتم برای استخراج هر شی متحرک درهر محیطی استفاده کرد که بسیار به علاقه مندان در زمینه پردازش تصویر کمک می نماید[۲۳]. جهت پیاده سازی این روش ابتدا نتایج حاصله با بکارگیری فیلترهای مختلف بصورت چهارمرحله : تبدیل تصویر رنگی به خاکستری، لبه یابی اشیا متحرک، تشخیص اشیا متحرک و مرحله حذف نویز مورد اجرا قرارگرفته است که در تمامی مراحل فوق اشیا متحرکی که در تصاویر مورد تست قرار داشتند بطور کامل تشخیص و ردیابی شده اند [۱۴].
نتیجه گیری
جهت کنترل سایل نقلیه خودمختار به یک سیستم هوش نیازمندیم. هوش به طور کلی به سه دسته هوش داخلی، هوش خارجی و ترکیب هوش داخلی و هوش خارجی تقسیم می شوند. استفاده از هوش خارجی در هوش داخلی یا ترکیبی از گروه های فوق، به این معنی است که بخش های خاصی از قابلیت های ممکن در خارج انجام شود و فقط قطعات خاصی در داخل قرار می گیرند. جهت بینایی کامپیوتر از پردازش تصویر استفاده شده است که روشی برای تبدیل یک تصویر به صورت دیجیتال می باشد. هر سیستم بینایی که مرتبط با دنبال کردن، تفسیر و تشخیص اشیای متحرک در تصویر است، نیازمند به آشکارسازی مطمئن و بخش بندی نواحی متناظر شی متحرک می باشد. رنگ از محبوب ترین ویژگی های بصری است که می تواند در پردازش تصویر مورد استفاده قرار گیرد. این ویژگی برای اشیاء، که از یکنواخت بودن آن ها جلوگیری می کند. لبه دومین روش آشکار سازی می باشد که اطلاعات لبه یکی دیگر از ویژگی های محبوب در ردیابی اشیا است که می تواند مورد استفاده قرار گیرد، این روش حساسیت کمتری نسبت به تغییرات نور از رنگ دارد. لبه نیز دارای نویز بسیار قوی می باشد. روش دیگر تفریق پس زمینه، یک راه تشخیص اشیاء در حال حرکت با پیدا کردن تفاوت بین تصویر فعلی و زمینه است. تفریق پس زمینه متکی به یک دوربین ثابت می باشد و دوربین مورد استفاده در پردازش تصویر، جهت تفریق پس زمینه نمی تواند متحرک باشد. قطعه بندی تصویر مورد دیگری در آشکار سازی است که جهت تقسیم نمودن قطعات یا مناطق مشابه استفاده می شود. در بینایی کامپیوتر ، تقسیم بندی تصویر، فرایند پارتیشن بندی یک عکس دیجیتال را به بخش های متعدد (مجموعه ای از پیکسل ها ، به عنوان superpixels شناخته می شود) می باشد.
تحقیقات نشان می دهد که پردازش تصویر و ردیابی شیء هر دو بسیار وسیع هستند و تعداد بسیار زیادی از روش ها و الگوریتم های ساخته شده وجود دارد. پیاده سازی های مختلف نشان می دهد که الگوریتم های ردیابی شی مناسب تر هستند. این اطلاعات انگیزه اصلی برای تصمیم گیری، با توجه به ابزار و الگوریتم های مورد استفاده در این پروژه بود.
فصل۳
روش اجرای تحقیق، مواد و روش ها
روش اجرای تحقیق/ مواد و روش ها
طرح کلی سیستم در یک حلقه کنترل بازخورد ساده متشکل از یک دوربین، هلیکوپتر و رادیو کنترل تشکیل شده است. هلیکوپتر برد کوتاه مادون قرمز برای این پروژه مورد استفاده قرار گرفت. این هلیکوپتر به رنگ زرد می باشد. در این پروژه از رنگ برای ردیابی هلیکوپتر استفاده شده است. در این پروژه از دوربین وبکم برای تولید داده های ویدئویی از صحنه، که موقعیت هلیکوپتر را می تواند استخراج کند مورد نیاز می باشد. کینکت ایکس باکس [۱]۳۶۰ و وبکم به عنوان دو دوربین برای این سیستم انتخاب شدند. پلت فرم آردوینو و یک بورد ساخته شده جهت دیجیتال کردن رادیو کنترل برای کنترل هلیکوپتر به عنوان سخت افزار در این پروژه استفاده شدند. حرکت هلیکوپتر توسط سیگنال های مادون قرمز فرستاده شده توسط رادیو کنترل متصل به آردوینو یا بورد ساخته شده کنترل می شود. منطق پشت سیستم مورد نیاز استفاده از کتابخانه پردازش تصویر OpenCV می باشد. همچنین برخی از توابع پردازش تصویر و الگوریتم های ردیابی شی نیز مورد استفاده قرار گرفته شده است. در ادامه این فصل به توصیف تمام ابزار های سیستم ذکر شده در بالا و دلایل که آنها انتخاب شدند ذکر شده است.
ابزار نرم افزار
در بخشهای زیر به توصیف ابزار و نرم افزار پرداخته می شود که شامل تئوری کتابخانه ها و الگوریتم ها است.
نظریه کنترل
نظریه کنترل، در سیستم های پویا است که در سیستم هایی که با تغییرات همراه هستند استفاده می شود. اغلب برای کنترل تغییر به منظور نگه داشتن آنها در برخی از حالت های پایدار و جلوگیری از نوسان بکار می رود.
شکل ۱،۳: حلقه عمومی بازخورد.
کنترل حلقه باز، به سیستمی گفته می شود که تغییرات در برخی از نقاط وضعیت سیستم، انجام می شود [۱۷]. حلقه کنترل اصلی بازخورد در شکل ۱،۳ نشان داده شده است. مراحل کنترل بازخورد به شرح زیر می باشد:
فرمان های ورودی
ردیابی خطا
کنترل سیگنال، کنترل کننده خروجی
اختلال هلیکوپتر
خروجی هلیکوپتر
سنسور نویز
شکل ۱٫۳ کنترل حلقه بسته بر اساس بازخورد منفی را نشان می دهد. کنترل کننده C، مسئول کنترل سیستم برای حفظ آن در برخی از ناحیه های مورد نظر است. در هلیکوپتر P سیستم پویا نیاز به کنترل دارد. اصطلاح “بازخورد منفی” نشان می دهد که کنترل تجزیه و تحلیل خطا e بین مرجع یا ورودی مورد نظر و سیستم خروجی y است. کنترل خنثی این خطا با تغییر سیگنال u است که به نوبه خود بر خروجی y تاثیر می گذارد. خروجی از بازخورد تولید شده توسط یک سنسور به دست آمده است.
کتابخانه بینایی کامپیوتر OpenCV
کتابخانه منبع باز بینایی کامپیوتر OpenCV برای پردازش تصویر و توابع ردیابی شئ برای این سیستم انتخاب شده است. این کتابخانه شامل توابع بینایى کامپیوتر می باشد. الگوریتم های پردازش تصویر، با سرعت بالا در این کتابخانه اجرا می شود. دلیل انتخاب OpenCV عملکرد بهینه سازی شده و بنابراین مناسب برای برنامه های با سرعت پردازش تصویر بالا برای این سیستم می باشد. بسیاری از الگوریتم ها برای ردیابی اشیاء می تواند مورد استفاده قرار گیرند. OpenCV ابتدا در C نوشته شده بود اما هم اکنون به C++ منتقل شده است. و زبان C++ برای این سیستم مورد استفاده قرار گرفته شده است.
در OpenCV، تصویر می تواند توسط یک ماتریس که دارای ارزش پیکسل تمام تصویر است به نمایش درآید. OpenCV شامل بسیاری از عملیات ماتریس های از پیش تعریف شده است که دسترسی به اطلاعات تصویر ساده می باشد. به همین دلیل ماتریس برای نشان دادن تصاویر در این سیستم استفاده می شود. مستندات کامل برای OpenCV در پیوست یافت می شود.
Thresholding
عملیات روش تقسیم بندی ساده نقطه که در آن ارزش اصلی یک پیکسل تنها چیزی است که تعیین کننده ارزش ها است. Thresholding با بهره گرفتن از مقدار آستانه گیری که در مقایسه با ارزش های اصلی یک پیکسل و بسته به نوع Thresholding پیکسل مقدار جدید محاسبه شده است. OpenCV چهار نوع مختلف Thresholding را تعریف می کند [۱۵].
Thresholding دودویی
نوع اول thresholding دودویی نامیده می شود. تصویر حاصل یک تصویر سیاه و سفید دودویی است. فرمول برای thresholding دودویی به شرح زیر است:
Thresh که در آن آستانه ارزش، src (x, y) ارزش پیکسل و maxVal پیکسل حداکثر ارزش است [۱۵]. اگر ارزش پیکسل بالا تر از آستانه آن باشد، ارزش پیکسل به مقدار حداکثر تنظیم شده باشد وگرنه مقدار به صفر تنظیم می شود.