Depalletization - Imaging at Large Distance

참고

This tutorial uses a Zivid One+ camera, but the same principles can be applied to all other Zivid camera models.

Introduction

이 기사에서는 장거리 및 작업 범위에 대해 고정 장착 조건에서 Zivid One+ Large 카메라를 사용하여 적절한 이미징 기술을 적용하는 방법을 배웁니다. 이것이 유용한 일반적인 시나리오는 비전 가이드 로봇이 팔레트에 쌓인 물체를 내리는 디팔레타이제이션(depalletization) 애플리케이션입니다. 개체는 같거나 혼합된 재고 보관 단위일 수 있으며 대부분 상자 모양입니다. 이 기사에서는 물체가 크기와 색상 모두에서 혼합되어 있고 중간 정도의 광택이 있다고 가정합니다. 다음으로 가정된 사양을 자세히 살펴보겠습니다.

표준 디팔레타이징 장면

이 기사에서 설명하는 대부분의 과정과 기술을 설명하기 위해 아래 이미지에서 볼 수 있는 장면을 참조합니다.

디팔레타이징 장면

대략 \(1200 \times 1200 \text{ mm}^2\) 의 영역에 물체각 있습니다. 광택 마감 처리된 흑백 상자, 일반 판지 상자, 플라스틱 호일로 포장된 상자, 로고가 있는 상자 및 테이프가 있는 상자 등의 혼합 상자로 구성됩니다. 이 예에서 카메라는 대략 개체의 중심과 정렬되도록 배치됩니다. 그러나 항상 Zivid 카메라를 비스듬히 기울이는 것이 좋습니다. 이는 직접 반사 및 관련 아티팩트를 방지하고 수집에 필요한 동적 범위(Dynamic Range)를 줄이는 데 도움이 됩니다. camera positioning 에 대한 일반 권장 사항을 참조하십시오.

Specification

매개변수

사양 / 요구 사항

팔레트 영역 (Field-of-View)

\(\leq 1200 \times 1200 \text{ mm}^2\)

팔레트 높이 (작업 거리 / 작업 범위)

\(\leq 2000 \text{ mm}\)

개체 볼륨

\(\geq 50 \times 50 \times 50 \text{ mm}^3\)

개체 색상

모든 색상 (흰색 및 검은색 포함)

물체 반사

약간 혹은 중간 정도의 광택(금속 또는 유리 아님)

이미징 시간 예산

\(\leq 2.5 \text{ s}\)

Camera mounting

Zivid 카메라가 고정된 위치에서 전체 작업 영역을 촬영하는 것이라고 가정합니다. \(1200 \times 1200 \text{ mm}^2\) 의 정사각형 영역을 이미지화 하려면 Zivid One+ Large 카메라를 가장 위 레이어 기준 2.75m 높이에 장착해야 합니다. 응용 프로그램에 필요한 높이를 계산할 수 있는 온라인 거리 (또는 FOV) 계산기는 다음 웹 사이트 Calculate FOV and Imaging Distance 에서 확인할 수 있습니다. 최대 적재 높이는 2미터로 설정됩니다. 따라서 이 예에서 Zivid 카메라는 4.75m(팔레트에 쌓인 물체의 총 높이)의 높이에 장착해야 합니다. 즉, 하단 레이어까지의 거리는 Zivid One+ Large 카메라의 권장 작업 범위를 벗어나는 약 4.5m입니다. 따라서 출력 포인트 클라우드의 품질이 충분한지 확인하기 위해 각별한 주의가 필요합니다.

Impact of working at large distances

Spatial resolution and depth noise

Zivid 카메라의 공간 해상도와 노이즈 레벨은 거리에 따라 증가한다는 점을 인지하는 것이 중요합니다. 가정된 예에서 팔레트 상단의 공간 해상도는 약 1mm이고 하단의 공간 해상도는 약 1.8mm입니다. 즉, 하단 레이어에서 해상도가 거의 절반이고 노이즈가 상단 레이어보다 5-8배 더 높습니다. 이로 인해 발생할 수 있는 결과 중 하나는 공간 해상도가 Zivid의 2.3MP 센서만 사용하여 빽빽하게 쌓인 물체를 구분할 수 있는 한계있을 수 있다는 것입니다. 또한 노이즈에 대해 영향을 적게 받는 포즈 추정 알고리즘이 필요할 수 있습니다.

