def xtest_smoke_bag(self): import rosrecord import visualize class imgAdapted: def __init__(self, i): self.i = i self.size = (i.width, i.height) def tostring(self): return self.i.data cam = None filename = "/u/prdata/videre-bags/loop1-mono.bag" filename = "/u/prdata/videre-bags/vo1.bag" framecounter = 0 for topic, msg in rosrecord.logplayer(filename): print framecounter if rospy.is_shutdown(): break #print topic,msg if topic == "/videre/cal_params" and not cam: cam = camera.VidereCamera(msg.data) vo = VisualOdometer(cam) if cam and topic == "/videre/images": if -1 <= framecounter and framecounter < 360: imgR = imgAdapted(msg.images[0]) imgL = imgAdapted(msg.images[1]) af = SparseStereoFrame(imgL, imgR) pose = vo.handle_frame(af) visualize.viz(vo, af) framecounter += 1 print "distance from start:", vo.pose.distance() vo.summarize_timers()
def vizTest(): result = daveAndJane() # dave = result[0] # print(dave.nodeGenome) jane = result[1] # visualize.viz(dave) visualize.viz(jane)
def refreshData(SYM, INT, KEY): SYMBOL = SYM INTERVAL = INT API_KEY = KEY url = f'https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol={SYMBOL}&interval={INTERVAL}&apikey={API_KEY}&datatype=csv' filepath = f'./logs/streamdata-{SYMBOL}-{INTERVAL}.csv' a = time.time() df = pd.read_csv(url) print(df.head()) df.to_csv(filepath) visualize.viz(df) b = time.time() r = b - a with open('./logs/timedata.csv', 'a') as f: f.write(f'{r}\n')
else: print "id", af.id, "inliers:", vo.inl, "proximity:", vo.proximity( master_frame, af) comp = visualize.render_source_with_keypoints_stats( vo, af) comp.save("/tmp/im%04d.tiff" % (framecounter - start)) else: vo = vos[0] af = SparseStereoFrame(imgL, imgR) vo.handle_frame(af) if 0: inliers = [(P0, P1) for (P1, P0) in vo.pe.inliers()] if inliers != []: pts3d = [cam.pix2cam(*P1) for (P0, P1) in inliers] X = [x for (x, y, z) in pts3d] Y = [y for (x, y, z) in pts3d] Z = [z for (x, y, z) in pts3d] print "xrange", min(X), max(X) print "yrange", min(Y), max(Y) print "zrange", min(Z), max(Z) visualize.viz(vo, af) framecounter += 1 print "distance from start:", vo.pose.distance() for v in vos: print v.feature_detector.name(), v.descriptor_scheme.__class__.__name__ v.summarize_timers() print v.log_keyframes print
def runGeneration(population, c1, c2, c3, compatabilityThreshold, fitnessFunction, mateFunction, muteFunction): # print("Running Generation") #Seperate into Species #NEED TO TEST species = [] # print(population) species.append([population[0]]) for geno in population[1:]: for speci in species: delta = geno.compatabilityDistance(random.choice(speci), c1, c2, c3) if delta < compatabilityThreshold: speci.append(geno) break else: #was not assigned to a species species.append([geno]) print("Size of population: " + str(len(population))) print("Number of species: " + str(len(species))) #Evaluation #getting max fitness for return maxFit = 0 maxGeno = species[0][0] longGeno = species[0][0] #speciesWEval = [[(geno, fitness), (g, f)],[spec2],[spec3]...] print("Starting Evaluation") speciesWEval = [] for speci in species: speciVal = [] for geno in speci: fitness = fitnessFunction(geno) # print("fitness: " + str(fitness)) speciVal.append((geno, fitness)) if fitness > maxFit: maxFit = fitness maxGeno = geno if len(geno.nodeGenome) > len(longGeno.nodeGenome): longGeno = geno """ if fitness != 0.13: for i in range(10): print("LOOOOOOOOK ITS NOT 13") if len(geno.connectGenome) != 10 or len(geno.nodeGenome) != 11: for i in range(10): print("LOOOOOOOOK STRUCTURE MUTATION") """ speciesWEval.append(speciVal) print("Finished Evaluation") visualize.viz(maxGeno) visualize.viz(longGeno) print("MaxFit inside gen: " + str(maxFit)) #Grwoth/decline of species #adjusted fitness speciesWAdjEval = [] for speci in speciesWEval: speciVal = [] for genoFPair in speci: speciVal.append((genoFPair[0], genoFPair[1] / len(speci))) speciesWAdjEval.append(speciVal) # print(speciesWAdjEval) #mean adjusted fitness adjSum = 0 count = 0 for speci in speciesWAdjEval: for genoFPair in speci: adjSum += genoFPair[1] count += 1 meanF = adjSum / count #mating unmutedPop = [] for speci in speciesWAdjEval: adjSum = 0 for genoFPair in speci: adjSum += genoFPair[1] if len(population) < 50: newNum = int(math.ceil(adjSum / meanF)) else: newNum = int(math.floor(adjSum / meanF)) unmutedPop.append(mateFunction(speci, newNum)) #mutating mutedPop = [] for speci in unmutedPop: for pop in speci: mutedPop.append(muteFunction(pop)) return (mutedPop, maxFit)
if af.id == 0: master_frame = af else: print "id", af.id, "inliers:", vo.inl, "proximity:", vo.proximity(master_frame, af) comp = visualize.render_source_with_keypoints_stats(vo, af) comp.save("/tmp/im%04d.tiff" % (framecounter - start)) else: vo = vos[0] af = SparseStereoFrame(imgL, imgR) vo.handle_frame(af) if 0: inliers = [ (P0,P1) for (P1,P0) in vo.pe.inliers()] if inliers != []: pts3d = [cam.pix2cam(*P1) for (P0,P1) in inliers] X = [ x for (x,y,z) in pts3d ] Y = [ y for (x,y,z) in pts3d ] Z = [ z for (x,y,z) in pts3d ] print "xrange", min(X), max(X) print "yrange", min(Y), max(Y) print "zrange", min(Z), max(Z) visualize.viz(vo, af) framecounter += 1 print "distance from start:", vo.pose.distance() for v in vos: print v.feature_detector.name(), v.descriptor_scheme.__class__.__name__ v.summarize_timers() print v.log_keyframes print