이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

imresize

이미지 크기 조정

구문

B = imresize(A,scale)
B = imresize(A,[numrows numcols])
[Y,newmap] = imresize(X,map,___)
___ = imresize(___,method)
___ = imresize(___,Name,Value)

설명

예제

B = imresize(A,scale)A의 크기를 scale배만큼 조정하여 이미지 B를 반환합니다. 입력 이미지 A는 회색조, RGB 또는 이진 이미지일 수 있습니다. A의 차원이 2차원을 넘는 경우 imresize는 처음 2개 차원의 크기만 조정합니다. scale이 범위 [0, 1]에 있으면 BA보다 작습니다. scale이 1보다 크면 BA보다 큽니다. 기본적으로, imresize는 쌍삼차(bicubic) 보간을 사용합니다.

예제

B = imresize(A,[numrows numcols])는 요소를 2개 가진 벡터 [numrows numcols]에서 지정한 행 개수와 열 개수를 가지는 이미지 B를 반환합니다.

예제

[Y,newmap] = imresize(X,map,___)은 인덱스 이미지 X의 크기를 조정합니다. 여기서 map은 이미지와 연결된 컬러맵입니다. 기본적으로, imresize는 크기가 조정된 이미지와 함께 새로 최적화된 컬러맵(newmap)을 반환합니다. 원래 컬러맵과 동일한 컬러맵을 반환하려면 'Colormap' 파라미터를 사용하십시오.

예제

___ = imresize(___,method)는 사용되는 보간 방법을 지정합니다.

___ = imresize(___,Name,Value)Name,Value 쌍에 의해 크기 조정 작업의 여러 측면이 제어된 크기 조정 이미지를 반환합니다.

예제

모두 축소

이미지를 작업 공간에 불러옵니다.

I = imread('ngc6543a.jpg');

2배만큼 이미지를 축소합니다.

J = imresize(I, 0.5);

원래 이미지와 크기 조정된 이미지를 표시합니다.

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

이미지를 작업 공간에 불러옵니다.

I = imread('ngc6543a.jpg');

최근접이웃 보간을 사용하여 2배만큼 축소합니다. 이것은 가장 빠른 방법이지만, 품질은 가장 낮습니다.

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

원래 이미지와 크기 조정된 이미지를 표시합니다.

figure 
imshow(I)

figure
imshow(J)

RGB 이미지를 작업 공간으로 읽어 옵니다.

RGB = imread('peppers.png');

RGB 이미지의 크기를 64개 행이 포함되도록 조정합니다. imresize는 열 개수를 자동으로 계산합니다.

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

원래 이미지와 크기 조정된 이미지를 표시합니다.

figure
imshow(RGB)

figure
imshow(RGB2)

인덱스 이미지를 작업 공간으로 읽어 들입니다.

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

2배만큼 인덱스 이미지를 축소합니다.

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

원래 이미지와 크기 조정된 이미지를 표시합니다.

figure
imshow(X,map)

figure
imshow(Y, newmap)

입력 인수

모두 축소

크기 조정할 이미지로, 비희소 형식의 실수 숫자형 배열로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

크기 조정 인자로, 실수 숫자형 스칼라로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

출력 이미지의 행 및 열 차원으로, 양수 값으로 구성된 요소를 2개 가진 숫자형 벡터로 지정됩니다. numrows 또는 numcolsNaN일 수 있습니다. 이 경우 imresize는 행 또는 열 개수를 자동으로 계산하여 이미지 종횡비를 유지합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

크기 조정할 인덱스 이미지로, 비희소 형식의 실수 숫자형 배열로 지정됩니다.

예: [X2, newmap] = imresize(X,map,0.75);

데이터형: double | uint8 | uint16

인덱스 이미지와 연결된 컬러맵으로, mx3 숫자형 배열입니다.

데이터형: double

보간 방법으로, 문자형 벡터 또는 요소를 2개 가진 셀형 배열로 지정됩니다.

method가 문자형 벡터이면 이것은 다음 표에 나열된 특정 방법이나 명명된 보간 커널을 식별합니다.

방법설명

'nearest'

최근접이웃 보간으로, 점이 속하는 픽셀 값이 출력 픽셀에 할당됩니다. 다른 픽셀은 고려되지 않습니다.

'bilinear'

