iT邦幫忙

2026 iThome 鐵人賽

DAY 1
0
自我挑戰組

盯!視覺追蹤機器人 | ROS2打造追蹤機器人系列 第 1

Day 1|為什麼我想做一台會「盯」著目標的機器人?

  • 分享至 

  • xImage
  •  

這是「盯!視覺追蹤機器人」系列的第一篇。作為本系列的第一篇,想先簡單記錄這個專題為什麼開始、想研究什麼,以及接下來預計實作的方向。

目前專題還在相當初期的階段,因此這裡不會是一個已經完成的專案教學,而比較像是一份持續更新的學習筆記。除了記錄最後做出了什麼,我也希望把過程中遇到的問題、查過的資料、嘗試過的方法,以及自己對問題的理解留下來!

為什麼做這個專題

因為這次的畢業專題,我對機器人產生興趣,因此我想嘗試做一個和機器人視覺追蹤有關的題目。以前學習程式設計時,大多是讓程式在電腦裡執行,但機器人不太一樣。除了程式之外,還會牽涉到相機、感測器、控制,以及機器人實際的移動,這些看不見的虛擬數字,變成能移動的實體機器人,讓我覺得很有趣。

我也想藉由這個專題,慢慢熟悉 ROS2、機器人控制與電腦視覺,並把實際操作時遇到的問題記錄下來,也當作我的一個學習歷程。

我想研究的是什麼

目前想做的方向,是讓機器人透過相機取得畫面,透過攝影機辨識並追蹤指定的目標,再根據目標在畫面中的位置控制機器人的移動。啟發是對於攝影機位的運鏡產生好奇,想研究拍攝手法。

最基本的概念可以先簡化成:

取得影像 → 找到目標 → 判斷目標位置 → 控制機器人

例如目標出現在畫面右側時,機器人可以調整方向,使攝影機重新朝向目標;當目標開始移動時,機器人也能嘗試跟著調整位置。而我最後比較感興趣的方向,是讓機器人不只是單純「追著某個東西跑」,而是更接近一台可以自己移動的攝影機。當拍攝目標移動時,機器人能夠跟著改變位置,同時盡可能讓目標維持在適當的畫面位置,形成類似跟拍或運鏡的效果。

不過目前距離這個目標還有一段距離,所以現階段會先從最基本的視覺追蹤開始學習。

接下來實作方向

目前主要使用的環境包含 ROS2、TurtleBot3 與 Gazebo,先透過模擬環境來測試機器人的移動與攝影機影像。

接下來預計先從幾個比較基礎的問題開始:

  1. 如何取得 TurtleBot3 的相機影像
  2. 如何透過 OpenCV 處理影像
  3. 如何找出畫面中的指定目標
  4. 如何取得目標在畫面中的位置
  5. 如何把影像中的位置誤差轉換成機器人的控制指令
  6. 如何讓機器人在追蹤過程中減少晃動與不穩定

之後如果基礎追蹤逐漸穩定,也會再嘗試其他目標辨識方式、距離資訊、導航與避障等功能。


下一篇
Day 2|機器人系統好複雜!一次搞懂 ROS2、TurtleBot3 與 Gazebo
系列文
盯!視覺追蹤機器人 | ROS2打造追蹤機器人2
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言