비전 프로젝트 구성

이 튜토리얼 내용을 읽기 전에 사용자가 이미 로봇 통신 구성 부분에서 샘플 프로젝트 ‘무질서하게 배열된 공작물 로딩’을 사용하여 솔루션을 생성했습니다.

이 튜토리얼에서는 먼저 프로젝트 작업 흐름을 소개한 다음, 작업물의 포즈를 인식하고 비전 결과를 출력하도록 스텝 파라미터를 조정하여 프로젝트를 배포하는 방법에 대해 설명하겠습니다.

이 튜토리얼에서는 사용자가 대상 물체의 CAD 모델 파일을 포인트 클라우드 매칭 모델로 변환할 것입니다. CAD 모델 파일을 준비하는 데 시간이 오래 걸릴 수 있으므로 이 튜토리얼을 사용하기 전에 대상 물체의 CAD 모델 파일을 미리 준비해 두는 것이 좋습니다. 여기를 클릭하여 다운받을 수 있습니다.
비디오 튜토리얼: 비전 프로젝트 구축

프로젝트 작업 흐름 소개

이 튜토리얼에서 사용자가 Mech-Vision소프트웨어와 Mech-Viz소프트웨어를 사용하여 비전 프로젝트을 구성할 것입니다. 비전 프로젝트를 구성하는 방법의 프로세스는 아래 그림과 같습니다.

project workflow

비전 프로젝트 구성의 각각 단계 설명은 다음과 같습니다.

단계 사용되는 소프트웨어 설명

카메라 연결 및 이미지 캡처

Mech-Vision

이미지를 캡처하기 위해 Mech-Vision의 ‘카메라에서 이미지를 캡처하기’ 스텝을 수행합니다.

대상 물체 인식

Mech-Vision

대상 물체의 신속한 인식을 위해 Mech-Vision의 ‘3D 대상 물체 인식’ 스텝을 통해 이미지 데이터에 대해 일련의 비전 처리(포인트 클라우드 처리, 3D 매칭, 딥 러닝 등)을 진행합니다.

포즈 조정

Mech-Vision

Mech-Vision의 ‘포즈 V2 조정’ 스텝을 통해 ‘3D 대상 물체 인식’ 스텝에서 출력된 포즈에 대해 좌표계 전환, 포즈 조정, 포즈 정렬, 포즈 필터링 등 작업을 수행할 수 있습니다.

빈 위치 지정

Mech-Vision

Mech-Vision의 ‘표준 빈 위치 파악’ 자체 정의의 프로시저를 통해 빈을 인식합니다. 인식된 빈 포즈는 Mech-Viz에 보내지게 됩니다. 빈 모델 위치를 업데이트하는 데 사용됩니다.

로봇 경로 계획

Mech-Vision & Mech-Viz

Mech-Vision의 ‘출력’ 스텝을 통해 비전 결과(물체 중심점, 사전에 처리된 포인트 클라우드, 빈 시나리오 모델 이름, 빈 중심 포즈 등 정보)를 Mech-Viz에 보낼 것입니다.
Mech-Viz 프로젝트는 비전 결과에 따라 충돌이 없는 로봇 이동 경로를 계획할 것입니다.

계획 경로 출력

Mech-Viz

로봇 혹은 PLC가 보내는 표준 인터페이스 명령어를 받았을 때 Mech-Viz가 계획된 충돌이 없는 로봇 이동 경로에 돌아갑니다.
로봇 통신 구성 및 Mech-Vision 프로잭트와 Mech-Viz 프로젝트 구성이 완료된 후 Mech-Viz가 매번 실행 후 계획된 경로를 출력할 수 있습니다.
로봇이 로봇 프로그램을 작성하여 Mech-Viz 프로젝트 실행 트리거 및 Mech-Viz출력된 경로 계획의 표준 인터페이스 명령어 보내기를 실현해야 합니다. 구체적인 내용은 ‘픽 앤 플레이스’ 부분의 설명을 참조하십시오.

스텝 파라미터 조정

이 부분에서는 사용자가 각 스텝의 파라미터를 조정하여 프로젝트를 구성할 것입니다.

