Main Content

montage

사각형 몽타주 형태로 여러 영상 프레임 표시

설명

예제

montage(I)는 멀티프레임 영상 배열 I의 모든 프레임을 표시합니다. 기본적으로, montage 함수는 영상들이 대략적으로 정사각형 모양을 이루도록 배열합니다.

montage(imagelist)는 셀형 배열 imagelist에 지정된 영상의 몽타주를 표시합니다. 영상의 유형과 크기는 서로 다를 수 있습니다.

예제

montage(filenames)filenames에 지정된 파일 이름을 가진 영상의 몽타주를 표시합니다.

예제

montage(imds)는 영상 데이터 저장소 imds에 지정된 영상의 몽타주를 표시합니다.

montage(___,map)은 (앞의 구문 중 하나를 사용하여 지정한) 모든 회색조 및 이진 영상을 인덱스 영상으로 간주하고 지정된 컬러맵 map을 사용하여 표시합니다. 파일 이름 또는 영상 데이터저장소를 사용하여 영상을 지정할 경우 map은 영상 파일에 있는 모든 내부 컬러맵을 재정의합니다. montage는 RGB 영상의 컬러맵을 수정하지 않습니다.

예제

montage(___,Name,Value)는 이름-값 쌍 인수를 사용하여 영상 몽타주의 표시를 사용자 지정합니다.

img = montage(___)는 표시된 프레임이 모두 포함된 단일 image 객체에 대한 핸들을 반환합니다.

참고

Medical Imaging Toolbox™는 montage(Image Processing Toolbox™) 함수의 기능을 확장하여 medicalImage (Medical Imaging Toolbox) 객체나 medicalVolume (Medical Imaging Toolbox) 객체의 데이터를 표시합니다. 자세한 내용은 montage (Medical Imaging Toolbox) 항목을 참조하십시오.

예제

모두 축소

MRI 데이터셋을 불러옵니다.

load mristack

데이터셋을 표시합니다. montage는 데이터를 멀티프레임 영상으로 처리하여 각 슬라이스를 표시합니다.

montage(mristack)

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

유형과 크기가 서로 다른 여러 개의 영상을 작업 공간으로 읽어 들입니다.

imRGB = imread("peppers.png");
imGray = imread("coins.png");

모든 영상을 포함하는 몽타주를 표시합니다.

figure
montage({imRGB,imGray,"cameraman.tif"})

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

파일에 있는 일련의 영상에서 몽타주를 생성합니다. 몽타주를 2×5 사각형으로 만듭니다. 그런 다음, 두 번째 몽타주를 생성합니다. 이번에는 "DisplayRange" 이름-값 인수를 사용하여 영상의 구조물을 강조 표시합니다.

영상을 사각형 몽타주 형태로 표시하기

일련의 파일 이름을 포함하는 string형 배열을 생성합니다.

fileFolder = fullfile(matlabroot,"toolbox","images","imdata");
dirOutput = dir(fullfile(fileFolder,"AT3_1m4_*.tif"));
fileNames = string({dirOutput.name});

영상을 몽타주 형태로 표시합니다. 몽타주의 형태를 2×5 사각형으로 지정합니다.

montage(fileNames,"Size",[2 5]);

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

몽타주에서 영상 대비 조정하기

다른 Figure에서 동일한 2×5 몽타주를 생성합니다. 또한 표시 범위를 지정하여 몽타주에서 영상 대비를 조정합니다.

figure 
montage(fileNames,"Size",[2 5],"DisplayRange",[75 200]);

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

디폴트 설정의 몽타주를 사용하여 MRI 데이터 세트의 모든 영상을 봅니다. 데이터 세트에는 27개의 영상이 있습니다.

load mri
montage(D,map)

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

처음 9개의 영상만 포함하는 새로운 몽타주를 생성합니다.

figure
montage(D,map,Indices=1:9);

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

Image Processing Toolbox™ 샘플 영상 폴더에 있는 일련의 10개 영상을 포함하는 ImageDatastore 객체를 생성합니다.

