def loadtracksjson(self, fileString=''):
     if fileString != '':
         filename = fileString
     else:
         filename = open_file_gui("Open tracks from json", filetypes='*.json')
         if filename is None:
             return None
     obj_text = codecs.open(filename, 'r', encoding='utf-8').read()
     pts = json.loads(obj_text)
     txy_pts = np.array(pts['txy_pts'])
     self.txy_pts = txy_pts
     points = Points(txy_pts)
     points.tracks = pts['tracks']
     points.get_tracks_by_frame()
     self.points = points
     nTracks = len(points.tracks)
Ejemplo n.º 2
0
def get_text_file(filename=None):
    if filename is None:
        filetypes = '.txt'
        prompt = 'Open File'
        filename = open_file_gui(prompt, filetypes=filetypes)
        if filename is None:
            return None
    else:
        filename = g.settings['filename']
        if filename is None:
            g.alert('No filename selected')
            return None
    print("Filename: {}".format(filename))
    g.m.statusBar().showMessage('Loading {}'.format(
        os.path.basename(filename)))
    return filename
Ejemplo n.º 3
0
 def loadtracksjson(self):
     filename = open_file_gui("Open tracks from json", filetypes='*.json')
     if filename is None:
         return None
     obj_text = codecs.open(filename, 'r', encoding='utf-8').read()
     pts = json.loads(obj_text)
     txy_pts = np.array(pts['txy_pts'])
     self.txy_pts = txy_pts
     self.algorithm_gui.showPointsButton.setEnabled(True)
     self.skip_refinePoints()
     points = Points(txy_pts)
     points.tracks = pts['tracks']
     points.get_tracks_by_frame()
     self.points = points
     nTracks = len(points.tracks)
     self.algorithm_gui.num_tracks_label.setText(str(nTracks))
     self.algorithm_gui.showTracksButton.setEnabled(True)
     self.algorithm_gui.analyze_tab_widget.setCurrentIndex(3)
            
            #get mean pixels values for 3x3 square
            self.intensities.append((np.mean(self.dataArray[frame][xMin:xMax,yMin:yMax])))
        
        #update points instance
        self.points.intensities = self.intensities
        

        
tracks = Tracks()


if __name__ == '__main__':
    start_flika() 
    #load particle image stack that you want to get intensities from
    imgStack_filename = open_file_gui()
    #data_window = open_file(r"C:\Users\g_dic\OneDrive\Desktop\testing\particles.tif")
    data_window = open_file(imgStack_filename)
    #load tracks from JSON file
    tracks.loadtracksjson()
    #set window to get intensities from
    tracks.setWindow(data_window)
    #get intensities from point positions
    tracks.getIntensities()
    #save new json file including point intensities + csv of linked track values
    tracks.savetracks()
    
    #load json
    #tracks.loadtracksjson(r"C:\Users\g_dic\OneDrive\Desktop\AL_55_2020-06-29-TIRFM_Diff_tdt-MEFs_B_4_trackintensities.json")   
    #save csv file  
    #tracks.savetrackscsv(r"C:\Users\g_dic\OneDrive\Desktop\AL_55_2020-06-29-TIRFM_Diff_tdt-MEFs_B_4_trackintensities.csv")