• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
May 21, 2025, 17:41:47 pm

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
May 21, 2025, 17:41:47 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
[Σ.Α.Π.Γ.] Εργασία 2025
by paul
[Today at 17:40:22]

Υποβιβασμός Τριφασικής Εγ...
by george14
[Today at 13:01:04]

[Δυναμική Συμπεριφορά ΣΗΕ...
by Nikos_313
[Today at 12:35:54]

[Ηλεκτρονική ΙΙ] Γενικές ...
by tzortzis
[Today at 12:34:11]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by Le ece
[Today at 11:30:08]

H Στοά των Off Topic
by Katarameno
[Today at 11:18:45]

PhD Position: Computing &...
by psermpez
[Today at 10:12:44]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by Nikos_313
[Today at 00:04:13]

Ρυθμίσεις Θεμάτων της Ανώ...
by George_RT
[May 20, 2025, 23:17:11 pm]

Συντελεστής Ισχύος και Πα...
by George_RT
[May 20, 2025, 22:57:56 pm]

Τι ακούτε αυτήν τη στιγμή...
by Nikos_313
[May 20, 2025, 20:40:35 pm]

Απόψεις για Eurovision 20...
by Katarameno
[May 20, 2025, 20:11:20 pm]

[Εφ.Θερμοδυναμική] Γενικέ...
by Fraser
[May 20, 2025, 11:00:30 am]

[ΔΥΣ] Γενικές απορίες και...
by tzortzis
[May 20, 2025, 09:34:16 am]

Των συνειρμών το παίγνιο....
by tzortzis
[May 20, 2025, 09:27:46 am]

Αξίζουν οι πτυχιακές εξετ...
by Nikos_313
[May 19, 2025, 21:53:37 pm]

[ΣΦ Ηλ - Μηχ] Αποτελέσματ...
by Nikos_313
[May 19, 2025, 21:50:17 pm]

[Διανεμημένη Παραγωγή] Γε...
by Nikos_313
[May 19, 2025, 15:23:44 pm]

Πότε θα βγει το μάθημα; -...
by Nikos_313
[May 19, 2025, 00:08:58 am]

Hackάραν λογαριασμό Insta...
by Katarameno
[May 18, 2025, 23:58:48 pm]
Στατιστικά
Members
Total Members: 9951
Latest: argiris2006
Stats
Total Posts: 1426373
Total Topics: 31698
Online Today: 139
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 26
Guests: 90
Total: 116
stergios5
sigklitiki
engineer2030
paul
Σουλης
johnnypap
Nikos_313
Thanasiscon1
mike1996
acolak
Fotis Roukoutakis
nikosmonov
Sotirisbikos
John120196
alextsigilis
Mr Watson
asemas
astakos1
Mavromati
Nekt
pantoulis
George15
Kelly Tsimpouri
χασλμαλικι
alex_g
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
Η γραμματεία είναι ανοιχτή καθημερινά 12:00-13:30 Tongue
THMMY.gr > Forum > Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών  > 8ο Εξάμηνο > 8ο Εξάμηνο - ΠΠΣ > Υποχρεωτικά Μαθήματα > Ψηφιακά Φίλτρα > [Ψηφιακά Φίλτρα] Παλιά Θέματα
0 Members and 1 Guest are viewing this topic.
Pages: 1 ... 13 14 [15] Go Down Print
Author Topic: [Ψηφιακά Φίλτρα] Παλιά Θέματα  (Read 31014 times)
mpletsos
Νεούλης/Νεούλα
*
Posts: 29



View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #210 on: June 02, 2020, 22:49:55 pm »

Quote from: menelaos619 on January 21, 2020, 12:51:21 pm
Παιδιά καμιά ιδέα για τον υπολογισμό του πίνακα αυτοσυσχέτισης 100χ100 στο πρότυπο εξετάσεων; Πως αξιοποιώ τις διακυμάνσεις του θορύβου; Αφού η διαδικασία υπολογισμού του R είναι αυτή που είχαμε στο δοκιμαστικό...

function [R] = solve( a, b, c, sigma_v1_sq, sigma_v2_sq )
  R = zeros(100,100);
  A = [1 a(1) a(2) a(3); a(1) 1+a(2) a(3) 0; a(2) a(1)+a(3) 1 0; a(3) a(2) a(1) 1;];
   
  B = [sigma_v1_sq; 0; 0; 0];
   
  r = A \ B;
  r = [r; zeros(96,1)];
  R = toeplitz(r);
end
Logged
mixalismilo
Νεούλης/Νεούλα
*
Posts: 24


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #211 on: July 04, 2020, 13:19:45 pm »

Μπορει καποιος να με βοηθησει με την υλοποιηση του block lms με fft. Ποιο διανυσμα u μετασχηματιζω και στο w προσθετω μηδενικα για να βγουν οι διαστασεις?
Logged
athanasmp
Νεούλης/Νεούλα
*
Posts: 35


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #212 on: July 05, 2020, 11:41:53 am »

Καλησπερα συναδελφοι

εχει καποιος τις λύσεις των 2 τελευταιων quiz  ΄?

ευχαριστωω
Logged
mano_lee
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 151


meh'


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #213 on: July 05, 2020, 17:19:43 pm »

Quote from: athanasmp on July 05, 2020, 11:41:53 am
Καλησπερα συναδελφοι

εχει καποιος τις λύσεις των 2 τελευταιων quiz  ΄?

ευχαριστωω

Η λύση αυτή για το 4ο quiz ενώ τα παιδιά έλεγαν οτι έδινε 0.63/1, πλέον δίνει 1/1  Smiley

Quote from: annaTZ on June 13, 2019, 16:11:41 pm
Εδώ είναι η λύση που έβαλα τελικά εγω.
Code:
function [R,p,w_o] = wiener( a, b, c, sigma_v1, sigma_v2 )
 
    a = [1; a(:)];

    A = [a(1) a(2) a(3) a(4); a(2) a(1)+a(3) a(4) 0; a(3) a(2)+a(4) a(1) 0; a(4) a(3) a(2) a(1)];
    
    B = [sigma_v1; 0; 0; 0];
    
    r = A \ B;
    R = toeplitz(r);
    
    p = R * (-b');
    
    w_o = R \ p;
  
end


function [y,w_out] = lms(u, d, m, mu)
% LMS - Least Mean Square adaptation
%  
 
  persistent w
  persistent u_stream
  
  
  % initialize
  if isempty(w)
    w = zeros( m, 1 );
    u_stream = zeros(m,1);
  end
  
  u_stream(end+1, 1) = u;
                          
    
    % compute output
    y = w' * u_stream(end:-1:end-m+1);
    
    % get error
    e = d - y;
    
                    
    
      % update weights
      w = w + mu * e * u_stream( end:-1:end-m+1 );

  

  if nargout > 1
    w_out = w;
  end
  
  
end


function [y,w_out] = nlms(u, d, m, mu, alpha)
% LMS - Least Mean Square adaptation
%  
  
  persistent w
  persistent u_stream
  
  
  % initialize
  if isempty(w)
    w = zeros( m, 1 );
    u_stream = zeros(m,1);
  end
  
  u_stream(end+1, 1) = u;

  
                        
    
    % compute output
    y = w' * u_stream(end:-1:end-m+1);
    
    % get error
    e = d - y;

      % update weights
      w = w + mu * e * u_stream( end:-1:end-m+1 )/ (alpha + u_stream( end:-1:end-m+1 )' * u_stream( end:-1:end-m+1 ));
      

    


  if nargout > 1
    w_out = w;
  end
 
  
end



function [y,w_out] = rls(u, d, m, lambda, delta)
% LMS - RLS adaptation
%  
    
  persistent w
  persistent u_stream
  persistent P
  
  
  % initialize
  if isempty(w)
    w = zeros( m, 1 );
    u_stream = zeros(m,1);
  P = (1 / delta) * eye(m, m);
      
  end
  
  u_stream(end+1, 1) = u;

                        
    
    % compute output
    y = w' * u_stream(end:-1:end-m+1);
    
    % get error
    e = d - y;
    
 
      %compute k
      k = ((lambda^-1) * P * u_stream( end:-1:end-m+1 ) / (1 + (lambda^-1) * u_stream( end:-1:end-m+1 )'* P * u_stream( end:-1:end-m+1 )));

                              
                                
      % update weights
      w = w + k * e;
      
      %compute P
      P = (lambda^-1) * P - (lambda^-1) * k * u_stream( end:-1:end-m+1 )' * P;
      


  if nargout > 1
    w_out = w;
  end
 
  
end
Όποιος θέλει το παίρνει. Ο βαθμός του είναι 0.63.
« Last Edit: July 05, 2020, 17:34:15 pm by mano_lee » Logged

Allah allah allah will pray for you
mano_lee
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 151


meh'


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #214 on: July 05, 2020, 17:33:09 pm »

Quote from: athanasmp on July 05, 2020, 11:41:53 am
Καλησπερα συναδελφοι

εχει καποιος τις λύσεις των 2 τελευταιων quiz  ΄?

ευχαριστωω

Επίσης για το 3ο quiz, η λύση ενός φίλου.

Ερώτηση 2
Code:
% Step1: split output to top and bottom
function [yt, yb] = step1( x, w )

    % length of x signal
    n = length(x);

    % Check if n is a power of 2
    if mod(n,2) ~= 0
        disp('The signal x must have a length equal to a power of 2. \n')
        return
    else
        % k ranges from 0 to n - 1 
        k = (0:n-1)';

        % Split output top(yt) and bottom(yb) initiating both parts with 0s
        yb = zeros(n/2,1);
        yt = zeros(n/2,1);

        % Construct the 2-part output
        for j=0:n/2-1
            yt(j+1) = sum(w(n,j*k) .* x(k+1));     
        end
   
        for j=0:n/2-1
            yb(j+1) = sum(w(n,(j+n/2)*k) .* x(k+1));
        end
       
        y = [yt ; yb];
    end
   
end

function [ybe, ybo, yte, yto] = step2( x, w )
   
    % split each output to even and odd
    n = length(x);

    % k ranges from 0 to n/2 -1 
    k = (0:n/2-1)';

    % Initiation of 4-part output with 0s
    ybe = zeros(n/2,1);
    ybo = zeros(n/2,1);
    yte = zeros(n/2,1);
    yto = zeros(n/2,1);

    for j=0:n/2-1
        yte(j+1) = sum(w(n/2,j*k) .* x(2*k+1));
        yto(j+1) = w(n,j)*sum(w(n/2,j*k) .* x(2*k+2));
    end
   
    for j=0:n/2-1
        ybe(j+1) = sum(w(n/2,(j+n/2)*k) .* x(2*k+1));
        ybo(j+1) = w(n,j+n/2)*sum(w(n/2,(j+n/2)*k) .* x(2*k+2));
    end

    y = [yte + yto ; ybe + ybo];

end


function [xk1, xk2] = step3( x, w )
   
    % apply w identity and finish the proof with
    % y = [ xk1+xk2; xk1-xk2 ];
    n = length(x);
 
    % Initiation of output
    xk1 = zeros(n/2,1);
    xk2 = zeros(n/2,1);
 
    % k ranges from 0 to n/2 -1 
    k = (0:n/2-1)';

    for j=0:n/2-1
        xk1(j+1) = sum(w(n/2,j*k) .* x(2*k+1));
        xk2(j+1) = w(n,j)*sum(w(n/2,j*k) .* x(2*k+2));
    end

    y = [xk1+xk2; xk1-xk2];

end

Ερώτηση 2
Code:
function [y, flop] = rec_fast_fourier(x)

    % Initiate number of flops
    flop = 0;

    % n = length of signal to be transformed
    n = length(x);

    % root of unity function handle
    w = @(n,k) exp(-2*k*pi*1i/n);

    % if n = 1 then the fast fourier transform cannot be broken into smaller parts
    % so its output is going to be an element of the original signal x.
    if n==1
        y = x;
    else   
        k = (0:n/2-1)';
        [yt,flopt] = rec_fast_fourier(x(2*k+1));
        [yb,flopb] = rec_fast_fourier(x(2*k+2));
        yb = w(n,k).*yb;
        y = [yt+yb ; yt-yb];
   
        flop = flopt + flopb + 6*n/2 + 2*n ;
    end
   
end
Logged

Allah allah allah will pray for you
kanou_tom
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 713


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #215 on: July 05, 2020, 22:17:29 pm »

Έχει υλοποιήσει κάποιος τον blockLMS στα θέματα του Ιουνίου 2019;
Logged
neniak
Νεούλης/Νεούλα
*
Posts: 16


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #216 on: July 05, 2020, 23:41:23 pm »

Quote from: kanou_tom on July 05, 2020, 22:17:29 pm
Έχει υλοποιήσει κάποιος τον blockLMS στα θέματα του Ιουνίου 2019;

Χωρίς να είμαι σίγουρος


function y = myblockLMS (u,d,m,mu)
%n= input signal
%d=desired signal
%m= filter tap size
%mu= step size scalar
persistent w u_prev
l=length(u);
if empty(w)
    w=zeros(m,1);
    u_prev=zeros(l,1);   %need the last l most recent input
end
%compute filter output vector y using vectors w and u
U= toeplitz(u, [u(1), u_prev(1:-1:(l-m+2))]);
y=U*w;
%compute error using vectors d and y
e=d-y;
%update w for next call
w= w + mu*U'*e;
% update u_prev for next call
u_prev=u;
end
Logged
neniak
Νεούλης/Νεούλα
*
Posts: 16


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #217 on: July 06, 2020, 00:27:39 am »

έχει μήπως κανείς την υλοποίηση για το 2 quiz των ασκήσεων ?
Logged
Μπουγάτσας
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 143



View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #218 on: July 06, 2020, 01:08:40 am »

Quote from: neniak on July 05, 2020, 23:41:23 pm
Χωρίς να είμαι σίγουρος
function y = myblockLMS (u,d,m,mu)
Ξέρεις να απαντήσεις την ερώτηση με τις πολυπλοκότητες που έπεσε στην επανεξέταση του Ιουλίου;
Logged
athanasmp
Νεούλης/Νεούλα
*
Posts: 35


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #219 on: July 06, 2020, 08:04:44 am »

Μηπως καποιος συναδελφος εχει στη κατοχη του θεματα φεβρουαριου ή σεπτεμβριου   Huh
Logged
malappapas
Καταξιωμένος/Καταξιωμένη
***
Posts: 101



View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #220 on: July 06, 2020, 13:19:28 pm »

Quote from: neniak on July 05, 2020, 23:41:23 pm
Χωρίς να είμαι σίγουρος


function y = myblockLMS (u,d,m,mu)
%n= input signal
%d=desired signal
%m= filter tap size
%mu= step size scalar
persistent w u_prev
l=length(u);
if empty(w)
    w=zeros(m,1);
    u_prev=zeros(l,1);   %need the last l most recent input
end
%compute filter output vector y using vectors w and u
U= toeplitz(u, [u(1), u_prev(1:-1:(l-m+2))]);
y=U*w;
%compute error using vectors d and y
e=d-y;
%update w for next call
w= w + mu*U'*e;
% update u_prev for next call
u_prev=u;
end


Δεν έπρεπε να υπάρχει και ένα φ κάπου; Γενικά με μπέρδεψε πολύ πως κάνει τον kL+i η BlockLMS στη MatLab
Logged
Mr Xaxas
Καταξιωμένος/Καταξιωμένη
***
Posts: 132



View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #221 on: July 06, 2020, 21:32:46 pm »

Quote from: mixalismilo on July 04, 2020, 13:19:45 pm
Μπορει καποιος να με βοηθησει με την υλοποιηση του block lms με fft. Ποιο διανυσμα u μετασχηματιζω και στο w προσθετω μηδενικα για να βγουν οι διαστασεις?
Δεν νμζω να χρειάζεται να προσθέσεις μηδενικά .Αυτός χρησιμοποιεί μηδενικά στον πίνακα w διότι στην υλοποίηση του παίρνει πίνακα u με 2Μ στοιχεία .
Logged
johnakis_m
Νεούλης/Νεούλα
*
Posts: 35


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #222 on: September 26, 2020, 23:54:33 pm »

Έχει λύσει κανείς κάτι απο Ιούλιο του 20;
Logged
MeloNYK
Νεούλης/Νεούλα
*
Posts: 17


View Profile
Re: [Ψηφιακά Φίλτρα] Παλιά Θέματα
« Reply #223 on: September 27, 2020, 19:30:47 pm »

Quote from: johnakis_m on September 26, 2020, 23:54:33 pm
Έχει λύσει κανείς κάτι απο Ιούλιο του 20;
+1
Logged
Pages: 1 ... 13 14 [15] Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...