imsubtract

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

Синтаксис

Описание

пример

Z = imsubtract(X,Y) вычитает каждый элемент в массиве Y от соответствующего элемента в массиве X и возвращает различие в соответствующем элементе выходного массива Z.

Примеры

свернуть все

В этом примере показано, как вычесть два uint8 массивы. Обратите внимание на то, что отрицательные результаты округлены к 0.

X = uint8([ 255 0 75; 44 225 100]);
Y = uint8([ 50 50 50; 50 50 50 ]);
Z = imsubtract(X,Y)
Z = 2x3 uint8 matrix

   205     0    25
     0   175    50

Считайте полутоновое изображение в рабочую область.

I = imread('rice.png');

Оцените фон.

background = imopen(I,strel('disk',15));

Вычтите фон из изображения.

J = imsubtract(I,background);

Отобразите оригинальное изображение и обработанное изображение.

imshow(I)

Figure contains an axes. The axes contains an object of type image.

figure
imshow(J)

Figure contains an axes. The axes contains an object of type image.

Считайте изображение в рабочую область.

I = imread('rice.png');

Вычтите постоянное значение из изображения.

J = imsubtract(I,50);

Отобразите оригинальное изображение и результат.

imshow(I)

Figure contains an axes. The axes contains an object of type image.

figure
imshow(J)

Figure contains an axes. The axes contains an object of type image.

Входные параметры

свернуть все

Первый массив (уменьшаемое) в виде числового массива или логического массива любой размерности.

Второй массив (вычитаемое), которое будет вычтено из XВ виде числового массива или логического массива, одного размера и класс как X, или числовой скаляр типа double.

Выходные аргументы

свернуть все

Различие, возвращенное как числовой массив одного размера с XZ тот же класс как X если X является логическим, в этом случае Z тип данных double. Если X целочисленный массив, затем элементы выхода, которые превышают область значений целочисленного типа, являются усеченными, и округлены дробные значения.

Смотрите также

| | | | |

Представлено до R2006a