def draw(self, image): MotionTrackedBodypartPolar.draw(self, image) if (self.params['gui'][self.name]['track']): # Draw the bodypart state position. angle = self.state.angles[0] * self.sense pt = self.R.dot([ self.state.radii[0] * np.cos(angle), self.state.radii[0] * np.sin(angle) ]) ptState_i = imageprocessing.clip_pt( (int(pt[0] + self.params['gui'][self.name]['hinge']['x']), int(pt[1] + self.params['gui'][self.name]['hinge']['y'])), image.shape) cv2.ellipse(image, ptState_i, (2, 2), 0, 0, 360, self.bgra_state, 1) # Set a pixel at the min/max state positions. try: angle = self.stateLo_p.angles[0] * self.sense pt = self.R.dot([ self.state.radii[0] * np.cos(angle), self.state.radii[0] * np.sin(angle) ]) ptStateLo_i = imageprocessing.clip_pt( (int(pt[0] + self.params['gui'][self.name]['hinge']['x']), int(pt[1] + self.params['gui'][self.name]['hinge']['y'])), image.shape) angle = self.stateHi_p.angles[0] * self.sense pt = self.R.dot([ self.state.radii[0] * np.cos(angle), self.state.radii[0] * np.sin(angle) ]) ptStateHi_i = imageprocessing.clip_pt( (int(pt[0] + self.params['gui'][self.name]['hinge']['x']), int(pt[1] + self.params['gui'][self.name]['hinge']['y'])), image.shape) # Set the pixels. image[ptStateLo_i[1]][ptStateLo_i[0]] = np.array( [255, 255, 255]) - image[ptStateLo_i[1]][ptStateLo_i[0]] image[ptStateHi_i[1]][ptStateHi_i[0]] = np.array( [255, 255, 255]) - image[ptStateHi_i[1]][ptStateHi_i[0]] except ValueError: pass # Draw line from hinge to state point. ptHinge_i = imageprocessing.clip_pt( (int(self.ptHinge_i[0]), int(self.ptHinge_i[1])), image.shape) cv2.line(image, ptHinge_i, ptState_i, self.bgra_state, 1) self.windowStabilized.show() self.windowComparison.show()
def draw(self, image): MotionTrackedBodypartPolar.draw(self, image) if (self.params['gui'][self.name]['track']): # Draw the bodypart state position. angle = self.state.angles[0] * self.sense pt = self.R.dot([self.state.radii[0]*np.cos(angle), self.state.radii[0]*np.sin(angle)]) ptState_i = imageprocessing.clip_pt((int(pt[0]+self.params['gui'][self.name]['hinge']['x']), int(pt[1]+self.params['gui'][self.name]['hinge']['y'])), image.shape) cv2.ellipse(image, ptState_i, (2,2), 0, 0, 360, self.bgra_state, 1) # Set a pixel at the min/max state positions. try: angle = self.stateLo_p.angles[0] * self.sense pt = self.R.dot([self.state.radii[0]*np.cos(angle), self.state.radii[0]*np.sin(angle)]) ptStateLo_i = imageprocessing.clip_pt((int(pt[0]+self.params['gui'][self.name]['hinge']['x']), int(pt[1]+self.params['gui'][self.name]['hinge']['y'])), image.shape) angle = self.stateHi_p.angles[0] * self.sense pt = self.R.dot([self.state.radii[0]*np.cos(angle), self.state.radii[0]*np.sin(angle)]) ptStateHi_i = imageprocessing.clip_pt((int(pt[0]+self.params['gui'][self.name]['hinge']['x']), int(pt[1]+self.params['gui'][self.name]['hinge']['y'])), image.shape) # Set the pixels. image[ptStateLo_i[1]][ptStateLo_i[0]] = np.array([255,255,255]) - image[ptStateLo_i[1]][ptStateLo_i[0]] image[ptStateHi_i[1]][ptStateHi_i[0]] = np.array([255,255,255]) - image[ptStateHi_i[1]][ptStateHi_i[0]] except ValueError: pass # Draw line from hinge to state point. ptHinge_i = imageprocessing.clip_pt((int(self.ptHinge_i[0]), int(self.ptHinge_i[1])), image.shape) cv2.line(image, ptHinge_i, ptState_i, self.bgra_state, 1) self.windowStabilized.show() self.windowComparison.show()
def draw(self, image): MotionTrackedBodypartPolar.draw(self, image) if (self.params['gui'][self.name]['track']) and (len(self.state.angles)>0): # Draw the bodypart state position. angle = self.state.angles[0] * self.sense pt = self.R.dot([self.state.radii[0]*np.cos(angle), self.state.radii[0]*np.sin(angle)]) ptState_i = imageprocessing.clip_pt((int(pt[0]+self.params['gui'][self.name]['hinge']['x']), int(pt[1]+self.params['gui'][self.name]['hinge']['y'])), image.shape) cv2.ellipse(image, ptState_i, (2,2), 0, 0, 360, self.bgra_state, 1) # Draw line from hinge to state point. ptHinge_i = imageprocessing.clip_pt((int(self.ptHinge_i[0]), int(self.ptHinge_i[1])), image.shape) cv2.line(image, ptHinge_i, ptState_i, self.bgra_state, 1) self.windowTip.show()