【引路帖】【解决问题】TypeError: `Tensor` objects are not iterable when eager execution is not enabled.

我在调试别人的代码时候发现的问题

主要遇到两种报错:

1. Tensor objects are not iterable when eager execution is not enabled.

2. ValueError: setting an array element with a sequence.

【引路帖】【解决问题】TypeError: `Tensor` objects are not iterable when eager execution is not enabled._第1张图片

原因呢,是因为vgg16提取出的特征是tensor类型,而具体要处理的时候需要array类型,所以需要转换。

(这里可以对你要处理的对象,用print(type(tensor_name)) 先查看报错 Tensor 的类型)

所以用以下语句进行类型转换:

sess=tf.Session()
#转化为numpy数组
tensor_name=tensor_name.eval(session=sess)

然后再print(type(tensor_name)) ,检查tensor_name的类型,发现类型已经转换成

就可以了。

 

问题1参考链接:https://blog.csdn.net/mr_muli/article/details/90648113

问题2参考链接:https://blog.csdn.net/Poo_Chai/article/details/91040938

 

你可能感兴趣的:(Python)