MATLAB: A simple problem about matrix plz HELP me


I have this matrix that attached, every row shows SURF features for one image, but these features are so close together, I wanna increase discrimination between every row, and take to a larger scale,
how cani do this?
can you help me plz?

Best Answer

  • suppose your matrix is called "X". if you want to scale each row by a known factor, write this code:
    % define a column vector called S where S(i) is the scaling factor for each row.
    [~,c] = size(X)
    Xp = repmat(S,[1 c]).*X % the scaled matrix
    vector S must have the same number of rows as matrix X. the values in S must be around 1 (eg: 0.92, 1.04,etc) to not change your main matrix entirely but that's on your own.