Point Cloud Library (PCL)  1.8.1
internal.h
1 #ifndef PCL_TRACKING_INTERNAL_H_
2 #define PCL_TRACKING_INTERNAL_H_
3 
4 #include <pcl/gpu/containers/device_array.h>
5 #include <pcl/gpu/utils/safe_call.hpp>
6 
7 #include <curand.h>
8 #include <curand_kernel.h>
9 
10 namespace pcl
11 {
12  namespace device
13  {
14 
15  struct float8 { float x, y, z, w, roll, pitch, yaw, weight; };
16  typedef float8 StateType;
17 
18  typedef float4 PointType;
19  typedef uchar4 PixelRGB;
20  typedef float4 NormalType;
21 
22 
23  void
25  DeviceArray<float>& initial_noise_mean, DeviceArray<float>& initial_noise_covariance,
26  const StateType& representative_state,
27  DeviceArray<StateType>& particles);
28 
29  void
31  const DeviceArray2D<PointType>& input, const DeviceArray2D<PixelRGB>& input_color,
32  PtrSz<curandState> rng_states, const DeviceArray<float>& step_noise_covariance,
33  DeviceArray<StateType>& particles,
34  StateType& representative_state, StateType& motion, float motion_ratio );
35 
36  /*
37  void
38  resample (StateXYZ& motion_xyz, StateRPY& motion_rpy, float motion_ratio,
39  int num_particles, PtrSz<StateXYZ>& particles_xyz_, PtrSz<StateRPY>& particles_rpy_, PtrSz<float>& particles_weight_);
40  void
41  weight (const PtrSz<PointType>& input, const PtrSz<PixelRGB>& input_color,
42  const PtrSz<PointType>& ref, const PtrSz<PixelRGB>& ref_color,
43  int num_particles, PtrSz<StateXYZ>& particles_xyz_, PtrSz<StateRPY>& particles_rpy_, PtrSz<float>& particles_weight_);
44  void
45  update (int num_particles, PtrSz<StateXYZ>& particles_xyz_, PtrSz<StateRPY>& particles_rpy_, PtrSz<float>& particles_weight_,
46  StateXYZ& representative_state_xyz, StateRPY& representative_state_rpy,
47  StateXYZ& motion_xyz, StateRPY& motion_rpy);
48  */
49  }
50 }
51 
52 
53 #endif // PCL_TRACKING_INTERNAL_H_
void initParticles(PtrSz< curandState > rng_states, DeviceArray< float > &initial_noise_mean, DeviceArray< float > &initial_noise_covariance, const StateType &representative_state, DeviceArray< StateType > &particles)
DeviceArray2D class
Definition: device_array.h:154
float4 PointType
Definition: internal.hpp:58
DeviceArray class
Definition: device_array.h:57
uchar4 PixelRGB
Definition: internal.h:19
void computeTracking(const DeviceArray2D< PointType > &ref, const DeviceArray2D< PixelRGB > &ref_color, const DeviceArray2D< PointType > &input, const DeviceArray2D< PixelRGB > &input_color, PtrSz< curandState > rng_states, const DeviceArray< float > &step_noise_covariance, DeviceArray< StateType > &particles, StateType &representative_state, StateType &motion, float motion_ratio)
float4 NormalType
Definition: internal.hpp:59
float8 StateType
Definition: internal.h:16