首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ImageAI我得到了=> AttributeError:模块'tensorflow‘没有属性'to_float’

使用ImageAI我得到了=> AttributeError:模块'tensorflow‘没有属性'to_float’
EN

Stack Overflow用户
提问于 2020-04-14 10:47:32
回答 2查看 3.9K关注 0票数 3

按照本教程(https://medium.com/deepquestai/train-object-detection-ai-with-6-lines-of-code-6d087063f6ff),我希望检测图像中的对象。但是,我收到一条错误消息,但无法解决。如果我不能从imageai中更改源代码,因此不能以这种方式修复错误(https://github.com/google/tangent/issues/95),那么我能做什么呢?

这些是我的进口品:

代码语言:javascript
复制
!pip3 install tensorflow-gpu==1.13.1
!pip install imageai --upgrade
from imageai.Detection.Custom import DetectionModelTrainer

我运行以下代码:

代码语言:javascript
复制
data_path = 'leaf-images-with-pascal-voc-annotations/'

trainer = DetectionModelTrainer()
trainer.setModelTypeAsYOLOv3()
trainer.setDataDirectory(data_directory=data_path)
trainer.setTrainConfig(object_names_array=['leaf'], batch_size=16, num_experiments=100, 
                       train_from_pretrained_model="pretrained-yolov3.h5")
trainer.trainModel()

我尝试使用不同版本的tensorflow,但收到以下错误消息:

代码语言:javascript
复制
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-28-d42b2127d681> in <module>
      6 trainer.setTrainConfig(object_names_array=['leaf'], batch_size=16, num_experiments=100, 
      7                        train_from_pretrained_model="pretrained-yolov3.h5")
----> 8 trainer.trainModel()

/opt/conda/lib/python3.6/site-packages/imageai/Detection/Custom/__init__.py in trainModel(self)
    272             noobj_scale=self.__train_noobj_scale,
    273             xywh_scale=self.__train_xywh_scale,
--> 274             class_scale=self.__train_class_scale,
    275         )
    276 

/opt/conda/lib/python3.6/site-packages/imageai/Detection/Custom/__init__.py in _create_model(self, nb_class, anchors, max_box_per_image, max_grid, batch_size, warmup_batches, ignore_thresh, multi_gpu, lr, grid_scales, obj_scale, noobj_scale, xywh_scale, class_scale)
    551                     noobj_scale=noobj_scale,
    552                     xywh_scale=xywh_scale,
--> 553                     class_scale=class_scale
    554                 )
    555         else:

/opt/conda/lib/python3.6/site-packages/imageai/Detection/Custom/yolo.py in create_yolov3_model(nb_class, anchors, max_box_per_image, max_grid, batch_size, warmup_batches, ignore_thresh, grid_scales, obj_scale, noobj_scale, xywh_scale, class_scale)
    292                             noobj_scale,
    293                             xywh_scale,
--> 294                             class_scale)([input_image, pred_yolo_1, true_yolo_1, true_boxes])
    295 
    296     # Layer 83 => 86

/opt/conda/lib/python3.6/site-packages/imageai/Detection/Custom/yolo.py in __init__(self, anchors, max_grid, batch_size, warmup_batches, ignore_thresh, grid_scale, obj_scale, noobj_scale, xywh_scale, class_scale, **kwargs)
     22         max_grid_h, max_grid_w = max_grid
     23 
---> 24         cell_x = tf.to_float(tf.reshape(tf.tile(tf.range(max_grid_w), [max_grid_h]), (1, max_grid_h, max_grid_w, 1, 1)))
     25         cell_y = tf.transpose(cell_x, (0,2,1,3,4))
     26         self.cell_grid = tf.tile(tf.concat([cell_x,cell_y],-1), [batch_size, 1, 1, 3, 1])

AttributeError: module 'tensorflow' has no attribute 'to_float'
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-14 15:03:56

现在看来,ImageAI库有一个不固定的状态,它与tensorflow的最新版本不兼容,等等。

使用这些版本对我有效:

代码语言:javascript
复制
#Currently I found these to work together:
pip install opencv-python==4.1.2.30
pip install keras==2.3.1
pip install tensorflow==1.14.0
pip install tensorflow-gpu==1.14.0
pip install imageai --upgrade
NOTE: using imageai == 2.1.5
票数 2
EN

Stack Overflow用户

发布于 2020-11-06 11:31:34

在2.3.0版本中使用to_float方法时,我也得到了相同的错误

看起来,这个方法已经在库的新版本中被删除了。

为了使它正常工作,我修改了代码,使用强制转换方法,而不是使用to_float

下面是为我工作的示例代码

代码语言:javascript
复制
num=5
#as_float = tf.to_float(num)
#Change the above code line and use cast method instead
as_float=tf.cast(num, tf.float32)
as_float
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61205905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档