📄 gfdemo01.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"><html><head> <title>Description of gfdemo01</title> <meta name="keywords" content="gfdemo01"> <meta name="description" content="1DDEMO01 Demonstrate 1-D Gabor functionality"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="generator" content="m2html © 2003 Guillaume Flandin"> <meta name="robots" content="index, follow"> <link type="text/css" rel="stylesheet" href="../m2html.css"></head><body><a name="_top"></a><div><a href="../index.html">Home</a> > <a href="index.html">gabortb-v0.4.1</a> > gfdemo01.m</div><!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png"> Master index</a></td><td align="right"><a href="index.html">Index for gabortb-v0.4.1 <img alt=">" border="0" src="../right.png"></a></td></tr></table>--><h1>gfdemo01</h1><h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>1DDEMO01 Demonstrate 1-D Gabor functionality</strong></div><h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>function [] = gfdemo01; </strong></div><h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre class="comment"> 1DDEMO01 Demonstrate 1-D Gabor functionality
References:
[1] Kamarainen, J.-K., Kyrki, V., Kalviainen, H., Gabor
Features for Invariant Object Recognition, Research
report 78, Department of Information Technology,
Lappeenranta University of Technology
Author(s):
Joni Kamarainen <Joni.Kamarainen@lut.fi>
Ville Kyrki <Ville.Kyrki@lut.fi>
Copyright:
The Gabor Features in Signal and Image Processing Toolbox is
Copyright (C) 2000 by Joni Kamarainen and Ville Kyrki.
$Name: $ $Revision: 1.2 $ $Date: 2003-03-03 10:51:17 $</pre></div><!-- crossreference --><h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>This function calls:<ul style="list-style-image:url(../matlabicon.gif)"><li><a href="gfcreatefilter.html" class="code" title="function [g]=gfcreatefilter(f0,gamma,n,varargin)">gfcreatefilter</a> GFCREATEFILTER Create normalized 1-D Gabor filter in time domain.</li><li><a href="gfcreatefilterf.html" class="code" title="function [g]=gfcreatefilterf(f0,gamma,N,varargin)">gfcreatefilterf</a> GFCREATEFILTERF Create normalized 1-D Gabor filter in the frequency domain.</li><li><a href="gfplotfiltersf.html" class="code" title="function []=gfplotfiltersf(f0,gamma,N)">gfplotfiltersf</a> GFPLOTFILTERSF Plot 1-D normalized Gabor filters in the frequency domain.</li></ul>This function is called by:<ul style="list-style-image:url(../matlabicon.gif)"></ul><!-- crossreference --><h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre>0001 <span class="comment">% 1DDEMO01 Demonstrate 1-D Gabor functionality</span>0002 <span class="comment">%</span>0003 <span class="comment">% References:</span>0004 <span class="comment">% [1] Kamarainen, J.-K., Kyrki, V., Kalviainen, H., Gabor</span>0005 <span class="comment">% Features for Invariant Object Recognition, Research</span>0006 <span class="comment">% report 78, Department of Information Technology,</span>0007 <span class="comment">% Lappeenranta University of Technology</span>0008 <span class="comment">%</span>0009 <span class="comment">% Author(s):</span>0010 <span class="comment">% Joni Kamarainen <Joni.Kamarainen@lut.fi></span>0011 <span class="comment">% Ville Kyrki <Ville.Kyrki@lut.fi></span>0012 <span class="comment">%</span>0013 <span class="comment">% Copyright:</span>0014 <span class="comment">%</span>0015 <span class="comment">% The Gabor Features in Signal and Image Processing Toolbox is</span>0016 <span class="comment">% Copyright (C) 2000 by Joni Kamarainen and Ville Kyrki.</span>0017 <span class="comment">%</span>0018 <span class="comment">%</span>0019 <span class="comment">% $Name: $ $Revision: 1.2 $ $Date: 2003-03-03 10:51:17 $</span>0020 <span class="comment">%</span>0021 <a name="_sub0" href="#_subfunctions" class="code">function [] = gfdemo01;</a>0022 0023 disp(<span class="string">'Step 1: GENERATE TEST FUNCTION'</span>);0024 disp(<span class="string">'Let''s construct a test signal from two different components:'</span>);0025 disp(<span class="string">'(1) first component is N(0,1) white noise from t=1..1000'</span>);0026 t = [0:999];0027 w = randn(1,1000);0028 plot(t,w,<span class="string">'LineWidth'</span>,1);0029 input(<span class="string">'<RETURN>'</span>);0030 disp(<span class="string">'(2) and second component a Sin signal of frequency 1/10 and amplitude 2 at t=501..600 .'</span>);0031 sin100wl = 10;0032 sing100length = 100;0033 sin100 = [zeros(1,500) 2*sin(2*pi*1/sin100wl*[1:100]) zeros(1,400)];0034 plot(t,sin100,<span class="string">'LineWidth'</span>,1);0035 input(<span class="string">'<RETURN>'</span>);0036 disp(<span class="string">'Two signals together.'</span>);0037 x = w+sin100;0038 plot(t,x,<span class="string">'LineWidth'</span>,1);0039 input(<span class="string">'<RETURN>'</span>);0040 0041 <span class="comment">% create 1-D spatial Gabor filter</span>0042 disp(<span class="string">'Step 2: FILTER WITH TIME DOMAIN GABOR FILTER'</span>);0043 disp(<span class="string">'Let''s try to catch the sin-signal by time domain Gabor filter on same frequency 1/10'</span>);0044 disp(<span class="string">'and with Gamma value 1. Filter size would be for example 101.'</span>);0045 gwl = 10;0046 gamma = 1;0047 g = <a href="gfcreatefilter.html" class="code" title="function [g]=gfcreatefilter(f0,gamma,n,varargin)">gfcreatefilter</a>(1/gwl,gamma,101);0048 plot(1:101,real(g),<span class="string">'k-'</span>,1:101,imag(g),<span class="string">'b-'</span>,<span class="string">'LineWidth'</span>,1);0049 legend(<span class="string">'Re'</span>,<span class="string">'Im'</span>);0050 input(<span class="string">'<RETURN>'</span>);0051 0052 <span class="comment">% filter signal with given filter and plot magnitude</span>0053 disp(<span class="string">'If the test signal x and filter g are now convolved conv(g,x)'</span>);0054 disp(<span class="string">'we can calculate the magnitudes of the filter response (note response at t=501..600)'</span>);0055 resp1 = conv(g,x);0056 plot(t,abs(resp1(51:1050)).^2,<span class="string">'LineWidth'</span>,1);0057 input(<span class="string">'<RETURN>'</span>);0058 0059 <span class="comment">% convert signal to Fourier domain</span>0060 disp(<span class="string">'Step 3: FILTER WITH FREQUENCY DOMAIN GABOR FILTER'</span>);0061 disp(<span class="string">'For faster computation we can transform x to Fourier domain X=fft(x)'</span>);0062 X = fft(x);0063 plot(1:1000,real(X),1:1000,imag(X),<span class="string">'LineWidth'</span>,1);0064 legend(<span class="string">'Re'</span>,<span class="string">'Im'</span>);0065 input(<span class="string">'<RETURN>'</span>);0066 0067 disp(<span class="string">'and generate frequency domain Gabor filter G'</span>);0068 G = <a href="gfcreatefilterf.html" class="code" title="function [g]=gfcreatefilterf(f0,gamma,N,varargin)">gfcreatefilterf</a>(1/gwl,gamma,1000);0069 plot(G,<span class="string">'LineWidth'</span>,1);0070 legend(<span class="string">'Only Re component'</span>);0071 input(<span class="string">'<RETURN>'</span>);0072 0073 <span class="comment">% calculate response in Freq domain</span>0074 disp(<span class="string">'Now the convolution is a multiplication in the frequency domain'</span>);0075 RESP = X.*G;0076 plot(1:1000,real(RESP),1:1000,imag(RESP),<span class="string">'LineWidth'</span>,1);0077 legend(<span class="string">'Re'</span>,<span class="string">'Im'</span>);0078 input(<span class="string">'<RETURN>'</span>);0079 0080 <span class="comment">% back to time domain and plot response</span>0081 disp(<span class="string">'which can be of course transformed back to time domain'</span>)0082 resp2 = ifft(RESP);0083 plot(t,abs(resp1(51:1050)).^2,<span class="string">'k-'</span>,t,abs(resp2).^2,<span class="string">'r--'</span>,<span class="string">'LineWidth'</span>,1);0084 legend(<span class="string">'time domain response'</span>,<span class="string">'frequecy domain response in time domain'</span>);0085 input(<span class="string">'<RETURN>'</span>);0086 0087 <a href="gfplotfiltersf.html" class="code" title="function []=gfplotfiltersf(f0,gamma,N)">gfplotfiltersf</a>(1./(1*2.^[1 2 3 4]),[1 1 1 1],100);0088 title(<span class="string">'GFPLOTFILTERSF'</span>);0089 disp(<span class="string">'1-D Gabor filters can be used to localize and detect signals in'</span>);0090 disp(<span class="string">'both, time and frequency, domains simultaneously'</span>);</pre></div><hr><address>Generated on Fri 23-Nov-2007 14:52:42 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> © 2003</address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -