Benutzer-Werkzeuge

Webseiten-Werkzeuge


ss15:taktrueckgewinnung_1.2

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ss15:taktrueckgewinnung_1.2 [2015/10/06 20:57]
m.schramm [1. Problem:]
ss15:taktrueckgewinnung_1.2 [2016/05/10 14:46] (aktuell)
Zeile 66: Zeile 66:
  tol = 0.002 * ma  tol = 0.002 * ma
  idx = np.where(np.abs(yh-s)<​tol)  idx = np.where(np.abs(yh-s)<​tol)
- + # [...]
- if l >= minl: +
- # [...]+
 </​code>​ </​code>​
 ==== 2. Problem: ==== ==== 2. Problem: ====
Zeile 85: Zeile 83:
 übertragen. Der momentane Index wird mit dem nächstkommenden Index auf seinen übertragen. Der momentane Index wird mit dem nächstkommenden Index auf seinen
 Abstand überprüft und nur als '​richtig'​ übertragen,​ wenn diese im Taktabstand Abstand überprüft und nur als '​richtig'​ übertragen,​ wenn diese im Taktabstand
-mit einer Toleranz von +-10% vom Taktabstand zueinander stehen. Somit fallen +mit einer Toleranz von +-5% vom Taktabstand zueinander stehen. Somit fallen 
-sofort alle Indices ​raus, dessen ​Abstand ungleich des Taktabstandes zum+sofort alle Indizes ​raus, deren Abstand ungleich des Taktabstandes zum
 nächsten Index ist, also die der gleichen Flanke angehören oder die den nächsten Index ist, also die der gleichen Flanke angehören oder die den
 '​falschen'​ Flanken angehören, die sich zwischenmogeln könnten. '​falschen'​ Flanken angehören, die sich zwischenmogeln könnten.
Zeile 142: Zeile 140:
     if n==len(v):     if n==len(v):
         for x in sorted(v,​reverse=True):​ # v-liste von hinten nochmal durchgehen, damit letzte Takt-Flanke noch in h hinzugefügt wird         for x in sorted(v,​reverse=True):​ # v-liste von hinten nochmal durchgehen, damit letzte Takt-Flanke noch in h hinzugefügt wird
-            if h[-1]+takt+0.1*takt>​x and h[-1]+takt-0.1*takt<x:+            if h[-1]+takt+0.1*takt>​x and h[-1]+takt-0.05*takt<x:
                 h.append(x) # die letzte richtige Taktflanke                 h.append(x) # die letzte richtige Taktflanke
                 break                 break
-    elif x+takt+0.1*takt>​v[n] and x+takt-0.1*takt<​v[n]:​ # nächste Flanke ist einen Takt mit Tolerant ​von +-10% entfernt +    elif x+takt+0.05*takt>​v[n] and x+takt-0.05*takt<​v[n]:​ # nächste Flanke ist einen Takt mit Toleranz ​von +-5% entfernt 
-        if k!=0 and v[n-k-1]+takt+0.1*takt>x and v[n-k-1]+takt-0.1*takt<x:+        if k!=0 and v[n-k-1]+takt+0.05*takt>x and v[n-k-1]+takt-0.05*takt<x:
             h.append(v[n-k-1]) # vergangene richtige Takt-Flanke,​ die nun durch einer nachfolgenden Takt-Flanke gefunden wurde             h.append(v[n-k-1]) # vergangene richtige Takt-Flanke,​ die nun durch einer nachfolgenden Takt-Flanke gefunden wurde
         h.append(x)         h.append(x)
Zeile 158: Zeile 156:
         h=sorted(h+e) # fülle Lücken in der richtigen Takt-Liste         h=sorted(h+e) # fülle Lücken in der richtigen Takt-Liste
         break         break
-    elif not (x+takt+0.1*takt>​h[m] and x+takt-0.1*takt<​h[m]):​ # findet Lücken+    elif not (x+takt+0.05*takt>​h[m] and x+takt-0.05*takt<​h[m]):​ # findet Lücken
         e.append(int(x+takt))         e.append(int(x+takt))
 return h return h
Zeile 164: Zeile 162:
 ====Resultat:​==== ====Resultat:​====
 Wir erhalten die genauen Zeitpunkte eines Wechsels der Lautstärke der Takt-Frequenz und damit lässt sich die Takteinteilung des Signals ablesen. Wir erhalten die genauen Zeitpunkte eines Wechsels der Lautstärke der Takt-Frequenz und damit lässt sich die Takteinteilung des Signals ablesen.
- 
-__Bilder folgen noch!__ 
ss15/taktrueckgewinnung_1.2.1444157840.txt.gz · Zuletzt geändert: 2016/05/10 14:46 (Externe Bearbeitung)