function [result, thresh] = myOtsu2(im)
L = 256;
hist = imhist(im);
px = (hist/sum(hist));
T_vec = zeros(1,L);

% u elore kizsamolhato, mert fuggetlen T-tol
% a nevezo == 1 (az osszes valoszinuseg osszege),
% igy azzal nem kell foglalkozni
u = sum(px(1:L).*(1:L)');   

for T = 1:256
    BT = sum(px(1:T));
    uT = sum(px(1:T).*(1:T)'); % a transzponalas oka hogy px oszlopvektor
    T_vec(T) = (uT - u*BT)^2 / (BT *(1-BT));
end

[~,thresh] = max(T_vec);
result = im > thresh;

end