Структурний тензор

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

У математиці структу́рний те́нзор (англ. structure tensor), відомий також як ма́триця дру́гого моме́нту (англ. second-moment matrix), — це матриця, яку виводять з градієнта функції. Він описує розподіл градієнта в заданому околі навколо точки, та робить цю інформацію інваріантною щодо координат спостереження. Структурний тензор часто використовують в обробці зображень та комп'ютерному баченні.[1][2][3]

Двовимірний структурний тензор[ред. | ред. код]

Неперервний варіант[ред. | ред. код]

Для функції двох змінних p = (x, y) структурний тензор — це матриця 2×2

де та  — частинні похідні відносно x та y; інтеграли пробігають площину ; а w — деяка фіксована «віконна функція» (така як гауссове розмиття), розподіл двох змінних. Зверніть увагу, що матриця сама є функцією p = (x, y).

Наведену вище формулу можливо також записати як , де  — матрицезначна функція, визначена як

Якщо градієнт функції розглядати як матрицю 2×1 (одностовпчикову), де позначує операцію транспонування, яке перетворює рядковий вектор на стовпчиковий, то матрицю можливо записати як матричний добуток або тензорний чи зовнішній добуток . Проте зауважте, що структурний тензор неможливо розкладати таким чином у загальному випадку, за винятком, коли  — дельта-функція Дірака.

Дискретний варіант[ред. | ред. код]

В обробці зображень та інших подібних застосуваннях функцію зазвичай задають дискретним масивом зразків , де p — пара цілих індексів. Двовимірний структурний тензор у заданому пікселі зазвичай вважають дискретною сумою

Тут індекс підсумовування r пробігає скінченний набір пар індексів («вікно», зазвичай для деякого m), а w[r] — фіксована «віконна вага», яка залежить від r, така, що сума всіх ваг становить 1. Значення  — частинні похідні, взяті в пікселі p; які, наприклад, можна оцінювати з за формулами скінченних різниць.

Формулу структурного тензора можливо також записати як , де  — матрицезначний масив, такий, що

Інтерпретація[ред. | ред. код]

Важливість двовимірного структурного тензора випливає з факту узагальнювання власними значеннями (які можливо впорядковувати так, що ) та відповідними власними векторами розподілу градієнта функції у вікні, визначеному з центром в .[1][2][3]

А саме, якщо , то (або ) — це напрямок, максимально узгоджений із градієнтом у вікні.

