1. dft與idft
function [xk] =dft(xn,n)%untitled 此處顯示有關此函式的摘要
%此處顯示詳細說明
n=0:1:n-1;
k=n;
wn=exp(-1i*2*pi/n);
nk=n'
*k;wnnk=wn.^nk;
xk=xn*wnnk
end
function [xk] =idft(xk,n)2 差分方程求序列及dft%untitled2 此處顯示有關此函式的摘要
%此處顯示詳細說明
n=0:1:n-1;
k=n;
wn=exp(-1i*2*pi/n);
nk=n'
*k;wnnk=wn.^(-nk);
xk=(xn*wnnk)/n
end
clc;clear;
b=[1,0];
a=[1,-1];
%y(n)-y(n-1)=x(n)
y_1=1; x0=0;
x=1:10; %激勵序列x(n)
y_0=1;
y=[y_0];
for n=2:10y=[y,y(end)+x(n)]; %序列遞推
endsubplot(1,2,1)
stem(y);
xlabel('n
');ylabel(
'y(n)');
title(
'遞推後的序列y');
3 幅頻特性與相頻特性
%實驗一(2) 幅頻特性與相頻特性計算,畫出零極點clc; %清除命令列
close all; %清除視窗
figure
b=[0,1];
a=[1,-2,1]; %選用系統函式為:h(z)=z/(1-z)^2[r,p,k]=residue(b,a) %求z反變換
zplane(b,a);title(
'零極點圖
'); %零極點圖,z=1是二階極點
figure
n=0:10;
h=impz(b,a,11);
stem(n,h,
'filled
'); title('
衝激響應h(n)
'); %衝激響應圖,h(n)=n*u(n)
figure
w=pi*freqspace(100);
freqz(b,a,w); title(
'幅頻特性與相頻特性
'); %系統頻率響應的幅頻特性和相頻特性圖
4 fft 求卷積
clear;xn=sin(0.4*[1:15])'
;hn=0.9.^(1:20)';
m=length(xn);n=length(hn);
nx=1:m;nh=1:n;
%l>=n+m+1;
l=pow2(nextpow2(m+n-1));
ticxk=fft(xn,l);hk=fft(hn,l);
yk=xk.*hk;
yn=ifft(yk,l);
toctic,
yn1=conv(xn,hn);
tocsubplot(4,1,1),stem(1:15,xn,'
filled
','k
');title('
序列一'
);subplot(4,1,2),stem(1:20,hn,'
filled
','k
');title('
序列二'
可以看到內建函式的速度要快很多
5 線性卷積
%實驗一(3) 序列的線性卷積計算clc;
clear;
x=[3,11,7,0,-1,4,2]; %序列1
h=[2,3,0,-1,2,1]; %序列2
y=conv(x,h) %求線性卷積,並輸出結果
subplot(4,1,1)
stem([0:length(x)-1],x,'
filled
'); %序列1影象
xlabel('n
'); ylabel('
幅度'); title('x'
);
subplot(4,1,2)
stem([0:length(h)-1],h,'
filled
'); %序列2影象
xlabel('n
'); ylabel('
幅度'); title('h'
)subplot(4,1,3)
stem([0:length(y)-1],y,'
filled
'); %線性卷積結果影象
xlabel('n
'); ylabel('
幅度'); title('
線性卷積')
%dft方法
m=size(x,2);n=size(h,2);
l=m+n-1;
x1=zeros(1,l);x1(1:m)=x;
h1=zeros(1,l);h1(1:n)=h;
xk=dft(x1,l);hk=dft(h1,l);
wk=xk.*hk
y2=idft(wk,l)
subplot(4,1,4)
stem([0:l-1],y2,'
filled');
xlabel('n
'); ylabel('
幅度'); title('
dft 線性卷積
GPU程式設計之GLSL(五) 二維離散卷積
本程式共分為7個檔案 1個主程式檔案,2個ctimer檔案,2個creader檔案,2個著色器檔案 兩個creader檔案和2個著色器檔案分別在前邊的 二 和 四 中給出,這裡就不詳細解釋了 首先我們來講一下比較簡單的檔案 ctimer檔案 主要是為了獲取時間,以便比較程式效能 這是ctimer.h...
在OpenCV裡實現二維離散卷積3
從結果裡可以看到,當卷積使用full計算時,輸出結果會比原來輸入的影象變大,這樣會破壞影象的大小,如果經過幾遍這樣的計算,影象就會變得非常大,有時候這種輸出結果會導致問題出現。那麼有沒有輸入影象與輸出影象一樣大小的卷積運算呢?是有的,就是same模式計算,如下圖 當卷積核的中心 k 與image的邊...
離散時間控制系統
對連續時間訊號進行週期性取樣得到離散時間序列。取樣訊號x t 加入到取樣開關的輸入端,如果取樣開關每隔時間 t 閉合一次,取樣開關為理想開關,那麼連續訊號f t 經過取樣就得到了一連串的脈衝序列x t 稱為衝激取樣器 i 理想取樣的數學描述 x t x t t x kt x kt t kt x t ...