您当前的位置: 首页 >  图像处理

刘颜儿

暂无认证

  • 3浏览

    0关注

    99博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

图像处理7:测试文件

刘颜儿 发布时间:2022-07-22 22:58:39 ,浏览量:3

`timescale 1ns / 1ps

module Image_Processing_tb;
 
	integer iBmpFileId;                 //输入BMP图片
	integer oBmpFileId;                 //输出BMP图片
	integer oTxtFileId;                 //输入TXT文本
			
	integer iIndex = 0;                 //输出BMP数据索引
	integer pixel_index = 0;            //输出像素数据索引 
			
	integer iCode;      
			
	integer iBmpWidth;                  //输入BMP 宽度
	integer iBmpHight;                  //输入BMP 高度
	integer iBmpSize;                   //输入BMP 字节数
	integer iDataStartIndex;            //输入BMP 像素数据偏移量
		
	reg [ 7:0] rBmpData [0:2000000];    //用于寄存输入BMP图片中的字节数据(包括54字节的文件头)
	reg [ 7:0] Vip_BmpData [0:2000000]; //用于寄存视频图像处理之后 的BMP图片 数据 
	reg [7:0] rBmpWord;                //输出BMP图片时用于寄存数据(以word为单位,即4byte)
	
	reg [ 7:0] pixel_data;              //输出视频流时的像素数据
	
	reg clk;
	reg rst_n;
	
	reg [ 7:0] vip_pixel_data [0:230400];   //320x240x3

	
	//产生50MHz时钟
	initial clk = 0;
	always #10 clk = ~clk;

	
	//复位信号
	initial begin
		rst_n   = 0;
		#100;
		rst_n   = 1;
	end 
	
	
	
	//--------------------------------------------------//
	//------------读取外部的图片文件夹位置--------------//
	//--------------------------------------------------//
	initial begin
		//分别打开 输入/输出BMP图片,以及输出的Txt文本
		
		// 导入图片部分,需要更改
		iBmpFileId = $fopen("E:\\vivado_fpga\\Image_sobel\\Image_sobel\\picture\\ly\\luosi.bmp","rb");
		
		// 输出的图片
		oBmpFileId = $fopen("E:\\vivado_fpga\\Image_sobel\\Image_sobel\\picture\\ly\\luosi_test.bmp","wb+");

		oTxtFileId = $fopen("E:\\vivado_fpga\\Image_sobel\\Image_sobel\\picture\\ly\\luosi_3.txt","w+");
		
		// =======2种方法=======
		// 使用绝对路径:oBmpFileId = $fopen("E:\\vivado_fpga\\Image_sobel\\Image_sobel\\picture\\ly\\pic.bmp","wb+");
		// 将图片加入工程:iBmpFileId = $fopen("che_BMP.bmp","rb");
		
		
		//将输入BMP图片加载到数组中
		iCode = $fread(rBmpData,iBmpFileId);
	
		//根据BMP图片文件头的格式,分别计算出图片的 宽度 /高度 /像素数据偏移量 /图片字节数
		iBmpWidth       = {rBmpData[21],rBmpData[20],rBmpData[19],rBmpData[18]};
		iBmpHight       = {rBmpData[25],rBmpData[24],rBmpData[23],rBmpData[22]};
		iBmpSize        = {rBmpData[ 5],rBmpData[ 4],rBmpData[ 3],rBmpData[ 2]};
		iDataStartIndex = {rBmpData[13],rBmpData[12],rBmpData[11],rBmpData[10]};
		
		//关闭输入BMP图片
		$fclose(iBmpFileId);
		
		//将数组中的数据写到输出Txt文本中
		$fwrite(oTxtFileId,"%p",rBmpData);
		//关闭Txt文本
		$fclose(oTxtFileId);
			
		
		//延迟2ms,等待第一帧VIP处理结束
		#2000000    
		//加载图像处理后,BMP图片的文件头和像素数据
		for (iIndex = 0; iIndex             
关注
打赏
1659364566
查看更多评论
0.0423s