logo资料库

详细的openmv教程.pdf

第1页 / 共111页
第2页 / 共111页
第3页 / 共111页
第4页 / 共111页
第5页 / 共111页
第6页 / 共111页
第7页 / 共111页
第8页 / 共111页
资料共111页,剩余部分请下载后查看
OpenMV 内部资料 2017/05/08
目录 OpenMV 内部资料..................................................... 1 201705/08........................................................... 1 1、OpenMV 快速参考 .................................................. 6 1.1、OpenMV 摄像头 .............................................. 6 通用控制........................................................ 6 LED............................................................. 6 引脚和 GPIO ..................................................... 6 舵机控制........................................................ 7 外部中断........................................................ 8 计时器.......................................................... 8 PWM (脉宽调制).................................................. 9 ADC (模数转换).................................................. 9 DAC (数模转换)................................................. 10 UART (串口).................................................... 10 SPI 总线 ....................................................... 11 I2C 总线 ....................................................... 11 2、OpenMV 教程 ..................................................... 12 2.1、I/O 教程.................................................. 12 PYB 模块 ....................................................... 12 2.2、LED 控制.................................................. 12 2.3、OpenMV IDE 概述........................................... 13 文件菜单和示例................................................. 13 文字编辑....................................................... 13 连接到您的 OpenMV 摄像头........................................ 14 运行脚本....................................................... 14 帧缓冲区查看器................................................. 15 直方图显示..................................................... 15 串口........................................................... 15 状态栏......................................................... 16 工具........................................................... 16 打开终端....................................................... 16 机器视觉....................................................... 16 2.4、硬件设置.................................................. 17 USB 闪存驱动器说明 ............................................. 17 3、固件升级与更新.................................................. 17 3.1、更新固件.................................................. 17 4、基本使用........................................................ 21 4.1、软件与驱动安装............................................ 21 5、示例讲解........................................................ 24 5.1、01-基本功能............................................... 24 5.1.1、helloworld.......................................... 24 5.1.2、基本示例............................................ 25 5.2、02-基本驱动............................................... 25
5.2.1、ADC 读取示例 ........................................ 26 5.2.2、DAC 控制示例 ........................................ 26 5.2.3、IIC 从机............................................ 26 5.2.4、IIC 控制............................................ 29 5.2.5、LED 控制示例 ........................................ 29 5.2.6、PWM 控制示例 ........................................ 30 5.2.7、SPI 从机............................................ 31 5.2.8、SPI 控制 ............................................ 33 5.2.9、串口................................................ 35 5.2.10、定时器控制示例..................................... 35 5.2.11、引脚控制实例....................................... 36 5.2.12、舵机控制........................................... 36 5.2.13、超频示例........................................... 37 5.3、03-绘图................................................... 37 5.3.1、图像复制帧缓冲区.................................... 37 5.3.2、彩色绘制示例........................................ 38 5.3.3、绘制各种标识........................................ 39 测试绘制点..................................................... 40 测试绘制线..................................................... 40 测试绘制矩形................................................... 41 测试绘制圆..................................................... 42 测试绘制字符串................................................. 42 测试绘制十字架................................................. 43 测试绘制关键点................................................. 43 5.4、04-图像过滤器............................................. 44 5.4.1、中值滤波器.......................................... 44 5.4.2、中点过滤器.......................................... 44 5.4.3、侵蚀和扩张的........................................ 45 5.4.4、基本图像帧区别...................................... 46 5.4.5、平均过滤器.......................................... 47 5.4.6、彩色二进制过滤器.................................... 48 5.4.7、模式过滤器.......................................... 49 5.4.8、灰度二进制过滤器.................................... 50 5.4.9、灰度过滤器.......................................... 51 5.4.10、线性滤波........................................... 52 5.4.11、边缘检测........................................... 53 5.4.12、锐化滤镜........................................... 54 5.4.13、高级图像帧区别..................................... 55 5.5、05-拍照................................................... 56 5.5.1、人脸检测快照........................................ 56 5.5.2、快照................................................ 58 5.5.3、浮雕快照............................................ 59 5.5.4、移动监测快照........................................ 59 5.6、06-视频录制............................................... 61
5.6.1、GIF 录制人脸检测 .................................... 61 5.6.2、GIF 视频录制示例 .................................... 63 5.6.3、MJPEG 录像面部检测 .................................. 64 5.6.4、MJPEG 视频录制示例 .................................. 65 5.6.5、MJPEG 视频录制移动示例 .............................. 66 5.6.6、视频录制移动示例.................................... 68 5.7、07-人脸识别............................................... 70 5.7.1、LBP 面部识别 ........................................ 70 5.7.2、面部检测示例........................................ 70 5.7.3、面部跟踪示例........................................ 72 5.8、08-眼球跟踪............................................... 74 5.8.1、虹膜检测............................................ 74 5.8.2、面部眼睛检测示例.................................... 76 5.9、09-特征检测............................................... 77 5.9.1、Canny 和 Hough 变换 .................................. 77 5.9.2、HoG................................................. 78 5.9.3、光流示例............................................ 78 5.9.4、关键点对象跟踪...................................... 79 5.9.5、关键点描述符示例.................................... 81 5.9.6、局部二进制模式(LBP)示例........................... 82 5.9.7、模板匹配............................................ 83 5.9.8、边缘检测............................................ 85 5.10、10-颜色跟踪.............................................. 86 5.10.1、单色 RGB565 Blob 跟踪示例........................... 86 5.10.2、单色代码跟踪示例................................... 87 5.10.3、单色灰度 Blob 跟踪示例.............................. 88 5.10.4、图像直方图信息示例................................. 89 5.10.5、图像统计信息示例................................... 90 5.10.6、彩色 Blob 跟踪示例.................................. 90 5.10.7、彩色代码跟踪示例................................... 91 5.10.8、红外信标 RGB565 跟踪示例............................ 93 5.10.9、红外信标灰度跟踪示例............................... 94 5.10.10、自动 RGB565 颜色跟踪示例........................... 95 5.10.11、自动灰度色彩跟踪示例.............................. 96 5.10.12、黑色灰度线以下示例................................ 98 5.11、11-显示屏............................................... 100 5.11.1、显示屏............................................ 100 5.12、15-测试................................................. 101 5.12.1、FPS 测试脚本 ...................................... 101 5.12.2、自检.............................................. 101 5.12.3、色条测试示例...................................... 104 5.13、16-二维码............................................... 105 5.13.1、AprilTags 示例 .................................... 105 5.13.2、AprilTags 示例 .................................... 107
5.13.3、AprilTags 示例 .................................... 109 5.13.4、QRCode 示例 ....................................... 110 5.13.5、QRCode 示例 ....................................... 110
1、OpenMV 快速参考 1.1、OpenMV 摄像头 通用控制 pyb import pyb pyb.delay(50) # wait 50 milliseconds pyb.millis() # number of milliseconds since bootup pyb.repl_uart(pyb.UART(3, 9600)) # duplicate REPL on UA RT(3) pyb.wfi() # pause CPU, waiting for interrupt pyb.stop() # stop CPU, waiting for external interrupt LED pyb.LED from pyb import LED led = LED(1) # red led led.toggle() led.on() led.off() 这是 LED 引脚排列:  LED(1) -> 红色 LED  LED(2) -> 绿色 LED  LED(3) -> 蓝色 LED  LED(4) -> 红外 LEDs 引脚和 GPIO pyb.Pin from pyb import Pin p_out = Pin('P7', Pin.OUT_PP)
p_out.high() p_out.low() p_in = Pin('P7', Pin.IN, Pin.PULL_UP) p_in.value() # get value, 0 or 1 这是 GPIO 引脚分配:  Pin('P0') -> P0 (PB15) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P1') -> P1 (PB14) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P2') -> P2 (PB13) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P3') -> P3 (PB12) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P4') -> P4 (PB10) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P5') -> P5 (PB11) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P6') -> P6 (PA5) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P7') -> P7 (PD12) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。  Pin('P8') -> P8 (PD13) - 5V 耐压,3.3V 输出,高达 25 mA 驱 动。 在 OpenMV M7 上:  Pin('P9') -> P9 (PD14) - 5V 耐压,3.3V 输出,最高可达 25 mA 驱动。 不要在所有 I / O 引脚上总共超过 120 mA。 舵机控制 pyb.Servo from pyb import Servo s1 = Servo(1) # servo on position 1 (P7) s1.angle(45) # move to 45 degrees s1.angle(-60, 1500) # move to -60 degrees in 1500ms s1.speed(50) # for continuous rotation servos
这是舵机引脚分配:  Servo(1) -> P7 (PD12)  Servo(2) -> P8 (PD13) 在 OpenMV M7 上:  Servo(3) -> P9 (PD14) 外部中断 pyb.ExtInt from pyb import Pin, ExtInt callback = lambda e: print("intr") ext = ExtInt(Pin('P7'), ExtInt.IRQ_RISING, Pin.PULL_NON E, callback) 这是 GPIO 引脚分配:  Pin('P0') -> P0 (PB15)  Pin('P1') -> P1 (PB14)  Pin('P2') -> P2 (PB13)  Pin('P3') -> P3 (PB12)  Pin('P4') -> P4 (PB10)  Pin('P5') -> P5 (PB11)  Pin('P6') -> P6 (PA5)  Pin('P7') -> P7 (PD12)  Pin('P8') -> P8 (PD13) 在 OpenMV M7 上:  Pin('P9') -> P9 (PD14) 计时器 pyb.Timer from pyb import Timer tim = Timer(4, freq=1000) tim.counter() # get counter value tim.freq(0.5) # 0.5 Hz
分享到:
收藏