关闭

CCSv5中如何将图像导入DDR中

532人阅读 评论(0) 收藏 举报
分类:

首先,通过matlab将bmp格式的图像转换成dat格式

下例子以将连续四帧图像转换为dat格式为例:

clc;  
close all;  
clear all;  
%说明:生成DSP实验所用的图像数据Dat文件  
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
for i = 1:4
    str = strcat('D:\_Matlab_WorkSpace\', int2str(i), '.bmp');
    I = imread(str);
%I = imread('D:\_Matlab_WorkSpace\000001.bmp');%打开图像,这里改成自己的图像名及路径  
%将图像缩小一点,不然数据量太大  
%I = imresize(I,[128,128],'bicubic');%<span style="color:#ff0000;">缩小成128*128、二维FFT时需要图像为2的n次方</span>  
    figure,imshow(I);%显示图像  
    [N, M, dim] = size(I);%获取图像的高与宽  
    if(dim == 3)  
        I = rgb2gray(I);%如果打开的是彩色图像,则转换成灰度图像  
    end  
    fil = strcat('D:\_Matlab_WorkSpace\', int2str(i), '.dat');
    fid = fopen(fil,'w');%保存.dat图像数据文件  
    fprintf(fid,'%d %d %s %d %d\n',1651,2,'8cc0', 0, i*N*M);%写入二进制文件的第一行  
    %将图片数据写入Dat文件中  
    for n = 1:N  
        for m = 1:M  
            fprintf(fid,'%d\n',I(n,m));  
        end  
    end  
end
fclose(fid);  
disp('Run OK') 
将四个文件合并成一个即可。

其次,将图像导入DDR中,需要知道DDR的地址。查询cmd文件知道其起始地址为0x80000000

Build->Debug程序之后可通过Tools->Load Memory来加载图像信息。


加载成功后,可以通过Memory Browser输入起始地址来查看数据值。亦可通过Tools->Image Analyzer来显示图像。

Properties输入的参数如下图:


然后Refresh之后即可显示图像了。

最后,将DDR的起始地址0x80000000赋给一个变量,就可以通过这个变量对图像进行操作了。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:18200次
    • 积分:318
    • 等级:
    • 排名:千里之外
    • 原创:11篇
    • 转载:22篇
    • 译文:0篇
    • 评论:0条
    文章分类