이 부분의 프로젝트는 ‘무질서허게 배열된 공작물 로딩’ 솔루션에서의 ‘Vis_Target_Objects_Recognition’ 프로젝트입니다.

카메라에서 이미지를 캡처하기

스텝 이름

카메라에서 이미지를 캡처하기

단계

카메라 연결 및 이미지 캡처하기

예시 그림

acquire images from camera

설명

실제 카메라에 연결하고 관련 파라미터를 구성하여 카메라가 정상적으로 이미지를 캡처할 수 있도록 합니다.

  1. Mech-Vision 프로젝트 편집 영역에서 카메라에서 이미지를 캡처하기 스텝을 선택하고 오른쪽 하단의 스텝 파라미터 탭에서카메라 선택 버튼을 클릭합니다.

    select camera
  2. 사용할 카메라 및 캘리브레이션 파라미터 그룹 선택 창이 나타나면 카메라 일련번호 오른쪽에 있는 image 아이콘을 클릭합니다. 카메라가 성공적으로 연결되면 이 아이콘이 image로 변경됩니다.

    connect camera

    카메라가 연결된 후, 파라미터 그룹 선택 버튼을 클릭하여 캘리브레이션된 파라미터 그룹(ETH/EIH와 날짜 정보가 표시됨)을 선택합니다.

    select calibration parameter group
    여기서 선택된 캘리브레이션 파라미터 그룹은핸드-아이 캘리브레이션이 완료된 후 생성된 것입니다.
  3. 카메라를 연결하고 캘리브레이션 파라미터 그룹을 설정하면 카메라 캘리브레이션 파라미터 그룹, IP 주소 및 포트와 같은 파라미터가 자동으로 획득됩니다. 파라미터 그룹 구성 파라미터가 이미 "스레드 로드"로 설정되어 있는지 확인하세요.

    camera other parameters
    • 카메라에서 이미지를 캡처하기 스텝의 단번 실행 버튼을 클릭하여 이미지 캡처를 트리거하고, 스텝의 "카메라 뎁스 맵" 및 "카메라 컬러 이미지" 데이터 스트림을 두번 클릭하고 디버그 출력 창에서 카메라에서 이미지가 성공적으로 캡처되었는지 확인합니다.

      double click data flow line

디버그 출력 창에서 일반적인 뎁스 맵과 컬러 이미지가 보이면 Mech-Vision 소프트웨어가 실제 카메라에 성공적으로 연결되었고 정상적으로 이미지를 캡처할 수 있습니다.

confirm image acquire

3D 대상 물체 인식

스텝 이름

3D 대상 물체 인식

단계

대상 물체 인식

예시 그림

target object recognition

설명

포인트 클라우드의 사전 처리 파라미터 설정, 대상 물체 편집기에서 대상 물체 모델 제작 및 대상 물체 선택, 딥 러닝 파라미터 설정, 파리미터 인식, 출력 포트 구성이 필요합니다.

“3D 대상 물체 인식” 스텝에서 내부 시각화된 3D 대상 물체 인식 도구가 제공되니까 구성 마법사를 통해 3가지 스텝을 거치기만 하면 쉽게 대상 물체 포즈를 인식할 수 있습니다.

overall recognition configuration process

다음 어떤 방식으로든 3D 대상 물체 인식 구도 페이지로 들어가 파라미터를 조절할 수 있습니다.

  • 프로젝트의 편집 구역에서 스텝의 구성 마법사 버튼을 클릭하여 파라미터를 조정하기 시작합니다.

  • 스텝 파라미터 옵션에 있는 구성 마법사 버튼을 클릭합니다.

포인트 클라우드의 사전 처리

포인트 클라우드 사전 처리는 획득한 이미지 데이터를 포인트 클라우드로 전환시켜 유효한 포인트 클라우드 인식 영역을 설정하며 가장자리 포인트 클라우드를 감지하여 요구 사항을 충족하지 않는 포인트 클라우드를 필터링합니다. 이 프로세스는 후속 프로세스의 인식 효율를 향상시키는 데 도움이 될 수 있습니다.

