Giter Site home page Giter Site logo

Comments (34)

VisionaryMind avatar VisionaryMind commented on June 2, 2024 1

The entire problem we have had with AGX is that none of the libraries you mention are compiled for CUDA, so there are no accelerations. For example, we were looking at RTAB-Map as a possible solution to create RGB-pointclouds from Livox data, since none of the Livox SLAM solutions offer this capability. That particular project is quite slow on NVIDIA edge devices, so many of us have been trying to compile OpenCV 4.5.1 with CUDA enabled to realize performance gains. I believe that is where the problem is --- your configuration is basic, apart from VTK 7.1 (AGX Jetpack 4.4.1 has VTK 6.3). Also, you have NumPy 1.16.2, but this version presents issues when trying to compile Python 2.7 bindings for OpenCV 4 (CUDA-enabled). In summary, the problem is CUDA. It's probably not there for SLAM enhancement.

From what I can see, we have been misled into believing that NVIDIA AGX CUDA-enabled GPU-computing would provide us with better throughput, but NVIDIA side-steps CUDA altogether. They install it on the edge devices via Jetpack, but OpenCV, PCL, Eigen, etc. are not compiled for CUDA. It has been very confusing for us. It would appear your project, also, does not leverage CUDA / GPU-acceleration and works best with the default libraries.

We will try removing all CUDA-enabled libraries and going back to Jetpack's defaults. Perhaps then this calibration will work. In the meantime, if you could point us in the direction of an effective means to generate RGB-enhanced pointclouds from Livox data, we would be appreciative. That was the entire reason for considering your project. We wish to perform 3D reconstruction for "reality capture", transplanting parts of our time-consuming photogrammetry pipeline. I have seen the CamVox project, but that requires specific hardware. I like the idea of using Livox LOAM to generate dense point clouds and, perhaps, projecting RGB camera data onto those clouds either real time or post-processing. Any ideas you have here would be quite valuable.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024 1

Thank you for the details! Before I was able to read your comment, I was actually able to get Kinect + Livox Avia synchronized on the AGX in parallel. The approach is simple:

  1. Compile a separate catkin workspace for OpenCV 4 + Kinect and launch the driver separately.
  2. Use the second default catkin workspace with ACSC + Livox ROS driver to launch calibration and LiDAR.

Now I can see both Avia LiDAR birdseye and Kinect RGB onscreen. Thank you for all your assistance with these challenges. I will report back once we have had an opportunity to calibrate.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

Hi, is the type of the /livox/lidar topic sensor_msgs/PointCloud2 or Livox customized msg type? The calibration_controller_node takes PointCloud2 msg type;

We currently don't have an AVIA LiDAR at hand, if possible, it is best to send your rosbag(with /rgb/image_raw and /livox/lidar data) to us for debugging, to [email protected], since the posted log info is not sufficient...

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

Could you post more detailed log? It seems like something wrong with the config-path or data_collection.yaml

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

