⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 im_center.m

📁 The pattern recognition matlab toolbox
💻 M
字号:
%IM_CENTER Shift all binary images in dataset: center to center of gravity%%   B = IM_CENTER(A)%   B = A*IM_CENTER%% The objects in the binary images are shifted such that their centers of % gravities are in the image center.%%   B = IM_CENTER(A,N)%% In all directions N rows and columns are added after shifting.%% SEE ALSO% DATASETS, DATAFILES% Copyright: R.P.W. Duin, r.p.w.duin@prtools.org% Faculty EWI, Delft University of Technology% P.O. Box 5031, 2600 GA Delft, The Netherlandsfunction b = im_center(a,n)	prtrace(mfilename);		if nargin < 2 | isempty(n), n= 0; end	  if nargin < 1 | isempty(a)    b = mapping(mfilename,'fixed',{n});    b = setname(b,'Image centering');	elseif isa(a,'dataset') % allows datafiles too		isobjim(a);    b = filtim(a,mfilename,{n});		b = setfeatsize(b,getfeatsize(a));  elseif isa(a,'double') | isa(a,'dip_image') % here we have a single image		if isa(a,'dip_image'), a = double(a); end		a = im_box(a);		[ty,tx] = size(a);		[sy,sx] = size(a);		mxy = im_mean(a);		mx = 2*round(mxy(1)*sx)-1-sx;		my = 2*round(mxy(2)*sy)-1-sy;		if mx < 0			a = [zeros(sy,-mx) a];		elseif mx > 0			a = [a zeros(sy,mx)];		end		sx = sx + abs(mx);		if my < 0			a = [zeros(-my,sx); a];		elseif my > 0			a = [a; zeros(my,sx)];		end		sy = sy + abs(my);		if n > 0			b = zeros(sy+2*n,sx+2*n);			b(n+1:n+sy,n+1:n+sx) = a;		else			b = a;		end		[ry,rx] = size(b);	endreturn

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -