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

📄 implace.m

📁 hopfield neural network for binary image recognition
💻 M
字号:
% IMPLACE - place image at specified location within larger image%% Usage: newim = implace(im1, im2, roff, coff)%% Arguments:%%       im1  - Image that im2 is to be placed in.%       im2  - Image to be placed.%       roff - Row and column offset of placement of im2 relative %       coff   to im1, (0,0) aligns top left corners.%% Warning: The class of final image matches the class of im1. If im1 is of% type double and im2 is a uint8 colour image you will obtain a double image% having 3 colour channels with values ranging between 0-255.  This will% need to be cast to uint8, or divided by 255, for display via imshow or% show.% Copyright (c) 2004-2008 Peter Kovesi% School of Computer Science & Software Engineering% The University of Western Australia% http://www.csse.uwa.edu.au/% % Permission is hereby granted, free of charge, to any person obtaining a copy% of this software and associated documentation files (the "Software"), to deal% in the Software without restriction, subject to the following conditions:% % The above copyright notice and this permission notice shall be included in % all copies or substantial portions of the Software.%% The Software is provided "as is", without warranty of any kind.% September 2004  Original version% July      2008  Bug fixes for colour imagesfunction newim = implace(im1, im2, roff, coff)        [rows1, cols1, d] = size(im1);    [rows2, cols2, d] = size(im2);            % Find min row and column of im2 that will appear in im1    rmin2 = max(1,1-roff);    cmin2 = max(1,1-coff);            % Find min row and column within im1 that im2 covers    rmin1 = max(1,1+roff);    cmin1 = max(1,1+coff);            % Find max row and column of im2 that will appear in im1        rmax2 = min(rows1-roff, rows2);    cmax2 = min(cols1-coff, cols2);            % Find max row and column within im1 that im2 covers        rmax1 = min(rows2+roff, rows1);    cmax1 = min(cols2+coff, cols1);            % Check for the case where there is no overlap of the images    if rmax1 < 1 | cmax1 < 1 | rmax2 < 1 | cmax2 < 1 | ...       rmin1 > rows1 | cmin1 > cols1 | rmin2 > rows2 | cmin2 > cols2	newim = im1;  % Simply copy im1 to newim	    else  % Place im2 into im1		% Check if either image is colour and if one needs promoting to colour	ndim1 =  ndims(im1);	ndim2 =  ndims(im2);    		if ndim1 == 2 & ndim2 == 3	    fprintf('promoting im1 \n');	    im1 = uint8(repmat(im1,[1,1,3]));  % 'Promote' im1 to 3 channels	    ndim1 = 3;	elseif ndim2 == 2 & ndim1 == 3	    fprintf('promoting im2 \n');	    im2 = uint8(repmat(im2,[1,1,3]));  % 'Promote' im2 to 3 channels	    ndim2 = 3;	end		newim = im1;	        if ndim1 ==2   % Greyscale	    newim(rmin1:rmax1, cmin1:cmax1) = ...                            im2(rmin2:rmax2, cmin2:cmax2);	else           % Assume colour	    newim(rmin1:rmax1, cmin1:cmax1,:) = ...                            im2(rmin2:rmax2, cmin2:cmax2,:);	    	end	    end        

⌨️ 快捷键说明

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