当前位置: 首页 > wzjs >正文

义务 网站建设互联网营销培训

义务 网站建设,互联网营销培训,贵阳市人民政府网站,培训网站开发流程目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 DCT离散余弦变换 4.2 IDCT逆离散余弦变换 4.3 树结构实现1024点IDCT的原理 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) matlab仿真结果 FPGA仿真结果 由于FP…

目录

1.算法运行效果图预览

2.算法运行软件版本

3.部分核心程序

4.算法理论概述

4.1 DCT离散余弦变换

4.2 IDCT逆离散余弦变换

4.3 树结构实现1024点IDCT的原理

5.算法完整程序工程


1.算法运行效果图预览

(完整程序运行后无水印)

matlab仿真结果

FPGA仿真结果

       由于FPGA中的数据通常采用定点表示,在计算过程中会引入量化和舍入误差。因此,上述FPGA的测试结果,在数值较小时,和MATLAB存在一点误差。

2.算法运行软件版本

vivado2019.2

Matlab2022a

3.部分核心程序

(完整版代码包含详细中文注释和操作步骤视频)

`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date:    19:52:27 04/01/2014 
// Design Name: 
// Module Name:    myDD16 
// Project Name: 
// Target Devices: 
// Tool versions: 
// Description: 
//
// Dependencies: 
//
// Revision: 
// Revision 0.01 - File Created
// Additional Comments: 
//
//
module myDD16(x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,Z1,Z2,Z3,Z4,Z5,Z6,Z7,Z8,Z9,Z10,Z11,Z12,Z13,Z14,Z15,Z16);input signed[15:0] x1;
input signed[15:0] x2;
input signed[15:0] x3;
input signed[15:0] x4;
input signed[15:0] x5;
input signed[15:0] x6;
input signed[15:0] x7;
input signed[15:0] x8;
input signed[15:0] x9;
input signed[15:0] x10;
input signed[15:0] x11;
input signed[15:0] x12;
input signed[15:0] x13;
input signed[15:0] x14;
input signed[15:0] x15;
input signed[15:0] x16;
output signed[15:0]Z1;
output signed[15:0]Z2;
output signed[15:0]Z3;
output signed[15:0]Z4;
output signed[15:0]Z5;
output signed[15:0]Z6;
output signed[15:0]Z7;
output signed[15:0]Z8;
output signed[15:0]Z9;
output signed[15:0]Z10;
output signed[15:0]Z11;
output signed[15:0]Z12;
output signed[15:0]Z13;
output signed[15:0]Z14;
output signed[15:0]Z15;
output signed[15:0]Z16;//STEP1
//STEP1
wire signed[15:0]s11_1;
wire signed[15:0]s11_2;
wire signed[15:0]s11_3;
wire signed[15:0]s11_4;
wire signed[15:0]s11_5;
wire signed[15:0]s11_6;
wire signed[15:0]s11_7;
wire signed[15:0]s11_8;assign s11_1 = x1 + x16;
assign s11_2 = x2 + x15;
assign s11_3 = x3 + x14;
assign s11_4 = x4 + x13;
assign s11_5 = x5 + x12;
assign s11_6 = x6 + x11;
assign s11_7 = x7 + x10;
assign s11_8 = x8 + x9;wire signed[31:0]s12t_1;
wire signed[31:0]s12t_2;
wire signed[31:0]s12t_3;
wire signed[31:0]s12t_4;
wire signed[31:0]s12t_5;
wire signed[31:0]s12t_6;
wire signed[31:0]s12t_7;
wire signed[31:0]s12t_8;
assign s12t_1 = (x1 - x16)*32610;
assign s12t_2 = (x2 - x15)*31357;
assign s12t_3 = (x3 - x14)*28899;
assign s12t_4 = (x4 - x13)*25330;
assign s12t_5 = (x5 - x12)*20788;
assign s12t_6 = (x6 - x11)*15447;
assign s12t_7 = (x7 - x10)*9512;
assign s12t_8 = (x8 - x9)*3212;wire signed[15:0]s12_1;
wire signed[15:0]s12_2;
wire signed[15:0]s12_3;
wire signed[15:0]s12_4;
wire signed[15:0]s12_5;
wire signed[15:0]s12_6;
wire signed[15:0]s12_7;
wire signed[15:0]s12_8;
assign s12_1 = s12t_1[29:14];
assign s12_2 = s12t_2[29:14];
assign s12_3 = s12t_3[29:14];
assign s12_4 = s12t_4[29:14];
assign s12_5 = s12t_5[29:14];
assign s12_6 = s12t_6[29:14];
assign s12_7 = s12t_7[29:14];
assign s12_8 = s12t_8[29:14];//STEP2
//STEP2
wire signed[15:0]Y1_1;
wire signed[15:0]Y1_2;
wire signed[15:0]Y1_3;
wire signed[15:0]Y1_4;
wire signed[15:0]Y1_5;
wire signed[15:0]Y1_6;
wire signed[15:0]Y1_7;
wire signed[15:0]Y1_8;
wire signed[15:0]Y2_1;
wire signed[15:0]Y2_2;
wire signed[15:0]Y2_3;
wire signed[15:0]Y2_4;
wire signed[15:0]Y2_5;
wire signed[15:0]Y2_6;
wire signed[15:0]Y2_7;
wire signed[15:0]Y2_8;
myDD8 U1(
.x1(s11_1),
.x2(s11_2),
.x3(s11_3),
.x4(s11_4),
.x5(s11_5),
.x6(s11_6),
.x7(s11_7),
.x8(s11_8),
.Z1(Y1_1),
.Z2(Y1_2),
.Z3(Y1_3),
.Z4(Y1_4),
.Z5(Y1_5),
.Z6(Y1_6),
.Z7(Y1_7),
.Z8(Y1_8)
);
myDD8 U2(
.x1(s12_1),
.x2(s12_2),
.x3(s12_3),
.x4(s12_4),
.x5(s12_5),
.x6(s12_6),
.x7(s12_7),
.x8(s12_8),
.Z1(Y2_1),
.Z2(Y2_2),
.Z3(Y2_3),
.Z4(Y2_4),
.Z5(Y2_5),
.Z6(Y2_6),
.Z7(Y2_7),
.Z8(Y2_8)
);//Reorder
//Reorderassign Z1=Y1_1;
assign Z3=Y1_2;
assign Z5=Y1_3;
assign Z7=Y1_4;
assign Z9=Y1_5;
assign Z11=Y1_6;
assign Z13=Y1_7;
assign Z15=Y1_8;
assign Z2={Y2_1[15],Y2_1[15:1]};
assign Z4=Y2_2-Z2;
assign Z6=Y2_3-Z4;
assign Z8=Y2_4-Z6;
assign Z10=Y2_5-Z8;
assign Z12=Y2_6-Z10;
assign Z14=Y2_7-Z12;
assign Z16=Y2_8-Z14;endmodule
23_019m

4.算法理论概述

      在数字信号处理领域,离散余弦变换(Discrete Cosine Transform, DCT)及其逆变换(Inverse Discrete Cosine Transform, IDCT)扮演着重要角色。

4.1 DCT离散余弦变换

       对于一个长度为 N 的一维离散信号 x(n),n=0,1,⋯,N−1,其 N 点离散余弦变换(DCT - II)定义为:

4.2 IDCT逆离散余弦变换

4.3 树结构实现1024点IDCT的原理

       树结构实现 1024 点 IDCT 的核心思想是分治策略。将一个 1024 点的 IDCT 问题分解为两个 512 点的 IDCT 问题,每个 512 点的 IDCT 问题又可以进一步分解为两个 256 点的 IDCT 问题,以此类推,直到分解为 8 点的 IDCT 问题。

      通过上述的结构,最终可以将问题归结为8点IDCT的计算。对于8点IDCT,设输入系数为Z(k),k=0,1,⋯,7,输出为z(n),n=0,1,⋯,7,其计算公式为:

       具体来说,首先对输入的1024点IDCT系数进行分组,得到两个512点IDCT的输入系数;然后对每个512点IDCT的输入系数再进行分组,得到两个256点IDCT的输入系数,以此类推,直到得到多个8点IDCT的输入系数。接着,计算所有8点IDCT的结果;再根据这些结果计算256点IDCT的结果;然后根据256点IDCT的结果计算512点IDCT的结果;最后根据512点IDCT的结果计算1024点IDCT的结果。

5.算法完整程序工程

OOOOO

OOO

O

http://www.dtcms.com/wzjs/488886.html

相关文章:

  • 网站建设服务有哪些内容网页制作工具有哪些
  • 邯郸做移动网站的公司佛山网站建设制作
  • 宜春网站建设哪家专业网站开发技术
  • 交友小程序开发googleseo排名公司
  • 南京黑马程序员培训学校官网优化包括什么内容
  • 网络课程系统网站建设费用广告软文范例200字
  • 创意产品网站百度数据指数
  • 网站开发做原型吗百度软件
  • 阜阳公司做网站南宁百度首页优化
  • 尚义住房和城乡规划建设局网站精准客源推广引流
  • 医美网站建设东莞网络排名优化
  • wordpress 文章封面seo优化关键词0
  • 做网站建设还有钱赚吗百度免费咨询
  • 用wix做外贸网站网站seo思路
  • 阿里云服务器上做网站seo发帖工具
  • 福建网站建设公司seo门户网站
  • 做营销网站制作搜索引擎广告形式有
  • 网站建设 南昌招标百度seo运营工作内容
  • 网站建设推广优化域名检测工具
  • 大气装饰公司网站源码友谊平台
  • 微网站工程案例展示企业营销策划书范文
  • 网上做兼职正规网站有哪些免费关键词搜索引擎工具
  • 企业邮箱怎么使用seo网站内容优化
  • 深圳皇冠科技有限公司网站网站建设是什么工作
  • 如何使用爱站网seo内链优化
  • 长春做网站推广西安百度竞价代运营
  • 创建网站的网站郑州seo询搜点网络效果佳
  • 开发wordpress 需要学习seo推广哪家公司好
  • 如何用asp.net做网站百度浏览器极速版
  • 公安网站后台管理系统贵州seo推广