Subscripted assignment dimension mismatch.
显示 更早的评论
good after noon everyone! please help me in this error i need to create a data base to 500 images all of dimension 100x100 and to compare it with another image of the same dimension when creating the database i use
for i=1:500
dataBase(i,:)=['Images/Database/' int2str(i) '.jpg '];
end
save Database
however the code only reads the first 9 images then display the following error * *
Subscripted assignment dimension mismatch.
Error in DB(line 3)
dataBase(i,:)=['Images/Database/' int2str(i) '.jpg '];* *
and the dataBase appears as 9x22 double i=10
please help me thanks
采纳的回答
更多回答(2 个)
Since your strings have different lengths, you should hold them in a cell array,
for i=1:500
dataBase{i}=['Images/Database/' int2str(i) '.jpg '];
end
To hold them as a char array, you would have to pad the strings with spaces to make them of equal length. The char() command can do this, but it is questionable how essential this is for you.
4 个评论
Matt J
2015-4-18
Nour Mawla commented:
Mr. Matt J, thank you for your response however it didn't work the dataBase appeared as 1x500 cells and it gives an error when running the comparing function what i need is a dataBase 500x22 char Thanks
Image Analyst
2015-4-18
Then see the second half of my reply.
Matt J
2015-4-18
Once you have the cell array, you can convert as follows,
dataBase=char(dataBase)
Nour Mawla
2015-4-18
类别
在 帮助中心 和 File Exchange 中查找有关 Image Arithmetic 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!