쌍선형 보간으로, 출력 픽셀 값은 최근접 2x2 이웃 픽셀의 가중 평균입니다.

'bicubic'

쌍삼차 보간으로, 출력 픽셀 값은 최근접 4x4 이웃 픽셀의 가중 평균입니다.

참고

쌍삼차 보간은 원래 범위를 벗어나는 픽셀 값을 생성할 수 있습니다.

보간 커널설명
'box'상자 형태 커널
'triangle'삼각 커널('bilinear'와 동일)
'cubic'3차 커널('bicubic'과 동일)
'lanczos2'란초스-2 커널
'lanczos3'란초스-3 커널

method가 요소를 2개 가진 셀형 배열이면 사용자 지정 보간 커널을 정의하게 됩니다. 셀형 배열은 {f,w} 형식을 가집니다. 여기서, f는 사용자 지정 보간 커널의 함수 핸들이고 w는 사용자 지정 커널의 너비입니다. f(x)는 구간 -w/2 <= x < w/2 밖에서 0이어야 합니다. 함수 핸들 f에 스칼라 또는 벡터 입력을 함께 호출할 수 있습니다. 사용자 지정 보간 커널의 경우, 출력 이미지의 일부 값은 입력 이미지의 픽셀 범위를 약간 벗어날 수 있습니다.

데이터형: char | cell

이름-값 쌍의 인수

선택적으로 Name,Value 인수가 쉼표로 구분되어 지정됩니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. Name은 따옴표 안에 표시해야 합니다. Name1,Value1,...,NameN,ValueN과 같이 여러 개의 이름-값 쌍의 인수를 어떤 순서로든 지정할 수 있습니다.

예: I2 = imresize(I,0.5,'Antialiasing',false);

이미지 축소 시 안티에일리어싱 수행 여부로, 'Antialiasing'과 함께 논리형 부울 값 true 또는 false가 쉼표로 구분되어 지정됩니다. 디폴트 값은 보간 방법에 따라 달라집니다. 방법이 최근접이웃('nearest')이면 디폴트 값은 false입니다. 다른 모든 보간 방법에 대해서는 디폴트 값이 true입니다.

데이터형: logical

최적화된 컬러맵 반환 여부로, 'Colormap'과 함께 문자형 벡터 'optimized' 또는 'original'이 쉼표로 구분되어 지정됩니다. 인덱스 이미지에만 사용할 수 있습니다. 'original'로 설정된 경우, 출력 컬러맵(newmap)은 입력 컬러맵(map)과 같습니다. 'optimized'로 설정된 경우, imresize는 최적화된 새 컬러맵을 반환합니다.

데이터형: char

색 디더링 수행 여부로, 'Dither'와 함께 논리형 부울 값 true 또는 false가 쉼표로 구분되어 지정됩니다. 인덱스 이미지에만 사용할 수 있습니다.

디더링에서는 이미지에 잡음 형태를 적용하여 양자화 오차를 무작위화하고 대규모 패턴을 방지합니다.

데이터형: logical

보간 방법으로, 'Method'와 함께 문자형 벡터 또는 요소를 2개 가진 셀형 배열이 쉼표로 구분되어 지정됩니다. 자세한 내용은 method를 참조하십시오.

데이터형: char | cell

출력 이미지의 크기로, 'OutputSize'와 함께 형식 [numrows numcols]로 구성된, 요소를 2개 가진 벡터가 쉼표로 구분되어 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

크기 조정 스케일링 인자로, 'Scale'과 함께 양의 숫자형 스칼라 또는 양수 값으로 구성된, 요소를 2개 가진 벡터가 쉼표로 구분되어 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

출력 인수

모두 축소

크기 조정된 이미지로, 입력 이미지와 동일한 클래스를 가진 비희소(nonsparse) 형식의 실수 숫자형 배열로 반환됩니다.

크기 조정된 인덱스 이미지로, 입력 이미지와 동일한 클래스를 가진 비희소(nonsparse) 형식의 실수 숫자형 배열로 반환됩니다.

최적화된 컬러맵으로, mx3 숫자형 배열로 반환됩니다.

  • 출력 이미지의 크기가 정수가 아닌 경우, imresize는 지정된 스케일을 사용하지 않습니다. 출력 이미지 크기를 계산할 때 imresizeceil을 사용합니다.

확장 기능

R2006a 이전에 개발됨