opencv의 세미 전역 블록 매칭 작업을하고 있습니다. 사실 비용 집계를 계산하기 위해 모든 방향을 탐색해야하는 이유를 이해할 수 없습니다. 누구든지이 경로의 길이를 제한하려 했습니까 (주사선)?반 글로벌 블록 매칭
1
A
답변
4
비용 집계에는 여러 방향에서 검색하여 솔루션에 대한 전역 부드러움 제한 조건을 적용해야합니다. 이러한 제약 조건이 없으면 각 픽셀의 불일치가 이웃의 추정 된 불일치를 고려하지 않고 계산되며 결과는 대개 '노이즈'를 많이 포함하므로 일치 프로세스가 많은 오탐을 반환합니다.
관찰 된 서페이스가 매우 매끄럽다 고 가정하면 픽셀에 깊이를 할당하는 데 추가 비용을 설정하여 불일치 이동을 불리하게 할 수 있습니다. 느슨하게 말하자면, 이것은 깊이를 추정하고 몇 가지 가능한 일치가있을 때 인접한 픽셀의 깊이 추정치와 긴밀하게 일치하는 일치를 선택한다는 것을 의미합니다. 더 많은 방향으로 검색하면 비용 계산에서 고려하는 이웃의 수가 증가하고 일반적으로 증가합니다.
OpenCV는이 검색 경로의 길이를 줄이는 방법을 제공하지 않지만 알고리즘을 더 빠르게 방향의 일부를 비활성화하거나 8 대신 5 개의 경로 만 검색하거나 (이는 fullDP 인수를 false로 설정하여 수행) 또는 불일치 검색 범위를 줄임으로써 방향을 비활성화 할 수 있습니다.
관련 문제
- 1. 리버스 엔지니어링 글로벌 단축키 블록
- 2. C# : 글로벌 핫키 블록 입력
- 3. Drupal 단일 페이지에서 글로벌 블록 제거
- 4. 반 고정, 반 동적 배열
- 5. 매칭
- 6. 기본 스테레오 블록 매칭 (OpenCV 제외)이 잘못된 결과
- 7. 자바 스크립트로 점 찍기 반 반
- 8. 런타임에 CSS를로드하는 것이 반 실패/반 성공입니다.
- 9. Vertices 반 시계 방향/반 시계 방향
- 10. 반 별합
- 11. 반 패턴입니까?
- 12. 반 자동
- 13. 반 전문화
- 14. 매칭 어려움
- 15. 매칭 노선
- 16. 스테레오 매칭
- 17. 유형 매칭
- 18. 정규식 매칭
- 19. 패턴 매칭
- 20. XSLT 매칭
- 21. 매칭 응답
- 22. 정규식 매칭
- 23. 매칭 7.6
- 24. 매칭 문자열
- 25. 반 임시 데이터베이스는 어디에 저장해야합니까?
- 26. 글로벌 범위 변수는 다음 코드에서 오류가 발생 실행 스크립트 블록
- 27. OpenCL : 스레드 글로벌 ID 만 신경 쓰면 이상적인 블록 수?
- 28. 글로벌 예외 처리기는 불필요한 try catch 블록 제거를 의미합니까?
- 29. OpenCV 스테레오 매칭/교정
- 30. 레이아웃 버튼을 반 색, 반 기타로 디자인하는 방법
@shumi이 기능의 출처에 대해서는 잘 모릅니다. Block Matching 루틴에 의해 내부적으로 호출됩니까? C++ 문법에 대해 혼란 스럽습니까? 그렇다면 대답은 간단합니다 :'int diff_scale = c> diff_scale);'비트 시프트 (bithift)를 사용하고 있습니다. (http://en.wikipedia.org/wiki/Bitshift#Shifts_in_C.2C_C.2B.2B.2C_C. 23). 이것은 이미지 피라미드 또는 스케일링 팩터를 만드는 데 컴퓨터 비전에서 일반적으로 발생합니다. 이는 내가 여기서 상상하는 것입니다. –
물론이게 뭔지는 알고 있습니다.)하지만 나는 누적 비용과 비트 시프트 사이의 관계를 보지 못하기 때문에 코드의이 부분에서 길을 잡지 못하는 것이 있다고 생각합니다. – shumi