Seanlx 发表于 2009-11-5 21:05

sum 实在没辙了~

用matlab两年多,第一次发帖求助。
. . .
得到了一个128*128的图像R
a= zeros(1, 180);
for i = 0:179
    M = imrotate(R, -i, 'bilinear', 'crop');
    a(i+1) = min(sum(M(: ,10:119)));
end
提示 Subscript indices must either be real positive integers or logicals.
调试最终发现错误竟在sum~ 弄了好几个钟头还是不知道原因,绝望了。

蹊跷的是,先将生成的图像R用imwrite保存;再新开一个m文件,用imread把R读进来,再for,一点儿问题没有。

知道的朋友麻烦点拨一下,不胜感激!

ChaChing 发表于 2009-11-5 22:43

个人水平专业有限, 图像的东西没学过!
没LZ的R可试, 借现成的clown试下, 没LZ的报错?
clc; clear; load clown; R=X(1:128,1:128);
a= zeros(1, 180);
for i = 0:179
    M = imrotate(R, -i, 'bilinear', 'crop');
    a(i+1) = min(sum(M(: ,10:119)));
end

friendchj 发表于 2009-11-6 07:27

把R换成3维的和uint8类型的都没有报错,楼主再看看程序。

ChaChing 发表于 2009-11-6 08:11

这个好像是sum已经被定义成变数
页: [1]
查看完整版本: sum 实在没辙了~