【Dopi Micropython 视觉AI应用开发教程】【实验5】MJPEG编码
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                【Dopi Micropython 视觉AI应用开发教程】【实验5】MJPEG编码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                【實驗5】MJPEG編碼
- 簡介
- 示例
- 延伸
簡介
MJPEG(Motion Joint Photographic Experts Group)是一種視頻壓縮格式,其中每一幀圖像都分別使用JPEG編碼,由于編碼兼容JPEG,所以我們可以使用MJPEG編碼器將yuv圖像數據轉換成我們常見的JPG格式圖片。
示例
import venc #打開YUV測試文件,像素為320x240 f = open("/root/app/res/image.yuv", "rb+") yuv = f.read() f.close()#初始化編碼器 venc.create(venc.type.MJPEG, venc.fmt.QVGA)#固件目前支持三種圖片尺寸編碼:720P,VGA和QVGA ret, size, data = venc.send(yuv)#成功則接收數據存在data,并將數據長度存在size #ret返回True表示成功,我們進行保存 if ret:#保存img = open("/root/app/res/image.jpg", "wb+")img.write(data)img.close()print("image save successful.") venc.destroy()通過MJPEG編碼器,我們就能得到JPG格式圖片,通過FTP工具將保存的圖片傳輸到電腦上即可查看。
延伸
結合之前獲取攝像頭得到的YUV數據,我們可以將兩個功能結合完成圖片抓拍。
import sensor import venc id = sensor.id.IMX307 #對應選擇自己所接入的sensor型號,這里提供IMX307和GC2053 fmt = sensor.fmt.QVGA #這里提供三種圖像尺寸:HD(1280X720)、VGA(640X480)和QVGA(320X240) sensor.init(id, fmt) ret, size, yuv = sensor.yuv420() #返回三個值,對應的順序是結果、圖像大小、圖像數據 if ret:venc.create(venc.type.MJPEG, venc.fmt.QVGA)res, size, data = venc.send(yuv)if res:#保存img = open("/root/app/res/output.jpg", "wb+")img.write(data)img.close()print("image save successful.")venc.destroy() sensor.destroy()總結
以上是生活随笔為你收集整理的【Dopi Micropython 视觉AI应用开发教程】【实验5】MJPEG编码的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 为什么火线魔盒显示服务器繁忙,火线魔盒的
- 下一篇: 淘宝购物车支付案例
