本文純屬實驗,驗證測試esp32 攝像頭性能,最後給出一個參考建議。esp32 發佈已經很久了,但一直沒有火起來的感覺。隨着邊緣計算、AI語音的風,不知道esp32能不能徹底火起來,esp32音頻方案倒是挺靠譜的,目前支持比較良好,已支持亞馬遜、DuerOS、Google等平臺。
1. 硬件接線
如下圖,github上說接線儘可能短不然噪音會很大,於是我把杜邦線給剪了又連上。
2. ov7255實測效果
下圖是ov7255實際拍到的灰度圖,更改成RGB圖之後程序沒有正常跑起來(後面會分析原因)。
3. ov2640實測效果(esp32+PSRAM)
在某寶上購買了成套M5Stack套件,這是拓展了RAM之後的版本,網上的朋友建議購買該版本,esp32自帶的sram本身就比較稀缺,實測效果如下:
4. 分析不能正常運行的原因
猜測:Demo中是什麼原因導致esp32+ov7725不能獲取RGB圖片?
- 硬件接線不對?
- RGB比灰度佔資源,內存不夠?
- Demo代碼有問題?還是我配置的時候IO口配錯了?
通過對比ov2640和代碼跟蹤,發現使alloc申請分配內存失敗,申請內存時返回(0x20001),我們還可以對比正常灰度照片的代碼分析LOG。
5. 結論
esp32 不適合攝像頭應用,貼散熱片了芯片發熱很嚴重,MCU要處理圖像又要處理協議棧雖然是雙核,但沒感受到它的優勢。wifi功耗很大,實際效果也並不是很好,缺畫模糊都很嚴重。
綜上,兩點導致了esp32 不適合攝像頭應用的原因:
- 芯片發熱很嚴重
- 實際性能不滿足產品需求