Xem mẫu
- Ch¬ng
7
C¸c thuéc tÝnh cña ¶nh sè
7.1 ChØ dÉn
Trong ch¬ng nµy chóng ta sÏ nghiªn cøu c¸c vÊn ®Ò sau:
TÇm quan träng cña pha trong c¸c ¶nh sè.
C¸c gi¶ thiÕt lÊy mÉu 2-D víi c¸c øng dông trªn c¸c ¶nh.
Nh©n ®«i ®é ph©n gi¶i trªn ¶nh.
7.2 TÇm quan träng cña pha
Trong ch¬ng 6, phÇn 6.4.2, tÇm quan träng cña ®Æc tÝnh tuyÕn tÝnh
hoÆc ®Æc tÝnh pha zero cho c¸c bé läc 2-D ®· ®îc ®Ò cËp. Tuy nhiªn,
chóng ta cha kiÓm tra t¸c dông ph©n bè ®Æc tÝnh pha cña c¸c ¶nh sè ®èi
víi c¸c néi dung th«ng tin cã trªn ¶nh. §Ó lµm vËy, chóng ta sÏ ®a ra
hai thö nghiÖm.
Thö nghiÖm 1:
1. Rót ra 2-D FFT cña mét ¶nh ®îc cho.
2. TÝnh ®Æc tuyÕn pha:
x (k )
k tan i
x (k )
r
ë ®©y xi(k) biÓu diÔn cho c¸c phÇn gi¸ trÞ ¶o vµ xr(k) biÓu diÔn c¸c gi¸
trÞ thùc cña FFT.
3. TÝnh to¸n vµ lu trong mét file c¸c gi¸ trÞ phøc
cos( k ) i sin(k ), i = -1
4. Rót ra biÕn ®æi ngîc FFT cña file cuèi cïng.
125
- §Ó ®a c¸c bíc trªn, ch¬ng tr×nh 7.1 ®îc cung cÊp. Ch¬ng tr×nh
thùc hiÖn trªn ¶nh “IKRAM.IMG” cña h×nh 3.2a (Ch¬ng 3). KÕt qu¶
®îc ®a ra trªn h×nh 7.1.
Ch¬ng tr×nh 7.1 "PHASE.C". KiÓm tra tÇm quan träng cña pha.
/* Program for testing the importance of phase in digital images.*/
#define pi 3.141592654
#include
#include
#include
#include
#include
#include
#include
void bit_reversal(unsigned int *, int , int);
void WTS(float *, float *, int, int);
void FFT(float *xr, float *xi, float *, float *,int, int);
void transpose(FILE *, int, int);
void FFT2D(FILE *, FILE *, float *, float *, unsigned int *,
int,int,int);
126
- H×nh 7.1 T¸ch riªng pha ®èi víi ¶nh "IKRAM.IMG".
void main()
{
int N,n2,m,i,j,NT;
unsigned int *L;
float *wr,*wi ;
double nsq,xr,xi,theta;
FILE *fptri,*fptro,*fptrt,*fptrr;
float *buffi,*buffo, max,min,scale;
unsigned char file_name[14], *buff,file_name2[14];
clrscr() ;
printf("Enter name of file containing FFT data-->");
scanf("%s",file_name);
fptri=fopen(file_name,"rb");
if(fptri==NULL)
{
printf("\nFile does not exist.");
exit(1);
}
fptrt=fopen("temp.img","wb+");
again :
127
- gotoxy(1,2);
printf(" ");
gotoxy(1,2);
printf("Enter File for storing display IFFT data->");
scanf("%s",file_name);
if(((stricmp("temp.img",file_name2))==0)||
((stricmp("temp2.img",file_name2))==0))
printf("This is a reserved file name. Use some other name.");
goto again;
fptrr=fopen(file_name,"wb");
nsq=(double)filelength(fileno(fptri))/(2*sizeof(float));
N=(int)sqrt(nsq);
m=(int)(log10((double)N)/log10((double)2));
clrscr( ) ;
NT=2*N*sizeof(float);
buffi=(float *)malloc(NT*sizeof(float));
buffo=(float *)malloc(NT*sizeof(float));
buff=(char *)malloc(N*sizeof(char));
for(i=0;i
- n2=(N>>1)-1;
wr=(float *)malloc(n2*sizeof(float));
wi=(float *)malloc(n2*sizeof(float));
fptro=fopen("temp2.img","wb+"),
WTS(wr,wi,N,1);
FFT2D(fptrt,fptro,wr,wi,L,N,m,1);
fptro=fopen("temp2.img","rb");
max=0.0; min=1.e10;
for(i=0;i
- {
fread(buffi,NT,1,fptro);
for(j=0;j
- 1
T
2W
ë ®©y T tÝnh theo gi©y vµ W tÝnh theo herzt.
Chøng minh. Xem xÐt biÓu diÔn Fourier cña mét d·y c¸c tÝn hiÖu liªn
tôc xa(t)
1
( j)e jt d (7.1a)
x a (t ) X a
2
jt
(7.1b)
X a ( j) xa (t )e dt
NÕu x(n) biÓu diÔn mét d·y ®îc rót ra tõ viÖc lÊy mÉu xa(t) t¹i c¸c
kho¶ng b»ng nhau T, chóng ta cã thÓ dïng biÓu thøc (7.1a) ®Ó viÕt:
1 jnT
(7.2)
x(n) x a (nT ) X a ( j)e d
2
Tõ biÕn ®æi rêi r¹c Fourier chóng ta còng rót ra
1 j
) e j n d (7.3)
x ( n) X (e
2
ë ®©y X (e j ) lµ biÕn ®æi Fourier rêi r¹c cña x(n). B©y giê cÇn tÝnh mèi
quan hÖ X a ( j) theo X (e j ) .
§Ó xem xÐt mèi quan hÖ gi÷a c¸c biÓu thøc (7.2) vµ (7.3) ta cÇn xem
xÐt biÓu thøc (7.2) nh mét tæng cña c¸c tÝch ph©n trong c¸c kho¶ng cã
®é dµi 2/T.
( 2 r 1)
T
1 jnT
(7.4)
x ( n) X a ( j)e d
2 r
( 2 r 1)
T
Mçi phÇn trong tæng cã thÓ quy vÒ tÝch ph©n trong kho¶ng tõ ®Õn
T
b»ng c¸ch thay ®æi biÕn ®Ó rót ra
T
T
2r jnT j 2rn
1
(7.5)
x(n ) X a ( j j )e e d
2 T
r
T
131
- NÕu thay ®æi thø tù cña tÝch ph©n vµ tÝnh tæng vµ chó ý r»ng e j 2rn 1
víi mäi gi¸ trÞ nguyªn cña r vµ n, th× chóng ta rót ra
T 2r jnT
1
X a ( j j (7.6)
x ( n) )e d
2 T
r
T
Víi thay thÕ , biÓu thøc (7.6) trë thµnh
1 2r jn
1
T X a ( j T j T )e d (7.7)
x ( n)
2 r
cã cïng d¹ng víi biÓu thøc (7.3). V× vËy, chóng ta cã thÓ x¸c ®Þnh
2r
1
X ( e j ) (7.8)
Xa(j j )
T T T
r
T¬ng tù, chóng ta cã thÓ biÓu diÔn biÓu thøc (7.8) theo biÕn tÇn sè
t¬ng tù nh
2r
1
X (e jT ) (7.9)
X a ( j j )
T T
r
BiÓu thøc (7.8) vµ (7.9) cung cÊp mèi quan hÖ gi÷a biÕn ®æi Fourier
thêi gian liªn tôc vµ biÕn ®æi Fourier cña mét d·y c¸c mÉu. Cho vÝ dô,
nÕu X a ( j) ®îc giíi thiÖu trong h×nh 7.3a, th× X (e j ) sÏ ®îc giíi thiÖu
trong h×nh 7.3b nÕu W (/T) (hoÆc T (2/2W)), cô thÓ, nÕu W tÝnh
theo hezt T (1 / 2W ) . V× thÕ, nÕu lÊy mÉu t¹i tèc ®é tèi thiÓu gÊp ®«i tÇn
sè cao nhÊt trong x a ( j) , th× X (e j ) ®îc x¸c ®Þnh thµnh X a ( j) trong
kho¶ng . TÇn sè lÊy mÉu nµy thêng ®îc gäi lµ tÇn sè
T T
Nyquist. NÕu T 1/(2W), th× c¸c b¶n dÞch cña X a ( j) sÏ bÞ chång lªn
nhau nh trong h×nh 7.3c. VÊn ®Ò nµy gäi lµ hiÖn tîng trïm phæ
(aliasing).
NÕu T 1/(2W) (W tÝnh theo hezt), th× cã kh¶ n¨ng kh«i phôc xa(t) tõ
x(nT) bëi mét phÐp néi suy xÊp xØ, mµ sÏ ®îc chóng ta ®Ò cËp ®Õn phÇn
tiÕp theo.
Tõ phÐp biÕn ®æi Fourier thêi gian liªn tôc:
132
-
T
1 jt
x a (t ) X a ( j)e d
2
T
133
- (7.10)
Xa(j)
BiÕn ®æi Fourier cña tÝn
hiÖu liªn tôc
w
-w
(a)
X(ej)
w
T
-w
w
T (b) T
X ( e j ) w
T
-w w
T T
(c)
134
nguon tai.lieu . vn