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相关推荐

  1. 优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V

    优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V 关于RISC-V的二三事 risc-v官网 ❝ https://riscv.org/ RISC-V(跟我读:"risk--- ...

  2. 优秀的 Verilog/FPGA开源项目介绍(二十八)- DSP(Digital Signal Processing)

    优秀的 Verilog/FPGA开源项目介绍(二十八)- DSP(Digital Signal Processing) 介绍 FPGA在数字信号处理领域一直有着比通用CPU得天独厚的优势,所以一直都受 ...

  3. 优秀的 Verilog/FPGA开源项目介绍(二十五)- FPGA图像处理库

    今天介绍几个和图像处理的项目,废话不多说,我们开始吧~ FPGA-Imaging-Library https://github.com/dtysky/FPGA-Imaging-Library 介绍 一 ...

  4. 优秀的 Verilog/FPGA开源项目介绍(二十一)- 卷积神经网络(CNN)

    介绍 在深度学习中,卷积神经网络(CNN或ConvNet)是一类人工神经网络(ANN),最常用于分析视觉图像. CNN 也称为移位不变或空间不变人工神经网络(Shift Invariant or Sp ...

  5. 优秀的IC/FPGA开源项目(一)-FPGA+CMOS+USB/SD架构开源项目

    优秀的IC/FPGA开源项目(一)-FPGA+CMOS+USB/SD架构开源项目 <优秀的IC/FPGA开源项目>是新开的系列,旨在介绍单一项目,会比<优秀的 Verilog/FPG ...

  6. 优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味

    优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味 Hello,大家好,之前给大家分享了大约一百多个关于FPGA的开源项目,涉及PCIe.网络.RISC-V.视频编码等等,这次给 ...

  7. 优秀的 Verilog/FPGA开源项目介绍(一)-PCIe通信

    优秀的 Verilog/FPGA开源项目介绍(一)-PCIe通信 今天开始会陆续介绍一些优秀的开源项目,项目基本都是和FPGA或HDL相关的.对于一些找工作或者急需项目经验的人来说,这些项目都有一定的 ...

  8. 学习Coding-iOS开源项目日志(二)

    继续前篇:<学习Coding-iOS开源项目日志(一)>,接着本第二篇<学习Coding-iOS开源项目日志(二)>讲解Coding-iOS开源项目. 前言:作为初级程序员,想 ...

  9. 开源项目Krita学习(二)

    开源项目Krita学习(二) 专有名词记录 nightly版本: 所谓nightly版本,通常是开发者自己维护的一个版本.白天的时候开发者们将各自的修改提交到一个中心代码库,然后在晚上做一次编译得到的 ...

最新文章

  1. Go 1.16 的这个新变化需要适应下:go get 和 go install 的变化
  2. php curl获取响应,php – cUrl – 获取html响应正文
  3. 美国服务器百度抓取耗时不稳定,百度或者其他搜索引擎抓取频次快慢的因素,还会受什么有影响?...
  4. 《Note --- Unreal 4 --- Sample analyze --- StrategyGame(continue...)》
  5. 【渝粤教育】电大中专消费者行为学30分钟交卷作业 题库
  6. java获取10位随机数_Java基础:JAVA中BitSet使用详解
  7. [html] 如何使用普通元素拥有像textarea元素一样缩放?
  8. 面向接口编程的优点_为什么我们要面向接口编程
  9. Spring3 整合 Hibernate4实现数据库操作(1)
  10. java质数判断程序_java判断一个数是否为素数/质数
  11. android 崩溃捕获_Android使用FileProvider捕获图像相机图库
  12. JAVA 反射练习 打印指定类名的所有信息
  13. html用js发post请求,使用js拼接表单发送post请求示例
  14. js设计模式-状态模式-示例(高压锅状态)
  15. R 计算变量之间的相关性
  16. spark-sql-perf
  17. sublime text 3143 授权码
  18. 复正弦信号、实数信号的DFT
  19. 差分GPS接收机定位原理
  20. 计算机SCI 源代码,计算机类SCI检索源刊.doc

热门文章

  1. Java实现第八届蓝桥杯日期问题
  2. 想对大一大二学生说一些心里话
  3. 短信验证码、手机验证码等为什么是6位?
  4. python爬虫获取拉钩网在线搜索招聘信息(超实用!)
  5. 股票数据的获取(tushare)
  6. 大厂面试机器学习算法(0):特征工程 | 数据预处理
  7. 【北亚服务器数据恢复】华为OceanStor系列服务器重装系统导致分区不可访问的数据恢复
  8. 【博客523】k8s修改pod的内核参数以优化服务网络性能
  9. python与会计的论文_甭管前浪后浪,写完论文的先浪!
  10. Python必学模块之CSV模块