A 车牌 识别系统在Matlab中实现,然后在FPGA Xilinx Spartan-6上使用以下代码实现 Verilog。下面是系统的测试环境 现场可编程门阵列.

影像记忆: 10张图像并将其转换为.dat格式(灰度数据)。我们使用$ readmemh(synthesizableizable)Verilog 命令 通过初始化内存 从.dat文件读取灰色数据。将10张图像转换为灰度格式并写入 通过使用Matlab到.dat文件。
监控LED: 当。。。的时候“done”当信号为上升沿时,此块定期显示车牌号码。

用于测试车牌识别系统的顶级Verilog代码:
// hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects // Verilog project: License Plate Recognition in Verilog and Matlab // Top level module for testing the license plate recognition system module Test_top(input clk // 33MHz ,rst, 开始, output reg[5:0] led ); reg [7:0] image_pixel_val; // Outputs wire 完成; // hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects wire [15:0] image_pixel_addr; wire [5:0] ReadCh; reg[5:0] num1,num2,num3,num4,num5,num6,num7; reg [2:0] count,count_4s; wire CharCheck; reg clk_4s,display; integer counter; reg [7:0] image_inv [0:65535]; // Instanitate the license plate recognition system LPChRec uut ( .clk(clk), .rst(rst), .start(start), .image_pixel_val(image_pixel_val), .image_pixel_addr(image_pixel_addr), .ReadCh(ReadCh), .CharCheck(CharCheck), .done(done) ); // Read License Plate Image file into 现场可编程门阵列 initial begin $readmemh ("10。dat", image_inv, 0, 65535); end always @(posedge clk or posedge rst) // clock 4s begin if(rst) begin clk_4s <= 1'b0; counter <= 0; end else begin counter <= counter + 1; if(counter <= 66000000) clk_4s <= 1'b0; else if(counter > 132000000) begin counter <=0; end else clk_4s <= 1'b1; end end always @(posedge clk) begin image_pixel_val <= image_inv[image_pixel_addr]; end // hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects always @(posedge clk or posedge rst) begin if(rst) begin count = 3'd0; num1 <= 40; num2 <=0; num3 <= 0; num4 <= 0; num5 <= 0; num6 <= 0; display <= 0; end else begin if(CharCheck) begin count = count + 1'd1; if(count==3'd1) num1 <= ReadCh; else if(count==3'd2) num2 <= ReadCh; else if(count==3'd3) num3 <= ReadCh; else if(count==3'd4) num4 <= ReadCh; else if(count==3'd5) num5 <= ReadCh; else if(count==3'd6) num6 <= ReadCh; else if(count==3'd7) num7 <= ReadCh; else begin num1 <= 0; num2 <=0; num3 <= 0; num4 <= 0; num5 <= 0; num6 <= 0; end end if(done) display <= 1; end end // hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects always @(posedge clk_4s or posedge rst) begin if(rst) begin count_4s <= 0; led <=0; end else begin if(display) begin count_4s <= count_4s + 1; if(count_4s==0) led <= num1; else if(count_4s==1) led <=num2; else if(count_4s==2) led <=num3; else if(count_4s==3) led <=num4; else if(count_4s==4) led <=num5; else if(count_4s==5) led <=num6; else if(count_4s==6) led <=num7; else count_4s <= 0; end end end endmodule
车牌识别系统的Verilog代码:
// hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects // Verilog project: License Plate Recognition in Verilog // Top level 用于车牌识别的Verilog代码 module LPChRec( input clk, input rst, input 开始, input [7:0] image_pixel_val, output [15:0] image_pixel_addr, output [5:0] ReadCh, output CharCheck, output 完成 ); wire [7:0] ccl_th_low; wire [7:0] ccl_th_high; wire [7:0] image_pixel_val1; wire [15:0] image_pixel_addr1; wire [15:0] ImgAddr; wire [7:0] ImgVal; wire [7:0] ObjAddr1; wire [55:0] ObjInfo; wire ccl_done,active; assign ccl_th_low = 8'd40; assign ccl_th_high = 8'd255; assign image_pixel_addr = (active)?ImgAddr:image_pixel_addr1; assign image_pixel_val1 = image_pixel_val; assign ImgVal = image_pixel_val; // hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects // Image processor unit image_processor image_processor_inst ( .image_pixel_addr(image_pixel_addr1), .image_pixel_val(image_pixel_val1), .clk(clk), .rst(rst), .ccl_start(start), .ccl_th_low(ccl_th_low), .ccl_th_high(ccl_th_high), .ccl_done(ccl_done), .ccl_mem_result_addr(ObjAddr1), .ccl_mem_result_data(ObjInfo) ); // hzgifts.cn 现场可编程门阵列 projects, Verilog projects, VHDL projects // Create object module CreateObj CreateObjInst ( .clk(clk), .rst(rst), .start(ccl_done), .thresh(ccl_th_low), .ObjInfo(ObjInfo), .ImgVal(ImgVal), .ObjAddr1(ObjAddr1), .ImgAddr(ImgAddr), .Char(ReadCh), .CharCheck(CharCheck), .active(active), .done(done) ); endmodule
Matlab识别结果:

