Error in Motion History Image Execution Matlab

1 view (last 30 days)
Hello!!
I am facing issue while running code of MHI. I am using Matlab R2015a. When I execute it, I am getting error that
Cell contents reference from a non-cell array object.
frame1 = fg{1};
function MHI = MHI(fg)
% Initialize the output, MHI a.k.a. H(x,y,t,T)
MHI = fg;
% Define MHI parameter T
T = 15; % # of frames being considered; maximal value of MHI.
% Load the first frame
frame1 = fg{1};
% Get dimensions of the frames
[y_max x_max] = size(frame1);
% Compute H(x,y,1,T) (the first MHI)
MHI{1} = fg{1} .* T;
%Start global loop for each frame
for frameIndex = 2:length(fg)
%Load current frame from image cell
frame = fg{frameIndex};
%Begin looping through each point
for y = 1:y_max
for x = 1:x_max
if (frame(y,x) == 255)
MHI{frameIndex}(y,x) = T;
else
if (MHI{frameIndex-1}(y,x) > 1)
MHI{frameIndex}(y,x) = MHI{frameIndex-1}(y,x) - 1;
else
MHI{frameIndex}(y,x) = 0;
end
end
end
end
end
I have been struggling hard. Please help

Answers (1)

Walter Roberson
Walter Roberson on 4 Sep 2015
When you call MHI, you need to pass in to it a cell array that contains two dimensional numeric arrays. It appears to me the code expects the arrays to be in uint8 format.

Categories

Find more on Images in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!