콘텐츠로 바로 가기
STAGING SERVER
DEVELOPMENT SERVER

Region Morphology vTool#

Region Morphology 의 vTool을 사용하면 영역의 모양과 크기를 수정할 수 있습니다.

영역을 축소하거나 확장하고, 작은 구조물을 제거하거나, 구멍을 제거하거나, 구멍을 메울 수 있습니다. 이를 통해 후속 가공 과정을 더욱 효율적으로 진행하거나 더 나은 결과를 얻을 수 있습니다.

Region Morphology vTool은 Regions 입력 핀을 통해 영역 또는 영역 배열을 받아들이고, Regions 출력 핀을 통해 영역 배열을 출력합니다.

Region Morphology vTool의 ‘Regions’ 출력 신호는 Roi 입력 핀을 갖춘 vTool의 Roi 입력으로도 사용할 수 있습니다. 자세한 내용은 ROI Creator vTool 주제를 참조하십시오.

Region Morphology vTool은 Blob Analysis Basic 및 Color Blob Analysis Basic 라이선스로 제공됩니다. 라이선스를 구매하려면 Basler 웹사이트를 방문하십시오.

Region Morphology vTool

작동 방식#

영역 형태학의 목적은 영역을 조작하는 데 있습니다. 기본적인 형태학 연산인 침식(Erosion)과 팽창(Dilation)은 영역 마스크를 기반으로 합니다. 반면, 모서리 추적( Fill ) 연산은 마스크가 필요하지 않습니다.

Mask Shapes#

원형 및 직사각형 마스크를 사용할 수 있습니다. 마스크의 모양에 따라 너비와 높이 또는 반지름을 지정할 수 있습니다. 모든 마스크에는 명확하게 정의된 중심이 있습니다. 형태학적 연산 수행 시, 마스크는 이미지 위를 한 줄씩 이동합니다.

너비와 높이가 홀수인 직사각형 마스크(예: 3, 5, 7 등)의 경우, 마스크의 중심은 마스크의 무게중심과 일치합니다. 이 마스크는 중심을 기준으로 대칭을 이룹니다.

반지름이 정수 값에 0.5를 더한 값(예: 1.5, 2.5, 3.5 등)인 원형 마스크의 경우, 마스크의 중심은 마스크의 무게 중심과 일치합니다. 이 마스크는 중심을 기준으로 대칭을 이룹니다.

설정 대화 상자를 처음 열고 직사각형 마스크를 선택하면 너비와 높이가 연동됩니다. 즉, 두 매개변수를 동시에 변경할 수 있으며, 이 경우 생성되는 마스크는 정사각형이 됩니다. 또한 너비와 높이를 개별적으로 설정할 수도 있습니다. 이를 위해서는 체인 아이콘을 클릭하여 너비와 높이 간의 연동을 해제하면 됩니다.

  • 연결된 옵션: 체인 아이콘
  • 연결 해제된 옵션: 끊어진 체인 아이콘

형태소 연산#

각 연산의 작동 방식은 다음과 같습니다:

  • 침식: 마스크가 입력 영역 내에 완전히 들어가는 곳이라면 어디에서나, 마스크의 중심이 지나가는 픽셀들은 출력 영역에 추가됩니다. 이로 인해 해당 영역의 면적이 줄어듭니다.
  • 확장: 마스크와 입력 영역이 적어도 하나의 픽셀을 공유하는 곳이라면, 마스크의 중심이 지나는 픽셀들이 출력 영역에 추가됩니다. 이를 통해 영역의 면적이 확장됩니다.
  • 서론: 이는 침식 연산과 확장 연산을 결합한 것입니다. 확장 연산에 사용되는 마스크는 침식 연산에 사용된 마스크와 동일하지만 180° 회전된 것입니다. 이 연산은 해당 영역에서 마스크보다 작은 구조물들을 제거합니다. 결과 영역의 크기와 모양은 이전과 거의 동일합니다.
  • 클로징(Closing): 이는 팽창(dilation)과 침식(erosion) 연산을 결합한 것입니다. 침식 연산에 사용되는 마스크는 팽창 연산에 사용된 마스크와 동일하지만 180° 회전된 것입니다. 이 연산은 해당 영역 내에서 마스크보다 작은 틈을 채우거나 연결해 줍니다. 결과적으로 영역의 크기와 모양은 이전과 거의 동일하게 유지됩니다.
  • Fill: 이 작업은 해당 영역 내의 빈 공간을 채웁니다. 이 작업에는 마스크가 필요하지 않습니다.

