3D 상세 매칭
응용 시나리오
이 스텝은 3D 근사 매칭 V2를 통해 출력된 초기 후보 포즈를 기반으로 하여 더 상세한 매칭을 실현해 대상 물체의 정확한 포즈를 출력합니다(픽 포인트로 사용할 수 있음).
입력 및 출력
입력
| 입력 포트 | 데이터 타입 | 설명 |
|---|---|---|
법선이 있는 포인트 클라우드 |
PointCloud/XYZNormal[] |
이 포트에 입력된 포인트 클라우드 리스트는 매칭에 사용됩니다(일반적으로 "3D 근사 매칭 V2" 스텝과 동일한 포인트 클라우드를 사용합니다). |
초기 후보 포즈 |
Pose[][] |
후보 포즈 리스트(일반적으로 "3D 근사 매칭 V2" 스텝에서 출력되는 대략적인 포즈입니다). |
대상 물체의 레이블 |
String[] |
이 포트에 대상 물체의 레이블을 입력합니다(선택 사항). |
대상 물체의 믿음도 |
Number[] |
이 포트에 대상 물체의 믿음도를 입력합니다(선택 사항). |
출력
| 출력 포트 | 데이터 타입 | 설명 |
|---|---|---|
대상 물체 중심점 |
Pose[] |
대상 물체 중심점 리스트. |
물체 포인트 클라우드 |
PointCloud/XYZNormal[] |
매칭 결과에 따라 생성된 모델 포인트 클라우드 리스트. |
모델 변환 |
Pose[] |
포인트 클라우드 모델이 시나리오에서 대상 물체 포인트 클라우드로 변환될 때 변환 행렬의 리스트입니다. |
대상 물체의 레이블 |
String[] |
매칭 결과에 해당하는 대상 물체의 레이블을 출력합니다. |
대상 물체의 믿음도 |
Number[] |
매칭 결과에 해당하는 대상 물체의 믿음도를 출력합니다. |
포즈 믿음도 |
Number[] |
물체 포즈에 해당하는 믿음도 리스트입니다. |
파라미터 설명
| 파라미터 | 설명 |
|---|---|
파라미터 조정 레벨 |
파라미터 설명: 이 파라미터는 스텝의 파라미터 조정 레벨을 선택하는 데 사용됩니다. 값 리스트: Basic(기초), Advanced(고급). 기본값: Basic |
Basic 파라미터 조절
이 부분에서는 기초 파라미터 디버깅(Basic) 모드에서 조절할 수 있는 파라미터를 소개합니다. 이 파라미터는 고급 파라미터 조절 모드에서도 디버깅할 수 있습니다.
매칭 모드 설정
| 파라미터 | 설명 | ||
|---|---|---|---|
매칭 모드 |
파라미터 설명: 이 파라미터는 면 매칭 또는 엣지 매칭을 선택하는 데 사용됩니다. 값 리스트: 면 매칭, 엣지 매칭. 기본값: 면 매칭. 조절 설명: 대상 물체의 표면 굴곡 특징이 많은 경우(예: 크랭크 축, 로터, 철근 등) 면 매칭을 사용하는 것을 권장합니다. 물체의 표면 굴곡 특징을 반영한 포인트 클라우드 모델이 필요합니다. 대상 물체가 비교적 평평하고 카메라 아래에서 명확하고 고정된 에지 특징이 나타나는 경우(예: 패널, 트랙 플레이트, 커넥팅 로드, 브레이크 디스크 등) 엣지 매칭을 사용하는 것을 권장합니다. 물체의 에지 특징을 반영한 포인트 클라우드 모델이 필요합니다.
|
매칭 방법
| 파라미터 | 설명 | 그림 |
|---|---|---|
매칭 방법 |
파라미터 설명: 이 파라미터는 3D 상세 매칭 방법을 선택하는 데 사용됩니다. 기본값: GMM 값 리스트: GMM, nearest-neighbor 조절 설명: 이 파라미터는 일부 구역의 매칭 방법을 선택하는 데 사용됩니다. 모델 포인트 클라우드와 시나리오 포인트 클라우드를 매칭 시키면 모델 포인트 클라우드는 설정한 범위에 따라 이동과 회전을 진행하여 이전 스텝에서 얻은 시나리오 중의 포인트 클라우드와 매칭을 진행합니다. 조절 예시: 대부분의 시나리오에서 GMM은 간섭을 더 효과적으로 방지할 수 있고 매칭 속도가 더 빠르므로 이 모드를 사용하는 것을 추천합니다. 드문 경우지만(GMM이 요구 사항을 충족할 수 없는 경우) 가장 가까운 포인트(nearest-neighbor) 모드를 사용할 수 있습니다. |
|
GMM 모드 파라미터 설정
| 파라미터 | 설명 | 그림 | ||
|---|---|---|---|---|
매칭 모드 |
기본값: Standard 값 리스트: HighSpeed, Standard, HighPrecision
|
|||
반복 횟수 |
기본값: 30 조절 설명: 반복은 조건이 충족될 때까지 특정 명령을 반복하는 프로세스입니다. 반복 횟수는 이 과정에서 명령어가 반복되는 횟수를 말하며, 여기서 설정한 파라미터는 반복 횟수의 상한선입니다. 이 파라미터의 값이 클수록 매칭하는 계산 횟수가 많아지고 실행 시간이 길어지지만 해당 매칭 정확도가 향상됩니다. |
|||
표준 편차 |
기본값: 3.000 mm 조절 설명: 이 파라미터의 값은 초기 포즈의 편차와 일치해야 합니다. 이전 스텝(3D 근사 매칭 V2)에서 처리한 후의 초기 포즈의 편차가 클 때, 즉 시나리오 포인트 클라우드와 모델 포인트 클라우드 간의 편차가 클수록 표준 편차 값을 더 크게 설정해야 합니다. 이에 따라 실행 속도가 더 빨라집니다. 조절 예시: 설정한 값이 초기 포즈의 편차보다 크면 출력 결과에 큰 오차가 발생합니다. 다음 그림과 같이 오른쪽 그림의 표준 편차 값은 0.04m이고 초기 포즈의 편차보다 훨씬 큽니다. 따라서 이(오른쪽 이미지)를 기본값(왼쪽 이미지)과 비교하면 출력 결과의 정확도가 크게 떨어진 것을 알 수 있습니다. 일반적으로 이 파라미터 설정 값은 0.01m를 초과하지 않습니다.
|
|
||
표준 편차 감쇠 업데이트 횟수 |
기본값: 3 조절 설명: 매칭하는 과정에서 표준 편차가 최소 표준 편차에 의해 설정된 값이 될 때까지 점점 작아집니다. 이 프로세스에서 표준 편차 감쇠의 횟수는 파라미터의 값입니다. 일부 표준 오차의 경우 감쇠 횟수가 많을수록 전체 감쇠 프로세스가 더욱 안정적입니다. 일반적으로 이 파라미터를 조정할 필요는 없습니다. |
|||
대량의 물체에 대한 속도 향상 |
기본값: 선택하지 않음. 조절 설명: 물체의 수량이 매우 많은 경우 이 옵션을 선택하는 것을 권장합니다. 이 옵션을 선택한 후 수량이 많은 물체와 매칭할 때 속도가 더 빨라지지만 수량이 적은 물체와 매칭할 때 속도가 더 느려집니다. |
nearest-neighbour 모드의 파라미터 설정
반복 설정
| 파라미터 | 설명 |
|---|---|
가장 가까운 포인트 검색 반경 |
기본값: 10.000 mm 유효 범위: [0.0010,+∞) 조절 설명: 이 파라미터는 가장 가까운 포인트의 검색 반경을 조절하는 데 사용됩니다. 단위는 밀리미터(mm)입니다. 값의 설정은 입력한 초기 포즈 편차에 해당해야 합니다. 입력한 초기 포즈 편차가 매우 큰 경우, 즉 시나리오 포인트 클라우드와 모델 포인트 클라우드의 편차가 매우 클 때 검색 반경 범위를 늘리려면 이 파라미터의 값을 높여야 합니다. 이렇게 해야 각 포인트가 모든 인접 포인트를 찾을 수 있도록 보장할 수 있습니다. 초기 포즈의 편차가 매우 작으면 이 파라미터를 작게 조절할 수 있습니다. 이 파라미터의 설정 가능한 최소값은 0.001입니다. 이 하한보다 작은 경우 분포가 상대적으로 희박한 일부 포인트는 가장 가까운 포인트를 찾지 못하여 출력 결과에 영향을 미칩니다. |
평균 제곱 오차 역치 |
기본값: 0.001 조절 설명: 이 파라미터는 제곱 오차 평균의 크기를 조정하는 데 사용됩니다. 매번 반복 후, 값은 후속 반복 단계에서 비교를 위해 기록됩니다. 특정 반복 제곱 오차의 평균값이 설정값보다 낮으면 반복 효과가 요구 사항에 충족한 것으로 간주되어 반복을 종료합니다. |
원도우 사이즈 |
기본값: 10 유효 범위: [3,+∞) 조절 설명: 이 파라미터는 반복 최적화 과정에서 오차 파동이 작은 연속 반복 횟수를 표시합니다. 이 파라미터가 지나치게 작으면 국부 최적해가 발생할 수 있으며, 이는 최종 매칭 정확도에 영향을 미칩니다. 예를 들어 창구는 3번의 연속적인 반복 결과의 오차만 포함하고 있어 이 3번의 오차를 비교해 오차 변화 추이를 얻을 수 있어 전부 최적해(반복 횟수의 권장값에 따라, 전부 반복은 30회가 포함되며 향후에 더 명백한 오차 감소가 발생할 수 있음)가 아닌 국부 최적해(2차 반복은 1차, 3차 반복보다 오차가 적음)를 얻을 수 있습니다. |
해당 포인트 표시 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면, 매번 반복 중 해당하는 포인트를 표시합니다. |
복잡한 물체인지 판단하기 |
기본값: 선택하지 않음. 조절 설명: 대상물이 복잡한 형상의 물체(단순한 기하학적 형상이 아닌 것)일 경우, 반복된 점쌍의 가중치를 자동으로 계산하기 기능을 사용해야 하면 이 파라미터를 선택해야 합니다. |
반복된 점쌍의 가중치를 자동으로 계산하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 반복 포인트 가중치를 자동으로 계산하는 기능이 사용되며, 매칭 결과가 좋지 않은 대상에게는 이 기능이 권장됩니다. |
점쌍 제거 설정
| 파라미터 | 설명 |
|---|---|
문제가 있는 점쌍을 제거하기 |
기본값: 선택하지 않음. 조절 설명: 가장 가까운 포인트의 검색 과정에서 여러 점쌍이 나타나므로 이 기능을 사용해 점쌍 필터링에 사용할 수 있습니다. 이 파라미터를 선택하면 이 기능이 사용되며 점쌍 제거에 사용되는 sigma 배수의 역치 및 점쌍의 각도 차이 역치 파라미터를 통해 문제가 있는 점쌍을 제거하고 선택하지 않으면 이 두 파라미터는 적용되지 않습니다. |
점쌍 제거에 사용되는 sigma 배수의 역치 |
기본값: 1.0000 조절 설명: sigma 배수 역치는 점쌍 간의 거리 평방 편차 배수의 값을 나타내며, 이 파라미터는 점쌍 간의 거리에 따라 필터링됩니다. 만약 두 점 사이의 거리가 이 범위를 초과하면 점쌍이 제거됩니다. |
점쌍의 각도 차이 역치 |
기본값: 45° 조절 설명: 점쌍의 법선 방향 간의 각도차가 이 값보다 크면 점쌍이 제거됩니다. |
반복에서 가중치를 사용하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 모델의 가중치는 알고리즘의 반복에 사용되기 때문에 가중치 모델을 더 잘 매칭할 가능성이 높습니다. |
반복된 점쌍을 제거하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 중복 점쌍을 제거하는 기능을 사용하며 반복된 점쌍을 제거하는 유형 파라미터가 적용됩니다. 모델 포인트 클라우드의 포인트 수가 시나리오의 단일 물체의 포인트 수보다 많을 때 사용하는 것이 좋습니다. |
반복된 점쌍을 제거하는 유형 |
기본값: MinDis 값 리스트: MinDis,GlobalMin 조절 설명: 이 파라미터는 점쌍에서 중복을 삭제하는 해당 방법을 선택하는 데 사용되며 총 두 가지 방법을 포함합니다.
|
샘플링 설정
| 파라미터 | 설명 | 그림 |
|---|---|---|
샘플링 간격 |
기본값: 5.000 mm 조절 설명: 모델 및 시나리오 포인트 클라우드를 다운 샘플링하는 데 사용되는 샘플링 간격입니다. 단위는 밀리미터(mm)입니다. 값이 클수록 샘플링되는 포인트 클라우드의 수가 적어지고 모델 추정의 정확도가 낮아집니다. 조절 예시: 다음 두 그림은 이 파라미터가 각각 0.005(왼쪽 그림)과 0.025(오른쪽 그림)일 때 얻은 포인트 클라우드 결과이고, 흰색은 입력한 시나리오 포인트 클라우드입니다. 두 그림을 비교하면 샘플링 간격이 작을수록 출력 결과가 더 정확하다는 것을 알 수 있습니다. |
|
결과 검증 설정
| 파라미터 | 설명 | 그림 | ||
|---|---|---|---|---|
믿음도 역치 |
기본값: 0.5 유효범위: [0,+∞) 조절 설명: 결과의 검증 점수가 이 파라미터보다 크면 결과가 유효한 것으로 간주되어 출력으로 유지됩니다. 역치가 높을수록 유효한 매칭이 적어지지만 출력한 결과의 정확도는 높아집니다. 역치가 낮을수록 유효한 매칭이 많아지지만 출력한 결과의 정확도는 낮아집니다. 조절 예시: 다음의 그림에서 a의 믿음도 역치는 0.500이고 b의 값은 0.92입니다. 아래 그림에서 b의 포인트 클라우드 매칭 결과는 a보다 확실히 더 정확하므로 믿음도 역치의 값이 클수록 매칭 정확도가 높은 결과가 유지되는 경향이 있음을 알 수 있습니다.
|
|
||
결과 검증 검색 반경 |
파라미터 설명: 시나리오 포인트 클라우드와 모델 포인트 클라우드 사이의 거리가 이 값보다 작으면 시나리오 포인트 클라우드와 모델 포인트 클라우드가 겹치는 것으로 간주됩니다. 겹치는 포인트가 많을수록 매칭 결과에 대한 검증 점수가 높아집니다. 기본값: 10.000 mm 조절 설명: 이 파라미터의 값은 매칭 점수에 영향을 미칩니다. 이 값이 클수록 매칭 결과에 대한 평가 기준이 그리 엄격하지 않습니다. 즉 매칭의 결과가 좋지 않더라도 높은 점수를 얻을 수 있다는 것입니다. 반면에 이 값이 작을수록 매칭 결과에 대한 기준이 엄격해집니다. 물체의 포인트 클라우드에 맞춰 설정해야 하며, 포인트 클라우드가 희박한 경우에는 이 파라미터를 조금 더 크게 설정해야 합니다.
|
Advanced 파라미터 조정
이 부분은 고급 파라미터 디버깅(Advanced)에 추가된 조절 가능한 파라미터만을 소개하며, 기초 파라미터 디버깅(Basic)에 있는 것과 동일한 파라미터가 있다면 Basic을 참고하십시오.
대칭성 설정
인식할 대상 물체이 국소 대칭성을 갖는 경우 매칭 결과가 국소 최적 상태로 되는 것을 방지하기 위해 대칭성 설정을 추가해야 합니다. 대상 물체 중심점의 특정 축을 회전축으로 지정하여 모델은 설정된 축을 중심으로 대칭 시도를 수행한 후 매칭이 가장 적합한 결과를 선택합니다.
| 파라미터 | 설명 |
|---|---|
대칭축 |
기본값: ROTATE_BY_Z 값 리스트: ROTATE_BY_X, ROTATE_BY_Y, ROTATE_BY_Z 조절 설명: 이 파라미터는 기하학적 중심점의 회전축을 선택하는 데 사용됩니다. |
각도 스텝 |
기본값: 360° 조절 설명: 이 파라미터는 대칭 각도의 크기를 조정하는데 사용됩니다. 조절 예시: 물체가 대칭 축을 중심으로 60° 회전하기 전과 후에 동일하게 보이는 경우 대칭 각도 간격은 60° 입니다. |
최소 회전 각도 |
기본값: -180° 조절 설명: 이 파라미터는 최소 회전 각도를 조정하는 데 사용됩니다. |
최대 회전 각도 |
기본값: 180° 조절 설명: 이 파라미터는 최대 회전 각도를 조정하는 데 사용됩니다. |
조절 예시
아래 그림에 표시된 크랭크 축 대상 물체의 경우 주요 부품, 즉 상자 내부 부품은 Y축을 따라 180° 대칭입니다.
대칭성 파라미터가 설정되지 않은 경우 유사한 국부적 모양으로 인해 다음 그림과 같이 매칭 결과가 국부적으로 최적이 되고 매칭 오류가 발생할 수 있습니다.
오류 결과를 분석하자면 모델은 크랭크 축의 중간 부분만 매칭됐으며, 만약 매칭 과정에서 모델이 180° 회전한 후의 매칭 시도를 추가하면 전체 크랭크 축과 매칭하게 되며 그 매칭 점수는 반드시 회전하기 전의 매칭 점수보다 높아야 합니다. 그러면 올바른 결과를 얻을 수 있습니다.
대칭성 회전축을 ROTATE_BY_Y(대상 물체 중심점의 Y축)로 설정하고 대칭 각도 간격을 180°로 설정하면 다음 그림과 같이 올바른 매칭 결과를 얻을 수 있습니다.
포즈 필터링 설정
| 파라미터 | 설명 |
|---|---|
모델 회전 각도에 따라 포즈 필터링 |
파라미터 설명: 엣지 매칭 모드에서 모델 포인트 클라우드가 시나리오 포인트 클라우드와 매칭할 때 모델 회전 각도에 따라 포즈가 필터링됩니다. 모델 회전 각도가 "각도 차이 상한 역치"를 초과하면 포즈가 필터링됩니다. 기본값: 닫기. |
각도 차이 상한 역치 |
파라미터 설명: "모델 회전 각도에 따라 포즈 필터링"의 파라미터 설명을 참조하십시오. 기본값: 135.000° |
검증 시 모델의 가중치
인식할 목표물의 "주체"가 비슷하고 "국소"의 차이만 클 경우, 모델 "국소"의 가중치를 높여 "국소"가 매칭하는 정확한 결과를 출력해야 합니다.
| 파라미터 | 설명 |
|---|---|
가중치가 큰 모델 조각의 파일 |
조절 설명: 이 파일(ply 형식)은 원본 포인트 클라우드 모델 파일의 일부 포인트 클라우드이며 이 부분의 포인트 클라우드는 비교적 높은 가중치가 있어 가중치 파라미터에 의해 설정됩니다. 실제 작업물에 따라 어느 부분을 선택하여 가중치 모델로 할 것인지 확인해야 합니다. |
가중치 |
기본값: 2.0 조절 설명: 이 파라미터는 포인트 클라우드의 가중치를 설정하는 데 사용됩니다. 모든 초기 포인트 클라우드의 가중치를 1로 가정하고 목표 포인트 클라우드에 이 파라미터를 설정하면 목표 포인트 클라우드 가중치는 1 X 해당 파라미터가 되어 후속 매칭 스텝에서 강조하는 목적을 달성합니다. |
가중치 설정 시의 검색 반경 |
기본값: 3.000 mm 조절 설명: 이 파라미터는 포인트 클라우드의 가중치를 높이는 과정에서 검색 반경을 설정하는 데 사용하며 단위는 밀리미터(mm)입니다. 가중치 설정은 원본 모델 포인트 클라우드에 대해 수행되는 작업으로, 모델 포인트 클라우드는 매칭 프로세스에 사용되기 전에 다운 샘플링되어 가중치를 설정해야 하는 일부 포인트가 이동되거나 누락됩니다. 누락된 포인트 근처의 포인트 가중치를 설정하는 과정에서 검색 반경을 설정해야 하며, 검색 반경은 이 파라미터에 의해 설정됩니다. |
검증 설정
| 파라미터 | 설명 |
|---|---|
법선 벡터의 각도 편차 고려 |
파라미터 설명: 매칭 결과를 검증할 때 시나리오 포인트 클라우드와 모델 포인트 클라우드의 대응점 간의 법선 벡터의 각도 차이를 고려합니다. 이 파라미터를 선택하면 출력되는 매칭 결과의 수는 줄어들지만 매칭 결과의 정확도는 향상됩니다. 기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 포즈를 검증하는 과정에서 대응점에 대응하는 법선 방향 벡터의 각도 차이를 고려해 출력은 줄지만 더욱 정확해지는 경우가 많습니다. |
시나리오 포인트에서 해당 포인트의 비례로 점수를 곱하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 매칭 점수에 [해당 포인트와 시나리오 포인트의 비례 계수]가 곱해집니다. 하나의 포인트 클라우드에서 여러 물체의 포즈를 추정하는 데 적용 불가합니다. |
결과 시각화
| 파라미터 | 설명 |
|---|---|
샘플링된 포인트 클라우드 모델을 표시하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 출력된 결과에서 샘플링된 모델의 포인트 클라우드가 나타나며 실제 시나리오의 필요에 따라 설정됩니다. |
샘플링된 시나리오 포인트 클라우드를 표시하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 출력된 결과에서 샘플링된 시나리오의 포인트 클라우드가 나타나며 실제 시나리오의 필요에 따라 설정됩니다. |
모델과 시나리오 포인트 클라우드의 대응 관계를 표시하기 |
기본값: 선택하지 않음. 조절 설명: 이 파라미터를 선택하면 출력된 결과 중 모델과 시나리오 포인트 클라우드의 대응 관계가 표시되며 실제 시나리오의 필요에 따라 설정됩니다. |




