Advertisement
Guest User

Untitled

a guest
May 22nd, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 5.07 KB | None | 0 0
  1. audio = audioread('ontwikkelen.wav');
  2.  
  3. %% linear simple
  4. if 1
  5.     %calculate Yk
  6.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = simple_sbc( audio, 1, 0, ones(1,5), ones(1,5)*4);
  7.     Yls(1) = prctile(y1,99.9);
  8.     Yls(2) = prctile(y2,99.9);
  9.     Yls(3) = prctile(y3,99.9);
  10.     Yls(4) = prctile(y4,99.9);
  11.     Yls(5) = prctile(y5,99.9);
  12.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = simple_sbc( audio, 1, 0, Yls, ones(1,5)*4);
  13.     E(1) = sum((y1-y1hat).^2);
  14.     E(2) = sum((y2-y2hat).^2);
  15.     E(3) = sum((y3-y3hat).^2);
  16.     E(4) = sum((y4-y4hat).^2);
  17.     E(5) = sum((y5-y5hat).^2);
  18.  
  19.     %calculate Bk
  20.     Boptls = zeros(1,5);
  21.     minEBls = +inf;
  22.     for i1 = [2:8]
  23.         for i2 = [2:8]
  24.             for i3 = [2:8]
  25.                 for i4 = [2:8]
  26.                     for i5 = [2:8]
  27.                         B = [i1, i2, i3, i4, i5];
  28.                         Bsbc = sum(B)/5;
  29.                         if (Bsbc == 4)
  30.                             EB = sum(E.*4.^(4-B));
  31.                             if EB < minEBls
  32.                                 minEBls = EB
  33.                                 Boptls = B
  34.                             end
  35.                         end
  36.                     end
  37.                 end
  38.             end
  39.         end
  40.     end
  41. end
  42.  
  43.  
  44. %% log simple
  45. if 1
  46.     %calculate Yk
  47.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = simple_sbc( audio, 2, 0, ones(1,5), ones(1,5)*4);
  48.     Yos(1) = prctile(y1,99.9);
  49.     Yos(2) = prctile(y2,99.9);
  50.     Yos(3) = prctile(y3,99.9);
  51.     Yos(4) = prctile(y4,99.9);
  52.     Yos(5) = prctile(y5,99.9);
  53.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = simple_sbc( audio, 2, 0, Yos, ones(1,5)*4);
  54.     E(1) = sum((y1-y1hat).^2);
  55.     E(2) = sum((y2-y2hat).^2);
  56.     E(3) = sum((y3-y3hat).^2);
  57.     E(4) = sum((y4-y4hat).^2);
  58.     E(5) = sum((y5-y5hat).^2);
  59.  
  60.     %calculate Bk
  61.     Boptos = zeros(1,5);
  62.     minEBos = +inf;
  63.     for i1 = [2:8]
  64.         for i2 = [2:8]
  65.             for i3 = [2:8]
  66.                 for i4 = [2:8]
  67.                     for i5 = [2:8]
  68.                         B = [i1, i2, i3, i4, i5];
  69.                         Bsbc = sum(B)/5;
  70.                         if (Bsbc == 4)
  71.                             EB = sum(E.*4.^(4-B));
  72.                             if EB < minEBos
  73.                                 minEBos = EB
  74.                                 Boptos = B
  75.                             end
  76.                         end
  77.                     end
  78.                 end
  79.             end
  80.         end
  81.     end
  82. end
  83.  
  84.  
  85.  
  86.  
  87. %% linear complex
  88. if 1
  89.     %calculate Yk
  90.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = complex_sbc( audio, 1, 0, ones(1,5), ones(1,5)*4);
  91.     Ylc(1) = prctile(y1,99.9);
  92.     Ylc(2) = prctile(y2,99.9);
  93.     Ylc(3) = prctile(y3,99.9);
  94.     Ylc(4) = prctile(y4,99.9);
  95.     Ylc(5) = prctile(y5,99.9);
  96.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = complex_sbc( audio, 1, 0, Ylc, ones(1,5)*4);
  97.     E(1) = sum((y1-y1hat).^2);
  98.     E(2) = sum((y2-y2hat).^2);
  99.     E(3) = sum((y3-y3hat).^2);
  100.     E(4) = sum((y4-y4hat).^2);
  101.     E(5) = sum((y5-y5hat).^2);
  102.                            
  103.  
  104.     %calculate Bk
  105.     Boptlc = zeros(1,5);
  106.     minEBlc = +inf;
  107.     for i1 = [2:8]
  108.         for i2 = [2:8]
  109.             for i3 = [2:8]
  110.                 for i4 = [2:8]
  111.                     for i5 = [2:8]
  112.                         B = [i1, i2, i3, i4, i5];
  113.                         Bsbc = sum(B)/5;
  114.                         if (Bsbc == 4)
  115.                             EB = sum(E.*4.^(4-B));
  116.                             if EB < minEBlc
  117.                                 minEBlc = EB
  118.                                 Boptlc = B
  119.                             end
  120.                         end
  121.                     end
  122.                 end
  123.             end
  124.         end
  125.     end
  126. end
  127.  
  128.  
  129. %% log complex
  130. if 1
  131.     %calculate Yk
  132.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = complex_sbc( audio, 2, 0, ones(1,5), ones(1,5)*4);
  133.     Yoc(1) = prctile(y1,99.9);
  134.     Yoc(2) = prctile(y2,99.9);
  135.     Yoc(3) = prctile(y3,99.9);
  136.     Yoc(4) = prctile(y4,99.9);
  137.     Yoc(5) = prctile(y5,99.9);
  138.     [ xhat,y1, y2, y3, y4, y5, y1hat,y2hat,y3hat,y4hat,y5hat ] = complex_sbc( audio, 2, 0, Yos, ones(1,5)*4);
  139.     E(1) = sum((y1-y1hat).^2);
  140.     E(2) = sum((y2-y2hat).^2);
  141.     E(3) = sum((y3-y3hat).^2);
  142.     E(4) = sum((y4-y4hat).^2);
  143.     E(5) = sum((y5-y5hat).^2);
  144.                            
  145.  
  146.     %calculate Bk
  147.     Boptoc = zeros(1,5);
  148.     minEBoc = +inf;
  149.     for i1 = [2:8]
  150.         for i2 = [2:8]
  151.             for i3 = [2:8]
  152.                 for i4 = [2:8]
  153.                     for i5 = [2:8]
  154.                         B = [i1, i2, i3, i4, i5];
  155.                         Bsbc = sum(B)/5;
  156.                         if (Bsbc == 4)
  157.                             EB = sum(E.*4.^(4-B));
  158.                             if EB < minEBoc
  159.                                 minEBoc = EB
  160.                                 Boptoc = B
  161.                             end
  162.                         end
  163.                     end
  164.                 end
  165.             end
  166.         end
  167.     end
  168. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement