B = imresize(A,[numrows numcols])
[Y,newmap] = imresize(X,map,___)
___ = imresize(___,Name,Value)
说明
返回图像 B
= imresize(A
,scale
)B
,它是将 A
的长宽大小缩放 scale
倍之后的图像。输入图像 A
可以是灰度、RGB 或二值图像。如果 A
有两个以上维度,则 imresize
只调整前两个维度的大小。如果 scale
在 [0, 1] 范围内,则 B
比 A
小。如果 scale
大于 1,则 B
比 A
大。默认情况下,imresize
使用双三次插值。
返回图像 B
= imresize(A
,[numrows numcols]
)B
,其行数和列数由二元素向量 [numrows numcols]
指定。
[
调整索引图像 Y
,newmap
] = imresize(X
,map
,___)X
的大小,其中 map
是与该图像关联的颜色图。默认情况下,imresize
返回经过优化的新颜色图 (newmap
) 和已调整大小的图像。要返回与原始颜色图相同的颜色图,请使用 ‘Colormap‘
参数。
___ = imresize(___,
指定使用的插值方法。method
)
___ = imresize(___,
返回调整大小后的图像,其中 Name,Value
)Name,Value
对组控制大小调整操作的各个方面。
示例
使用默认插值方法将图像的长宽缩小二分之一
Try This Example
将图像加载到工作区。
I = imread(‘ngc6543a.jpg‘);
将图像的长宽缩小二分之一。
J = imresize(I, 0.5);
显示原始图像和调整大小后的图像。
figure, imshow(I), figure, imshow(J)
使用最近邻插值方法将长宽缩小二分之一
Try This Example
将图像加载到工作区。
I = imread(‘ngc6543a.jpg‘);
使用最近邻插值方法将长宽缩小二分之一。这是最快的方法,但质量最差。
J = imresize(I, 0.5, ‘nearest‘);
显示原始图像和调整大小后的图像。
figure imshow(I)
figure imshow(J)
调整 RGB 图像的大小
Try This Example
将 RGB 图像读取到工作区。
RGB = imread(‘peppers.png‘);
将 RGB 图像的大小调整为 64 行。imresize
会自动计算列数。
RGB2 = imresize(RGB, [64 NaN]);
显示原始图像和调整大小后的图像。
figure imshow(RGB)
figure imshow(RGB2)
调整索引图像的大小
Try This Example
将索引图像读取到工作区。
[X, map] = imread(‘corn.tif‘);
将索引图像的长宽缩小二分之一。
[Y, newmap] = imresize(X, map, 0.5);
显示原始图像和调整大小后的图像。
figure imshow(X,map)
figure imshow(Y, newmap)
输入参数
A
- 要调整大小的图像
实数非稀疏数值数组或逻辑数组
要调整大小的图像,指定为实数非稀疏数值数组。
数据类型: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| logical
scale
- 大小调整因子
实数标量
大小调整因子,指定为实数数值标量。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
[numrows numcols]
- 输出图像的行和列维度
由正值组成的二元素数值向量
输出图像的行和列维度,指定为由正值组成的二元素数值向量。numrows
或 numcols
可以为 NaN
值,在这种情况下,imresize
将自动计算行数或列数,以保持图像的纵横比。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
X
- 要调整大小的索引图像
实数非稀疏数值数组
要调整大小的索引图像,指定为实数非稀疏数值数组。
示例: [X2, newmap] = imresize(X,map,0.75);
数据类型: double
| uint8
| uint16
map
- 与索引图像关联的颜色图
m×3 数值数组
与索引图像关联的颜色图,指定为 m×3 数值数组。
数据类型: double
method
- 插值方法
‘bicubic‘
(默认) | 字符向量 | 二元素元胞数组
插值方法,指定为字符向量或二元素元胞数组。
当 method
是字符向量时,它标识下表中列出的特定方法或指定的插值核。
方法 | 说明 |
---|---|
‘nearest‘
|
最近邻插值;赋给输出像素的值就是其输入点所在像素的值。不考虑其他像素。 |
‘bilinear‘
|
双线性插值;输出像素值是最近 2×2 邻点中的像素的加权平均值 |
‘bicubic‘
|
双三次插值;输出像素值是最近 4×4 邻点中的像素的加权平均值 注意双三次插值可能生成在原始范围之外的像素值。 |
插值核 | 说明 |
‘box‘ |
盒形核 |
‘triangle‘ |
三角形核(等效于 ‘bilinear‘ ) |
‘cubic‘ |
三次方核(等效于 ‘bicubic‘ ) |
‘lanczos2‘ |
Lanczos-2 核 |
‘lanczos3‘ |
Lanczos-3 核 |
当 method
是二元素元胞数组时,用来定义自定义插值核。元胞数组的形式为 {f,w},其中 f 是自定义插值核的函数句柄,w 是自定义核的宽度。f(x) 在区间 -w/2 <= x < w/2 外的值必须为零。函数句柄 f 可通过标量或向量输入进行调用。对于用户指定的插值核,输出图像可以有一些值稍微超出输入图像中的像素值范围。
数据类型: char
| cell
名称-值对组参数
指定可选的、以逗号分隔的 Name,Value
对组参数。Name
为参数名称,Value
为对应的值。Name
必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN
所示。
示例: I2 = imresize(I,0.5,‘Antialiasing‘,false);
‘Antialiasing‘
- 缩小图像时消除锯齿
true
| false
缩小图像时消除锯齿,以逗号分隔的对组形式指定,该对组由 ‘Antialiasing‘
和逻辑布尔值 true
或 false
组成。默认值取决于插值方法。如果插值方法是最近邻插值 (‘nearest‘
),则默认值为 false
。对于其他所有插值方法,默认值为 true
。
数据类型: logical
‘Colormap‘
- 返回优化的颜色图
‘optimized‘
(默认) | ‘original‘
返回优化的颜色图,以逗号分隔的对组形式指定,该对组由 ‘Colormap‘
和字符向量 ‘optimized‘
或 ‘original‘
组成。(仅限于索引图像。)如果设置为 ‘original‘
,则输出颜色图 (newmap
) 与输入颜色图 (map
) 相同。如果设置为 ‘optimized‘
,则 imresize
返回经过优化的新颜色图。
数据类型: char
‘Dither‘
- 执行颜色抖动
true
(默认) | false
执行颜色抖动,以逗号分隔的对组形式指定,该对组由 ‘Dither‘
和逻辑布尔值 true
或 false
组成。(仅限于索引图像。)
执行抖动时,会对图像应用一种噪声,以使量化误差随机化并防止出现大范围色块。
数据类型: logical
‘Method‘
- 插值方法
‘bicubic‘
(默认) | 字符向量 | 元胞数组
插值方法,以逗号分隔的对组形式指定,该对组由 ‘Method‘
和一个字符向量或二元素元胞数组组成。有关详细信息,请参阅 method
。
数据类型: char
| cell
‘OutputSize‘
- 输出图像的大小
二元素数值向量
输出图像的大小,以逗号分隔的对组形式指定,该对组由 ‘OutputSize‘
和一个 [numrows numcols]
形式的二元素向量组成。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
‘Scale‘
- 大小调整缩放因子
正数值标量 | 由正值组成的二元素向量
大小调整缩放因子,以逗号分隔的对组形式指定,该对组由 ‘Scale‘
和一个正数值标量或由正值组成的二元素向量组成。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
输出参数
B
- 调整大小后的图像
实数非稀疏数值数组
调整大小后的图像,以实数非稀疏数值数组的形式返回,图像的类与输入图像相同。
Y
- 调整大小后的索引图像
实数非稀疏数值数组
调整大小后的索引图像,以实数非稀疏数值数组的形式返回,图像的类与输入图像相同。
newmap
- 优化后的颜色图
m×3 数值数组
优化后的颜色图,以 m×3 数值数组的形式返回。
提示
- 如果输出图像的大小不是整数,则
imresize
不会使用指定的比例。imresize
在计算输出图像大小时使用ceil
。
扩展功能
原文地址:https://www.cnblogs.com/Ph-one/p/11566728.html