SSD报错:ValueError: setting an array element with a sequence. (已解决)

Posted 爱吃酸菜鱼的小猫咪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSD报错:ValueError: setting an array element with a sequence. (已解决)相关的知识,希望对你有一定的参考价值。

代码为SSD-pytorch代码

报错

 根据上述报错的最后一行蓝色字体,点击进入报错位置augmentations.py文件中

 解决方案

        SSD代码之前没产生问题,由于最近更新了numpy后,出现了这个问题,原因:numpy版本过高时,随机选择的数据维度不一致会产生错误。

(numpy版本低时,代码可以正常运行,但存在warning)

修改为

self.sample_options = np.array([
    # using entire original input image
    None,
    # sample a patch s.t. MIN jaccard w/ obj in .1,.3,.4,.7,.9
    (0.1, None),
    (0.3, None),
    (0.7, None),
    (0.9, None),
    # randomly sample a patch
    (None, None),
], dtype=object)  # 随机选择的数组维度不一致时,需加入dtype=object(numpy版本过高带来的问题)

使用np.array生成数组,加入dtype=object即可解决问题

以上是关于SSD报错:ValueError: setting an array element with a sequence. (已解决)的主要内容,如果未能解决你的问题,请参考以下文章

matplotlib.pyplot import报错: ValueError: _getfullpathname: embedded null character in path

Django ReverseSingleRelatedObjectDescriptor.__set__ ValueError

报错与解决 | ValueError: pos_label=‘pos‘ is not a valid label

python读取xml文件报错ValueError: multi-byte encodings are not supported

Python 报错 ValueError list.remove(x) x not in list 解决办法

tensorflow-TFRecord报错ValueError: Protocol message Feature has no "feature" field.