13.2.5.2. 教程 5.2:交通號誌 Traffic Sign

1. 交通號誌檢測需要交通號誌的一些照片。你可以使用 rqt_image_view 節點來拍攝交通號誌的照片,並使用 linux 中提供的任何 photo editor 照片編輯器,來編輯照片的大小和形狀。節點使用 SIFT algorithm 演算法來找出交通號誌,因此如果你想使用自定義交通號誌(不會包含在 autorace_track 中),請注意 - 如交通號誌中有更多邊線(edge),SIFT 演算法就可以提供更好的辨識結果。

2. 把 TB3 機器人放在車道上。此時,交通號誌應放置在機器人容易看到的地方。須確認 turtlebot3_bringup 套件的 turtlebot3_robot 節點尚未啟動。如果節點已啟動,機器人會突然在軌道上運行。

3. [Remote PC 端] 開新的 terminal 視窗,輸入

 $ rqt_image_view

然後在選擇框中點擊 /camera/image_compensated 的 topic。如果一切正常,螢幕會顯示機器人視角圖視窗。

4. [Remote PC 端] 按 Alt + Print Screen 鍵來拍攝照片,用您喜歡的 photo editor 照片編輯器,來編輯所拍攝的照片。之後,將圖片放在 [turtlebot3_autorace 套件所存放的位置] /turtlebot3_autorace/turtlebot3_autorace_detect/file/detect_sign/ 資料夾下,然後根據需要重新命名檔案。(如果想要更改預設檔名,你應該更改在detect_sign.py 原始碼中的檔名。)

5. [Remote PC 端] 開新的 terminal 視窗,輸入

$ roslaunch turtlebot3_autorace_detect turtlebot3_autorace_detect_sign.launch

6. [Remote PC 端] 開新的 terminal 視窗,輸入

$ rqt_image_view

然後在選擇框中點擊 /detect/image_traffic_sign/compressed 的 topic。如果一切正常及成功的識別出交通號誌,螢幕將顯示交通號誌檢測結果。

Last updated