img_x = int(lng / 360.0 * 512.0) img_y = int(-(lat - 90) / 180.0 * 256.0) syn_pano[img_y, img_x, :] = point['a_color'] index_pano[img_y, img_x] = True yo_xyz.append([img_x, img_y, 0]) yo_color.append(point['a_color']) yo_len += 1 show_pano = np.concatenate((ori_pano, syn_pano), axis=1) #scipy.misc.imsave('yo.png', syn_pano) scipy.misc.imshow(show_pano) data = np.zeros((yo_len), dtype=[('a_position', np.float32, 3), ('a_color', np.float32, 3)]) data['a_color'] = np.array(yo_color) data['a_position'] = np.array(yo_xyz) pca = PCA(n_components=2) data_transfer = pca.fit_transform(data['a_position']) tri = np.array(triangle.delaunay(data_transfer), dtype=np.uint32) programImage = glumpy_setting.ProgramPlane(data=data, name='test', face=tri) data['a_position'][:, 0] = data['a_position'][:, 0] / 256.0 - 1.0 data['a_position'][:, 1] = data['a_position'][:, 1] / 128.0 - 1.0 gpyViewWindow = glumpy_setting.GpyViewWindow(data, tri) gpyViewWindow.run()
if addPlane: for j in range(0, pano_length): sv3D = sv3DRegion.sv3D_Time[j] for i in range(0, len(sv3D.all_plane)): programGround = glumpy_setting.ProgramPlane( data=sv3D.all_plane[i]['data'], name='test', face=sv3D.all_plane[i]['tri']) gpyWindow.add_program(programGround) else: gpyWindow.add_program(programSV3DRegion) gpyWindow.add_program(programSV3DTopology) if imageSynthesis: gpyWindow.add_program(programSV3DNearest) if needGround: gpyWindow.add_program(programSV3DRegionGnd) programAxis = glumpy_setting.ProgramAxis(line_length=5) gpyWindow.add_program(programAxis) gpyWindow.run() """ Output novel view """ if needTexture: gpyViewWindow = glumpy_setting.GpyViewWindow(width=texture_width, height=texture_height) for programTexture in programTexture_set: gpyViewWindow.add_program(programTexture) gpyViewWindow.run()
gpyWindow = glumpy_setting.GpyWindow() if addPlane: for j in range(0, pano_length): sv3D = sv3DRegion.sv3D_Time[j] for i in range(0, len(sv3D.gnd_plane)): programGround = glumpy_setting.ProgramPlane(data=sv3D.gnd_plane[i]['data'], name='test', face=sv3D.gnd_plane[i]['tri']) gpyWindow.add_program(programGround) if createSFM: gpyWindow.add_program(programSFM3DRegion) gpyWindow.add_program(programTrajectory) if createSV: gpyWindow.add_program(programSV3DRegion) gpyWindow.add_program(programSV3DTopology) if imageSynthesis: gpyWindow.add_program(programSV3DNearest) if needGround: gpyWindow.add_program(programSV3DRegionGnd) programAxis = glumpy_setting.ProgramAxis(line_length=5) gpyWindow.add_program(programAxis) gpyWindow.run() if needTexture: gpyViewWindow = glumpy_setting.GpyViewWindow() for programTexture in programTexture_set: gpyViewWindow.add_program(programTexture) gpyViewWindow.run()
if needVisual: gpyWindow = glumpy_setting.GpyWindow() if addPlane: for j in range(0, pano_length): sv3D = sv3DRegion.sv3D_Time[j] for i in range(0, len(sv3D.gnd_plane)): programGround = glumpy_setting.ProgramPlane(data=sv3D.gnd_plane[i]['data'], name='test', face=sv3D.gnd_plane[i]['tri']) gpyWindow.add_program(programGround) if createSFM: gpyWindow.add_program(programSFM3DRegion) gpyWindow.add_program(programTrajectory) if createSV: gpyWindow.add_program(programSV3DRegion) gpyWindow.add_program(programSV3DTopology) if imageSynthesis: gpyWindow.add_program(programSV3DNearest) gpyWindow.add_program(programImage) if needGround: gpyWindow.add_program(programSV3DRegionGnd) programAxis = glumpy_setting.ProgramAxis(line_length=5) gpyWindow.add_program(programAxis) gpyWindow.run() if needTexture: gpyViewWindow = glumpy_setting.GpyViewWindow(texture_data, texture_tri) gpyViewWindow.run()