MATLAB Answers


how to call a function with multiple output argumnts

Asked by preet
on 13 Mar 2013

how to call this function

function [RHist,GHist,BHist]= RGBHistInter(imData);

RHist = [];

GHist = [];

BHist = [];

%extract Red

[Rcounts,x] = imhist(imData(:,:,1),16);

Rtotalpixels = sum(Rcounts);

for j = 1:size(x)

RHist = [RHist Rcounts(j)/Rtotalpixels];


%extract Green

[Gcounts,x] = imhist(imData(:,:,2),16);

Gtotalpixels = sum(Gcounts);

for j = 1:size(x)

GHist = [GHist Gcounts(j)/Gtotalpixels];


%extract Blue

[Bcounts,x] = imhist(imData(:,:,3),16);

Btotalpixels = sum(Bcounts);

for j = 1:size(x)

BHist = [BHist Bcounts(j)/Btotalpixels];





No products are associated with this question.

1 Answer

Answer by Wayne King
on 13 Mar 2013
Edited by Wayne King
on 13 Mar 2013
 Accepted answer

From the command line:

 [RHist,GHist,BHist]= RGBHistInter(imData);

You just have to save the function RGBHistInter.m in a folder on the MATLAB path. Or, better yet, save it in a folder that you add to the MATLAB path with

 >>addpath 'c:\thisisthepath'

or using


For example, suppose you have a folder called c:\mfiles

>>addpath 'c:\mfiles'

Save the function .m file in that folder and then if you enter

>>which RGBHistInter

you'll see that MATLAB recognizes the function.


Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!