In RViz, I see the /livox/lidar topic as PointCloud2, but I do not believe that is the issue here. This is a Jetson Xavier AGX with Jetpack 4.4, and PCL version is 1.8 while VTK is 6.3 (one of the many oversights with NVIDIA's platform). So I cloned the python-pcl repository and attempted to change the setup.py to address the problem.

Python-PCL is still not installing, but I may be able to get it to work if I remove the following library references:

/usr/bin/ld: cannot find -lvtkexpat-6.3
/usr/bin/ld: cannot find -lvtkfreetype-6.3
/usr/bin/ld: cannot find -lvtkgl2ps-6.3
/usr/bin/ld: cannot find -lvtkhdf5-6.3
/usr/bin/ld: cannot find -lvtkhdf5_hl-6.3
/usr/bin/ld: cannot find -lvtkjpeg-6.3
/usr/bin/ld: cannot find -lvtkjsoncpp-6.3
/usr/bin/ld: cannot find -lvtklibxml2-6.3
/usr/bin/ld: cannot find -lvtkNetCDF-6.3
/usr/bin/ld: cannot find -lvtkNetCDF_cxx-6.3
/usr/bin/ld: cannot find -lvtkoggtheora-6.3
/usr/bin/ld: cannot find -lvtkpng-6.3
/usr/bin/ld: cannot find -lvtkproj4-6.3
/usr/bin/ld: cannot find -lvtksqlite-6.3
/usr/bin/ld: cannot find -lvtktiff-6.3
/usr/bin/ld: cannot find -lvtkzlib-6.3

Are any of those needed by ACSC? If not, I can probably safely remove them, at least for this project.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

Could you post more detailed log? It seems like something wrong with the config-path or data_collection.yaml

Please indicate which log you will need. I don't wish to waste your time until we have confirmed that this is not a dependency problem.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024
  1. python-pcl is needed only in calibration.py and projection_validation.py during calibration procress; It's not required during data collection;
  2. It's best if you can post the entire terminal output, from the begining of launching lidar_camera_calibration.launch till it reports error and deads.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

In RViz, I see the /livox/lidar topic as PointCloud2, but I do not believe that is the issue here. This is a Jetson Xavier AGX with Jetpack 4.4, and PCL version is 1.8 while VTK is 6.3 (one of the many oversights with NVIDIA's platform). So I cloned the python-pcl repository and attempted to change the setup.py to address the problem.

Python-PCL is still not installing, but I may be able to get it to work if I remove the following library references:

/usr/bin/ld: cannot find -lvtkexpat-6.3
/usr/bin/ld: cannot find -lvtkfreetype-6.3
/usr/bin/ld: cannot find -lvtkgl2ps-6.3
/usr/bin/ld: cannot find -lvtkhdf5-6.3
/usr/bin/ld: cannot find -lvtkhdf5_hl-6.3
/usr/bin/ld: cannot find -lvtkjpeg-6.3
/usr/bin/ld: cannot find -lvtkjsoncpp-6.3
/usr/bin/ld: cannot find -lvtklibxml2-6.3
/usr/bin/ld: cannot find -lvtkNetCDF-6.3
/usr/bin/ld: cannot find -lvtkNetCDF_cxx-6.3
/usr/bin/ld: cannot find -lvtkoggtheora-6.3
/usr/bin/ld: cannot find -lvtkpng-6.3
/usr/bin/ld: cannot find -lvtkproj4-6.3
/usr/bin/ld: cannot find -lvtksqlite-6.3
/usr/bin/ld: cannot find -lvtktiff-6.3
/usr/bin/ld: cannot find -lvtkzlib-6.3

Are any of those needed by ACSC? If not, I can probably safely remove them, at least for this project.

The vtk libs are not required, you may try to remove those references and then install python-pcl, if anything goes wrong, please post here and we can disscuss.

And I notice that you are using a AGX, if the dependencies are too complex on an embedded plantform, you may just use the AGX for data collection, and deploy the rest part of the calibration on a PC with the collected data.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

I have spent some time rebuilding dependencies and ensuring everything is installed. I rebuilt VTK 6.3, and python-pcl was finally able to build. Now, I am running the calibration node, and it is still failing immediately. Here is a copy of the entire log file:

calibration log file

[roslaunch][INFO] 2021-01-16 22:06:40,121: Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt [roslaunch][INFO] 2021-01-16 22:06:40,131: Done checking log file disk usage. Usage is <1GB. [roslaunch][INFO] 2021-01-16 22:06:40,132: roslaunch starting with args ['/opt/ros/melodic/bin/roslaunch', 'calibration_data_collection', 'lidar_camera_calibration.launch'] [roslaunch][INFO] 2021-01-16 22:06:40,133: roslaunch env is {'ROS_DISTRO': 'melodic', 'QT4_IM_MODULE': 'xim', 'PKG_CONFIG_PATH': '/home/visionarymind/livox_ws/devel/lib/pkgconfig:/opt/ros/melodic/lib/pkgconfig', 'WINDOWPATH': '2', 'XDG_CURRENT_DESKTOP': 'Unity:Unity7:ubuntu', 'XDG_SESSION_TYPE': 'x11', 'ROSLISP_PACKAGE_DIRECTORIES': '/home/visionarymind/livox_ws/devel/share/common-lisp', 'QT_IM_MODULE': 'ibus', 'LOGNAME': 'visionarymind', 'USER': 'visionarymind', 'PATH': '/opt/ros/melodic/bin:/usr/local/cuda-10.2/bin:/home/visionarymind/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'HOME': '/home/visionarymind', 'CMAKE_PREFIX_PATH': '/home/visionarymind/livox_ws/devel:/opt/ros/melodic', 'DISPLAY': ':1', 'XDG_RUNTIME_DIR': '/run/user/1000', 'LANG': 'en_US.UTF-8', 'MANAGERPID': '9196', 'SHELL': '/bin/bash', 'ROS_LOG_FILENAME': '/home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/roslaunch-visionagx-15293.log', 'XAUTHORITY': '/run/user/1000/gdm/Xauthority', 'JOURNAL_STREAM': '8:54516', 'XDG_DATA_DIRS': '/usr/share/unity:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop', 'MANDATORY_PATH': '/usr/share/gconf/unity.mandatory.path', 'QT_ACCESSIBILITY': '1', 'LD_LIBRARY_PATH': '/home/visionarymind/livox_ws/devel/lib:/opt/ros/melodic/lib:/usr/local/cuda-10.2/lib64', 'GTK_CSD': '0', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'CLUTTER_IM_MODULE': 'xim', 'TEXTDOMAIN': 'im-config', 'GNOME_TERMINAL_SERVICE': ':1.95', 'XMODIFIERS': '@im=ibus', 'ROS_MASTER_URI': 'http://localhost:11311', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'ROS_PYTHON_VERSION': '2', 'INVOCATION_ID': '78e2005b966a4c028fa5cee5ecc3fe7b', 'USERNAME': 'visionarymind', 'XDG_SESSION_DESKTOP': 'unity', 'ROS_VERSION': '1', 'PYTHONPATH': '/home/visionarymind/livox_ws/devel/lib/python2.7/dist-packages:/opt/ros/melodic/lib/python2.7/dist-packages', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'TERM': 'xterm-256color', 'ROS_ROOT': '/opt/ros/melodic/share/ros', 'GDMSESSION': 'unity', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-unity:/etc/xdg', 'ROS_PACKAGE_PATH': '/home/visionarymind/livox_ws/src:/opt/ros/melodic/share', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/opt/ros/melodic/bin/roslaunch', 'GTK_MODULES': 'gail:atk-bridge', 'LD_PRELOAD': 'libgtk3-nocsd.so.0', 'GTK_IM_MODULE': 'ibus', 'DESKTOP_SESSION': 'unity', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'DEFAULTS_PATH': '/usr/share/gconf/unity.default.path', 'VTE_VERSION': '5202', 'OLDPWD': '/home/visionarymind/Downloads', 'SHLVL': '2', 'PWD': '/home/visionarymind/Downloads/python-pcl', 'ROS_ETC_DIR': '/opt/ros/melodic/etc/ros', 'SSH_AGENT_LAUNCHER': 'gnome-keyring', 'COLORTERM': 'truecolor', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/0e5fd198_3e53_4809_81f7_ec6073d110d1'} [roslaunch][INFO] 2021-01-16 22:06:40,133: starting in server mode [roslaunch.parent][INFO] 2021-01-16 22:06:40,134: starting roslaunch parent run [roslaunch][INFO] 2021-01-16 22:06:40,136: loading roscore config file /opt/ros/melodic/etc/ros/roscore.xml [roslaunch][INFO] 2021-01-16 22:06:40,529: Added core node of type [rosout/rosout] in namespace [/] [roslaunch.config][INFO] 2021-01-16 22:06:40,530: loading config file /home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/launch/lidar_camera_calibration.launch [roslaunch][INFO] 2021-01-16 22:06:40,534: Added node of type [calibration_data_collection/lidar_integration_node] in namespace [/] [roslaunch][INFO] 2021-01-16 22:06:40,536: Added node of type [calibration_data_collection/calibration_controller_node.py] in namespace [/] [roslaunch][INFO] 2021-01-16 22:06:40,537: ... selected machine [] for node of type [calibration_data_collection/lidar_integration_node] [roslaunch][INFO] 2021-01-16 22:06:40,537: ... selected machine [] for node of type [calibration_data_collection/calibration_controller_node.py] [roslaunch.pmon][INFO] 2021-01-16 22:06:40,541: start_process_monitor: creating ProcessMonitor [roslaunch.pmon][INFO] 2021-01-16 22:06:40,542: created process monitor <ProcessMonitor(ProcessMonitor-1, initial daemon)> [roslaunch.pmon][INFO] 2021-01-16 22:06:40,543: start_process_monitor: ProcessMonitor started [roslaunch.parent][INFO] 2021-01-16 22:06:40,544: starting parent XML-RPC server [roslaunch.server][INFO] 2021-01-16 22:06:40,544: starting roslaunch XML-RPC server [roslaunch.server][INFO] 2021-01-16 22:06:40,545: waiting for roslaunch XML-RPC server to initialize [xmlrpc][INFO] 2021-01-16 22:06:40,546: XML-RPC server binding to 0.0.0.0:0 [xmlrpc][INFO] 2021-01-16 22:06:40,547: Started XML-RPC server [http://visionagx:42195/] [xmlrpc][INFO] 2021-01-16 22:06:40,547: xml rpc node: starting XML-RPC server [roslaunch][INFO] 2021-01-16 22:06:40,563: started roslaunch server http://visionagx:42195/ [roslaunch.parent][INFO] 2021-01-16 22:06:40,564: ... parent XML-RPC server started [roslaunch][INFO] 2021-01-16 22:06:40,565: master.is_running[http://localhost:11311] [roslaunch][INFO] 2021-01-16 22:06:40,570: master.is_running[http://localhost:11311] [roslaunch][INFO] 2021-01-16 22:06:40,579: ROS_MASTER_URI=http://localhost:11311 [roslaunch][INFO] 2021-01-16 22:06:40,585: setting /roslaunch/uris/host_visionagx__42195' to http://visionagx:42195/ [roslaunch][INFO] 2021-01-16 22:06:40,588: load_parameters starting ... [roslaunch][INFO] 2021-01-16 22:06:40,598: ... load_parameters complete [roslaunch][INFO] 2021-01-16 22:06:40,599: launch_nodes: launching local nodes ... [roslaunch][INFO] 2021-01-16 22:06:40,599: ... preparing to launch node of type [calibration_data_collection/lidar_integration_node] [roslaunch][INFO] 2021-01-16 22:06:40,599: create_node_process: package[calibration_data_collection] type[lidar_integration_node] machine[Machine(name[] env_loader[None] address[localhost] ssh_port[22] user[None] assignable[True] timeout[10.0])] master_uri[http://localhost:11311] [roslaunch][INFO] 2021-01-16 22:06:40,600: process[lidar_integration_node-1]: env[{'ROS_DISTRO': 'melodic', 'QT4_IM_MODULE': 'xim', 'COLORTERM': 'truecolor', 'XDG_CURRENT_DESKTOP': 'Unity:Unity7:ubuntu', 'XDG_SESSION_TYPE': 'x11', 'ROSLISP_PACKAGE_DIRECTORIES': '/home/visionarymind/livox_ws/devel/share/common-lisp', 'QT_IM_MODULE': 'ibus', 'LOGNAME': 'visionarymind', 'USER': 'visionarymind', 'PATH': '/opt/ros/melodic/bin:/usr/local/cuda-10.2/bin:/home/visionarymind/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'HOME': '/home/visionarymind', 'CMAKE_PREFIX_PATH': '/home/visionarymind/livox_ws/devel:/opt/ros/melodic', 'ROS_LOG_FILENAME': '/home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/roslaunch-visionagx-15293.log', 'LANG': 'en_US.UTF-8', 'MANAGERPID': '9196', 'SHELL': '/bin/bash', 'XAUTHORITY': '/run/user/1000/gdm/Xauthority', 'JOURNAL_STREAM': '8:54516', 'DEFAULTS_PATH': '/usr/share/gconf/unity.default.path', 'XDG_DATA_DIRS': '/usr/share/unity:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'MANDATORY_PATH': '/usr/share/gconf/unity.mandatory.path', 'CLUTTER_IM_MODULE': 'xim', 'DISPLAY': ':1', 'GTK_CSD': '0', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'QT_ACCESSIBILITY': '1', 'WINDOWPATH': '2', 'XMODIFIERS': '@im=ibus', 'ROS_ETC_DIR': '/opt/ros/melodic/etc/ros', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'ROS_PYTHON_VERSION': '2', 'INVOCATION_ID': '78e2005b966a4c028fa5cee5ecc3fe7b', 'USERNAME': 'visionarymind', 'XDG_SESSION_DESKTOP': 'unity', 'XDG_RUNTIME_DIR': '/run/user/1000', 'PYTHONPATH': '/home/visionarymind/livox_ws/devel/lib/python2.7/dist-packages:/opt/ros/melodic/lib/python2.7/dist-packages', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'TERM': 'xterm-256color', 'ROS_ROOT': '/opt/ros/melodic/share/ros', 'GDMSESSION': 'unity', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'DESKTOP_SESSION': 'unity', 'PKG_CONFIG_PATH': '/home/visionarymind/livox_ws/devel/lib/pkgconfig:/opt/ros/melodic/lib/pkgconfig', 'ROS_PACKAGE_PATH': '/home/visionarymind/livox_ws/src:/opt/ros/melodic/share', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/opt/ros/melodic/bin/roslaunch', 'GTK_MODULES': 'gail:atk-bridge', 'LD_PRELOAD': 'libgtk3-nocsd.so.0', 'GTK_IM_MODULE': 'ibus', 'LD_LIBRARY_PATH': '/home/visionarymind/livox_ws/devel/lib:/opt/ros/melodic/lib:/usr/local/cuda-10.2/lib64', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-unity:/etc/xdg', 'GNOME_TERMINAL_SERVICE': ':1.95', 'VTE_VERSION': '5202', 'OLDPWD': '/home/visionarymind/Downloads', 'SHLVL': '2', 'PWD': '/home/visionarymind/Downloads/python-pcl', 'ROS_MASTER_URI': 'http://localhost:11311', 'SSH_AGENT_LAUNCHER': 'gnome-keyring', 'ROS_VERSION': '1', 'TEXTDOMAIN': 'im-config', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/0e5fd198_3e53_4809_81f7_ec6073d110d1'}] [roslaunch][INFO] 2021-01-16 22:06:40,759: process[lidar_integration_node-1]: args[[u'/home/visionarymind/livox_ws/devel/lib/calibration_data_collection/lidar_integration_node', '/livox/lidar', u'__name:=lidar_integration_node']] [roslaunch][INFO] 2021-01-16 22:06:40,759: ... created process [lidar_integration_node-1] [roslaunch.pmon][INFO] 2021-01-16 22:06:40,760: ProcessMonitor.register[lidar_integration_node-1] [roslaunch.pmon][INFO] 2021-01-16 22:06:40,760: ProcessMonitor.register[lidar_integration_node-1] complete [roslaunch][INFO] 2021-01-16 22:06:40,760: ... registered process [lidar_integration_node-1] [roslaunch][INFO] 2021-01-16 22:06:40,761: process[lidar_integration_node-1]: starting os process [roslaunch][INFO] 2021-01-16 22:06:40,761: process[lidar_integration_node-1]: start w/ args [[u'/home/visionarymind/livox_ws/devel/lib/calibration_data_collection/lidar_integration_node', '/livox/lidar', u'__name:=lidar_integration_node', u'__log:=/home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/lidar_integration_node-1.log']] [roslaunch][INFO] 2021-01-16 22:06:40,761: process[lidar_integration_node-1]: cwd will be [/home/visionarymind/.ros] [roslaunch][INFO] 2021-01-16 22:06:40,771: process[lidar_integration_node-1]: started with pid [15308] [roslaunch][INFO] 2021-01-16 22:06:40,773: ... successfully launched [lidar_integration_node-1] [roslaunch][INFO] 2021-01-16 22:06:40,774: ... preparing to launch node of type [calibration_data_collection/calibration_controller_node.py] [roslaunch][INFO] 2021-01-16 22:06:40,774: create_node_process: package[calibration_data_collection] type[calibration_controller_node.py] machine[Machine(name[] env_loader[None] address[localhost] ssh_port[22] user[None] assignable[True] timeout[10.0])] master_uri[http://localhost:11311] [roslaunch][INFO] 2021-01-16 22:06:40,775: process[calibration_controller_node-2]: env[{'ROS_DISTRO': 'melodic', 'QT4_IM_MODULE': 'xim', 'COLORTERM': 'truecolor', 'XDG_CURRENT_DESKTOP': 'Unity:Unity7:ubuntu', 'XDG_SESSION_TYPE': 'x11', 'ROSLISP_PACKAGE_DIRECTORIES': '/home/visionarymind/livox_ws/devel/share/common-lisp', 'QT_IM_MODULE': 'ibus', 'LOGNAME': 'visionarymind', 'USER': 'visionarymind', 'PATH': '/opt/ros/melodic/bin:/usr/local/cuda-10.2/bin:/home/visionarymind/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'HOME': '/home/visionarymind', 'CMAKE_PREFIX_PATH': '/home/visionarymind/livox_ws/devel:/opt/ros/melodic', 'ROS_LOG_FILENAME': '/home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/roslaunch-visionagx-15293.log', 'LANG': 'en_US.UTF-8', 'MANAGERPID': '9196', 'SHELL': '/bin/bash', 'XAUTHORITY': '/run/user/1000/gdm/Xauthority', 'JOURNAL_STREAM': '8:54516', 'DEFAULTS_PATH': '/usr/share/gconf/unity.default.path', 'XDG_DATA_DIRS': '/usr/share/unity:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'MANDATORY_PATH': '/usr/share/gconf/unity.mandatory.path', 'CLUTTER_IM_MODULE': 'xim', 'DISPLAY': ':1', 'GTK_CSD': '0', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'QT_ACCESSIBILITY': '1', 'WINDOWPATH': '2', 'XMODIFIERS': '@im=ibus', 'ROS_ETC_DIR': '/opt/ros/melodic/etc/ros', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'ROS_PYTHON_VERSION': '2', 'INVOCATION_ID': '78e2005b966a4c028fa5cee5ecc3fe7b', 'USERNAME': 'visionarymind', 'XDG_SESSION_DESKTOP': 'unity', 'XDG_RUNTIME_DIR': '/run/user/1000', 'PYTHONPATH': '/home/visionarymind/livox_ws/devel/lib/python2.7/dist-packages:/opt/ros/melodic/lib/python2.7/dist-packages', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'TERM': 'xterm-256color', 'ROS_ROOT': '/opt/ros/melodic/share/ros', 'GDMSESSION': 'unity', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'DESKTOP_SESSION': 'unity', 'PKG_CONFIG_PATH': '/home/visionarymind/livox_ws/devel/lib/pkgconfig:/opt/ros/melodic/lib/pkgconfig', 'ROS_PACKAGE_PATH': '/home/visionarymind/livox_ws/src:/opt/ros/melodic/share', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/opt/ros/melodic/bin/roslaunch', 'GTK_MODULES': 'gail:atk-bridge', 'LD_PRELOAD': 'libgtk3-nocsd.so.0', 'GTK_IM_MODULE': 'ibus', 'LD_LIBRARY_PATH': '/home/visionarymind/livox_ws/devel/lib:/opt/ros/melodic/lib:/usr/local/cuda-10.2/lib64', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-unity:/etc/xdg', 'GNOME_TERMINAL_SERVICE': ':1.95', 'VTE_VERSION': '5202', 'OLDPWD': '/home/visionarymind/Downloads', 'SHLVL': '2', 'PWD': '/home/visionarymind/Downloads/python-pcl', 'ROS_MASTER_URI': 'http://localhost:11311', 'SSH_AGENT_LAUNCHER': 'gnome-keyring', 'ROS_VERSION': '1', 'TEXTDOMAIN': 'im-config', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/0e5fd198_3e53_4809_81f7_ec6073d110d1'}] [roslaunch][INFO] 2021-01-16 22:06:40,779: process[calibration_controller_node-2]: args[[u'/home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/scripts/calibration_controller_node.py', '--config-file', '/home/visionarymind/livox_ws/src/ACSC/configs/data_collection.yaml', '--data-saving-path', '/home/visionarymind/Documents/calibration', '--overlap', '50', '--data-tag', '', '--image-topic', '/rgb/image_raw', '--lidar-topic', '/livox/lidar', '--lidar-id', '-1', u'__name:=calibration_controller_node']] [roslaunch][INFO] 2021-01-16 22:06:40,780: ... created process [calibration_controller_node-2] [roslaunch.pmon][INFO] 2021-01-16 22:06:40,780: ProcessMonitor.register[calibration_controller_node-2] [roslaunch.pmon][INFO] 2021-01-16 22:06:40,780: ProcessMonitor.register[calibration_controller_node-2] complete [roslaunch][INFO] 2021-01-16 22:06:40,781: ... registered process [calibration_controller_node-2] [roslaunch][INFO] 2021-01-16 22:06:40,781: process[calibration_controller_node-2]: starting os process [roslaunch][INFO] 2021-01-16 22:06:40,781: process[calibration_controller_node-2]: start w/ args [[u'/home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/scripts/calibration_controller_node.py', '--config-file', '/home/visionarymind/livox_ws/src/ACSC/configs/data_collection.yaml', '--data-saving-path', '/home/visionarymind/Documents/calibration', '--overlap', '50', '--data-tag', '', '--image-topic', '/rgb/image_raw', '--lidar-topic', '/livox/lidar', '--lidar-id', '-1', u'__name:=calibration_controller_node', u'__log:=/home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/calibration_controller_node-2.log']] [roslaunch][INFO] 2021-01-16 22:06:40,781: process[calibration_controller_node-2]: cwd will be [/home/visionarymind/.ros] [roslaunch][INFO] 2021-01-16 22:06:40,791: process[calibration_controller_node-2]: started with pid [15309] [roslaunch][INFO] 2021-01-16 22:06:40,793: ... successfully launched [calibration_controller_node-2] [roslaunch][INFO] 2021-01-16 22:06:40,794: ... launch_nodes complete [roslaunch.pmon][INFO] 2021-01-16 22:06:40,794: registrations completed <ProcessMonitor(ProcessMonitor-1, started daemon 547867623920)> [roslaunch.parent][INFO] 2021-01-16 22:06:40,795: ... roslaunch parent running, waiting for process exit [roslaunch][INFO] 2021-01-16 22:06:40,795: spin [roslaunch][ERROR] 2021-01-16 22:06:42,451: [calibration_controller_node-2] process has died [pid 15309, exit code -11, cmd /home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/scripts/calibration_controller_node.py --config-file /home/visionarymind/livox_ws/src/ACSC/configs/data_collection.yaml --data-saving-path /home/visionarymind/Documents/calibration --overlap 50 --data-tag --image-topic /rgb/image_raw --lidar-topic /livox/lidar --lidar-id -1 __name:=calibration_controller_node __log:=/home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/calibration_controller_node-2.log]. log file: /home/visionarymind/.ros/log/41d59f3a-5879-11eb-aa88-48b02d2b8961/calibration_controller_node-2*.log [roslaunch.pmon][INFO] 2021-01-16 22:06:42,452: ProcessMonitor.unregister[calibration_controller_node-2] starting [roslaunch.pmon][INFO] 2021-01-16 22:06:42,452: ProcessMonitor.unregister[calibration_controller_node-2] complete [roslaunch.pmon][INFO] 2021-01-16 22:07:09,688: ProcessMonitor.shutdown <ProcessMonitor(ProcessMonitor-1, started daemon 547867623920)> [roslaunch.pmon][INFO] 2021-01-16 22:07:09,745: ProcessMonitor._post_run <ProcessMonitor(ProcessMonitor-1, started daemon 547867623920)> [roslaunch.pmon][INFO] 2021-01-16 22:07:09,746: ProcessMonitor._post_run <ProcessMonitor(ProcessMonitor-1, started daemon 547867623920)>: remaining procs are [<roslaunch.nodeprocess.LocalProcess object at 0x7f8f75ab50>] [roslaunch.pmon][INFO] 2021-01-16 22:07:09,749: ProcessMonitor exit: killing lidar_integration_node-1 [roslaunch][INFO] 2021-01-16 22:07:09,750: [lidar_integration_node-1] killing on exit [roslaunch][INFO] 2021-01-16 22:07:09,751: process[lidar_integration_node-1]: killing os process with pid[15308] pgid[15308] [roslaunch][INFO] 2021-01-16 22:07:09,752: [lidar_integration_node-1] sending SIGINT to pgid [15308] [roslaunch][INFO] 2021-01-16 22:07:09,752: [lidar_integration_node-1] sent SIGINT to pgid [15308] [roslaunch][INFO] 2021-01-16 22:07:09,953: process[lidar_integration_node-1]: SIGINT killed with return value 0 [roslaunch.pmon][INFO] 2021-01-16 22:07:09,954: ProcessMonitor exit: cleaning up data structures and signals [roslaunch.pmon][INFO] 2021-01-16 22:07:09,955: ProcessMonitor exit: pmon has shutdown [roslaunch][INFO] 2021-01-16 22:07:10,005: process monitor is done spinning, initiating full shutdown [roslaunch][INFO] 2021-01-16 22:07:10,006: runner.stop() [roslaunch][INFO] 2021-01-16 22:07:10,006: shutting down processing monitor... [roslaunch][INFO] 2021-01-16 22:07:10,007: shutting down processing monitor <ProcessMonitor(ProcessMonitor-1, stopped daemon 547867623920)> [roslaunch.pmon][INFO] 2021-01-16 22:07:10,007: ProcessMonitor.shutdown <ProcessMonitor(ProcessMonitor-1, stopped daemon 547867623920)> [roslaunch][INFO] 2021-01-16 22:07:10,007: ... shutting down processing monitor complete [roslaunch][INFO] 2021-01-16 22:07:10,008: done [roslaunch.pmon][INFO] 2021-01-16 22:07:10,008: ProcessMonitor.shutdown <ProcessMonitor(ProcessMonitor-1, stopped daemon 547867623920)> [rospy.core][INFO] 2021-01-16 22:07:10,009: signal_shutdown [atexit]

I have run rostopic list and verified that both /rgd/image_raw and /livox/lidar toipcs are available. Here is a copy of my data_collection.yaml (nothing was changed from the original):

data_collection.yaml

`# whether use automatic chessboard localization
AUTOMATIC_CHESSBOARD_LOCALIZATION: True

scene size when labeling chessboards

xmin,xmax,ymin,ymax,zmin,zmax

BOUND: [2, 12, -4, 4, -2, 1]

if there is pre-labeled data

RELABEL: False

resolution of displayed point cloud projection, adjust it according to your screen size

VIRTUAL_CAM_INTRINSIC: 100

how many lines of log are displayed on chessboard labeler GUI

LOG_DISPLAY_LINES: 6`

Is there a way to increase verbosity of the log to see why the calibration node is suddenly stopping?

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

I have spent some time rebuilding dependencies and ensuring everything is installed. I rebuilt VTK 6.3, and python-pcl was finally able to build. Now, I am running the calibration node, and it is still failing immediately. Here is a copy of the entire log file:

calibration log file
I have run rostopic list and verified that both /rgd/image_raw and /livox/lidar toipcs are available. Here is a copy of my data_collection.yaml (nothing was changed from the original):

data_collection.yaml
Is there a way to increase verbosity of the log to see why the calibration node is suddenly stopping?
It seems that the lidar_intergation_node was killed by unknown reason, you may try run the calibration_controller_node.py along, by doing the following things:

  1. First, comment line 12~13 in lidar_camera_calibration.launch

    <node pkg="calibration_data_collection" type="lidar_integration_node" name="lidar_integration_node"

  2. Then, change line 22 in lidar_camera_calibration.launch

    to

--lidar-topic $(arg lidar-topic)
  1. Then run the launch file with your own parameter as mentioned in your first post. If the error still exists, please post back the terminal log.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

Thank you. I had already changed lined 22, as I presumed it was a testing artifact. As suggested, it has always been $(arg lidar-topic). In addition, I have just now commented lines 12-13 and rerun the launch file. Here is the terminal log:

Terminal Log

[roslaunch][INFO] 2021-01-17 11:26:31,090: Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt [roslaunch][INFO] 2021-01-17 11:26:31,100: Done checking log file disk usage. Usage is <1GB. [roslaunch][INFO] 2021-01-17 11:26:31,101: roslaunch starting with args ['/opt/ros/melodic/bin/roslaunch', 'calibration_data_collection', 'lidar_camera_calibration.launch'] [roslaunch][INFO] 2021-01-17 11:26:31,102: roslaunch env is {'ROS_DISTRO': 'melodic', 'QT4_IM_MODULE': 'xim', 'PKG_CONFIG_PATH': '/home/visionarymind/livox_ws/devel/lib/pkgconfig:/opt/ros/melodic/lib/pkgconfig', 'WINDOWPATH': '2', 'XDG_CURRENT_DESKTOP': 'Unity:Unity7:ubuntu', 'XDG_SESSION_TYPE': 'x11', 'ROSLISP_PACKAGE_DIRECTORIES': '/home/visionarymind/livox_ws/devel/share/common-lisp', 'QT_IM_MODULE': 'ibus', 'LOGNAME': 'visionarymind', 'USER': 'visionarymind', 'PATH': '/opt/ros/melodic/bin:/usr/local/cuda-10.2/bin:/home/visionarymind/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'HOME': '/home/visionarymind', 'CMAKE_PREFIX_PATH': '/home/visionarymind/livox_ws/devel:/opt/ros/melodic', 'DISPLAY': ':1', 'XDG_RUNTIME_DIR': '/run/user/1000', 'LANG': 'en_US.UTF-8', 'MANAGERPID': '9145', 'SHELL': '/bin/bash', 'ROS_LOG_FILENAME': '/home/visionarymind/.ros/log/0f733c76-58e9-11eb-8460-48b02d2b8961/roslaunch-visionagx-11751.log', 'XAUTHORITY': '/run/user/1000/gdm/Xauthority', 'JOURNAL_STREAM': '8:54515', 'XDG_DATA_DIRS': '/usr/share/unity:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop', 'MANDATORY_PATH': '/usr/share/gconf/unity.mandatory.path', 'QT_ACCESSIBILITY': '1', 'LD_LIBRARY_PATH': '/home/visionarymind/livox_ws/devel/lib:/opt/ros/melodic/lib:/usr/local/cuda-10.2/lib64', 'GTK_CSD': '0', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'CLUTTER_IM_MODULE': 'xim', 'TEXTDOMAIN': 'im-config', 'GNOME_TERMINAL_SERVICE': ':1.94', 'XMODIFIERS': '@im=ibus', 'ROS_MASTER_URI': 'http://localhost:11311', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'ROS_PYTHON_VERSION': '2', 'INVOCATION_ID': 'a002d0d857a14da28d2f098b16ceb2b5', 'USERNAME': 'visionarymind', 'XDG_SESSION_DESKTOP': 'unity', 'ROS_VERSION': '1', 'PYTHONPATH': '/usr/local/lib/python2.7/site-packages:/home/visionarymind/livox_ws/devel/lib/python2.7/dist-packages:/opt/ros/melodic/lib/python2.7/dist-packages', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'TERM': 'xterm-256color', 'ROS_ROOT': '/opt/ros/melodic/share/ros', 'GDMSESSION': 'unity', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-unity:/etc/xdg', 'ROS_PACKAGE_PATH': '/home/visionarymind/livox_ws/src:/opt/ros/melodic/share', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/opt/ros/melodic/bin/roslaunch', 'GTK_MODULES': 'gail:atk-bridge', 'LD_PRELOAD': 'libgtk3-nocsd.so.0', 'GTK_IM_MODULE': 'ibus', 'DESKTOP_SESSION': 'unity', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'DEFAULTS_PATH': '/usr/share/gconf/unity.default.path', 'VTE_VERSION': '5202', 'SHLVL': '2', 'PWD': '/home/visionarymind', 'ROS_ETC_DIR': '/opt/ros/melodic/etc/ros', 'SSH_AGENT_LAUNCHER': 'gnome-keyring', 'COLORTERM': 'truecolor', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/36832597_6c6c_4381_bc47_3ab9eb3ee755'} [roslaunch][INFO] 2021-01-17 11:26:31,102: starting in server mode [roslaunch.parent][INFO] 2021-01-17 11:26:31,103: starting roslaunch parent run [roslaunch][INFO] 2021-01-17 11:26:31,104: loading roscore config file /opt/ros/melodic/etc/ros/roscore.xml [roslaunch][INFO] 2021-01-17 11:26:31,606: Added core node of type [rosout/rosout] in namespace [/] [roslaunch.config][INFO] 2021-01-17 11:26:31,607: loading config file /home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/launch/lidar_camera_calibration.launch [roslaunch][INFO] 2021-01-17 11:26:31,611: Added node of type [calibration_data_collection/calibration_controller_node.py] in namespace [/] [roslaunch][INFO] 2021-01-17 11:26:31,611: ... selected machine [] for node of type [calibration_data_collection/calibration_controller_node.py] [roslaunch.pmon][INFO] 2021-01-17 11:26:31,615: start_process_monitor: creating ProcessMonitor [roslaunch.pmon][INFO] 2021-01-17 11:26:31,615: created process monitor <ProcessMonitor(ProcessMonitor-1, initial daemon)> [roslaunch.pmon][INFO] 2021-01-17 11:26:31,616: start_process_monitor: ProcessMonitor started [roslaunch.parent][INFO] 2021-01-17 11:26:31,616: starting parent XML-RPC server [roslaunch.server][INFO] 2021-01-17 11:26:31,617: starting roslaunch XML-RPC server [roslaunch.server][INFO] 2021-01-17 11:26:31,618: waiting for roslaunch XML-RPC server to initialize [xmlrpc][INFO] 2021-01-17 11:26:31,618: XML-RPC server binding to 0.0.0.0:0 [xmlrpc][INFO] 2021-01-17 11:26:31,619: Started XML-RPC server [http://visionagx:45139/] [xmlrpc][INFO] 2021-01-17 11:26:31,620: xml rpc node: starting XML-RPC server [roslaunch][INFO] 2021-01-17 11:26:31,633: started roslaunch server http://visionagx:45139/ [roslaunch.parent][INFO] 2021-01-17 11:26:31,634: ... parent XML-RPC server started [roslaunch][INFO] 2021-01-17 11:26:31,635: master.is_running[http://localhost:11311] [roslaunch][INFO] 2021-01-17 11:26:31,638: master.is_running[http://localhost:11311] [roslaunch][INFO] 2021-01-17 11:26:31,645: ROS_MASTER_URI=http://localhost:11311 [roslaunch][INFO] 2021-01-17 11:26:31,650: setting /roslaunch/uris/host_visionagx__45139' to http://visionagx:45139/ [roslaunch][INFO] 2021-01-17 11:26:31,653: load_parameters starting ... [roslaunch][INFO] 2021-01-17 11:26:31,660: ... load_parameters complete [roslaunch][INFO] 2021-01-17 11:26:31,661: launch_nodes: launching local nodes ... [roslaunch][INFO] 2021-01-17 11:26:31,661: ... preparing to launch node of type [calibration_data_collection/calibration_controller_node.py] [roslaunch][INFO] 2021-01-17 11:26:31,661: create_node_process: package[calibration_data_collection] type[calibration_controller_node.py] machine[Machine(name[] env_loader[None] address[localhost] ssh_port[22] user[None] assignable[True] timeout[10.0])] master_uri[http://localhost:11311] [roslaunch][INFO] 2021-01-17 11:26:31,662: process[calibration_controller_node-1]: env[{'ROS_DISTRO': 'melodic', 'QT4_IM_MODULE': 'xim', 'COLORTERM': 'truecolor', 'XDG_CURRENT_DESKTOP': 'Unity:Unity7:ubuntu', 'XDG_SESSION_TYPE': 'x11', 'ROSLISP_PACKAGE_DIRECTORIES': '/home/visionarymind/livox_ws/devel/share/common-lisp', 'QT_IM_MODULE': 'ibus', 'LOGNAME': 'visionarymind', 'USER': 'visionarymind', 'PATH': '/opt/ros/melodic/bin:/usr/local/cuda-10.2/bin:/home/visionarymind/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'HOME': '/home/visionarymind', 'CMAKE_PREFIX_PATH': '/home/visionarymind/livox_ws/devel:/opt/ros/melodic', 'ROS_LOG_FILENAME': '/home/visionarymind/.ros/log/0f733c76-58e9-11eb-8460-48b02d2b8961/roslaunch-visionagx-11751.log', 'LANG': 'en_US.UTF-8', 'MANAGERPID': '9145', 'SHELL': '/bin/bash', 'XAUTHORITY': '/run/user/1000/gdm/Xauthority', 'JOURNAL_STREAM': '8:54515', 'DEFAULTS_PATH': '/usr/share/gconf/unity.default.path', 'XDG_DATA_DIRS': '/usr/share/unity:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop', 'LESSCLOSE': '/usr/bin/lesspipe %s %s', 'MANDATORY_PATH': '/usr/share/gconf/unity.mandatory.path', 'CLUTTER_IM_MODULE': 'xim', 'DISPLAY': ':1', 'GTK_CSD': '0', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'QT_ACCESSIBILITY': '1', 'WINDOWPATH': '2', 'XMODIFIERS': '@im=ibus', 'ROS_ETC_DIR': '/opt/ros/melodic/etc/ros', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'ROS_PYTHON_VERSION': '2', 'INVOCATION_ID': 'a002d0d857a14da28d2f098b16ceb2b5', 'USERNAME': 'visionarymind', 'XDG_SESSION_DESKTOP': 'unity', 'XDG_RUNTIME_DIR': '/run/user/1000', 'PYTHONPATH': '/usr/local/lib/python2.7/site-packages:/home/visionarymind/livox_ws/devel/lib/python2.7/dist-packages:/opt/ros/melodic/lib/python2.7/dist-packages', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'TERM': 'xterm-256color', 'ROS_ROOT': '/opt/ros/melodic/share/ros', 'GDMSESSION': 'unity', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'DESKTOP_SESSION': 'unity', 'PKG_CONFIG_PATH': '/home/visionarymind/livox_ws/devel/lib/pkgconfig:/opt/ros/melodic/lib/pkgconfig', 'ROS_PACKAGE_PATH': '/home/visionarymind/livox_ws/src:/opt/ros/melodic/share', 'LESSOPEN': '| /usr/bin/lesspipe %s', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/opt/ros/melodic/bin/roslaunch', 'GTK_MODULES': 'gail:atk-bridge', 'LD_PRELOAD': 'libgtk3-nocsd.so.0', 'GTK_IM_MODULE': 'ibus', 'LD_LIBRARY_PATH': '/home/visionarymind/livox_ws/devel/lib:/opt/ros/melodic/lib:/usr/local/cuda-10.2/lib64', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-unity:/etc/xdg', 'GNOME_TERMINAL_SERVICE': ':1.94', 'VTE_VERSION': '5202', 'SHLVL': '2', 'PWD': '/home/visionarymind', 'ROS_MASTER_URI': 'http://localhost:11311', 'SSH_AGENT_LAUNCHER': 'gnome-keyring', 'ROS_VERSION': '1', 'TEXTDOMAIN': 'im-config', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/36832597_6c6c_4381_bc47_3ab9eb3ee755'}] [roslaunch][INFO] 2021-01-17 11:26:31,846: process[calibration_controller_node-1]: args[[u'/home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/scripts/calibration_controller_node.py', '--config-file', '/home/visionarymind/livox_ws/src/ACSC/configs/data_collection.yaml', '--data-saving-path', '/home/visionarymind/Documents/calibration', '--overlap', '50', '--data-tag', '', '--image-topic', '/rgb/image_raw', '--lidar-topic', '/livox/lidar', '--lidar-id', '-1', u'__name:=calibration_controller_node']] [roslaunch][INFO] 2021-01-17 11:26:31,847: ... created process [calibration_controller_node-1] [roslaunch.pmon][INFO] 2021-01-17 11:26:31,847: ProcessMonitor.register[calibration_controller_node-1] [roslaunch.pmon][INFO] 2021-01-17 11:26:31,847: ProcessMonitor.register[calibration_controller_node-1] complete [roslaunch][INFO] 2021-01-17 11:26:31,848: ... registered process [calibration_controller_node-1] [roslaunch][INFO] 2021-01-17 11:26:31,848: process[calibration_controller_node-1]: starting os process [roslaunch][INFO] 2021-01-17 11:26:31,848: process[calibration_controller_node-1]: start w/ args [[u'/home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/scripts/calibration_controller_node.py', '--config-file', '/home/visionarymind/livox_ws/src/ACSC/configs/data_collection.yaml', '--data-saving-path', '/home/visionarymind/Documents/calibration', '--overlap', '50', '--data-tag', '', '--image-topic', '/rgb/image_raw', '--lidar-topic', '/livox/lidar', '--lidar-id', '-1', u'__name:=calibration_controller_node', u'__log:=/home/visionarymind/.ros/log/0f733c76-58e9-11eb-8460-48b02d2b8961/calibration_controller_node-1.log']] [roslaunch][INFO] 2021-01-17 11:26:31,848: process[calibration_controller_node-1]: cwd will be [/home/visionarymind/.ros] [roslaunch][INFO] 2021-01-17 11:26:31,856: process[calibration_controller_node-1]: started with pid [11766] [roslaunch][INFO] 2021-01-17 11:26:31,857: ... successfully launched [calibration_controller_node-1] [roslaunch][INFO] 2021-01-17 11:26:31,858: ... launch_nodes complete [roslaunch.pmon][INFO] 2021-01-17 11:26:31,858: registrations completed <ProcessMonitor(ProcessMonitor-1, started daemon 548311462384)> [roslaunch.parent][INFO] 2021-01-17 11:26:31,859: ... roslaunch parent running, waiting for process exit [roslaunch][INFO] 2021-01-17 11:26:31,859: spin [roslaunch][ERROR] 2021-01-17 11:26:33,825: [calibration_controller_node-1] process has died [pid 11766, exit code -11, cmd /home/visionarymind/livox_ws/src/ACSC/ros/livox_calibration_ws/src/calibration_data_collection/scripts/calibration_controller_node.py --config-file /home/visionarymind/livox_ws/src/ACSC/configs/data_collection.yaml --data-saving-path /home/visionarymind/Documents/calibration --overlap 50 --data-tag --image-topic /rgb/image_raw --lidar-topic /livox/lidar --lidar-id -1 __name:=calibration_controller_node __log:=/home/visionarymind/.ros/log/0f733c76-58e9-11eb-8460-48b02d2b8961/calibration_controller_node-1.log]. log file: /home/visionarymind/.ros/log/0f733c76-58e9-11eb-8460-48b02d2b8961/calibration_controller_node-1*.log [roslaunch.pmon][INFO] 2021-01-17 11:26:33,826: ProcessMonitor.unregister[calibration_controller_node-1] starting [roslaunch.pmon][INFO] 2021-01-17 11:26:33,827: ProcessMonitor.unregister[calibration_controller_node-1] complete [roslaunch][INFO] 2021-01-17 11:26:33,827: all processes on machine have died, roslaunch will exit [roslaunch.pmon][INFO] 2021-01-17 11:26:33,930: ProcessMonitor._post_run <ProcessMonitor(ProcessMonitor-1, started daemon 548311462384)> [roslaunch.pmon][INFO] 2021-01-17 11:26:33,931: ProcessMonitor._post_run <ProcessMonitor(ProcessMonitor-1, started daemon 548311462384)>: remaining procs are [] [roslaunch.pmon][INFO] 2021-01-17 11:26:33,946: ProcessMonitor exit: cleaning up data structures and signals [roslaunch.pmon][INFO] 2021-01-17 11:26:33,946: ProcessMonitor exit: pmon has shutdown [roslaunch][INFO] 2021-01-17 11:26:33,963: process monitor is done spinning, initiating full shutdown [roslaunch][INFO] 2021-01-17 11:26:33,963: runner.stop() [roslaunch][INFO] 2021-01-17 11:26:33,964: shutting down processing monitor... [roslaunch][INFO] 2021-01-17 11:26:33,964: shutting down processing monitor <ProcessMonitor(ProcessMonitor-1, stopped daemon 548311462384)> [roslaunch.pmon][INFO] 2021-01-17 11:26:33,964: ProcessMonitor.shutdown <ProcessMonitor(ProcessMonitor-1, stopped daemon 548311462384)> [roslaunch][INFO] 2021-01-17 11:26:33,965: ... shutting down processing monitor complete [roslaunch][INFO] 2021-01-17 11:26:33,965: done [roslaunch.pmon][INFO] 2021-01-17 11:26:33,966: ProcessMonitor.shutdown <ProcessMonitor(ProcessMonitor-1, stopped daemon 548311462384)> [rospy.core][INFO] 2021-01-17 11:26:33,966: signal_shutdown [atexit]

The data-root directory is being created successfully, so there are no file-system level issues:
image

However, if I attempt to add the /livox/lidar topic in RViz, see the following error message:
image

Under Global Options > Fixed Frame, livox_frame is not an option, only camera_base, camera_body, camera_visor, depth_camera_link, imu_link, and rgb_camera_link. These are coming from the Azure Kinect. In fact, if I open RViz with only the Livox ROS driver active, only a "map" fixed frame option is available. Azure requires "camera_base" fixed frame and Livox requires "livox_frame", the latter of which will only be active if the launch file has "rviz_enabled" set to true.

For reference here is the livox_lidar.launch (from the ROS driver):

livox_lidar.launch

`

<arg name="lvx_file_path" default="livox_test.lvx"/>
<arg name="bd_list" default="100000000000000"/>
<arg name="xfer_format" default="0"/>
<arg name="multi_topic" default="0"/>
<arg name="data_src" default="0"/>
<arg name="publish_freq" default="10.0"/>
<arg name="output_type" default="0"/>
<arg name="rviz_enable" default="false"/>
<arg name="rosbag_enable" default="false"/>
<arg name="cmdline_arg" default="$(arg bd_list)"/>
<arg name="msg_frame_id" default="livox_frame"/>
<arg name="lidar_bag" default="true"/>
<arg name="imu_bag" default="true"/>

<param name="xfer_format" value="$(arg xfer_format)"/>
<param name="multi_topic" value="$(arg multi_topic)"/>
<param name="data_src" value="$(arg data_src)"/>
<param name="publish_freq" type="double" value="$(arg publish_freq)"/>
<param name="output_data_type" value="$(arg output_type)"/>
<param name="cmdline_str" type="string" value="$(arg bd_list)"/>
<param name="cmdline_file_path" type="string" value="$(arg lvx_file_path)"/>
<param name="user_config_path" type="string" value="$(find livox_ros_driver)/config/livox_lidar_config.json"/>
<param name="frame_id" type="string" value="$(arg msg_frame_id)"/>
<param name="enable_lidar_bag" type="bool" value="$(arg lidar_bag)"/>
<param name="enable_imu_bag" type="bool" value="$(arg imu_bag)"/>

<node name="livox_lidar_publisher" pkg="livox_ros_driver"
      type="livox_ros_driver_node" required="true"
      output="screen" args="$(arg cmdline_arg)"/>

<group if="$(arg rviz_enable)">
	<node name="rviz" pkg="rviz" type="rviz" respawn="true"
			args="-d $(find livox_ros_driver)/config/display_lidar_points.rviz"/>
</group>

<group if="$(arg rosbag_enable)">
	<node pkg="rosbag" type="record" name="record" output="screen"
      		args="-a"/>
</group>

`

You can see it's setting msg_frame_id to livox_frame, but this makes no difference in RViz if RViz isn't enabled in the launch file. I don't know how relevant these details are, but wanted to share.

Also, in the calibration launch file, the data-tag value is blank. Please confirm this will not be a problem.

I'll continue to troubleshoot. Your calibration project is literally the only usable Livox-compatible project in existence. The calibration strategy provided by Livox is very questionable, especially the need to manually tag 10+ photos and 200+ PCD files. I am unsure why they even published their work, as no one is going to do that. Your solution is 1000x better.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

Thanks a lot for your affirmation! There are limited useful information in the log... it will be more efficient for debugging if you may send your rosbag to us, the rosbag needs a short sequence(about 1 minute) of recorded livox LiDAR pointcloud data, and your camera image data, to [email protected];

Since the data-root directory is being created successfully, the error may happen in the callback funtions cb_image, cb_pointcloud, or thread_render_bird_view in calibration_controller_node.py, you may try to debug in these functions and locate where the error is;

And you may try to just run the launch file alone, without publish the sensor data topics, if the node still crashes immediately, then it may be the problem in the UI thread thread_render_bird_view in calibration_controller_node.py, rather than the data processing in those callbacks; however we still suggest sending the rosbag to us;

The data-tag is also empty in our data collection process, so it may not be the reason;

For visualizing livox point cloud in rviz, you need to input the livox_frame manully to the Fixed Frame text box, instead of selecting from the list.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

Yes, that was one of the first tests I tried -- running the launch file without sensor data topics. It dies with or with those topics. I also tried debugging with GDB, but this doesn't work with Python scripts and PDB does not show any issues in the XTERM console. I will follow your advice and try debugging b_image, cb_pointcloud, or thread_render_bird_view in calibration_controller_node.py.

I have a feeling that the issue is in the UI, because these Jetson devices have very non-linear libraries. Jetpack 4.4 has VTK 6.3, for example, and OpenCV 4.1.1 is installed, while ROS Melodic, of course, uses 3.2. So we had to uninstall the OpenCV 3.2 core and compile our Catkin workspace with the components that were broken by doing that. There really is no other way on these edge devices.

This brings up a very good question: I am tired of struggling with AGX, NX, Nano, etc. They have been nothing but a headache. Would you be able to recommend some basic hardware specs that work well with Livox-based SLAM? I am inclined to ship the AGX back to NVIDIA and just procure a laptop with a high-quality GPU.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

In that case, I suggest that you run the data collection and the rest of the calibration process on a PC (the compution requirement of this tool is low, so commonly any PC is able to run this), then use the solved extrinsic parameter in your downstream task on the AGX, since the calibration is an off-line process and it doesn't need to be done frequently, this may be a fesiable solution;

Actually we also use AGX and TX2, and the the Livox-based SLAM algorithms works quite well on these platform... During deployment of these algorithm, the most problematic part are the UI libraries, other essential libraries like PCL, ceres or gtsam compile and work smoothly. If you encounter any problems with deploying these algorithms on Jetson series platform, we would be delighted to discuss.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

We just tested this tool on an AGX, and it works normally, the dependencies are list bellow if any help:

System:
Ubuntu 18.04

ROS version
ROS Melodic

C++ Libraries
PCL 1.8.1
VTK 7.1
Eigen 3.3.4

Python Libraries
actionlib 1.12.1
angles 1.9.12
asn1crypto 0.24.0
attrs 17.4.0
autobahn 17.10.1
Automat 0.6.0
backports.functools-lru-cache 1.4
bondpy 1.8.5
bzr 2.8.0.dev1
camera-calibration 1.15.0
camera-calibration-parsers 1.11.13
catkin 0.7.28
catkin-pkg 0.4.23
catkin-pkg-modules 0.4.23
cbor 1.0.0
chardet 3.0.4
click 6.7
colorama 0.3.7
configobj 5.0.6
constantly 15.1.0
controller-manager 0.18.2
controller-manager-msgs 0.18.2
cryptography 2.1.4
cv-bridge 1.13.0
cycler 0.10.0
Cython 0.26.1
decorator 4.1.2
defusedxml 0.5.0
diagnostic-analysis 1.9.7
diagnostic-common-diagnostics 1.9.7
diagnostic-updater 1.9.7
docutils 0.14
dynamic-reconfigure 1.6.3
empy 3.3.2
enum34 1.1.6
filelock 3.0.12
funcsigs 1.0.2
futures 3.2.0
gazebo-plugins 2.8.7
gazebo-ros 2.8.7
gencpp 0.6.5
geneus 2.2.6
genlisp 0.4.16
genmsg 0.5.16
gennodejs 2.0.1
genpy 0.6.14
gevent 20.9.0
gps 3.17
graphsurgeon 0.4.5
greenlet 0.4.17
h5py 2.10.0
httplib2 0.9.2
hyperlink 17.3.1
idna 2.6
image-geometry 1.13.0
incremental 16.10.1
interactive-markers 1.11.5
ipaddress 1.0.17
Jetson.GPIO 2.0.11
joint-state-publisher 1.12.15
kdl-parser-py 1.13.1
keyring 10.6.0
keyrings.alt 3.0
laser-geometry 1.6.5
launchpadlib 1.10.6
lazr.restfulclient 0.13.5
lazr.uri 1.0.3
lz4 0.10.1
matplotlib 2.1.1
mercurial 4.5.3
message-filters 1.14.9
mock 4.0.3
mpi4py 2.0.0
netifaces 0.10.4
nose 1.3.7
numpy 1.16.6
oauth 1.0.1
olefile 0.45.1
PAM 0.4.2
paramiko 2.0.0
Pillow 5.1.0
pip 20.3.3
pipupgrade 1.7.4
pluggy 0.6.0
psutil 5.4.2
py 1.5.2
py-ubjson 0.8.5
pyasn1 0.4.2
pyasn1-modules 0.2.1
pycairo 1.16.2
pycrypto 2.6.1
pycryptodomex 3.4.7
pydot 1.2.3
pygame 2.0.0
Pygments 2.2.0
pygobject 3.26.1
PyNaCl 1.1.2
PyOpenGL 3.1.0
pyOpenSSL 17.5.0
pyparsing 2.2.0
pyserial 3.4
pytest 3.3.2
python-dateutil 2.6.1
python-gnupg 0.4.1
python-pcl 0.3.0rc1
python-qt-binding 0.4.3
python-snappy 0.5
PyTrie 0.2
pytz 2018.3
pyxdg 0.25
PyYAML 5.1
qrcode 5.3
qt-dotgraph 0.4.2
qt-gui 0.4.2
qt-gui-cpp 0.4.2
qt-gui-py-common 0.4.2
resource-retriever 1.12.6
roman 2.0.0
ros-numpy 0.0.4
rosbag 1.14.9
rosboost-cfg 1.14.9
rosclean 1.14.9
roscreate 1.14.9
rosdep 0.19.0
rosdep-modules 0.19.0
rosdistro 0.8.3
rosdistro-modules 0.8.3
rosgraph 1.14.9
rosinstall 0.7.8
rosinstall-generator 0.1.22
roslaunch 1.14.9
roslib 1.14.9
roslint 0.11.2
roslz4 1.14.9
rosmake 1.14.9
rosmaster 1.14.9
rosmsg 1.14.9
rosnode 1.14.9
rosparam 1.14.9
rospkg 1.2.8
rospkg-modules 1.2.8
rospy 1.14.9
rospy-message-converter 0.5.3
rosservice 1.14.9
rostest 1.14.9
rostopic 1.14.9
rosunit 1.14.9
roswtf 1.14.9
rqt-action 0.4.9
rqt-bag 0.4.14
rqt-bag-plugins 0.4.14
rqt-console 0.4.9
rqt-dep 0.4.9
rqt-graph 0.4.11
rqt-gui 0.5.2
rqt-gui-py 0.5.2
rqt-image-view 0.4.16
rqt-launch 0.4.8
rqt-logger-level 0.4.8
rqt-moveit 0.5.7
rqt-msg 0.4.8
rqt-nav-view 0.5.7
rqt-plot 0.4.9
rqt-pose-view 0.5.8
rqt-publisher 0.4.8
rqt-py-common 0.5.2
rqt-py-console 0.4.8
rqt-reconfigure 0.5.3
rqt-robot-dashboard 0.5.7
rqt-robot-monitor 0.5.13
rqt-robot-steering 0.5.10
rqt-runtime-monitor 0.5.7
rqt-rviz 0.6.0
rqt-service-caller 0.4.8
rqt-shell 0.4.9
rqt-srv 0.4.8
rqt-tf-tree 0.6.0
rqt-top 0.4.8
rqt-topic 0.4.11
rqt-web 0.4.8
rviz 1.13.13
scikit-learn 0.20.4
scipy 0.19.1
SecretStorage 2.3.1
segmentation-ext 0.0.1
sensor-msgs 1.12.7
service-identity 16.0.0
setuptools 44.1.1
simplejson 3.13.2
six 1.11.0
sklearn 0.0
smach 2.0.1
smach-ros 2.0.1
smclib 1.8.5
subprocess32 3.2.7
tensorrt 7.1.3.0
termcolor 1.1.0
tf 1.12.1
tf-conversions 1.12.1
tf2-geometry-msgs 0.6.5
tf2-kdl 0.6.5
tf2-py 0.6.5
tf2-ros 0.6.5
topic-tools 1.14.9
traits 5.2.0
transforms3d 0.3.1
trollius 2.0.1
Twisted 17.9.0
txaio 2.8.1
u-msgpack-python 2.1
uff 0.6.9
unity-lens-photos 1.0
urdfdom-py 0.4.3
urwid 2.0.1
vcstools 0.1.42
wadllib 1.3.2
websocket 0.2.1
websocket-client 0.57.0
wheel 0.30.0
wsaccel 0.6.2
wstool 0.1.17
wxPython 3.0.2.0
wxPython-common 3.0.2.0
xacro 1.13.8
zope.event 4.5.0
zope.interface 4.3.2

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

I have confirmed that the problem was the ROS catkin workspace compiled for OpenCV 4.5.1. This compilation is necessary for the Azure Kinect ROS driver, which has an OpenCV 4 dependency. The default ROS Melodic workspace, instead, uses OpenCV 3.2. With a new workspace using these defaults, we are able to run launch the calibration node. But what this does mean is that Azure Kinect cannot be calibrated with ACSC, at least not until you provide an upgrade to support ROS Noetic (which uses OpenCV 4). This appears to be a problem for many Livox-based tools, now. For example, the Livox SDK has a hard dependency on ROS Melodic.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

There are 3 feasible solutions for calibrating your Azure Kinect and Horizon LiDAR:

  1. As I mentioned here, record the calibration data (including /livox/lidar point cloud topics and your Kinect image topics) to rosbags, then play the bags back and run the data collection and the rest of the calibration process, on another PC with normal library dependencies, then use the solved extrinsic parameter in any of your downstream tasks on the AGX;
  2. Use the distributed communication feature of ROS, first config your environment according to this, run roscore, livox driver, and kinect driver on your AGX, and run ACSC on another PC(with the right libraries dependencies) in the same local network. As long as the PC can receive data topics from your AGX through network, the calibration can be done successfully;
  3. This will need a little bit of changes of the codes, which is to implement your own data collection node, just change the data recording triger in thread_render_bird_view of calibration_controller_node.py, from GUI-triggered to other ways, such as triggered by input from command line, and then disable the UI display(remove all the cv2.imshow(***) and cv2.waitKey***).

Notice that, the calibration is a offline process, it does not required to be performed frequently as long as your sensor placement is fixed for a period of time, so there is realy no need to spend a lot of time to solve dependency problems and make this tool run on a specific platform...

For fusing Livox point clous with RGB information, you may check out implementation in projection_validation.py, we provide utility functions for projecting pointclouds to image and re-project the RGB information back to point clouds, with the solved extrinsic and intrinsic parameters. Issue #6 also provides some explanation.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

Testing was not successful. The birdseye and image views displayed correctly, but the main calibration window on AGX did not respond to keystroke or mouse wheel. Pressing Enter did not do anything. So we had to build a Linux VM with all the necessary libraries, including VTK 7.1, in order to run calibration offline.

Nonetheless, ACSC did not recognize any corners in our checkerboard. A total of 24 image / PCD pairs were captured using printout of the checkerboard image you have provided. Varying distances were used between 4 and 6 meters. Unfortunately, the mandate to maintain more than 3m distance of obstacles from board could not be met, as I do not have this kind of space, and it is functionally impossible to go outdoors in my region at the moment.

Both images and PCDs (npys) were captured without a problem, however upon running calibration, corners are not recognized on any of the pairs. Here are the Azure Kinect's intrinsics and distortion at 3072p:

Intrinsics 1959.37890625 0.0 2044.2911376953125 0.0 1958.880126953125 1565.8837890625 0.0 0.0 1.0

distortion 0.802890 0.395351 -0.000014 0.000030 0.022780

And our chessboard section in the sample.yaml:

chessboard: # chessboard size info # w: number of CORNERS along the long-side # h: number of CORNERS along the short-side # grid_size: chessboard grid size(in meters) W: 7 H: 5 GRID_SIZE: 0.47 # GRID_SIZE: 0.15

We measured the longest edge of the checkerboard, which was 18.5 inches (i.e. .4699m). Nonetheless, this is the result:

Calibration Log

`Localization done. min cost=55.8592336187
Localization done. min cost=10.178533994
Intensity pivot: 10.0404456232
Intensity pivot: 41.000875996
Re-sample time: 0.118236064911s
Points after voxelize: 6398
Re-sample time: 0.209383964539s
Points after voxelize: 18836

Optimized loss: 781.475127274
Localization done. min cost=51.6079399264
WARNING: Points Not Enough !!!

Optimized loss: 730.928944589
Localization done. min cost=14.1353325186
Intensity pivot: 10.2510857919
Re-sample time: 0.0490291118622s
Points after voxelize: 5035

Optimized loss: 603.050610815
ERROR: Corners not found!!!
Localization done. min cost=40.5475952298
Intensity pivot: 72.1612027336
Re-sample time: 0.0190761089325s
Points after voxelize: 9340
Localization done. min cost=30.4411964749

Optimized loss: 453.279894444
Intensity pivot: 27.0251819505
Re-sample time: 0.041023015976s
Points after voxelize: 6593
Localization done. min cost=43.9972301021
Intensity pivot: 43.3091951721
Re-sample time: 0.00413513183594s
Points after voxelize: 1702

Optimized loss: 681.950046558

Optimized loss: 795.501110147
Localization done. min cost=34.0346501301
Intensity pivot: 43.1110122775
Re-sample time: 0.00433897972107s
Points after voxelize: 1726

Optimized loss: 692.833137561
ERROR: Corners not found!!!
ERROR: Corners not found!!!
ERROR: Corners not found!!!
Localization done. min cost=14.3113585028
Intensity pivot: 17.6530920745
Re-sample time: 0.0417611598969s
Points after voxelize: 5309

Optimized loss: 775.933379761
Localization done. min cost=65.7332288373
Intensity pivot: 45.1897914346
Re-sample time: 0.00971817970276s
Points after voxelize: 4805

Optimized loss: 227.642919602
Localization done. min cost=33.7667126256
Intensity pivot: 47.5407822368
Localization done. min cost=50.277045274
Re-sample time: 0.0253100395203s
Points after voxelize: 2486
Intensity pivot: 51.9327677586
Re-sample time: 0.0036780834198s
Points after voxelize: 1940

Optimized loss: 755.425766099

Optimized loss: 297.847730132
ERROR: Corners not found!!!
Localization done. min cost=24.6077278241
Intensity pivot: 115.581989189
Re-sample time: 0.0390009880066s
Points after voxelize: 3615

Optimized loss: 495.280161899
Localization done. min cost=47.5966920455
Intensity pivot: 62.6121555499
Re-sample time: 0.031594991684s
Points after voxelize: 9606

Optimized loss: 321.278684472
Localization done. min cost=15.9837634575
Intensity pivot: 24.1029438488
Re-sample time: 0.0366041660309s
Points after voxelize: 5250
Localization done. min cost=37.0468064849
Intensity pivot: 42.4571944681
Re-sample time: 0.00484704971313s
Points after voxelize: 1708

Optimized loss: 1031.14555376

Optimized loss: 685.531473613
ERROR: Corners not found!!!
Localization done. min cost=28.8470507985
Intensity pivot: 64.9937999024
Re-sample time: 0.0196590423584s
Points after voxelize: 8093
Localization done. min cost=29.6479823159
Intensity pivot: 54.1070969066
Re-sample time: 0.00485014915466s
Points after voxelize: 1212

Optimized loss: 403.712808516

Optimized loss: 445.822754019
Localization done. min cost=58.11961522
Intensity pivot: 38.875771999
Re-sample time: 0.0114059448242s
Points after voxelize: 4467
ERROR: Corners not found!!!

Optimized loss: 279.453232926
Localization done. min cost=48.3089567025
Intensity pivot: 61.7605935309
Re-sample time: 0.0335760116577s
Points after voxelize: 9788

Optimized loss: 333.487644462
Localization done. min cost=30.637448498
Intensity pivot: 47.5027636741
Re-sample time: 0.0192580223083s
Points after voxelize: 2236

Optimized loss: 772.225411781
Localization done. min cost=54.2682940153
Intensity pivot: 41.3193980216
Re-sample time: 0.018602848053s
Points after voxelize: 1479

Optimized loss: 960.135494077
Localization done. min cost=48.6780519437
Intensity pivot: 73.726770142
Re-sample time: 0.019868850708s
Points after voxelize: 3644

Optimized loss: 361.263561029
Localization done. min cost=43.6299839215
Intensity pivot: 69.2275009676
Re-sample time: 0.0116610527039s
Points after voxelize: 9034

Optimized loss: 383.640166802

Calculating frame: 0 / 24
Missing 3D corners, skip this pair

Calculating frame: 1 / 24
Missing 3D corners, skip this pair

Calculating frame: 2 / 24
Missing 3D corners, skip this pair

Calculating frame: 3 / 24
Missing 3D corners, skip this pair

Calculating frame: 4 / 24
Missing 3D corners, skip this pair

Calculating frame: 5 / 24
Missing 3D corners, skip this pair

Calculating frame: 6 / 24
Missing 3D corners, skip this pair

Calculating frame: 7 / 24
Missing 3D corners, skip this pair

Calculating frame: 8 / 24
Missing 3D corners, skip this pair

Calculating frame: 9 / 24
Missing 3D corners, skip this pair

Calculating frame: 10 / 24
Missing 3D corners, skip this pair

Calculating frame: 11 / 24
Missing 3D corners, skip this pair

Calculating frame: 12 / 24
Missing 3D corners, skip this pair

Calculating frame: 13 / 24
Missing 3D corners, skip this pair

Calculating frame: 14 / 24
Missing 3D corners, skip this pair

Calculating frame: 15 / 24
Missing 3D corners, skip this pair

Calculating frame: 16 / 24
Missing 3D corners, skip this pair

Calculating frame: 17 / 24
Missing 3D corners, skip this pair

Calculating frame: 18 / 24
Missing 3D corners, skip this pair

Calculating frame: 19 / 24
Missing 3D corners, skip this pair

Calculating frame: 20 / 24
Missing 3D corners, skip this pair

Calculating frame: 21 / 24
Missing 3D corners, skip this pair

Calculating frame: 22 / 24
Missing 3D corners, skip this pair

Calculating frame: 23 / 24
Missing 3D corners, skip this pair
0 24 24
Traceback (most recent call last):
File "calibration.py", line 943, in
calibration(keep_list=None)
File "calibration.py", line 908, in calibration
corners_world_list = np.row_stack(corners_world_list)
File "/home/visionarymind/.local/lib/python2.7/site-packages/numpy/core/shape_base.py", line 283, in vstack
return _nx.concatenate([atleast_2d(_m) for _m in tup], 0)
ValueError: need at least one array to concatenate
visionarymind@ubuntu:/livox_ws/src/ACSC$ python calibration.py --config ./configs/sample.yaml^C
visionarymind@ubuntu:
/livox_ws/src/ACSC$ python calibration.py --config ./configs/sample.yaml > log.txtg
^CTraceback (most recent call last):
File "calibration.py", line 943, in
calibration(keep_list=None)
File "calibration.py", line 818, in calibration
full_pc = np.load(pc_file)
File "/home/visionarymind/.local/lib/python2.7/site-packages/numpy/lib/npyio.py", line 447, in load
pickle_kwargs=pickle_kwargs)
File "/home/visionarymind/.local/lib/python2.7/site-packages/numpy/lib/format.py", line 712, in read_array
array = numpy.fromfile(fp, dtype=dtype, count=count)
KeyboardInterrupt
`

If I turn on visualization, I receive multiple "mayavi not found, skip visualize" messages, and then 3-4 full screen windows appear that are not resizable. They do not respond to key controls, but was able to right-click on one of them and save the result:

image

So it's clear corners are being recognized in at least a few of the photos. I am unable to view the NPY files, as they appear to be in a proprietary format. Visualizing them would be useful in pinpointing where the problem is here.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

Hi, the placement of the checkerboard is wrong, it is required to be placed on a thin monopod, or to be suspended in the air with a thin wire. It shouldn't be sticked to any surface larger than the checkerboard itself (as yours), or the checkerboard localization process from point clouds won't get right result (That's why the log constantly outputs 'Missing 3D Corners').

Please read the section of checkerboard preparation in README carefully.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

The red-highlighted part of your calibration board should be removed:
image

And the mounting and placement of the checkerboard, and the surrounding environment should be like this:
image

image

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

Thank you for the clarification. It is unfortunate that ACSC is not usable in smaller studio environments. It appears to depend on large rooms such as those found in universities or larger labs. We don't have access to such a room. Further, the instructions in the README were somewhat misleading, specifically:

There are not supposed to be extra white borders around the checkerboard;

You should re-phrase that to indicate "there should be no borders of any color around the checkerboard". The presumption was that borders of other colors would not be a problem, especially since the Livox SDK's camera calibration provides sample data such as this:
image

Hopefully, removing those borders will yield results, though given your sample, it does not appear we can use your tool, as we do not have as much space in our environment as you do.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

Thank you for the clarification. It is unfortunate that ACSC is not usable in smaller studio environments. It appears to depend on large rooms such as those found in universities or larger labs. We don't have access to such a room. Further, the instructions in the README were somewhat misleading, specifically:

There are not supposed to be extra white borders around the checkerboard;

You should re-phrase that to indicate "there should be no borders of any color around the checkerboard". The presumption was that borders of other colors would not be a problem, especially since the Livox SDK's camera calibration provides sample data such as this:
image

Hopefully, removing those borders will yield results, though given your sample, it does not appear we can use your tool, as we do not have as much space in our environment as you do.

Ok, thanks for your correction, we'll update the documentation later.

As for the space needed for calibration, I think you may try to calibrate outdoor or in a large public space... because the ranging performance of Livox Horizon itself is poor at close distance, a rather large distance between the LiDAR and the calibration target is beneficial for the calibration result.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

We have created another calibration board, this time with no borders, as discussed. ACSC fails to recognize 3D corners for all 18 pairs, without exception. Is there no way to verify the quality of the captured PCDs?

I believe that may be where the problem is arising, but without a format that can be used for troubleshooting, we are left guessing if there is an issue with Livox. During capture, the monopod was visible in every single frame for both the Livox and the RGB camera. Distance used was between 4 and 8 meters. There should not be any detection issues with the Avia.

Here is a single-frame capture of the calibration board:

image

And here is the RGB image from the same position:

image

Any additional guidance you could provide for troubleshooting this would be much appreciated. Looking at the NPY output, for example, would confirm the data stream, itself, isn't a problem. We are unable to take the registration outside due to dangerous conditions in ambient air in our region currently. We are confined to this space.

Also, given that we have used your calibration checkerboard image, please confirm that its full printed grid size is .47m, as we have in our sample.yaml. In your instructions, you mention "length in meters of the grid's side", but this is slightly ambiguous. Side in this case is taken to mean the left or right edges, which are the long side. Again, here are our settings:

chessboard:
# chessboard size info
# w: number of CORNERS along the long-side
# h: number of CORNERS along the short-side
# grid_size: chessboard grid size(in meters)
W: 7
H: 5
GRID_SIZE: 0.47
# GRID_SIZE: 0.15

It is non-intuitive to list a width of 7 when, in fact, it is 5, but your comments clearly state that W will always be the long-side. Could settings these incorrectly cause issues with 3D corner detection? It does not seem to affect RGB corners.

If the mirror or objects in the background are confusing the detection algorithm, I can put a black or green muslin in front of them. I didn't look at the code in detail, so I don't know if that would help. The only other thing I can think of is that we taped the sections of the checkerboard onto a cardboard backing, and the LiDAR may be reflecting off the tape surface in some areas (on the right of the grid for example).

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

The GRID_SIZE parameter in the config file, should be the side length of a single little white / black square, in our case, it is 0.08 m. Sorry for the misunderstanding caused by our English expression, you are welcome to commit pull requsts and help improve the documentation~
image

Your calibration environment seems feasible. It will be better if you don’t let that door block the FOV on both sides of the LiDAR, because in the calibration process, in order to ensure the performance, the sampled positions of the calibration board should be as full as possible with the FOV of the LiDAR and the camera.

from acsc.

Simpleforever avatar Simpleforever commented on June 2, 2024

您好,我注意到您这边提到了在Xavier AGX上安装环境并且运行ACSC。最近我也在这个设备上配置环境,按照您提供的依赖以及该链接中的方法成功安装了VTK7.1以及PCL 1.8。但是在我安装python-pcl时,编译出现了错误,即运行python setup.py build_ext -i时,出现以下错误。请问您知道可能是什么原因吗?环境是Ubuntu 18.04。
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkalglib-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkChartsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonComputationalGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonDataModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonExecutionModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMisc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonSystem-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonTransforms-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDICOMParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDomainsChemistry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexoIIc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexpat-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersExtraction-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersFlowPaths-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneric-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHyperTree-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersModeling-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallelImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersProgrammable-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSelection-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSMP-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersTexture-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersVerdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkfreetype-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkGeovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkgl2ps-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5_hl-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingFourier-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMorphological-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStencil-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisLayout-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionStyle-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionWidgets-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOEnSight-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExodus-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLegacy-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLSDyna-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMINC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMovie-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIONetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallelXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOPLY-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOSQL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOVideo-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXMLParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjpeg-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjsoncpp-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtklibxml2-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkmetaio-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkNetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkoggtheora-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkParallelCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkpng-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkproj4-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingAnnotation-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContextOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingFreeType-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingGL2PS-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLabel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLIC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLOD-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolume-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolumeOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksqlite-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksys-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtktiff-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkverdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkzlib-7.0
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

您好,我注意到您这边提到了在Xavier AGX上安装环境并且运行ACSC。最近我也在这个设备上配置环境,按照您提供的依赖以及该链接中的方法成功安装了VTK7.1以及PCL 1.8。但是在我安装python-pcl时,编译出现了错误,即运行python setup.py build_ext -i时,出现以下错误。请问您知道可能是什么原因吗?环境是Ubuntu 18.04。
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkalglib-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkChartsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonComputationalGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonDataModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonExecutionModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMisc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonSystem-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonTransforms-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDICOMParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDomainsChemistry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexoIIc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexpat-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersExtraction-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersFlowPaths-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneric-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHyperTree-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersModeling-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallelImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersProgrammable-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSelection-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSMP-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersTexture-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersVerdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkfreetype-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkGeovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkgl2ps-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5_hl-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingFourier-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMorphological-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStencil-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisLayout-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionStyle-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionWidgets-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOEnSight-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExodus-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLegacy-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLSDyna-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMINC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMovie-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIONetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallelXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOPLY-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOSQL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOVideo-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXMLParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjpeg-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjsoncpp-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtklibxml2-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkmetaio-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkNetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkoggtheora-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkParallelCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkpng-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkproj4-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingAnnotation-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContextOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingFreeType-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingGL2PS-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLabel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLIC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLOD-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolume-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolumeOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksqlite-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksys-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtktiff-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkverdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkzlib-7.0
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1

您好,这个问题是由于python-pcl默认写在setup.py中的vtk路径和您本机安装vtk的路径不一致造成的, 请参考我文章中问题情况2或者问题情况3的解决方案, https://zhuanlan.zhihu.com/p/336875349

如果还有问题请在issue里更新,我会及时跟进

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

We have finally been able to achieve what appears to be a reasonably accurate calibration result. Only 14 of the 24 pairs were recognized, but the projection validation is showing this:

image

The first question is -- why is the image color space being converted? I looked at the Python script, and I don't see methods invoked that would change that (e.g. cvtColor). The original image coming from the K4A is raw BGRA.

Unfortunately, we are unable to visualize a colored pointcloud, because python-pcl is no longer supported (authors have left the project), and it does not work with Python 3. We have installed python-pcl for Python 2.7, however Mayavi does not support Python <3.

If possible, could you share your Mayavi, traits, pyface, etc. versions. I did not see them in the dependency list you provided above on your AGX. I have been attempting to install them separately directly from enthought repositories, however even earlier versions have Python syntax issues.

In the meantime, I will attempt to modify your code to output the colored pointcloud to a PCD directly. If you have any sample code to get us started, this would be helpful!

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

The entire day has been spent trying to derive useful data from the Livox Avia. After conferring with another colleague, it would appear that these LiDARs are not capable of producing data usable by any other platform, given their proprietary ROS driver / SDK and absence of supporting software. For example, /livox/lidar custom messages may be broadcast and received by ROS subscribers, but even with the ACSC-derived extrinsics, those messages may not be converted into pointcloud files that can be read by CloudCompare, Meshlab, or any other major software that consumes pointcloud data. I presume that is why you chose to stream the data into NumPy arrays. It is the only way to make sense of otherwise non-standard data streams.

We were able to use your img_to_pc script to provide the Python PCL library with data in the XYZRGBA format, however as mentioned above, color is distorted in some way by ACSC algorithms. For example, here is the original photo::

image

And here is the image projected onto the point cloud using your script:

image

Mayavi is proprietary and only for visualiation. We need a standarized, portable solution. Converting NumPy to PCD is not a viable method to generate a colored pointcloud, as a single frame takes ~60 seconds, given the need to convert the NumPy array's RGBA into a np.float32. We have attempted to try other methods to achieve a satisfactory result, but no solutions have been found. For example, using ACSC extrincis, we applied them to the Livox SDK lidar-camera calibration tool, and it was able to successfully project an image to a poincloud from our original scene through the double doors:

image

This is a very good result, considering the low-light environment at night. Unfortunately, this is an RViz snapshot. Nothing can be done from here to take this pointcloud offline. We modified the original code to include timestamps in the headers and then recorded those to PCD files using the pointcloud_to_pcd tool. Those PCDs were then merged into a consolidated file and the pcl_pcd2ply tool was used to convert the integrated file into a binary PLY.

Ultimately, neither the PCD nor the PLY may be consumed by CloudCompare or Meshlab. Meshlab complains:

image

After clicking OK, the screen is blank (no points). In CloudCompare, both the PCD and the PLY are loaded without a problem, but again -- no points are displayed. I understand these are not problem specifically related to your tool, but I wanted to make sure you know that even with the extrinsic data in hand, calibration of these solid-state LiDARs with RGB cameras appears to be a fruitless endeavor, as there is no apparent way to harvest their output.

We were hopeful that Livox LiDAR could be used for the generation of RGB-enhanced point-clouds that are faithful to the original RGB stream. It is disappointing to find that this is not possible --- at least not yet. Hopefully, Livoxtech will address these problems in the future, and we can use tools in our pipeline.

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

We have finally been able to achieve what appears to be a reasonably accurate calibration result. Only 14 of the 24 pairs were recognized, but the projection validation is showing this:

image

The first question is -- why is the image color space being converted? I looked at the Python script, and I don't see methods invoked that would change that (e.g. cvtColor). The original image coming from the K4A is raw BGRA.

Unfortunately, we are unable to visualize a colored pointcloud, because python-pcl is no longer supported (authors have left the project), and it does not work with Python 3. We have installed python-pcl for Python 2.7, however Mayavi does not support Python <3.

If possible, could you share your Mayavi, traits, pyface, etc. versions. I did not see them in the dependency list you provided above on your AGX. I have been attempting to install them separately directly from enthought repositories, however even earlier versions have Python syntax issues.

In the meantime, I will attempt to modify your code to output the colored pointcloud to a PCD directly. If you have any sample code to get us started, this would be helpful!

Hi, we are glad that this tool helps solved accurate extrinsic for you eventually.

For your first question, the different color of projected points represent different reflectance intensities, since it's only a single channel data, we map it to RGB channels with a gist_ncar style colormap (implemented here

colors = plt.get_cmap('gist_ncar_r')(projection_points[:, 3] / 255) ** 2
) to make the differences among different intensities more obvious;
image

For the seconde question, it may be because some of the RGB values of the points overflowed, and you should manually constrain the RGB values between (0,255) (or between (0, 1), it depends on your visualization tool);
image

For us, the solved extrinsic parameter is mostly used for multi-sensor fusion-based object detection/segmentation and path planning / obstacle avoidance for self-driving vehicles. Therefore the visualization part of this project is just a tool to verify the accuracy of the calibration results quickly and intuitively, and we don't dabble deep here... I am currently trying to play with CloudCompare, and working on writing some utilities to directly export the fused point cloud and RGB image after calibration, into files that the downstream tools like CloudCompare can directly use.

from acsc.

VisionaryMind avatar VisionaryMind commented on June 2, 2024

I finally discovered the problem with colored pointcloud export, at least in one context. If the data is stored in an object of type pcl::PointCloudpcl::PointXYZRGB and then saved using pcl::PCDWriter::writeBinary, the RGB data will be removed and only one field used for intensity (PointXYZI). This will be interpreted by CloudCompare as NAN vertices.

The solution is simple. Include <pcl/io/ply_io.h> in the source code and then save the PointXYZRGB cloud using pcl::io::savePLYFileBinary. Then, it will be readable by CloudCompare and other tools. Here is an example in Meshlab:

image

from acsc.

Simpleforever avatar Simpleforever commented on June 2, 2024

您好,我注意到您这边提到了在Xavier AGX上安装环境并且运行ACSC。最近我也在这个设备上配置环境,按照您提供的依赖以及该链接中的方法成功安装了VTK7.1以及PCL 1.8。但是在我安装python-pcl时,编译出现了错误,即运行python setup.py build_ext -i时,出现以下错误。请问您知道可能是什么原因吗?环境是Ubuntu 18.04。
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkalglib-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkChartsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonComputationalGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonDataModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonExecutionModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMisc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonSystem-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonTransforms-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDICOMParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDomainsChemistry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexoIIc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexpat-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersExtraction-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersFlowPaths-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneric-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHyperTree-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersModeling-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallelImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersProgrammable-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSelection-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSMP-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersTexture-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersVerdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkfreetype-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkGeovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkgl2ps-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5_hl-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingFourier-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMorphological-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStencil-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisLayout-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionStyle-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionWidgets-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOEnSight-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExodus-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLegacy-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLSDyna-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMINC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMovie-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIONetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallelXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOPLY-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOSQL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOVideo-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXMLParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjpeg-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjsoncpp-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtklibxml2-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkmetaio-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkNetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkoggtheora-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkParallelCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkpng-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkproj4-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingAnnotation-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContextOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingFreeType-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingGL2PS-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLabel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLIC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLOD-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolume-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolumeOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksqlite-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksys-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtktiff-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkverdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkzlib-7.0
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1

您好,这个问题是由于python-pcl默认写在setup.py中的vtk路径和您本机安装vtk的路径不一致造成的, 请参考我文章中问题情况2或者问题情况3的解决方案, https://zhuanlan.zhihu.com/p/336875349

如果还有问题请在issue里更新,我会及时跟进

谢谢您的解决方法,现在环境部分在xavier上已经成功安装了,但是我在用sample数据运行python calibration.py --config ./configs/sample.yaml时出现了以下提示:
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
程序表现为陷入了死循环,没有终止,也没有任何其他输出。
python projection_validation.py --config ./configs/sample.yaml可以成功运行。
并且在自己虚拟机上上述代码均可以正常运行。
请问您知道可能是什么原因吗?

from acsc.

HViktorTsoi avatar HViktorTsoi commented on June 2, 2024

您好,我注意到您这边提到了在Xavier AGX上安装环境并且运行ACSC。最近我也在这个设备上配置环境,按照您提供的依赖以及该链接中的方法成功安装了VTK7.1以及PCL 1.8。但是在我安装python-pcl时,编译出现了错误,即运行python setup.py build_ext -i时,出现以下错误。请问您知道可能是什么原因吗?环境是Ubuntu 18.04。
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkalglib-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkChartsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonComputationalGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonDataModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonExecutionModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMisc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonSystem-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonTransforms-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDICOMParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDomainsChemistry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexoIIc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexpat-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersExtraction-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersFlowPaths-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneric-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHyperTree-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersModeling-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallelImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersProgrammable-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSelection-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSMP-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersTexture-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersVerdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkfreetype-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkGeovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkgl2ps-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5_hl-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingFourier-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMorphological-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStencil-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisLayout-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionStyle-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionWidgets-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOEnSight-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExodus-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLegacy-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLSDyna-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMINC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMovie-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIONetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallelXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOPLY-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOSQL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOVideo-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXMLParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjpeg-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjsoncpp-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtklibxml2-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkmetaio-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkNetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkoggtheora-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkParallelCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkpng-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkproj4-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingAnnotation-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContextOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingFreeType-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingGL2PS-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLabel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLIC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLOD-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolume-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolumeOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksqlite-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksys-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtktiff-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkverdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkzlib-7.0
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1

您好,这个问题是由于python-pcl默认写在setup.py中的vtk路径和您本机安装vtk的路径不一致造成的, 请参考我文章中问题情况2或者问题情况3的解决方案, https://zhuanlan.zhihu.com/p/336875349
如果还有问题请在issue里更新,我会及时跟进

谢谢您的解决方法,现在环境部分在xavier上已经成功安装了,但是我在用sample数据运行python calibration.py --config ./configs/sample.yaml时出现了以下提示:
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
程序表现为陷入了死循环,没有终止,也没有任何其他输出。
python projection_validation.py --config ./configs/sample.yaml可以成功运行。
并且在自己虚拟机上上述代码均可以正常运行。
请问您知道可能是什么原因吗?

您好,不好意思回复晚了,首先在sample.yaml里将NUM_WORKERS设置成0,可以解决卡死的问题,并且可以获得更多的出错LOG;

目前这个问题看起来是PCL的VoxelGrid导致的问题,您在agx上安装的PCL版本是多少?

from acsc.

Simpleforever avatar Simpleforever commented on June 2, 2024

您好,我注意到您这边提到了在Xavier AGX上安装环境并且运行ACSC。最近我也在这个设备上配置环境,按照您提供的依赖以及该链接中的方法成功安装了VTK7.1以及PCL 1.8。但是在我安装python-pcl时,编译出现了错误,即运行python setup.py build_ext -i时,出现以下错误。请问您知道可能是什么原因吗?环境是Ubuntu 18.04。
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkalglib-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkChartsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonComputationalGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonDataModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonExecutionModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMisc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonSystem-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonTransforms-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDICOMParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDomainsChemistry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexoIIc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexpat-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersExtraction-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersFlowPaths-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneric-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHyperTree-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersModeling-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallelImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersProgrammable-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSelection-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSMP-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersTexture-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersVerdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkfreetype-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkGeovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkgl2ps-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5_hl-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingFourier-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMorphological-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStencil-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisLayout-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionStyle-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionWidgets-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOEnSight-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExodus-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLegacy-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLSDyna-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMINC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMovie-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIONetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallelXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOPLY-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOSQL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOVideo-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXMLParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjpeg-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjsoncpp-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtklibxml2-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkmetaio-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkNetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkoggtheora-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkParallelCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkpng-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkproj4-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingAnnotation-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContextOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingFreeType-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingGL2PS-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLabel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLIC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLOD-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolume-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolumeOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksqlite-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksys-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtktiff-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkverdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkzlib-7.0
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1

您好,这个问题是由于python-pcl默认写在setup.py中的vtk路径和您本机安装vtk的路径不一致造成的, 请参考我文章中问题情况2或者问题情况3的解决方案, https://zhuanlan.zhihu.com/p/336875349
如果还有问题请在issue里更新,我会及时跟进

谢谢您的解决方法,现在环境部分在xavier上已经成功安装了,但是我在用sample数据运行python calibration.py --config ./configs/sample.yaml时出现了以下提示:
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
程序表现为陷入了死循环,没有终止,也没有任何其他输出。
python projection_validation.py --config ./configs/sample.yaml可以成功运行。
并且在自己虚拟机上上述代码均可以正常运行。
请问您知道可能是什么原因吗?

您好,不好意思回复晚了,首先在sample.yaml里将NUM_WORKERS设置成0,可以解决卡死的问题,并且可以获得更多的出错LOG;

目前这个问题看起来是PCL的VoxelGrid导致的问题,您在agx上安装的PCL版本是多少?

您好,PCL的版本是1.8,初步调试看来是阻塞在了locate_chessboard函数的
pc = utils.voxelize(pc, voxel_size=configs['calibration']['RG_VOXEL'])
语句中,具体表现为:
return sor.filter().to_array()
该语句并没有返回。请问您遇到过该情况吗

from acsc.

Simpleforever avatar Simpleforever commented on June 2, 2024

您好,我注意到您这边提到了在Xavier AGX上安装环境并且运行ACSC。最近我也在这个设备上配置环境,按照您提供的依赖以及该链接中的方法成功安装了VTK7.1以及PCL 1.8。但是在我安装python-pcl时,编译出现了错误,即运行python setup.py build_ext -i时,出现以下错误。请问您知道可能是什么原因吗?环境是Ubuntu 18.04。
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkalglib-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkChartsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonComputationalGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonDataModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonExecutionModel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonMisc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonSystem-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkCommonTransforms-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDICOMParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkDomainsChemistry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexoIIc-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkexpat-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersExtraction-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersFlowPaths-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeneric-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersHyperTree-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersModeling-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersParallelImaging-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersProgrammable-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSelection-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSMP-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersTexture-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkFiltersVerdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkfreetype-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkGeovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkgl2ps-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkhdf5_hl-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingColor-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingFourier-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingGeneral-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingHybrid-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMath-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingMorphological-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingSources-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStatistics-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkImagingStencil-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInfovisLayout-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionStyle-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkInteractionWidgets-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOAMR-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOEnSight-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExodus-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOExport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOGeometry-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOImport-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLegacy-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOLSDyna-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMINC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOMovie-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIONetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOParallelXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOPLY-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOSQL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOVideo-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXML-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkIOXMLParser-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjpeg-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkjsoncpp-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtklibxml2-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkmetaio-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkNetCDF-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkoggtheora-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkParallelCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkpng-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkproj4-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingAnnotation-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingContextOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingFreeType-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingGL2PS-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingImage-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLabel-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLIC-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingLOD-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolume-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkRenderingVolumeOpenGL-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksqlite-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtksys-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtktiff-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkverdict-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsContext2D-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsCore-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkViewsInfovis-7.0
/home/xavier1/archiconda3/envs/acsc2/compiler_compat/ld: cannot find -lvtkzlib-7.0
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1

您好,这个问题是由于python-pcl默认写在setup.py中的vtk路径和您本机安装vtk的路径不一致造成的, 请参考我文章中问题情况2或者问题情况3的解决方案, https://zhuanlan.zhihu.com/p/336875349
如果还有问题请在issue里更新,我会及时跟进

谢谢您的解决方法,现在环境部分在xavier上已经成功安装了,但是我在用sample数据运行python calibration.py --config ./configs/sample.yaml时出现了以下提示:
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
[pcl::VoxelGrid::applyFilter] Invalid filter field name. Index is -1.
程序表现为陷入了死循环,没有终止,也没有任何其他输出。
python projection_validation.py --config ./configs/sample.yaml可以成功运行。
并且在自己虚拟机上上述代码均可以正常运行。
请问您知道可能是什么原因吗?

您好,不好意思回复晚了,首先在sample.yaml里将NUM_WORKERS设置成0,可以解决卡死的问题,并且可以获得更多的出错LOG;
目前这个问题看起来是PCL的VoxelGrid导致的问题,您在agx上安装的PCL版本是多少?

您好,PCL的版本是1.8,初步调试看来是阻塞在了locate_chessboard函数的
pc = utils.voxelize(pc, voxel_size=configs['calibration']['RG_VOXEL'])
语句中,具体表现为:
return sor.filter().to_array()
该语句并没有返回。请问您遇到过该情况吗

您好,我在Xavier刷机后重新编译安装了VTK7.1和PCL1.8.1,编译python-pcl成功后import pcl时出现了undefined symbol: XXXXXXXXXX的错误,我按照您提供的链接https://zhuanlan.zhihu.com/p/336875349
问题类型5中的方法对比了本机实际安装的pcl模块和写死的模块,并修改了setup.py的对应行。重新编译后问题仍没有解决,请问还需要咋么做吗?
这是我本机安装的模块:
(base) xavier1@xavier1-desktop:/$ ls /usr/local/lib/*.so | grep pcl | cut -d '_' -f 2 | cut -d . -f 1
common
features
filters
io
io
kdtree
keypoints
ml
octree
outofcore
people
recognition
registration
sample
search
segmentation
stereo
surface
tracking
visualization
修改setup.py成了以下:
else:
# version 1.8
pcl_libs = ["common", "features", "filters", "geometry",
"io", "kdtree", "keypoints", "ml", "octree", "outofcore", "people",
"recognition", "registration", "sample_consensus", "search",
"segmentation", "stereo", "surface", "tracking", "visualization"]
您看这样是否正确?
此外,我注意到,在您的修改方案中,"geometry"模块并没有安装在本机上,但您在setup.py中并没有删除此模块,此模块是否有影响?
我同时也试验了将"geometry"删除后重新编译,但仍然没有解决问题。您有什么建议吗?谢谢!!!

from acsc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.