def onrect(self, rect): #print "onrect enterd:",rect self.lk_ready = True frame_gray = cv2.cvtColor(self.frame, cv2.COLOR_BGR2GRAY) frame_gray = cv2.equalizeHist(frame_gray) self.old_gray = frame_gray.copy() self.patch = self.old_gray[rect[1]:rect[3],rect[0]:rect[2]] self.w = rect[2]-rect[0] self.h = rect[3]-rect[1] #cv2.imshow('patch',self.patch) #cv2.waitKey(10) mask = cv2.createHanningWindow((self.w,self.h),cv2.CV_32F) self.patch = np.uint8(self.patch*mask) self.p0 = getUniformPoints(self.old_gray,rect[:2],rect[2:],100) # self.p0 = cv2.goodFeaturesToTrack(self.patch, mask = None, **feature_params) if len(self.p0)==0: self.lk_ready = False print "len p0:",len(self.p0) ## else: ## for i in xrange(len(self.p0)): ## self.p0[i][0][0] = self.p0[i][0][0] + rect[0] ## self.p0[i][0][1] = self.p0[i][0][1] + rect[1] tracker = MOSSE(frame_gray, rect) self.trackers.append(tracker)
# Parameters for lucas kanade optical flow lk_params = dict(winSize=(15, 15), maxLevel=2, criteria=(cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 0.03)) # Create some random colors color = np.random.randint(0, 255, (100, 3)) # Take first frame and find corners in it ret, old_frame = cap.read() old_gray = cv2.cvtColor(old_frame, cv2.COLOR_BGR2GRAY) old_gray = cv2.equalizeHist(old_gray) p0 = getUniformPoints(old_gray, (303, 203), (449, 363), 500) #p0 = cv2.goodFeaturesToTrack(old_gray, mask = None, **feature_params) #p0 = old_gray() # Create a mask image for drawing purposes mask = np.zeros_like(old_frame) frame_idx = 0 detect_interval = 2 while (1): ret, frame = cap.read() frame_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) frame_gray = cv2.equalizeHist(frame_gray) #print "len p0:",len(p0) if p0 is None:
# Parameters for lucas kanade optical flow lk_params = dict( winSize = (15,15), maxLevel = 2, criteria = (cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 0.03)) # Create some random colors color = np.random.randint(0,255,(100,3)) # Take first frame and find corners in it ret, old_frame = cap.read() old_gray = cv2.cvtColor(old_frame, cv2.COLOR_BGR2GRAY) old_gray = cv2.equalizeHist(old_gray) p0=getUniformPoints(old_gray,(303,203),(449,363),500) #p0 = cv2.goodFeaturesToTrack(old_gray, mask = None, **feature_params) #p0 = old_gray() # Create a mask image for drawing purposes mask = np.zeros_like(old_frame) frame_idx = 0 detect_interval = 2 while(1): ret,frame = cap.read() frame_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) frame_gray = cv2.equalizeHist(frame_gray) #print "len p0:",len(p0) if p0 is None: