--- tags: Gigabyte, Third period title: Human Tracking documentation --- # Human Tracking 專案使用說明 > # 開發版本: OpenCV : opencv3.4.1 PCL : PCL 1.8 Editor : visual studio code ros : [kinetic(Ubuntu 16) melodic(Ubuntu 18)] Voxel SDK (視相機對應SDK而定) 請先安裝上述環境在開始執行下面的步驟 > # 操作說明: * 發布點雲資料 * 使用rosbag: `rosbag play bag_name.bag` * 直接使用攝影機: `cd ~/dashgo_ws` `catkin_make` `source devel/setup.bash` `sudo chmod /dev/ttyUSB*` `roslaunch dashgo_nav t02_imu.launch`(這個指令會一起啟動imu跟輪軸) 可使用`rosbag record錄製成bag檔直接播放` * 啟動追蹤程式 * `cd ~/catkin_ws` * `catkin_make` * `source devel/setup.bash` * `roslaunch human_tracking robot_track.launch` 啟動node後會有相機深度正規化影像及display影像 **附註:** 1. 若要進行移動,需確認輪軸底盤都已經啟動了, (t02_imu有沒有都點起來) 2. 若有更換攝影機, 需至people_detector.cpp更換相機的內部參數 3. 目前吃的topic為point cloud (/giga_t02/points), 若有更換需要至cloud_grabber.cpp修改 > # 參數位置: * **robot_manager.cpp** 1. ::updateMovent() * initDistance: 開始追蹤的最近距離 * minX: 開始選轉的最小x偏移量 * RDLIMIT: 旋轉角度上限(rad/s) * movement: 移動距離 * rotation: 旋轉角度 * **person_detector.app** 1. ::PersonDetector() * roiSize: 人的roi size * bbox: display的bounding box * **_intrincsMatrix: 相機參數** 3. ::setupClassifier() * height: 人的高度限制 * width: 人的寬度限制 4. ::isMutated() * var(0): x軸variance * var(2): z軸variance 5. ::isFilled() * fullP: 整體填滿程度 * downP: 下半部填滿程度 * upperBound: 下半部切割子區塊的填滿程度限制 6. ::compute() * split roiXMat: 以x來做直方圖切割的thresh * split zMat: 以z來做直方圖切割的thresh * **human_tracking_app.app** 1. ::updateTracker() * thresh: 候選人與追蹤器的最遠距離限制 * heightDiff: 高度差異 * similarity: 餘弦相似度 3. ::updateTrackability() * isTrackable的距離參數, 相機穩定使用的距離範圍(不會消失或標準差過高) 4. ::display2DImage() * range < ..., 與追蹤目標的距離, 可能因tof資料不穩定要增加範圍 5. _minConfidence: **HOG-SVM**所計算出來的信心門檻, 大於才會加入tracker list 6. _lifeTime: 初始lifeTime, 後續會隨著fps做調整
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up