딥 러닝 응용 시나리오

2D 카메라+ 딥 러닝

다음은 딥 러닝이 적용된 2D 카메라의 응용 시나리오입니다. 다양한 알고리즘 모듈을 다양한 시나리오에 적용할 수 있습니다.

신속하게 위치 지정

물체의 자세를 수정합니다.

  • 작업물 각도의 위치를 지정하고 동일한 자세로 수정합니다.

    quick location 1

결함 세그먼테이션

다양한 유형의 결함을 감지합니다. 땟국, 기포 결함, 긁힘 등 표면 결함 및 구부러짐, 비정상적인 형태, 누락과 같은 위치 결함 등을 검출할 수 있습니다. 결함이 작은 경우, 배경이 복잡한 경우 및 작업물 위치가 고정되지 않은 경우와 같은 복잡한 상황에서 여전히 사용할 수 있습니다.

  • 렌즈 표면의 기포 결함 및 접착제 유출을 검출합니다.

    defection 1
  • 구부러진 작업물을 검출합니다.

    defection 2

이미지 분류

작업물의 앞/뒷면, 방향을 구분하고 물체 결함의 유형을 판단하며 물체가 누락되었는지와 정렬되어 있는지를 판단하는 데 사용됩니다.

  • 작업물이 깔끔하게 정렬된지 또는 무질서하게 배치된지를 판단합니다.

    classification 1
  • 작업물의 앞/뒷면을 구분합니다.

    classification 2

물체 검출

PCB의 누락된 구성 요소와 같이 고정된 위치에 배치된 작업물의 누락 여부를 감지하는 데 사용되며 물체 수량을 계산하는 데에도 사용할 수 있습니다.

  • 철근의 총수를 계산합니다.

    detection 2

인스턴스 세그먼테이션

단일 또는 다중 종류의 체를 구분하고 해당 윤곽선을 분할합니다.

  • 모양이 다양한 블록을 분할합니다.

    instance segmentation 1
  • 무질서하게 겹친 체인 링크를 분할합니다.

    instance segmentation 2
  • 나란히 밀착하게 쌓여 있는 종이 상자를 분할합니다.

    instance segmentation 3

3D 카메라+ 딥 러닝

이러한 시나리오에서는 포인트 클라우드 정보만을 사용하여 작업물을 정확하게 식별하고 배치할 수 없으며 작업물의 인식 및 위치 지정을 완료하려면 딥 러닝 + 3D 매칭이 필요합니다.

포인트 클라우드의 누락 문제가 심각한 경우

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D 맵 정보: 아래 그림 속의 빛반사 부품은 밀착하게 붙어 있으며 수량이 많습니다. 그러나 작업물의 가장자리와 모양 특징은 명확합니다.

    application scenarior 1
  2. 포인트 클라우드 정보: 빛반사로 인해 작업물의 일부 포인트 클라우드가 누락됩니다. 주요 누락된 부분은 작업물의 축 방향에 있습니다.

    application scenarior 2

작업물의 축 방향에서 포인트 클라우드가 누락되면 포인트 클라우드 매칭 오배치가 발생하여 포즈 편차가 크며 작업물이 서로 가깝고 포인트 클라우드를 분리할 수 없으며 오정렬이 발생합니다. 또한 작업물이 크고 비전 처리의 사이클 타임이 매우 깁니다.

이러한 경우, “인스턴스 세그먼테이션” 모듈을 사용하여 해당 모델을 훈련시켜 Mech-Vision에서 딥 러닝 관련 스텝을 통해 작업물을 인식합니다. 다음으로 마스크와 대응한 포인트 클라우드를 추출하고 매칭을 수행하며 포즈A를 계산합니다. 마스크를 사용하여 대응한 포인트 클라우드를 생성하여 포즈B를 계산한 후 포즈B를 통해 원시 포인트 클라우드의 포즈A의 X,Y에 대해 교정을 수행합니다.

application scenarior 3

