%SHOW PRTools general show % % H = SHOW(A,N,B) % H = A*SHOW([],N,B) % H = A*SHOW(N,B) % % INPUT % A Image % N Number of images on a row % B Intensity value of background (default 0.5); % % OUTPUT % H Graphics handle % % DESCRIPTION % PRTools offers a SHOW command for variables of the data classes PRDATASET % and PRDATAFILE. In order to have a similiar command for images not converted % to a PRDATASET this commands made available. A should be 2D, 3D or 4D image. % % 2D images are fully displayed. % % 3D images are converted to a dataset with as many feature images as given % in the 3rd dimension and displayed by PRDATASET/SHOW. % % 4D images with 3 bands in the 3rd dimension are converted to a dataset with % as many 3-color object images as are given in the 4th dimension and % displayed by PRDATASET/SHOW % % All other 4D images are converted to a dataset with as many 2D feature % images as given by the dimensions 3 and 4 and displayed by PRDATASET/SHOW. % Unless given otherwise, N is set to size(A,3). % % SEE ALSO (PRTools Guide) % PRDATASET/SHOW PRDATAFILE/SHOW % Copyright: R.P.W. Duin, r.p.w.duin@37steps.com % Faculty EWI, Delft University of Technology % P.O. Box 5031, 2600 GA Delft, The Netherlands function h = show(varargin) argin = shiftargin(varargin,'scalar'); argin = setdefaults(argin,[],[],0.5); if mapping_task(argin,'definition') h = define_mapping(argin,'fixed'); else [a,n,background] = deal(argin{:}); a = double(a); s = size(a); if length(s) == 2 if any(s==1) error('Image expected') end a = im2obj(a); elseif length(s) == 3 & s(3) ~= 3 a = im2feat(a); a = prdataset(a,NaN); % avoid display label image else if length(s) >= 3 & s(3) == 3 a = im2obj(a,s(1:3)); else a = reshape(a,s(1),s(2),prod(s(3:end))); a = im2feat(a); a = prdataset(a,0); % avoid display label image end end if nargout > 0 h = show(a,n,background); else show(a,n,background); end end