当前位置: 首页 > backend >正文

闲庭信步使用图像验证平台加速FPGA的开发:第七课——获取RAW图像

(本系列只需要modelsim即可完成数字图像的处理,每个工程都搭建了全自动化的仿真环境,只需要双击文件就可以完成整个的仿真,大大降低了初学者的门槛!!!!如需要该系列的工程文件请关注知识星球:成工fpga,关注即送200GB学习资料,链接已置顶!)

如果我们有摄像头,那就可以通过配置摄像头相关的寄存器来直接获取RAW视频数据,但是我们现在是FPGA的功能仿真,我们可以根据测试的图片来提取出RAW图片。

前面的学习可以知道,RAW图像有RGGB,GRBG,GBRG,BGGR等四种格式,不管那种格式,在一幅RAW图像中,格式都是按照2x2的因子反复出现的,如下所示。

我们要从RGB三个通道中取数生成一幅RAW图像,因为是2x2的因子,也就是说第0,1行,第0,1列;第0,1行,第2,3列;第0,1行第4,5列格式都是一样的,这样我们只要能够区分出来每行的奇偶位置和没列的奇偶位置,就能够正确的对RGB通道分别进行取数。

在obtain_raw.sv文件中,使用vsync_flag和hsync_flag来 表示行列的奇偶位置

有了奇偶位置的标示,根据pattern_sel信号来选择每个位置的像素点数据。

由于取数据采用时序逻辑需要一个时钟周期,所以场同步,行同步和数据有效指示信号延时一个时钟周期即可。

在顶层top文件中例化obtain_raw模块。

在tb_image_sim文件中的第二个initial块中,将图像测试平台和FPGA硬件仿真的结果保存并比对。

我们双击sim文件夹下的top_tb.bat文件,完成系统的自动化仿真。

可以看到在modelsim的Transcript有如下的打印信息,图像测试平台和FPGA硬件仿真的结果一致。

打开img文件夹,也可以看到图像测试平台和FPGA硬件仿真的结果是一致的(no_seq*是图像测试平台处理后的图片,seq*是FPGA硬件仿真处理后的结果)。

http://www.xdnf.cn/news/15002.html

相关文章:

  • 首批|美创智能数据安全分类分级平台获CCIA“网络安全新产品”
  • 聚铭安全管家平台2.0实战解码 | 安服篇(二):无人值守自动化封禁
  • Docker 高级管理--容器通信技术与数据持久化
  • HUAWEI HiCar6.0的新变化
  • Git 详解:从概念,常用命令,版本回退到工作流
  • 多信息流展示利器 - 利用FeedCard优化企业通知与公告发布
  • 征程 6|工具链量化简介与代码实操
  • 基于Java+SpringBoot 协同过滤算法私人诊所管理系统
  • STM32第十八天 ESP8266-01S和电脑实现串口通信
  • SpringAI学习笔记-MCP客户端简单示例
  • OSPFv3和v2区别(续)
  • SKUA-GOCAD入门教程-第九节 面的创建与编辑1
  • RISC-V:开源芯浪潮下的技术突围与职业新赛道 (一)为什么RISC-V是颠覆性创新?
  • 二刷(李宏毅深度学习,醍醐灌顶,长刷长爽)
  • QML事件处理:鼠标、拖拽与键盘事件
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | StickyNavbar(粘性导航栏)
  • 【学习笔记】网络设备(华为交换机)基础知识 24 —— 以太网子接口基础知识
  • Java 阻塞队列:7种类型全解析
  • [Swarm] 上下文变量 | 接入function功能调用 | Mcp
  • Spring注解驱动开发
  • C语言使用Protobuf进行网络通信
  • Docker、Git与虚拟机:技术原理与深度对比(更新版)
  • SSH密钥 与 Ed25519密钥 是什么关系
  • 深入解析 structuredClone API:现代JS深拷贝的终极方案
  • 找出父节点名称和子节点名称拼接
  • C语言基础(1)
  • (四)机器学习小白入门YOLOv :图片标注实操手册
  • 插板式步进伺服模组:化工行业如何控制流量
  • Tensor数据转换
  • 华为eNSP防火墙实验(包含详细步骤)