fileFolder = fullfile(matlabroot,"toolbox","images","imdata");
imds = imageDatastore(fullfile(fileFolder,"AT3*"));

데이터저장소의 내용을 몽타주 형태로 표시합니다.

montage(imds)

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

입력 인수

모두 축소

멀티프레임 영상 배열로, 다음 중 하나로 지정됩니다.

  • k개의 이진 영상 또는 회색조 영상으로 구성된 시퀀스를 나타내는 m×n×k 숫자형 배열

  • k개의 이진 영상 또는 회색조 영상으로 구성된 시퀀스를 나타내는 m×n×1×k 숫자형 배열

  • k개의 트루컬러 영상으로 구성된 시퀀스를 나타내는 m×n×3×k 숫자형 배열

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

영상의 집합으로, m×n 또는 m×n×3 크기의 숫자형 행렬로 구성된 셀형 배열로 지정됩니다.

데이터형: single | double | int16 | uint8 | uint16 | logical | cell

영상을 포함하는 파일 이름으로, 문자형 벡터로 구성된 셀형 배열이나 string형으로 구성된 벡터로 지정됩니다. 파일이 현재 폴더 또는 MATLAB® 경로의 폴더에 없으면 전체 경로 이름을 지정하십시오. 자세한 내용은 imread 항목을 참조하십시오.

데이터형: char | string | cell

영상 데이터저장소로, ImageDatastore 객체로 지정됩니다.

컬러맵으로, [0, 1] 범위의 값을 갖는 c×3 숫자형 행렬로 지정됩니다. 각 행은 컬러맵의 하나의 색에 대한 빨간색, 녹색, 파란색 성분을 지정하는, 요소를 3개 가진 RGB 3색입니다.

데이터형: double

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: 'Indices',1:9는 처음 9개 프레임으로 구성된 몽타주를 생성합니다.

배경색으로, RGB 3색, 색 이름 또는 짧은 색 이름으로 지정됩니다. montage 함수는 BorderSize로 지정된 공간을 비롯한 모든 빈 공간을 배경색으로 채웁니다. 배경색을 지정하면 montage 함수는 출력값을 RGB 영상으로 렌더링합니다.

RGB 3색을 사용하여 어떤 색이든 지정할 수 있습니다. RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0, 1]이어야 합니다.

몇몇의 흔한 색은 string형 스칼라 또는 문자형 벡터인 이름으로 지정할 수 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색이 나와 있습니다.

색 이름짧은 이름RGB 3색실제 표시 색
"red""r"[1 0 0]

A rectangle colored pure red

"green""g"[0 1 0]

A rectangle colored pure green

"blue""b"[0 0 1]

A rectangle colored pure blue

"cyan" "c"[0 1 1]

A rectangle colored pure cyan

"magenta""m"[1 0 1]

A rectangle colored pure magenta

"yellow""y"[1 1 0]

A rectangle colored pure yellow

"black""k"[0 0 0]

A rectangle colored black

"white""w"[1 1 1]

A rectangle colored white

다음은 MATLAB이 여러 유형의 플롯에서 사용하는 디폴트 색의 RGB 3색입니다.

RGB 3색실제 표시 색
[0 0.4470 0.7410]

A rectangle colored medium blue

[0.8500 0.3250 0.0980]

A rectangle colored reddish-orange

[0.9290 0.6940 0.1250]

A rectangle colored dark yellow

[0.4940 0.1840 0.5560]

A rectangle colored dark purple

[0.4660 0.6740 0.1880]

A rectangle colored light green

[0.3010 0.7450 0.9330]

A rectangle colored light blue

[0.6350 0.0780 0.1840]

A rectangle colored dark red

예: "BackgroundColor","r"

예: "BackgroundColor","green"

예: "BackgroundColor",[0 0.4470 0.7410]

각 축소판 영상의 주변 채우기 옵션(단위: 픽셀)으로, 음이 아닌 정수 또는 음이 아닌 정수로 구성된 1×2 벡터로 지정됩니다. montage 함수는 영상 테두리를 배경색 BackgroundColor로 채웁니다.

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

