怠惰了许久,迫于电赛降至 不得不顺手刷了下风力摆,板球控制系统

从网上得到很多资料,很多地方或多或少的懵逼,但总算有所收获,如今便简单的把收获一点一点总结出来


帧率 : 板球我们很快就搭出来了 但苦于摄像头帧率不高,于是系统必然会有很大的滞后性,即便是调串级PID也着实令人不爽

OV5640窗口

不知为何,前几天搜索,只能搜到这样一个问题,这张图象是什么意思

其实很简单,我们拿大家手上都有的正点案例来讲

//设置窗口的函数有两个,第一个大家都会用就不贴详细了,就是设置输出图像的大小,左右上下偏移量
u8 OV5640_OutSize_Set(u16 offx,u16 offy,u16 width,u16 height){}//第二个相信有文章标题疑惑的一般都不会用,因为如果直接在别人模块上盲改的话,这个函数不会起作用
u8 OV5640_ImageWin_Set(u16 offx,u16 offy,u16 width,u16 height)
{u16 xst,yst,xend,yend;xst=offx;yst=offy;xend=offx+width-1;yend=offy+height-1;  OV5640_WR_Reg(0X3212,0X03); OV5640_WR_Reg(0X3800,xst>>8); OV5640_WR_Reg(0X3801,xst&0XFF); OV5640_WR_Reg(0X3802,yst>>8); OV5640_WR_Reg(0X3803,yst&0XFF); OV5640_WR_Reg(0X3804,xend>>8); OV5640_WR_Reg(0X3805,xend&0XFF);OV5640_WR_Reg(0X3806,yend>>8); OV5640_WR_Reg(0X3807,yend&0XFF);OV5640_WR_Reg(0X3212,0X13); OV5640_WR_Reg(0X3212,0Xa3);  return 0;
}

我们仔细看一下这个从未用过的函数,它所操作的寄存器的位置不就是与之前的贴图一一对应。
简单描述一下:
如果0x3800,0x3801,0x3802,0x3803都给0,也就是左边界和上边界都从零开
0x3804,0x3805代表摄像头拍摄的宽,比如分别给0x0a, 0x3f就代表摄像头捕捉宽度为2623
0x3806,0x3807代表摄像头拍摄高:比如0x07, 0x9f就代表捕捉高度为1951
0x3810,0x3811,0x3812,0x3813前后两个分别代表刚才2623,1951想要裁剪的宽长
如此便得到了一整张图像,比较大张,细节,但这显然不是单片机接收到的

后续0x08,0x09,0x0A,0x0B,前后分别代表预设目标图像大小,而这张图像是根据上述摄像头图像缩放而来。
最后单片机得到的图像就是它了,你二值化,连通域等等都是在此基础之上。

最后,这些位操作很多地方都有,要改就把之前相关的都删去,不然最后重复乱操作只能是花屏

帧率

ov5640.c的包含文件中的#include “ov5640cfg.h”
open之后,找到第二个函数 也就是 rgb565模式,也可以改第一个函数jpeg模式的,各取所取
直接改动寄存器0x3035,0x3035 的值
我们打开一个定时器,显示一下帧中断次数
举例:

0x3035=41,0x3036=69; //15帧
0x3035=21,0x3036=ac; //50帧
0x3035=21,0x3036=69; //100帧
各取所需 ,只写一次

最后帧数并非越高越好,改成自己实用的最佳。极度扩大帧率的同时别忘了减下图像面积,优化下算法。

OV5640摄像头开窗大小,输出窗口大小,帧率等设置相关推荐

  1. 安卓获取摄像头帧率_Android Camera预览时输出的帧率控制

    Android Camera预览时输出的帧率控制 2016年08月16日 14:24:28 阅读数:13250 如果使用MediaCodec硬编码H264,可以使用下面的方法控制编码输出的帧率: Me ...

  2. 【正点原子FPGA连载】第四十一章OV5640摄像头RGB-LCD显示实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1

    1)实验平台:正点原子新起点V2开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=609758951113 2)全套实验源码+手册+视频下载地址:ht ...

  3. FPGA配置OV5640摄像头及RGB图像数据采集

    本文设计思想采用明德扬至简设计法.在做摄像头数据采集处理之前,需要配置OV5640传感器内部寄存器使其按要求正常工作,详细内容请参见<OV5640自动对焦照相模组应用指南>.首先要关注OV ...

  4. IMX6ULL MINI用ov5640摄像头

    内核配置 配置内核 Location:                                                             │ │     -> Device ...

  5. 【正点原子FPGA连载】 第三十章双目OV5640摄像头LCD显示实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南

    1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套实验源码+手册+视频下载地址: h ...

  6. 基于zynq7100的OV5640摄像头照相机实验,提供工程源码和技术支持

    目录 1.设计架构 2.工程简介 3.zynq配置 4.sd卡文件系统FATFS配置 5.sd卡文件系统FATFS读写测试 6.OV5640摄像头显示测试 7.OV5640摄像头循环拍照测试 8.OV ...

  7. Three——三、动画执行、画布大小、渲染帧率和相机适配体验

    文章: Three--一.初识Three以及基础的前端场景搭建(结尾含源码) Three--二.加强对三维空间的认识 Three--三.动画执行.画布大小.渲染帧率和相机适配体验 Three--四.几 ...

  8. 【正点原子FPGA连载】 第三十五章双目OV5640摄像头HDMI显示实验 摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0

    1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套实验源码+手册+视频下载地址: h ...

  9. linux摄像头 自动对焦,基于H3在Linux下驱动OV5640摄像头的方法与流程

    技术特征: 1.基于H3在Linux下驱动OV5640摄像头的方法,其特征在于,包括如下步骤: S1打开OV5640摄像头所对应的设备文件/dev/videoX: S2为OV5640摄像头驱动添加读写 ...

最新文章

  1. 算法题-大数相乘问题
  2. Entity Framework Core 之数据库迁移
  3. 蔡徐坤团队获得”微博年度最佳团体“!vivo X23幻彩版却实力抢眼
  4. Java坦克大战(四)
  5. 局域网传输文件_局域网微信?这是什么神仙玩法
  6. 微信小程序--萌系登陆界面
  7. 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e
  8. MIT线性代数1806(35) 总复习
  9. 电商短视频运营应该怎么做
  10. 【酸甜苦辣】记迭代一的酸甜苦辣(妍喆篇)
  11. android 锁机代码‘’,android手机锁机txt代码
  12. Juniper设备审计
  13. 智链ChainNova携手IBM推出端到端区块链解决方案
  14. Android制作粒子爆炸特效
  15. 适配器模式(对象适配器)
  16. Kibana 使用 KQL 查询语法-kibana 常用查询语法
  17. 树莓派(十三)——使用flask创建视频流媒体服务器
  18. eclipse web 项目目录结构
  19. kali下载中文输入法
  20. 从零开始搭建一个项目-前端框架(vue)

热门文章

  1. JS中的堆和栈怎么理解?
  2. 初学Java的安装和环境配置全教程
  3. 谷歌浏览器被hao123劫持
  4. 计算机应用基础施宏伟,广东岭南职业技术学院2020年自主招生动漫制作技术专业考试大纲(面向中职)...
  5. 激动!一直困扰的“无法使用KMS服务”终于解决啦
  6. hadoop学习提纲
  7. MHT: Basic Methods for Data Association(六)Multiple Hypothesis Tracking 多假设追踪(1)
  8. js实现图片拷贝到剪贴板
  9. 文件完整性校验和数字签名
  10. Python123 C编程题答案解析