Index in position 1 exceeds array bounds (must not exceed 4079). how to rectify this error

1 次查看(过去 30 天)
Index in position 1 exceeds array bounds (must not exceed 4079).
Error in outex_14>cal_AP (line 200) tests = CLBP_SMCH(testIDs,:);
Error in outex_14 (line 42) AP = cal_AP(Hist,trainIDs, trainClassIDs,testIDs, testClassIDs) This is the error i am getting when i am running the code. Ihave attached my code with this? how to make changes to match the size?
  1 个评论
Adam
Adam 2018-10-5
Learning to debug your code makes error such as this easy to find, and once you find them and see what is wrong you have far more knowledge of what the code is supposed to be doing than we do.
Clearly you are passing an index bigger than 4079 to an array of only 4079 elements. Debug and find out where this is, follow it back to find out why and then you can fix it.

请先登录,再进行评论。

采纳的回答

Dennis
Dennis 2018-10-5
You are passing Hist and testIDs to your cal_AP function. In that function your try to access Hist(tesIDs).
Hist has 4079 rows (set by picnum early in your code), testIDs does not have this limitation and rather grows as long as there are images in your file. If there are more than 4079 you will get that error.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by