یافتن لبه های تصویر با استفاده از ابزار متلب(جلسه8)
موسسه پایاپروژه به عنوان متصدی انجام پروژه های پردازش تصویر با متلب وظیفه ی خود می داند که در راستای آموزش نرم افزار متلب گام های موثری را بردارد. با توجه به اینکه یک دوره آموزشی متلب مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
یافتن لبه های تصویر از طریق ابزار متلب
برای یافتن لبه های تصویر، کافی با آموزش متلب و با پایا پروژه همراه باشید. یافتن لبه ها در متلب با استفاده از تابع edge انجام میشود که در ادامه توضیح داده خواهد شد. از تشخیص لبه های تصویر در مواردی مانند دوربین های ثبت جریمه استفاده میشود که با توجه به خط سبز رنگی که اطراف پلاک خودرو ایجاد شده است، محدوده، پلاک را مشخص میکند.
تشخیص لبه های تصویر و استفاده از تابع edge
استفاده از این تابع به 9 روش زیر انجام میشود.
- BW = edge(I)
- BW = edge(I,method)
- BW = edge(I,method,threshold)
- BW = edge(I,method,threshold,direction)
- BW = edge(___,’nothinning’)
- BW = edge(I,method,threshold,sigma)
- BW = edge(I,method,threshold,h)
- [BW,threshOut] = edge(___)
- [BW,threshOut,Gv,Gh] = edge(___)
که I برابر تصویر ورودی است و method نیز به الگوریتم یافتن لبه های تصویر اشاره میکند که شامل Sobel، Prewitt، Roberts، log، zerocross، Canny و approxcanny است.
در شکل سوم، فقط لبه هایی که شدت بیشتری از threshold و یا آستانه داشته باشند نمایش داده میشوند.
direction در شکل چهارم مقادیر horizontal و vertical و both را میپذیرد و اشاره میکند که چه لبه هایی و با چه جهت هایی نمایش داده شود.
در شیوه پنجم، لبه های نازک نمایش داده نمیشوند، استفاده از این عملکرد در صورتی که متد، Sobel، Prewitt و Roberts باشد امکان پذیر است.
در شکل ششم، sigma انحراف معیار فیلتر را مشخص میکند که فقط برای متد های log و Canny فعال است.
در شکل استفاده هفتم، h نیز ماتریس عددی است که به عنوان فیلتر برای متد zerocross معرفی میشود.
شکل هشتم، برای return کردن مقدار آستانه استفاده میشود.
شکل نوشتاری نهم نیز برای Sobel، Prewitt و Roberts استفاده میشود و جهت gradient magnitudes را برمیگرداند. در ادامه شیوه یافتن لبه های تصویر با مثال ارائه شده است.
مرحله اول: وارد کردن تصویر
I = imread(‘circuit.tif’);
imshow(I)

وارد کردن تصویر
مرحله دوم: استفاده از تابع
BW1 = edge(I,’Canny’);
در اینجا متد Canny است و در مورد زیر از متد، Prewitt استفاده شده است.
BW2 = edge(I,’Prewitt’);
مرحله سوم: نمایش نتیجه استفاده از هر دو متد
imshowpair(BW1,BW2,’montage’)

یافتن لبه های تصویر با دو متد Canny و Prewitt
پایا پروژه، هدف خود ار ارتقای دانش شما قرار داده است، چه از طریق تولید محتوای مفید که میتوانید برای انجام پروژه های متلب از آن استفاده کنید و چه با ثبت سفارش پروژه متلب. هدف ما این است که شما با متلب بیشتر آشنا شوید.
