FPGA大赛【一】设计概述

两盒软妹~` 提交于 2020-12-05 22:04:38

【注】该项目是我们团队参加2019届全国大学生FPGA大赛的作品,系统主要实现视频任意角度旋转。该项目最终晋级决赛,并获得紫光同创企业特别奖。该系列文章介绍我们团队的作品。关注公众号“数字积木”对话框回复 FPGA2019 ,即可获得该项目的工程源代码,详细的文档说明,MATLAB仿真代码。

第一部分 设计概述 (Design Introduction) 
1.1 设计目的 
随着各类图像旋转算法的层出不穷,图像旋转逐渐成为近年来各类赛事的热门赛 题。然而在基于 FPGA 的图像旋转设计方面,可行的方案较少。因此,我们本次采用了国产紫光同创的 PGL22G 这块开发板进行图像旋转方案的设计,制作成了一个完整的具有快速处理,实时显示的系统。本作品从图像旋转这一经典的问题出发,采用 CORDIC(Coordinate Rotation Digital Computer)算法,结合图传技术,实时显示技术,以 FPGA 作为核心处理器,通 过自制的上位机软件实现软件对硬件的精确控制,达到对摄像头采集的图像进行实时旋 转并且显示的目的,并且可以通过上位机对旋转后的图像进行显示模式,灰度阈值的设定。本设计的核心思路为:在图像旋转设计中,插入一个图像旋转模块。将从摄像头缓存的图像先读取出来,组合成一帧旋转的图像后再写入 ddr 中,再由显示驱动模块读取进行显示。
1.2 设计要求 
PGL22G + DDR + CMOS Sensor + HDMI TX 
功能描述:系统主要实现视频任意角度旋转(360°,最小角度 1°) 
  • 1、CMOS Sensor 将图像以 DVP/MIPI 信号形式传到 FPGA;
  • 2、FPGA 通过外部控制,实现任意角度(精度 1 度)旋转控制;外部控制可自己选择, 如 UART、12C、GPIO、按键等;
  • 3、FPGA 内部接 DDR 控制器,实现图像旋转缓存; 
  • 4、图像旋转处理完成后,通过 HDMI 输出到显示器显示。

1.3 作品效果 
我们团队的作品不仅实现了比赛预定的视频图像旋转的功能,同时我们团队还另外 完成了视频图像的平移,简单缩放,灰度显示,黑白显示等功能。
原图 (正常显示)
1,顺时针旋转 22 度
2,顺时针旋转 90 度
3, 顺时针旋转 270
4, 顺时针旋转 341
缩放模式
灰度模式
黑白模式
欢迎关注,更精彩的内容等着你!

本文分享自微信公众号 - 数字积木(ggreat-top)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!