Home > class > BCMapper.m

BCMapper

PURPOSE ^

SYNOPSIS ^

This is a script file.

DESCRIPTION ^

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 classdef BCMapper
0002 %BCMAPPER documentation goes here
0003 
0004     properties
0005         dataMap %struct with field .name
0006         
0007     end %properties
0008     
0009     methods
0010         %% Constructor
0011         function mapper = BCMapper(dataMap)
0012             if (nargin == 0)
0013                 mapper.dataMap = [];
0014             else
0015                 mapper.dataMap = dataMap;
0016             end
0017         end
0018         
0019         %% Read in image
0020         function im = read(mapper, dataset, type, frame)
0021             imPath = mapper.getPath(dataset, type, frame);                        
0022             im = imread(imPath);
0023             if ndims(im) == 3 
0024                  im = rgb2gray(im);
0025             end
0026         end
0027         
0028         %% Write image to disk
0029         function write(mapper, im, dataset, type, frame)
0030             imPath = mapper.getPath(dataset, type, frame);
0031             if (exist(strcat(dataset,'/',type),'dir')~=7)
0032                 mkdir(strcat(dataset,'/',type));
0033             end
0034             imwrite(im, imPath);
0035         end
0036                 
0037         %% Get the whole path folder
0038         function imPath = getPath(mapper, dataset, type, frame)
0039             % if enter numeric dataset instead of name
0040             if isnumeric(dataset)
0041                 dataname = map2str(mapper, dataset);
0042             else
0043                 dataname = dataset;
0044             end
0045             extension = strcat('.', lower(type), '.png');
0046             imName = mapper.getname(dataname,frame, extension);
0047             extFolder = mapper.getExtensionFolder(extension);
0048             imPath = strcat(dataname,'/',extFolder,'/',imName);
0049         end
0050         
0051         %% Map to dataset name give its numeric value
0052         function dataname = map2str(mapper, dataset)
0053             dataname = mapper.dataMap(dataset).Name;
0054         end 
0055     end %methods
0056     
0057     methods (Static)
0058         %% Get name of the image
0059         function name = getname(dataset, frame, extension)
0060             if frame < 10
0061                 name = strcat(dataset,'00',num2str(frame), extension);
0062             elseif frame < 100
0063                 name = strcat(dataset,'0',num2str(frame), extension);
0064             else
0065                 name = strcat(dataset, num2str(frame), extension);
0066             end
0067         end
0068                 
0069         %% Get extension folder name give an extension
0070         function extFolder = getExtensionFolder(extension)
0071             extFolder = upper(extension(2:strfind(extension(2:end),'.')));
0072         end
0073         
0074 
0075     end %method static
0076     
0077     
0078 end %classdef

Generated on Thu 17-Mar-2011 14:45:51 by m2html © 2005