Given an MxN numeric array (A), return an array (B) in which the middle rows and columns have each been repeated once. It may be easier to think of this problem as two operations: (1) repeat the middle rows, and then (2) repeat the middle columns.
The motivation for this problem is to create an array that, when used in blockproc(B,[2 2],fun), effectively incorporates a sliding window with 50% overlap. (NOTE: yes, nlfilter will work on array A, but it requires that the processing output be a scalar, whereas blockproc does not)
You may assume that M>1, N>1 (i.e. no scalars or vectors).
Example
If
A = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16]
Then
B = [1 2 2 3 3 4 5 6 6 7 7 8 5 6 6 7 7 8 9 10 10 11 11 12 9 10 10 11 11 12 13 14 14 15 15 16]
lovely !
doesn't it work only for square matrices? :P
Extract leading non-zero digit
967 Solvers
729 Solvers
265 Solvers
166 Solvers
Remove element(s) from cell array
107 Solvers