File:Overlap-add algorithm.svg
Page contents not supported in other languages.
Tools
Actions
In other projects
Appearance
From Wikipedia, the free encyclopedia
File:Overlap-add algorithm.svg
Size of this PNG preview of this SVG file: 800 ×ばつ 579 pixels. Other resolutions: 320 ×ばつ 232 pixels | 640 ×ばつ 463 pixels | 1,024 ×ばつ 741 pixels | 1,280 ×ばつ 927 pixels | 2,560 ×ばつ 1,853 pixels | 855 ×ばつ 619 pixels.
Original file (SVG file, nominally 855 ×ばつ 619 pixels, file size: 140 KB)
This is a file from the Wikimedia Commons. Information from its description page there is shown below.
Commons is a freely licensed media file repository. You can help.
Commons is a freely licensed media file repository. You can help.
Summary
DescriptionOverlap-add algorithm.svg
English: A sequence of 5 plots depicts one cycle of the Overlap-add convolution algorithm. The first plot is a long sequence of data to be processed with a lowpass FIR filter. The 2nd plot is one segment of the data to be processed in piecewise fashion. The 3rd plot is the filtered segment, including the filter rise and fall transients. The 4th plot indicates where the new data will be added with the result of previous segments. The 5th plot is the updated output stream.
Date
Source
Own work
Author
Bob K
Permission
(Reusing this file)
Other versions
This file was derived from: Overlap-save algorithm.svg
SVG development
Gnu Octave source
(Reusing this file)
I, the copyright holder of this work, hereby publish it under the following license:
Creative Commons CC-Zero
This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse
InfoField
InfoField
click to expand
This graphic was created with the help of the following Octave script:
% Options frame_background_gray=true; ifframe_background_gray graphics_toolkit("qt")% or graphics_toolkit("fltk") frame_background=.94*[111]; d=2;% amount to add to text sizes else graphics_toolkit("gnuplot")% background will be white regardless of value below frame_background=.94*[111]; d=0; endif M=16;% filter length h=ones(1,M)/M;% filter impulse response L=100;% output segment length La=500;% input data length %randn("seed","reset") % experiment with data generator %seed = randn("seed") % print value, in case want to use it again randn("seed",e)% generate same data as Overlap-save_algorithm.svg a=1+randn(1,La)/3;% data to be filtered seg=2;% segment to be computed N=L+M-1;% DFT size (a power-of-2 would be more efficient) Xa=seg*L+(1:L);% indices of segment to be filtered % (https://octave.org/doc/v4.2.1/Graphics-Object-Properties.html#Graphics-Object-Properties) % Speed things up when using Gnuplot set(0,"DefaultAxesFontsize",10+d) set(0,"DefaultTextFontsize",12+d) set(0,"DefaultAxesYlim",[02]) set(0,"DefaultAxesYtick",[0:2]) set(0,"DefaultAxesYgrid","on") set(0,"DefaultAxesXlim",[0La]) set(0,"DefaultAxesXtick",[100:100:La]) set(0,"DefaultAxesXgrid","on") set(0,"DefaultFigureColor",frame_background) set(0,"DefaultAxesColor","white") %======================================================= hfig=figure("position",[1010912685],"color",frame_background); x1=.02;% left margin x2=.02;% right margin y1=.08;% bottom margin for annotation y2=.08;% top margin for title dy=.04;% vertical space between rows width=1-x1-x2; height=(1-y1-y2-4*dy)/5;% space allocated for each of 5 rows x_origin=x1; y_origin=1;% start at top of graph area %======================================================= y_origin=y_origin-y2-height;% position of top row subplot("position",[x_originy_originwidthheight]) plot(1:La,a,"color","blue",Xa,a(Xa),"color","red","linewidth",2) title("One segment of an Overlap-add algorithm","fontsize",14+d); text(1,2.2,"X[n], with segment k=2 in red","fontsize",10+d) %======================================================= y_origin=y_origin-dy-height; subplot("position",[x_originy_originwidthheight]) plot(1:L,a(Xa),"color","red",... L+(1:M-1),zeros(1,M-1),"color","red","linewidth",2) text(250,1.6,'X_k[n]') %======================================================= y_origin=y_origin-dy-height; subplot("position",[x_originy_originwidthheight]) H=fft(h,N); b=real(ifft(H.*fft(a(Xa),N)));% = conv(h,a(Xa)) plot(1:N,b,"color","red","linewidth",2); text(250,1.6,'Y_k[n], output of FIR lowpass filter'); %======================================================= y_origin=y_origin-dy-height; subplot("position",[x_originy_originwidthheight]) Xc=1:seg*L; c=conv(h,a(Xc)); x=(length(c)+1):La; plot(1:length(c),c,"color","blue",... x,zeros(1,length(x)),"color","blue","linewidth",2,... seg*L+(1:N),b,"color","red","linewidth",2) text(250,1.6,'Y_2[n-2L]') %======================================================= y_origin=y_origin-dy-height; subplot("position",[x_originy_originwidthheight]) Xd=1:(seg+1)*L; d1=conv(h,a(Xd)); x=(length(d1)+1):La; plot(1:length(d1),d1,"color","blue",... x,zeros(1,length(x)),"color","blue","linewidth",2) xlabel('\leftarrow n \rightarrow',"fontsize",12+d)
Captions
Add a one-line explanation of what this file represents
Items portrayed in this file
depicts
creator<\/a>"}},"text\/plain":{"en":{"":"creator"}}},"{\"value\":{\"entity-type\":\"property\",\"numeric-id\":2093,\"id\":\"P2093\"},\"type\":\"wikibase-entityid\"}":{"text\/html":{"en":{"":"author name string<\/a>"}},"text\/plain":{"en":{"":"author name string"}}},"{\"value\":\"Bob K\",\"type\":\"string\"}":{"text\/html":{"en":{"P2093":"Bob K","P4174":"Bob K<\/a>"}},"text\/plain":{"en":{"P2093":"Bob K","P4174":"Bob K"}}},"{\"value\":{\"entity-type\":\"property\",\"numeric-id\":2699,\"id\":\"P2699\"},\"type\":\"wikibase-entityid\"}":{"text\/html":{"en":{"":"URL<\/a>"}},"text\/plain":{"en":{"":"URL"}}},"{\"value\":\"https:\\\/\\\/commons.wikimedia.org\\\/wiki\\\/user:Bob_K\",\"type\":\"string\"}":{"text\/html":{"en":{"P2699":"https:\/\/commons.wikimedia.org\/wiki\/user:Bob_K<\/a>"}},"text\/plain":{"en":{"P2699":"https:\/\/commons.wikimedia.org\/wiki\/user:Bob_K"}}},"{\"value\":{\"entity-type\":\"property\",\"numeric-id\":4174,\"id\":\"P4174\"},\"type\":\"wikibase-entityid\"}":{"text\/html":{"en":{"":"Wikimedia username<\/a>"}},"text\/plain":{"en":{"":"Wikimedia username"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P170 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
some value
copyright status<\/a>"}},"text\/plain":{"en":{"":"copyright status"}}},"{\"value\":{\"entity-type\":\"item\",\"numeric-id\":88088423,\"id\":\"Q88088423\"},\"type\":\"wikibase-entityid\"}":{"text\/html":{"en":{"P6216":"copyrighted, dedicated to the public domain by copyright holder<\/a>"}},"text\/plain":{"en":{"P6216":"copyrighted, dedicated to the public domain by copyright holder"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P6216 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
copyright license<\/a>"}},"text\/plain":{"en":{"":"copyright license"}}},"{\"value\":{\"entity-type\":\"item\",\"numeric-id\":6938433,\"id\":\"Q6938433\"},\"type\":\"wikibase-entityid\"}":{"text\/html":{"en":{"P275":"Creative Commons CC0 License<\/a>"}},"text\/plain":{"en":{"P275":"Creative Commons CC0 License"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P275 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
source of file<\/a>"}},"text\/plain":{"en":{"":"source of file"}}},"{\"value\":{\"entity-type\":\"item\",\"numeric-id\":66458942,\"id\":\"Q66458942\"},\"type\":\"wikibase-entityid\"}":{"text\/html":{"en":{"P7482":"original creation by uploader<\/a>"}},"text\/plain":{"en":{"P7482":"original creation by uploader"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P7482 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
inception<\/a>"}},"text\/plain":{"en":{"":"inception"}}},"{\"value\":{\"time\":\"+2020年01月14日T00:00:00Z\",\"timezone\":0,\"before\":0,\"after\":0,\"precision\":11,\"calendarmodel\":\"http:\\\/\\\/www.wikidata.org\\\/entity\\\/Q1985727\"},\"type\":\"time\"}":{"text\/html":{"en":{"P571":"14 January 2020"}},"text\/plain":{"en":{"P571":"14 January 2020"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P571 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
14 January 2020
media type<\/a>"}},"text\/plain":{"en":{"":"media type"}}},"{\"value\":\"image\\\/svg+xml\",\"type\":\"string\"}":{"text\/html":{"en":{"P1163":"image\/svg+xml"}},"text\/plain":{"en":{"P1163":"image\/svg+xml"}}}}" class="wbmi-entityview-statementsGroup wbmi-entityview-statementsGroup-P1163 oo-ui-layout oo-ui-panelLayout oo-ui-panelLayout-framed">
image/svg+xml
File history
Click on a date/time to view the file as it appeared at that time.
File usage
The following page uses this file:
Metadata
This file contains additional information, probably added from the digital camera or scanner used to create or digitize it.
If the file has been modified from its original state, some details may not fully reflect the modified file.
| Width | 241.3mm |
|---|---|
| Height | 174.75mm |
Retrieved from "https://en.wikipedia.org/wiki/File:Overlap-add_algorithm.svg"