def __analyseReferenceMarker(self): ''' Analyses reference markers ''' path = str( self._gui.getObj("txtReferenceMarkerPath").text() ) self.__referenceMarker = getReferenceMarker(path) mrLogger.logInfo("Analysed " + str( len(self.__referenceMarker) ) + " reference marker.") self._gui.status( "Analysed " + str( len(self.__referenceMarker) ) + " reference markers" )
def __analyseReferenceMarker(self): ''' Analyses reference markers ''' path = str(self._gui.getObj("txtReferenceMarkerPath").text()) self.__referenceMarker = getReferenceMarker(path) mrLogger.logInfo("Analysed " + str(len(self.__referenceMarker)) + " reference marker.") self._gui.status("Analysed " + str(len(self.__referenceMarker)) + " reference markers")
def __init__(self, gui=None, imageGrabber=None, config=None): ''' Constructor ''' super(Distortion, self).__init__(gui=gui, imageGrabber=imageGrabber, config=config) self.__calibrated = False self.__calibrating = False if gui != None: self.__initGui() if self._config != None: cfgFile = self._config.getConfigValue("CONFIGURATION", "cfgCalibration") if cfgFile != None and self.__loadConfigData(cfgFile): self._gui.status( "Loaded distortion config." ) mrLogger.logInfo( "Loaded distortion config file " + str(cfgFile) )
def __init__(self, gui=None, imageGrabber=None, config=None): ''' Constructor ''' super(Transformation, self).__init__(gui=gui, imageGrabber=imageGrabber, config=config) self.__calibrated = False self.__calibrating = False self.__basisMatrix = array([[1,0],[0,1]]) self.__offset = array([0,0]) if self._gui != None: self.__initGui() if self._config != None: cfgFile = self._config.getConfigValue("CONFIGURATION", "cfgTransformation") if cfgFile != None and self.__loadConfigData(cfgFile): self._gui.status( "Loaded transformtaion config." ) mrLogger.logInfo( "Loaded transformation config file " + str(cfgFile) )
def __init__(self, gui=None, imageGrabber=None, config=None): ''' Constructor ''' super(Transformation, self).__init__(gui=gui, imageGrabber=imageGrabber, config=config) self.__calibrated = False self.__calibrating = False self.__basisMatrix = array([[1, 0], [0, 1]]) self.__offset = array([0, 0]) if self._gui != None: self.__initGui() if self._config != None: cfgFile = self._config.getConfigValue("CONFIGURATION", "cfgTransformation") if cfgFile != None and self.__loadConfigData(cfgFile): self._gui.status("Loaded transformtaion config.") mrLogger.logInfo("Loaded transformation config file " + str(cfgFile))
def __processImage(self): ''' processes image recognision ''' mrLogger.logInfo( "Main loop started in mode " + str(self.__mode) ) while self.__mode != mrVisionData.VISION_MODE_TERMINATE: #print "mode:", self.__mode # get image img = self._imageGrabber.getImage() # sets image to distortion module self.__distortion.setImg(img) # undistort and crop image if self.__distortion.isCalibrated(): img = self.__distortion.undistortImage(img) img = self.__distortion.cropImage(img) # sets image to transformation and recognition module self.__transformation.setImg(img) self.__recognition.setImg(img) # STREAM IMAGES if self.__mode in mrVisionData.VISION_STREAMING_MODES: if self._imageGrabber.isActive(): # recognize objects self.__recognition.recognize() # get bots and rectangles try: obj = {'bots': self.__recognition.getBots(), 'rectangles': self.__recognition.getRectangles()} except: pass # transformate objects self.__transformation.transformObjects( obj['bots'] ) # send vision objects self.__sendVisionData(obj) # CALIBRATE CHESSBOARD elif self.__mode == mrVisionData.VISION_MODE_CALIBRATE_DIST: if not self.__distortion.isCalibrating(): self.__distortion.calibrateCamera() while self.__distortion.isCalibrating(): pass self.__setMode(mrVisionData.VISION_MODE_NONE) # CALIBRATE TRANSFORMATIONEN elif self.__mode == mrVisionData.VISION_MODE_CALIBRATE_TRANSF: # To-DO: calibration of transformation if not self.__transformation.isCalibrating(): self.__transformation.startCalibration() while self.__transformation.isCalibrating(): pass self.__setMode(mrVisionData.VISION_MODE_NONE) # sleep(0.01) # exit program mrLogger.logInfo( "Main loop stopped" ) self.__socketManager.stopSocket()