系統:
相關功能包:
sudo apt-get install ros-kinetic-usb-cam
sudo apt-get install ros-kinetic-camera-calibration
連結:https://pan.baidu.com/share/init?surl=ay0Wv1XboX19yHdeke1xpQ 提取碼:csic
catkin_make & rospack profile
roslaunch robot_vision usb_cam.launch
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.0245 image:=/usb_cam/image_raw camera:=/usb_cam
注意:相關引數解析
size :標定棋盤個的內部角點個數,這裡實用的棋盤一共有6行,每行有8個內部角點(不包括最外圍的一圈棋盤格)。
squre:這個引數對應每一個棋盤格的邊長,單位是米,棋盤格列印出來以後要自己再測量一下列印的是或否準確然後自己更改。
image和camera:設定攝像頭髮布的影象話題。
將列印好的棋盤格放入攝像頭的視野範圍內,不斷調整與攝像頭的距離,慢慢旋轉棋盤格,左右移動棋盤格,不斷變換位置。(左右、上下、旋轉,反覆幾次)。
當標定靶移動測試成功後,在視覺化頁面中的第一個按鍵將從灰色變為深綠色,說明標定已經結束。
當第一個按鍵變為綠色的時候表示這個引數已經標定成功。可以在命令視窗中看到當前標定的資料。
接下來點選深綠色的CALIBRATE按鍵,等待程式計算出相機的標定引數(此時介面會卡頓,千萬不要關掉,要等待後臺進行計算),直到三個按鍵都變為深綠色。
點選SAVE可以講標定的資料儲存,在命令終端上可以看到儲存到的檔案路徑,同時命令終端上也會顯示標定的結果。此時攝像頭的標定已經結束。
解壓縮生成的檔案壓縮包,可以看到當中有很多采集到的影象的照片,其中最重要的是ost.yaml檔案,為該相機的標定檔案。
https://blog.csdn.net/zzu_seu/article/details/89278698
sudo apt-get install ros-kinetic-ar-track-alvar
rosrun ar_track_alvar createMarker
eg: 建立三個二維條碼,大小為邊長5cm,二維條碼的內容分別為0、1、2.
roscd robot_vision/config
rosrun ar_track_alvar createMarker -s 5 0
rosrun ar_track_alvar createMarker -s 5 1
rosrun ar_track_alvar createMarker -s 5 2
這樣就在catkin_ws/src/robot_vision/config資料夾下面建立了三個二維條碼。
二維條碼識別
roslaunch robot_vision usb_cam_with_calibration.launch
#該launch檔案一定要更改為自己相機的標定檔案,上面提到過。
roslaunch robot_vision ar_track_camera.launch
rostopic echo /ar_pose_marker
rosmsg show ar_track_alvar_msgs/AlvarMarker
std_msgs/Header header
uint32 seq
time stamp
string frame_id
uint32 id
uint32 confidence
geometry_msgs/PoseStamped pose
std_msgs/Header header
uint32 seq
time stamp
string frame_id
geometry_msgs/Pose pose
geometry_msgs/Point position
float64 x
float64 y
float64 z
geometry_msgs/Quaternion orientation
float64 x
float64 y
float64 z
https://blog.csdn.net/zzu_seu/article/details/89289556
介紹: VISP(visual servoing platform library )是一個開源的視覺伺服平臺。
官網:http://visp.inria.fr/
功能包:visp_auto_tracker
系統:ubuntu16.04
sudo apt-get install ros-kinetic-visp-auto-tracker
例子:
<1> roslaunch launch/tutorial.launch
<2> roslaunch launch/tracklive_usb.launch
優點:精度高。
缺點:不宜識別。
參考:
http://wiki.ros.org/visp_auto_tracker