Калибровка камеры ubuntu18.04 ZED2

1. Запустите камеру

Ссылка: Использование ZED2 SDK и конфигурация среды разработки в Ubuntu \

1.1 Загрузка CUDA

cuda 10.2 скачать

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-10-2-local-10.2.89-440.33.01/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

Измените файл ./bashrc

sudo gedit ./bashrc

добавить в конце

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64

возобновить

source ./bashrc

1.2 SDK

При установке SDK
обратите внимание на соответствие версий между SDK и cuda, и если версия SDK старая, а ros-обертка новая, может появиться сообщение об ошибке при компиляции ros-обертки.

cd  ~/下载
chmod +x ZED_SDK_Ubuntu18_cuda10.2_v3.5.0.run
./ZED_SDK_Ubuntu18_cuda10.2_v3.5.0.run

Ошибка 1. Некоторые зависимости отсутствуют и не установлены .
Решение . Просто установите зависимости напрямую.

Ошибка 2 : установка API Python не удалась .
Решение
: подтвердите, является ли ваша версия python по умолчанию версией подтверждения python3 .

update-alternatives --list python  

Если сообщается об ошибке: обновление-альтернативы: ошибка: нет альтернатив для python
, затем обновите его.Я использую систему ubuntu18.04, python3.6, обратите внимание на свою собственную версию python

update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1  
update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2 

список версий питона

update-alternatives --list python 

Изменить версию Python по умолчанию

sudo update-alternatives --config python 

вставьте сюда описание изображения
Если это все еще не удается, обратитесь к сведениям об установке Python API
, чтобы использовать

sudo wget -qO- https://cdn.jsdelivr.net/gh/OAKChina/depthai-docs-website@develop/source/_static/install_dependencies.sh | bash

Затем установите SDK.

Тестовый запуск Zed2.

cd /usr/local/zed/tools
./ZED_Depth_Viewer

Я не сообщал об ошибке здесь, но открытый интерфейс был черным, и камера ничего не показывала.Это было обнаружено программой, которая идет с zed, и она только сказала, что мой процессор не может быть обнаружен. По метанию какое-то время проблема не решилась, но камера zed2 все равно была включена под ROS. То есть следующий метод:

cd ~/catkin_ws/src
git clone https://github.com/stereolabs/zed-ros-examples.git
cd ../
rosdep install --from-paths src --ignore-src -r -y
catkin_make -DCMAKE_BUILD_TYPE=Release
source ./devel/setup.bash

бежать

roslaunch zed_display_rviz display_zed.launch

Теперь вы можете увидеть результаты под rviz.

1.3 Использование ZED под ROS

cd ~/zed_calibra_ws/src
git clone https://github.com/stereolabs/zed-ros-wrapper.git
cd ..
rosdep install --from-paths src --ignore-src -r -y
catkin_make -DCMAKE_BUILD_TYPE=Release
source ./devel/setup.bash

беги Зед2

roslaunch zed_wrapper zed2.launch

сообщить об ошибке

[ INFO] [1619503452.320965252]: Initializing nodelet with 4 worker threads.
[ERROR] [1619503452.339945481]: Failed to load nodelet [/zed2/zed_node] of type [zed_nodelets/ZEDWrapperNodelet] even after refreshing the cache: Failed to load library /home/willingham/zed_calibra_ws/devel/lib//libZEDNodelets.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libturbojpeg.so.0: cannot open shared object file: No such file or directory)
[ERROR] [1619503452.339982271]: The error before refreshing the cache was: Failed to load library /home/willingham/zed_calibra_ws/devel/lib//libZEDNodelets.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libturbojpeg.so.0: cannot open shared object file: No such file or directory)

Решение : после долгой проверки так и не решил.При переустановке обнаружил, что проигнорировал предупреждение в SDK, что было возмутительно. Переустановил API Python, успешно установил SDK и успешно запустил zed2.

2. Калибровка

установить калибр

Установить зависимости

