آشکارسازی لبه: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
جایگزینی صفحه با ''''ثشغاسباليايلاغعف6فد ئتاعغقبلدئ76فلدثقفقادم'
واگردانی به نسخهٔ 750802 با یک کلیک!
خط ۱:
'''آشکارسازی لبه''' یکی از مفاهیم پردازش تصاویر است.
'''ثشغاسباليايلاغعف6فد ئتاعغقبلدئ76فلدثقفقادم
 
{{بدون منبع}}
هدف آشکارسازی لبه نشان‌گذاری نقاطی از یک تصویر است که در آنها شدت روشنایی به تندی تغییر می‌کند. تغییرات تند در خصوصیات تصویر معمولاً نمایندهٔ رویدادهای مهم و تغییرات در خصوصیات محیط هستند. شناسایی لبه یک محدودهٔ تحقیقاتی در [[پردازش تصویر]] و [[استخراج ویژگی]] است.
 
==ویژگی‌های لبه==
 
لبه‌ها ممکن است ''وابسته به دیدگاه'' باشند - یعنی می‌توانند با تغییر نقطه دید تغییر کنند، و نوعاً هندسه صحنه، اجسامی که جلوی همدیگر را گرفته‌اند و مانند آن را نشان می‌دهند یا ممکن است ''نابسته به دیدگاه'' باشند - که معمولاً نمایانگر ویژگی‌های اجسام دیده‌شده همچون نشان‌گذاری‌ها و شکل سطح باشند. در دو بعد و بالاتر مفهوم [[تصویر]] باید در نظر گرفته شود.
 
یک لبه نوعی ممکن است(برای نمونه) مرز میان یک بخش قرمزرنگ و یک بخش سیاه‌رنگ باشد؛ حال آنکه یک '''خط''' می‌تواند تواند تعداد کمی پیکسل‌های ناهمرنگ در یک زمینه یکنواخت باشد. در هر سوی خط یک لبه وجود خواهد داشت. لبه‌ها نقش مهمی در کاربردهای پردازش تصویر دارند.
 
==آشکارسازی لبه==
 
لبه مرز بين نواحي با خواص نسبتاً متفاوت سطح خاكستري است. نظريه‌ي پايه در بيشتر روش‌هاي آشكارسازي لبه، محاسبه يك عملگر مشتق محلي است. در اين مقطع توجه شود كه لبه‌ (گذر از تاريك به روشن) به صورت يك تغيير آرام، نه سريع، سطح خاكستري مدل مي‌شود. اين مدل نشان مي‌دهد كه معمولاً لبه‌هاي تصاوير رقمي بر اثر نمونه‌برداري، كمي مات مي‌شوند.
مشتق اول مقطع سطح خاكستري در لبه جلويي گذر، مثبت است، در لبه عقبي آن منفي است و همان طور كه مورد انتظار است، در نواحي با سطح خاكستري ثابت صفر است. مشتق دوم براي قسمتي از گذر كه در طرف تيره لبه است، مثبت است، براي قسمت ديگر گذر كه در طرف روشن لبه است، منفي است، و در نواحي با سطح خاكستري ثابت، صفر است. بنابراين، از بزرگي مشتق اول مي‌‌توان براي تعيين اين كه آيا پيكسل در روي لبه قرار دارد،‌ استفاده كرد. مشتق دوم در نقطه وسطي هر گذر سطح خاكستري يك عبور از صفر دارد. عبور از صفرها راهي قوي براي تعيين محل لبه‌هاي تصوير فراهم مي‌آورند. اندازه‌ي مشتق اول تصوير در هر نقطه برابر بزرگي گراديان است. مشتق دوم نيز با استفاده از لاپلاسين به دست مي‌آيد.
اگر یک لبه را به عنوان تغییر در شدت روشنایی که در طول چند پیکسل دیده می‌شود در نظر بگیریم، الگوریتم‌های آشکارسازی لبه به طور کلی مشتقی از این تغییر شدت روشنایی را محاسبه می‌کنند. برای ساده‌سازی، به آشکارسازی لبه در یک بعد می‌پردازیم. در این نمونه، داده‌های ما می‌تواند یک تک‌خط از شدت روشنایی پیکسل‌ها باشد. برای نمونه بین پیکسل‌های چهارم و پنجم در داده‌های 1-بعدی زیر به روشنی می‌توان لبه‌ای را آشکار کرد
 
<center>
{| border="1" cellpadding="3"
|-----
| &nbsp;5&nbsp; || &nbsp;7&nbsp; || &nbsp;6&nbsp;
| &nbsp;4&nbsp; || &nbsp;152&nbsp; || &nbsp;148&nbsp; || &nbsp;149&nbsp;
|}</center>
 
==محاسبه مشتق اول==
 
تعداد زیادی از عملگرهای آشکارسازی لبه بر پایه مشتق اول شدت روشنایی کار می‌کنند، یعنی با گرادیان شدت روشنایی داده‌های اصلی سروکار داریم. با این اطلاعات می‌توانیم تصویری را برای قله‌های گرادیان روشنایی جستجو کنیم.
 
