Main Content

immultiply

将两个图像相乘或者将图像乘以常量

说明

示例

Z = immultiply(X,Y) 将数组 X 中的每个元素乘以数组 Y 中的对应元素,并将乘积返回到输出数组 Z 的对应元素中。

示例

全部折叠

将一个灰度图像读入工作区中,然后将该图像转换为 uint8

I = imread('moon.tif');
I16 = uint16(I);

将图像与其自身相乘。请注意,在执行乘法之前,immultiply 会将图像的类从 uint8 转换为 uint16 以避免截断结果。

J = immultiply(I16,I16);

显示原始图像和处理后的图像。

imshow(I)

figure
imshow(J)

将图像读入工作区。

I = imread('moon.tif');

将图像的每个值按常量因子 0.5 进行缩放。

J = immultiply(I,0.5);

显示原始图像和处理后的图像。

imshow(I)

figure
imshow(J)

输入参数

全部折叠

第一个数组,指定为任意维度的数值数组或逻辑数组。

要与 X 相乘的第二个数组,指定为数值标量、数值数组或逻辑数组。

  • 如果 X 是数值数组,则 Y 的大小和类可以是以下值之一:

    • YX 的大小和类相同。

    • YX 的大小相同,并且为逻辑数组。

    • Y 是类型为 double 的标量。

  • 如果 X 是逻辑数组,则 Y 必须与 X 具有相同的大小。Y 可以是任何类。

输出参量

全部折叠

乘积,以数值数组形式返回。

  • 如果 X 是数值数组,则 ZX 具有相同的大小和类。

  • 如果 X 是逻辑数组,则 ZY 具有相同的大小和类。

immultiply 以双精度浮点形式单独计算 Z 的每个元素。如果 XY 是整数数组,则将截断 Z 中超出整数类型范围的元素,且将舍入小数值。

提示

  • 如果 XY 是具有相同大小和类的数值数组,则可以使用表达式 X.*Y 代替 immultiply

版本历史记录

在 R2006a 之前推出