문제가
5 초마다 스냅 샷을 웹에 게시하는 카메라로 작업하고 있습니다. 카메라가 사람의 선을 감시하고 있습니다. 내 스크립트가 얼마나 오래 사람들의 라인인지 알려주고 싶습니다. 내가 처음 python 용 opencv를 사용하여 개별 프레임에서 전경 추출
을 시도했습니다 무엇
, 나는 내가
BackgroundSubtractorMOG
를 사용하여이 작업을 수행 할 수 있다고 생각하지만, 이것은 단지 검은 이미지를 생산하고있다. 여기에 비디오 캡처 대신 이미지를 사용하도록 수정이 내 코드입니다 :import numpy as np import cv2 frame = cv2.imread('sample.jpg') fgbg = cv2.BackgroundSubtractorMOG() fgmask = fgbg.apply(frame) cv2.imshow('frame', fgmask) cv2.waitKey()
다음으로,이 foreground extraction on an image 보았다, 그러나 이것은 상호 작용 및 알려 스크립트를 필요로 내 사용 사례에 적합하지 않습니다 사람들이 얼마나 길게 있는지.
- 나는 또한 peopledetect.py을 사용하려고 시도했지만 선의 이미지가 높은 위치에 있으므로이 스크립트는 사람을 감지하지 못합니다.
나는 opencv에 새로운 브랜드이므로 어떤 도움을 주셔서 감사합니다. 요청시 추가 세부 정보를 제공 할 수 있습니다.
참고 : 난 그냥 배경에서 사람들을 분리하는 방법을 알아 내려고 노력하고 있어요로
내가 너무 전반적인 문제를 해결하기 위해 사람을 찾는 게 아니에요. 그러나 더 나은 해결책이 있다고 생각하면 다른 방식으로 문제에 접근 할 수 있습니다.
편집 : 여기의 요청에 따라 샘플 이미지입니다 :
당신은 비디오에서 프레임이 어떻게 생겼는지의 샘플을 제공 할 수 있습니까? 어쩌면 사람과 배경의 대비가 너무 가파르므로 배경 빼기가 아무런 도움이되지 않을 수도 있습니다. – rayryeng
@rayryeng 확실한 점, 게시물을 편집했습니다. –
차갑습니다. 나는 이것을 가지고 놀 것이다. 그 동안이 메소드에 대한 기본 매개 변수가 있으며 이러한 기본 매개 변수를 호출하고 있습니다. 매개 변수를 가지고 놀아서 결실이 있는지 알아 보겠습니다. http://docs.opencv.org/modules/video/doc/motion_analysis_and_object_tracking.html#cv2.BackgroundSubtractorMOG – rayryeng