Зокрема, якщо , то градієнт завжди кратний (додатний, від'ємний або нульовий); це справджується тоді й лише тоді, коли у вікні змінюється вздовж напрямку , але є сталою вздовж . Цю умову власних значень також називають умовою лінійної симетрії, оскільки тоді ізолінії складаються з паралельних прямих, тобто існує одновимірна функція , яка може породжувати двовимірну функцію як для деякого сталого вектора та координат .

З іншого боку, якщо , то градієнт у вікні не має переважного напрямку; це відбувається, наприклад, коли зображення в цьому вікні має обертову симетрію. Цю умову власних значень також називають збалансованим тілом (англ. balanced body), або умовою напрямкової рівноваги (англ. directional equilibrium), оскільки вона виконується тоді, коли всі напрямки градієнта у вікні однаково часті/імовірні.

Крім того, умова трапляється тоді й лише тоді, коли функція в межах стала ().

Загальніше, значення для k =1 чи k =2 — це -зважене усереднення в околі p квадрата похідної за напрямком . Відносна розбіжність між двома власними значеннями є покажчиком ступеню анізотропності градієнта у вікні, а саме того, наскільки сильно він схильний до певного напрямку (і його протилежності).[4][5] Цей атрибут можливо кількісно виразити когере́нтністю (англ. coherence), визначеною як

якщо . Ця величина дорівнює 1, коли градієнт повністю вирівняний, і 0, якщо він не має переважного напрямку. Формула не визначена, навіть у границі, коли зображення у вікні стале (). Деякі автори визначають її в такому випадку як 0.

Зауважте, що усереднення градієнта всередині вікна не є добрим покажчиком анізотропії. Паралельні, але протилежно спрямовані градієнтні вектори в цьому усередненні нейтралізуються, тоді як у структурному тензорі вони належним чином додаються.[6] Ось чому для оптимізації напрямку в усередненні структурного тензора використовують замість .

Розширюючи ефективний радіус віконної функції (тобто, збільшуючи її дисперсію), можливо робити структурний тензор стійкішим до шуму ціною зниження просторової роздільності.[5][7] Формальну основу цієї властивості описано докладніше нижче, де показано, що багатомасштабне формулювання структурного тензора, яке називають багатомасштабним структурним тензором, становить істинне багатомасштабне подання напрямкових даних за варіацій просторового обширу віконної функції.

Комплексний варіант[ред. | ред. код]

Інтерпретація та втілення двовимірного структурного тензора стають особливо доступними за залучення комплексних чисел.[2] Структурний тензор складається з трьох дійсних чисел

де , , а , де для дискретного подання інтеграли можливо замінити підсумовуваннями. З використанням тотожності Парсеваля стає ясно, що ці три дійсні числа є моментами другого порядку спектрального розподілу енергії . Тоді наступний комплексний момент другого порядку спектрального розподілу енергії можливо записати як

де ,  — напрямковий кут старшого власного вектора структурного тензора, , тоді як та  — найбільш і найменш значущі власні значення. З цього випливає, що містить як певність (англ. certainty) , так і оптимальний напрямок у подвоєнокутовому поданні, оскільки це комплексне число, що складається з двох дійсних чисел. Звідси також випливає, що якщо градієнт подано комплексним числом, та перевідображено піднесенням до квадрату (тобто, кути аргументу комплексного градієнта подвоєно), то усереднення діє як оптимізатор у цій відображеній області, оскільки воно безпосередньо забезпечує як оптимальний напрямок (у подвоєнокутовому поданні), так і пов'язану з цим певність. Відтак, комплексне число показує, наскільки лінійна структура (лінійна симетрія) присутня в зображенні , а це комплексне число отримують безпосередньо усереднюванням градієнта в його (комплексному) повоєнокутовому поданні без явного обчислення власних значень і власних векторів.

Так само, можливо отримувати наступний комплексний момент другого порядку спектрального розподілу енергії , який завжди дійсний, бо дійсна,

де та , як і раніше, — власні значення. Зауважте, що цього разу величину комплексного градієнту піднесено до квадрату (що завжди дійсний).

Проте розкладання структурного тензора на його власні вектори дає його тензорні складові як

де  — одинична матриця у двох вимірах, оскільки ці два власні вектори завжди перпендикулярні (й дають у сумі одиницю). Перший член у крайньому виразі цього розкладу, , подає складову лінійної симетрії структурного тензора, що містить всю напрямкову інформацію (як матриця рангу 1), тоді як другий член подає складову збалансованого тіла тензора, яка не містить жодної інформації про напрямок (містячи одиничну ). Тоді знати, скільки напрямкової інформації в , — те саме, що перевіряти, наскільки велика порівняно з .

Очевидно, що  — комплексний еквівалент першого члена в тензорному розкладі, тоді як

це еквівалент другого члена. Таким чином, ці два скаляри, що складаються з трьох дійсних чисел,

де  — (комплексний) градієнтний фільтр, а  — згортка, становлять комплексне подання двовимірного структурного тензора. Як обговорювалося тут і в інших місцях, визначає локальне зображення, що зазвичай є гауссіаном (з певною дисперсією, що визначає зовнішній масштаб), а  — параметр (внутрішнього масштабу), що визначає ефективний діапазон частот, у якому оцінюють спрямування .

Елегантність комплексного подання випливає з того, що дві складові структурного тензора можливо отримувати як усереднення, і незалежно. Своєю чергою, це означає, що та можливо використовувати в масштабопросторовому поданні для опису свідчення наявності унікального спрямування та свідчення альтернативної гіпотези, наявності кількох збалансованих спрямувань, без обчислення власних векторів і власних значень. Існування такого функціоналу, як піднесення комплексних чисел у квадрат, для структурних тензорів розмірністю понад два досі показано не було. У Бігуна 91 було заявлено з належною аргументацією, що це через те, що комплексні числа є комутативними алгебрами, тоді як кватерніони, можливий кандидат для побудови такого функціоналу, становлять некомутативну алгебру.[8]

Комплексне подання структурного тензора часто використовують в аналізі відбитків пальців, щоб отримувати карти напрямків, що містять певності, які, своєю чергою, використовують для їхнього покращення, щоби знаходити розташування глобальних (ядра та дельти) та локальних (мінуції) сингулярностей, а також для автоматичного оцінювання якості відбитків.

Тривимірний структурний тензор[ред. | ред. код]

Визначення[ред. | ред. код]

Структурний тензор можливо визначити також і для функції трьох змінних p =(x, y, z) абсолютно аналогічним чином. А саме, в безперервному варіанті маємо , де

де  — три частинні похідні , а інтеграл пробігає .

У дискретному варіанті , де

а сума пробігає скінченну множину тривимірних індексів, зазвичай для деякого m.

Інтерпретація[ред. | ред. код]

Як і у двовимірному випадку, власні значення матриці та відповідні власні вектори узагальнюють розподіл напрямків градієнта в околі p, визначеному вікном . Цю інформацію можливо унаочнити як еліпсоїд, півосі якого дорівнюють власним значенням і спрямовані вздовж відповідних власних векторів.[9][10]

Еліпсоїдне подання тривимірного структурного тензора.

Зокрема, якщо еліпсоїд розтягнуто вздовж лише однієї з осей, як сигару (тобто, якщо набагато більше як за , так і за ), це означає, що градієнт у вікні переважно узгоджується з напрямком , так, що ізоповерхні схильні бути пласкими та перпендикулярними до цього вектора. Така ситуація виникає, наприклад, коли p лежить на тонкій пластиноподібній ознаці або на гладкій межі між двома областями з контрастними значеннями.

Еліпсоїд структурного тензора поверхнеподібного околу («серфеля[en]»), де .
Тривимірне вікно, розташоване на гладкій межі між двома рівномірними областями тривимірного зображення.
Відповідний еліпсоїд структурного тензора.

Якщо еліпсоїд сплющено лише в одному напрямку, як млинець (тобто, якщо набагато менше як за , так і за ), це означає, що напрямки градієнта розсіяні, але перпендикулярні , так, що ізоповерхні схильні бути як труби, паралельні цьому вектору. Така ситуація виникає, наприклад, коли p лежить на тонкій лінієподібній ознаці, або на гострому куті межі між двома областями з контрастними значеннями.

Структурний тензор лінієподібного околу («курвеля», англ. "curvel"), де .
Тривимірне вікно, розташоване на лінієподібній ознаці тривимірного зображення.
Відповідний еліпсоїд структурного тензора.

Нарешті, якщо еліпсоїд приблизно сферичний (тобто, якщо ), це означає, що напрямки градієнта у вікні розподілено більш-менш рівномірно, без явної переваги; так, що функція в цьому околі переважно ізотропна. Це відбувається, наприклад, коли функція має сферичну симетрію[en] в околі p. Зокрема, якщо еліпсоїд вироджується в точку (тобто, якщо три власні значення дорівнюють нулю), це означає, що у вікні стала (має нульовий градієнт).

Структурний тензор ізотропного околу, де .
Тривимірне вікно, що містить сферичну ознаку тривимірного зображення.
Відповідний еліпсоїд структурного тензора.

Багатомасштабний структурний тензор[ред. | ред. код]

Структурний тензор — важливий інструмент у масштабопросторовому аналізі. Багатомасшта́бний структу́рний те́нзор (або багатомасшта́бна ма́триця дру́гого моме́нту, англ. multi-scale structure tensor, multi-scale second moment matrix) функції , на відміну від інших однопараметрових масштабних просторів, демонструє описувач зображення, який визначають двома параметрами масштабу. Один параметр масштабу, який називають локальним масштабом (англ. local scale) , необхідний для визначання рівня попереднього згладжування при обчисленні градієнта зображення . Інший параметр масштабу, який називають масштабом інтегрування (англ. integration scale) , необхідний для визначання просторового обширу віконної функції , яка визначає ваги для області простору, над якою накопичують складові зовнішнього добутку градієнта на самого себе.

Точніше, припустімо, що  — дійснозначний сигнал, визначений над . Нехай для будь-якого локального масштабу багатомасштабне подання цього сигналу задано через , де подає ядро попереднього згладжування. Крім того, нехай позначує градієнт цього масштабопросторового подання. Тоді багатомасштабний структурний тензор/матрицю другого моменту (англ. multi-scale structure tensor/second-moment matrix) визначають через[7][11][12]

В принципі, можна спитати, чи буде достатньо використовувати будь-які самоподібні сімейства згладжувальних функцій та . Проте, якщо наївно застосувати, наприклад, коробковий фільтр, то можуть легко виникнути небажані артефакти. Якщо хотіти, щоби багатомасштабний структурний тензор поводився добре як за зростання локальних масштабів , так і за зростання масштабів інтегрування , то можливо показати, що і функція згладжування, і віконна функція мають бути гауссіанами.[7] Умови, які визначають цю унікальність, подібні до масштабопросторових аксіом, які використовують для виведення унікальності гауссового ядра для звичайного гауссового простору масштабів яскравостей зображення.

У цьому сімействі описувачів зображень існують різні способи оперування двопараметровою мінливістю масштабів. Якщо ми зберігаємо параметр локального масштабу незмінним, і застосовуємо щодалі розширеніші версії віконної функції, збільшуючи лише параметр масштабу інтегрування , то ми отримуємо істинне формальне масштабопросторове подання напрямкових даних, обчислене у заданому локальному масштабі .[7] Якщо ми пов'яжемо локальний масштаб і масштаб інтегрування відносним масштабом інтегрування (англ. relative integration scale) , так, що , то для будь-якого незмінного значення ми отримуємо зведену самоподібну однопараметрову мінливість, яку часто використовують для спрощення обчислювальних алгоритмів, наприклад, у виявлянні кутів, особливих точок, аналізі текстур, та зіставлянні зображень. Змінюючи відносний масштаб інтегрування у такій самоподібній мінливості масштабу, ми отримуємо інший альтернативний спосіб параметрування багатомасштабної природи напрямкових даних, отримуваних шляхом збільшення масштабу інтегрування.

Концептуально подібну побудову можливо виконати й для дискретних сигналів, замінивши згортковий інтеграл згортковою сумою, а неперервне гауссове ядро  — дискретним гауссовим ядром :

При квантуванні параметрів масштабу та у фактичному втіленні зазвичай використовують скінченну геометричну прогресію , де i пробігає від 0 до деякого максимального індексу масштабу m. Таким чином, дискретні рівні масштабу матимуть певну подібність до піраміди зображення, хоча просторову підвибірку для збереження точніших даних для наступних етапів обробки можуть використовувати не обов'язково.

Застосування[ред. | ред. код]

Власні значення структурного тензора відіграють важливу роль у багатьох алгоритмах обробки зображень, для таких задач як виявляння кутів, особливих точок, та відстежування ознак.[9][13][14][15][16][17][18] Структурний тензор також відіграє центральну роль в алгоритмі оптичного потоку Лукаса — Канаде та в його розширеннях для оцінювання афінного пристосовування форми;[11] де величина є показником надійності обчисленого результату. Цей тензор використовували для масштабопросторового аналізу,[7] оцінювання локального спрямування поверхні за монокулярними та бінокулярними сигналами,[12] нелінійного покращування відбитків пальців,[19] дифузної обробки зображень,[20][21][22][23] та кількох інших задач обробки зображень. Структурний тензор також можливо застосовувати в геології для фільтрування сейсмічних даних.[24]

Обробка просторово-часових відеоданих за допомогою структурного тензора[ред. | ред. код]

Тривимірний структурний тензор використовували для аналізу тривимірних відеоданих (які розглядали як функцію x, y та часу t).[4] Якщо в цьому контексті націлюватися на описувачі зображення, інваріантні щодо галілеєвих перетворень, щоб уможливити порівняння вимірювань зображення, отримуваних за варіацій апріорно невідомих швидкостей зображення

,

проте з обчислювальної точки зору краще параметрувати складові в структурному тензорі/матриці другого моменту , використовуючи поняття галілеєвої діагоналізації (англ. Galilean diagonalization)[25]

де позначує галілеєве перетворення простору-часу, а  — двовимірне обертання в просторовій області, порівняно з вищезазначеним використанням власних значень тривимірного структурного тензора, що відповідає розкладу на власні значення та (нефізичному) тривимірному обертанню простору-часу

.

Проте для отримання істинної галілеєвої інваріантності необхідно також пристосовувати форму просторово-часової віконної функції,[25][26] відповідно до перенесення афінного пристосовування форми[11] з просторових до просторово-часових даних зображення. У поєднанні з локальними просторово-часовими гістограмними описувачами[27] ці концепції разом уможливлюють галілейноінваріантне розпізнавання просторово-часових подій.[28]

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. а б J. Bigun and G. Granlund (1986), Optimal Orientation Detection of Linear Symmetry. Tech. Report LiTH-ISY-I-0828, Computer Vision Laboratory, Linkoping University, Sweden 1986; Thesis Report, Linkoping studies in science and technology No. 85, 1986. (англ.)
  2. а б в J. Bigun & G. Granlund (1987). Optimal Orientation Detection of Linear Symmetry. First int. Conf. on Computer Vision, ICCV, (London). Piscataway: IEEE Computer Society Press, Piscataway. с. 433—438. (англ.)
  3. а б H. Knutsson (1989). Representing local structure using tensors. Proceedings 6th Scandinavian Conf. on Image Analysis. Oulu: Oulu University. с. 244—251. (англ.)
  4. а б B. Jahne (1993). Spatio-Temporal Image Processing: Theory and Scientific Applications. Т. 751. Berlin: Springer-Verlag. (англ.)
  5. а б G. Medioni, M. Lee & C. Tang (March 2000). A Computational Framework for Feature Extraction and Segmentation. Elsevier Science. (англ.)
  6. T. Brox; J. Weickert; B. Burgeth & P. Mrazek (2004). Nonlinear Structure Tensors (Технічний звіт). № 113. Universität des Saarlandes. (англ.)
  7. а б в г д T. Lindeberg (1993), Scale-Space Theory in Computer Vision. Kluwer Academic Publishers, (докладні формулювання того, як багатомасштабна матриця другого моменту/структурний тензор визначає істинне та однозначно визначене багатомасштабне подання напрямкових даних, див. у розділах 14.4.1 та 14.2.3 на сторінках 359—360 та 355—356). (англ.)
  8. J. Bigun; G. Granlund & J. Wiklund (1991). Multidimensional Orientation Estimation with Applications to Texture Analysis and Optical Flow. IEEE Transactions on Pattern Analysis and Machine Intelligence. 13 (8): 775—790. doi:10.1109/34.85668. (англ.)
  9. а б M. Nicolescu & G. Medioni (2003). Motion Segmentation with Accurate Boundaries – A Tensor Voting Approach. Proc. IEEE Computer Vision and Pattern Recognition. Т. 1. с. 382—389. (англ.)
  10. Westin, C.-F.; Maier, S.E.; Mamata, H.; Nabavi, A.; Jolesz, F.A.; Kikinis, R. (June 2002). Processing and visualization for diffusion tensor MRI. Medical Image Analysis (англ.). 6 (2): 93—108. doi:10.1016/S1361-8415(02)00053-1. PMID 12044998. (англ.)
  11. а б в T. Lindeberg & J. Garding (1997). Shape-adapted smoothing in estimation of 3-D depth cues from affine distortions of local 2-D structure. Image and Vision Computing. 15 (6): 415—434. doi:10.1016/S0262-8856(97)01144-X. (англ.)
  12. а б J. Garding and T. Lindeberg (1996). "Direct computation of shape cues using scale-adapted spatial derivative operators, International Journal of Computer Vision, volume 17, issue 2, pages 163–191. (англ.)
  13. W. Förstner (1986). A Feature Based Correspondence Algorithm for Image Processing. International Archives of Photogrammetry and Remote Sensing. 26: 150—166. (англ.)
  14. C. Harris & M. Stephens (1988). A Combined Corner and Edge Detector. Proc. of the 4th ALVEY Vision Conference. с. 147—151. (англ.)
  15. K. Rohr (1997). On 3D Differential Operators for Detecting Point Landmarks. Image and Vision Computing. 15 (3): 219—233. doi:10.1016/S0262-8856(96)01127-4. (англ.)
  16. I. Laptev & T. Lindeberg (2003). Space–time interest points. International Conference on Computer Vision ICCV'03. Т. I. с. 432—439. doi:10.1109/ICCV.2003.1238378. (англ.)
  17. B. Triggs (2004). Detecting Keypoints with Stable Position, Orientation, and Scale under Illumination Changes. Proc. European Conference on Computer Vision. Т. 4. с. 100—113. (англ.)
  18. C. Kenney, M. Zuliani & B. Manjunath (2005). An Axiomatic Approach to Corner Detection. Proc. IEEE Computer Vision and Pattern Recognition. с. 191—197. (англ.)
  19. A. Almansa and T. Lindeberg (2000), Enhancement of fingerprint images using shape-adaptated scale-space operators. IEEE Transactions on Image Processing, volume 9, number 12, pages 2027–2042. (англ.)
  20. J. Weickert (1998), Anisotropic diffusion in image processing, Teuber Verlag, Stuttgart. (англ.)
  21. D. Tschumperle & R. Deriche (September 2002). Diffusion PDEs on Vector-Valued Images. IEEE Signal Processing Magazine. 19 (5): 16—25. doi:10.1109/MSP.2002.1028349. (англ.)
  22. S. Arseneau & J. Cooperstock (September 2006). An Asymmetrical Diffusion Framework for Junction Analysis. British Machine Vision Conference. Т. 2. с. 689—698. (англ.)
  23. S. Arseneau & J. Cooperstock (November 2006). An Improved Representation of Junctions through Asymmetric Tensor Diffusion. International Symposium on Visual Computing. (англ.)
  24. Yang, Shuai; Chen, Anqing; Chen, Hongde (25 травня 2017). Seismic data filtering using non-local means algorithm based on structure tensor. Open Geosciences. 9 (1): 151—160. Bibcode:2017OGeo....9...13Y. doi:10.1515/geo-2017-0013. ISSN 2391-5447. S2CID 134392619. (англ.)
  25. а б T. Lindeberg; A. Akbarzadeh & I. Laptev (August 2004). Galilean-corrected spatio-temporal interest operators. International Conference on Pattern Recognition ICPR'04. Т. I. с. 57—62. doi:10.1109/ICPR.2004.1334004. (англ.)
  26. I. Laptev & T. Lindeberg (August 2004). Velocity adaptation of space–time interest points. International Conference on Pattern Recognition ICPR'04. Т. I. с. 52—56. doi:10.1109/ICPR.2004.971. (англ.)
  27. I. Laptev & T. Lindeberg (May 2004). Local descriptors for spatio-temporal recognition. ECCV'04 Workshop on Spatial Coherence for Visual Motion Analysis (Prague, Czech Republic) Springer Lecture Notes in Computer Science. Т. 3667. с. 91—103. doi:10.1007/11676959. (англ.)
  28. I. Laptev; B. Caputo; C. Schuldt & T. Lindeberg (2007). Local velocity-adapted motion events for spatio-temporal recognition. Computer Vision and Image Understanding. Т. 108. с. 207—229. doi:10.1016/j.cviu.2006.11.023. (англ.)

Ресурси[ред. | ред. код]