1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > matlab批量修改图片的大小_图像处理成统一大小

matlab批量修改图片的大小_图像处理成统一大小

时间:2023-07-03 17:04:52

相关推荐

matlab批量修改图片的大小_图像处理成统一大小

用resize函数即可

imresize -

Resize image

Syntax

B = imresize(A, scale)

B = imresize(A, [mrows ncols])

[Y newmap] = imresize(X, map, scale)

[...] = imresize(..., method)

[...] = imresize(..., parameter, value, ...)

Description

B = imresize(A, scale) returns image B that is scale times the size of A. The input image A can be a grayscale, RGB, or binary image. If scale is between 0 and 1.0, B is smaller than A. If scale is greater than 1.0, B is larger than A.

B = imresize(A, [mrows ncols]) returns image B that has the number of rows and columns specified by [mrows ncols]. Either NUMROWS or NUMCOLS may be NaN, in which case imresize computes the number of rows or columns automatically to preserve the image aspect ratio.

[Y newmap] = imresize(X, map, scale) resizes the indexed image X. scale can either be a numeric scale factor or a vector that specifies the size of the output image ([numrows numcols]). By default, imresize returns a new, optimized colormap (newmap) with the resized image. To return a colormap that is the same as the original colormap, use the 'Colormap' parameter (see below).

[...] = imresize(..., method) resizes the indexed image. method can be (1) a text string that specifies a general interpolation method, (2) a text string that specifies an interpolation kernel, or (3) a two-element cell array that specifies an interpolation kernel.

(1) Text String Specifying Interpolation Method

Method Name Description

'nearest'

Nearest-neighbor interpolation; the output pixel is assigned the value of the pixel that the point falls within. No other pixels are considered.

'bilinear'

Bilinear interpolation; the output pixel value is a weighted average of pixels in the nearest 2-by-2 neighborhood

'bicubic'

Bicubic interpolation (the default); the output pixel value is a weighted average of pixels in the nearest 4-by-4 neighborhood

(2) Text String Specifying Interpolation Kernel

Kernel Name Description

'box' Box-shaped kernel

'triangle' Triangular kernel (equivalent to 'bilinear')

'cubic' Cubic kernel (equivalent to 'bicubic')

'lanczos2' Lanczos-2 kernel

'lanczos3' Lanczos-3 kernel

(3) Two-element Cell Array Specifying Interpolation Kernel

Form Description

{f,w} f is a function handle for a custom interpolation kernel and w is the custom kernel's width.f(x) must be zero outside the interval -w/2 <= x < w/2. Your function handle f may be called with a scalar or a vector input.

[...] = imresize(..., parameter, value, ...) you can control various aspects of the resizing operation by specifying parameter/value pairs with any of the previous syntaxes. The following table lists these parameters.

Parameter Value

'Antialiasing' A Boolean value that specifies whether to perform antialiasing when shrinking an image. The default value depends on the interpolation method. If the method is nearest-neighbor ('nearest'), the default is false; for all other interpolation methods, the default is true.

'Colormap' A text string that specifies whether imresize returns an optimized colormap or the original colormap (Indexed images only). If set to 'original', the output colormap (newmap) is the same as the input colormap (map). If set to 'optimized', imresize returns a new optimized colormap. The default value is 'optimized'.

'Dither' A Boolean value that specifies whether to perform color dithering (Indexed images only). The default value is true.

'Method' As described above

'OutputSize' A two-element vector, [MROWS NCOLS], that specifies the size of the output image. If you specify NaN for one of the values, imresize computes the value of the dimension to preserve the aspect ratio of the original image.

'Scale' A scalar or two-element vector that specifies the resize scale factors. If you specify a scalar, imresize uses the value as the scale factor for each dimension. If you specify a vector, imresize uses the individual values as the scale factors for the row and column dimensions, respectively.

Remarks

The function imresize changed in version 5.4 (Ra). Previous versions of the Image Processing Toolbox used a somewhat different algorithm by default. If you need the same results produced by the previous implementation, use the function imresize_old.

For bicubic interpolation, the output image may have some values slightly outside the range of pixel values in the input image. This may also occur for user-specified interpolation kernels.

Class Support

The input image can be numeric or logical and it must be nonsparse. The output image is of the same class as the input image. An input image that is an indexed image can be uint8, uint16, or double.

Examples

Shrink by factor of two using the defaults of bicubic interpolation and antialiasing.

I = imread('rice.png');

J = imresize(I, 0.5);

figure, imshow(I), figure, imshow(J)

Shrink by factor of two using nearest-neighbor interpolation. (This is the fastest method, but it has the lowest quality.)

J2 = imresize(I, 0.5, 'nearest');

Resize an indexed image

[X, map] = imread('trees.tif');

[Y, newmap] = imresize(X, map, 0.5);

imshow(Y, newmap)

Resize an RGB image to have 64 rows. The number of columns is computed automatically.

RGB = imread('peppers.png');

RGB2 = imresize(RGB, [64 NaN]);

See Also

imrotate, imtransform, tformarray

interp2 in the MATLAB Function Reference

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。