위에 나열된 옵션 외에도 영역 분할을 수행할 수 있습니다. 이 기능을 사용하면 영역의 연결된 구성 요소를 별도의 영역으로 분리할 수 있습니다. 해당 확인란을 선택하면 하나 또는 여러 개의 입력 영역에 대한 연결된 구성 요소가 모두 계산됩니다.

연결된 구성 요소란 모든 픽셀이 (수평, 수직 및 대각선 방향으로) 직접 인접한 픽셀을 가지고 있는 영역을 말합니다. 연결되지 않은 영역은 개별 출력 영역으로 분할됩니다.

또한, 사전 형태학적 연산을 거치지 않은 원본 입력 영역에 대해 영역 분할을 수행할 수도 있습니다.

정보

블롭 분석의 일환으로 영역 형태 분석을 사용하는 경우, 여러 개의 ‘ Region Morphology ’ vTool을 연결하여 최종적으로 원하는 출력 영역을 계산할 수 있습니다.

블롭 분석의 목적에 따라, 일련의 영역 형태학적 연산 과정 중 중간 단계나 최종 단계에서 ‘Region Selection ’ vTool을 사용하여 관련 영역만을 선별해 낼 수 있습니다.

예제#

다음 섹션에서는 예시 이미지를 통해 다양한 형태학적 연산들을 설명합니다.

침식 및 확장#

다음 이미지는 두 가지 형태학적 연산(침식 및 팽창)을 연속적으로 적용하여, 원래의 모양을 유지한 채 서로 닿아 있는 물체를 분리하는 방법을 보여줍니다. 이를 통해 물체의 수를 정확하게 집계할 수 있으며, 이후 영역 특징을 기반으로 한 검사를 수행할 수도 있습니다.

다음은 흰색 정제가 보이는 입력 이미지입니다:

Region Morphology vTool 입력 이미지

다음은 예를 들어 색상 분류 후 초기 영역이 탐지된 이미지입니다:

Region Morphology vTool 예시: 침식 / 팽창, 원본 이미지

‘침식’ 연산을 적용한 후, 해당 영역은 다음과 같이 보입니다:

Region Morphology vTool 예제: 침식 / 팽창 원본 단계: 침식

마지막으로, 팽창 연산을 적용한 후 정제들이 분리됩니다.

Region Morphology vTool 예시: 침식 / 팽창 원본 단계 팽창

시작 및 Fill#

오픈(Opening) 연산은 종종 이미지 노이즈나 잡음 등으로 인해 발생한 작은 영역을 제거하는 데 사용되며, 이로 인해 불완전하게 분할된 영역이 생성되기도 합니다. 다시 말해, 오픈 연산은 적절한 마스크를 사용하여 상당히 큰 영역 구조를 걸러내는 데 활용될 수 있습니다.

다음 이미지들은 대상 물체의 크기의 약 절반 정도 되는 원형 마스크를 사용하여 해당 영역을 노출시킴으로써 회로 기판의 기준점을 감지할 수 있음을 보여줍니다.

영역 채우기는 고리를 채워진 원으로 바꾸기 위한 중간 단계로 사용됩니다.

다음은 회로 기판이 그려진 입력 이미지입니다:

Region Morphology vTool 예제: 원본 이미지 열기