포인트 클라우드에 중요한 특징이 없음

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D맵 정보: 그림 속의 빨간색 프레임은 작업물 A와 B의 앞면이고 파란색 프레임은 작업물 A와 B의 뒷면이며 그림 속의 화살표는 앞면과 뒷면을 구분하는 주요 특징 영역을 가리킵니다.

    application scenarior 4
  2. 포인트 클라우드 정보: 아래 포인트 클라우드의 스크린샷을 통해 볼 수 있듯이 종류를 구분하는 작업물의 특징은 포인트 클라우드에서 얻을 수 없습니다.

    application scenarior 5

작업물 종류를 구분하는 데 사용되는 특징점은 매우 작기 때문에(심지어 포인트 클라우드에서 이미 완전히 손실됨) 작업물 종류를 구분하기 위해 포인트 클라우드 매칭을 사용하면 잘못 매칭되어 분류 오류가 발생합니다.

이러한 경우에 "인스턴스 세그먼테이션" 모듈을 사용하여 모델을 훈련시키고 다른 종류의 작업물에 대해 서로 다른 분류 레이블을 지정할 수 있습니다. Mech-Vision 딥 러닝 관련 스텝에 이 모델을 사용하면 단일 작업물의 마스크를 추출하는 동시에 해당 작업물의 분류 레이블도 함께 출력합니다.

application scenarior 6

작업물의 포인트 클라우드가 거의 없음

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D 맵 정보: 빛 반사 작업물, 빈에서 서로 밀착하게 붙어 있습니다.

    application scenarior 7
  2. 이미지 정보: 해당 작업물의 포인트 클라우드가 안정적이지 않아 작업물의 포인트 클라우드가 완전이 없는 가능성이 높습니다.

    application scenarior 8

포인트 클라우드의 특징점이 부족하여 3D 매칭 특징 포인트 클라우드의 손실로 인해 작업물의 위치 및 포즈 계산에 포인트 클라우드 매칭을 사용할 수 없습니다. 포인트 클라우드 매칭을 직접 사용하면 빈 바닥 면으로 잘못된 매칭할 수도 있습니다.

이러한 경우에 작업물은 빛반사 부품이지만 2D 맵에서 작업물의 에지 정보는 매우 명확하므로 "인스턴스 세그먼테이션" 모듈을 사용하여 해당 모델을 훈련시킬 수 있습니다. 이 모델을 Mech-Vision 딥 러닝 관련 스텝에서 사용하며 출력된 마스크를 통해 포인트 클라우드를 생성한 다음 피킹 포즈인 포인트 클라우드 포즈를 다시 계산합니다.

작업물의 표면 패턴, 색상 영역을 정의하기

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D 맵 정보: 알루미늄의 프레임 한쪽에 노란색 테이프가 있습니다. 이 테이프를 통해 알루미늄 프레임의 방향을 확인합니다.

    application scenarior 12
  2. 이미지 정보: 이 부분의 포인트 클라우드는 문제가 없지만 노란색 테이프는 포인트 클라우드에서 전혀 특징이 없습니다.

    application scenarior 13

대상 특징 영역은 컬러 맵에만 존재하므로 포인트 클라우드로 구분할 수 없습니다.

이러한 경우에 노란색 테이프의 대략적인 위치를 찾은 다음 알루미늄 프레임의 방향을 확인하기만 하면 됩니다. “물체 검출” 모듈을 사용하여 모델을 훈련시키고 Mech-Vision 딥 러닝 관련 스텝에서 이 모델을 통해 작업물의 위치를 지정합니다.

application scenarior 14

딥 프레임 랜덤 빈 피킹

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D 맵 정보: 강봉은 랜덤으로 들어오고 일부 강봉의 일부 영역이 빛이 나고 강봉들이 서로 겹칩니다.

    application scenarior 15
  2. 포인트 클라우드 정보: 작업물의 포인트 클라우드는 문제가 없고 표면이 완전히 노출된 작업물의 포인트 클라우드는 효과가 좋습니다. 서로 겹친 작업물에 대해 단일 물체를 클러스터링하는 것이 난이도가 높고 안정성이 낮습니다.

    application scenarior 16

