
xilinx暑期学校
文章平均质量分 96
豆沙粽子好吃嘛!
这个作者很懒,什么都没留下…
展开
-
xilinx 暑期学校项目(二) 通过HLS实现二维傅里叶变换(2Dfft)及图像数据读入读出方法
要进行维纳滤波,首先就是要将图像矩阵通过二维fft变换到频域。但是hls_fft.h中只有一维fft的函数,因此我们采用对行逐行进行一维fft,再对列逐行进行一维fft来实现二维fft的效果。文章目录自带的fft例程二维fft的实现数据的读入和读出读入读出维纳滤波操作自带的fft例程自带的fft例程中包括有如下四个函数void dummy_proc_fe( bool direction, config_t* config, cmpxData in[FFT_LENGTH],原创 2020-08-03 20:55:09 · 2001 阅读 · 4 评论 -
xilinx 暑期学校项目(一) 简单介绍
文章目录项目内容大概内容维纳滤波实现方法项目内容本次我们选的课题是——基于PYNQ-Z2的失焦图像去模糊系统其项目的github地址如下github地址大概内容我们根据一些文献资料得知当成像点不在焦平面上时,其点会扩散成半径为r的模糊圆盘,有r/r0=(∣v0−v∣)/vr/r_0 =(|v_0-v|)/vr/r0=(∣v0−v∣)/v模糊可以视为原图像和点扩散图像的卷积h(x,y)=1/(2πσ2)exp[(−(x2+y2))/(2σ2)]h(x,y)=1/(2πσ^2 ) e原创 2020-08-03 20:20:09 · 1124 阅读 · 0 评论 -
高斯模糊与图像失焦,附Python代码实现
图像失焦与高斯模糊图像失焦散焦成像原理1:当成像点不在焦平面上时,其点会扩散成半径为r的模糊圆盘,有r/r0=(∣v0−v∣)/vr/r_0 =(|v_0-v|)/vr/r0=(∣v0−v∣)/v常用的点扩散函数包括圆柱形分布和高斯分布。其中高斯分布为h(x,y)=1(2πσ2)exp[(−(x2+y2))(2σ2)]h(x,y)=\frac{1}{(2πσ^2 ) } exp[\frac{(-(x^2+y^2))}{(2σ^2 )}]h(x,y)=(2πσ2)1exp[(2σ2)原创 2020-07-27 18:49:24 · 2718 阅读 · 2 评论 -
xilinx 暑期学校学习笔记(Day 6) Vitis及PYNQ-Z2上的Canny边缘提取
VITIS基本地位其地位相当于是系统内核,将底层的平台硬件抽象,将AI模型部署到DPU上。优化器神经网络的裁剪,将权重为0 的连接去除。支持Caffe,Darknet,TensorFlow量化器权重和激活量化成8bit支持校准支持Caffe,TensorFlow,Pytorch(Q1,2020)有GPU和CPU版本量化后的精度下降一般在1%以下。编译器将量化后的神经网络编译成DPU能识别的东西分析器对生成后每层网络的性能等数据进行分析。Runtime...原创 2020-07-25 23:31:11 · 2154 阅读 · 1 评论 -
xilinx 暑期学校学习笔记(四) 加速代码与量化、稀疏
文章目录矩阵乘法的优化矩阵的reshape缓存的加入PIPELINE REWIND卷积神经网络加速分块划分访问和内存的流水化卷积层量化和稀疏模型量化带宽稀疏化存储脉动阵列实际操作producer和consumer完整的脉动阵列卷积到脉动阵列的映射矩阵乘法的优化原程序#include "matrixmul.h"void matrixmul( mat_a_t a[MAT_A_ROWS][MAT_A_COLS], mat_b_t b[MAT_B_ROWS][MAT_B_COLS],原创 2020-07-23 17:25:14 · 1565 阅读 · 1 评论 -
xilinx暑期学校学习笔记(二) 离散余弦变换DCT压缩算法
文章目录原创 2020-07-22 15:43:39 · 1234 阅读 · 0 评论 -
xilinx 暑期学校学习笔记(三)HLS优化语法与资源
文章目录优化语法**硬件资源指定语法****数组划分语法**流水化STREAM函数内联循环**循环边界**循环展开资源内容**硬件资源****数值精度**模块接口优化语法硬件资源指定语法指定向FPGA硬件资源映射时的资源类型##pragma HLS RESOURCE variable =<temp>core =<Xilinxcore>Examples :a = b + c;# pragma HLS RESOURCE variable =a core =AddSub_D原创 2020-07-22 13:09:12 · 2281 阅读 · 3 评论 -
xilinx暑期学校学习笔记(一)基于HLS的FIR滤波器
代码分析源文件内容为#include "fir.h" void fir ( data_t *y, data_t x ) { const coef_t c[N+1]={ #include "fir_coef.dat" }; static data_t shift_reg[N]; acc_t acc; int i; acc=(acc_t)shift_reg[N-1]*(acc_t)c[N]; loop: for (i=N-1;i!=0;i--)原创 2020-07-21 01:03:27 · 1687 阅读 · 0 评论