📄 reform.m
字号:
function B = reform(A, dr, dc, bs, bv, ncc)%% REFORM: B = reform(A, dr, dc, bs, bv, ncc);%% Convert each row of A into a dr X dc chip in B.% Arguments:% A - input matrix with chips as rows% dr - number of rows in a chip% dc - number of cols in a chip% bs - (opt) size of border between chips% bv - (opt) value given to pixels in borders% ncc - (opt) number of chips per row in B%% Modified: 04/21/93, 23:10 - added ncc as an optional parameter and fixed% the row-column problem involved in the reshaping of A.%% Modified: 05/02/94 - added bs and bv as optional arguments%[ar, ac] = size(A);if (nargin < 6) ncc = ceil(sqrt(ar)); % Number of chip columns (i.e., nchips per row)endif (nargin < 5) bv = 0;endif (nargin < 4) bs = 3;endncr = ceil(ar/ncc); % Number of chip rows%[ncr, ncc];%bdr = dr + bs;bdc = dc + bs;%% Preallocate BB = bv .* ones(ncr * bdr, ncc * bdc - bs);%% Convert each row of A into a chip in Bfor i = 1 : ar r0 = 1 + fix((i-1)/ncc) * bdr; c0 = 1 + rem((i-1), ncc) * bdc; B(r0:r0+dr-1, c0:c0+dc-1) = (reshape(A(i,:), dc, dr))';end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -