OpenMV與JSON編碼問題解析
JSON
如果想快速嘗試兩個(gè)單片機(jī)通信的。推薦使用串口傳輸json字符串!
JSON是一種簡潔高效的交換數(shù)據(jù)的格式。 它可以是這種簡單的:
"[[12,0],[10,12],[22,10],[99,11]]"
注:我通過這種簡單的字符串,把OpenMV中的色塊的x,y坐標(biāo)發(fā)送出去。
也可以是這種復(fù)雜的:
在python中表示多行字符串:
'''
{
"number":10,
"color" :[255,0,0],
"rate" :0.65
}
'''我使用這種結(jié)構(gòu)把OpenMV采集到的顏色信息發(fā)送到wifi中的服務(wù)器中。
甚至于,可以像這樣:
'''
{
"firstName": "John",
"lastName": "Smith",
"sex": "male",
"age": 25,
"address":
{
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": "10021"
},
"phoneNumber":
[
{
"type": "home",
"number": "212 555-1234"
},
{
"type": "fax",
"number": "646 555-4567"
}
]
}
'''注意:json的形式和Python很像,但是json是javascript的對象表達(dá)形式,和python的表達(dá)形式稍有不同。
ujson – JSON編碼與解碼
OpenMV內(nèi)置的json模塊允許Python對象和JSON數(shù)據(jù)格式之間的轉(zhuǎn)換
Python生成JSON
OpenMV有json的模塊,json.dumps(obj)和ujson.loads(str)可以很容的生成json字符串和解析json字符串。
import json
obj = [[12,0],[10,12],[22,10],[99,11]]
print(json.dumps(obj))
obj = {
"number":10,
"color" :[255,0,0],
"rate" :0.65
}
print(json.dumps(obj))然后把字符串通過串口發(fā)送出去,然后在另一端,把json字符串解析成對象/數(shù)組。然后進(jìn)行接下來的邏輯操作。
會(huì)輸出:
'[[12, 0], [10, 12], [22, 10], [99, 11]]'
'{"color": [255, 0, 0], "number": 10, "rate": 0.65}'
常用函數(shù)
生成JSON字符串
ujson.dumps(obj)
返回表示為JSON字符串的 obj 。
解析JSON字符串
ujson.load(stream)
解析給定的 stream ,將其解釋為JSON字符串并將數(shù)據(jù)反序列化為Python對象。返回結(jié)果對象。
解析一直持續(xù)到到文件結(jié)束end-of-file。 如果 stream 中的數(shù)據(jù)格式不正確, ValueError 將被觸發(fā)。
解析JSON對象
ujson.loads(str)
解析JSON str 并返回一個(gè)對象。若該字符串未正確排列,則會(huì)引發(fā)示值誤差。
到此這篇關(guān)于OpenMV與JSON編碼的文章就介紹到這了,更多相關(guān)OpenMV與JSON編碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python numpy 數(shù)組的向量化運(yùn)算操作方法
這篇文章主要介紹了Python numpy數(shù)組的向量化運(yùn)算操作方法,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06
Python實(shí)現(xiàn)微信高效自動(dòng)化操作
在如今數(shù)字化時(shí)代,人們對于效率的追求越來越強(qiáng)烈,而PyAutoGUI和Pyperclip作為Python中的兩個(gè)強(qiáng)大庫,為我們實(shí)現(xiàn)自動(dòng)化操作提供了便利,下面我們就來看看如何利用這兩個(gè)庫實(shí)現(xiàn)微信自動(dòng)化操作吧2023-10-10
numpy使用fromstring創(chuàng)建矩陣的實(shí)例
今天小編就為大家分享一篇numpy使用fromstring創(chuàng)建矩陣的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06
Django項(xiàng)目基礎(chǔ)配置和基本使用過程解析
這篇文章主要介紹了Django項(xiàng)目基礎(chǔ)配置和基本使用過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
pytorch實(shí)現(xiàn)CNN卷積神經(jīng)網(wǎng)絡(luò)
這篇文章主要為大家詳細(xì)介紹了pytorch實(shí)現(xiàn)CNN卷積神經(jīng)網(wǎng)絡(luò),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02

