zedboard zynq 学习 sobel 边缘检测 IP核 制作 根据 文档 Xapp890

官方文档http://www.xilinx.com/support/documentation/application_notes/xapp890-zynq-sobel-vivado-hls.pdf

 

准备工作

下载 工程文件 http://pan.baidu.com/s/1eQqwjBk 这是我用百度云分享的

如果不行了, 可以用 官方链接 https://secure.xilinx.com/webreg/clickthrough.do?cid=193509

 

sobel 算子边缘检测原理 这里不多说

就是一个卷积的过程  提取图片的边缘

例子

zedboard zynq 学习 sobel 边缘检测 IP核 制作 根据 文档 Xapp890_第1张图片

 

C代码如下

for(i = 0; i < height, i++){
for(j=0; j < width; j++){
x_dir = 0;
y_dir = 0;
if((i > 0 && (i < (height-1)) && (j > 0) && (j < (width-1))){
for(rowOffset = -1; rowOffset <= 1; rowOffset++){
for(colOffset = -1; colOffset <=1; colOffset++){
x_dir = x_dir + input_image[i+rowOffset][j+colOffset]* Gx[1+rowOffset][1+colOffset];
y_dir = y_dir + input_image[i+rowOffset][j+colOffset]* Gy[1+rowOffset][1+colOffset];
}
}
edge_weight = ABS(x_dir) + ABS(y_dir);
output_image[i][j] = edge_weight;
}

 

先把下载的压缩包在你的工作空间解压

zedboard zynq 学习 sobel 边缘检测 IP核 制作 根据 文档 Xapp890_第2张图片

那么接下来 打开vivado HLS  注意不是 vivado

点击 Open Project

zedboard zynq 学习 sobel 边缘检测 IP核 制作 根据 文档 Xapp890_第3张图片

打开刚才解压的工程  xapp890\sobel_rd_prj  点击 ok

有如下界面

zedboard zynq 学习 sobel 边缘检测 IP核 制作 根据 文档 Xapp890_第4张图片

这是eclipse 改的

Source中是cpp文件

Test Bench中是 测试文件

可以看到 sobel_test.cpp 里面有 main函数

 

点击 image 生成RTL级算法文件

 

如果有FLEXnet Licensing error:-5,357

去申请一个30天试用license 教程 http://blog.sina.com.cn/s/blog_6759fd540101huec.html

 

可以看到 syn下面 有 Verilog 和 vhdl 文件夹  这就是生成的算法

然后点击image间HDL文件打包  传给EDK

 

好,后面我也不知道了。 不想学习,去玩耍了

你可能感兴趣的:(APP)