이 스텝에서 사용자가 유효한 인식 구역을 설정할 것입니다. 이로써 간섭 요소를 영역 밖에 제거시켜 인식 효율을 높일 수 있습니다. 빈 위치 소폭 변동에 따른 영향을 받지 않도록 인식 구역 설정 시 빈 그리고 빈 안에 있는 대상 물체를 커버하고 밖으로 20-30 밀리미터 확대해야 합니다.

set 3d roi

보통 키타 사전 처리 파라미터의 기본값을 보류하면 됩니다. 만약 시나리오에는 많은 노이즈가 있으면 관련 파라미터를 조정하십시오. 상세 내용은 포인트 클라우드 사전 처리 부분을 참조하십시오.

파라미터 조정이 완료된 후 사전 처리 결과 미리 보기 구역에서 스텝 실행 버튼을 클릭하여 시각화 구역에서 사전 처리 효과가 기대에 부응하는지 확인할 수 있습니다.

대상 물체 선택 및 인식

  • Mech-Vision에서 3D 매칭과 딥 러닝 추론을 통한 대상 물체 인식이 가능합니다.

  • 3D 매칭은 대상 물체의 포인트 클라우드 모델을 시나리오 포인트 클라우드로 피팅하여 시나리오 중 물체의 포즈를 계산하는 과정입니다. 3D 매칭을 이용하여 대상 물체를 인식하기 전에 먼저 대상 물체 모델을 제작해야 합니다.(즉 포인트 클라우드 모델 또는 포인트 클라우드 매칭 모델)

  • 딥 러닝 추론을 통한 대상 물체 인식 시 Mech-DLK가 훈현시킨 딥 러닝 모델을 사용해야 합니다. Mech-Vision의 관련 스텝은 딥 러닝을 사용하여 물체 인식, 물체 분류, 물체 포즈 계산 등 작업을 수행합니다.

  • 파라미터 조정이 완료된 후 실행 결과 보기 구역에서 스텝 실행 버튼을 클릭하여 시각화 구역에서 인식 효과가 기대에 부응하는지 확인할 수 있습니다.

대상 물체 모델을 만들기

이 튜토리얼에서 CAD 모델 파일(.stl 형삭)을 사용하여 대상 물체의 포인트 클라우드 모델을 생성합니다. 여기를 클릭하면 다운받을 수 있습니다.

아래 내용을 참고하시기 바랍니다. STL 파일을 가져오는 것을 통해 포인트 클라우드 모델을 생성하고 수동으로 픽 포인트를 구성해 대상 물체 매칭 모델을 제작합니다.

주의 사항:

  • 카매라로 볼트의 포인트 클라우드 데이터를 수집할 때 포인트 클라우드가 과도하게 평활한 현상이 나타날 수 있습니다. 이로 인해 볼트의 디테일 특징이 손실될 수 있습니다. 그러므로 이 튜토리얼은 STL 파일을 가져와서 포인트 클라우드 모델을 생성하는 방법에 대해 소개하겠습니다. 아래 그림과 같이 이 튜토리얼에서 제공된 STL 파일은 간소화된 처리로 와잔한 볼트 디테일을 포함하지 않습니다.

    stl model
  • ‘STL 파일 구성’ 스텝에서 단위 설정에서 미터(m)를 선택해 시각 설정에서 모든 시각을 선택합니다.

    configure stl file
  • “픽 포인트 설정” 단계에서 실제 상황에 따라 포인트 클라우드 모델에 대해 픽 포인트를 설정합니다. 상세 내용은 픽 포인트를 참조하십시오. 이 솔루션에서 그리퍼를 사용하여 중심 부분을 집으니까 대상 물체의 픽 포인트는 중심점으로 설정하는 것이 좋습니다.

    set pickpoint tip
대상 물체를 피킹하는 데 사용되는 말단장치의 관련 구성은 현재 설정하지 않아도 되며 Mech-Viz 프로젝트 구성 때 구성할 수 있습니다.

대상 물체 모델이 만들어진 후 대상 물체 창을 닫고 3D 대상 물체 인식 도구 인터페이스로 돌아가 대상 물체 업데이트 버튼을 클릭합니다. 만약에 이 솔루션의 대상 물체 편집기에는 단 하나만의 대상 물체 모델이 있으면 도구는 자동으로 이 대상 물체를 선택할 것입니다. 만약에 이 프로젝트에는 대상 물체 여러 개가 있으면 사용할 대상 물체 모델을 선택하십시오.

