Опера́тор Со́беля (англ. Sobel operator), який іноді називають опера́тором Со́беля — Фе́льдмана (англ. Sobel–Feldman operator) та фі́льтром Со́беля (англ. Sobel filter), використовують в обробці зображень та комп'ютернім баченні, зокрема в алгоритмах виявляння контурів, де він створює зображення, яке виділяє контури. Його названо на честь [en] та [en], колег зі [en] (англ. SAIL). Собель та Фельдман запропонували ідею «ізотропного оператора градієнта зображення 3 × 3» на виступі в SAIL у 1968 році. Технічно це , який обчислює наближення [en] функції яскравості зображення. У кожній точці зображення результат оператора Собеля — Фельдмана — або відповідний вектор градієнта, або норма цього вектора. Оператор Собеля — Фельдмана ґрунтується на згортанні зображення з невеликим роздільним цілочисловим фільтром в горизонтальному та вертикальному напрямках, і тому відносно невитратний з погляду обчислень. З іншого боку, наближення градієнтна, яке він створює, відносно грубе, зокрема для високочастотних мінливостей на зображенні.
Формулювання
Цей оператор використовує два ядра 3×3, які згортають з первинним зображенням, щоб обчислювати наближення похідних — однієї для горизонтальних змін, та однієї для вертикальних. Якщо ми визначимо A як первинне зображення, а Gx та Gy — два зображення, що в кожній точці містять наближення горизонтальної та вертикальної похідних відповідно, то ці обчислення такі:
де позначує операцію згортки у двовимірній обробці сигналу.
Оскільки ядра Собеля можливо розкласти як добутки усереднювального та диференціювального ядер, вони обчислюють градієнт зі згладжуванням. Наприклад, можливо записати як
Координату x тут визначено як зростальну «праворуч», а координату y — як зростальну «донизу». У кожній точці зображення отримані наближення градієнта можливо об'єднувати, щоб отримувати величину градієнта, використовуючи
Використовуючи цю інформацію, ми також можемо обчислювати напрямок градієнта:
де, наприклад, дорівнює 0 для вертикального контуру, світлішого з правого боку (щодо див. [en]).
Формальніше
Оскільки функція яскравості цифрового зображення відома лише в дискретних точках, похідні цієї функції неможливо визначити, якщо ми не припустимо, що в основі лежить диференційовна функція яскравості, з якої було зроблено вибірку в точках зображення. За деяких додаткових припущень похідну неперервної функції яскравості можливо обчислювати як функцію вибіркової функції яскравості, тобто цифрового зображення. Виявляється, що похідні в будь-якій конкретній точці є функціями значень яскравості практично в усіх точках зображення. Проте наближення цих похідних функцій можливо визначити з меншим або більшим ступенем точності.
Оператор Собеля — Фельдмана пропонує доволі неточне наближення градієнта зображення, але все ще має достатню якість для практичного використання в багатьох застосуваннях. Точніше, він використовує значення яскравості лише в області 3×3 навколо кожної точки зображення, щоби наблизити відповідний градієнт зображення, й використовує лише цілі значення для коефіцієнтів, які зважують яскравості зображення, щоб отримати наближення градієнта.
Розширення на інші виміри
Оператор Собеля — Фельдмана складається з двох роздільних дій:
- Згладжування перпендикулярно напрямку похідної за допомогою трикутного фільтра:
- Простої центральної різниці в напрямку похідної:
Фільтри Собеля — Фельдмана для похідних зображення в різних вимірностях, де :
1 вимір:
2 виміри:
2 виміри:
3 виміри:
3 виміри:
4 виміри:
Тож, як приклад, тривимірне ядро Собеля — Фельдмана в напрямку z:
Технічні деталі
Як наслідок його визначення, оператор Собеля можливо втілювати простими засобами як в апаратному, так і в програмному забезпеченні: для обчислення відповідного результату потрібні лише вісім точок зображення навколо точки, а для обчислення наближення вектора градієнта потрібна лише цілочислова арифметика. Крім того, обидва описані вище дискретні фільтри роздільні:
й тому дві похідні Gx та Gy можливо обчислювати як
У деяких втіленнях це роздільне обчислення може бути вигідним, оскільки передбачає менше арифметичних обчислень для кожної точки зображення.
Застосування згортки K до групи пікселів P можливо подати псевдокодом як
- N(x,y) = Сума { K(i,j).P(x-i,y-j)}, для i,j з -1 по 1.
N(x,y) подає нову матрицю, отримувану після застосування згортки K до P, де P — піксельна матриця.
Приклад
Результат оператора Собеля — Фельдмана — це двовимірна мапа градієнта в кожній точці. Її можливо обробляти та розглядати так, ніби вона й сама є зображенням, із областями високого градієнта (імовірними контурами), видимими як білі лінії. Наступні зображення ілюструють це, показуючи обчислення оператора Собеля — Фельдмана на простому зображенні.
Наведені нижче зображення ілюструють зміну напрямку градієнта на крузі у відтінках сірого. Коли знаки та однакові, кут градієнта додатний, а коли різні, від'ємний. У наведеному нижче прикладі червоний і жовтий кольори на контурі кола позначують додатні кути, а синій та блакитний — від'ємні. Вертикальні контури ліворуч і праворуч кола мають кут 0, оскільки немає локальної зміни в . Горизонтальні ребра вгорі та внизу кола мають кути −π/2 та π/2 відповідно, оскільки немає локальних змін у . Від'ємний кут для верхнього контуру означає перехід від світлої області до темної, а додатний кут для нижнього контуру означає перехід від темної області до світлої. Усі інші пікселі позначено чорним через відсутність локальних змін та , і тому кут невизначений. Оскільки кут є функцією відношення до , пікселі з малими темпами зміни все ще можуть викликати велику реакцію кута. В результаті шум може викликати велику реакцію кута, що зазвичай є небажаним. Використовуючи інформацію про кут градієнта для застосувань обробки зображень, слід докладати зусиль, щоб усунути шум зображення задля зменшення цієї помилкової реакції.
Альтернативні оператори
Оператор Собеля — Фельдмана, хоч і зменшує артефакти, пов'язані з чистим оператором центральних різниць, не демонструє доброї обертової симетрії (приблизно 1° похибки). Шарр шукав можливість оптимізувати цю властивість, створивши ядра, оптимізовані для конкретної заданої числової точності (цілі числа, числа з рухомою комою…) та розмірності (1 вимір, 2 виміри, 3). Там було запропоновано оптимізовані ядра тривимірних фільтрів розміром до 5×5×5, але найчастіше використовуваними ядрами з похибкою близько 0,2° є
Це розкладається аналогічно:
Опера́тори Ша́рра (англ. Scharr operators) — це результат оптимізації, яка мінімізує зважену середньоквадратичну кутову похибку в області Фур'є. Ця оптимізація виконується за умови, що отримані фільтри чисельно узгоджені. Тому вони дійсно є ядрами похідних, а не просто дотримуються обмежень симетрії. Оптимальним 8-бітним цілочисловим фільтром 3x3, що випливає з теорії Шарра, є
Подібну стратегію оптимізації та отримані фільтри також запропонували Фарид і Сімончеллі. Вони також досліджують схеми похідних вищого порядку. На відміну від роботи Шарра, ці фільтри не повинні бути чисельно узгодженими.
Задачу проєктування фільтрів похідних було переглянуто, наприклад, Круном.
Фільтри похідних на основі довільних кубічних сплайнів запропонував Гаст. Він показав, як можливо правильно обчислювати похідні першого та другого порядку за допомогою кубічних чи тригонометричних сплайнів за допомогою підходу подвійного фільтрування, який дає фільтри довжини 7.
Іншим подібним оператором, який спочатку було породжено з оператора Собеля, є оператор Каялі, згортковий фільтр 3x3 на основі ідеальної обертової симетрії.
Напрямково оптимальні ядра похідних значно знижують систематичні похибки в оцінюванні оптичного потоку. Більші схеми з іще більшою точністю та сімействами оптимізованих фільтрів для розширеного оцінювання оптичного потоку було запропоновано в подальшій роботі Шарра. Було досліджено набори фільтрів похідних другого порядку для прозорого оцінювання руху. Було помічено, що чим більші отримані ядра, тим краще вони наближують фільтри похідних гауссіана.
Приклад порівняння
Тут використовують чотири різні оператори градієнта для оцінювання величини градієнта перевірного зображення.
Втілення в MATLAB
clc clear all close all test_img = imread('gantrycrane.png'); gray_img = rgb2gray(test_img); sobel_img = sobel(gray_img); figure imshow(test_img) figure imshow(gray_img) figure imshow(sobel_img) function output_image = sobel(A) Gx = [-1 0 1; -2 0 2; -1 0 1] Gy = [-1 -2 -1; 0 0 0; 1 2 1] rows = size(A, 1) columns = size(A, 2) mag = zeros(size(A)); A = double(A); for i=1:rows-2 for j=1:columns-2 S1 = sum(sum(Gx.*A(i:i+2, j:j+2))); S2 = sum(sum(Gy.*A(i:i+2, j:j+2))); mag(i + 1, j + 1) = sqrt(S1.^2 + S2.^2); end end threshold = 70 % залежить віл застосування [0–255] output_image = max(mag, threshold); output_image(output_image == round(threshold)) = 0; end
Наведений вище код MATLAB для демонстрування фільтра Собеля використовуватиме зображення, що йде в пакеті з самою MATLAB ('gantrycrane.png'). На виході будуть первинне зображення, версія первинного зображення у відтінках сірого, та результат фільтра Собеля.
Див. також
Примітки
- Irwin Sobel, 2014, History and Definition of the Sobel Operator (англ.)
- Feature Detectors – Sobel Edge Detector (англ.)
- K. Engel (2006). Real-time volume graphics. с. 112—114. (англ.)
- Scharr, Hanno, 2000, Dissertation (in German), Optimal Operators in Digital Image Processing . (нім.)
- B. Jähne, H. Scharr, and S. Körkel. Principles of filter design. In Handbook of Computer Vision and Applications. Academic Press, 1999. (англ.)
- H. Farid and E. P. Simoncelli, Optimally Rotation-Equivariant Directional Derivative Kernels, Int'l Conf Computer Analysis of Images and Patterns, pp. 207–214, Sep 1997. (англ.)
- H. Farid and E. P. Simoncelli, Differentiation of discrete multi-dimensional signals, IEEE Trans Image Processing, vol.13(4), pp. 496–508, Apr 2004. (англ.)
- D. Kroon, 2009, Short Paper University Twente, Numerical Optimization of Kernel-Based Image Derivatives . (англ.)
- A. Hast., "Simple filter design for first and second order derivatives by a double filtering approach", Pattern Recognition Letters, Vol. 42, no.1 June, pp. 65–71. 2014. (англ.)
- Dim, Jules R.; Takamura, Tamio (11 грудня 2013). Alternative Approach for Satellite Cloud Classification: Edge Gradient Application. Advances in Meteorology (англ.). 2013: 1—8. doi:10.1155/2013/584816. ISSN 1687-9309. (англ.)
- Scharr, Hanno (2007). Optimal Filters for Extended Optical Flow. Complex Motion. Lecture Notes in Computer Science. Т. 3417. Berlin, Heidelberg: Springer Berlin Heidelberg. с. 14—29. doi:10.1007/978-3-540-69866-1_2. ISBN . (англ.)
- Scharr, Hanno, OPTIMAL SECOND ORDER DERIVATIVE FILTER FAMILIES FOR TRANSPARENT MOTION ESTIMATION 15th European Signal Processing Conference (EUSIPCO 2007), Poznan, Poland, September 3–7, 2007. (англ.)
Посилання
Вікіпідручник має книгу на тему :en:Fractals/Computer_graphic_techniques/2D#Sobel_filter |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Opera tor So belya angl Sobel operator yakij inodi nazivayut opera torom So belya Fe ldmana angl Sobel Feldman operator ta fi ltrom So belya angl Sobel filter vikoristovuyut v obrobci zobrazhen ta komp yuternim bachenni zokrema v algoritmah viyavlyannya konturiv de vin stvoryuye zobrazhennya yake vidilyaye konturi Jogo nazvano na chest en ta en koleg zi en angl SAIL Sobel ta Feldman zaproponuvali ideyu izotropnogo operatora gradiyenta zobrazhennya 3 3 na vistupi v SAIL u 1968 roci Tehnichno ce inshi movi yakij obchislyuye nablizhennya en funkciyi yaskravosti zobrazhennya U kozhnij tochci zobrazhennya rezultat operatora Sobelya Feldmana abo vidpovidnij vektor gradiyenta abo norma cogo vektora Operator Sobelya Feldmana gruntuyetsya na zgortanni zobrazhennya z nevelikim rozdilnim cilochislovim filtrom v gorizontalnomu ta vertikalnomu napryamkah i tomu vidnosno nevitratnij z poglyadu obchislen Z inshogo boku nablizhennya gradiyentna yake vin stvoryuye vidnosno grube zokrema dlya visokochastotnih minlivostej na zobrazhenni Kolorove zobrazhennya rushiya Operator Sobelya zastosovanij do cogo zobrazhennyaFormulyuvannyaCej operator vikoristovuye dva yadra 3 3 yaki zgortayut z pervinnim zobrazhennyam shob obchislyuvati nablizhennya pohidnih odniyeyi dlya gorizontalnih zmin ta odniyeyi dlya vertikalnih Yaksho mi viznachimo A yak pervinne zobrazhennya a Gx ta Gy dva zobrazhennya sho v kozhnij tochci mistyat nablizhennya gorizontalnoyi ta vertikalnoyi pohidnih vidpovidno to ci obchislennya taki G x 1 0 1 2 0 2 1 0 1 A G y 1 2 1 0 0 0 1 2 1 A displaystyle mathbf G x begin bmatrix 1 amp 0 amp 1 2 amp 0 amp 2 1 amp 0 amp 1 end bmatrix mathbf A quad mathbf G y begin bmatrix 1 amp 2 amp 1 0 amp 0 amp 0 1 amp 2 amp 1 end bmatrix mathbf A de displaystyle poznachuye operaciyu zgortki u dvovimirnij obrobci signalu Oskilki yadra Sobelya mozhlivo rozklasti yak dobutki userednyuvalnogo ta diferenciyuvalnogo yader voni obchislyuyut gradiyent zi zgladzhuvannyam Napriklad G x displaystyle mathbf G x mozhlivo zapisati yak G x 1 2 1 1 0 1 A G y 1 0 1 1 2 1 A displaystyle mathbf G x begin bmatrix 1 2 1 end bmatrix left begin bmatrix 1 amp 0 amp 1 end bmatrix mathbf A right quad mathbf G y begin bmatrix 1 0 1 end bmatrix left begin bmatrix 1 amp 2 amp 1 end bmatrix mathbf A right Koordinatu x tut viznacheno yak zrostalnu pravoruch a koordinatu y yak zrostalnu donizu U kozhnij tochci zobrazhennya otrimani nablizhennya gradiyenta mozhlivo ob yednuvati shob otrimuvati velichinu gradiyenta vikoristovuyuchi G G x 2 G y 2 displaystyle mathbf G sqrt mathbf G x 2 mathbf G y 2 Vikoristovuyuchi cyu informaciyu mi takozh mozhemo obchislyuvati napryamok gradiyenta 8 atan2 G y G x displaystyle mathbf Theta operatorname atan2 mathbf G y mathbf G x de napriklad 8 displaystyle mathbf Theta dorivnyuye 0 dlya vertikalnogo konturu svitlishogo z pravogo boku shodo atan2 displaystyle operatorname atan2 div en FormalnisheOskilki funkciya yaskravosti cifrovogo zobrazhennya vidoma lishe v diskretnih tochkah pohidni ciyeyi funkciyi nemozhlivo viznachiti yaksho mi ne pripustimo sho v osnovi lezhit diferencijovna funkciya yaskravosti z yakoyi bulo zrobleno vibirku v tochkah zobrazhennya Za deyakih dodatkovih pripushen pohidnu neperervnoyi funkciyi yaskravosti mozhlivo obchislyuvati yak funkciyu vibirkovoyi funkciyi yaskravosti tobto cifrovogo zobrazhennya Viyavlyayetsya sho pohidni v bud yakij konkretnij tochci ye funkciyami znachen yaskravosti praktichno v usih tochkah zobrazhennya Prote nablizhennya cih pohidnih funkcij mozhlivo viznachiti z menshim abo bilshim stupenem tochnosti Operator Sobelya Feldmana proponuye dovoli netochne nablizhennya gradiyenta zobrazhennya ale vse she maye dostatnyu yakist dlya praktichnogo vikoristannya v bagatoh zastosuvannyah Tochnishe vin vikoristovuye znachennya yaskravosti lishe v oblasti 3 3 navkolo kozhnoyi tochki zobrazhennya shobi nabliziti vidpovidnij gradiyent zobrazhennya j vikoristovuye lishe cili znachennya dlya koeficiyentiv yaki zvazhuyut yaskravosti zobrazhennya shob otrimati nablizhennya gradiyenta Rozshirennya na inshi vimiriOperator Sobelya Feldmana skladayetsya z dvoh rozdilnih dij Zgladzhuvannya perpendikulyarno napryamku pohidnoyi za dopomogoyu trikutnogo filtra h 1 1 h 0 2 h 1 1 displaystyle h 1 1 h 0 2 h 1 1 Prostoyi centralnoyi riznici v napryamku pohidnoyi h 1 1 h 0 0 h 1 1 displaystyle h 1 1 h 0 0 h 1 1 Filtri Sobelya Feldmana dlya pohidnih zobrazhennya v riznih vimirnostyah de x y z t 0 1 1 displaystyle x y z t in left 0 1 1 right 1 vimir h x x h x displaystyle h x x h x 2 vimiri h x x y h x h y displaystyle h x x y h x h y 2 vimiri h y x y h x h y displaystyle h y x y h x h y 3 vimiri h y x y z h x h y h z displaystyle h y x y z h x h y h z 3 vimiri h z x y z h x h y h z displaystyle h z x y z h x h y h z 4 vimiri h x x y z t h x h y h z h t displaystyle h x x y z t h x h y h z h t Tozh yak priklad trivimirne yadro Sobelya Feldmana v napryamku z h z 1 1 2 1 2 4 2 1 2 1 h z 0 0 0 0 0 0 0 0 0 0 h z 1 1 2 1 2 4 2 1 2 1 displaystyle h z 1 begin bmatrix 1 amp 2 amp 1 2 amp 4 amp 2 1 amp 2 amp 1 end bmatrix quad h z 0 begin bmatrix 0 amp 0 amp 0 0 amp 0 amp 0 0 amp 0 amp 0 end bmatrix quad h z 1 begin bmatrix 1 amp 2 amp 1 2 amp 4 amp 2 1 amp 2 amp 1 end bmatrix Tehnichni detaliYak naslidok jogo viznachennya operator Sobelya mozhlivo vtilyuvati prostimi zasobami yak v aparatnomu tak i v programnomu zabezpechenni dlya obchislennya vidpovidnogo rezultatu potribni lishe visim tochok zobrazhennya navkolo tochki a dlya obchislennya nablizhennya vektora gradiyenta potribna lishe cilochislova arifmetika Krim togo obidva opisani vishe diskretni filtri rozdilni 1 0 1 2 0 2 1 0 1 1 2 1 1 0 1 1 1 1 1 1 1 1 1 displaystyle begin bmatrix 1 amp 0 amp 1 2 amp 0 amp 2 1 amp 0 amp 1 end bmatrix begin bmatrix 1 2 1 end bmatrix begin bmatrix 1 amp 0 amp 1 end bmatrix begin bmatrix 1 1 end bmatrix begin bmatrix 1 1 end bmatrix begin bmatrix 1 amp 1 end bmatrix begin bmatrix 1 amp 1 end bmatrix 1 2 1 0 0 0 1 2 1 1 0 1 1 2 1 1 1 1 1 1 1 1 1 displaystyle begin bmatrix 1 amp 2 amp 1 0 amp 0 amp 0 1 amp 2 amp 1 end bmatrix begin bmatrix 1 0 1 end bmatrix begin bmatrix 1 amp 2 amp 1 end bmatrix begin bmatrix 1 1 end bmatrix begin bmatrix 1 1 end bmatrix begin bmatrix 1 amp 1 end bmatrix begin bmatrix 1 amp 1 end bmatrix j tomu dvi pohidni Gx ta Gy mozhlivo obchislyuvati yak G x 1 2 1 1 0 1 A G y 1 0 1 1 2 1 A displaystyle mathbf G x begin bmatrix 1 2 1 end bmatrix left begin bmatrix 1 amp 0 amp 1 end bmatrix mathbf A right quad mathbf G y begin bmatrix 1 0 1 end bmatrix left begin bmatrix 1 amp 2 amp 1 end bmatrix mathbf A right U deyakih vtilennyah ce rozdilne obchislennya mozhe buti vigidnim oskilki peredbachaye menshe arifmetichnih obchislen dlya kozhnoyi tochki zobrazhennya Zastosuvannya zgortki K do grupi pikseliv P mozhlivo podati psevdokodom yak N x y Suma K i j P x i y j dlya i j z 1 po 1 N x y podaye novu matricyu otrimuvanu pislya zastosuvannya zgortki K do P de P pikselna matricya PrikladRezultat operatora Sobelya Feldmana ce dvovimirna mapa gradiyenta v kozhnij tochci Yiyi mozhlivo obroblyati ta rozglyadati tak nibi vona j sama ye zobrazhennyam iz oblastyami visokogo gradiyenta imovirnimi konturami vidimimi yak bili liniyi Nastupni zobrazhennya ilyustruyut ce pokazuyuchi obchislennya operatora Sobelya Feldmana na prostomu zobrazhenni Perevirne zobrazhennya ceglyanoyi stini ta velostoyanki u vidtinkah sirogo Normovana velichina gradiyenta vid operatora Sobelya Feldmana Normovanij x gradiyent vid operatora Sobelya Feldmana Normovanij y gradiyent vid operatora Sobelya Feldmana Navedeni nizhche zobrazhennya ilyustruyut zminu napryamku gradiyenta na kruzi u vidtinkah sirogo Koli znaki G x displaystyle mathbf G x ta G y displaystyle mathbf G y odnakovi kut gradiyenta dodatnij a koli rizni vid yemnij U navedenomu nizhche prikladi chervonij i zhovtij kolori na konturi kola poznachuyut dodatni kuti a sinij ta blakitnij vid yemni Vertikalni konturi livoruch i pravoruch kola mayut kut 0 oskilki nemaye lokalnoyi zmini v G y displaystyle mathbf G y Gorizontalni rebra vgori ta vnizu kola mayut kuti p 2 ta p 2 vidpovidno oskilki nemaye lokalnih zmin u G x displaystyle mathbf G x Vid yemnij kut dlya verhnogo konturu oznachaye perehid vid svitloyi oblasti do temnoyi a dodatnij kut dlya nizhnogo konturu oznachaye perehid vid temnoyi oblasti do svitloyi Usi inshi pikseli poznacheno chornim cherez vidsutnist lokalnih zmin G x displaystyle mathbf G x ta G y displaystyle mathbf G y i tomu kut neviznachenij Oskilki kut ye funkciyeyu vidnoshennya G y displaystyle mathbf G y do G x displaystyle mathbf G x pikseli z malimi tempami zmini vse she mozhut viklikati veliku reakciyu kuta V rezultati shum mozhe viklikati veliku reakciyu kuta sho zazvichaj ye nebazhanim Vikoristovuyuchi informaciyu pro kut gradiyenta dlya zastosuvan obrobki zobrazhen slid dokladati zusil shob usunuti shum zobrazhennya zadlya zmenshennya ciyeyi pomilkovoyi reakciyi Zobrazhennya chornogo kruga z bilim tlom u vidtinkah sirogo Napryamok gradiyenta operatora Sobelya Alternativni operatoriOperator Sobelya Feldmana hoch i zmenshuye artefakti pov yazani z chistim operatorom centralnih riznic ne demonstruye dobroyi obertovoyi simetriyi priblizno 1 pohibki Sharr shukav mozhlivist optimizuvati cyu vlastivist stvorivshi yadra optimizovani dlya konkretnoyi zadanoyi chislovoyi tochnosti cili chisla chisla z ruhomoyu komoyu ta rozmirnosti 1 vimir 2 vimiri 3 Tam bulo zaproponovano optimizovani yadra trivimirnih filtriv rozmirom do 5 5 5 ale najchastishe vikoristovuvanimi yadrami z pohibkoyu blizko 0 2 ye h x 3 0 3 10 0 10 3 0 3 h y 3 10 3 0 0 0 3 10 3 displaystyle h x begin bmatrix 3 amp 0 amp 3 10 amp 0 amp 10 3 amp 0 amp 3 end bmatrix h y begin bmatrix 3 amp 10 amp 3 0 amp 0 amp 0 3 amp 10 amp 3 end bmatrix Ce rozkladayetsya analogichno 3 10 3 3 1 1 3 displaystyle begin bmatrix 3 amp 10 amp 3 end bmatrix begin bmatrix 3 amp 1 end bmatrix begin bmatrix 1 amp 3 end bmatrix Opera tori Sha rra angl Scharr operators ce rezultat optimizaciyi yaka minimizuye zvazhenu serednokvadratichnu kutovu pohibku v oblasti Fur ye Cya optimizaciya vikonuyetsya za umovi sho otrimani filtri chiselno uzgodzheni Tomu voni dijsno ye yadrami pohidnih a ne prosto dotrimuyutsya obmezhen simetriyi Optimalnim 8 bitnim cilochislovim filtrom 3x3 sho viplivaye z teoriyi Sharra ye h x 47 0 47 162 0 162 47 0 47 h y 47 162 47 0 0 0 47 162 47 displaystyle h x begin bmatrix 47 amp 0 amp 47 162 amp 0 amp 162 47 amp 0 amp 47 end bmatrix h y begin bmatrix 47 amp 162 amp 47 0 amp 0 amp 0 47 amp 162 amp 47 end bmatrix Podibnu strategiyu optimizaciyi ta otrimani filtri takozh zaproponuvali Farid i Simonchelli Voni takozh doslidzhuyut shemi pohidnih vishogo poryadku Na vidminu vid roboti Sharra ci filtri ne povinni buti chiselno uzgodzhenimi Zadachu proyektuvannya filtriv pohidnih bulo pereglyanuto napriklad Krunom Filtri pohidnih na osnovi dovilnih kubichnih splajniv zaproponuvav Gast Vin pokazav yak mozhlivo pravilno obchislyuvati pohidni pershogo ta drugogo poryadku za dopomogoyu kubichnih chi trigonometrichnih splajniv za dopomogoyu pidhodu podvijnogo filtruvannya yakij daye filtri dovzhini 7 Inshim podibnim operatorom yakij spochatku bulo porodzheno z operatora Sobelya ye operator Kayali zgortkovij filtr 3x3 na osnovi idealnoyi obertovoyi simetriyi Napryamkovo optimalni yadra pohidnih znachno znizhuyut sistematichni pohibki v ocinyuvanni optichnogo potoku Bilshi shemi z ishe bilshoyu tochnistyu ta simejstvami optimizovanih filtriv dlya rozshirenogo ocinyuvannya optichnogo potoku bulo zaproponovano v podalshij roboti Sharra Bulo doslidzheno nabori filtriv pohidnih drugogo poryadku dlya prozorogo ocinyuvannya ruhu Bulo pomicheno sho chim bilshi otrimani yadra tim krashe voni nablizhuyut filtri pohidnih gaussiana Priklad porivnyannyaTut vikoristovuyut chotiri rizni operatori gradiyenta dlya ocinyuvannya velichini gradiyenta perevirnogo zobrazhennya Perevirne zobrazhennya ceglyanoyi stini ta velostoyanki u vidtinkah sirogo Velichina gradiyenta vid operatora Sobelya Feldmana Velichina gradiyenta vid operatora Sharra Velichina gradiyenta vid operatora Robertsa Velichina gradiyenta vid operatora PryuittVtilennya v MATLABclc clear all close all test img imread gantrycrane png gray img rgb2gray test img sobel img sobel gray img figure imshow test img figure imshow gray img figure imshow sobel img function output image sobel A Gx 1 0 1 2 0 2 1 0 1 Gy 1 2 1 0 0 0 1 2 1 rows size A 1 columns size A 2 mag zeros size A A double A for i 1 rows 2 for j 1 columns 2 S1 sum sum Gx A i i 2 j j 2 S2 sum sum Gy A i i 2 j j 2 mag i 1 j 1 sqrt S1 2 S2 2 end end threshold 70 zalezhit vil zastosuvannya 0 255 output image max mag threshold output image output image round threshold 0 end Navedenij vishe kod MATLAB dlya demonstruvannya filtra Sobelya vikoristovuvatime zobrazhennya sho jde v paketi z samoyu MATLAB gantrycrane png Na vihodi budut pervinne zobrazhennya versiya pervinnogo zobrazhennya u vidtinkah sirogo ta rezultat filtra Sobelya Div takozhCifrova obrobka zobrazhen Viyavlyannya oznak komp yuterne bachennya Vidilyannya oznak en Operator PryuittPrimitkiIrwin Sobel 2014 History and Definition of the Sobel Operator angl Feature Detectors Sobel Edge Detector angl K Engel 2006 Real time volume graphics s 112 114 angl Scharr Hanno 2000 Dissertation in German Optimal Operators in Digital Image Processing nim B Jahne H Scharr and S Korkel Principles of filter design In Handbook of Computer Vision and Applications Academic Press 1999 angl H Farid and E P Simoncelli Optimally Rotation Equivariant Directional Derivative Kernels Int l Conf Computer Analysis of Images and Patterns pp 207 214 Sep 1997 angl H Farid and E P Simoncelli Differentiation of discrete multi dimensional signals IEEE Trans Image Processing vol 13 4 pp 496 508 Apr 2004 angl D Kroon 2009 Short Paper University Twente Numerical Optimization of Kernel Based Image Derivatives angl A Hast Simple filter design for first and second order derivatives by a double filtering approach Pattern Recognition Letters Vol 42 no 1 June pp 65 71 2014 angl Dim Jules R Takamura Tamio 11 grudnya 2013 Alternative Approach for Satellite Cloud Classification Edge Gradient Application Advances in Meteorology angl 2013 1 8 doi 10 1155 2013 584816 ISSN 1687 9309 angl Scharr Hanno 2007 Optimal Filters for Extended Optical Flow Complex Motion Lecture Notes in Computer Science T 3417 Berlin Heidelberg Springer Berlin Heidelberg s 14 29 doi 10 1007 978 3 540 69866 1 2 ISBN 978 3 540 69864 7 angl Scharr Hanno OPTIMAL SECOND ORDER DERIVATIVE FILTER FAMILIES FOR TRANSPARENT MOTION ESTIMATION 15th European Signal Processing Conference EUSIPCO 2007 Poznan Poland September 3 7 2007 angl PosilannyaVikipidruchnik maye knigu na temu en Fractals Computer graphic techniques 2D Sobel filter Viyavlyannya konturiv Sobelya v OpenCV Filtr Sobelya v biblioteci Python SciPy Bibliografichni posilannya na Irvina Sobelya v DBLP Priklad viyavlyannya konturiv Sobelya za dopomogoyu komp yuternih algoritmiv