컨테이너의 모서리 점을 계산하는 신뢰할 수있는 방법을 찾으려고합니다. 이 코너 포인트의 아이디어는 로봇의 지역화를위한 컨테이너의 중심점을 계산하는 것입니다. 이는 계산 된 중심점이 컨테이너를 선택하기 위해 로봇의 목적지가된다는 것을 의미합니다. 이를 위해 모서리 점을 계산하기위한 제안을 찾고 있거나 중심점을 직접 계산할 수있는 가능성이있을 수 있습니다. 지금까지 PCL 라이브러리 C/C++가 3D 데이터 처리에 사용되었습니다. 아래 이미지는 컨테이너의 스크린 샷입니다.
미리 감사드립니다.3D 데이터에서 로봇의 위치 파악을위한 중심점 계산
답변
바퀴가 바닥에서 알려진 오프셋을 카트에 유지한다고 가정하면 바닥을 식별 할 수 있습니다.바닥에 너무 가까운 모든 점을 걸러 내십시오 (바퀴와 카트를 제외하고는 데이터를 제한하고 이후 단계를 단순화하는 카트를 제거합니다.)
카트를 분리하면 간단한 평균 점 , 그렇지 않으면 정확하지 않은 경우 격리 된 카트 (기본 방향에서 최소 최대 값)의 bounding box을 찾은 다음 해당 경계 상자의 중심을 가져옵니다 (더 정확해야하지만 여전히 약간의 수직 오프셋이 필요합니다)
카트를 분리 할 수 없거나 다른 방법이 잘 작동하지 않는 경우 PCL sample consensus (구체적으로 SACMODEL_LINE)을 사용해 볼 수 있습니다.이 전략은 관련 전략이지만 매우 탄탄한 결과를 제공합니다. 기본 각 라인을 찾아 실행하고 클라우드에서 멤버를 뺀 다음 최상의 라인을 찾으십시오. 4 개의 기본 카트 라인을 확보 한 후 매개 변수를 사용하여 중심을 찾으십시오. * 이것은 카트 안이나 위에있는 무작위 아이템뿐만 아니라 다양한 크기의 카트 (항상 직각 수직 벽이 있다고 가정)
좋은 제안. 감사합니다. (1) 바닥을 식별하고 (2) 바퀴를 제거하고 나중에 카트를 보관하기 위해 바닥에 너무 가까운 점을 필터링하면 (3) 경계 상자를 사용할 수 있습니다. ? –
이것들은 꽤 명확한 설명입니다 ... 실제로 구현하는 방법에 관해서는 설명하기에는 너무 많은 부분이 있습니다. 그것은 잘 클래스의 생각에 대한 튜토리얼 및 웹 문서로 문서화되어 있습니다. 시작하는 것이 좋습니다 : http://pointclouds.org/documentation/tutorials/ 처음에는 튜토리얼을 시도한 다음 필요에 맞게 수정하는 것이 좋습니다. –
실제로 나는 PCL 자습서를 조사하고 RANSAC을 평면 피팅 등에 사용했습니다. 평면 검출 및 제거가 가능한 특정 예를 언급 할 수 있습니다. 어떻게 든 휠을 필터링하지 않고 직각 프리즘을 찾는 것이 더 쉬울 것입니다 장바구니 개체의 경계 상자? –
내가했던 다음과 같은 사항 :
- , 녹색, 픽셀 = 0),
- 은 3x3 커널로 N 번 이미지를 침식하고 동일한 커널 M 배로 확장합니다.
왼쪽 : N = 2, M = 1, 오른쪽 : N = 6, M = 6
그 후 :
이 남아 윤곽이다. 하나의 샘플 이미지에만 액세스 할 수 있기 때문에, 나는 당신에게 적합한 "일반적인 솔루션"에 대해 추측하지는 않을 것입니다. 그러나이 특별한 경우를 해결하기 위해, 당신은 다음과 같은 방법으로 모든 윤곽을 분석 할 수 있습니다 :
- 컴퓨팅은 직사각형 윤곽 내부의
- 컴퓨팅 영역 (당신이 minAreaRect from OpenCV 비슷한 필요) 당신의 윤곽 주위에 가장 맞는 사각형을 rotatated
- 윤곽 영역과 회전 된 경계 사각형의 영역 사이의 차이가 작은 경우 윤곽은 대략 직사각형 모양을 갖습니다.
- 윤곽선이 직사각형이며 다른 조건을 만족합니다 (예 : 컨테이너의 일반적인 영역). 이것은 컨테이너에 속하고 그 중심을 계산한다고 가정합니다.
실용적인 시나리오에서 잘 작동 할 것이라고 나는 주장하지 않습니다. 그것은 또한 빠르지 않다. 유용한 정보를 추출하는 방법을 보여주는 "스케치"로보아야합니다.
내가 게시 한 그림은 포인트 클라우드 데이터의 스크린 샷입니다. 말 그대로 처리가이 이미지가 아니라 깊이 데이터가되어야 함을 의미합니다. 하지만 고마워요. 2D 이미지라면 좋을 것 같습니다. 그렇지 않아? –
- 1. 구형의 중심점 계산
- 2. 여러 삼각형의 중심점 계산
- 3. 3d 공간에서의 음원 위치 계산
- 4. MySQL 테이블에서 포인트 중심점 계산
- 5. 2D 그리드 (배열)로 이동하기위한 로봇의 최소 비용 계산/표시
- 6. 내 데이터에서 3D 배열 생성
- 7. 3D 체적 데이터에서 실린더 만들기
- 8. 알려진 두 위치 사이의 중심점 위치 정보 찾기
- 9. OpenCV에서 3D 그래디언트 방향 계산
- 10. 3D 좌표 계산
- 11. 3D 평면의 기울기 계산
- 12. 3d 궤적 경로 계산
- 13. 3D 지형 점 계산
- 14. 3D 접선 공간 계산
- 15. 그리드에서 로봇의 위치와 방향
- 16. 가져온 3D 모델의 위치
- 17. WPF 3D 카메라 위치
- 18. 자바 3d 객체 위치
- 19. AS3 : 3D 삼각형의 3D 중간 위치 얻기
- 20. 동적 높이의 중심점 CSS
- 21. 쿼터니온 데이터에서 기반 위치 재구성
- 22. 나무의 중심점?
- 23. matplotlib의 중심점
- 24. Matlab의 3D 데이터에서 데이터 조각 추출
- 25. 3D 데이터에서 2D ConvNets를 사용하는 방법
- 26. 3D 데이터에서 비 아핀 변환 행렬을 계산합니다.
- 27. 로봇의 코드 숨기기
- 28. 로봇의 360도 회전 플랫폼
- 29. SKScene 중심점 변경
- 30. 3D 하이트 맵의 윤곽 계산?
그 사각형의 중심을 찾으려고합니까? –
실제로 사각형의 중심을 찾는 것에 대해 생각하지 않았으므로 somhow가 문제를 해결할 수있었습니다. 그것은 나의 승인이 코너를 찾아서 오프 코스가 거의 걸음이없는 센터를 계산하는 것이라면 말입니다. 당신이 센터를 찾는 언급 더 나은 솔루션이 될 수 있습니다. 가운데 찾기 및 오프셋 추가. PCL에서 직접 계산할 수있는 가능성을 제안합니까? –
깊이 데이터가 있습니까? 나는 그 컨테이너의 내부 표면을 보지 못합니다 ... (나는 그것이 3d 데이터라는 것을 이해합니다. 그러나 센서는 카트의 앞면 만 분해 할 수 있습니까?) –