FPGA开源项目:双目测距(二)之Matlab算法仿真以及图片转txt
1.简述
今天完成双目测距项目的第二部分,实现Matlab算法仿真,主要包括图像二值化、计算目标坐标、目标框选以及将图片转为txt用于后面的FPGA算法仿真。Matlab代码工程关注我的公众号:芯王国,后台回复 双目测距算法仿真 可获得。
2.图像算法仿真
2.1 采集双目图片集
上一篇已完成FPGA双目采集显示,并采集双目图片。如下图所示,目前采集了两组,分别为50cm和60cm的。有条件可以多采集一些图片来测试,增加线性度。
2.2 Matlab代码讲解
1)二值化
下图将彩色图像的RGB格式转为YcbCr格式,通过设定阈值将图像二值化。红色小球是我们目标物体,效果如第二幅图所示,这个可以自己去调整。
2)目标坐标计算
这部分计算目标的坐标,主要是物体的上下左右四个边界坐标。注意我这里没有滤波就进行处理,需要的可以自己加一下。
3)目标距离计算
上面得到目标的四个边界坐标,只将两个水平坐标作为目标距离计算的值,具体计算如下图:
这个是50cm图片计算的值,没有进行多组数据测试,但是为了保持线性度,需要采集多组不同距离和位置的图片进行计算。
距离计算的原理可以看下图学习。
4)包围盒(目标框选)
这部分根据四个坐标残剩包围盒实现框选目标物体,具体如下:
2.3 Matlab算法处理效果
下图是总体效果,三幅图像:原图、二值化、以及包围盒识别。
3.图片2txt
得力于Matlab,转换的过程不算复杂,希望国内也能有想Matlab这样的工具不受制于人。公众号后台回复 双目图像TXT 可获得工程。
下面是转换出来的图像数据,都是16进制数,核对下数据量对不对,一张图640x480=
307200。这些数据用于FPGA仿真使用。
4.总结
终于完成第二步了,下一步也就是最后一步,在FPGA上实现双目测距算法,需要大量的仿真,比较漫长,争取两天搞定。两个Matlab代码工程关注我的公众号:芯王国,后台回复 双目测距算法仿真 和 双目图像TXT可获得。
FPGA开源项目:双目测距(二)之Matlab算法仿真以及图片转txt相关推荐
- 优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V
优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V 关于RISC-V的二三事 risc-v官网 ❝ https://riscv.org/ RISC-V(跟我读:"risk--- ...
- 优秀的 Verilog/FPGA开源项目介绍(二十八)- DSP(Digital Signal Processing)
优秀的 Verilog/FPGA开源项目介绍(二十八)- DSP(Digital Signal Processing) 介绍 FPGA在数字信号处理领域一直有着比通用CPU得天独厚的优势,所以一直都受 ...
- 优秀的 Verilog/FPGA开源项目介绍(二十五)- FPGA图像处理库
今天介绍几个和图像处理的项目,废话不多说,我们开始吧~ FPGA-Imaging-Library https://github.com/dtysky/FPGA-Imaging-Library 介绍 一 ...
- 优秀的 Verilog/FPGA开源项目介绍(二十一)- 卷积神经网络(CNN)
介绍 在深度学习中,卷积神经网络(CNN或ConvNet)是一类人工神经网络(ANN),最常用于分析视觉图像. CNN 也称为移位不变或空间不变人工神经网络(Shift Invariant or Sp ...
- 优秀的IC/FPGA开源项目(一)-FPGA+CMOS+USB/SD架构开源项目
优秀的IC/FPGA开源项目(一)-FPGA+CMOS+USB/SD架构开源项目 <优秀的IC/FPGA开源项目>是新开的系列,旨在介绍单一项目,会比<优秀的 Verilog/FPG ...
- 优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味
优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味 Hello,大家好,之前给大家分享了大约一百多个关于FPGA的开源项目,涉及PCIe.网络.RISC-V.视频编码等等,这次给 ...
- 优秀的 Verilog/FPGA开源项目介绍(一)-PCIe通信
优秀的 Verilog/FPGA开源项目介绍(一)-PCIe通信 今天开始会陆续介绍一些优秀的开源项目,项目基本都是和FPGA或HDL相关的.对于一些找工作或者急需项目经验的人来说,这些项目都有一定的 ...
- 学习Coding-iOS开源项目日志(二)
继续前篇:<学习Coding-iOS开源项目日志(一)>,接着本第二篇<学习Coding-iOS开源项目日志(二)>讲解Coding-iOS开源项目. 前言:作为初级程序员,想 ...
- 开源项目Krita学习(二)
开源项目Krita学习(二) 专有名词记录 nightly版本: 所谓nightly版本,通常是开发者自己维护的一个版本.白天的时候开发者们将各自的修改提交到一个中心代码库,然后在晚上做一次编译得到的 ...
最新文章
- Go 1.16 的这个新变化需要适应下:go get 和 go install 的变化
- php curl获取响应,php – cUrl – 获取html响应正文
- 美国服务器百度抓取耗时不稳定,百度或者其他搜索引擎抓取频次快慢的因素,还会受什么有影响?...
- 《Note --- Unreal 4 --- Sample analyze --- StrategyGame(continue...)》
- 【渝粤教育】电大中专消费者行为学30分钟交卷作业 题库
- java获取10位随机数_Java基础:JAVA中BitSet使用详解
- [html] 如何使用普通元素拥有像textarea元素一样缩放?
- 面向接口编程的优点_为什么我们要面向接口编程
- Spring3 整合 Hibernate4实现数据库操作(1)
- java质数判断程序_java判断一个数是否为素数/质数
- android 崩溃捕获_Android使用FileProvider捕获图像相机图库
- JAVA 反射练习 打印指定类名的所有信息
- html用js发post请求,使用js拼接表单发送post请求示例
- js设计模式-状态模式-示例(高压锅状态)
- R 计算变量之间的相关性
- spark-sql-perf
- sublime text 3143 授权码
- 复正弦信号、实数信号的DFT
- 差分GPS接收机定位原理
- 计算机SCI 源代码,计算机类SCI检索源刊.doc