0

카메라에서 가져온 일련의 이미지가 있습니다. 이미지는 손과 주변으로 구성됩니다. 손을 제외한 모든 것을 제거해야합니다.이미지 처리 및 뒤쪽 빼기

이미지 처리를 처음 사용합니다. 누가 위의 질문에 관해서 나를 도울 것입니다. 나는 C와 Matlab을 사용하는 것이 편안하다.

답변

4

정지 된 배경과 움직이는 손 (그리고 꽤 많은 이미지!)이 있다면 정말 간단합니다. 각 이미지에서 평균 이미지 집합을 제거하는 것입니다. 그 밖의 것이 없다면 Matlab에 대한 부드러운 소개입니다.

+1

+1 간단한 접근 방식. 때로는 이미지의 "가장 일반적인 픽셀 값"이 똑같이 간단하고 더 잘 작동합니다. –

3

해결하려는 문제의 이름은 "이미지 분할"입니다. 위키 피 디아 페이지는 여기 : wiki이 좋은 시작입니다.

조명의 일관성이 문제가되지 않는다면 간단한 RGB 임계 값부터 시작하여 더 복잡한 작업을 시도하기 전에 얼마나 멀리 떨어져 있는지 확인할 것을 제안합니다.

0

컴퓨터 비전 응용 프로그램 용 FOSS 라이브러리 OpenCV을 살펴보십시오. 특히 Video Surveillance 모듈을 참조하십시오. MATLAB에서 백그라운드 뺄셈에 대한 자세한 내용은 EETimes article을 참조하십시오.

0

보유하고있는 이미지의 종류를 지정할 수 있습니까? 배경이 움직이거나 정적입니까? 정적 배경의 경우 약간 간단합니다. 배경 이미지에서 들어오는 이미지를 빼기 만하면됩니다. 좀 더보기 좋게하기 위해 몇 가지 형태 작업을 사용할 수 있습니다. 그들은 모두 당신이 가지고있는 이미지의 질에 달려 있습니다. 당신이 움직이는 배경이 있다면 나는 당신이 컬러 기반의 세분화를 제안 할 것입니다. 이미지를 YCbCr로 변환 한 다음 적절히 임계 값으로 변환합니다. 나는 그것에 사용할 수있는 몇 가지 서류가 있다는 것을 알고있다 (그러나 나는 그들을 찾을 시간이 없다). 먼저 읽는 것이 좋습니다. 여기에 도움이 될 링크가 하나 있습니다. 피부 세분화 부분을 읽습니다.

http://www.stanford.edu/class/ee368/Project_03/Project/reports/ee368group08.pdf

0

배경 차감은 (그리고, 모든 프레임의 평균으로서 추정 배경 절대 차를 생성 배경 및 임계 값에서 각 프레임을 감산)를 구현하기 간단하지만 불행히도 만 1 카메라는 수동 게인과 노출을 갖는 경우에 잘 작동 2. 조명 조건이 바뀌지 않습니다. 3. 배경이 고정되어 있습니다. 4. 배경이 전경보다 훨씬 오래 표시됩니다.

귀하의 설명에 따르면 이러한 경우는 아니라고 가정하므로 이미 지적한 바와 같이 배경에서 전경을 구분하는 수단으로 색상을 사용할 수 있습니다. 손으로 당신이 최선의 내기를 분리하려고하는 것은 손 색깔을 배우는 것입니다. opencv는이를 수행 할 수있는 방법을 제공합니다. 이 작업을 직접 수행하려면 손 픽셀의 색상을 가져와 (적어도 하나의 프레임에 대해이 값을 수동으로 지정해야 함) HUE로 변환해야합니다 (색상은 밝기에 독립적으로 캡슐화됩니다). 매우 일정한 색조를 가짐) HUE 히스토그램을 만듭니다. 이를 픽셀의 나머지 부분과 비교 한 다음 색조가 충분히 유사하는지 결정하십시오.