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

imcrop

설명

J = imcrop는 현재 Figure에 표시된 영상과 연결된 대화형 방식의 영상 자르기 툴을 생성합니다. 이 구문과 다른 대화형 방식 구문을 사용할 때, 영상 자르기 툴은 사용자가 작업을 마칠 때까지 MATLAB® 명령줄을 차단합니다. imcrop는 잘라낸 영상 J를 반환합니다.

영상 자르기 툴 사용에 대한 자세한 내용은 대화형 방식 동작 항목을 참조하십시오.

예제

J = imcrop(I)는 Figure 창에 영상 I를 표시하고 이 영상과 연결된 대화형 방식의 영상 자르기 툴을 생성합니다. I는 회색조 영상, 트루컬러 영상 또는 논리형 배열일 수 있습니다.

J = imcrop(X,cmap)은 컬러맵 cmap을 사용하여 Figure에 인덱스 영상 X를 표시하고, 이 영상과 연결된 대화형 방식의 영상 자르기 툴을 생성합니다. imcrop은 잘라낸 인덱스 영상 J를 반환합니다. 이 영상에는 컬러맵 cmap도 포함되어 있습니다.

J = imcrop(h)는 핸들 h로 지정된 영상과 연결된 대화형 방식의 영상 자르기 툴을 생성합니다.

예제

J = imcrop(I,rect)rect에 따라 영상 I를 자릅니다. rect는 자르기 사각형의 크기와 위치를 [xmin ymin width height] 형식의 공간 좌표로 지정합니다. 잘라낸 영상에는 입력 영상에서 사각형으로 완전히 또는 부분적으로 둘러싸인 픽셀이 모두 포함되어 있습니다.

rect로 지정된 너비와 높이는 출력 영상의 크기와 항상 정확히 일치하지는 않습니다. 예를 들어, rect[20 20 40 30]이고 디폴트 공간 좌표 시스템을 사용한다고 가정하겠습니다. 지정된 사각형의 왼쪽 위 코너는 공간 (x,y) 좌표가 (20,20)인 픽셀의 중앙입니다. 사각형의 오른쪽 아래 코너는 공간 (x,y) 좌표가 (60,50)인 픽셀의 중앙입니다. 결과 출력 영상은 30x40 픽셀이 아니라 31x41 픽셀입니다.

예제

J = imcrop(X,cmap,rect)는 컬러맵 cmap을 갖는 인덱스 영상 X를 벡터 rect에 따라 자릅니다. rect는 자르기 사각형의 크기와 위치를 지정합니다.

J = imcrop(x,y,___)는 디폴트가 아닌 좌표 시스템을 사용하여 영상을 자릅니다. 여기서, x, y는 세계 좌표 시스템상의 영상 제한값입니다.

예제

[J,rect2] = imcrop(___)는 자르기 사각형의 위치를 rect2로 반환합니다.

[x2,y2,___] = imcrop(___)는 영상 제한값을 x2, y2로 반환합니다.

예제

모두 축소

영상을 작업 공간으로 읽어 들입니다.

I = imread('cameraman.tif');

이 영상과 연결된 영상 자르기 툴을 엽니다. 잘라낸 영상을 저장할 변수를 지정합니다. 이 예제에서는 imcrop이 사용자가 그리는 사각형의 위치 벡터(4개의 요소로 지정됨)를 반환하는 선택적 반환 값 rect를 사용합니다.

[J, rect] = imcrop(I);

커서를 영상 위로 이동하면 커서가 십자 모양 으로 바뀝니다. 영상 자르기 툴은 사용자가 작업을 마칠 때까지 MATLAB 명령줄을 차단합니다.

마우스를 사용하여, 영상에서 잘라내려는 부분 위로 사각형을 그립니다.

자르기 사각형을 더블 클릭하거나 상황별 메뉴에서 영상 자르기를 선택하여 자르기 작업을 수행합니다.

영상 자르기 툴은 잘라낸 영역을 반환 변수 J로 반환합니다. 변수 rect는 사용자가 지정한 자르기 사각형을 나타내는, 요소를 4개 가진 위치 벡터입니다.

whos
Name        Size             Bytes  Class    Attributes

  I         256x256            65536  uint8              
  J         121x126            15246  uint8          
  rect        1x4                 32  double          

영상을 작업 공간으로 읽어 들입니다.

I = imread('circuit.tif');

자르기 사각형을 지정하여 영상을 자릅니다.

I2 = imcrop(I,[75 68 130 112]);

원본 영상과 잘라낸 영상을 표시합니다.

subplot(1,2,1)
imshow(I)
title('Original Image')
subplot(1,2,2)
imshow(I2)
title('Cropped Image')

인덱스 영상과 이 영상에 연결된 맵을 작업 공간으로 불러옵니다.

load trees

자르기 사각형을 지정하여 인덱스 영상을 자릅니다.

X2 = imcrop(X,map,[30 30 50 75]);

원본 영상과 잘라낸 영상을 표시합니다.

subplot(1,2,1)
imshow(X,map)
title('Original Image')
subplot(1,2,2)
imshow(X2,map)
title('Cropped Image')

입력 인수

모두 축소

