• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
August 01, 2025, 17:59:46 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.
August 01, 2025, 17:59:46 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Άδεια ασκήσεως επαγγέλματ...
by L
[Today at 17:57:12]

Νέα Δημοκρατία (and Co. I...
by Katarameno
[Today at 15:13:09]

[Τομέας Ηλεκτρονικής] Μαθ...
by PolarBear
[Today at 15:05:18]

Πρόγραμμα Σπουδών Ακαδημα...
by PolarBear
[Today at 15:03:05]

[Τομέας Ενέργειας] Μαθήμα...
by chatzikys
[Today at 13:53:11]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by MajorTom
[Today at 11:34:38]

Aναζωπύρωση των εχθροπραξ...
by Katarameno
[July 31, 2025, 21:15:48 pm]

Καμμένα...!!
by Godat
[July 31, 2025, 21:07:58 pm]

Οι μπράβοι του πρύτανη
by okan
[July 31, 2025, 20:32:45 pm]

[ΑΝΤΙΣΤΑΣΗ] Ανακοίνωση γι...
by Katarameno
[July 31, 2025, 20:31:30 pm]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[July 31, 2025, 15:33:28 pm]

ΤΗΜΜΥ-Σκάκι
by L
[July 31, 2025, 13:24:56 pm]

Τι ακούτε αυτήν τη στιγμή...
by Giopan
[July 30, 2025, 17:07:32 pm]

Αποτελέσματα Εξεταστικής ...
by Mr Watson
[July 30, 2025, 14:19:11 pm]

Τα παράσιτα ανάμεσά μας
by Katarameno
[July 30, 2025, 13:47:28 pm]

Ρώτα κάτι τον επόμενο
by Giopan
[July 29, 2025, 16:04:23 pm]

Πότε θα βγει το μάθημα; -...
by chatzikys
[July 29, 2025, 13:52:51 pm]

[ΣΗΕ ΙΙ] Γενικές απορίες ...
by Διάλεξις
[July 29, 2025, 01:00:00 am]

Η άχρηστη πληροφορία της ...
by Katarameno
[July 28, 2025, 23:50:00 pm]

Αναβαθμολόγιση??
by Katarameno
[July 28, 2025, 23:20:48 pm]
Στατιστικά
Members
Total Members: 9987
Latest: Kwtininatheod
Stats
Total Posts: 1427626
Total Topics: 31739
Online Today: 147
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 20
Guests: 102
Total: 122
stavros0201
maria_sf8
gdimove
apob
prigians
iliaskou
rigas_s
sassi
bluecactusgr
gpr000
Giannis Masterio
Mr Watson
chrisg
Εμφάνιση

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

Νέα!
Για οποιοδήποτε πρόβλημα με register/login, στείλτε email στο contact@thmmy.gr.
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 32487 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...