完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,
我正在尝试在vivado HLS中制作中值滤波器,并且我已经被协助制作测试平台但是函数imread似乎无法被程序识别。 我会添加我的文件,如果有人可以帮助它会很棒。 最好的祝福。 这是源代码: // #define KMED 3 // KMED可以是3,5,7,Ö // #define KKMED 1 // KKMED == 1 for 3x3 window // #define MIN(x,y)((x)>(y)?(y):( x)) // #define MAX(x,y)((x)>(y)?(x):( y)) //#包括 // #include“hls_video.h” // #include“hls_opencv.h” #include“HLSAXIStreamMedian.h” // #include“ap_axi_sdata.h” //#包括 //#包括 //#包括 //使用命名空间hls; //#包括 // typedef ap_axis spix; // //#ifndef GRAY11 // typedef unsigned char pix_t; //每像素8位 // // //#其他 //#包括 // typedef ap_int pix_t; //每像素11位 //#万一 // // #define MAX_HEIGHT 1080 // #define MAX_WIDTH 1920 int ret; pix_t中位数(pix_t窗口[KMED * KMED]) { #pragma HLS PIPELINE II = 1 #pragma HLS ARRAY_RESHAPE变量=窗口完成dim = 1 int const N = KMED * KMED; pix_t t [N],z [N]; char i,k,stage; //在本地复制输入数据 for(i = 0; i = KMED-1)&&(r = KMED-1)&&(c = 0& c> = 0) { // KKMED == 1表示3x3窗口 // KKMED == 2表示5x5窗口 //outData.data = pix; //outData.keep = 1; //outData.strb = 1; //outData.user = 1; //outData.last = 0; //outData.id = 1; //outData.dest = 1; // out_pix [r-KKMED] [c-KKMED] = outData; out_pix [r-KKMED] [c-KKMED] .data = pix; out_pix [r-KKMED] [c-KKMED] .keep = 1; out_pix [r-KKMED] [c-KKMED] .strb = 1; out_pix [r-KKMED] [c-KKMED] .user = 1; out_pix [r-KKMED] [c-KKMED] .last = 0; out_pix [r-KKMED] [c-KKMED] .id = 1; out_pix [r-KKMED] [c-KKMED] .dest = 1; ret = 0; } } // L2循环结束 } // L1循环结束 } //函数结束 这是头文件: #define KMED 3 // KMED可以是3,5,7,Ö #define KKMED 1 // KKMED == 1 for 3x3 window #define MIN(x,y)((x)>(y)?(y):( x)) #define MAX(x,y)((x)>(y)?(x):( y)) #include“opencv / cxcore.h” #包括 #包括 #包括 #include“hls_video.h” #include“hls_opencv.h” #包括 #include“ap_axi_sdata.h” #包括 #包括 #包括 #包括 使用命名空间hls; #包括 typedef ap_axis spix; #ifndef GRAY11 typedef unsigned char pix_t; //每像素8位 #其他 #包括 typedef ap_int pix_t; //每像素11位 #万一 #define MAX_HEIGHT 1080 #define MAX_WIDTH 1920 void top_median(spix in_pix [MAX_HEIGHT] [MAX_WIDTH], spix out_pix [MAX_HEIGHT] [MAX_WIDTH], short int height,short int width); spix in_pix [MAX_HEIGHT] [MAX_WIDTH]; spix out_pix [MAX_HEIGHT] [MAX_WIDTH]; spix out_pixtb [MAX_HEIGHT] [MAX_WIDTH]; 短int高度; 短宽度; pix_t中位数(pix_t窗口[KMED * KMED]); 这是测试台: #include“HLSAXIStreamMedian.h” int main(void){ spix imageIn [MAX_HEIGHT] [MAX_WIDTH]; //如果它们很大,可能需要malloc spix imageOut [MAX_HEIGHT] [MAX_WIDTH]; spix imageGold [MAX_HEIGHT] [MAX_WIDTH]; static uint8_t frameIn [MAX_HEIGHT * MAX_WIDTH]; FILE * imgFile = fopen(“C:/img.bin”,“rb”); //“rb”很重要 - 强制图像以二进制模式打开。 的fread(frameIn,1,MAX_HEIGHT * MAX_WIDTH,imgFile); FCLOSE(imgFile); //将数据组织为所需的图像类型。 spix dataIn [MAX_HEIGHT] [MAX_WIDTH]; for(int y = 0; y 模拟要么不能用于imread函数,因为它无法解析,或者如果我删除了这个函数,那么我得到一个错误说./HLSAXIStreamMedian_tb.cpp:113:49:错误:不匹配'operator!=' 在'imageOut [j]!= imageGold [j]' |
|
相关推荐
1个回答
|
|
我已将测试台更改为:
#include“HLSAXIStreamMedian.h” int main(void){ spix imageIn [MAX_HEIGHT] [MAX_WIDTH]; //如果它们很大,可能需要malloc spix imageOut [MAX_HEIGHT] [MAX_WIDTH]; spix imageGold [MAX_HEIGHT] [MAX_WIDTH]; static uint8_t frameIn [MAX_HEIGHT * MAX_WIDTH]; FILE * imgFile = fopen(“C:/img.bin”,“rb”); //“rb”很重要 - 强制图像以二进制模式打开。 的fread(frameIn,1,MAX_HEIGHT * MAX_WIDTH,imgFile); FCLOSE(imgFile); //将数据组织为所需的图像类型。 spix dataIn [MAX_HEIGHT] [MAX_WIDTH]; for(int y = 0; y 现在我收到这个错误: ../HLSAXIStreamMedian_tb.cpp:107:15:错误:'('令牌)之前缺少模板参数 |
|
|
|
只有小组成员才能发言,加入小组>>
2384 浏览 7 评论
2800 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2264 浏览 9 评论
3336 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2431 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
759浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
548浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
371浏览 1评论
1966浏览 0评论
685浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 00:51 , Processed in 1.264179 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号