Move the sources to trunk
[opencv] / interfaces / matlab / toolbox / opencv / _cverode.m
1 function varargout = cverode(varargin)\r
2 %CVERODE             Apply minimum filter to the image\r
3 %   IMAGE dst = cvErode(IMAGE src, elementValues, elementSize, iterations);\r
4 %   src           - source image\r
5 %   elementValues - structuring element matrix\r
6 %   elementSize   - [anchorRow, anchorCol]\r
7 %   iterations    - default 1.\r
8 %\r
9 %   dst - destination image\r
10 %\r
11 %   IMAGE dst = cvErode(IMAGE src, elementType, elementSize, iterations);\r
12 %   src         - source image\r
13 %   elementType - {'rect'} | 'cross' | 'ellipse'\r
14 %   elementSize - [nRows, nCols, anchorRow, anchorCol]. Default [3, 3, 2, 2].\r
15 %   iterations  - default 1.\r
16 %\r
17 %   dst - destination image\r
18 \r
19 if nargin < 1 | nargin > 4\r
20     error 'Invalid number of parameters';\r
21     return;\r
22 end\r
23 \r
24 if nargin > 1\r
25     if ischar(varargin{2})\r
26                 elem_t = {'rect', 'cross', 'ellipse'};\r
27                 elem_i = [0, 1, 2];\r
28         idx = strmatch(varargin{2}, elem_t, 'exact');\r
29         if isempty(idx)\r
30             error 'Invalid parameter ''elementType''';\r
31             return;\r
32                 end\r
33         varargin{2} = elem_i(idx(1));\r
34     end\r
35 else\r
36     varargin{2} = [];\r
37 end\r
38 \r
39 if nargin < 3\r
40     varargin{3} = [3, 3, 2, 2]; % default elementSize\r
41 end\r
42 \r
43 if nargin < 4\r
44     varargin{4} = 1; % default iterations\r
45 end\r
46 \r
47 out = nargout;\r
48 if out < 1\r
49     out = 1;\r
50 end\r
51 \r
52 if out > 1\r
53     error 'Too many output parameters'\r
54     return;\r
55 end;\r
56 \r
57 [varargout{1:out}] = feval('cvwrap', 'Erode', varargin{:});\r
58 \r
59 return;