def __init__(self, title): super(pyHStandardEditor, self).__init__() self.title = title self.img = np.zeros((480, 640, 3), np.uint8) self.img[:] = 255 self.initUI() d = self.getView().getDrawing() txt = pyHTextFigure(100, 200, 20, 20, "Hola Caracola") d.addFigure(txt) rf = pyHRectangleFigure(10, 10, 40, 40) rf.setColor(255, 0, 0) d.addFigure(rf) cam = pyHCameraFigure(0, 50, 50, 50, 0) d.addFigure(cam) img0 = pyHImageFigure(250, 60, 320, 240) cam.addChangedImageObserver(img0) d.addFigure(img0)
def __init__(self): super(pyHStandardEditor, self).__init__() pyHAbstractEditor.__init__(self) self.initActionMenuToolBars() self.statusBar() self.initUI() d = self.getView().getDrawing() txt = pyHTextFigure(0, 0, 20, 20, "Hola Caracola") d.addFigure(txt) #cam1=pyHCameraFigure(0,200,50,50,1) #d.addFigure(cam1) imgc1 = pyHImageDottedFigure(150, 250, 320, 240) imgc1.setPoints([pyHPoint(20, 20), pyHPoint(30, 30)]) d.addFigure(imgc1) #cam1.addChangedImageObserver(imgc1) cam = pyHCameraFigure(0, 100, 50, 50, 0) d.addFigure(cam) img0 = pyHImageFigure(50, 10, 320, 240) d.addFigure(img0) cam.addChangedImageObserver(img0) img1 = pyHImageFigure(400, 10, 320, 240) d.addFigure(img1) fimg = pyHImageFilterFigure(300, 300, 40, 40) d.addFigure(fimg) cam.addChangedImageObserver(fimg) fimg.addChangedImageObserver(img1) #img2=pyHImageFigure(0,300,320,240) #d.addFigure(img2) img3 = pyHImageFigure(400, 10, 320, 240) d.addFigure(img3) fimg1 = pyHImageFilterFigure(300, 400, 40, 40) d.addFigure(fimg1) fimg1.setFilter(Gaussian()) cam.addChangedImageObserver(fimg1) fimg1.addChangedImageObserver(img3) fimgH = pyHImageFilterFigure(400, 500, 30, 30) d.addFigure(fimgH) fimgH.setFilter(HistogramColor()) fimg1.addChangedImageObserver(fimgH) imgH = pyHImageFigure(500, 0, 256, 150) d.addFigure(imgH) fimgH.addChangedImageObserver(imgH) fimg2 = pyHImageFilterFigure(300, 500, 40, 40) d.addFigure(fimg2) fimg2.setFilter(SobelX()) fimg1.addChangedImageObserver(fimg2) img4 = pyHImageFigure(0, 300, 320, 240) d.addFigure(img4) fimg2.addChangedImageObserver(img4) fimg2y = pyHImageFilterFigure(240, 300, 40, 40) d.addFigure(fimg2y) fimg2y.setFilter(SobelY()) fimg1.addChangedImageObserver(fimg2y) img4y = pyHImageFigure(240, 300, 320, 240) d.addFigure(img4y) fimg2y.addChangedImageObserver(img4y) img4 = pyHImageFigure(10, 600, 320, 240) d.addFigure(img4) fimg4 = pyHImageFilterFigure(0, 600, 40, 40) d.addFigure(fimg4) fimg4.setFilter(OpticalFlow()) cam.addChangedImageObserver(fimg4) fimg4.addChangedImageObserver(img4) # img5=pyHImageFigure(400,600,320,240) # d.addFigure(img5) # fimg5=pyHImageFilterFigure(400,600,40,40) # d.addFigure(fimg5) # fimg5.setFilter(FastFeatureDetector()) # cam.addChangedImageObserver(fimg5) # img5.setImageSourceFigure(fimg5) # #imgCm1=pyHImage('/Users/paco/Pictures/sfm/urjcMostolesMobilLG440-15011301/CAM00295.jpg') # imgCm1=pyHImage('/media/francisco/Packard Bell/Users/paco/Pictures/sfm/pistaTenis/CAM00698.jpg') # #imgCm1=pyHImage('../images/im2.png') # ifcm1=pyHImageDottedFigure(0,0,240,320,imgCm1) # ifcm1.setPoints([pyHPoint(400,690),pyHPoint(1776,690),pyHPoint(1394,560),pyHPoint(737,560)]) # d.addFigure(ifcm1) # # fd=FeatureDetector("SIFT") # imgCvCm1Fd=fd.process(imgCm1.data) # #imgCm1=pyHImage('../images/im2.png') # imgCm1Fd=pyHImage() # imgCm1Fd.setData(imgCvCm1Fd) # ifcm1Fd=pyHImageFigure(0,320,240,320,imgCm1Fd) # d.addFigure(ifcm1Fd) # # #imgCm2=pyHImage('/Users/paco/Pictures/sfm/urjcMostolesMobilLG440-15011301/CAM00294.jpg') # imgCm2=pyHImage('/media/francisco/Packard Bell/Users/paco/Pictures/sfm/pistaTenis/CAM00699.jpg') # #imgCm1=pyHImage('../images/im2.png') # ifcm2=pyHImageDottedFigure(240,0,240,320,imgCm2) # ifcm2.setPoints([pyHPoint(400,690),pyHPoint(1776,690),pyHPoint(1394,560),pyHPoint(737,560)]) # d.addFigure(ifcm2) # # imgCvCm2Fd=fd.process(imgCm2.data) # imgCm2Fd=pyHImage() # imgCm2Fd.setData(cv2.addWeighted(imgCvCm1Fd,0.5,imgCvCm2Fd,0.5,0)) # ifcm2Fd=pyHImageFigure(0,0,240,320,imgCm2Fd) # d.addFigure(ifcm2Fd) # #imgCm10=pyHImage('/media/francisco/Packard Bell/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_000.bmp') #imgCm11=pyHImage('/media/francisco/Packard Bell/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_001.bmp') # imgCm10=pyHImage('/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_000.bmp') # imgCm11=pyHImage('/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_001.bmp') # #fm=FlannMacher() # fm=FundamentalMatrix() # #fm=HomographyMatrix() # fm.imgcv1=imgCm10.data # fm.imgcv2=imgCm11.data # #fm.imgcv1=cam1.getImage().data # #fm.imgcv2=cam.getImage().data # imgCm5=pyHImage() # imgCm5.setData(fm.process()) # ifcm5=pyHImageFigure(0,0,640,240,imgCm5) # d.addFigure(ifcm5) # # immf=pyHImagesMixedFigure(20,20,640,240,imgCm10) # immf.setImage2(imgCm11) # immf.setFilter(fm) # immf.setImageSourceFigure1(cam) # immf.setImageSourceFigure2(cam1) # d.addFigure(immf) # # imsf=pyHImageSecFilterFigure(300,20,50,50) # imsf.setFilter(fm) # imfsec=pyHImageFigure(330,20,640,240) # imsf.addChangedImageObserver(imfsec) # cam.addChangedImageObserver(imsf) # d.addFigure(imsf) # d.addFigure(imfsec) #imgCm3=pyHImage('../images/googleEarth_CampusMostoles15031101.png') #ifcm3=pyHImageFigure(0,0,320*2,240*2,imgCm3) #d.addFigure(ifcm3) #imgCm4=pyHImage('../images/googleEarth_CampusMostolesZoom15031101.png') #ifcm4=pyHImageFigure(0,0,320*2,240*2,imgCm4) #d.addFigure(ifcm4) self.getView().setTransformFitToDrawing()
def __init__(self): super(pyHGraphSLAMEditor, self).__init__() pyHAbstractEditor.__init__(self) self.initActionMenuToolBars() self.statusBar() self.initUI() self.getView().setDrawingGrid(False) pyImg=pyHImage("itc_corridors_2020030301.jpg") #pyImg=pyHImage("../images/20200923_095151.jpg") bf=pyHImageFigure(0,0,160*2,140,pyImg) self.getView().setBackground(bf) # Init data self.data,self.r = make_data(N, num_landmarks, world_size, measurement_range, motion_noise, measurement_noise, distance) data=self.data r=self.r result,Omega,Xi,g = slam(data, N, num_landmarks, motion_noise, measurement_noise) print_result(N, num_landmarks, result) d=self.getView().getDrawing() # ''' build information matrix figure ''' imf=pyHInformationMatrixFigure(g) d.addFigure(imf) txt=pyHTextFigure(45,100,20,3.5," pyHotGraphSLAM ",border=True) d.addFigure(txt) ''' s h o w p r e d i c t i o n s ''' self.showPredictions(g) ''' show last groundtruth pose ''' rf=pyHStarFigure(r.x,r.y,0.5,1.5,5) rf.setColor(0,255,0) rf.setWidth(4) d.addFigure(rf) ''' s h o w landmarks groundtruth ''' ''' Just the map ''' landmarks=[] for i,(x,y) in enumerate(self.r.landmarks): #x=result.value[2*(N+i)][0] #y=result.value[2*(N+i)+1][0] f=pyHNodeLandMarkFigure(x-0.5,y-0.5,4,4,i) f.setColor(100,100,100) f.setFillColor(255, 255, 230,100) d.addFigure(f) landmarks.append(f) ''' s h o w g r a p h ''' x=world_size/2 y=world_size/2 fs=pyHNodePoseFigure(x-0.5,y-0.5,5,5,0) d.addFigure(fs) for k in range(len(data)): # n is the index of the robot pose in the matrix/vector n = k * 2 measurement = data[k][0] motion = data[k][1] # integrate the measurements for i in range(len(measurement)): idx=measurement[i][0] mdx=measurement[i][1] mdy=measurement[i][2] mx=x+mdx my=y+mdy lmf=pyHNodeLandMarkMeasureFigure(mx-1,my-1,2,2,idx) d.addFigure(lmf) cf=pyHConnectionFigure() cf.setColor(0,0,255,100) cf.connectFigures(fs, lmf) d.addFigure(cf) f=landmarks[idx] #pyHNodeLandMarkFigure(mx-0.25,my-0.25,2.0,2.0,idx) cf=pyHConnectionFigure() cf.setColor(100,0,0,100) cf.connectFigures(lmf, f) d.addFigure(cf) #d.addFigure(plm) pid=motion[0] dx =motion[1] dy =motion[2] x+=dx y+=dy nmf=pyHNodePoseMeasureFigure(x-1,y-1,2,2,pid) d.addFigure(nmf) cf=pyHConnectionFigure() cf.setColor(0,100,0,100) cf.connectFigures(fs, nmf) d.addFigure(cf) #print x,y,dx,dy fe=pyHNodePoseFigure(x-2.5,y-2.5,5,5,k+1) d.addFigure(fe) cf=pyHConnectionFigure() cf.setColor(100,0,0,100) cf.connectFigures(nmf, fe) d.addFigure(cf) fs=fe self.getView().setTransformFitToDrawing()
def __init__(self): super(pyHCVEditor, self).__init__() pyHAbstractEditor.__init__(self) self.initActionMenuToolBars() self.statusBar() self.initUI() d=self.getView().getDrawing() txt=pyHTextFigure(0,400,20,20,"Hola Caracola") d.addFigure(txt) #cam1=pyHCameraFigure(0,200,50,50,0) #d.addFigure(cam1) cam=pyHCameraFigure(0,100,50,50,0) d.addFigure(cam) imgc1=pyHImageDottedFigure(150,250,320,240) imgc1.setPoints([pyHPoint(20,20),pyHPoint(30,30)]) d.addFigure(imgc1) cam.addChangedImageObserver(imgc1) img0=pyHImageFigure(50,10,320,240) d.addFigure(img0) cam.addChangedImageObserver(img0) img1=pyHImageFigure(400,10,320,240) d.addFigure(img1) fimg=pyHImageFilterFigure(300,300,40,40) d.addFigure(fimg) cam.addChangedImageObserver(fimg) fimg.addChangedImageObserver(img1) #img2=pyHImageFigure(0,300,320,240) #d.addFigure(img2) img3=pyHImageFigure(400,10,320,240) d.addFigure(img3) fimg1=pyHImageFilterFigure(300,400,40,40) d.addFigure(fimg1) fimg1.setFilter(Gaussian()) cam.addChangedImageObserver(fimg1) fimg1.addChangedImageObserver(img3) fimgH=pyHImageFilterFigure(400,500,30,30) d.addFigure(fimgH) fimgH.setFilter(HistogramColor()) fimg1.addChangedImageObserver(fimgH) imgH=pyHImageFigure(500,0,256,150) d.addFigure(imgH) fimgH.addChangedImageObserver(imgH) fimg2=pyHImageFilterFigure(300,500,40,40) d.addFigure(fimg2) fimg2.setFilter(SobelX()) fimg1.addChangedImageObserver(fimg2) img4=pyHImageFigure(0,300,320,240) d.addFigure(img4) fimg2.addChangedImageObserver(img4) fimg2y=pyHImageFilterFigure(240,300,40,40) d.addFigure(fimg2y) fimg2y.setFilter(SobelY()) fimg1.addChangedImageObserver(fimg2y) img4y=pyHImageFigure(240,300,320,240) d.addFigure(img4y) fimg2y.addChangedImageObserver(img4y) img4=pyHImageFigure(10,600,320,240) d.addFigure(img4) fimg4=pyHImageFilterFigure(0,600,40,40) d.addFigure(fimg4) fimg4.setFilter(OpticalFlow()) cam.addChangedImageObserver(fimg4) fimg4.addChangedImageObserver(img4) img5=pyHImageFigure(400,600,320,240) d.addFigure(img5) fimg5=pyHImageFilterFigure(400,600,40,40) d.addFigure(fimg5) fimg5.setFilter(FastFeatureDetector()) cam.addChangedImageObserver(fimg5) img5.setImageSourceFigure(fimg5)
def onMouseDown(self, e): i = pyHImage('../images/im2.png') f = pyHImageFigure(e.getX(), e.getY(), i.getWidth(), i.getHeight(), i) self.view.getDrawing().addFigure(f) self.view.update()
def __init__(self): super(pyHStandardEditor, self).__init__() pyHAbstractEditor.__init__(self) self.initActionMenuToolBars() self.statusBar() self.initUI() d=self.getView().getDrawing() txt=pyHTextFigure(0,0,20,20,"Hola Caracola") d.addFigure(txt) cam1=pyHCameraFigure(0,200,50,50,1) d.addFigure(cam1) imgc1=pyHImageDottedFigure(150,250,320,240) imgc1.setPoints([pyHPoint(20,20),pyHPoint(30,30)]) d.addFigure(imgc1) cam1.addChangedImageObserver(imgc1) cam=pyHCameraFigure(0,100,50,50,0) d.addFigure(cam) img0=pyHImageFigure(50,10,320,240) d.addFigure(img0) cam.addChangedImageObserver(img0) img1=pyHImageFigure(400,10,320,240) d.addFigure(img1) fimg=pyHImageFilterFigure(300,300,40,40) d.addFigure(fimg) cam.addChangedImageObserver(fimg) fimg.addChangedImageObserver(img1) #img2=pyHImageFigure(0,300,320,240) #d.addFigure(img2) img3=pyHImageFigure(400,10,320,240) d.addFigure(img3) fimg1=pyHImageFilterFigure(300,400,40,40) d.addFigure(fimg1) fimg1.setFilter(Gaussian()) cam.addChangedImageObserver(fimg1) fimg1.addChangedImageObserver(img3) fimgH=pyHImageFilterFigure(400,500,30,30) d.addFigure(fimgH) fimgH.setFilter(HistogramColor()) fimg1.addChangedImageObserver(fimgH) imgH=pyHImageFigure(500,0,256,150) d.addFigure(imgH) fimgH.addChangedImageObserver(imgH) fimg2=pyHImageFilterFigure(300,500,40,40) d.addFigure(fimg2) fimg2.setFilter(SobelX()) fimg1.addChangedImageObserver(fimg2) img4=pyHImageFigure(0,300,320,240) d.addFigure(img4) fimg2.addChangedImageObserver(img4) fimg2y=pyHImageFilterFigure(240,300,40,40) d.addFigure(fimg2y) fimg2y.setFilter(SobelY()) fimg1.addChangedImageObserver(fimg2y) img4y=pyHImageFigure(240,300,320,240) d.addFigure(img4y) fimg2y.addChangedImageObserver(img4y) img4=pyHImageFigure(10,600,320,240) d.addFigure(img4) fimg4=pyHImageFilterFigure(0,600,40,40) d.addFigure(fimg4) fimg4.setFilter(OpticalFlow()) cam.addChangedImageObserver(fimg4) fimg4.addChangedImageObserver(img4) img5=pyHImageFigure(400,600,320,240) d.addFigure(img5) fimg5=pyHImageFilterFigure(400,600,40,40) d.addFigure(fimg5) fimg5.setFilter(FastFeatureDetector()) cam.addChangedImageObserver(fimg5) img5.setImageSourceFigure(fimg5) # #imgCm1=pyHImage('/Users/paco/Pictures/sfm/urjcMostolesMobilLG440-15011301/CAM00295.jpg') # imgCm1=pyHImage('/media/francisco/Packard Bell/Users/paco/Pictures/sfm/pistaTenis/CAM00698.jpg') # #imgCm1=pyHImage('../images/im2.png') # ifcm1=pyHImageDottedFigure(0,0,240,320,imgCm1) # ifcm1.setPoints([pyHPoint(400,690),pyHPoint(1776,690),pyHPoint(1394,560),pyHPoint(737,560)]) # d.addFigure(ifcm1) # # fd=FeatureDetector("SIFT") # imgCvCm1Fd=fd.process(imgCm1.data) # #imgCm1=pyHImage('../images/im2.png') # imgCm1Fd=pyHImage() # imgCm1Fd.setData(imgCvCm1Fd) # ifcm1Fd=pyHImageFigure(0,320,240,320,imgCm1Fd) # d.addFigure(ifcm1Fd) # # #imgCm2=pyHImage('/Users/paco/Pictures/sfm/urjcMostolesMobilLG440-15011301/CAM00294.jpg') # imgCm2=pyHImage('/media/francisco/Packard Bell/Users/paco/Pictures/sfm/pistaTenis/CAM00699.jpg') # #imgCm1=pyHImage('../images/im2.png') # ifcm2=pyHImageDottedFigure(240,0,240,320,imgCm2) # ifcm2.setPoints([pyHPoint(400,690),pyHPoint(1776,690),pyHPoint(1394,560),pyHPoint(737,560)]) # d.addFigure(ifcm2) # # imgCvCm2Fd=fd.process(imgCm2.data) # imgCm2Fd=pyHImage() # imgCm2Fd.setData(cv2.addWeighted(imgCvCm1Fd,0.5,imgCvCm2Fd,0.5,0)) # ifcm2Fd=pyHImageFigure(0,0,240,320,imgCm2Fd) # d.addFigure(ifcm2Fd) # #imgCm10=pyHImage('/media/francisco/Packard Bell/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_000.bmp') #imgCm11=pyHImage('/media/francisco/Packard Bell/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_001.bmp') imgCm10=pyHImage('/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_000.bmp') imgCm11=pyHImage('/Users/paco/Dropbox/Tranquinet/I+D+I/Electronica/robotica/software/tracking/tranquiTrack/images/logitech/shot_0_001.bmp') #fm=FlannMacher() fm=FundamentalMatrix() #fm=HomographyMatrix() fm.imgcv1=imgCm10.data fm.imgcv2=imgCm11.data #fm.imgcv1=cam1.getImage().data #fm.imgcv2=cam.getImage().data imgCm5=pyHImage() imgCm5.setData(fm.process()) ifcm5=pyHImageFigure(0,0,640,240,imgCm5) d.addFigure(ifcm5) immf=pyHImagesMixedFigure(20,20,640,240,imgCm10) immf.setImage2(imgCm11) immf.setFilter(fm) immf.setImageSourceFigure1(cam) immf.setImageSourceFigure2(cam1) d.addFigure(immf) imsf=pyHImageSecFilterFigure(300,20,50,50) imsf.setFilter(fm) imfsec=pyHImageFigure(330,20,640,240) imsf.addChangedImageObserver(imfsec) cam.addChangedImageObserver(imsf) d.addFigure(imsf) d.addFigure(imfsec)
def onMouseDown(self,e): i=pyHImage('../images/im2.png') f=pyHImageFigure(e.getX(),e.getY(),i.getWidth(),i.getHeight(),i) self.view.getDrawing().addFigure(f) self.view.update()