OpenMV4开发笔记1-感光元件初始化

2024-02-01 11:18

本文主要是介绍OpenMV4开发笔记1-感光元件初始化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

import sensor, image, time
#引入此例程依赖的模块,
#sensor 是与摄像头参数设置相关的模块,
#image 是图像处理相关的模块,
#time 时钟控制相关的模块。
#import 相当于 c 语言的#include <>,模块相当于 c 语言的库。sensor.reset()  #初始化相机传感器
sensor.set_pixformat(sensor.RGB565) #设置相机模块的像素模式。
sensor.set_framesize(sensor.QVGA)  #设置相机模块的帧大小。
sensor.skip_frames(time = 2000)  #Let new settings take affect.clock = time.clock()  #初始化时钟while(True):clock.tick()  #Track elapsed milliseconds between snapshots()img = sensor.snapshot()  #截取当前图像,存放于变量 img 中。print(clock.fps())  #打印当前的帧率。

sensor.set_pixformat(pixformat)

设置相机模块的像素模式。

sensor.GRAYSCALE: 8-bits per pixel.
sensor.RGB565: 16-bits per pixel.
sensor.BAYER: 8-bits per pixel bayer pattern.

sensor.set_framesize(framesize)

设置相机模块的帧大小。
OpenMV4 H7默认配置的OV7725 感光元件处理640×480 8-bit 灰度图或者640×480 16-bit RGB565彩色图像可以达到60 FPS;当分辨率低于320×240可以达到120FPS。大多数简单的算法可以运行60FPS以上。你的 OpenMV 摄像头有一个2.8mm焦距镜头在一个标准M12镜头底座上。如果你想使用更多的特殊的镜头,你可以很容易的安装。

sensor.QQCIF: 88x72
sensor.QCIF: 176x144
sensor.CIF: 352x288
sensor.QQSIF: 88x60
sensor.QSIF: 176x120
sensor.SIF: 352x240
sensor.QQQQVGA: 40x30
sensor.QQQVGA: 80x60
sensor.QQVGA: 160x120
sensor.QVGA: 320x240
sensor.VGA: 640x480
sensor.HQQQVGA: 80x40
sensor.HQQVGA: 160x80
sensor.HQVGA: 240x160
sensor.B64X32: 64x32 (for use with image.find_displacement())
sensor.B64X64: 64x64 (for use with image.find_displacement())
sensor.B128X64: 128x64 (for use with image.find_displacement())
sensor.B128X128: 128x128 (for use with image.find_displacement())
sensor.LCD: 128x160 (for use with the lcd shield)
sensor.QQVGA2: 128x160 (for use with the lcd shield)
sensor.WVGA: 720x480 (for the MT9V034)
sensor.WVGA2:752x480 (for the MT9V034)
sensor.SVGA: 800x600 (only in JPEG mode for the OV2640 sensor)
sensor.SXGA: 1280x1024 (only in JPEG mode for the OV2640 sensor)
sensor.UXGA: 1600x1200 (only in JPEG mode for the OV2640 sensor)

sensor.skip_frames([n, time])

使用 n 个快照,让相机图像在改变相机设置后稳定下来。 n 作为普通参数传输, 例如: skip_frames(10) 跳过 10 帧。您应在改变相机设置后调用该函数。

或者,您可通过关键字参数 time 来跳过几毫秒的帧数,例如: kip_frames(time = 2000) ,跳过2000毫秒的帧。

若 n 和 time 皆未指定,该方法跳过300毫秒的帧。

若二者皆指定,该方法会跳过 n 数量的帧,但将在 time 毫秒后超时。

设置画面翻转

水平方向翻转:sensor.set_hmirror(True) #水平翻转
垂直方向翻转:sensor.set_vflip(True) #垂直翻转
设置翻转可放置于 sensor.reset() #初始化相机传感器 之后

更多感光元件函数参考:https://docs.singtown.com/micropython/zh/latest/openmvcam/library/omv.sensor.html

这篇关于OpenMV4开发笔记1-感光元件初始化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/667113

相关文章

C++中RAII资源获取即初始化

《C++中RAII资源获取即初始化》RAII通过构造/析构自动管理资源生命周期,确保安全释放,本文就来介绍一下C++中的RAII技术及其应用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、核心原理与机制二、标准库中的RAII实现三、自定义RAII类设计原则四、常见应用场景1. 内存管理2. 文件操

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

基于Python开发一个有趣的工作时长计算器

《基于Python开发一个有趣的工作时长计算器》随着远程办公和弹性工作制的兴起,个人及团队对于工作时长的准确统计需求日益增长,本文将使用Python和PyQt5打造一个工作时长计算器,感兴趣的小伙伴可... 目录概述功能介绍界面展示php软件使用步骤说明代码详解1.窗口初始化与布局2.工作时长计算核心逻辑3

python web 开发之Flask中间件与请求处理钩子的最佳实践

《pythonweb开发之Flask中间件与请求处理钩子的最佳实践》Flask作为轻量级Web框架,提供了灵活的请求处理机制,中间件和请求钩子允许开发者在请求处理的不同阶段插入自定义逻辑,实现诸如... 目录Flask中间件与请求处理钩子完全指南1. 引言2. 请求处理生命周期概述3. 请求钩子详解3.1

如何基于Python开发一个微信自动化工具

《如何基于Python开发一个微信自动化工具》在当今数字化办公场景中,自动化工具已成为提升工作效率的利器,本文将深入剖析一个基于Python的微信自动化工具开发全过程,有需要的小伙伴可以了解下... 目录概述功能全景1. 核心功能模块2. 特色功能效果展示1. 主界面概览2. 定时任务配置3. 操作日志演示

JavaScript实战:智能密码生成器开发指南

本文通过JavaScript实战开发智能密码生成器,详解如何运用crypto.getRandomValues实现加密级随机密码生成,包含多字符组合、安全强度可视化、易混淆字符排除等企业级功能。学习密码强度检测算法与信息熵计算原理,获取可直接嵌入项目的完整代码,提升Web应用的安全开发能力 目录

C++类和对象之初始化列表的使用方式

《C++类和对象之初始化列表的使用方式》:本文主要介绍C++类和对象之初始化列表的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C++初始化列表详解:性能优化与正确实践什么是初始化列表?初始化列表的三大核心作用1. 性能优化:避免不必要的赋值操作2. 强

一文教你如何解决Python开发总是import出错的问题

《一文教你如何解决Python开发总是import出错的问题》经常朋友碰到Python开发的过程中import包报错的问题,所以本文将和大家介绍一下可编辑安装(EditableInstall)模式,可... 目录摘要1. 可编辑安装(Editable Install)模式到底在解决什么问题?2. 原理3.