You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matlab实现归一化直方图时报数组索引需为正整数或逻辑值错误

Matlab报错「Array indices must be positive integers or logical values」排查方案

该报错的核心原因是代码中出现了非正整数/逻辑值的数组索引,结合你给出的代码和参数,问题出在以下两个可能的位置:

  • 索引Histograma_acum_norm时参数非法

    你给出的Histograma_acum_norm是长度为255的向量,对应Matlab中的合法索引范围为1~255。而framecito是从Frame中取出的像素值,常规8位图像的像素取值范围为0~255,直接将framecito作为索引取值时,只要像素值为0就会触发该报错。
    修复方式:将索引做+1偏移,修改该行代码为 acum_normal= Histograma_acum_norm(framecito + 1); 即可匹配索引范围。

  • 变量k的取值非法

    Frame是长度为1280*720=921600的向量,若循环中的k不是正整数,或者取值超出1~921600的范围,会导致Frame(k)/Salida(k)的索引报错。
    排查方式:在代码段前增加打印校验 disp(k); disp(isposinteger(k));,确认k的取值符合要求。

另外你代码开头的k;无实际执行作用,可直接删除。


内容的提问来源于stack exchange,提问作者MeowYOU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 01:27:02