###### tags: `東京威力 TEL`
<h1 style="text-align: center; color: gold;">2022 東京威力TEL 筆記</h1>
- [回到目錄](/s/S1lQD_ljq/https%3A%2F%2Fhackmd.io%2Fc%2FS1lQD_ljq%2Fedit%3Fedit)
有些地方會 cue 我之前寫的 [$\LaTeX$ 筆記](https://www.overleaf.com/read/zgrytgmwhcqp),細節部分就去看那個筆記。
Github : https://github.com/pomelo925/tel2022_DoItTomorrow
<h2>I. 影像辨識 OpenCV</h2>
紀錄一些 OpenCV 基本和常用或好用的函式用法,以及在 ROS 上的處理。
- [01. VS Code x Cpp x OpenCV](/s/Fm_LvL3KSfqeARIdWS_KUQ#I-OpenCV)
- [1-1. 安裝 OpenCV](/s/Fm_LvL3KSfqeARIdWS_KUQ#1-1-安裝-OpenCV)
- [1-2. 安裝 Mingw 64](/s/Fm_LvL3KSfqeARIdWS_KUQ#1-2-安裝-Mingw-64)
- [1-3. 檔案路徑設置](/s/Fm_LvL3KSfqeARIdWS_KUQ#1-3-檔案路徑設置)
- [1-4. json檔案設置](/s/Fm_LvL3KSfqeARIdWS_KUQ#1-4-json-檔案設置)
- [1-5. 初步程式測試](/s/Fm_LvL3KSfqeARIdWS_KUQ#1-5-初步程式測試)
- [02. 影像讀取與輸出](/s/RGpUjZ6-R36yDqh_uD_ApQ)
- [2-1. 讀圖片](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-1-讀圖片)
- [2-2. 讀影片](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-2-讀影片)
- [2-3. 讀Webcam](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-3-讀-Webcam)
- [2-4. 彩色轉灰階](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-4-彩色轉灰階)
- [2-5. 高斯模糊](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-5-高斯模糊)
- [2-6. 邊緣偵測](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-6-邊緣偵測)
- [2-7. 膨脹](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-7-膨脹)
- [2-8. 侵蝕](/s/RGpUjZ6-R36yDqh_uD_ApQ?both#2-8-侵蝕)
- [03. 畫圖](/s/M5ysTX51Rra45A3gFnlgtg)
- [3-1. 建立黑屏與畫直線](/s/M5ysTX51Rra45A3gFnlgtg?both#3-1-建立黑屏與畫直線)
- [3-2. 畫矩形](/s/M5ysTX51Rra45A3gFnlgtg?both#3-2-畫矩形)
- [3-3. 畫圓形](/s/M5ysTX51Rra45A3gFnlgtg?both#3-3-畫圓形)
- [04. 控制面板](/s/K1fHbKmPRkKN_GdetD6SNg)
- [4-1. 創視窗和控制條](/s/K1fHbKmPRkKN_GdetD6SNg?both#4-1-創視窗和控制條)
- [4-2. 控制條值的讀取與默認值](/s/K1fHbKmPRkKN_GdetD6SNg?both#4-2-控制條值的讀取與默認值)
- [4-3. 過濾顏色](/s/K1fHbKmPRkKN_GdetD6SNg?both#4-3-過濾顏色)
- [4-4. 遮罩原圖](/s/K1fHbKmPRkKN_GdetD6SNg?both#4-4-遮罩原圖)
- [05. 輪廓處理](/s/qGJ4MwTqR26RNlpB3NUqmA)
- [5-1. threshold() 函式](/s/qGJ4MwTqR26RNlpB3NUqmA?both#5-1-threshold-函式)
- [5-2. 辨識邊界](/s/qGJ4MwTqR26RNlpB3NUqmA?both#5-2-辨識邊界)
- [5-3. 計算輪廓與像素個數](/s/qGJ4MwTqR26RNlpB3NUqmA?both#5-3-計算輪廓與像素個數)
- [5-4. 簡化邊界](/s/B1dZP3Li9?type=view#5-4-簡化邊界)
- [06. TEL 任務](/s/gBC1HQw-SzO27I0v2qBbbA)
- [6-1. 任務簡介](/s/gBC1HQw-SzO27I0v2qBbbA?view#-6-1-任務簡介)
- [6-2. 我的作法](/s/gBC1HQw-SzO27I0v2qBbbA?view#-6-2-我的作法)
- [6-3. 資料夾](/s/gBC1HQw-SzO27I0v2qBbbA?view#-6-3-資料夾)
- [6-4. 辨識 C、F、T、L 木塊](/s/gBC1HQw-SzO27I0v2qBbbA?view#-6-4-辨識-C、F、T、L-木塊)
- [6-5. 辨識-E-木塊](/s/gBC1HQw-SzO27I0v2qBbbA?view#-6-5-辨識-E-木塊)
- [6-6. 沒用到的外積函式](/s/gBC1HQw-SzO27I0v2qBbbA?view#-6-6-沒用到的外積函式)
- [07. OpenCV on ROS](/s/nsqP1mQ5TFiglQMO0XcOaA)
- [7-1. 安裝 OpenCV package](/s/r1nWOgY29?type=view#1-1-安裝-OpenCV-package)
- [7-2. CmakeList 的處理](/s/r1nWOgY29?type=view#1-2-CmakeList-的處理)
- [7-3. 編譯錯誤 – 找不到 OpenCVconfig.cmake](/s/r1nWOgY29?type=view#1-3-編譯錯誤-–-找不到-OpenCVconfigcmake)
- [7-4. Publisher x OpenCV](/s/r1nWOgY29?type=view#1-4-Publisher-x-OpenCV)
- [7-5. Subscriber x OpenCV](/s/r1nWOgY29?type=view#1-5-Subscriber-x-OpenCV)
II. 攝影機 Camera
---
鏡頭用 Logitech C270,運算單元是 RPi 4B。
紀錄攝影機和樹梅派的相容性問題,遠端畫面以及相機校正的過程。
- [01. Webcam x RPi x OpenCV](/s/vb8KqfFuQamEldsfKwemSw)
- [1-1. 確認相機 OS 相容性與測試](/s/r1Ut5jwyj?type=view#-1-1-確認相機-OS-相容性與測試)
- [1-2. RPi Interface 設定](/s/r1Ut5jwyj?type=view#-1-2-RPi-Interface-設定)
- [1-3. 其他指令](/s/r1Ut5jwyj?type=view#-1-3-其他指令)
- [1-4. 下載 X Server + VSCode Extensions](/s/vb8KqfFuQamEldsfKwemSw?view#-1-4-下載-X-Server--VSCode-Extensions)
- [1-5. 下載 MobaXterm + 查詢 DISPLAY 地址](/s/vb8KqfFuQamEldsfKwemSw?view#-1-5-下載-MobaXterm--查詢-DISPLAY-地址)
- [1-6. 修改 VSCode 文件](/s/vb8KqfFuQamEldsfKwemSw?view#-1-6-修改-VSCode-文件)
- [1-7. 修改 .bashrc](/s/vb8KqfFuQamEldsfKwemSw?view#-1-7-修改-bashrc-)
- [1-8. 測試鏡頭運作 + OpenCV](/s/vb8KqfFuQamEldsfKwemSw?both#-1-8-測試鏡頭運作--OpenCV-)
- [02. 座標轉換 Coordinate Transformation](/s/XjFl9qVlSre6it60HcMKkQ)
- [2-1. 拍照片](/s/XjFl9qVlSre6it60HcMKkQ?view#-2-1-拍照片)
- [2-2. 標點](/s/XjFl9qVlSre6it60HcMKkQ?view#-2-2-標點)
III. 樹梅派 Raspberry PI 4B
---
基本的樹梅派設定,和通訊問題。
[※ 派的接腳](/s/aIHr69eZSJ-z2U286gJdIw)
- [01. 派的前置作業](/s/bXKdydfKTlaDwnB7T9eMZA)
- [1-1. 燒錄 Ubuntu 至 microSD](/s/bXKdydfKTlaDwnB7T9eMZA?view#-1-1-燒錄-Ubuntu-至-microSD-)
- [1-2. 初始化樹梅派](/s/bXKdydfKTlaDwnB7T9eMZA?view#-1-2-初始化樹梅派-)
- [1-3. 安裝 ROS Noetic](/s/bXKdydfKTlaDwnB7T9eMZA?view#-1-3-安裝-ROS-Noetic-)
- [1-4. SSH to Pi](/s/bXKdydfKTlaDwnB7T9eMZA?view#-1-4-SSH-to-Pi-)
- [02. Server x GUI](/s/FdMccI3LRZWV7qeMwbDvyA)
- [3-1. 下載 X Server](/s/HJcTjKFT5?type=view#3-1-下載-X-Server)
- [3-2. 設定 WSL 端](/s/HJcTjKFT5?type=view#3-2-設定-WSL-端)
- [03. ROS x STM](/s/ryg2eQv4Q1Gplup81jfMRw)
- [3-1. ROS端設定](/s/ryg2eQv4Q1Gplup81jfMRw?both#3-1-ROS-端設定)
- [3-2. STM端設定](/s/ryg2eQv4Q1Gplup81jfMRw?both#3-2-STM-端設定)
- [3-3. ROS 和 STM 通訊 -- Python](/s/S13-14zRc#3-3-ROS-和-STM-通訊-–-Python-)
- [3-4. ROS 和 STM 通訊 -- Cpp](/s/S13-14zRc#3-4-ROS-和-STM-通訊-–-Cpp-)
IV. IMU -- BNO055
---
這裡寫了一些關於這顆 IMU 的基本用法。
- [01. BNO055 簡介](/s/OkqkOj1gQlOHPwDpnWl54A)
- [1-1. 通訊標準](/s/H1tZ2yKTc?type=view#1-1-BNO055-接腳定義)
- [1-2. 可以接收到的資訊](/s/H1tZ2yKTc?type=view#1-2-可以接收到的資訊)
- [02. BNO055 on RPi 4B](/s/SmRYQ8X6QyqlHQxScI8auw)
- [2-1. RPi x I2C](/s/By5SY_Fa5?type=view#2-1-RPi-x-I2C)
- [2-2. RPi x UART](/s/SmRYQ8X6QyqlHQxScI8auw?both#2-2-RPi-x-UART)
- [2-3. BNO055 x ROS](/s/SmRYQ8X6QyqlHQxScI8auw?both#2-3-BNO055-x-ROS)
- [03. 實際應用](/s/iC1Yqy17RHCLCcdRfU-qaw)
V. STM
---
學 STM 時的筆記打在這裡。
- [01. STM x ROS](/s/cRK_jY3FRoiNfQJF9-VSZA)
- [1-1. 前言](/s/cRK_jY3FRoiNfQJF9-VSZA?view#1-1-前言-)
- [1-2. 前處理 - main.c](/s/cRK_jY3FRoiNfQJF9-VSZA?view#1-2-前處理---mainc)
- [1-3. 前處理 - mainpp.cpp](/s/cRK_jY3FRoiNfQJF9-VSZA?view#1-3-前處理---mainppcpp)
- [1-4. Link & Run](/s/cRK_jY3FRoiNfQJF9-VSZA?view#1-4-Link-amp-Run-)
- [1-5. 整合注意事項](/s/cRK_jY3FRoiNfQJF9-VSZA?view#1-5-整合注意事項-)
- [02. PID Control](/s/APmzaSviSVe3_mj3eKkxHg)
- [2-5. 用 Matlab 算 PID](/s/APmzaSviSVe3_mj3eKkxHg?both#2-5-用-Matlab-算-PID-)
VI. GitHub
---
保險必須套,程式要備份。
- [01. 簡介與基本設定](/s/ByLP3HAps)
- [1-1. 註冊 Github 帳號、安裝 Git](/s/ByLP3HAps#-1-1-註冊-Github-帳號、安裝-Git)
- [1-2. Github 簡介](/s/ByLP3HAps#-1-2-Github-簡介)
- [1-3. generate ssh key](/s/ByLP3HAps#-1-3-generate-ssh-key-)
- [1-4. vscode extensions](/s/ByLP3HAps#-1-4-vscode-extensions-)
- [02. basic application](/s/8GiDSD-5RWG8Pz0aE4ldRA)
- [2-1. create repo](/s/S1Mwk5teh#-2-1-create-repo-)
- [2-2. git pull](/s/S1Mwk5teh#-2-2-git-pull-)
- [2-3. git push](/s/S1Mwk5teh#-2-3-git-push-)
- [2-3. git clone](/s/S1Mwk5teh#-2-4-git-clone-)
- [03. 子模組](/s/Yp9iTmcTTSOsL_BhOEugCQ)
- [3-1. 建立步驟](/s/By_7KGS09#3-1-建立步驟)
- [3-2. update submodules](/s/By_7KGS09#3-2-update-submodules)
{"metaMigratedAt":"2023-06-17T04:11:08.633Z","metaMigratedFrom":"YAML","title":"東京威力筆記","breaks":true,"description":"回到目錄","contributors":"[{\"id\":\"3b1f0411-ea44-4821-ad78-a180bb841bd3\",\"add\":10882,\"del\":4183}]"}