select object model

딥 러닝 파라미터 설정

  1. 딥 러닝 사용 구역에서 딥 러닝으로 인식 지원 기능을 활성화합니다.

  2. 모델 패키지 관리 도구를 사용하여 이 튜토리얼에서 제공된 딥 러닝 패키지를 가져오거나 Mech-DLK 스스로 훈련을 시키는 딥 러닝 모델 패키지를 사용해도 됩니다. 상세 내용은 딥 러닝 모델 패키지를 가져오기 부분을 참조하십시오.

  3. 딥 러닝 사용 구역에서 모델 드롭다운 선택 리스트에서 가져온 모델을 선택합니다.

    딥 러닝 모델을 처음 로딩하는데 시간이 좀 걸리니 기다려 주십시오.
  4. ROI 설정 버튼을 클릭하여 2D ROI를 설정합니다. 상세 내용은 2D ROI 설정 스텝 부분을 참조하십시오.

  5. 딥 러닝 파라미터 조정: 딥 러닝 모델이 출력한 마스크가 이미지 가장자리에서 정보가 우실되지 않도록 마스크 이미지에 대해 5픽셀의 팽창 처리를 해야 합니다. 이를 통해 더욱 완전한 대상 물체 포인트 클라우드 데이터를 획득할 수 있습니다.

set dl parameters

매칭 파라미터 설정

  1. 대상 물체 인식 구역에서 자동으로 매칭 모델 설정 기능을 끕니다.

  2. 근사 매칭 모드를 ‘가장자리 매칭’으로 설정하고 상세 매칭 모드를 ‘표면 매칭’으로 설정합니다.

  3. 신뢰도 임계값은 0.5로 설정하여 잘못된 매칭 결과를 삭제합니다.

  4. 실제 수요에 따라 최대 출력 결과 수를 설정합니다.(예: 30) 경로 계획의 수요를 충족할 수 있는 것을 전제 조건으로 최대한으로 출력 결과 수를 감소하여 매칭 시간을 줄립니다.

    set matching parameters
출력 포트 설정

후속 경로 계획 및 충돌 감지의 요구 사항에 따라 다음과 같은 출력 포트를 선택하십시오.

  • 물체 중심점과 관련 포트

  • 사전 처리 후의 포인트 클라우드

set output ports

포즈 조정 V2

스텝 이름

포즈 조정 V2

단계

포즈 조정

예시 그림

adjust poses

설명

포즈 변환, 포즈 조정, 포즈 정렬 그리고 포즈 필터링을 위해 파라미터를 구성해야 합니다.

대상 물체 포즈를 받은 후 포즈를 조정해야 합니다. 구체적인 처리 프로세스는 다음과 같습니다.

adjust poses process

Mech-Vision에는 포즈 조정 도구가 있습니다. 사용자가 이 도구를 사용하여 쉽게 물체 포즈를 조정하고 피킹 순서를 최적화할 수 있습니다. 다음 어떤 방식으로든 포즈 조정 페이지로 들어가 파라미터를 조절할 수 있습니다.

  • 프로젝트의 편집 구역에서 스텝의 구성 마법사 버튼을 클릭하여 파라미터를 조정하기 시작합니다.

  • 스텝 파라미터 옵션에 있는 구성 마법사 버튼을 클릭합니다.

