예제 #1
0

data_dir = "/Volumes/Experiments/object_recognition/bvpl/CapitolSiteHigh/cropped_world"


print("Load Voxel World")
bvpl_batch.init_process("bvxmLoadGridProcess")
bvpl_batch.set_input_string(0, data_dir + "/ocp_cropped.vox")
bvpl_batch.set_input_string(1, "float")
bvpl_batch.run_process()
(world_id, world_type) = bvpl_batch.commit_output(0)
world = dbvalue(world_id, world_type)

print("Creating 3D edge kernel")
bvpl_batch.init_process("bvplCreateEdge3dKernelVectorProcess")
bvpl_batch.set_input_unsigned(0, 3)
bvpl_batch.set_input_unsigned(1, 3)
bvpl_batch.set_input_unsigned(2, 3)
bvpl_batch.run_process()
(kernel_id, kernel_type) = bvpl_batch.commit_output(0)
kernel_vector = dbvalue(kernel_id, kernel_type)

print("Running Operator")
bvpl_batch.init_process("bvplNeighborhoodOperatorProcess")
bvpl_batch.set_input_from_db(0, world)
bvpl_batch.set_input_from_db(1, kernel)
bvpl_batch.set_input_string(2, "float")
bvpl_batch.set_input_string(3, "edge_algebraic_mean")
bvpl_batch.set_input_string(4, data_dir + "/edge_alge_100.vox")
bvpl_batch.run_process()
(result_x_world_id, result_x_world_type) = bvpl_batch.commit_output(0)
    self.type = type   # string

data_dir = "/Volumes/Experiments/object_recognition/bvpl/CapitolSiteHigh/cropped_world"
param_dir = "/Projects/lemsvxl/src/contrib/isabel/params"
#first creat an empty world.
print("Load Voxel World");
bvpl_batch.init_process("bvxmLoadGridProcess");
bvpl_batch.set_input_string(0, data_dir +"/ocp_cropped.vox");
bvpl_batch.set_input_string(1,"float");
bvpl_batch.run_process();
(world_id,world_type)= bvpl_batch.commit_output(0);
world = dbvalue(world_id,world_type);

print("Creating 3D edge kernel");
bvpl_batch.init_process("bvplCreateEdge3dKernelVectorProcess");
bvpl_batch.set_input_unsigned(0, 5);  #width
bvpl_batch.set_input_unsigned(1, 5);  #height
bvpl_batch.set_input_unsigned(2, 5);  #length
bvpl_batch.run_process();
(kernel_id,kernel_type)= bvpl_batch.commit_output(0);
kernel_vector = dbvalue(kernel_id,kernel_type);

print("Running Operator");
bvpl_batch.init_process("bvplVectorOperatorProcess");
bvpl_batch.set_input_from_db(0,world );
bvpl_batch.set_input_from_db(1,kernel_vector);
bvpl_batch.set_input_string(2,"float");
bvpl_batch.set_input_string(3,"edge_algebraic_mean");
bvpl_batch.set_input_string(4, data_dir + "/edge3d_alge.vox");
bvpl_batch.set_input_string(5, data_dir + "/edge3d_alge_orientations.vox");
bvpl_batch.run_process();
예제 #3
0
# first creat an empty world.
world_dir = "D:/tests/lidar_edge_reg/"
cwd_dir = "D:/tests/lidar_edge_reg/"

print("Load Voxel World")
bvpl_batch.init_process("bvxmLoadGridProcess")
bvpl_batch.set_input_string(0, world_dir + "ocp_opinion_bin_0_scale_0.vox")
bvpl_batch.set_input_string(1, "ocp_opinion")
bvpl_batch.run_process()
(world_id, world_type) = bvpl_batch.commit_output(0)
world = dbvalue(world_id, world_type)

