През. "...выделение однородных мелкозернистых ..."

advertisement
Последовательное выделение однородных
мелкозернистых текстурных сегментов на
зрительных изображениях
Abstract. Предлагается эвристический алгоритм для выделения однородных
мелкозернистых текстурных сегментов на любых зрительных изображениях.
Алгоритм последовательно выделяет все однородные мелкозернистые
сегменты из анализируемого изображения: начиная с наиболее однородного
и обширного сегмента, присутствующего на изображении, и, продолжая,
меньшими по размерам и менее однородными сегментами. Выделенные
сегменты не пересекаются друг с другом. Процедура сегментации является
итеративной – в каждой итерации выделяется только один сегмент.
Алгоритм сегментации работает в условиях отсутствия какой-либо
информации об анализируемом изображении (в частности, при отсутствии
информации о типах текстур, имеющихся на изображении, и о количестве
сегментов, которые необходимо выделить). В основе алгоритма сегментации
лежит анализ текстурных признаков, выделяемых на изображении при
помощи текстурных окон.
1
Для представления всех N паттернов текстурных признаков, выделенных из всех N текстурных окон, покрывающих изображение,
используется трехмерный массив F[I][J][M]. В этом массиве индексы (i, j) определяют координаты текстурного окна, а индекс m (m = 0,
1, 2, ..., M) определяет номер признака (или типа признака). Тогда, каждый (i, j, m)-тый элемент массива F является неким числом в
диапазоне между 0 и K. Это число представляет собой нормированное значение m-того текстурного признака, вычисленного из (i, j)-того
текстурного окна. Таким образом, массив F является признаковым описанием всего данного изображения.
Каждый признаковый паттерн изображен, как состоящий из M = 5 двоичных векторов, по K = 13 элементов в каждом
векторе. На рисунке значения признаков изображены черными кружками. Номера, расположенные справа внизу от каждого паттерна,
являются координатами соответствующих текстурных окон.
2
Для оценки степени однородности различных частей изображения, используется совокупность
квадратных тестовых окон одинакового размера. Все изображение покрывается некоторым количеством
тестовых окон, обозначим их количество через Z. Тестовое окно имеет больший размер, чем текстурное
окно, обозначим линейный размер тестового окна через D.
3
Z – это количество тестовых окон.
M – это количество признаков (типов
признаков).
Каждый (i, j, m)-тый элемент трехмерного
массива F[I][J][M] является неким числом
в диапазоне между 0 и K. Это число
представляет
собой
нормированное
значение m-того текстурного признака,
вычисленного из (i, j)-того текстурного
окна. Таким образом, массив F является
признаковым описанием всего данного
изображения.
Двоичный трехмерный массив С[Z][I][J]
вводится для представления текстурных
окон внутри тестовых окон. Единичное
значение (z, i, j)-того элемента массива С
означает, что (i, j)-тое текстурное окно
находится внутри z-того тестового окна.
Целочисленный
трехмерный
массив
S[Z][I][J] вводится для оценки количества
похожих друг на друга паттернов
признаков, выделенных из текстурных
окон,
находящихся
внутри
соответствующего тестового окна.
4
5
6
Сегмент, который алгоритм считает самым
однородным, изображен белым цветом на
нижней части рисунка. Этот сегмент
выделен посредством предлагаемого
алгоритма при использовании
характеристического паттерна признаков,
выделенного из данного характерного
пикселя. Характерный пиксель этого
сегмента помечен черным квадратом.
7
Сегмент, который алгоритм считает самым
однородным, изображен белым цветом на
нижней части рисунка. Этот сегмент выделен
посредством предлагаемого алгоритма при
использовании характеристического паттерна
признаков, выделенного из данного
характерного пикселя. Характерный пиксель
этого сегмента помечен черным квадратом.
8
Сегмент, который алгоритм считает самым
однородным, изображен белым цветом на
нижней части рисунка. Этот сегмент выделен
посредством предлагаемого алгоритма при
использовании характеристического паттерна
признаков, выделенного из данного
характерного пикселя. Характерный пиксель
этого сегмента помечен черным квадратом.
9
Сегмент, который алгоритм считает самым
однородным, изображен белым цветом на
нижней части рисунка. Этот сегмент выделен
посредством предлагаемого алгоритма при
использовании характеристического паттерна
признаков, выделенного из данного
характерного пикселя. Характерный пиксель
этого сегмента помечен черным квадратом.
10
Сегмент, который алгоритм считает самым
однородным, изображен белым цветом на
нижней части рисунка. Этот сегмент выделен
посредством предлагаемого алгоритма при
использовании характеристического паттерна
признаков, выделенного из данного
характерного пикселя. Характерный пиксель
этого сегмента помечен черным квадратом.
11
«Термометрическое» кодирование.
Каждое значение признака B кодируется такой совокупностью единичных
элементов вектора, которое включает в себя все элементы вектора с номерами
между 0 и B. Таким образом, чем больше значение признака B, тем выше
непрерывный столбик единичных элементов поднимается в векторе (колонке).
Пример представления значения признака B = 7 посредством метода
«термометрического» кодирования в двоичном векторе (колонке), состоящем
из K = 15 элементов.
Для представления паттерна текстурных признаков, выделенных из
одного текстурного окна, используется M двоичных векторов (колонок) из K
элементов каждый. Соответственно, всего используется M  K двоичных
элементов. Назовем такой набор двоичных элементов кластером текстурных
признаков. Полное описание текстурных особенностей каждого изображения
состоит из N таких кластеров.
12
N текстурных кластеров (т.е. массив G) описывающих все
изображение. Каждый кластер изображен как состоящий из M = 5
двоичных векторов, по K = 13 элементов в каждом векторе.
Двоичный четырехмерный
массив G[i][j][m][k] состоит из
I  J  M  K элементов.
В этом массиве индексы (i, j)
определяют координаты (i, j)того текстурного окна (и,
соответственно, (i, j)-того
признакового кластера).
Индекс m (m = 0, 1, 2, ..., M)
определяет номер признака
(типа признака) и номер
двоичного
вектора внутри (i, j)-того
кластера.
Индекс k (k = 0 , 1, 2, ..., K)
является номером элемента
внутри m–того вектора.
13
Более полное и адекватное признаковое описание искомого сегмента содержит
признаки ,выделенные из пикселей, окружающих найденный характерный
пиксель. Все выделенные признаки представляются посредством метода
термометрического кодирования в соответствующих двоичных векторах и
объединяются по дизъюнкции в специально созданной двоичной структуре,
обозначенной через W.
Структура W представляет собой двоичную матрицу W[m][k] из M  K
элементов. Паттерн единичных элементов матрицы W является расширенным
признаковым описанием текстуры искомого сегмента и называется
характеристическим признаковым паттерном.
На слайде показан демонстрационный пример такого признакового
паттерна в матрице W, состоящей из M = 5 двоичных векторов по K = 13
элементов каждый.
14
Демонстрационный пример 2-х паттернов текстурных признаков.
А. Характеристический признаковый паттерн, фиксированный в двоичной матрице W[M][K].
В. Признаковый паттерн, выделенный из некоторой (i, j)-той точки изображения, принадлежащей
искомому текстурному сегменту. Этот паттерн признаков содержится в соответствующем признаковом
кластере G[i][j][M][K]. На слайде матрица W и признаковый кластер G[i][j][M][K] изображены
состоящими из M = 5 двоичных векторов по K = 13 элементов каждый. Единичные элементы паттернов
помечены черным.
Как видно из рисунка, оба признакового паттерна совпадают не полностью, но весьма похожи.
15
Демонстрационный пример 2-х паттернов текстурных признаков.
А. Характеристический признаковый паттерн, фиксированный в двоичной матрице W[M][K].
В. Признаковый паттерн, выделенный из некоторой (i, j)-той точки изображения, не принадлежащей
искомому текстурному сегменту. Этот паттерн признаков содержится в соответствующем признаковом
кластере G[i][j][M][K]. На слайде матрица W и признаковый кластер G[i][j][M][K] изображены
состоящими из M = 5 двоичных векторов по K = 13 элементов каждый. Единичные элементы паттернов
помечены черным.
Как видно из рисунка, оба признакового паттерна совсем не похожи.
16
Основной процедурой алгоритма сегментации является сравнение между
признаковым паттерном W, характеризующим искомый сегмент, и кластерами
текстурных признаков, выделенных из всех текстурных окон, покрывающих
изображение.
Двоичная матрица Q[I][J] – это
рассматриваемая область
изображения;
Четырехмерный двоичный массив
G[I][J][M][K] – признаковое
описание всего изображения в
двоичном формате.
W[M][K] – это характеристический
паттерн признаков.
Матрица E[I][J] – это матрица
сходства.
17
На слайде показаны результаты формирования
матрицы E в процессе выполнения 1-ой итерации
процедуры сегментации реального изображения.
Текстурным сегментом, выделенным на 1-ой итерации,
является парковая аллея. Расположение пикселя,
характеризующего этот сегмент и найденного
Алгоритмом 1, показано черным квадратом на
верхней части рисунка. Нижняя часть рисунка
показывает матрицу E. На слайде значения элементов
матрицы E показаны интенсивностью белого цвета.
В данной итерации матрица E вычисляется
специально для выделения текстурного сегмента
парковой аллеи на этом изображении.
Как видно из рисунка, элементы матрицы E,
соответствующие пикселям сегмента парковой аллеи
имеют намного большие значения, чем все другие
элементы матрицы.
18
Алгоритм выделения одного текстурного сегмента
Для представления пикселей n-того текстурного сегмента, выделяемого на текущей n-той итерации,
вводится двоичная матрица R[i][j], состоящая из N = I  J элементов. До начала итерации все элементы
матрицы R обнуливаются. Пиксели, которые будут найдены принадлежащими данному сегменту, будут
обозначены единичными значениями элементов матрицы R.
После окончания процесса выделения n-того сегмента, его пиксели исключаются из
последующего рассмотрения посредством обнуливания единичных значений в соответствующих
элементах матрицы Q:
Q[i][j] = Q[i][j] ⊕ R[i][j],
i = 0, 1, 2, ..., I; j = 0, 1, 2, ..., J; ⊕ – это операция исключающее ИЛИ (exclusive disjunction XOR).
19
Двоичная матрица R [I][J] служит для
представления пикселей сегмента,
выделяемого на текущей итерации.
Двоичная матрица Q[I][J] – это
рассматриваемая область изображения;
Каждый (i, j)-тый элемент матрицы E[I][J]
представляет собой оценку степени
сходства между паттерном признаков,
характеризующих выделяемый сегмент, и
паттерном признаков, выделенным из
(i, j)-того текстурного окна.
Emax – это предварительно вычисленное
максимальное значение в матрице E.
Двоичная матрица Z(t, s)[I][J] вводится
для представления только тех пикселей
сегмента, которые выделяются на s–том
шаге t–той серии шагов расширения.
Ф – это один шаг процедуры расширения в
произвольной двоичной матрице.
⊕ – это операция исключающее ИЛИ
(exclusive disjunction XOR).
Двоичная матрица A[I][J] вводится для
представления пикселей контура,
окружающего единичную область,
полученную в матрице Z(t, s), на s–том
шаге t–той серии шагов расширения.
20
Алгоритм сегментации был проверен в
экспериментах с черно-белыми
изображениями с размерами 427  320
пикселей каждый.
Использовалось текстурное окно
размером 15  15 пикселей.
Не более чем 8 сегментов выделялось
на каждом изображении.
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
Все результаты, показанные на
слайдах, получены не при помощи
индивидуальной подгонки значений
параметров под каждое отдельное
изображение, а получены с одними и теми
же значениями параметров.
21
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
22
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
23
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
24
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
25
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
26
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
27
Сегмент, выделяемый первым, окрашен
зеленым цветом,
2-ой
– красным,
3-ий
– темно синим,
4-тый
– фиолетовым,
5 -тый
– желтым,
6-той
– голубой,
7-мой
– коричневым,
8-ой
– розовым.
28
Пример одного шага процедуры Ф , т.е. одного шага расширения произвольного паттерна
единичных элементов в двоичной матрице.
Черные пиксели изображают исходный паттерн, а серые пиксели показывают пиксели паттерна
после выполнения процедуры.
29
References.
Achanta, R., Shaji, A., Smith, K., Lucchi, A., Fua, P., Süsstrunk, S. (2012). SLIC superpixels compared to state-of-the-art superpixel
methods. IEEE Transactions on Pattern Analysis and Machine Intelligence, 34(11), 2174–1181.
Al-Kadi, O.S. (2011). Supervised texture segmentation: A comparative study. In Procedings of the IEEE Jordan conference on applied
electrical engineering and computing technolooges (AEECT) (pp. 1-5). Amman, Jordan.
Alpert, S., Galun, M., Basri, R., Brandt, A. (2003). Texture segmentation by multiscale aggregation of filter responses and shape elements.
In Proccedings of the 9th IEEE international conference on computer vision (ICCV) (pp. 716–723), Nice, France.
Ahuja, N., Todorovic, S. (2007). Extracting texels in 2.1D natural textures. In Proccedings of the 11th IEEE international conference on
computer vision (ICCV) (pp. 14–20), Rio de Janeiro, Brazil.
Bhosle, V.V., Pawar, V.P. (2013). Texture segmentation: different methods. International Journal of Soft Computing and Engineering
(IJSCE), 3(5), 69–74.
Caenen, G., Ferrari, V., Zalesny, A., Van Gool, L. (2002). Analyzing the layout of composite textures. In Proceedings of the 2nd
international workshop on texture analysis and synthesis – texture (pp. 15–20), Copenhagen, Denmark.
Clausi, D.A., Deng, H. (2005). Design-based texture feature fusion using Gabor filters and co-occurrence probabilities. IEEE Transactions
on Image Processing, 14(7), 925–936.
Çesmeli, E., Wang, D.L. (2001). Texture segmentation using Gaussian–Markov random fields and neural oscillator networks. IEEE
Transaction on Neural Networks, 12(2), 283–286.
Comaniciu, D., Meer, P. (2002). Mean Shift: A robust approach toward feature space analysis. IEEE Transactions on Pattern Analysis and
Machine Intelligence, 24(5), 603–619.
Donoser, M., Bischof, H. (2008). Using covariance arrays for unsupervised texture segmentation. In Proccedings of the 19th international
conference on pattern recognition (ICPR 2008) (pp. 1–4), Tampa, Florida, USA.
Fauzi, M.F.A., & Lewis, P.H. (2003). A fully unsupervised texture segmentation algorithm. In Proceedings of British machine vision
conference (pp. 519–528), Norwich, UK.
Felzenszwalb, P.F., Huttenlocher, D.P. (2004). Efficient graph-based image segmentation. International Journal of Computer Vision,
59(2), 167–181.
Fulkerson, B., Vedaldi, Stefano Soatto S. (2009). In Proceedings of the 12-th IEEE international conference on computer vision (pp. 670–
677), Kyoto, Japan.
Freixenet, J., Munoz, X., Raba, D., Marti, J., & Cuff, X. (2002). Yet another survey on image segmentation. In: Proceedings of the 7th
European conference on computer vision (ECCV 2002) (pp. 408–422), Copenhagen, Denmark. Gimel’farb
Gimel’farb, G. (2001). Supervised texture segmentation by maximising conditional likelihood. Lecture Notes in Computer Science, 2134,
169–184.
Goltsev, A. (1992). Brightness image segmentation by a neuron-like network. Neurocomputing, 4, 9–15.
30
Goltsev, A. (1996). An assembly neural network for texture segmentation. Neural Networks, 9(4), 643–653.
Goltsev, A., & Wunsch, D.C. (1998). Inhibitory connections in the assembly neural network for texture segmentation. Neural Networks, 11(5),
951–962.
Goltsev, A.D. (2005). Neural Networks with the Assembly Organization. Kiev, Ukraine: Naukova Dumka (in Russian).
Goltsev, A., Húsek, D., Frolov, A. (2005). Assembly neural network with nearest-neighbor recognition algorithm. Neural Network World, 15(1),
9–22.
Goltsev, A., Gritsenko, V. (2013). Algorithm of sequential finding the characteristic features of homogeneous texture regions for the problem of
image segmentation. Cybernetics and Computer Engineering, 173, 25–34 (in Russian).
Goltsev, A., Gritsenko, V., Kussul, E., Baidyk, T. (2015). Finding the texture features characterizing the most homogeneous texture segment in the
image. Lecture Notes in Computer Science. 9094 (IWANN 2015), Part I, 287–300. DOI: 10.1007/978-3-319-19258-1_25.
Julesz, B. (1981). Textons, the elements of texture perception and their interactions. Nature, 290, 91–97.
Khan, M.W. (2014). A survey: Image segmentation techniques. International Journal of Future Computer and Communication. 3(2), 89–93.
Kussul, E.M., Rachkovskij, D.A., & Baidyk, T.N. (1991). On image texture recognition by associative-projective neurocomputer. In Proceedings
of the ANNIE'91 conference, Intelligent engineering systems through artificial neural networks (pp. 453–458). New York, USA:
ASME Press.
Kussul, E.M., Baidyk, T.N., Lukovitch, V.V., & Rachkovskij, D.A. (1993). Adaptive neural network classifier with multifloat input coding. In
Proceedings of the 6th international conference “Neuro-Nimes 93” (pp. 209–216).
Levinshtein, A., Stere, A., Kutulakos, K.N., Fleet, D.J., Dickinson, S.J., Siddiqi,K. (2009). TurboPixels: fast superpixels using geometric flows.
IEEE Transactions on Pattern Analysis and Machine Intelligence, 31(12), 2290–2297.
Malik, J., Belongie, S., Leung, T., & Shi, J. (2001). Contour and texture analysis for image segmentation. International Journal of Computer
Vision (IJCV), 43(1), 7–27.
Md. Mahbubur Rahman. (2012). Unsupervised natural image segmentation using mean histogram features. Journal of Multimedia. 7(5), 332–340.
Melendez, J., Puig, D., & Garcia, M.A. (2010). Multi-level pixel-based texture classification through efficient prototype selection via normalized
cut. Pattern Recognition, 43(12), 4113–4123.
Oja, E. (1989). Neural networks, inter-column elements, and subspaces. International Journal of Neural Systems, 1, 61–68.
Ojala, T., Pietikainen, M., & Harwood, D. (1996). A comparative study of texture measures with classification based on feature distributions.
Pattern Recognition, 29, 51–59.
Ojala, T., Pietikainen, M., & Maenpaa, M. (2002). Multiresolution grayscale and rotation invariant texture classification with local binary
patterns. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(7), 971–987.
Penz, P.A. (1987). The closeness code: an input integer to binary vector transformation suitable for neural network algorithms. In Proceedings of
IEEE first international conference on neural networks (pp. 515–522), San Diego, CA, USA.
Rousson, M., Brox, T., & Deriche, R. (2003). Active unsupervised texture segmentation on a diffusion based feature space. In Proceedings of
IEEE conference on computer vision and pattern recognition (CVPR ’03) (pp. 699–704), Vol. 2, Madison, Wisconsin, USA.
Ruiz-del-Solar, J. (2000). Neural-based architectures for the segmentation of textures. In Proceedings of the 15th international conference on
patern recognition (pp. 1080–1083), Vol. 3, Barcelona, Spain.
31
Shi, J., & Malik, J. (2000). Normalized cuts and image segmentation. IEEE Transactions on Pattern Analysis and Machine Intelligence. 22(8),
888–905.
Tivive, F.H.C., & Bouzerdoum, A. (2006). Texture classification using convolutional neural networks. In Proceedings of IEEE Region 10
Conference (pp. 1–4), Hong Kong, China.
Todorovic, S., & Ahuja, N. (2009). Texel-based Texture Segmentation. In Proccedings of the 12th IEEE international conference on computer
vision (ICCV) (pp. 841–848), Kyoto, Japan.
Van Hulle, M.M., & Tollenaere, T. (1993). A modular artificial neural network for texture processing. Neural Networks, 6, 7–32.
Wei, H., & Bartels, M. (2006). Unsupervised segmentation using Gabor wavelets and statistical features in LIDAR data analysis. In
Proceedings of the 18th international conference on pattern recognition (ICPR'06) (pp. 667–670), Vol. 1, Hong Kong, China.
Wolf, L., Huang, X., Martin, I., & Metaxas, D. (2006). Patch-based texture edges and segmentation. In Proceedings of the 9th European
conference on computer vision (pp. 481–493), Volume Part II, Graz, Austria.
Yang, A.Y., Wright, J., Ma, Y., & Shakar Sastry, S. (2008). Unsupervised segmentation of natural images via lossy data compression. Computer
Vision and Image Understanding, 110(2), 212–225.
Zhiguang Yang, & Haizhou AI. (2007). Demographic classification with local binary patterns. Lecture Notes in Computer Science, 4642, 464–
473.
Zhu, S.-C., Guo, C.-E., Wang, Y., & Xu, Z. (2005). What are textons? International Journal of Computer Vision, 62(1–2), 121–143.
32
References.
Goltsev, A., Gritsenko, V. (2013). Algorithm of sequential finding the characteristic features of
homogeneous texture regions for the problem of image segmentation. Cybernetics and
Computer Engineering, 173, 25–34 (in Russian).
Goltsev, A., Gritsenko, V., Kussul, E., Baidyk, T. (2015). Finding the texture features characterizing
the most homogeneous texture segment in the image. Lecture Notes in Computer
Science. 9094 (IWANN 2015), Part I, 287–300. DOI: 10.1007/978-3-319-19258-1_25.
33
Download