def iterate_ellection_taxon_rank_representatives(self, current_state, taxon_rank='species'): signal.signal(signal.SIGINT, self.signal_handler) protDB = db_handling.ProteinDatabase() latest_taxon_id = current_state[5] taxon_id_list = protDB.get_taxon_ids_by_rank(taxon_rank) taxon_rank_id_list = [] for taxon_id_tuple in taxon_id_list: taxon_rank_id_list.append(taxon_id_tuple[0]) start = 0 if latest_taxon_id: start = taxon_rank_id_list.index(latest_taxon_id) taxon_rank_id_list = taxon_rank_id_list[start:] print('ctrl + c will stop the process at appropriate timing') sys.stdout.write("\n") bar = Bar(taxon_rank + ' classifications:', max=len(taxon_id_list)) bar.index = start for taxon_rank_id in taxon_rank_id_list: bar.next() not_depleted = True while not_depleted: sys.stdout.write("\n") not_depleted = self.ellect_taxon_rank_representatives_step( taxon_rank_id, taxon_rank) sys.stdout.write("\033[F") sys.stdout.write("\033[F") if self.stop_process: sys.exit('\nprocess terminated correctly') protDB.update_representatives_taxon_id_by_abstence( taxon_rank_id, taxon_rank) protDB.update_state( {'classifications_latest_taxon_id': taxon_rank_id}, taxon_rank), bar.finish()
def dask_player(video, segmentation, optical_flow): Cache(2e6).register() # Turn cache on globally video = cv2.VideoCapture(video) segmentation = da.from_npy_stack(segmentation) optical_flow = da.from_npy_stack(optical_flow) bar = Bar('Frame', max=video.get(cv2.CAP_PROP_FRAME_COUNT)) bar.index = OFFSET video.set(cv2.CAP_PROP_POS_FRAMES, OFFSET) while video.isOpened(): video_frame = video.read()[1] optical_flow_frame = optical_flow[bar.index].compute() segmentation_frame = segmentation[bar.index].compute() cv2.imshow('video', video_frame) cv2.imshow('segmentation', segmentation_frame) cv2.imshow('optical_flow', visualize_optical_flow(optical_flow_frame)) import pdb pdb.set_trace() cv2.waitKey(27) bar.next()
def compare_sequences_same_taxon_level(self, taxon_rank, current_state): protDB = db_handling.ProteinDatabase() paralell = Parallelization() ncbi = ncbi_taxonomy.NCBITaxa() latest_taxon_id = current_state[3] latest_seq_a = current_state[7] latest_seq_b = current_state[8] taxon_rank_sequences = protDB.get_sequences_same_taxon_rank(taxon_rank) max_len = len(taxon_rank_sequences) start = 0 if latest_taxon_id: for seq in taxon_rank_sequences: if seq[2] == latest_taxon_id: start = taxon_rank_sequences.index(seq) break taxon_rank_sequences = taxon_rank_sequences[start:] print('ctrl + c will stop the process at appropriate timing') sys.stdout.write("\n") bar = Bar(taxon_rank + ' comparisons:', max=max_len) bar.index = start first_line = True params_a, params_b, sorted_repres_list, taxon_id = self.populate_parameters_same_taxon_comparisons( taxon_rank_sequences, latest_seq_a, latest_seq_b, partial=True, taxon_rank=taxon_rank) while params_a: taxon_name = ncbi.get_taxid_translator([taxon_id])[taxon_id] sys.stdout.write("\n") sys.stdout.write("\033[K") bar_taxon = Bar(taxon_rank + ' ' + taxon_name, max=len(params_a)) paralell.parallelize_7(self.perform_needle_comparison, [params_a, params_b], log_param=taxon_rank, bar=bar_taxon, handle_signal=True) bar_taxon.finish() sys.stdout.write("\033[F") sys.stdout.write("\033[F") sys.stdout.write("\033[K") bar.next() protDB.update_state({'comparisons_latest_taxon_id': taxon_id}, taxon_rank) params_a, params_b, sorted_repres_list, taxon_id = self.populate_parameters_same_taxon_comparisons( sorted_repres_list, partial=True, taxon_rank=taxon_rank) bar.finish() protDB.assign_identity_paramters_comparisons() protDB.update_state({'comparisons_done': 1}, taxon_rank)