증강 현실을위한 서핑 및 체계 대체 객체 추적 알고리즘
-
19-09-2019 - |
문제
물어 본 후 여기 그리고 서핑과 체계를 모두 시도해 보면 이음새는 카메라에서 스트림을 추적 할 수있을 정도로 빠르게 관심 지점을 생성 할 수있을 정도로 효율적이지 않습니다.
예를 들어 Surf는 이미지의 관심 지점을 생성하는 데 약 3 초가 걸리며 웹 캠에서 나오는 비디오를 추적하기에는 너무 느립니다. 휴대폰에서 사용하면 더 나빠질 것입니다.
특정 영역, 스케일, 기울기 등을 추적하는 알고리즘이 필요합니다.
감사
해결책
서핑 사용이 약간의 변경이 필요할 수 있습니까?
여기 링크가 있습니다 모바일 장치의 증강 현실 응용 프로그램에 SURF 사용에 대한 MIT 용지에.
발췌 :
이 섹션에서는 서핑 al-Gorithm의 구현과 휴대 전화에 대한 적응을 제시합니다. 다음으로, 우리는 정확도가 가장 가까운 이웃 검색 속도에 미치는 영향에 대해 논의하고 일치 정확도에 미치는 영향으로 크기 속도를 달성 할 수 있음을 보여줍니다. 마지막으로, 이미지 일치 파이프 라인의 전화 구현 세부 사항을 논의합니다. 우리는 전화기의 성능, 메모리 사용 및 대역폭 소비를 연구합니다.
OpenCV의 알고리즘이 시도되고 테스트 되었기 때문에 OPENCV 알고리즘을 살펴볼 수도 있습니다.
에 따라 제약 애플리케이션의 경우 이미지 내에서 알려진 POI 및 마커를 찾기 위해 이러한 알고리즘의 일반성을 줄일 수 있습니다.
부분의 추적 POI는 2D 이미지의 한 지점에서 다른 지점으로 벡터를 추정 한 다음 선택적으로 (픽셀 특성을 통해) 존재한다는 것을 선택적으로 확인합니다. 동일한 접근법을 사용하여 POI 및 POI 그룹/객체 관점 및 회전 변경에 대한 전체 이미지를 다시 스캔하지 않음 (전체 이미지를 다시 스캔하지 않음)에 사용될 수 있습니다.
2D 프로젝션에서 개체를 추적하기 위해 온라인으로 수많은 논문이 있습니다 (많은 경우 서버 스케일까지).
행운을 빕니다!
다른 팁
빠른 탐지기를 시도해야합니다
우리는 프로젝트에 Surf를 사용하고 있으며 Opensurf 원시 속도와 성능으로 OpenCV의 서핑 구현을 능가합니다. 우리는 여전히 반복성과 정확성을 테스트하지 않았지만 훨씬 빠릅니다.
업데이트 : 방금 각 프레임에서 서핑 경기 단계를 수행 할 필요가 없다는 것을 지적하고 싶었습니다. 단순히 다른 프레임을 수행하고 서핑을 실행하지 않는 프레임의 객체 위치를 보간 할 수 있습니다.
추적하려는 영역에서 더 엄격한 제한을 만들면 더 간단한 알고리즘을 사용할 수 있습니다. 분명히 아시다시피, Artoolkit은 매우 빠르지 만 매우 뚜렷한 프레임으로 검은 색과 흰색 마커 만 추적합니다.
(다소) 범용 추적기를 원한다면 PTAM을 확인할 수 있습니다. 사이트 (http://www.robots.ox.ac.uk/~gk/ptam/) 현재 다운되었지만 여기에 iPhone에서 작동하는 Snazzy 비디오가 있습니다 (http://www.youtube.com/watch?v=pbi5hwitbx4)
다른 사람들이 언급했듯이 3 초가 비정상적으로 길어 보입니다. 서핑 구현을 테스트하는 동안 마호 타스 라이브러리, 나는 상당히 큰 이미지 (예 : 1024x768)에서도 평균 0.36 초가 걸렸다는 것을 알았습니다. 그리고 그것은 Python과 C가 혼합되어 있기 때문에 다른 Pure-C 구현이 훨씬 더 빠를 것이라고 생각합니다.
각 기능 감지 알고리즘 의이 좋은 비교를 발견했습니다. http://computer-vision-talks.com/2011/01/comparison-of-the-opencvs-feature-algorithms-2/
보세요. 유용 할 수 있습니다!
그 비교에 따르면, mirror2image도 제안한 것처럼 Fast가 최선의 선택입니다. 그러나 그것은 당신이 정말로 달성하고자하는 것에 달려 있습니다.
제한된 임베디드 시스템에서 사용한 옵션 중 하나는 예를 들어 빠른 또는 shi-tomasi와 같은 간단한 관심 지점 탐지기를 사용하는 것입니다. 나는 FPGA를 목표로 삼았으므로 Shi-Tomasi를 사용했으며 큰 버퍼링이 필요없이 픽셀 속도로 쉽게 실행할 수있었습니다.
그런 다음 서핑을 사용하여 식별 된 기능 주변의 이미지 패치에 대한 설명자를 생성하고 일치 및 추적 목적으로 사용합니다.