passing cell array to function

3 views (last 30 days)
dmulky
dmulky on 1 Dec 2013
Edited: Wayne King on 1 Dec 2013
Hi,
I am trying to pass a cell array of images to a function which converts each image to grayscale and single precision and then does some manipulation on them:
function [a, b, c]= createGMM(cell_array)
for k=1:length(cell_array)
%convert to grayscale
new_image=rgb2gray(cell_array{k});
%convert to single
single_image=im2single(new_image);
..........
..........
When I run this code- [m, c, p]= createGMM(images) with the 'images' cell array (which is in my workspace) I get the error
Undefined function 'createGMM' for input arguments of type 'cell'.
Please let me know what I am doing wrong. Thanks!

Accepted Answer

Wayne King
Wayne King on 1 Dec 2013
Edited: Wayne King on 1 Dec 2013
Have you saved the function in a folder that is on the MATLAB path?
MATLAB needs to know how to find the function.
Use
>>addpath 'c:\path_to_folder'
or
>>pathtool
to add the folder where you have save createGMM to the path.

More Answers (1)

Walter Roberson
Walter Roberson on 1 Dec 2013
createGMM.m is not on your MATLAB path, or your existing createGMM.m has an error in it that is preventing it from being parsed, so MATLAB is ignoring it.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!