다음 스텝을 수행하여 파라미터를 조절하십시오.

  1. 포즈 변환: 포즈 조정 탭에서 포즈를 카메라 좌표계에서 로봇 좌표계로 전환합니다.

    adjust reference frame
  2. 포즈 조정: 포즈 조정 탭에서 포즈의 Z 축을 참조 포즈로 지정합니다.

    adjust pose direction
  3. 포즈 정렬: 포즈 규칙 탭에서 좌표계 중 로봇의 위치 Z 값에 따라 내림차순으로 정렬합니다.

    sort poses
  4. 각도 필터링: 포트 규칙 탭에서 포즈 Z 축의 방향에 따라 현저히 피킹 불가능한 포즈를 필터링하여 Mech-Viz의 경로 계획 시간을 줄립니다.

    filter poses
  5. ROI 밖의 포즈 필터링: 포트 규칙 탭에서 ROI을 설정하고 포즈가 ROI에 있는지를 판단하여 ROI에 있는 포즈만 보류합니다.

    이 부분의 ROI(3d_roi)는 로봇 좌표계에 있습니다. 잘못된 필터링 문제가 발생하지 않도록 실제 외부 파라미터에 따라 다시 ROI를 설정해야 합니다.
    set 3d roi

포준 빈 위치 파악

스텝 이름

포준 빈 위치 파악(자체 정의 프로시저)

단계

빈 위치 지정

예시 그림

locate bin

설명

빈은 Mech-Viz 프로젝트에서 시나리오 물체로의 이름과 빈 포즈 옵셋을 설정해야 합니다.

  1. Mech-Vision프로젝트 편집 구역에서 포준 빈 위치 파악 프로시저를 선택하고 페이지 우측 하단의 스텝 파라미터 텝에서 문자열 리스트 파라미터를 설정합니다.

    문자열 리스트 파라미터 값은 Mech-Viz 프로젝트의 빈 시나리오 물체 이름이 될 것입니다. Mech-Viz 프로젝트의 빈 시나리오 물체를 구성할 때 반드시 이 파라미터 값을 이름으로 사용해야 합니다.
    adjust bin parameters
  2. 이동 거리 파라미터는 빈 높이의 절반으로 설정합니다.

    현재 인식되는 빈 포즈는 빈 표면에 있으므로 다른 빈 포즈가 정확하게 빈 중심 위치에 딱 맞도록 포즈를 인식하여 조정해야 합니다. 이 프로시저는 빈 좌표계를 따라 이동하므로 특정한 옵셋을 감소해야 합니다. 이 때문에 여기의 설정은 음수입니다.

출력

스텝 이름

출력

단계

로봇 경로 계획(전제 조건)

예시 그림

procedure out

설명

경로 계획 및 충돌 감지에 필요한 정보가 모두 출력이 가능함을 확인해야 합니다.

경로 계획 및 충돌 감지의 요구 사항에 따라 다음과 같은 정보를 Mech-Viz로 출력해야 합니다.

  • 물체 중심점(PoseList)

  • 대상 물체 이름(StringList)

  • 법선 방향이 있는 포인트 클라우드(Cloud(XYZ-Normal)): 사전 처리 후의 포인트 클라우드

  • 시나리오 물체 이름(StringList): 빈 시나리오 모델의 이름

  • 시나리오 물체 포즈(PoseList): 빈 중심점 포즈

위의 모든 포트가 데이터 스트림과 연결됨을 확인한 후 실행 버튼을 클릭하여 프로젝트가 성공적으로 실행할 수 있음을 확인하고 비전 효과를 출력합니다. Mech-Vision 로드 바의 비전 옵션에서 비전 결과를 가지는 로그가 있는지를 확인할 수 있습니다.

check output result

경로 계획

이 솔루션에서 Mech-Viz를 사용하여 경로 계획을 획득합니다. 표준 인터페이스 통신 방식을 사용할 때 Mech-Viz 프로젝트와 로봇이 함께 협조하여 3D 비전 가이드 피킹돠 배치 프로세스를 수행해야 합니다.

Mech-Viz 프로젝트 구성을 통한 경로 계획의 방법에 대해 ‘‘픽 앤 플레이스’ 부분을 참조하십시오.

이로써 비전 프로젝트 구성이 완료됩니다.

저희는 귀하의 개인 정보를 소중하게 생각합니다.

당사 웹사이트는 귀하에게 최상의 경험을 제공하기 위해 쿠키를 사용합니다. "모두 수락"을 클릭하시는 경우, 귀하는 사의 쿠키 사용에 동의하게 됩니다. "모두 거부"를 클릭하시는 경우, 귀하가 이 웹사이트를 방문할 때 추적되거나 기억되지 않도록 하기 위해 단일 쿠키가 사용됩니다.