Depth-of-focus

Zivid One+ Large 카메라의 초점은 2m입니다. 따라서 먼 거리에서 이미지를 캡처할 때의 또 다른 잠재적인 문제는 이미지가 포인트 클라우드 품질에 영향을 미칠 수 있는 초점이 맞지 않을 수 있다는 것입니다. 충분히 낮은 조리개 값을 사용하여 이미지가 수용 가능한 초점을 달성하도록 할 수 있습니다. 최대 약 4.5m 거리에서 물체를 이미징하는 우리의 예에서는 3.4보다 높은 조리개(f-number)를 사용하는 것이 좋습니다. Depth of Focus Calculator 을 사용하여 특정 어플리케이션에 권장하는 최대 f-number 값을 계산할 수 있습니다. “Acceptable Blur Radius (pixels)” 의 적절한 값은 1.5입니다.

Ambient light

우리가 논의할 마지막 항목은 더 먼 거리에서 주변광에 대한 민감도 증가입니다. 예를 들어 주변 조명에 유의하십시오. 창고 천장은 Zivid 카메라에서 투사된 빛과 혼합되는 빛을 방출합니다. Zivid 카메라가 사용하는 구조광 기술은 방출된 빛을 볼 수 있어야 하기 때문에 포인트 클라우드의 노이즈에 직접적인 영향을 받습니다. 주변광 효과에 대한 자세한 내용은 여기에서 확인할 수 있습니다. Dealing with Strong Ambient Light.

가능한 한 많은 주변광을 제거하는 것이 좋습니다. 항상 조명을 끄거나 경우에 따라 3D 센서의 작업 영역의 빛을 차단 할 가능성을 고려하십시오. 이것은 많이 논쟁의 여지가 있고 민감한 주제이지만 항상 클라이언트/고객과 주변 조명 제어 가능성에 대해 상의할 것을 강력히 권장합니다.

Adjusting the camera settings for far distance imaging

이 섹션에서는 다음을 수행합니다.

  • 서론에 설명된 사양에 맞는 카메라 설정 세트를 제시합니다.

  • 다양한 카메라 설정이 포인트 클라우드에 어떤 영향을 미치는지 살펴보십시오.

  • 우리가 한 설정을 선택하는 방법을 살펴보십시오.

  • 몇 가지 이미징 원칙과 기술을 설정합니다.

Exposure settings

아래 표는 어플리케이션의 노출 설정을 보여줍니다. 고성능 컴퓨터에서 실행할 때 어플리케이션 사양에서 설정한 타이밍 요구 사항을 충족하면서 동적 범위와 신호 대 잡음비 간에 적절한 균형을 제공합니다. 이는 실제로 카메라에서 고품질 포인트 클라우드를 얻을 가능성을 높입니다.

Acquisition #

Exposure Time

Aperture (f-number)

Brightness

Gain

Comment

1

40 000

5.66

1.8

1.0

투명/반사 테이프 및 포장과 같은 흰색/밝은 물체를 커버하기 위한 하이라이트 획득

2

40 000

4.0

1.8

2.0

대부분의 장면을 커버하기 위한 중간 톤 획득

3

40 000

2.8

1.8

4.0

원거리에서 이미징할 때 특히 어두운 물체를 커버하기 위한 저조도 획득

4

40 000

4.0

1.8

2.0

노이즈를 억제하고 포인트 클라우드 품질을 개선하기 위한 Acquisition #2의 복제

5

40 000

5.66

1.8

1.0

노이즈를 억제하고 포인트 클라우드 품질을 개선하기 위한 Acquisition #1 복제