임계값 처리를 통해 이미지의 밝은 구조들이 출력 영역에서 확인할 수 있습니다:

Region Morphology vTool 예제: 열기 임계값 설정

필링을 바른 후, 링에 필링이 채워집니다:

Region Morphology vTool 예제: 열기 및 채우기

마지막으로, ‘Opening’을 적용하면 모든 작은 영역이 제거되고, 감지된 영역으로는 기준점만 남게 됩니다:

Region Morphology vTool 예제 실행 결과

Closing#

‘닫기’ 작업은 기본적으로 영역 내의 들여쓰기를 닫거나, 빈 공간을 채우거나, 개별 영역 세그먼트를 연결하는 데 사용됩니다.

앞서 소개한 것과 동일한 회로 기판 예시를 바탕으로, 이 예시에서는 볼 그리드 어레이(BGA) 영역을 분할하는 방법을 보여줍니다. 시작점은 위에서 보여준 밝은 구조물이 표시된 임계값 처리된 이미지입니다.

볼 그리드 어레이(BGA)의 모든 볼 사이의 간격을 메울 수 있을 만큼 충분히 큰 직사각형 마스크를 사용하여 ‘클로징(Closing)’ 연산을 적용합니다.

Region Morphology vTool 예제 종료 결과

‘열기’ 연산을 적용하여 원치 않는 작은 영역을 제거합니다.

Region Morphology vTool 예제 종료 결과

마지막으로, ‘Region Selection ’ vTool 을 사용하여 크기에 따라 두 개의 볼 그리드 어레이(BGA) 영역을 모두 선택하십시오.

Region Morphology vTool 예제 종료 결과

일반적인 사용 사례#

  • 원형 또는 직사각형 침식을 사용하여 영역 축소하기
  • 원형 또는 직사각형 팽창을 사용하여 영역 확장하기
  • 'Opening' 기능을 사용하여 작은 물체 제거하기
  • 적절한 마스크 모양을 사용하여 오프닝 연산을 통해 더 큰 물체를 걸러내기
  • ‘Closing’ 기능을 사용하여 작은 구멍이나 오목한 부분을 메우기
  • ‘Closing’을 활용하여 지역 간 격차 해소
  • 다음 방법을 사용하여 영역 내의 빈 공간을 채우면 Fill
  • 영역의 연결 성분을 개별 영역으로 분할하여 영역의 개수를 계산하기 위해

vTool 구성#

Region Morphology vTool을 구성하려면:

Region Morphology vTool 설정

  1. vTool 설정 영역의 ‘레시피 관리 ’ 창에서 ‘설정 열기’를 클릭하거나 vTool을 두 번 클릭합니다.
    그러면 Region Morphology 대화 상자가 열립니다.
  2. ‘모폴로지 연산’ 영역에서 수행할 연산을 선택하십시오.
    모폴로지 연산을 수행하지 않고 영역만 분할하려면 ‘Off’를 선택하십시오.
  3. '마스크 모양' 영역에서 마스크의 모양과 크기를 선택합니다.
    침식, 팽창, 닫기 및 열기 연산을 수행하려면 마스크가 필요합니다.
  4. ‘영역 분할’ 영역에서, 연결된 영역을 별도의 영역으로 분할할지 여부를 지정합니다.
    분할 작업은 먼저 모폴로지 연산을 수행하지 않고도 입력 이미지에 직접 적용할 수 있습니다.

형태 분석 연산 결과는 핀 데이터 보기에서 확인할 수 있습니다. 여기에서 표시할 출력을 선택할 수 있습니다.

Inputs#

Regions#

단일 또는 다중 영역을 허용합니다.

  • 데이터 유형: Region, Region Array

Outputs#

Regions#

처리된 영역을 하나 또는 여러 개 반환합니다.

  • Data type: Region Array

일반적인 선행 vTool#

일반적인 후행 vTool#