2012-10-07 2 views
1

this 링크를 사용하여 감지 된 손의 이미지가 있습니다. HSV 색상 공간을 사용하는 손 감지.손의 경계 영역 찾기

이제 문제가 생겼습니다 : 손으로 쥐고있는 영역을 알아낼 수 있어야합니다. 손으로 영역을 결정할만큼 경계선을 그려야하고, 그 영역을 채우고 원본에서 빼서 손을 뺄 필요가 있습니다.

나는 지금까지 과도한 것처럼 보이는 잡음을 줄이거 나 이미지를 팽창 시키거나 구멍을 막는 등 이미지를 흐리게하려고 노력했다. 나는 윤곽선을 시험해 보았다. 그리고 그것은 지금까지 최고의 접근 인 것처럼 보인다. 나는 볼록 선체 (최대)를 얻으려고 노력하고 있었고 다른 임계 값으로 테스트 한 후 다음과 같이 끝 냈습니다. 부정확성은 엄지 손가락으로 볼 수

enter image description here

선체가 곧게했다. 그것은 구부러져 야합니다. 나는 손으로 덮여있는 지역을 확인하기 위해 손의 위치를 ​​알아 내려고 노력하고있다. 그것을 빼기 위해 원래 이미지에서 손을 떼십시오. 그것이 내가 원하는 것입니다.

더 나은 방법이 있습니까?

아이디어 제안이 크게 감사드립니다. 당신이 볼록 선체가 제공하고 응용 프로그램의 배경은 적어도 동일한 색깔에있는 영역 대신 손 영역을 식별 할 가정

enter image description here

+1

그래서 볼록 선체 대신에 손 영역을 식별하고 싶습니다. 나 맞아? –

+0

나는 손의 이미지 부분을 커버 할 것이라고 말했다. –

답변

1

볼록한 선체 대신에, 알파 선체을 사용하는 것이 좋습니다.이 방법은 오목한 부분을 허용하여 모양의 윤곽을 더 잘 따를 수 있습니다.

이 사이트에는 알파 셰이프에 대한 요약이 있습니다. "알파 셰이프에 대해 항상 알고 싶었지만 물어보기가 두려웠습니다"François Bélair.

http://cgm.cs.mcgill.ca/~godfried/teaching/projects97/belair/alpha.html

다윗은 자신의 게시물에서 언급 한 바와 같이, HSV (또는 HSI)이 아니라 RGB 또는 그레이 스케일보다 색 공간을 사용하여 임계 화 고려하십시오. 더 긴 처리 시간을 허용 할 수 있다면 Mean Shift와 같은 알고리즘을 사용하여 자신과 같이 까다로운 이미지를 분할 할 수 있습니다. OpenCV에는 Mean Shift가 구현되어 있으며 책 OpenCV을 학습하면 알고리즘에 대한 간결한 설명을 제공합니다.

어떤 경우

Image Segmentation using Mean Shift explained

, 표준 이진화 임계 값은 많은 도움이 될 나타나지 않습니다. 동적 임계 값 사용을 고려하십시오. 적어도 로컬/동적 임계 값은 OpenCV에서 컨투어에 대해 구현되었습니다.

+0

나는 손을 감지하기 위해 HSV 공간을 사용하고있다. –

+0

이것은 내가 원했던 것처럼 보인다. 나는 그것도 OpenCV에 있는지 확인해야합니다 –

+0

당신은 더 집중할 수 있습니까? 확산 조명 ("흐린 날"조명)을 사용하여 그림자를 줄이거 나 각이 진 조명을 사용하여 뚜렷하고 일관된 그림자를 만들 수 있습니까? 배경색을 약간 바꿀 수 있습니까? 일부 가장자리의 명암이 어두워지기 때문입니다. 어두운 픽셀은 문제이지만 모든 어두운 픽셀은 손과 그림자와 관련이 있습니다. 히스토그램 기반 이진화를 망칠 수 있습니다. 임계 값 이상의 값을 갖는 가장 가까운 색으로 20 미만 (또는 무엇이든)의 채널 강도로 모든 픽셀을 재 매핑하는 것을 고려하십시오. 하나 또는 두 개의 HSV 채널 만 사용해보십시오. – Rethunk

1

을 다음과 같이

원본 및 감지가, 나는 HSV-적용됩니다 가능한 경우 손 대신 배경을 식별하는 임계 값. 또는 광 분포가 일정하지 않은 경우 적응 임계 값 일 수 있습니다. 나는 이것이 많은 어플리케이션들이하는 것이라고 생각한다.

배경을 고칠 수 없다면, 그림자와 손바닥 선을 돌봐야하므로 세분화가 쉽지 않다.

관련 문제