Generalize centervalue to return the center value and a 2-element vector representing the row-column coordinate of the center. Call it centervalue2. >> centervalue2(magic(5)) ans = 13 >> [c loc] = centervalue2(magic(5)) c = 13 loc = 3 3
1 view (last 30 days)
Prem Kumar Tiwari on 26 Sep 2018
Following function will find out the center location of the given matrix mat. You can refer to the [row, col] values returned by it to find out the value at that location.
CAUTION : When one of the dimension of matrix is even, it will still find out the center which ideally do no exists. For the even dimension it will report the center point value to be the last value from the first half of the length in that dimension.
function [mid_row, mid_col] = findCenter(mat)
mid_row = floor((size(mat, 1) + 1) / 2);
mid_col = floor((size(mat, 2) + 1) / 2);