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

imopen

영상에 모폴로지 열기 연산 수행

구문

J = imopen(I,SE)
J = imopen(I,nhood)

설명

예제

J = imopen(I,SE)는 회색조 영상 또는 이진 영상 I에 모폴로지 열기를 수행하고, 이 모폴로지 열기가 수행된 영상 J를 반환합니다. SEstrel 함수 또는 offsetstrel 함수로 반환되는 단일 구조 요소 객체입니다. 모폴로지 열기 연산은 동일한 구조 요소에 침식을 수행한 후 팽창을 수행하는 연산입니다.

선택적으로 GPU를 사용하여 모폴로지 열기를 수행할 수 있습니다(Parallel Computing Toolbox™가 필요함). 자세한 내용은 Image Processing on a GPU 항목을 참조하십시오.

J = imopen(I,nhood)는 영상 I를 엽니다. 여기서 nhood는 구조 요소 이웃을 지정하는, 0과 1로 구성된 행렬입니다. 이는 구문 imopen(I,strel(nhood))와 동일합니다. imopen 함수는 floor((size(nhood)+1)/2)를 통해 이웃의 중앙 요소를 파악합니다.

예제

모두 축소

영상을 작업 공간으로 읽어 들인 후 표시합니다.

original = imread('snowflakes.png');
imshow(original);

반지름이 5픽셀인 원판 모양의 구조 요소를 만듭니다.

se = strel('disk',5);

영상에서 원판 모양 구조 요소로 열기 연산을 수행하여 반지름이 5픽셀 미만인 눈송이를 제거합니다.

afterOpening = imopen(original,se);
figure
imshow(afterOpening,[]);

영상을 읽어 들입니다.

 original = imread('snowflakes.png');

원판 모양 구조 요소를 만듭니다.

se = strel('disk',5);

gpuArray 객체를 사용하여 GPU에서 영상에 모폴로지 열기 연산을 수행한 후 영상을 표시합니다.

afterOpening = imopen(gpuArray(original),se);
figure, imshow(original), figure, imshow(afterOpening,[])

입력 인수

모두 축소

입력 영상으로, 회색조 영상 또는 이진 영상으로 지정됩니다. I는 임의 차원을 가질 수 있으며 비희소 형식의 실수여야 합니다.

GPU를 사용하여 열기 연산을 수행하려면 Iuint8형 또는 logical형의 영상을 포함하는 gpuArray로 지정하십시오.

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

구조 요소로, 단일 strel 객체 또는 offsetstrel 객체로 지정됩니다. 영상 I의 데이터형이 logical인 경우 구조 요소는 평탄해야 합니다.

GPU를 사용하여 모폴로지 열기를 수행할 경우 SE는 평탄해야 하고 2차원이어야 합니다.

구조 요소 이웃으로, 0과 1로 구성된 행렬로 지정됩니다.

예: [0 1 0; 1 1 1; 0 1 0]

출력 인수

모두 축소

모폴로지 열기가 수행된 영상으로, 회색조 영상 또는 이진 영상으로 반환됩니다. J는 입력 영상 I와 동일한 클래스를 갖습니다.

GPU를 사용하여 모폴로지 열기를 수행하면 JI와 클래스가 같은 회색조 영상 또는 이진 영상을 포함하는 gpuArray로 반환됩니다.

확장 기능

참고 항목

함수

객체

R2006a 이전에 개발됨