我是靠谱客的博主 想人陪舞蹈,最近开发中收集的这篇文章主要介绍基于MaixPy的摄像头模块---MicroPython图像处理,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1. 什么是 MaixPy

MaixPy 是将 Micropython 移植到 K210( 一款64位双核带硬件FPU和卷积加速器的 RISC-V CPU, ) 的一个项目, 支持 MCU 常规操作, 更集成了机器视觉和麦克风阵列, 以快速开发具有极低成本和体积实用的 AIOT 领域智能应用。

MicroPython 是基于 Python3 的语法做的一款解析器,包含了 Python3 的大多数基础语法, 主要运行在性能和内存有限的嵌入式芯片上。(注意 Micropython 不包含 Python3 的所有语法)

K210 在硬件上集成了机器视觉和机器听觉能力, 是一款定位 AI 和 AIOT 市场的SoC,同时也是一颗方便的MCU, 性能强劲的同时却有着极低的价格。

Micropython 让我们在 K210 上编程更加简单快捷, 我们也将源代码开源在 github 上。

比如我们需要寻找I2C总线上的设备,只需要使用如下代码即可实现:

from machine import I2C

i2c = I2C(I2C.I2C0, freq=100000, scl=28, sda=29)
devices = i2c.scan()
print(devices)

同样,我们需要实现一个呼吸灯,只需要如下代码:

from machine import Timer,PWM
import time

tim = Timer(Timer.TIMER0, Timer.CHANNEL0, mode=Timer.MODE_PWM)
ch = PWM(tim, freq=500000, duty=50, pin=board_info.LED_G)
duty=0
dir = True
while True:
    if dir:
        duty += 10
    else:
        duty -= 10
    if duty>100:
        duty = 100
        dir = False
    elif duty<0:
        duty = 0
        dir = True
    time.sleep(0.05)
    ch.duty(duty)

实时拍照

import sensor
import image
import lcd

lcd.init()
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
while True:
    img=sensor.snapshot()
    lcd.display(img)

2.  Maix Camera能做哪些事

大多数是在 MaixPy 上已经有 API, 部分可能来自 Maixduino 或者其它开发者~

  • 人脸检测
  • MobileNet 物体识别
  • tiny yolov2 20分类
  • 识别颜色值、找形状、找直线、面部识别等
  • MNIST 手写数字识别
  • Feature map 显示
  • 视频播放和录制
  • NES 游戏模拟器 (FC 红白机)
  • GBA 游戏模拟器
  • 游戏 Quake I
  • 游戏 Doom
  • MMD 3D 实时渲染
  • GUI 界面 littlevGL
  • 云台脸部跟踪
  • 麦克风阵列
  • FFT 频谱图

3.  移植了OpenMV的机器视觉库

支持单目摄像头和双目摄像头,传感器模块,进行摄像头配置及图像抓取等,用于控制开发板摄像头完成摄像任务。

DIY相关的项目制作,比如追踪小球的车,云台,或者解魔方的机器人。

对成本要求很高的嵌入式工业方案,比如流水线物品的分拣。

视频录制、视频播放、音频录制、音频播放、人脸识别、人眼追踪、特征检测等等,大量的图像处理功能

4.最简单的摄像头图像例程

例程说明:实时采集并显示图像在TFT屏上,并获取和显示实时帧数

import sensor
import image
import lcd
import time

clock = time.clock()
lcd.init()
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
sensor.skip_frames(30)
while True:
    clock.tick()
    img = sensor.snapshot()
    fps =clock.fps()
    img.draw_string(40,2, ("%2.1ffps" %(fps)), color=(128,0,0), scale=2)
    lcd.display(img)

5.MaixCAM摄像头模块

 

最后

以上就是想人陪舞蹈为你收集整理的基于MaixPy的摄像头模块---MicroPython图像处理的全部内容,希望文章能够帮你解决基于MaixPy的摄像头模块---MicroPython图像处理所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部