자를 영상으로, 숫자형 배열로 지정됩니다. rect를 입력 인수로 지정할 경우 I는 논리형일 수도 있습니다. 그렇지 않은 경우 imcropimshow를 호출하고 imshow가 허용하는 모든 영상 클래스를 허용합니다.

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

자를 인덱스 영상으로, 정수로 구성된 배열로 지정됩니다. rect를 입력 인수로 지정할 경우 I는 논리형일 수도 있습니다. 그렇지 않은 경우 imcropimshow를 호출하고 imshow가 허용하는 모든 영상 클래스를 허용합니다.

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

인덱스 영상과 연결된 컬러맵으로, cx3 숫자형 행렬로 지정됩니다.

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

공간 좌표로 지정된 자르기 사각형의 크기와 위치로, [xmin ymin width height] 형식의, 요소를 4개 가진 숫자형 벡터로 지정됩니다.

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

Figure, 좌표축, uipanel 또는 영상 그래픽스 객체에 대한 핸들로, 핸들로 지정됩니다. h가 axes 핸들이거나 Figure 핸들인 경우 imcrop는 findobj(H,'Type','image')에서 반환된 첫 번째 영상을 사용합니다.

세계 좌표상의 x 차원 또는 y 차원의 영상 제한값으로, [min max] 형식의, 요소를 2개 가진 숫자형 벡터로 지정됩니다. xy의 값에 따라 영상 XDataYData가 설정됩니다. xy의 데이터형은 일치해야 합니다.

xy의 두 번째 요소는 첫 번째 요소보다 커야 합니다. imcrop은 축이 반전된 좌표 시스템을 지원하지 않습니다.

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

출력 인수

모두 축소

잘라낸 영상으로, 숫자형 배열로 반환됩니다.

  • 입력 영상을 지정할 경우, 출력 영상은 입력 영상과 동일한 클래스를 갖습니다.

  • 입력 영상을 지정하지 않을 경우에도 출력 영상은 일반적으로 imcrop에서 할당한 입력 영상과 동일한 클래스를 갖습니다. 그러나, 입력 영상이 int16형이거나 single형이면 출력 영상은 double형입니다.

자르기 사각형의 크기와 위치로, [xmin ymin width height] 형식의, 요소를 4개 가진 숫자형 벡터로 반환됩니다.

x 방향 또는 y 방향의 영상 제한값으로, [min max] 형식의, 요소를 2개 가진 숫자형 벡터로 반환됩니다. 영상 제한값 xy를 지정할 경우, x2y2는 이들 값과 같습니다. 그렇지 않을 경우 x2y2는 원본 영상의 XData, YData와 같습니다.

세부 정보

모두 축소

대화형 방식 동작

영상 자르기 툴은 이동과 크기 조정이 가능한 사각형으로, 영상 위에 놓은 다음 마우스를 사용하여 대화형 방식으로 자르기 작업을 수행할 수 있습니다.

영상 자르기 툴이 Figure에 활성화된 경우, 포인터를 대상 영상 위로 가져가면 포인터가 십자 모양 으로 바뀝니다. 마우스를 클릭한 후 끌어서 자르기 사각형을 지정하십시오. 마우스를 사용하여 자르기 사각형을 이동하거나 크기를 조정할 수 있습니다. 자르기 사각형의 크기 조정과 위치 지정을 마치면, 마우스 왼쪽 버튼을 더블 클릭하여 잘라낸 영상을 생성하십시오. 상황별 메뉴에서 영상 자르기(Crop Image)를 선택할 수도 있습니다. 다음 그림에는 영상 자르기 툴과 함께 상황별 메뉴가 표시되어 있습니다.

대화형 방식 동작설명
영상 자르기 툴 취소.

Backspace 키, Esc 키 또는 Delete 키를 누르거나, 자르기 사각형 내부를 마우스 오른쪽 버튼으로 클릭하고 상황별 메뉴에서 취소(Cancel)를 선택합니다.

참고: ROI를 삭제할 경우 함수는 빈 값을 반환합니다.

영상 자르기 툴 크기 조정.자르기 사각형의 크기 조정 핸들 중 하나를 선택합니다. 포인터가 양방향 화살표 로 바뀝니다. 마우스를 클릭한 후 끌어서 자르기 사각형의 크기를 조정합니다.
영상 자르기 툴 이동.포인터를 자르기 사각형의 경계 안으로 이동합니다. 포인터가 십자형 화살표 로 바뀝니다. 마우스를 클릭한 후 끌어서 사각형을 영상 위로 움직입니다.
자르기 사각형을 표시하는 데 사용된 색 변경.자르기 사각형의 경계 내부를 마우스 오른쪽 버튼으로 클릭하고 상황별 메뉴에서 색 설정(Set Color)을 선택합니다.
영상 자르기.

마우스 왼쪽 버튼을 더블 클릭하거나, 자르기 사각형의 경계 내부를 마우스 오른쪽 버튼으로 클릭하고 상황별 메뉴에서 영상 자르기(Crop Image)를 선택합니다.

자르기 사각형의 좌표 가져오기.자르기 사각형의 경계 내부를 마우스 오른쪽 버튼으로 클릭하고 상황별 메뉴에서 위치 복사(Copy Position)를 선택합니다. imcrop은 요소를 4개 가진 위치 벡터([xmin ymin width height])를 클립보드에 복사합니다.

확장 기능

참고 항목

|

R2006a 이전에 개발됨