print("Creating 3D edge kernel")
bvpl_batch.init_process("bvplCreateEdge3dKernelVectorProcess")
bvpl_batch.set_input_unsigned(0, 2)
bvpl_batch.set_input_unsigned(1, 5)
bvpl_batch.set_input_unsigned(2, 5)
bvpl_batch.run_process()
(kernel_id, kernel_type) = bvpl_batch.commit_output(0)
kernel = dbvalue(kernel_id, kernel_type)

print("Running Operator")
bvpl_batch.init_process("bvplVectorOperatorProcess")
bvpl_batch.set_input_from_db(0, world)
bvpl_batch.set_input_from_db(1, kernel)
bvpl_batch.set_input_string(2, "opinion")
bvpl_batch.set_input_string(3, "edge_algebraic_mean")
bvpl_batch.set_input_string(4, cwd_dir + "response.vox")
bvpl_batch.set_input_string(5, cwd_dir + "id_orientation.vox")
bvpl_batch.run_process()
save_hue = 1;
data_dir = "/Users/isa/Experiments/CapitolSiteHigh_sfm/few_windows"
output_dir = "/Users/isa/Experiments/CapitolSiteHigh_sfm/few_windows/corner2d_coexist/0+45-360_plane_010_scale_331"


print("Load Voxel Grid");
bvpl_batch.init_process("bvxmLoadGridProcess");
bvpl_batch.set_input_string(0, data_dir +"/KL_gaussf1.vox");
bvpl_batch.set_input_string(1,"bsta_gauss_f1");
bvpl_batch.run_process();
(world_id,world_type)= bvpl_batch.commit_output(0);
world = dbvalue(world_id,world_type);

print("Creating corner 2d kernel");
bvpl_batch.init_process("bvplCreateCorner2dKernelVectorProcess");
bvpl_batch.set_input_unsigned(0, 3);  #half length
bvpl_batch.set_input_unsigned(1, 3);  #half width
bvpl_batch.set_input_unsigned(2, 1);  #half thickness
bvpl_batch.run_process();
(kernel_id,kernel_type)= bvpl_batch.commit_output(0);
kernel_vector = dbvalue(kernel_id,kernel_type);


print("Running Kernels");
bvpl_batch.init_process("bvplSuppressAndCombineProcess");
bvpl_batch.set_input_from_db(0,world );
bvpl_batch.set_input_from_db(1,kernel_vector);
bvpl_batch.set_input_string(2,"bsta_gauss_f1");
bvpl_batch.set_input_string(3,"gauss_convolution");
bvpl_batch.set_input_string(4, output_dir + "/KL_gaussf1_response.vox");
bvpl_batch.set_input_string(5, output_dir + "/KL_gaussf1_id.vox");
# Script to run find 2d corners on appearance grid
# Author : Isabel Restrepo
#8-31-2009
import bvpl_batch
import time
#time.sleep(30);
bvpl_batch.register_processes();
bvpl_batch.register_datatypes();

class dbvalue:
  def __init__(self, index, type):
    self.id = index    # unsigned integer
    self.type = type   # string
find_corners = 1;
pair_corners = 1;
save_corners_vrml = 1;
save_hue = 0;
data_dir = "/Users/isa/Experiments/CapitolSFM/few_windows"

output_dir = "/Users/isa/Experiments/CapitolSFM/few_windows/ocp+app/main_corners_331"
directions = "main_corners"
if (find_corners):
	print("Load Voxel Grid");
	bvpl_batch.init_process("bvxmLoadGridProcess");
	bvpl_batch.set_input_string(0, data_dir +"/KL_gaussf1.vox");
	bvpl_batch.set_input_string(1,"bsta_gauss_f1");
	bvpl_batch.run_process();
	(world_id,world_type)= bvpl_batch.commit_output(0);
	app_grid = dbvalue(world_id,world_type);
	
예제 #6
0
# first creat an empty world.
world_dir = "D:/tests/lidar_edge_reg/"
cwd_dir = "D:/tests/lidar_edge_reg/"

