Click here to Skip to main content
15,898,222 members
Please Sign up or sign in to vote.
2.33/5 (2 votes)
See more:
hi
This code runs in the matlab 2009a version. But the code does not run in the matlab 2013a version, and error messages are.



url site:
http://groups.inf.ed.ac.uk/calvin/articulated_human_pose_estimation_code/



code :
http://groups.inf.ed.ac.uk/calvin/articulated_human_pose_estimation_code/downloads/pose_estimation_code_release_v1.21.tgz



error:
Segmenting detection 0  343   27  242  217    0    0    0    2
Class: ubf
Error using  .* 
Integers can only be combined with integers of the same class, or scalar doubles.

Error in pm2segms (line 74)
    segm(p).all = segm(p).all + segm(p).regs(:,:,rix)*rix;

Error in SegmentTrack (line 53)
  T.PM(dix).segm(:,:,p) = pm2segms(UncompressPM(T.PM(dix)), class_id, pars, verbose);

Error in PoseEstimStillImage (line 42)
T.PM = SegmentTrack(fullfile(base_dir, img_dir),img_fname_format, T, segm_params, [base_dir
'/segms_' classname], verbose);
Posted
Updated 6-Dec-13 19:27pm
v2
Comments
[no name] 7-Dec-13 2:37am    
Fascinating.
Richard MacCutchan 7-Dec-13 4:24am    
Go and talk to the people who provide the code.

The error is telling you that this part of the statement is wrong:
segm(p).regs(:,:,rix)*rix

The error is saying that the element-wise multiplication doesn't have valid data types. Make sure segm(p).regs(:,:,rix) AND rix are valid types (integers or doubles).
 
Share this answer
 
How do I fix the error?

1-- segm(p).all = segm(p).all + segm(p).regs(:,:,rix)*rix;

2-- T.PM(dix).segm(:,:,p) = pm2segms(UncompressPM(T.PM(dix)), class_id, pars, verbose);

3-- T.PM = SegmentTrack(fullfile(base_dir, img_dir),img_fname_format, T, segm_params, [base_dir '/segms_' classname], verbose);
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900