sudo apt-get install python-setuptools python-rosinstall ipython libeigen3-dev libboost-all-dev doxygen libopencv-dev ros-melodic-vision-opencv ros-melodic-image-transport-plugins ros-melodic-cmake-modules software-properties-common libpoco-dev python-matplotlib python-scipy python-git python-pip ipython libtbb-dev libblas-dev liblapack-dev python-catkin-tools libv4l-dev

Три из них - версии, на которые нужно обратить внимание. Я - модифицированная мелодия, и одна - питон-софт-свойства.Говорят, что 18.04 уже не используется.

Этот шаг не слишком отвратительный, но есть нехватка зависимостей.Я не обратил внимание на понижение пакета, но кажется, что 588 пакетов были удалены, в том числе ROS melodic и так далее. лопнул прямо.

sudo pip install python-igraph --upgrade

Если сообщается об ошибке, это обычно связано с проблемой версии Python, поэтому переключите ее самостоятельно.
Ошибка установки здесь повлияет на расчет параметров камеры позже, у меня python3.6 не установился, а 2.7 ставится так:

sudo add-apt-repository ppa:igraph/ppa
sudo apt-get update #虽然这步更新的时候显示错误但是下面还是安装成功了,具体原因我也不清楚,但是总算安上了
sudo apt-get install python-igraph
mkdir -p ~/kalibr_workspace/src
cd ~/kalibr_workspace
source /opt/ros/melodic/setup.bash
catkin init
catkin config --extend /opt/ros/melodic
catkin config --merge-devel # Necessary for catkin_tools >= 0.4.
catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release
cd src
git clone https://github.com/ethz-asl/Kalibr.git

компилировать

cd ..
catkin build -DCMAKE_BUILD_TYPE=Release -j4

Ошибка компиляции : ошибка suitesparse, вы можете взглянуть на этот источник проблемы

source ~/zed_ws/devel/setup.bash

запустить камеру zed2

roslaunch zed_wrapper zed2.launch

Запустить функцию визуализации левой и правой камеры, но есть проблема, весь код в инете этот код, я тоже спрашивал у брата, ошибка не выдает, а моя показывает, что имя узла повторяется. Поэтому я изменил имя узла на
оригинальное:

rosrun image_view image_view image:=/zed2/zed_node/left/image_rect_color & rosrun image_view image_view image:=/zed2/zed_node/right/image_rect_color 

сдача:

rosrun image_view image_view __ns:=view1 image:=/zed2/zed_node/left/image_rect_color & rosrun image_view image_view __ns:=view2 image:=/zed2/zed_node/right/image_rect_color 

Калибр предъявляет требования к частоте записи, которую можно снизить до 20Гц.

rosrun topic_tools throttle messages /zed2/zed_node/left/image_rect_color 20 /zed2/zed_node/left/image_rect_color2
rosrun topic_tools throttle messages /zed2/zed_node/right/image_rect_color 20 /zed2/zed_node/right/image_rect_color2

пакет записи

rosbag record -O Kalibr_data.bag /zed2/zed_node/imu/data_raw /zed2/zed_node/left/image_rect_color /zed2/zed_node/right/image_rect_color

Просмотр записанных данных

rosbag info Kalibr_data.bag

Получить параметры камеры

kalibr_calibrate_cameras --bag Kalibr_data.bag --topics /zed2/zed_node/left/image_rect_color /zed2/zed_node/right/image_rect_color --models pinhole-radtan pinhole-radtan --target april_6x6_50x50cm.yaml

Мои параметры в april_6x6_50x50cm.yaml выше

target_type: 'aprilgrid' #gridtype
tagCols: 6               #number of apriltags
tagRows: 6               #number of apriltags
tagSize: 0.035           #size of apriltag, edge to edge [m]
tagSpacing: 0.285714          #ratio of space between tags to tagSize

рекомендация

отblog.csdn.net/qq_41746268/article/details/116195799
рекомендация