WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Korrelieren mit Ausschnitten aus Binärem Vektor

 

tosten84
Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 10.05.10
Wohnort: Wesseling
Version: R2007b R2010a
     Beitrag Verfasst am: 11.05.2010, 11:48     Titel: Korrelieren mit Ausschnitten aus Binärem Vektor
  Antworten mit Zitat      
Hallo,
habe folgendes Problem.

Ich habe einen Binäern Vektor s, und möchte aus diesem Sequenzen der Länge [10 20 40 80 160 320] auschneiden. Und dann mit s korrelieren.
Allerdings soll die Sequenz nicht nur einmal korreliert werden, sondern zunächst sollen die Elemente 1-10 mit s Korreliert werden, dann 2-11, dann 3-12 etc. und das für alle verschieden Längen.
Das ganze soll dann in einer Matrix abgelegt werden, in der jede Zeile einer Rückgabe von xcorr entspricht
Code:

function [korrm] = korr_ua(s)

a=mod(uint8(s),2);
a=double(a);
step=[10 20 40 80 160 320]; %Größen der Korrelationsabschnitte
maxi=(floor(length(a)./step).*step)-step; %%Maximaler Verschiebungsindex

    for k=1:1:6
          z=1:maxi(k);
          b=a(z:z+step(k));
          korrm=xcorr(b,a,'none');
     end
 


das habe ich bis jetzt, hat da jemand die zündende Idee?
Ich hänge irgendwie fest.

Danke für Antworten
Private Nachricht senden Benutzer-Profile anzeigen


derOli
Forum-Meister

Forum-Meister


Beiträge: 579
Anmeldedatum: 19.03.08
Wohnort: Leipzig
Version: 2010a
     Beitrag Verfasst am: 11.05.2010, 14:37     Titel:
  Antworten mit Zitat      
Hi,

du brauchst noch eine weitere Schleife um dann jeweils die Schrittweite um eins zu erhöhen. Vielleicht wäre es am übersichtlichen noch eine Funktion zu schreiben, welche bei Angabe der Fenstergröße eine schrittweise Korrelation macht. Übrigens könnte man dies auch ohne for schleife machen, ist aber etwas schwieriger zu schreiben.

Sag wenn du weitergekommen bist und Hilfe brauchst.

Viele Grüße

der Oli
Private Nachricht senden Benutzer-Profile anzeigen
 
tosten84
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 10.05.10
Wohnort: Wesseling
Version: R2007b R2010a
     Beitrag Verfasst am: 11.05.2010, 14:53     Titel:
  Antworten mit Zitat      
Hi, also bin mittlerweile soweit gedien, dass ich keine for schleife mehr brauche, allerdings habe ich jetzt das Problem, das in meiner Matrix b alle zu korrelierenden Vektoren gleich lang sind, da ja da längste Element die Spaltenanzahl der Matrix bestimmt, somit werden meine Korrelationslängen verfälscht, hat da noch jemand ne Idee?
Code:

function [korrm] = korr_ua(string)

a=double(mod(uint8(string),2));

step=[10 20 40 80 160 320];

maxi=(length(a)-step)+1;
               
             b=a(1,((1:maxi(1:6)):(step(1:6)+maxi(1:6))));
             sizeb=size(b);
             korrm=xcorr2(a,b((1:sizeb(1)),(1:sizeb(2))),'none');
     

 

Ach ja, ich weiß, das die Zeile mit b=... nicht funktioniert, hat da jemand ne Idee, wie ich es hinkriege das in b zeilenweise die kleinen Vektoren stehen? reich erst mal auch nur für eine Stepgröße.

Wiedermal danke im voraus
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.