abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:00 | IT novinky

    DuckDuckGo AI Chat umožňuje "pokecat si" s GPT-3.5 Turbo od OpenAI nebo Claude 1.2 Instant od Anthropic. Bez vytváření účtu. Všechny chaty jsou soukromé. DuckDuckGo je neukládá ani nepoužívá k trénování modelů umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.

    Ladislav Hagara | Komentářů: 2
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 13
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 2
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 10
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (20%)
    Celkem 564 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Vyhladenie dát pomocou FFT

    marulinko avatar 5.4.2006 18:30 marulinko | skóre: 12 | blog: Technohead
    Vyhladenie dát pomocou FFT
    Přečteno: 485×
    Potreboval by som získať z rozhádzaných nameraných údajov vyhladenú krivku. Používam na spracovanie údajov Octave a na vykreslenie Gnuplot. Na vyhladenie by sa dalo použiť vyhladenie pomocou FFT (Fast Fourier Transformation). Máte niekto skúsenosti ako na to ? Už 2 deň hladám na nete, našiel som rôzne softy napr. BruteFIR ale nešlo mi to skompilovať. Neviem či by bol na to vhodný ale zo screenshotov by to možno fungovalo. A keďže neštudujem ani matematiku, presne ani neviem ako to vyhladzovanie vlastne funguje :(. Možno by sa to dalo aj naprogramovať. Potrebujem nakopnúť správnym smerom. Alebo doporučiť nejaký program. Díky za každú radu.
    BruteFIR
    FFTW
    Octave
    Gnuplot

    Odpovědi

    5.4.2006 20:54 fikusek | skóre: 1
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    jde o to jak ty data vypadaji?!?!
    treba jsou to jednoducha data, ktera by slo prolozit polynomem.
    nebo to bude nejaky signal, ktery se bude muset
    vyhlazovat sloziteji.
    nechej na sebe mejla a je to.
    marulinko avatar 6.4.2006 10:06 marulinko | skóre: 12 | blog: Technohead
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    môj mail je majo(at)marulinko(dot)com
    5.4.2006 22:39 Honza
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT

    A co přesně si pod pojmem vyhlazení dat představuješ? Pokud tím myslíš jejich vykreslení do grafu ve formě spojité křivky, tak se dá použít proložení nějakým polynomem jak už radil kolega výše.

    FFT je pouze algoritmus výpočtu diskrétní Fourierovy transformace, která převádí řadu z časové oblasti do spektrální. Pokud jsou tvoje data signál a pod pojmem vyhlazení si představuješ například odstranění vyšších spektrálních složek, je možné FFT využít. Říká se tomu filtrace ve spektrální oblasti. Provedeš jednoduše FFT daného signálu, odstraníš část spektra, kterou nechceš (doporučuji zachovat spektrum pokud možno spojité) a modifikované spektrum pomocí IFFT transformuješ zpět do časové oblasti.

    Jinak si jsem na 99% jistý, že FFT i IFFT budou v Octave implementované. Pravděpodobně to bude v nějaké knihovně DSP apod. Blíže neporadím, protože používám Scilab nebo Matlab.

    5.4.2006 22:53 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    Těžko říct, jakou matematickou metodu bys měl pro svá data použít. Ale kdyby ses rozhodl pro FFT, tak existuje knihovna FFTW (kterou jsi zmínil) a používá ji spousta programů - i ten BruteFIR, který jsi uvedl. Základní funkce, která vypočítá jednorozměrnou FFT za použití FFTW může vypadat třeba takhle:
    #include <math.h>
    #include <stdlib.h>
    #include <fftw3.h>
    
    int calculate_fft(int N, double *in_dbl, double *out_dbl){
      int i;
      double re, im;
    
    
      fftw_plan p;
      double *in, *out;
    
      in = fftw_malloc(sizeof(double) * N);
      out = fftw_malloc(sizeof(double) * N);
    
      for(i=0; i<N; i++){
        in[i] = in_dbl[i]; /* Zero complex part */
      }
    
    
      p = fftw_plan_r2r_1d(N, in, out, FFTW_R2HC, FFTW_ESTIMATE);
      fftw_execute(p);
      fftw_destroy_plan(p);
    
    
      out_dbl[0] = out[0];
    
      for(i = 1; i < (N + 1) / 2; ++i){
        re = out[i];
        im = out[N-i];
        out_dbl[i] = sqrt(re*re+im*im);
      }
    
      fftw_free(in);
      fftw_free(out);
    
      return 0;
    }
    
    Nejdřív vypočte reálnou a imaginární část a pak z toho vezme absolutní hodnotu. Měl bych asi zmínit ještě spoustu dalších věcí, ale to už by mělo s linuxem pramálo společného.

    Při překladu to musíš slinkovat s -lfftw3.
    marulinko avatar 6.4.2006 10:02 marulinko | skóre: 12 | blog: Technohead
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    Díky za kód, len by som sa chcel spýtať či to zlinkovanie znamená ak dám gcc tento_kod -L/usr/include/fftw3.h ? Podobný problém som mal pri kompilácií brutefire. Tam mi chýba ešte súbor: -lfftw3f. -lfftw3 som vďaka tvojmu skriptu už našiel :)
    6.4.2006 10:39 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    To, co jsem ti poslal, je pouze funkce, kterou když zavoláš, tak ti spočítá FFT. Bude se ti to hodit, až budeš mít napsaný celý svůj funkční kód v céčku a posledním chybějícím střípkem bude právě tato funkce. Jediné, co s tím můžeš v této chvíli udělat je zkompilovat do object souboru pomocí
    gcc -c neco.c
    
    Ten můžeš následně spojit se svým hotovým programem a teprve potom vznikne spusitelná binárka.

    Linkují se knihovny, includují se hlavičkové soubory. Ne naopak ;-)

    Upřímně řečeno - zkus raději tu fft funkci z octave. Na učení céčka si nech nějaký čas.
    6.4.2006 07:39 LS_999
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    Dle meho nazoru je FFT na vyhlazeni dat je jako jit na mouchu s kulometem. A krome toho si myslim, ze diky efectum jako "spectral leaking" to bude vyhlazovat i tam, kde by nemelo (na "kraji"). Pokud nestudujete matematiku, usetrete si to utrpeni zapasit s fft. Doporucuju k vyhlazeni pouzit gnuplot, ktery je z octave vicemene pristupny pres prikaz plot atd. (viz jakysi serial na abclinuxu), ale mnohem lepe je pouzit zvlast. Lze k vyhlazeni pouzit spliny anebo pripadne fitovat nejakou vhodnou funkci, napr. polynom, jak uz nekdo psal anebo e^-x atd. Priklad priblizne v gnuplot:

    Parabola:

    fit a*x**2+b*x+c "mojedata.xy" using ($1):($2) via a,b,c

    plot a*x**2+b*x+c

    Vyhlazeni splinem: plot "mojedata.xy" using ($1):($2) smooth csplines

    Vice v dokumentaci ke gnuplot (help fit, help plot)
    marulinko avatar 6.4.2006 09:51 marulinko | skóre: 12 | blog: Technohead
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    Ďakujem za všetky odpovede. Tie dáta vyzerajú takto: tu je časť z nich
    čas Mk F P
    0.000 -383.789 200.195 0.000
    0.020 -383.789 202.637 0.005
    0.040 -351.807 205.078 -0.001
    0.060 -351.807 204.773 -0.002
    0.080 -199.890 -312.500 -0.001
    0.100 -343.811 204.468 0.000
    0.120 -679.626 199.585 -0.014
    0.140 -351.807 202.484 -0.002
    0.160 -343.811 183.563 0.009
    0.180 -343.811 201.111 -0.004
    A vykreslené to vyzerá takto: Graf (7.82kB)
    Je to vstup zo snímačov do meracej karty a následne do PC.
    Vyhladiť to potrebujem kôli eliminácií šumu a jednoduchšiemu odčítaniu hodnôt. Idem skúsiť tú funkciu fit z gnuplot.
    môj mail je majo(at)marulinko(dot)com
    6.4.2006 14:01 Jura
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    Hergot, bych tam proste od ruky(od mysi) nacmaral caru, aby to jako kopirovalo ten graf, napisu k temu FFT, a kdo pozna, ze ne? Se s tem moc seres :)))
    6.4.2006 17:30 lada
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    ja bych na to sel takto:
    udelal bych nekolik mereni takze bych dostal nekolik takovych krivek jak je na tvem obrazku (rekneme 10 nebo i 100 zalezi na narocnosti)
    srovnal je tak, aby sedel zacatek toho skoku
    udelal z nich prumer
    vychutnaval si pohled na hladkou krivku
    mozna nic moc ale rozhodne to funguje
    27.7.2006 10:17 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Vyhladenie dát pomocou FFT
    Rozhodně to funguje při "dostatečně náhodném" šumu ;)
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.