EasyCVRpython調介面報錯cannot unmarshal array into Go value of type main
阿新 • • 發佈:2021-07-21
目前我們的EasyCVR正在開發關於AI智慧識別和分析的相關內容,很多使用者也對我們AI的實現方式和功能比較好奇,但該版本目前還在內測和調整中,暫未上線。我們仍然會不定期分享我們對於AI智慧分析的實現過程,因此如果大家感興趣可以關注我們。
在智慧分析上,我們使用python進行車牌識別,方法是寫個python http介面,用go去調python車牌識別介面,但是在拿到資料進行轉換時,出現如下錯誤(json: cannot unmarshal array into Go value of type main.LPRData),並沒有資訊列印。
分析問題:
1、檢查在程式碼中呼叫介面是否返回請求介面程式碼
列印資料:
說明請求http介面成功。
2、在把json字串轉換struct,定義如下:
轉換函式如下:
3、我們猜測這個函式是不是不能轉換,因此再寫個測試轉換的函式。程式碼如下:
測試結果如下:
結論:json.Unmarshal可以轉換成struct
4、經過研究我們瞭解到,在請求http拿到的資料時,此資料是一個數組,所以轉換的時候是錯誤的,要把轉換後的程式碼也改成陣列才行。
結果也可以在控制檯輸出:
拓展:
EasyCVR智慧視訊監控平臺以網際網路平臺為依託,以數字化和資訊化為發展方向,通過計算機視覺技術對視訊進行智慧分析和處理,在無人條件下進行全程自動化的監控。如果大家想深入瞭解EasyCVR平臺,歡迎獲取測試帳號進行測試。