ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

illegal instruction voxel_grid [closed]

asked 2013-06-26 03:19:30 -0500

Josef gravatar image

updated 2014-01-28 17:17:02 -0500

ngrennan gravatar image

Hey,

after a longtime search session I cannot find a solution to this error-message:

"illegal instruction (core dumped)"

I faced this issue during the PCL-Tutorials when I ran

pcd_viewer any_pcd_file.pcd or cloud_viewer or

./voxel_grid

PointCloud before filtering: 460400 data points (x y z).Ungültiger Maschinenbefehl (Speicherabzug geschrieben)

Well, "Ungültiger Maschinenbefehl" is german for illegal instruction....

Original Code:

#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
#include <pcl/filters/voxel_grid.h>

int
main (int argc, char** argv)
{
  sensor_msgs::PointCloud2::Ptr cloud (new sensor_msgs::PointCloud2 ());
  sensor_msgs::PointCloud2::Ptr cloud_filtered (new sensor_msgs::PointCloud2 ());

  // Fill in the cloud data
  pcl::PCDReader reader;
  // Replace the path below with the path where you saved your file
  reader.read ("table_scene_lms400.pcd", *cloud); // Remember to download the file first!

  std::cerr << "PointCloud before filtering: " << cloud->width * cloud->height 
       << " data points (" << pcl::getFieldsList (*cloud) << ").";

  // Create the filtering object
  pcl::VoxelGrid<sensor_msgs::PointCloud2> sor;
  sor.setInputCloud (cloud);
  sor.setLeafSize (0.01f, 0.01f, 0.01f);
  sor.filter (*cloud_filtered);

  std::cerr << "PointCloud after filtering: " << cloud_filtered->width * cloud_filtered->height 
       << " data points (" << pcl::getFieldsList (*cloud_filtered) << ").";

  pcl::PCDWriter writer;
  writer.write ("table_scene_lms400_downsampled.pcd", *cloud_filtered, 
         Eigen::Vector4f::Zero (), Eigen::Quaternionf::Identity (), false);

  return (0);
}

Based on various suggestions I tried to exchange sensor_msgs::PointCloud2 for pcl::PointXYZ without any improvement of the issue.

Any more suggestions?

My System: Ubuntu 12.04 LTS 64 Bit ROS Groovy Intel® Core™2 Duo CPU E6550 @ 2.33GHz × 2 with 4GB RAM

also tested: Ubuntu 12.04 LTS 64 Bit ROS Groovy AMD Phenom(tm) II X4 955 Processor × 3 with 8GB RAM

Recently updated.

Pls HLP! :-)

Update: SSE2 is supported: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm lahf_lm dtherm tpr_shadow vnmi flexpriority

Update: Linux-IPT kernel: [13517.090831] voxelgrid_filte[27699] trap invalid opcode ip:7fa3f70fd2ef sp:7fff2ac179c0 error:0 in libpcl_filters.so.1.6.0[7fa3f6de5000+3d8000]

Update: It is running just fine in a Virtual Box with similar setup and I can also run those examples linked against the stand-alone PCL-Version without ROS on both machines. It seems to be a hardware/driver-related problem and there must be a difference between pcl and pcl_ros...

Update: Finally I mounted the Linux-HDD into a much newer pc-unit with an i5 CPU. Everything works fine.

Still, I would like ROS to be/use more hardware-independent so I would quite appreciate if anybody could light this up to me... Thanks in advance!

edit retag flag offensive reopen merge delete

Closed for the following reason question is not relevant or outdated by tfoote
close date 2015-06-22 01:16:00.034500

Comments

I have exactly the same problem! Did you find some solution?

ZdenekM gravatar image ZdenekM  ( 2014-01-17 01:18:02 -0500 )edit

1 Answer

Sort by » oldest newest most voted
0

answered 2014-03-21 12:40:53 -0500

pinocchio gravatar image

I have the same problem!!!

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2013-06-26 03:19:30 -0500

Seen: 440 times

Last updated: Mar 21 '14