def GetObsUnfiltered(self, *args): # do we need to recompute? mustcompute = False if hasattr(self, 'obs_unfiltered') and self.obs_unfiltered.issame( self.show_frame): for arg in args: if self.obs_unfiltered.__dict__[arg] is None: mustcompute = True break else: mustcompute = True if DEBUG_TRACKINGSETTINGS: print 'mustcompute = ' + str(mustcompute) if DEBUG_TRACKINGSETTINGS and not mustcompute: print 'stored obs_unfiltered = ' + str(self.obs_unfiltered) # if we are only interested in the unfiltered observation if len(args) == 0: # if it has not yet been computed for this frame, compute if mustcompute: obs_unfiltered = ell.find_ellipses(self.bg_imgs.dfore.copy(), self.bg_imgs.cc.copy(), self.bg_imgs.ncc, False) self.obs_unfiltered = StoredObservations( obs_unfiltered, self.show_frame) return self.obs_unfiltered.obs # compute if necessary if mustcompute: wx.BeginBusyCursor() wx.YieldIfNeeded() (obs_unfiltered,ellsmall,elllarge,didlowerthresh,didmerge,diddelete,didsplit) = \ ell.find_ellipses_display(self.bg_imgs.dfore.copy(),self.bg_imgs.cc.copy(),self.bg_imgs.ncc) if DEBUG_TRACKINGSETTINGS: print 'computed obs_unfiltered = ' + str( obs_unfiltered) + ', len = ' + str(len(obs_unfiltered)) if DEBUG_TRACKINGSETTINGS: print 'ellsmall = ' + str(ellsmall) if DEBUG_TRACKINGSETTINGS: print 'elllarge = ' + str(elllarge) if DEBUG_TRACKINGSETTINGS: print 'didlowerthresh = ' + str(didlowerthresh) if DEBUG_TRACKINGSETTINGS: print 'didmerge = ' + str(didmerge) if DEBUG_TRACKINGSETTINGS: print 'diddelete = ' + str(diddelete) if DEBUG_TRACKINGSETTINGS: print 'didsplit = ' + str(didsplit) wx.EndBusyCursor() self.obs_unfiltered = StoredObservations(obs_unfiltered, self.show_frame, ellsmall, elllarge, didlowerthresh, didmerge, diddelete, didsplit) if DEBUG_TRACKINGSETTINGS: print 'stored obs_unfiltered: ' if DEBUG_TRACKINGSETTINGS: print str(self.obs_unfiltered) # create return list ret = (self.obs_unfiltered.obs, ) for arg in args: ret += (self.obs_unfiltered.__dict__[arg], ) return ret
def GetObsUnfiltered(self,*args): # do we need to recompute? mustcompute = False if hasattr(self,'obs_unfiltered') and self.obs_unfiltered.issame(self.show_frame): for arg in args: if self.obs_unfiltered.__dict__[arg] is None: mustcompute = True break else: mustcompute = True if DEBUG_TRACKINGSETTINGS: print 'mustcompute = ' + str(mustcompute) if DEBUG_TRACKINGSETTINGS and not mustcompute: print 'stored obs_unfiltered = ' + str(self.obs_unfiltered) # if we are only interested in the unfiltered observation if len(args) == 0: # if it has not yet been computed for this frame, compute if mustcompute: obs_unfiltered = ell.find_ellipses(self.bg_imgs.dfore.copy(),self.bg_imgs.cc.copy(),self.bg_imgs.ncc,False) self.obs_unfiltered = StoredObservations(obs_unfiltered,self.show_frame) return self.obs_unfiltered.obs # compute if necessary if mustcompute: wx.BeginBusyCursor() wx.YieldIfNeeded() (obs_unfiltered,ellsmall,elllarge,didlowerthresh,didmerge,diddelete,didsplit) = \ ell.find_ellipses_display(self.bg_imgs.dfore.copy(),self.bg_imgs.cc.copy(),self.bg_imgs.ncc) if DEBUG_TRACKINGSETTINGS: print 'computed obs_unfiltered = ' + str(obs_unfiltered) + ', len = ' + str(len(obs_unfiltered)) if DEBUG_TRACKINGSETTINGS: print 'ellsmall = ' + str(ellsmall) if DEBUG_TRACKINGSETTINGS: print 'elllarge = ' + str(elllarge) if DEBUG_TRACKINGSETTINGS: print 'didlowerthresh = ' + str(didlowerthresh) if DEBUG_TRACKINGSETTINGS: print 'didmerge = ' + str(didmerge) if DEBUG_TRACKINGSETTINGS: print 'diddelete = ' + str(diddelete) if DEBUG_TRACKINGSETTINGS: print 'didsplit = ' + str(didsplit) wx.EndBusyCursor() self.obs_unfiltered = StoredObservations(obs_unfiltered,self.show_frame, ellsmall,elllarge,didlowerthresh, didmerge,diddelete,didsplit) if DEBUG_TRACKINGSETTINGS: print 'stored obs_unfiltered: ' if DEBUG_TRACKINGSETTINGS: print str(self.obs_unfiltered) # create return list ret = (self.obs_unfiltered.obs,) for arg in args: ret += (self.obs_unfiltered.__dict__[arg],) return ret
def GetObsUnfiltered(self,*args): # if we are only interested in the unfiltered observation if len(args) == 0: # if it has not yet been computed for this frame, compute if not(hasattr(self,'obs_unfiltered') and self.obs_unfiltered.issame(self.show_frame)): wx.BeginBusyCursor() wx.YieldIfNeeded() obs_unfiltered = ell.find_ellipses(self.bg_imgs.dfore,self.bg_imgs.bw,False) wx.EndBusyCursor() self.obs_unfiltered = StoredObservations(obs_unfiltered,self.show_frame) return self.obs_unfiltered.obs # otherwise, we need to check for attributes as well mustcompute = False if hasattr(self,'obs_unfiltered') and self.obs_unfiltered.issame(self.show_frame): for arg in args: if self.obs_unfiltered.__dict__[arg] is None: mustcompute = True break else: mustcompute = True # compute if necessary if mustcompute: wx.BeginBusyCursor() wx.YieldIfNeeded() (obs_unfiltered,issmall,islarge,didlowerthresh,didmerge,diddelete,didsplit) = \ ell.find_ellipses_display(self.bg_imgs.dfore,self.bg_imgs.bw) wx.EndBusyCursor() self.obs_unfiltered = StoredObservations(obs_unfiltered,self.show_frame, issmall,islarge,didlowerthresh, didmerge,diddelete,didsplit) # create return list ret = (self.obs_unfiltered.obs,) for arg in args: ret += (self.obs_unfiltered.__dict__[arg],) return ret