اگر ''I''(''x'') نماینده شدت روشنایی پیکسل ''x''، و ''I''&prime;(''x'') نماینده مشتق اول(گرادیان شدت روشنایی) در پیکسل ''x'' باشد، بنابراین داریم:
 
:<math>I'(x)=-1\cdot I(x-1) + 0 \cdot I(x) + 1 \cdot I(x+1).\,</math>
 
برای پردازش تصویر با عملکرد بهتر، مشتق اول را می‌توان(در یک بعد) با [[پیچش|پیچش دادن]] دادن با ماسک زیر بدست آورد:
 
<center>
{| border="1" cellpadding="3"
|-----
| &minus;1 || 0 || 1
|}</center>
 
===محاسبهٔ مشتق دوم===
 
برخی دیگر از الگوریتم‌های آشکارسازی لبه بر اساس مشتق دوم شدت روشنایی کار می‌کنند که در واقع نرخ تغییرات گرادیان شدت روشنایی است و برای آشکارسازی خط‌ها بهترین است، زیرا بدانگونه که در بالا گفتیم هر خط یک لبه دوگانه است، بنابراین در یک سوی خط یک گرادیان روشنایی و در سوی دیگر گرادیان مخالف آن دیده می‌شود. پس می‌توانیم منتظر تغییر بسیار زیاد در گرادیان شدت روشنایی در محل یک خط باشیم. برای یافتن خط‌ها می‌توانیم گذر از صفرهای تغییر گرادیان را در نتایج جستجو کنیم.
 
اگر ''I''(''x'') نمایشگر شدت نور در نقطه ''x'' و ''I''&prime;&prime;(''x'') مشتق دوم در نقطه ''x'' باشد:
 
:<math>I''(x) = 1\cdot I(x-1) - 2 \cdot I(x) + 1 \cdot I(x+1).\,</math>
 
اینجا نیز بیشتر الگوریتم‌ها از یک ماسک پیچش برای پردازش سریع داده‌های تصویر سود می‌برند:
 
<center>
{| border="1" cellpadding="3"
|-----
| +1 || &minus;2 || +1
|}</center>
 
==آستانه‌گیری==
 
هنگامی که مشتق را حساب کردیم، گام بعدی اعمال یک آستانه برای کشف نقاطی که بخشی از یک لبه هستند است. هر چه آستانه کمتر باشد، خط‌های بیشتری آشکارسازی می‌گردند و نتایج بیشتر نسبت به نویز، و ویژگی‌های نامرتبط تصویر حساس می‌شوند، از سوی دیگر یک آستانه زیاد ممکن است خط‌های ضعیف یا بخش‌هایی از خط‌ها را از دست بدهد.
 
یک مصالحه معمول آستانه‌گیری با پسماند است. این روش از چندین آستانه برای جستن لبه‌ها سود می‌جوید. با آستانه بالایی جستجو را برای پیدا کردن ابتدای خط‌ها آغاز می‌کنیم. هنگامی که یک نقطه آغاز داریم، مسیر لبه را درون تصویر پیکسل به پیکسل با نشانه‌گذاری پیکسل‌هایی که از آستانه پایینی بالاترند پی می‌گیریم و تنها هنگامی که مقدار از آستانه پایینی پایین‌تر رود آن را پایان می‌دهیم. این رهیافت بر اساس این گمان است که لبه‌ها به احتمال زیاد در مسیرهای پیوسته قرار دارند و دنبال کردن بخش ضعیفی از لبه‌ای که از پیش دیده‌ایم ممکن می‌کند، بدون آنکه پیکسل‌های نویزی را به عنوان لبه نشانه‌گذاری کنیم.
 
===عملگرهای آشکارسازی لبه===
 
* مرتبه نخست: [[چلیپای رابرتز]]، [[پرویت]]، [[سوبل]]، [[کنی]]، [[اسپیسک]]
* مرتبه دوم: [[لاپلاسی]]، [[مار-هیلدرث]]
 
اکنون، عملگر کنی و پس از آن مار-هیلدرث بیشترین کاربرد را دارد. عملگرهای زیادی تاکنون منتشر شده‌اند اما هیچیک برتری قابل ملاحظه‌ای بر عملگر کنی در شرایط کلی نداشته‌اند. کار بر روش‌های چندمقیاسی هنوز بیشتر در آزمایشگاه‌هاست.
 
اخیراً عملگر جدیدی منتشر شده که اجازه جداسازی لبه‌ها را با دقت زیرپیکسل می‌دهد، چیزی که آن را از عملگر کنی نیز بهتر می‌سازد. برای اطلاعات بیشتر مقاله زیر ببینید:
 
(استجر, 1998)An Unbiased Detector of Curvilinear Structure
[[رده:پردازش تصاویر]]
 
[[cs:Detekce hran]]
[[de:Kantendetektion]]
[[en:Edge detection]]
[[fr:Détection de contours]]
[[sd:ڪنارا ڪاڍ]]
[[zh:边缘检测]]