It's a good webinar. Clear speaker. Structured development, very nice. Slow paced, unfortunately; the same material could be presented in 2/3 the time. It doesn't really explain the basis for some fundamental syntax requirements. I came here from a different OOP background, and it took me all afternoon to figure out why my objects were not getting updated. MATLAB pass-by-value is the culprit; I expected the functions to simply update the object properties. This is the reason for functions, rather than "procedure", I suppose.
I noticed a bug in the histogram computation. Gradient vectors whose angle is equal to pi are being omitted from the histogram because you check for angle < angle_lim instead of angle <= angle_lim.
I also re-wrote the histogram computation to optimize it in a way similar to what was suggested in an earlier comment.
% Compute the bin index for every angle.
binIndeces = ceil((v_angles + pi) / binSize);
% For each bin
for (bin = 1:B)
% Get the magnitudes for all the pixels that belong in 'bin'.
magnitudes = v_magnit(binIndeces == bin);
% Add all of the magnitudes to 'bin'.
H2(bin) = H2(bin) + sum(magnitudes);