def __init__(self, method, src): self.color = True self.motorsOn = False ### Sensitivity of tracker params self._sampleFreq = 0.1 #in sec ### Set Camera params #self.resolution = (640, 480 ) self.resolution = (1280, 960) source = { 0: 0, 1: 1, 2: 'led_move1.avi', 3: 'screencast.avi', 4: 'screencast 1.avi', 5: 'shortNoBox.avi', 6: 'longNoBox.avi', 7: 'H299.avi', 8: 'testRec.avi', 9: 'longDemo.avi' } self.captureSource = source[int(src)] ### Timing initialization self._startTime = time.time() self._lastCheck = self._startTime - self._sampleFreq ### Display params self.mirroredPreview = False ### Initialize Objects ##### Windows self._rawWindow = WindowManager('RawFeed', self.onKeypress) ### Capture -- resolution set here self._cap = CaptureManager(cv2.VideoCapture(self.captureSource), self._rawWindow, self.mirroredPreview, self.resolution) actualCols, actualRows = self._cap.getResolution() self.centerPt = utils.Point(actualCols / 2, actualRows / 2) ## from here on out use this resolution boundCols = 600 boundRows = 600 ### Arguments for finder # --> Pairs are always COLS, ROWS !!!!!!! self.finderArgs = { 'method': method, 'gsize': 45, 'gsig': 9, 'window': 3, 'MAXONEFRAME': 500, 'REFPING': 600000, 'MAXREF': 1000, 'captureSize': utils.Rect(actualCols, actualRows, self.centerPt), 'cropRegion': utils.Rect(100, 100, self.centerPt), 'decisionBoundary': utils.Rect(boundCols, boundRows, self.centerPt), 'color': self.color, 'motorsOn': self.motorsOn } self._wormFinder = WormFinder(**self.finderArgs) ##### Debugging # self._gaussianWindow = WindowManager('Gaussian', self.onKeypress) self._overlayWindow = WindowManager('Overlay', self.onKeypress)