FPGA-Imaging-Library
https://github.com/dtysky/FPGA-Imaging-Library
介绍
一个开源的FPGA图像处理库。
F-I-L是一个FPGA平台的开源的图像处理库,已经拥有了许多常用操作,并在不断更新中。这些操作被以IP核的形式进行了封装,遵循同一种规范化的接口,同时具有流水线和请求响应两种使用模式。
fpga_image_processing
https://github.com/damdoy/fpga_image_processing
介绍
少逻辑量FPGA图像处理库。在verilog中实现简单的图像处理操作,该项目围绕一个中央图像处理模块展开image_processing.v,该模块使用 verilator 仿真。在ICE40 FPGA上实现。
因为它针对的是低端 fpga 设备(无论是价格还是功耗),例如 ice40 ultraplus。它使用 1Mbit 的 ram 将图像存储到两个缓冲区中,即输入缓冲区和存储缓冲区。图像在输入缓冲区中加载和读取,计算在存储缓冲区中完成。这两个缓冲区可以交换。大多数操作将在存储缓冲区中完成,如果对两个图像应用操作(例如 binary_add),则生成的图像将写入存储缓冲区。
架构
ImageStitchBasedOnFPGA
https://github.com/mhhai/ImageStitchBasedOnFPGA
七路摄像头拼接
Image-Classification-using-CNN-on-FPGA
https://github.com/padhi499/Image-Classification-using-CNN-on-FPGA
项目是关于在 FPGA 上设计一个经过训练的神经 n/w(CIFAR-10 数据集),以使用深度学习概念(CNN-卷积神经网络)对图像 I/P 进行分类。
有 6 层(滑动窗口卷积、ReLU 激活、最大池化、扁平化、完全连接和 Softmax 激活)决定了我们的 I/P 图像的类别。Kernels/Filters用于从图像 I/P 进行特征检测。图像 I/P 可以是灰度/彩色的。
使用的工具
赛灵思 Vivado v17.4
Matlab vR2018.a
使用的语言
Verilog HDL
Image_sim
https://github.com/Bestduan/Image_sim
介绍
基于FPGA的图像处理模块(出自于crazybingo)(将里面的Intel的shift_RAM以及altsqrt的IP核换为Verilog来实现,方便实现跨平台移植)
含有图像的仿真模块
文件结构基于vscode下FPGA_Develop_Support插件
魔方图像处理
https://github.com/IdlessChaye/magicalcubeImageProcess
功能
使用ov7725获取magiccube表面正确位置的像素,通过hsv编码转换为3位颜色编码。
输出
6 个魔方表面 9 个正方形 3 位颜色编码。
板卡
Xilinx FPGA EGO1 xc7a35tcsg324
microshift_compression
https://github.com/zhangmozhe/microshift_compression
Microshift:一种高效的硬件图像压缩算法
这是 TCSVT 论文“Microshift: An Efficient Image Compression Algorithm for Hardware”的 Matlab 和 Verilog 实现
- Arxiv 论文:https://arxiv.org/abs/2104.09820
- IEEE 链接:https://ieeexplore.ieee.org/document/8529272
- Github 代码:https://github.com/zhangmozhe/microshift_compression
- 综合教程:https://github.com/zhangmozhe/microshift_compression/tree/master/VLSI%20design%20flow
描述
Microshift是一种有损图像压缩算法,可以在硬件上以极低的功耗高效实现。
- 在数据集上进行测试时,它可以将图像压缩到1.25 BPP,其结果质量优于最先进的片上压缩算法 ( PSNR=33.16, SSIM=0.90 )。
- 提出了一种高效的 VLSI 架构,并在 FPGA 上实现。
- ASIC 设计的结果进一步验证了低硬件复杂性和高功率效率。
- 我们的方法有望用于低功耗无线视觉传感器网络(WVSN)。
论文
https://github.com/zhangmozhe/microshift_compression/blob/master/paper.pdf
HDR
https://github.com/markos-stefanidis/FPGA-Based-HDR-algorithm
matlab-imageprocess
https://github.com/LiaoYuxuan/matlab-imageprocess
最后就是一些资料了,主要是图像处理算法,核心是冈萨雷斯数字图像处理MATLAB版本。
总结
终于介绍完了SNN、TPU、CNN和DNN,今天推荐几个视频/图像处理的项目,说实话其实这方面内容比较少,项目也是比较老旧,因为这方面内容太多,已经发展了几十年了,ASIC在这方面基本都满足了常规应用,所以在FPGA方面基本停滞不前了。但是国内像CrazyBingo等大佬还在这方面继续耕耘。后续我也准备追随大佬们的脚步出系列教程(围绕ISP)。
最后,还是感谢各个大佬开源的项目,让我们受益匪浅。后面有什么感兴趣方面的项目,大家可以在下面留言,今天就到这,我是爆肝的碎碎思,期待下期文章与你相见。
原文:OpenFPGA
作者:碎碎思
相关文章推荐
- 优秀的 Verilog/FPGA开源项目介绍(二十四)- 脉冲神经网络 (SNN)
- ZYNQ从放弃到入门(十一)- XADC 的报警和中断
- 优秀的 Verilog/FPGA开源项目介绍(二十二)- 深度神经网络 (DNN)
更多FPGA技术干货请关注FPGA 的逻辑技术专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。