def main(): cap0 = cv2.VideoCapture(config['video0']) cap1 = cv2.VideoCapture(config['video1']) Blocks.config(AreaTopBound={'interface': False}, AreaBottomBound={'interface': False}, B2x1={'interface': False}, B2x2={'interface': False}, B2x4={'interface': False}, time={'interface': True}, blocchi={'interface': True}, task={'interface': True}, testGraph={'interface': True}, procedureToggle={'interface': False}) newWindow = intWr.interface() newWindow.config( obj=Blocks, pipelines=['TopCamera', 'eyetrack'], media=[cap0, cap1], timestamps=[config['timestamps0'], config['timestamps1']], startStamps=[config['startStamp0'], config['startStamp1']], stopStamps=[False, config['stopStamp1']]) newWindow.initialise() newWindow.create()
def configurationTopCamera(): cap = cv2.VideoCapture(config['video0']) ##### 1 CONFIG TRIM ################# # newWindow = intWr.interface() # newWindow.config(obj=Trims['Trim'],pipelines=['TrimWarp'],media=[cap]) # newWindow.initialise() # newWindow.create() ##### 2 ORIGRECT used for the eyetracker perspective transformations ################# # newWindow = intWr.interface() # newWindow.config(obj=OrgRect,pipelines=['OrgRect'],media=[cap],speed=1) # newWindow.initialise() # newWindow.create() ##### 3 EXCLRECT Area where the contourns are not tracked ################# # newWindow = intWr.interface() # newWindow.config(obj=exclRect,pipelines=['exclRect'],media=[cap],speed=1) # newWindow.initialise() # newWindow.create() ##### 4 BINS CONFIG ################# # windows={} # for binname in Bins: # windows[binname] = intWr.interface() # windows[binname].config(obj=Bins[binname],pipelines=['Bins'],media=[cap],speed=1001) # windows[binname].initialise() # windows[binname].create() ##### 5 AREAS CONFIG #################### # windows={} # for wArea in wAreas: # windows[wArea] = intWr.interface() # windows[wArea].config(obj=wAreas[wArea],pipelines=['wAreas'],media=[cap],speed=1001) # windows[wArea].initialise() # windows[wArea].create() ##### 6 MASKS CONFIG #################### # windows={} # pipelineMasks = ['pipelineBlue','pipelineRed','pipelineGreen','pipelineYellow','pipelineHand'] # for idx,maskKey in enumerate(Masks): # windows[maskKey] = intWr.interface() # windows[maskKey].config(obj=Masks[maskKey],pipelines=[pipelineMasks[idx]],media=[cap]) # windows[maskKey].initialise() # windows[maskKey].create() ##### 7 BLOCK SIZES CONFIG ########################## # newWindow = intWr.interface() # Blocks.config(AreaTopBound = {'interface':True}, # AreaBottomBound={'interface':True}, # B2x1 = {'interface':True}, # B2x2 = {'interface':True}, # B2x4 = {'interface':True}, # time = {'interface':True}, # blocchi = {'interface':False}, # persistentModelToggle = {"value": False,"interface": True}, # task = {"value": False,'interface':False}) # newWindow.config(obj=Blocks, # pipelines=['TopCamera'], # media=[cap], # timestamps=[config['timestamps0']], # startStamps=[config['startStamp0']]) # newWindow.initialise() # newWindow.create() #### 8 CONFIGURE EXPECTED BLOCKS AND TASKS ########################## ###### configure 'ExpectedBlocks' in the config.json file ###### configure 'Tasks' in the config.json file ############################ Blocks.config(AreaTopBound={'interface': False}, AreaBottomBound={'interface': False}, B2x1={'interface': False}, B2x2={'interface': False}, B2x4={'interface': False}, time={'interface': True}, blocchi={'interface': True}, task={'interface': True}) newWindow = intWr.interface() newWindow.config(obj=Blocks, pipelines=['TopCamera'], media=[cap], timestamps=[config['timestamps0']], startStamps=[config['startStamp0']]) newWindow.initialise() newWindow.create()
def hand(self): self.frame, contours = Masks['Hand'].process(self.hsv, self.frame) self.handImage = np.copy(self.blankImage) self.handImage, self.frame, self.handCoordinates = Masks[ 'Hand'].mostSomenthing(self.handImage, self.frame) Blocks.handDetection(self.handImage, self.handCoordinates)
def timeUpdate(self, key): timenow = Blocks.getStampNum() self.textUpdate('time', str(timenow)[:4])
def greenMask(self): self.frame, contours = Masks['Green Mask'].process( self.hsv, self.frame) Blocks.addContours(contours, [0, 255, 0])
def yellowMask(self): self.frame, contours = Masks['Yellow Mask'].process( self.hsv, self.frame) Blocks.addContours(contours, [0, 255, 255])
def blueMask(self): self.frame, contours = Masks['Blue Mask'].process(self.hsv, self.frame) Blocks.addContours(contours, [255, 0, 0])
def redMask(self): self.frame, contours = Masks['Red Mask'].process(self.hsv, self.frame) Blocks.addContours(contours, [0, 0, 255])
def perspective(self): self.frame = perspective.process(self.frame) Blocks.gazeDetection()
def renderROIs(self): #Blocks.detectPosition() self.frame = Blocks.renderROIs(self.frame)
def blocksRepres(self): Blocks.process()
def filterHand(self): Blocks.handFiltering(self.handImage2)
def bckSub(self): self.bckSub = bckSub['bckSub'].process(self.frame) #self.frame = self.bckSub Blocks.movementDetection(self.bckSub)