print("Load Voxel World")
bvpl_batch.init_process("bvxmLoadGridProcess")
bvpl_batch.set_input_string(0, world_dir + "ocp_opinion_bin_0_scale_0.vox")
bvpl_batch.set_input_string(1, "ocp_opinion")
bvpl_batch.run_process()
(world_id, world_type) = bvpl_batch.commit_output(0)
world = dbvalue(world_id, world_type)

print("Creating 3D edge kernel")
bvpl_batch.init_process("bvplCreateEdge3dKernelVectorProcess")
bvpl_batch.set_input_unsigned(0, 2)
bvpl_batch.set_input_unsigned(1, 5)
bvpl_batch.set_input_unsigned(2, 5)
bvpl_batch.run_process()
(kernel_id, kernel_type) = bvpl_batch.commit_output(0)
kernel = dbvalue(kernel_id, kernel_type)

print("Running Operator")
bvpl_batch.init_process("bvplVectorOperatorProcess")
bvpl_batch.set_input_from_db(0, world)
bvpl_batch.set_input_from_db(1, kernel)
bvpl_batch.set_input_string(2, "opinion")
bvpl_batch.set_input_string(3, "edge_algebraic_mean")
bvpl_batch.set_input_string(4, cwd_dir + "response.vox")
bvpl_batch.set_input_string(5, cwd_dir + "id_orientation.vox")
bvpl_batch.run_process()
예제 #7
0
# Script to run find 2d corners on appearance grid
# Author : Isabel Restrepo
#8-31-2009
import bvpl_batch
import time
import os
import sys
#time.sleep(30);
bvpl_batch.register_processes();
bvpl_batch.register_datatypes();

class dbvalue:
  def __init__(self, index, type):
    self.id = index    # unsigned integer
    self.type = type   # string
find_corners = 1;
load_corners = 0;
pair_corners = 1;
save_corners_vrml = 0;
save_pairs_vrml = 0;
save_centers_vrml = 0;
corner_length = 3;
corner_width = 3;
corner_thickness =1;
data_dir = sys.argv[1];
output_dir = sys.argv[2];
directions = sys.argv[3];
num_corners = int(sys.argv[4]);
print("Data Dir");
print data_dir;
  print("Writing Orientation Grid");
  bvpl_batch.init_process("bvxmSaveRGBAGridVrmlProcess");
  bvpl_batch.set_input_from_db(0,centers_hue_grid);
  bvpl_batch.set_input_float(1,0.0);
  bvpl_batch.set_input_string(2,output_dir + "/all_centers.wrl");
  bvpl_batch.run_process();
	
if save_pairs_vrml :

  hue = 0.0;
  
  print("Visualize pairs");
  bvpl_batch.init_process("bvplVisualizeCornerPairsProcess");
  bvpl_batch.set_input_from_db(0,pairs );
  bvpl_batch.set_input_unsigned(1,0);
  bvpl_batch.set_input_string(2,output_dir +   "/all_lines.wrl");
  bvpl_batch.set_input_bool(3, 1);
  bvpl_batch.set_input_float(4, hue);
  bvpl_batch.run_process();

  hue = hue + 1.0/float(num_corners);
    
  for i in range(1,int(num_corners),1):

    print(i);
    
    print("Visualize pairs");
    bvpl_batch.init_process("bvplVisualizeCornerPairsProcess");
    bvpl_batch.set_input_from_db(0,pairs );
    bvpl_batch.set_input_unsigned(1,i);
    self.type = type   # string

data_dir = "/Volumes/Experiments/object_recognition/bvpl/CapitolSiteHigh/cropped_world"
param_dir = "/Projects/lemsvxl/src/contrib/isabel/params"
#first creat an empty world.
print("Load Voxel World");
bvpl_batch.init_process("bvxmLoadGridProcess");
bvpl_batch.set_input_string(0, data_dir +"/ocp_cropped.vox");
bvpl_batch.set_input_string(1,"float");
bvpl_batch.run_process();
(world_id,world_type)= bvpl_batch.commit_output(0);
world = dbvalue(world_id,world_type);