포인트 클라우드 클러스터링은 단일 작업물을 안정적으로 클러스터링할 수 없으며, 작업물의 포즈가 다르기 때문에 포인트 클라우드 매칭을 위한 모델 선택이 어렵고, 포인트 클라우드 매칭은 매칭 오류 및 불일치를 유발하여 포즈 계산이 매우 부정확합니다. 포인트 클라우드 모델을 사용하여 전역 매칭을 수행하면 비전 처리의 사이클 타임이 너무 길어집니다.

이러한 경우에 “인스턴스 세그먼테이션” 모듈을 사용하여 모델을 훈련시키고 Mech-Vision 딥 러닝 관련 스텝에서 이 모델을 통해 단일 작업물의 마스크를 추출한 다음에 마스크와 대응하는 단일 작업물의 포인트 클라우드를 획득하며 후속 단일 작업물의 포인트 클라우드 매칭을 수행합니다.

application scenarior 17

작업물이 서로 밀착하게 붙어 있으므로 포인트 클라우드 클러스터링을 통해 단일 작업물을 구분하지 못하는 경우

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D 맵 정보: 이 프로젝트에서 카메라가 이미지를 캡처할 때의 조명 환경이 약간 어둡고 작업물의 에지 정보가 손실될 수 있습니다. 이미지의 밝기를 높인 후 작업물의 에지, 크기 및 그레이스케일 정보를 명확하게 얻을 수 있습니다.

    application scenarior 18
  2. 포인트 클라우드 정보: 해당 작업물의 포인트 클라우드가 좋지만 작업물이 서로 밀착하게 붙어 있기 때문에 작업물 가장자리에 포인트 클라우드 접착 현상이 발생합니다.

    application scenarior 19

작업물의 포인트 클라우드는 매우 양호하지만 포인트 클라우드는 서로 접착되어 단일 작업물을 클러스터링 할 수 없습니다. 전역 포인트 클라우드 매칭을 사용하면 불일치 및 불일치가 발생할 수 도 있으며 심지어 빈에 매칭되는 경우도 있습니다.

이러한 경우에 "인스턴스 세그먼테이션" 모듈을 사용하여 해당 모델을 훈련시킬 수 있습니다. Mech-Vision 딥 러닝 관련 스텝에서 이 모델을 통해 대응하는 포인트 클라우드를 추출하고 포인트 클라우드 매칭을 수행합니다.

application scenarior 20

다양한 작업물의 인식 및 피킹

아래 그림에 표시된 작업물을 예로 들어 보겠습니다.

  1. 2D 맵 정보: 첫 번째 그림이 랜덤 워크스테이션이고 두 번째 그림은 이차 판정 워크스테이션입니다. 두 워크스테이션의 2D 맵의 효과가 다 양호하며 다른 작업물의 특징이 뚜렷합니다.

    application scenarior 21
  2. 포인트 클라우드 정보: 작업물의 포인트 클라우드 효과가 매우 좋고 작업물의 형상 특징도 포인트 클라우드에 잘 반영됩니다.

    application scenarior 22

원통 모양의 작업물의 경우, 포인트 클라우드에 방향 특징이 반영되지 못하기 때문에 포인트 클라우드 매칭을 사용하여 작업물의 방향을 구분할 수 없습니다. 또한 포인트 클라우드를 통해 작업물의 종류를 직접 구분하기가 어렵습니다.

이러한 경우에, 왼쪽 워크스테이션에서 “인스턴스 세그먼테이션” 모듈을 사용하여 모델을 훈련시키고 Mech-Vision 딥 러닝 관련 스텝에서 이 모델을 통해 작업물을 인식하고 분할하며 대응하는 작업물 마스크를 출력한 다음에 후속 포인트 클라우드의 처리 프로세스를 수행합니다.

application scenarior 23

오른쪽 워크스테이션에서 “인스턴스 세그먼테이션” 모듈을 사용하여 단일 작업물을 인식하고 이 작업물의 모양, 표면 패턴 등 특징을 기반으로 하여 “물체 검출” 모듈을 통해 작업물의 방향을 판단합니다. (아래 왼쪽 그림은 인스턴스 세그먼테이션의 결과이며 오른쪽 그림은 물체 검출의 결과입니다.)

application scenarior 24