배열 I에 있는 회색조 영상의 표시 범위로, [low high] 형식의 1×2 벡터로 지정됩니다. low보다 작거나 같은 픽셀 값은 모두 검은색으로 표시됩니다. high보다 크거나 같은 픽셀은 모두 흰색으로 표시됩니다. 빈 행렬([])을 지정하면 montage는 영상의 최소 픽셀 값과 최대 픽셀 값을 사용합니다.

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

몽타주에 표시할 프레임으로, 양의 정수로 구성된 배열로 지정됩니다. montage 함수는 값을 배열 I나 셀형 배열 filenames 또는 imagelist에 대한 인덱스로 해석합니다.

기본적으로, montage 함수는 모든 프레임 또는 영상 파일을 표시합니다.

예: "Indices",1:4I에 있는 처음 4개 프레임으로 구성된 몽타주를 생성합니다:

예: "Indices",1:2:20은 프레임을 하나씩 건너뛰며 표시합니다.

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

영상을 스케일링할 때 사용되는 보간 기법으로, 다음 값 중 하나로 지정됩니다.

설명
"nearest"최근접이웃 보간(디폴트 값)
"bilinear"쌍선형 보간

montage에서 생성된 image 객체의 부모로, axes 객체로 지정됩니다. montage 함수는 부모 좌표축에서 사용할 수 있는 범위에 맞게 영상의 크기를 조정합니다.

영상의 행 개수와 열 개수로, [nrows ncols] 형식의, 요소를 2개 가진 벡터로 지정됩니다.

특정 차원에 NaN 또는 Inf를 지정하면 montage 함수는 모든 영상을 몽타주에 표시할 수 있는 차원의 값을 계산합니다. 예를 들어, Size[2 NaN]이면 몽타주에는 2개 행과 모든 영상을 표시할 수 있는 최소 개수의 열을 갖게 됩니다. Size와 지정된 영상(프레임) 개수가 일치하지 않는 경우, montage 함수는 Size에 따라 타일 형식 영상을 생성합니다.

데이터형: single | double

각 축소판의 크기(단위: 픽셀)로, 양의 정수로 구성된 요소를 2개 가진 벡터로 지정됩니다. 각 영상의 종횡비는 유지되고 모든 빈 공간은 배경색 BackgroundColor로 채워집니다.

빈 배열([])을 지정할 경우 축소판 크기는 첫 번째 영상의 전체 크기입니다. 두 요소 중 하나를 NaN 또는 Inf로 지정하면 montage 함수는 첫 번째 영상의 종횡비를 유지하도록 나머지 요소의 값을 자동으로 계산합니다.

데이터형: single | double

출력 인수

모두 축소

몽타주 영상으로, Image 객체로 반환됩니다.

  • 인덱스 영상을 지정하면 montage는 파일에 있는 컬러맵을 사용하여 이 영상을 RGB로 변환합니다.

  • 영상 간에 데이터형이 일치하지 않을 경우, montage 함수는 모든 영상을 im2double 함수를 통해 double형으로 변환합니다.

  • 가로와 세로로 표시할 영상의 개수를 계산할 때 montage는 표시된 몽타주가 거의 사각형이 되도록 영상의 종횡비를 고려해 계산합니다.

  • Figure 제목은 라이브 편집기에서 잘려서 표시될 수 있습니다. 전체 제목이 보이도록 하려면 부모 axes 객체의 PositionContraint 속성을 "outerposition"으로 설정하십시오. montage 함수를 실행한 후 title 함수를 실행하기 전에 속성값을 업데이트합니다.

    I = imread("peppers.png");
    montage({I,I})
    ax = gca;
    ax.PositionConstraint = "outerposition";
    title("Peppers");
    Parent 이름-값 인수를 사용하여 부모 좌표축을 지정하는 경우 지정된 부모 axes 객체의 PositionConstraint 속성을 설정하십시오. 좌표축 위치 속성에 대한 자세한 내용은 좌표축 레이아웃 제어하기 항목을 참조하십시오.

버전 내역

R2006a 이전에 개발됨