Luciv / МКОИ_Lab
.pdf3)Составьте схему алгоритма анализа текстур по методу энергетических характеристик Лавса.
4)Какое условие накладывается на изображение при вычислении энергетических карт? Как достигают выполнения этого условия?
5)С какой целью выполняется операция (2.3) при формировании энергетической карты?
6)Всегда ли целесообразно выполнять объединение энергетических карт в соответствии с (2.4)?
7)Приведите пример использования инверсных изофот при бинаризации изображений.
8)В чем вы видите смысл меры Фишера? Какие статистические характеристики пространства признаков она учитывает?
9)Что представляет собой таблица межкластерных расстояний?
10)Дайте определение текстуры, положенное в основу анализа текстур.
11)Приведите примеры текстур в природе.
12)Какие текстуры называются анизотропными? Какие параметры алгоритма позволяют управлять анизотропностью синтезируемых текстур?
11
3Лабораторная работа № 3
Исследование методов формирования гистограммных признаков второго порядка
Цель работы – ознакомиться с методами формирования матриц рассеяния, вычисления гистограммных признаков второго порядка, выбора признаков текстур для их классификации.
Задание по работе:
−Изучить теоретическую часть работы.
−Использовать базу текстур лабораторной работы №2.
−Разработать и выполнить алгоритм формирования матриц рассеяния.
−Разработать и выполнить алгоритм формирования признаков текстур для разных векторов смещения.
−Получить оценки оптимальных векторов смещения.
−Выбрать набор эффективных признаков для сегментации текстур, представленных в базе.
−Выполнить сегментацию текстур на примере мозаик.
−Оценить эффективность сегментации.
3.1 Теоретическая часть
Метод основан на статистическом описании текстуры [1]. Оценка признаков текстур строится по матрице рассеяния. Эта матрица в разных источниках называется по-разному (матрица вхождений), в англоязычной литературе применяется термин «co-occurrence matrix». Матрица рассеяния - это двумерный массив N, в котором индексы строк и столбцов образуют множество V допустимых на изображении значений элементов. Для полутоновых изображений V - множество допустимых значений интенсивности (яркости).
Значение N d (a,b) указывает, сколько раз значение a встречается в изображении в некотором заданном пространственном отношении d со значением b [2]. Например, пусть множество V представляет собой множество значений яркости, а пространственное отношение описывается вектором d. Этот вектор задает смещение между элементом с яркостью a и элементом с яркостью b и представляется в виде:
d = [dr , dc ]T , |
(3.1) |
где dr - смещение по строкам, dc - смещение по столбцам.
Полутоновая матрица рассеяния Nd для изображения V определяется выражением:
Nd = {[r,c] |
|
V[r,c]= a & V[r + dr,c + dc]= b}. |
(3.2) |
|
12
На рис. 3.1 показаны три различные матрицы рассеяния N01 , N10 и N11 для одного и того же фрагмента изображения V, размер которого
равен 5x5 элементов.
j
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
0 |
0 |
0 |
1 |
|
a |
|
b |
|
a |
|
a |
|
|
0 |
2 |
2 |
2 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b |
|
|
b |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
1 |
0 |
2 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
i |
|
|
|
|
|
|
N01 |
|
|
N10 |
N11 |
|||
1 |
0 |
2 |
0 |
1 |
|
|
|
|||||||
|
|
|
|
|||||||||||
|
1 |
0 |
2 |
0 |
1 |
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
|
0 |
1 |
2 |
|
2 |
4 |
4 |
|
4 |
1 |
3 |
|
|
0 |
1 |
3 |
4 |
|
|
|
|
|
|
|
|
|
a |
1 |
|
|
|
|
4 |
0 |
0 |
|
1 |
6 |
0 |
|
2 |
0 |
1 |
|
||
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
3 |
1 |
2 |
N01 |
2 |
0 |
3 |
N10 |
|
3 |
1 |
1 |
N11 |
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 3.1 Формирование матрицы рассеяния
В матрице N01 элемент с адресом (1,0) равен 4. Это значит, что переход яркости из значения 1 ( a =1) в значение 0 ( b = 0 ) в двух соседних элементах, расположенных на одной строке, встречается 4 раза в рассматриваемом фрагменте изображения. Адреса ячеек a , соответствующие этим переходам во фрагменте изображения: (0,0), (2,0), (3,0), (4,0). В матрице N11 все элементы представляют собой значения числа переходов значения яркости из a в b при смещении из адреса (i-1,j-1) в адрес (i,j).
Из матрицы рассеяния формируется нормированная матрица рассеяния. При нормировке каждый элемент матрицы рассеяния делится на сумму всех элементов матрицы рассеяния, то есть на общее число возможных переходов при заданном векторе смещения d [3]. Значения элементов вычисляются по формуле:
p(a,b) = N d (a,b) ∑∑ N d (a,b) |
(3.3) |
ab
Вэтом случае матрицу рассеяния интерпретируют в терминах гистограммы второго порядка. Матрица рассеяния используется для оценки признаков текстур. В качестве признаков используются следующие признаки.
Ковариация вычисляется в соответствии с:
2 L −12 L −1 |
|
BC = ∑ ∑(a − a )(b − b )p(a,b) |
(3.4) |
a =0 b =0
13
Момент инерции (контраст):
|
2 L −12 L −1 |
|
|
|
|
|
|
|
|
|
|
|
||
BI |
= ∑ |
∑ (a − b)2 p(a,b) |
(3.5) |
|||||||||||
|
a =0 b =0 |
|
|
|
|
|
|
|
|
|
|
|
||
|
Средняя абсолютная разность: |
|
||||||||||||
|
2 L −12 L −1 |
|
p(a,b) |
|
|
|
|
|
|
|
|
|||
BV = ∑ |
∑ |
a − b |
|
|
|
|
|
|
|
(3.6) |
||||
|
a =0 b =0 |
|
|
|
|
|
|
|
|
|
|
|
||
|
Энергия |
|
|
|
|
|
|
|
|
|
|
|
||
|
2 L −12 L −1 |
|
|
|
|
|
|
|
|
|||||
BN = ∑ |
∑ |
[p(a,b)]2 |
|
|
|
|
|
|
|
(3.7) |
||||
|
a =0 b =0 |
|
|
|
|
|
|
|
|
|
|
|
||
|
Энтропия |
|
|
|
|
|
|
|
|
|
|
|
||
|
2 L −12 L −1 |
[p(a,b)] |
|
|||||||||||
BE = − ∑ |
∑ p(a,b)log2 |
(3.8) |
||||||||||||
|
a =0 b=0 |
|
|
|
|
|
|
|
|
|||||
|
Обратная разность |
|
|
|
|
|
|
|
|
|||||
|
2 L −12 L −1 |
|
|
|
|
|
|
|
|
|||||
BD = ∑ |
∑ |
p(a,b) [1 + (a − b)2 ] |
3.9) |
|||||||||||
|
a =0 b=0 |
|
|
|
|
|
|
|
|
|
|
|
||
|
Однородность |
|
|
|
|
|
|
|
|
|||||
|
2 L −12 L |
−1 |
|
|
|
|
|
|
|
|
||||
Bhom = ∑ |
|
∑ p(a,b) [1 + |
|
a − b |
|
] |
(3.10) |
|||||||
|
|
|
||||||||||||
|
a =0 b =0 |
|
|
|
|
|
|
|
|
|||||
|
Коэффициент корреляции |
|
||||||||||||
|
2 L −12 L −1 |
|
|
|
|
|
|
|||||||
rC |
= ∑ |
∑ abp(a,b) − |
|
|
b |
[σaσb ] |
(3.11) |
|||||||
a |
||||||||||||||
|
|
b =0 |
|
|
|
|
|
|
|
|
|
|||
|
a =0 |
|
|
|
|
|
|
|
|
|
||||
Математическое ожидание яркости вычисляется в соответствии с:
|
|
|
|
|
2 L −12 L −1 |
|
|
|
|
|
= |
∑ |
∑ ap(a,b) |
(3.12) |
|
a |
|||||||
|
|
|
|
|
a =0 |
b =0 |
|
|
|
|
|
|
2 L −12 L −1 |
|
|
b = |
∑ |
∑bp(a,b) |
(3.13) |
||||
|
|
|
|
|
a =0 |
b =0 |
|
Среднее квадратическое отклонение вычисляется в соответствии с:
|
2 L −12 L −1 |
|
|||||
σa = |
∑ |
∑ a 2 p(a,b) − |
|
|
2 |
(3.14) |
|
a |
|||||||
|
a =0 b=0 |
|
|||||
|
|
|
|||||
|
2 L −12 L −1 |
|
|||||
σb = |
∑ |
∑b2 p(a,b) − |
b |
2 |
(3.15) |
||
|
a =0 |
b =0 |
|
||||
При вычислении текстурных характеристик на основе матриц рассеяния необходимо решить задачу выбора вектора смещения d. В работе [2] в
14
качестве критерия используется статистическая проверка по критерию хиквадрат χ2 для выбора вектора смещения d:
χ2 (d) = ∑∑ |
p 2 |
(a,b) |
|
− 1 |
(3.16) |
|
p(a)p(b) |
||||||
a b |
|
|
||||
|
|
|
|
|
||
В соответствии с этим критерием наиболее выраженной структуре текстурного образа соответствует значение вектора смещения, при котором достигается максимум величины χ2 (d):
d = arg max(χ2 (d)) |
(3.17) |
При этом |
|
p(a) = ∑ p(a,b) |
(3.18) |
b |
|
p(b) = ∑ p(a,b) |
(3.19) |
a |
|
3.2 Порядок выполнения работы
1)Использовать базу текстурных полутоновых (8-ми разрядных) изображений и изображения мозаик из лабораторной работы №2 [4,5].
2)Разработать код программы формирования матриц рассеяния.
3)Для каждого образца текстуры:
для множества значений вектора смещения, получаемых формированием 8 направлений (от 0° до 360° с шагом 45°) и расстояниями между отсчетами от 1 до 5 элементов:
получить нормированные матрицы рассеяния, построить их 3D изображения.
на основании критерия (3.16) выбрать вектор смещения.
4)Для каждого образца текстуры получить оценки признаков текстур в соответствии с формулами (3.4)- (3.15)
5)Выбрать признаки для сегментации текстур.
6)Выполнить сегментацию изображений мозаик по полученному множеству признаков.
7)Оценить эффективность сегментации.
8)Проанализировать полученные результаты, составить отчет о выполненных исследованиях, сделать выводы по работе.
3.3 Библиографический список
1)В.Т. Фисенко, Т.Ю. Фисенко, Компьютерная обработка и распознавание изображений: учеб. пособие.- СПб: СПбГУ ИТМО, 2008.-192 с.
2)Шапиро Л. Компьютерное зрение/ Шапиро Л., Стокман Дж.: Пер. с англ. М.: БИНОМ. Лаборатория знаний, 2006. 752 с.
3)Гонсалес, Р. Цифровая обработка изображений / Р.Гонсалес, Р.Вудс - М.:
Техносфера, 2005.-1072 с.
15
4)Brodatz P. A Photographic Album for Artists and Designers. New York, Dover, 1966.
5)http://vismod.media.mit.edu/pub/VisTex
3.4 Вопросы для самопроверки:
1)Какие методы описания текстур Вы знаете?
2)Что такое матрица рассеяния?
3)Как задается вектор смещения?
4)Как можно определить максимальное значение длины вектора смещения при заданном направлении?
5)Как определяется направление вектора смещения?
6)Какой критерий используется при определении оптимального вектора смещения для текстуры?
7)Почему для сегментации текстур используют вероятность появления пар яркостей отсчетов изображений при фиксированном векторе смещения.
8)Как выполняется нормирование матрицы рассеяния?
9)Что мы называем гистограммами второго порядка?
10)Составьте схему алгоритма анализа текстур по признакам, полученным по матрицам рассеяния.
11)Какое условие накладывается на изображение при вычислении матриц рассеяния? Как достигают выполнения этого условия?
12)Позволяют ли матрицы рассеяния представить особенности текстуры.
13)Какие признаки текстур формируются на основании матриц рассеяния?
16
4Лабораторная работа № 4
Исследование методов пороговой обработки изображений
Цель работы – исследовать методы пороговой обработки изображений. Исследовать методы определения порогов при решении задачи классификации для случая 2 классов; исследовать методы определения порогов при многопороговой обработке.
Задание по работе:
−Изучить теоретическую часть работы.
−Разработать алгоритм и написать программу сегментации изображения на два класса по методу Оцу.
−На основании метода Оцу разработать алгоритм и написать программу сегментации изображения на заданное число классов (>2).
−Выбрать или синтезировать тестовые изображения.
−Выполнить сегментацию тестовых изображений.
−Оценить эффективность сегментации.
4.1 Теоретическая часть
Методы пороговой обработки предназначены для сегментации изображения, позволяющей выделить цель на фоне, используя яркостные, текстурные и др. признаки. Большинство методов пороговой обработки основано на статистиках одномерных (1D) гистограмм полутоновых изображений и на статистиках двумерных (2D) матриц рассеяния изображения [1]. Разработаны параметрические и непараметрические методы определения порогов. При параметрическом подходе для определения порога используется распределение уровней полутонового изображения, пороговое ограничение сохраняет моменты распределения, то есть изображение, ограниченное по порогу, имеет те же самые моменты, что и оригинальное изображение. При непараметрическом подходе пороги получаются в результате процедур оптимизации в соответствии с некоторым заданным критерием. К этому подходу относится и метод Оцу. Процедура определения порога построена по критерию максимума межкластерной дисперсии путем полного перебора [1]. Отличие 2D методов пороговой обработки от 1D методов состоит в том, что вместо гистограмм распределения яркостей используется учет пространственных связей яркостей, то есть гистограммы второго порядка.
Метод Оцу для порогового ограничения изображений. Оценить пороговое значение fT , минимизирующее взвешенную сумму внутрикластерных дисперсий для двух кластеров, сформированных после разделения по порогу fT [2]. Это то же, что и установление порога, обеспечивающего получение максимума межкластерной дисперсии. Метод Оцу разработан при следующих допущениях: гистограмма является
17
бимодальной; не учитываются пространственные соотношения элементов изображения и текстурные свойства; оцениваются статистики стационарных процессов, но могут учитываться локальные признаки; предполагается равномерное освещение, при котором бимодальность гистограммы обусловлена различными характеристиками объектов.
Пусть изображение является двумерной функцией яркости и содержит N
элементов |
с уровнями |
яркости от 1 до L. |
Если n f - |
число элементов, |
имеющих |
яркость f, |
то p( f ) - вероятность яркости |
f в изображении |
|
вычисляется как |
|
|
|
|
p( f ) = n f |
N |
|
|
(4.1) |
В случае квантования изображения на два уровня, элементы делятся на |
||||
два кластера, C1 с уровнями яркости [1, …, |
fT ] и C2 с уровнями яркости |
|||
[ fT +1, …, L]. Вероятности для этих двух кластеров зависят от порогового значения и определяются как суммы частот значений яркости, принадлежащих кластеру:
fT |
|
q1( fT ) = ∑ p( f ), |
(4.2) |
f =1 |
|
q2 ( fT ) = ∑L p( f ) |
(4.3) |
f = fT +1
Поскольку все изображение по пороговому значению сегментируется на 2 кластера, то сумма вероятностей кластеров равна 1:
q1( fT ) + q2 ( fT ) = 1. |
(4.3) |
|||||
Средние значения для кластеров C1 и C2 вычисляются в соответствии с: |
|
|||||
fT |
fp( f ) |
|
||||
µ1( fT ) = ∑ |
|
|
|
|
|
(4.4) |
|
|
|
|
|
||
f =1 q1( fT ) |
|
|||||
L |
|
fp( f ) |
|
|||
µ2 ( fT ) = ∑ |
|
|
|
|
(4.5) |
|
|
|
|
|
|||
f = fT q2 ( fT ) |
|
|||||
Пусть µ есть среднее значение яркости для всего изображения. Среднее значение яркости в изображении определяется как сумма взвешенных с вероятностью класса значений математических ожиданий:
µ = q1µ1 + q2µ2 .
Внутрикластерные дисперсии вычисляются в соответствии с уравнением:
σ2 |
( f |
|
) = |
fT |
|
( f |
|
)]2 p( f ) |
|
|
( f |
|
), |
|
|||||
T |
∑[ f |
− µ |
T |
|
q |
T |
(4.6) |
||||||||||||
1 |
|
|
f =0 |
1 |
|
|
|
|
|
1 |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
σ2 |
( f |
T |
) = |
∑L [ f |
− µ |
2 |
( f |
T |
)]2 p( f |
) |
|
q |
2 |
( f |
T |
). |
(4.7) |
||
2 |
|
|
f = fT |
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Суммарная внутрикластерная дисперсия вычисляется в соответствии с:
18
σ |
= q |
( f |
T |
)σ2 |
( f |
T |
) + q |
2 |
( f |
T |
)σ2 |
( f |
T |
). |
(4.8) |
W |
1 |
|
1 |
|
|
|
2 |
|
|
|
Дисперсия изображения (суммарная дисперсия) не зависит от порога и вычисляется в соответствии с уравнением:
σ2 = ∑L ( f − µ)2 p( f ) |
(4.9) |
f =1 |
|
Межкластерная дисперсия равна сумме взвешенных |
квадратов |
расстояний между центрами (средними значениями) кластеров и глобальным средним значением:
σ2 |
= q (µ |
− µ)2 + q |
2 |
(µ |
2 |
− µ)2 |
(4.10) |
B |
1 1 |
|
|
|
|
Для любого заданного порога дисперсия равна сумме взвешенной внутрикластерной дисперсии и межкластерной дисперсии.
σ2 = σ2 |
( f |
T |
) + σ2 |
( f |
T |
). |
(4.11) |
w |
|
B |
|
|
|
Пороговое значение соответствует значению, при котором достигается максимум межкластерной дисперсии:
f * |
= arg |
max(σ2 |
( f |
T |
)). |
|
|
|
|
|
|
|
|
(4.12) |
||||||
T |
1≤ fT < L |
|
|
|
B |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Из (4.10) : |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
σ2 |
= q |
(f |
T |
)[µ (f |
T |
)− µ]2 + q |
2 |
(f |
T |
)[µ |
2 |
(f |
T |
)− µ]2 |
= |
|||||
B |
1 |
|
|
1 |
|
|
|
|
|
|
|
|
|
(4.13) |
||||||
|
|
|
|
|
(f |
|
)q2 |
(f |
|
)[µ1(f |
|
)− µ2 ( fT )]2. |
||||||||
|
|
|
|
q1 |
T |
T |
T |
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
В соответствии с (4.12) алгоритм строится следующим образом. Для каждого возможного значения порога fT выполняются следующие операции:
−Все элементы изображения делятся по пороговому значению на два кластера.
−Вычисляются средние значения кластеров.
−Вычисляется квадрат разности математических ожиданий
−Квадрат разности умножается на вероятности кластеров в соответствии с
(4.13).
Этот алгоритм реализуется как итерационная процедура. Прежде всего выполняется инициализация алгоритма: q1(1) = p(1), µ1(1) = 1.
Затем для каждого возможного порога вычисляются:
q1( fT + 1) = q1( fT ) + p( fT + 1), |
(4.14) |
µ1( fT + 1) = [q1( fT )µ1( fT ) + ( fT + 1)p( fT + 1)] q1( fT + 1), |
|
µ2 ( fT + 1) = [µ − q1( fT + 1)µ1( fT + 1)] [1 − q1( fT + 1)]. |
(4.15) |
На рис.4.1 приведен пример квантования изображения на два уровня, при автоматическом определении порога по методу Оцу.
Видно, что гистограмма исходного изображения является двухмодальной, однако область минимума занимает значительный диапазон значений яркости. Автоматически полученное значение порогового значения равно 142 и показано на изображении гистограммы визиром.
19
а) б) в)
Рисунок 4.1 а) Исходное изображение; б) бинарное изображение, полученное по автоматическому пороговому значению; в) гистограмма исходного изображения.
Метод Оцу расширен на случай многопороговой обработки [3]. Пусть мы выполняем сегментацию на М кластеров. В этом случае мы должны получить оценки (M-1) порогового значения.
Оптимальные значения порогов должны удовлетворять условию:
{f *, f *,..., f * |
}= |
arg |
max{σ2 |
{f , f |
2 |
,..., f |
M −1 |
}} |
(4.16) |
|
1 2 |
M −1 |
|
|
B |
1 |
|
|
|
||
1≤ f1 < f 2 <...< f M −1 < L
Независимо от числа кластеров, рассматриваемых в процессе пороговой обработки, сумма накопленных функций вероятности М классов равняется 1, и среднее значение изображения равно сумме средних М классов, взвешенных с их накопленными вероятностями, то есть:
20
