Вычислите стандартное отклонение ROI

В этом примере показано, как вычислить стандартное отклонение видимых областей (ROIs) во входном изображении. Входное изображение состоит из различных областей структуры, и ROI выбраны, чтобы содержать эти области структуры.

Считайте изображение в рабочее пространство MATLAB.

I = imread('multitextures.png');

Загрузите рисунок маски, который задает ROI во входном изображении.

load('binaryROI.mat')

Модель в качестве примера

Откройте модель Simulink.

modelname='ex_blk2dstd.slx';
open_system(modelname);

Модель вычисляет координаты для ROI при помощи Blob Analysis блок. Максимальное количество параметра блобов в Blob Analysis блок установлен в 5, количество ROI.

2-D Standard Deviation блок вычисляет значение стандартного отклонения для каждого ROI.

Установите эти параметры 2-D Standard Deviation блокируйтесь к заданному значению inorder, чтобы вычислить отдельную статистику для каждого ROI.

  • Установите Find the standard deviation value over параметр к Entire input

  • Выберите Enable ROI processing параметр

  • Установите ROI type параметр к Rectangles

  • Установите Output параметр к Individual statistics for each ROI

Симулируйте и отобразите результаты

Значения стандартного отклонения указывают на дисперсию пиксельных значений в ROI от соответствующего среднего значения.

out = sim(modelname);

Модель также отображает входное изображение и матрицу метки, которые соответствуют выбранным ROI. Прямоугольники overlayed на входном изображении представляют ROI, для которых вычисляется стандартное отклонение.

Отобразите значение стандартного отклонения для каждого ROI. Первое значение стандартного отклонения соответствует области со значением метки 1. Точно так же второе значение стандартного отклонения соответствует области со значением метки 2 и так далее.

out.std
ans =

    0.0534
    0.1203
    0.0775
    0.1463
    0.1629