این لبه های مهم
پردازش تصویر که زیر مجموعه ای از یادگیری عمیق به حساب می آید در طیف گسترده ای از برنامه ها مانند دوربین های مداربسته ، کنترل ترافیک ، کنترل رفت و آمد ، عکس برداری پزشکی و … کاربرد دارد. یکی از مباحث در پردازش تصویر آشکار سازی لبه است.
هدف از آشکار سازی لبه نشان گذاری نقاطی از تصویر است که در آن ها شدت روشنایی به تندی تغییر می کند. یک لبه ممکن است مرز میان دو رنگ مشخص در تصویر باشد. در این نوشته سعی داریم به بررسی پرکاربرد ترین روش لبه یابی به نام canny بپردازیم. این روش لبه یابی به نام دانشمندی که آن را ارائه داده است، یعنی John F. Canny نام گذاری شده. با این که روش های بسیاری برای تشخیص لبه در تصاویر وجود دارد اما پرکاربرد ترین روش ، همان روش canny است.
الگوریتم کنی
کنی(John F. Canny) در سال 1986 سه معیار برای تشخیص لبه تصویر پیشنهاد داد. با توجه به استدلال کنی خروجی اپراتور مناسب جهت تشخیص لبه باید دارای سه مشخصه زیر باشد:
1) نسبت سیگنال به نویز زیاد باشد. نقطه ای که لبه نیست نباید به عنوان نقطه لبه شناسایی شود.
2) عملکرد موقعیت یابی باید توسعه یابد. نقطه ی شناسایی شده توسط الگوریتم باید بسیار به واقعیت نزدیک باشد.
3) هر نقطه ای که به عنوان لبه شناسایی می شود باید به طور منحصر به فرد عمل کند.
این معیار ها توسط جامعه ی علمی زیاد مورد توجه قرار نگرفتند تا این که کنی در همان سال مقاله ای ارائه داد و الگوریتمی را شرح داد که توانست تحولی در روش های لبه یابی ایجاد کند. این روش به شکل زیر است:
- هموار سازی تصویر اصلی برای حذف نویز توسط فیلتر گوسی.
- محاسبه بزرگی گرادیان و جهت توسط مشتق جزئی اول.
- حذف بزرگی گرادیان هایی که حداکثر نیستند.
- شناسایی و ارتباط نقاط لبه با توجه به حد آستانه بالا و پایین
در یک توضیح ساده تر، اپرانور لبه یاب کنی، ابتدا تصاویر را نرم می کند تا اثر نویز را حذف کند. سپس گرادیان ماتریس تصویر را محاسبه می کند تا نواحی با تغییرات بالا ( مشتقات مکانی بالا) را پیدا کند. سپس الگوریتم را در این نواحی حرکت می دهد تا بزرگی هر گرادیانی که حداکثر ماکزیمم نباشد را صفر کند(یافتن ماکزیمم محلی). در مرحله ی بعد از مفهوم پسماند(hysteresis) استفاده می شود، پسماند دو حد آستانه(threshold) بالا و پایین دارد و اگر اندازه و مقدار شدت از حد آستانه پایین کوچکتر باشد مقدار را صفر می کند. اگر مقدارش بین دو حد آستانه بود هم مقدار صفر می شود مگر آن که یک مسیر از این درایه تا درایه دیگر با گرادیان بالاتر از حد آستانه بالا وجود داشته باشد. به عبارت دیگر باید اتصالی بین این پیکسل و دیگر پیکسل های لبه وجود داشته باشد و اگر مقدار از حد آستانه بالا بیشتر باشد آن پیکسل را به عنوان پیکسل لبه انتخاب می کنیم.
از تفاوت های الگوریتم کنی و الگوریتم های مبتنی بر لاپلاس این است که در الگوریتم کنی ، مشتقات اول در جهت های x و y محاسبه شده و براساس آن ها 4 مشتق جهتی محاسبه می شوند.
مشکل اصلی الگوریتم کنی این است که باید دو مقدار حد آستانه بالا و حد آستانه پایین به صورت دستی توسط انسان به رایانه داده شود. هر چند این روش انتخاب حد آستانه در مباحث کاربردی می تواند به عنوان یک نقطه قوت دانسته شود اما در حال حاضر روش ها و بهبود هایی برای الگوریتم کنی ارائه شده است که امکان انتخاب حد آستانه را به رایانه می دهد تا رایانه به طور خودکار این دو عدد را انتخاب کند.
فیلتر هموارسازی گوسی
در مرحله اول الگوریتم کنی از فیلتر هموارسازی گوسی صحبت به میان آمد. هموارسازی یا مات کردن، یک عمل ساده و پرکاربرد در پردازش تصویر است. دلایل زیادی برای هموارسازی وجود دارد اما معمولا برای کاهش نویز یا اثرات ناخواسته دوربین به کار می رود. همچنین هموارسازی یکی از روش های پایه برای کاهش وضوح تصویر به حساب می آید. در اصل نقاط لبه و نقاط دارای نویز، همواره دارای سیگنال هایی با فرکانس های بالا هستند که فیلتر گوسی هردو را نرم(smooth) می کند.
در حال حاضر از پنج روش هموارسازی که بیشترین استفاده را دارند، روش گوسی از همه مفید تر است اما در عین حال سریعترین نیست. عمل فیلتر گاوسی از طریق کانولوشن هر نقطه از تصویر ورودی با یک هسته گاوسی و سپس جمع نتایج برای تشکیل تصویر خروجی انجام می شود.
هر چند بسط و توضیح الگوریتم کنی در این نوشته کوتاه نمی گنجد اما قطعا آشنایی نسبی با این روش در استفاده از آن تاثیر گذار خواهد. این روش هم مانند هر روش دیگری تاکنون بهبود های زیادی قرار گرفته است اما همچنان به عنوان بهترین و پرکاربرد ترین روش های تشخیص لبه در پردازش تصویر شناخته می شود.