Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Пример 10.3. Извлечение краев с помощью детектора Собела.Стр 1 из 7Следующая ⇒
Отчет к 3-й аттестации по предмету Математические методы компьютерного зрения”
Факультет компьютерных наук ВГУ Направление “Математика и компьютерные науки” Выполнил: студент 3 курса 6 группы Бородин Александр
2014 г.
Пример 10.1. Обнаружение точек. f = imread('C: \Users\Шеф\Desktop\Dot.tif'); w = [-1 -1 -1; -1 8 -1; -1 -1 -1]; g = abs (imfilter(double(f), w)); T = max(g(:)); g = g > = T; imshow(g)
Пример 10.2. Обнаружение линий заданного направления. f = imread('C: \Users\Шеф\Desktop\Wirebond_mask.tif'); w = [2 -1 -1; -1 2 -1; -1 -1 2]; g = imfilter (double(f), w); imshow(g, [ ]) gtop = g(1: 120, 1: 120); gtop = pixeldup(gtop, 4); figure, imshow(gtop, [ ]) gbot = g(end-119: end, end-119: end) gbot = pixeldup(gbot, 4); figure, imshow(gbot, [ ]) g = abs(g); figure, imshow(g, [ ]) T = max(g(:)); g = g > = T; figure, imshow(g)
Пример 10.3. Извлечение краев с помощью детектора Собела. f = imread('C: \Users\Шеф\Desktop\Building.tif'); [gv, t] = edge(f, 'sobel', 'vertical'); imshow(gv) t
t =
0.0516
gv = edge(f, 'sobel', 0.15, 'vertical'); gboth = edge(f, 'sobel', 0.15); w45 = [-2 -1 0; -1 0 1; 0 1 2]
w45 =
-2 -1 0 -1 0 1 0 1 2
g45 = imfilter(double(f), w45, 'replicate'); T = 0.3*max(abs(g45(:))); g45 = g45 > = T; figure, imshow(g45); wm45 = [0 1 2; -1 0 1; -2 -1 0] wm45 =
0 1 2 -1 0 1 -2 -1 0
gm45 = imfilter(double(f), wm45, 'replicate'); T = 0.3*max(abs(gm45(:))); gm45 = gm45 > = T; figure, imshow(gm45);
Пример 10.4. Сравнение результатов обнаружения краев с помощью детек-
|