车牌识别系统的视频演示 现场可编程门阵列:
什么是FPGA编程? 现场可编程门阵列与软件编程
面向学生的推荐且价格合理的Xilinx 现场可编程门阵列板
面向学生的推荐且价格合理的Altera 现场可编程门阵列板
推荐的 Verilog projects:
面向学生的推荐且价格合理的Xilinx 现场可编程门阵列板
面向学生的推荐且价格合理的Altera 现场可编程门阵列板
推荐的 Verilog projects:
2. FIFO存储器的Verilog代码
3. 用于16位单周期MIPS处理器的Verilog代码
4. Verilog HDL中的可编程数字延迟计时器
5. 用于数字电路中基本逻辑组件的Verilog代码
6. 用于32位无符号除法器的Verilog代码
7. 用于定点矩阵乘法的Verilog代码
8. Verilog HDL中的车牌许可证识别
9. 提前进位乘法器的Verilog代码
10。 微处理器的Verilog代码
11。 4x4乘法器的Verilog代码
12 停车场系统的Verilog代码
13 使用Verilog HDL在FPGA上进行图像处理
14。 如何使用Verilog HDL将文本文件加载到FPGA中
15 交通信号灯控制器的Verilog代码
16。 现场可编程门阵列上的闹钟的Verilog代码
17。 比较器设计的Verilog代码
18岁 D触发器的Verilog代码
19 Full Adder的Verilog代码
20 带testbench的计数器的Verilog代码
21 16位RISC处理器的Verilog代码
22 用于在FPGA上反跳按钮的Verilog代码
23。 如何为双向/输入端口编写Verilog Testbench
3. 用于16位单周期MIPS处理器的Verilog代码
4. Verilog HDL中的可编程数字延迟计时器
5. 用于数字电路中基本逻辑组件的Verilog代码
6. 用于32位无符号除法器的Verilog代码
7. 用于定点矩阵乘法的Verilog代码
8. Verilog HDL中的车牌许可证识别
9. 提前进位乘法器的Verilog代码
10。 微处理器的Verilog代码
11。 4x4乘法器的Verilog代码
12 停车场系统的Verilog代码
13 使用Verilog HDL在FPGA上进行图像处理
14。 如何使用Verilog HDL将文本文件加载到FPGA中
15 交通信号灯控制器的Verilog代码
16。 现场可编程门阵列上的闹钟的Verilog代码
17。 比较器设计的Verilog代码
18岁 D触发器的Verilog代码
19 Full Adder的Verilog代码
20 带testbench的计数器的Verilog代码
21 16位RISC处理器的Verilog代码
22 用于在FPGA上反跳按钮的Verilog代码
23。 如何为双向/输入端口编写Verilog Testbench
24 Verilog和LogiSim中的Tic Tac Toe游戏
25岁 Verilog中的32位5级流水线MIPS处理器(第1部分)
26 Verilog中的32位5级流水线MIPS处理器(第2部分)
27。 Verilog中的32位5级流水线MIPS处理器(第3部分)
28。 解码器的Verilog代码25岁 Verilog中的32位5级流水线MIPS处理器(第1部分)
26 Verilog中的32位5级流水线MIPS处理器(第2部分)
27。 Verilog中的32位5级流水线MIPS处理器(第3部分)
29。 复用器的Verilog代码
30岁 Verilog中的N位加法器设计
31。 Verilog和VHDL:通过示例解释
32。 现场可编程门阵列上时钟分频器的Verilog代码
33。 如何在Verilog中生成时钟使能信号
34。 用于PWM发生器的Verilog代码
35岁 Verilog编码与软件编程
你好,
回复删除我对复制此FPGA项目感兴趣,想知道您是否可以提供一些我可以使用的代码和文档。谢谢您的宝贵时间。
谢谢,
罗杰·C
请通过我的电子邮件与我联系:[email protected]
删除我将在去年完成同样的项目。请向我提供实施该项目的代码和步骤。
删除先感谢您
请通过[email protected]给我发送电子邮件
删除我们是否需要任何单独的程序来进行字符识别和检测?
回复删除我们需要更多其他代码来进行识别。不仅是上面的代码。
回复删除您是否拥有在fpga上实现此代码的所有代码?如果是,您能告诉我如何获得它吗?
回复删除有人有这个项目的完整代码吗?以上代码可用于车牌识别项目吗?
回复删除请发送给我该代码,该代码不完整
回复删除嗨,这只是示例代码,仅供参考。没有提供此项目的完整代码。
删除我要求所有成员提供此项目的完整代码,并告诉我该完整代码的来源,因为我的最终项目需要此代码
删除这个项目很复杂,需要时间。尝试花一些时间学习更多。
删除