print("Creating 2D edge kernel");
bvpl_batch.init_process("bvplCreateEdge2dKernelVectorProcess");
bvpl_batch.set_input_unsigned(0, 5);
bvpl_batch.set_input_unsigned(1, 5);
bvpl_batch.run_process();
(kernel_id,kernel_type)= bvpl_batch.commit_output(0);
kernel_vector = dbvalue(kernel_id,kernel_type);

print("Running Operator");
bvpl_batch.init_process("bvplVectorOperatorProcess");
bvpl_batch.set_input_from_db(0,world );
bvpl_batch.set_input_from_db(1,kernel_vector);
bvpl_batch.set_input_string(2,"float");
bvpl_batch.set_input_string(3,"edge2d");
bvpl_batch.set_input_string(4, data_dir + "/edge2d_all.vox");
bvpl_batch.set_input_string(5, data_dir + "/edge2d_all_orientations.vox");
bvpl_batch.run_process();
(response_grid_id,response_grid_type)= bvpl_batch.commit_output(0);
if not os.path.isdir( output_dir + "/"):
  os.mkdir( output_dir + "/");

if (find_corners):

  print("Load Voxel Grid");
  bvpl_batch.init_process("bvxmLoadGridProcess");
  bvpl_batch.set_input_string(0, data_dir +"/KL_gaussf1.vox");
  bvpl_batch.set_input_string(1,"bsta_gauss_f1");
  bvpl_batch.run_process();
  (world_id,world_type)= bvpl_batch.commit_output(0);
  app_grid = dbvalue(world_id,world_type);

  print("Creating corner 2d kernel");
  bvpl_batch.init_process("bvplCreateCorner2dKernelVectorProcess");
  bvpl_batch.set_input_unsigned(0, corner_length);  #half length
  bvpl_batch.set_input_unsigned(1, corner_width);  #half width
  bvpl_batch.set_input_unsigned(2, corner_thickness);  #half thickness
  bvpl_batch.set_input_string(3, directions);
  bvpl_batch.run_process();
  (kernel_id,kernel_type)= bvpl_batch.commit_output(0);
  corners_kernel_vector = dbvalue(kernel_id,kernel_type);

  print("Running Kernels");
  bvpl_batch.init_process("bvplSuppressAndCombineProcess");
  bvpl_batch.set_input_from_db(0,app_grid );
  bvpl_batch.set_input_from_db(1,corners_kernel_vector);
  bvpl_batch.set_input_string(2,"bsta_gauss_f1");
  bvpl_batch.set_input_string(3,"negative_gauss_convolution");
  bvpl_batch.set_input_string(4, output_dir + "/KL_gaussf1_response.vox");
  bvpl_batch.set_input_string(5, output_dir + "/KL_gaussf1_id.vox");
예제 #11
0
#!/usr/bin/python
# Script to run find 2d corners on appearance grid
# Author : Isabel Restrepo
#8-31-2009
import bvpl_batch
import time
import sys
import os
#time.sleep(30);
bvpl_batch.register_processes();
bvpl_batch.register_datatypes();

class dbvalue:
  def __init__(self, index, type):
    self.id = index    # unsigned integer
    self.type = type   # string
save_hue = 0;
#data_dir = "/Users/isa/Experiments/CapitolSFM/few_windows"
#output_dir = "/Users/isa/Experiments/CapitolSFM/few_windows/ocp+app/all_directions"
data_dir = sys.argv[1];
output_dir = sys.argv[2];
if not os.path.isdir( output_dir + "/"):
  os.mkdir( output_dir + "/");
print("Load Voxel Grid");
bvpl_batch.init_process("bvxmLoadGridProcess");
bvpl_batch.set_input_string(0, data_dir +"/KL_gaussf1.vox");
bvpl_batch.set_input_string(1,"bsta_gauss_f1");
bvpl_batch.run_process();
(world_id,world_type)= bvpl_batch.commit_output(0);
app_grid = dbvalue(world_id,world_type);