Error with Blkproc.m
Show older comments
I am getting error as follows how to solve it?
??? Subscripted assignment dimension mismatch.
Error in ==> blkproc at 89 aa(border(1)+(1:ma),border(2)+(1:na)) = a;
Error in ==> func_DCTJPEG at 35 Coef=blkproc(ImageSub,[8,8],'dct2(OriginalImage)');
Answers (2)
Lokesh Ravindranathan
on 23 Jul 2013
0 votes
This solution http://www.mathworks.com/support/solutions/en/data/1-FA7L9M/?solution=1-FA7L9M explains the reason for the error message. In short, you are trying to execute something which shouldn't be allowed.
Jan
on 23 Jul 2013
Check your code again:
Coef = blkproc(ImageSub, [8,8], 'dct2(OriginalImage)');
The provided function is a string, but blkproc expects a function handle. How could Matlab know, what "OriginalImage" is?
Please post the relevant part of the code to allow a more explicit help.
6 Comments
Pooja
on 23 Jul 2013
It looks strange: Your original question contained the string 'dct2(OriginalImage)' inside the blkproc call. I've explained, that you cannot provide the function as a string. The new code you post contains a new string 'P1*x*P2'. So there is still the same problem, but the code differs in exactly the point, which causes the error.
What do you think should 'P1*x*P2' do? What is P1, x and P2? Why do you use a string here as input for blkproc?
Pooja
on 26 Jul 2013
Jan
on 26 Jul 2013
@Pooja: I do not understand what the string should achieve. I cannot find a corresponding explanation if the help text. In consequence I cannot suggest an alternative.
Pooja
on 27 Jul 2013
Jan
on 27 Jul 2013
@Pooja: Even knowing the general purpose doe not allow to suggest a specific function.
Please open a new thread for a new question. Add the concerned code there and post a copy of the complete error message.
Categories
Find more on Annotations 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!