FPGA开源项目:双目测距(一)之双目图像采集显示以及图片保存

news/2024/11/28 10:12:46/

1.简述

这个项目是大三下学期暑假(也就是2019年8份)完成的,当时的视频效果已发布在bilibili上,这是我们的省级的科研立项,其实就我一个人负责完成。发布bilibili后很多人比较感兴趣,打算年初回学校完成毕设期间开源的,一直拖到现在,工作后时间也比少了,条件也没在学校实验室好,只能尽力做好吧。
该视频bilibili连接: 双目测距.

2.准备

  • 摄像头模块:OV7725(以前是彩色MT9V034)
  • FPGA板卡:米联客ZYNQ7020
  • SD卡
  • 1080P的显示器
  • 正红色物体
  • 软件版本:vivado2019.1

3.双目硬件结构介绍

我之前一直用的MT9V034摄像头,换成ov7725的后驱动不了,查了很久这个问题没找到原因,为了节省时间直接改米联的例程。包括ARM的硬件结构如图所示,两个摄像头分辨率为640x480的视频流通过VDMA缓存到DDR,然后将视频流输出到OSD IP合成为1080P的视频流,最后送到HDMI在显示上显示。OSD IP可以将多路视频合成到一路视频,实现同屏显示。但是这个IP需要申请license,申请需要注册xilinx账户绑定个人电脑MAC地址就可以免费使用了,这个申请可以参考我的另一篇博客:最新 Xilinx vivado IP许可申请. 而摄像头的配置通过EMIO软件模拟IIC进行配置。
在这里插入图片描述

4.SDK软件

如图所示先进行EMIO的配置,其次进行摄像头配置,然后配置VDMA,最后进行按键将图像保存为图片,存到SD卡中,后面导入MATLAB进行算法仿真,也方便进行modelsim功能仿真。其中4个EMIO作为IIC使用,还有2个作为按键使用,用来保存图片。详细可以看代码吧。
在这里插入图片描述

5.效果

红色小球的距离大约为50CM,图像质量没有MT9V034的好,但是OV7725很便宜,比较亲民。
在这里插入图片描述

在这里插入图片描述

6.采集的图片

这个具体代码请参考:zynq SD卡写入摄像头图像(图片格式)
在这里插入图片描述

7.总结

现在完成第一步了,开源工程请关注我的公众号:芯王国 获取。下一步进行MATLAB双目测距算法的仿真,并将图片保存为TXT文件方便modelsim仿真使用,尽情期待!!!

欢迎关注我的公众号:芯王国,有更多的FPGA&数字IC的技术分享,还可以获取开源FPGA项目!

在这里插入图片描述


http://www.ppmy.cn/news/516560.html

相关文章

双目相机测距代码演示

双目测距的操作流程有四步:相机标定——双目校正——双目匹配——计算深度,具体内容参考 : https://blog.csdn.net/qq_38236355/article/details/88933839 其中相机标定通常用matlab现成的工具箱进行标定,具体操作参考&#xff1…

FMCW雷达测距实验

目录 1. FMCW雷达基本原理1.1 基本结构与原理 2. L波段FMCW雷达的基本介绍2.1 参数配置2.2 数据采集板2.3 雷达测距实验2.4 干扰机实验 本文介绍如何设计FMCW雷达测距实验。 1. FMCW雷达基本原理 1.1 基本结构与原理 雷达系统所用信号的频率随时间变化呈线性升高,这…

激光测距仪系统设计 c语言程序),激光测距仪系统设计(机械图,电路图,c语言程序)...

激光测距仪系统设计(机械图,电路图,c语言程序)(毕业论文22000字,cad图纸,答辩ppt) 摘 要 本次激光测距仪系统设计采用的是相位式测距法,相位激光测距又称调幅连续波激光测距通常是基于对目标回波相位的探测,在诸如军事、航空、工业和体育等领域已经取得广泛的应用。相位激光测…

红外测距模块 51单片机_智能激光测距

编者按:本文转载于酷耍(http:/kooshua.com) 一、设计目的 超声波测距和激光测距是现在比较常见的两种测距方式。两种方式相对比而言,激光测距的优点是以极小的一束激光发射出去再返回,精度为毫米级,几乎不受干扰,弥补了超声波测距易受环境干扰、误差大的缺陷。因此,采用激…

利用android手机摄像头智能测量物体距离,高度

经过在下调研了利用手机摄像头智能测距,半个月断断续续得出几个方法,附上两个demo,然而东西都比较垃圾,比起人们想要的,差距十万八千里。 为了科技的进步,我就自不量力地抛砖引玉了,希望能有大…

双目测距 SGBM算法 Python版

前言 首先进行双目定标,获取双目摄像头内部的参数后,进行测距。本次的双目视觉测距,基于SGBM算法。 注意:双目定标的效果会影响测距的精准度,建议大家在做双目定标时,做好一些(尽量让误差小) 如果不太了解双目视觉原理,建议先看看这篇文章:一篇文章认识《双目立体视…

YOLOv5+单目测距(python)

YOLOv5单目测距(python) 1. 相关配置2. 测距原理3. 相机标定3.1:标定方法13.2:标定方法2 4. 相机测距4.1 测距添加4.2 细节修改(可忽略)4.3 主代码 5. 实验效果 相关链接 1. YOLOV7 单目测距(p…

LabVIEW控制Arduino实现红外测距(进阶篇—6)

目录 1、项目概述 2、项目架构 3、硬件环境 4、Arduino功能设计 5、LabVIEW功能设计 5.1、前面板设计 5.2、程序框图设计 1、项目概述 红外测距是一种非直接接触的测量方式,由于其结构简单、抗干扰性强、成本低等优点,在测量测绘上得到广泛的运用…