Статистические функции обработки изображений

Определение RGB значений пиксела

Функция impixel() возвращает значения красной (R), зеленой (G) и синей (B) составляющих цвета для определенных пикселов изображения. Координаты пикселов можно задавать интерактивно или непосредственно с помощью следующих команд:

P=impixel(I) - получение матрицы полутонового или черно-белого изображения,

P=impixel(X, map) - получение матрицы индексированного изображения,

P=impixel(RGB) - получение матрицы цветного RGB изображения,

P=impixel(I, c, r) - получение цвета пиксела с координатами r и c полутонового или черно-белого изображения,

P=impixel(X, map, c, r)- получение цвета пиксела с координатами r и c индексированного изображения,

P=impixel(RGB, c, r)- получение цвета пиксела с координатами r и c .

Где I, X, RGB - соответственно массивы полутонового, индексированного и полноцветного изображений; map – палитра изображения X; r, c – координаты пиксела;

Пример 6.1.Найти RGB компонент цвета пиксела с координатами (20, 20)

Статистические функции обработки изображений - student2.ru

Рис.1 Изображение D_small

>> impixel (D_small, 20, 20)

ans =

37 48 42

>> impixel (D_small, 100, 100)

ans =

132 138 135

Вычисление среднего значения элементов матрицы

Функция mean2(S) вычисляет среднее значение элементов матрицы S.

Пример 6.2.Для матрицы S= Статистические функции обработки изображений - student2.ru найти среднее значение.

>>S=[4,6,3,9,4;7,4,8,4,7;8,4,6,3,7]

S =

4 6 3 9 4

7 4 8 4 7

8 4 6 3 7

>>m=mean2(S)

m =

5.6000

Пример 6.3.Для матрицы изображения на рис. 1 найти средний цвет.

m=mean2(D_small)

m =

117.1766

Вычисление среднеквадратичного отклонения элементов матрицы

Функция std2(S) вычисляет среднеквадратичное отклонение элементов матрицы S.

Пример 6.4.Найти среднеквадратичное отклонение элементов матрицы S= Статистические функции обработки изображений - student2.ru .

>>S=[4,6,3,9,4;7,4,8,4,7;8,4,6,3,7]

S =

4 6 3 9 4

7 4 8 4 7

8 4 6 3 7

>>d=std2(S)

d =

1.9928

Пример 6.5.Для матрицы изображения на рис. 1 найти среднеквадратичное отклонение элементов.

d=std2(D_small)

d =

30.5119

Выделение подобластей изображения

В MATLAB’e вырезание подобласти изображения реализуется функцией imcrop. Один из вариантов ее использования – вызов с одним параметром – imcrop(image), где image– имя массива, в котором содержится информация об изображении. В этом случае изображение будет выведено на экран и мышью можно будет выделить требуемую область. Эта команда полезна для предварительного визуального анализа объекта и отсечения лишних деталей.

Пример 6.6.Получить матрицу фрагмента изображения A_fragment, выбранного с помощью манипулятора мышь.

A_fragment = imcrop(D_small);

imshow(A_fragment)

Результат:

Статистические функции обработки изображений - student2.ru

Рис.2. Исходное изображение Рис.3. Выделенная

подобласть Рис.2

При выделении никаких вычислений подобласти изображения не происходит. Из исходного массива выбирается подматрица, значения интенсивности цветовых компонентов которой соответствует выделенному визуальному фрагменту (Рис.4).

Статистические функции обработки изображений - student2.ru

Рис.4. Массив значений интенсивностей фрагмента.

Наши рекомендации