FPGA 怎么读取图片
我是小白一个,大家教教我。
这种情况。比较困难。
VHDL或verilog直接读取文件的命令是不可综合,就是硬件不可实现的,但是可以把文件以二进制或其他进制的形式放入rom中,或从FPGA片外接收数据,比如接收外部DSP发送的文件等,进行处理。
像MATLAB那样处理是不支持综合的
用matlab把图片转成rgb或ycbcr格式 然后读如fpga就可以用vga口打出图像来了
我想用汉语(四川话也行)读取一张图片(比如bmp格式)并对其处理,如显示其灰度图,就像Matlab那样。
我是小白一个,大家教教我。
我想问一下具体怎么操作,matlab和FPGA数据流和接口上分别如何实现,请多多指教
牛逼,用四川话读图片来处理。
用VHDL或Verilog 读取任意二进制文件的方法,搞个RAM 存bmp头(长度是固定的),另外1个RAM存RGB数据。注意一行必须是32即4个字节对齐。 依次读取像素点RGB (24 位) 或 RGBA(32位), ,处理完成后,再存回。 由于图片大小是固定的,bmp头信息是相同的。 可以做 bmp 输入和输出的处理系统。
//MATLAB
luna=imread('E:\matlab\matlab_data\imag_source\lena_black&white.jpg');
fid = fopen('E:\matlab\matlab_file\temp.txt', 'wt');
fprintf(fid,'%3x\n ', luna); //要RESHAPE换成一列较为简单 ;
fclose(fid);
///MODELSIM
initial begin
$readmemh("'E:\matlab\matlab_file\temp.txt'",in_data);
end
学习一下
值得讨论一下
求帮助啊,感觉好难
我也在学这个,我看到书上是用System Generator 在Xilinx FPGA上开发,简单一点可以用From File 在这个模块中添加要用的图的地址。也可以用From Workspace 模块,再用回调函数,用.m文件(用reshape函数)把图像转换成一维数组,再把这个一维数组输出就好了输出模块用to workspace ,然后进行仿真就可以出现图像了
