這是一個視覺追蹤機器人的學習與實作紀錄。
從 ROS2、TurtleBot3 與 Gazebo 模擬環境開始,一邊學習機器人控制、影像處理與視覺追蹤,一邊記錄實作過程中遇到的問題、嘗試的方法,以及自己的理解與學習過程。
此專案還在實作中,主要目標不只是完成一項機器人專案,更希望紀錄自己的學習路程,就是所謂「學習如何學習」,從發現問題、嘗試解決,到重新檢視自己的思考方式,看看自己的研究方式能夠如何改善。
這是「盯!視覺追蹤機器人」系列的第一篇。作為本系列的第一篇,想先簡單記錄這個專題為什麼開始、想研究什麼,以及接下來預計實作的方向。 目前專題還在相當初期的階段,...
ROS2 一開始接觸 ROS2 時,我會很直覺地把它想成機器人的「大腦」,但更準確地說,ROS2 比較像是機器人各個程式模組之間的溝通系統。 例如: 相機負責...
從概念進入實際操作 昨天先整理了 ROS2、TurtleBot3 與 Gazebo 之間的關係,也認識了 Node、Topic、Publisher 和 Subs...
今天終於到了週五,想必大家也想好好過個週末時光吧!今天就先做一件簡單的事,實際看看機器人眼中的世界。 昨天透過 ros2 topic list 找到了 /cam...
透過 rqt_image_view,已經成功看到 TurtleBot3 相機的視角。不過現在看到影像的是我,真正要做視覺追蹤的是程式。 所以今天的問題是: Py...
昨天,我已經讓 Python 訂閱 /camera/image_raw,並透過 cv_bridge 把 ROS 2 的影像訊息轉成 OpenCV 可以處理的畫面...
我透過 HSV 顏色篩選,從相機畫面中挑出紅色區域,再透過遮罩(Mask)尋找輪廓。現在程式已經可以找到紅色候選區域了,下一步就是把這個區域的位置算出來。 如果...
前一天已經算出目標中心 target_x 和畫面中心 center_x 之間的偏差,也得到 error_x。現在程式已經可以知道目標是在畫面的左邊、右邊,還是接...
前一天,我把畫面中的水平誤差 error_x 轉換成旋轉速度,讓 TurtleBot3 可以朝紅色目標轉向。但是機器人能夠轉向之後,又遇到一個問題: 目標明明已...
前一天,我把 Dead Zone、P 控制和最大角速度限制放在一起,讓 TurtleBot3 在目標接近畫面中央時減少左右微調。到目前為止,機器人主要還是在原地...