起因是因為主管塞了兩盒工程機包裝的東西給我,
叫我趕快做點東西出來。
:大勾請問這兩盒是什麼?
"窩也不是很清楚,應該是攝影機吧?"
"上禮拜才送來的,就交給你好好幹了!(瞇眼。"
回到座位拆開包裝,奇妙的字眼映入眼簾 – OAK-1?橡樹一號?
乖乖隆叮咚?
我的業務範圍上從先進飛彈制導,下至林業技術輔導了嗎?
看來下一任臺灣隊長就是我了對吧?
現在應該抓緊時間去曬太陽之類的?
Anyway 這的確是攝影機,不是什麼先進的橡樹、農業技術輔導。
OAK-1 的全名是 OpneCV AI Kit
會出現這東西,我猜是 OpenCV 覺得大家用的環境太混帳了,
導致沒辦法發揮我們程式的實力,所以自己跳出來賣攝影機的概念。
(我看過學弟拿沒 GPU 的文書機配 WEBCAM 在那邊掃口罩偵測,FPS 著實感人。)
做影像辨識是這個樣子:
影像辨識是需要算的,就算你模型都訓練好,
還是要有一個地方可以判斷(計算),像是我學弟那個例子就是把影像丟回電腦用 CPU 算,
結果就是出來的影像 FPS 感人。
這麼感人的 FPS 肯定是不行的,畢竟未來要用在載具上,
任務時間來到毫秒級,FPS 必須提高,下游任務的準確度才會提高。
(才不會上演街頭人肉保齡球。)
但是 OpenCV 左想右想,總不可能在每臺載具上面塞一張很貴的 GPU 對吧?
為了教育我們這些只用 CPU 算的弱智兒童(X)
為了讓貪財產業鏈侵入學生生活(O)
(OpenCV 後面是 Intel,Intel 最近重新出了自己的 GPU 你知道的。)
就出了 OAK 系列,裡面幫你塞了一張 VPU。
VPU 是一種介於 CPU 與 GPU 中的東西,
可以想像成沒那麼強的 GPU ,但是可以負責簡單的判斷。
總之有這張 VPU 塞進去以後捏,好處有兩個:
1.後端(伺服器端)可以不用塞 GPU,這種 Camera 又比 GPU 便宜很多,省錢!
2.判斷直接在 Camera 直接做完,理論上比較省傳輸的 latency。
好,前面廢話那麼多,來裝環境。
首先這篇環境是 for Windows 10 ,因為我在公司被分配到 Windows 10 的機子,
順便做個紀錄,聽起來以後要交報告的,多塞點廢話(X)。
首先用管理員權限打開你的 Windows Shell (藍底白字的那個)
Windows Shell |
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
如果你沒有喜歡的編輯器 加上 還沒有安裝 Python
就下這行,幫你裝 PyCharm + Python-least:
choco install cmake git python pycharm-community -y
然後你可能會發現阿幹怎麼 GIT 裝失敗?
下這行:
winget install --id Git.Git -e --source winget
然後就裝起來了,一整個正確!
去載這包:
https://github.com/luxonis/depthai-python
啟動 example/Yolo/tiny_yolo.py
偵測結果 |
好欸!
你也可以說自己會偵測物件了(ㄍ。
之後應該會做其他東西吧?(望天。
Ref.
官網教學:https://docs.luxonis.com/projects/api/en/latest/install/#installation
輔助影片教學:https://www.youtube.com/watch?v=ekopKJfcWiE&ab_channel=BrandonGilles