아래에서는 이러한 설정에 도달하기 위해 적용한 기술과 원리을 살펴보겠습니다.

  • HDR - 다중 획득을 사용하여 포인트 클라우드를 캡처하면 Zivid의 HDR 알고리즘에 내재된 노이즈 억제 효과를 활용할 수 있습니다. 따라서 최적의 노이즈 성능을 달성하기 위해 주어진 시간 예산 내에서 가능한 한 많은 Acquisition을 사용하는 것이 좋습니다. 우리 어플리케이션에서는 동적 범위(Dynamic Range)를 훨씬 더 확장하는 것보다 일반적으로 중간 톤 및/또는 저조도와 같은 동일한 Acquisition을 복제하는 것이 더 좋습니다. 우리 어플리케이션의 경우 일반적으로 2-3개의 Acquisition을 사용하여 허용 가능한 동적 범위를 얻을 수 있습니다. 이러한 2-3개의 Acquisition보다 더 많은 캡처 시간을 사용할 수 있는 경우 감당할 수 있는 만큼 이러한 Acquisition을 복제하여 포인트 클라우드 품질을 더욱 개선할 것입니다.

    아래 이미지는 이 HDR 기술을 적용한 효과를 보여줍니다. 가장 왼쪽의 포인트 클라우드는 단일 획득으로 캡처됩니다. 두 번째 포인트 클라우드는 2-acquisition HDR로 캡처됩니다. 세 번째는 5개 Acquisition HDR로 캡처됩니다. 가장 오른쪽 포인트 클라우드는 8개 Acquisition HDR로 캡처됩니다.

    포인트 클라우드에 HDR 효과 표시

    이 노이즈 억제 기술을 사용하는 HDR 세트의 예(위 이미지에서 오른쪽의 포인트 클라우드)는 아래 표에 설명되어 있습니다.

    Acquisition #

    Exposure Time

    Aperture (f-number)

    Brightness

    Gain

    Stops

    1

    40 000

    5.66

    1.8

    1.0

    0 (normalized)

    2 (Acquisition #1의 사본)

    40 000

    5.66

    1.8

    1.0

    0 (normalized)

    3 (Acquisition #1의 사본)

    40 000

    5.66

    1.8

    1.0

    0 (normalized)

    4

    40 000

    4.0

    1.8

    2.0

    +2

    5 (Acquisition #4의 사본)

    40 000

    4.0

    1.8

    2.0

    +2

    6 (Acquisition #4의 사본)

    40 000

    4.0

    1.8

    2.0

    +2

    7 (Acquisition #4의 사본)

    40 000

    4.0

    1.8

    2.0

    +2

    8

    40 000

    2.8

    1.8

    4.0

    +4

  • Exposure Time - 상자 표면의 리플 패턴(물결 무늬)이 관찰되면 AC 전원을 공급받는 인공 광원에 간섭이 있는 것입니다. 이것은 근처의 광원을 끄면 확인할 수 있습니다. 그리드 주파수가 50Hz인 경우 노출 시간에 10000us의 배수를 사용하고 60Hz인 경우 8333us의 배수를 사용하면 해결할 수 있습니다.

  • Projector Brightness - 프로젝터 밝기 설정을 최대(1.8)로 높여 신호 강도를 높입니다. 이것은 SNR을 증가시켜 주변광의 부정적인 영향을 줄입니다.

  • Aperture - f-number가 감소할수록 depth of focus 가 좁아집니다. 이것은 당신이 초점의 깊이에 있는 상자를 유지하는 f-number에 대한 하한을 찾아야 한다는 것을 의미합니다. Depth of Focus Calculator 를 확인하십시오. 예를 들어, f-number가 4.27의 경우 허용 가능한 흐림 반경이 1픽셀이면 필드 깊이는 상자를 완전히 덮는 1.4~4m의 작업 거리에 걸쳐 있습니다.

    다음은 다른 조리개 설정으로 촬영한 두 이미지를 비교한 것입니다. 첫 번째 이미지는 매우 낮은 f-number로 촬영되어 흐릿합니다. 두 번째 이미지는 초점의 깊이에 상자를 유지하는 f-number로 촬영한 이미지입니다. 이미지의 초점이 흐려져 노이즈가 많을 때 왜곡(Artifacts)이 훨씬 더 두드러집니다.

    초점이 맞지 않는 디팔레타이제이션 장면 초점을 맞춘 디팔레타이제이션 장면

Filter settings

어플리케이션에 대해 다음 필터 설정을 사용합니다.

Filter

Filter value

Comment

Hole Repair

활성화됨

기본값(HoleSize=0.2Strictness=2)은 대략적인 직경 20mm @ 2750mm 및 32mm @ 4500mm로 구멍을 채웁니다.

Noise

7.0

이 값은 전체 작업 범위에서 상대 포인트 클라우드 밀도를 일관되게 유지합니다.

Outlier

75

Gaussian

2.5

이 값은 먼 거리에서 이미징할 때 노이즈를 평균화합니다.

Reflection

활성화됨

꼭 필요한 것은 아니지만 반사에 대한 예방책으로 이 어플리케이션에서 사용합니다.

캡처 시간을 절약하기 원한다면 어플리케이션에서 비활성화하는 것이 좋습니다.

아래에서는 이러한 설정에 도달하기 위해 적용한 기술과 원리을 살펴보겠습니다.

  • Gaussian Smoothing

    이 필터를 사용하여 노이즈를 억제하고 포인트를 그리드에 정렬합니다. 이 어플리케이션의 경우 개체의 픽킹/잡기 위치를 추정하기 위해 정확한 지점을 얻는 것보다 상자에서 매끄러운 표면을 얻는 것이 더 중요할 수 있습니다. 가우스 필터는 법선 계산에도 도움이 됩니다. 먼 거리에서의 이미징에는 대부분 가우시안 필터가 필요합니다.

    아래 이미지는 왼쪽에서 오른쪽으로 증가하는 세기(또는 시그마)로 가우시안 필터를 적용한 효과를 보여줍니다.

    포인트 클라우드에 대한 가우시안 필터의 효과
  • Outlier Filter

    우리는 매우 먼 거리에서 이미징하기 때문에 가능한 한 많은 포인트를 보존하기 위해 이 임계값을 높여야 합니다. 이 예에서는 75mm의 outlier 임계값을 사용합니다. 25mm에 비해 75mm outlier는 상자와 장면의 다른 부분에 더 많은 노이즈가 있음을 의미합니다. 그러나 이것은 노이즈 필터와 가우시안 필터를 사용하여 보상할 수 있습니다.

    아래 이미지는 약 4.5m의 동일한 장면에서 두 개의 다른 outlier 임계값을 사용하여 찍은 두 점 구름의 깊이 맵을 보여줍니다. 왼쪽 이미지는 25mm와 75mm 오른쪽의 outlier 임계값을 사용합니다. 특히 왼쪽 상단 상자에서 볼 수 있듯이 25mm의 outlier 임계값을 사용하면 성긴 점 구름이 생성됩니다.

    포인트 클라우드에 대한 outlier 필터의 영향
  • Noise Filter

    가능한 한 많은 포인트를 얻으려면 임계값을 낮게 설정하십시오. 이는 주변광이 포인트 클라우드의 노이즈에 미치는 영향이 이미징 거리에 따라 커지기 때문에 필요합니다. 더 낮은 SNR 값을 사용하면 특히 어둡거나 검은색 물체에서 가능한 모든 포인트를 얻을 수 있습니다. 임계값을 줄임으로써 얻은 포인트는 노이즈가 심합니다. 이는 가우스 필터를 사용하여 위에서 설명한 HDR 고유의 노이즈 감소 효과를 보완할 수 있습니다. 투명 테이프나 포장이 없는 흰색 또는 판지 상자와 같이 표면이 확산되고 밝은 물체를 이미징할 때 더 높은 SNR 값을 사용하는 것이 좋습니다(예: SNR=10). 아래의 어플리케이션에서 SNR 값 7을 사용하여 검은색 물체에 대한 더 많은 데이터를 얻을 것입니다.

    아래 이미지는 노이즈 임계값을 줄이면 더 많은 포인트가 표시되는 방법을 보여줍니다. 왼쪽에는 노이즈 임계값이 14, 중간에 10, 오른쪽에 7이 사용되었습니다. 가장 오른쪽의 포인트 클라우드는 특히 블랙박스가 있는 영역에서 확실히 더 조밀함을 알 수 있습니다.

    포인트 클라우드에 대한 노이즈 필터의 영향
  • Hole Repair Filter

    이 필터는 알고리즘에 매우 조밀한 포인트 클라우드가 필요한 경우에만 필요합니다. low-end 하드웨어에서 상당한 처리 시간이 추가된다는 점에 유의하십시오.

    In the above screenshots you can see some dark spots. These represent holes that could be filled by the Hole Repair filter.

Results

찾은 카메라 설정을 적용하면 장면의 모든 혼합 개체를 좋은 노이즈 성능으로 이미지화할 수 있습니다. 아래에서 제안된 설정 및 구성으로 근거리 및 원거리에서 찍은 두 개의 포인트 클라우드를 찾습니다.

2.75m 거리에서 촬영한 포인트 클라우드

4.5m 거리에서 촬영한 포인트 클라우드

각 acquisition 노출 설정에 따른 기여도

아래 이미지는 3가지 개별 acquisition 설정과 이러한 acquisition이 2D 이미지에 표시된 장면에 어떻게 나타나는지 보여줍니다.

다양한 acquisition의 기여도 표시

보시다시피 저조도 acquisition(가장 높은 노출 값을 가짐)은 어두운 영역을 명확하게 밝힙니다. 동시에 과포화되는 영역이 많이 있으므로 대신 중간 톤 acquisition으로 캡처해야 합니다. 중간 톤 acquisition은 우리가 관심을 갖고 있는 포인트 클라우드의 대부분을 드러내기 때문에 가장 중요한 acquisition입니다. 하이라이트 acquisition은 테이프와 같이 반사가 많은 영역의 데이터를 얻는 데 도움이 됩니다.

Other consideration

Cropping the point cloud

작업 영역 외부에 있는 처리 포인트에서 컴퓨팅 성능을 낭비하지 않으려면 포인트 클라우드를 자르는 것이 좋습니다. 자르기는 너무 가깝거나 너무 멀리 있는 자르기 지점 외에도 Zivid 카메라에 상대적인 팔레트의 위치를 대략 기반으로 할 수 있습니다. 예 팔레트의 각 레이어에 대한 깊이 허용 오차를 동적으로 변경합니다.

Robot mounting

권장 작업 범위 내에서 Zivid 카메라를 작동함으로써 Zivid 카메라는 본질적으로 더 높은 성능과 주변광 복원력을 나타냅니다. 그 결과 더 짧은 캡처 시간에 더 높은 밀도와 품질을 모두 갖춘 포인트 클라우드가 생성됩니다. 이 자료에서 우리는 포인트 클라우드를 획득하는 데 약 2.5초를 사용했지만 로봇 마운트 구성에서 비슷한 캡처는 일반적으로 0.3~1초가 소요됩니다. 이것은 고정식 및 로봇 마운팅 애플리케이션 간에 매우 유사한 디팔레타이징 애플리케이션에서 달성 가능한 듀티 사이클을 만들 것입니다. 로봇 마운팅의 또 다른 이점은 동일한 카메라가 여러 스테이션에 서비스를 제공할 수 있으므로 유연성과 촬영 범위가 증가한다는 것입니다.

Summary

이 자료에서 우리는 Zivid 카메라를 권장 작업 범위 밖에서 작동할 때 낮은 노이즈로 고밀도 포인트 클라우드를 캡처하는 한 가지 방법을 배웠습니다. 평균화 및 필터링 기술을 적용하여 동일한 장면에서 다양한 개체를 표시할 수 있었습니다. 포인트 클라우드는 최대 4.5m 거리에서도 낮은 수준의 노이즈 및 기타 왜곡(Artifacts)이 있습니다.