根据canmvK230的教程,我写了一个摄像头拍摄照片的代码:
from media.sensor import * #导入sensor模块,使用摄像头相关接口
from media.display import * #导入display模块,使用display相关接口
from media.media import * #导入media模块,使用meida相关接口
import gc
sensor = Sensor() #构建摄像头对象
sensor.reset() #复位和初始化摄像头
sensor.set_framesize(Sensor.QQVGA)
sensor.set_pixformat(Sensor.RGB565) #设置输出图像格式,默认通道0
#使用IDE缓冲区输出图像,显示尺寸和sensor配置一致。
Display.init(Display.VIRT, sensor.width(), sensor.height())
MediaManager.init() #初始化media资源管理器
sensor.run() #启动sensor
img = sensor.snapshot() #拍摄一张图
img.save("/sdcard/111.jpg")
Display.show_image(img) #显示图片
Display.deinit()
MediaManager.deinit()
del img
gc.collect()
运行代码后,可以正常拍摄图片并保存,但是程序只能运行一次,再次运行会引发报错:
并且拍摄到的图片无法读取,以下是代码:
import image,gc
from media.display import *
Display.init(Display.VIRT)
img = image.Image("/sdcard/111.jpg", copy_to_fb=True)
Display.show_image(img)
del img
gc.collect()
报错信息:
由于我的板子没有屏幕,不知道是否是IDE不能显示还是图片读取错误的问题,欢迎大家测试