我用下面的命令编译了这些文件。
protoc object_detection/protos/*.proto --python_out=.
并且作为结果被编译成.py文件。
但是,我收到了以下错误代码。
~/文档/imgmlreport/inception/分类_inception/模型/研究/对象_检测/实用程序/label_map_util.py in()
20 import tensorflow as tf
21 from google.protobuf import text_format
---> 22 from object_detection.protos import string_int_label_map_pb2
23
24
ImportError: cannot import name 'string_int_label_map_pb2'
所以我检查了实用程序,我已经有了一个string_int_label_map_pb2.py
为什么不能导入字符串_标签_Map_pb2.py?
2条答案
按热度按时间eyh26e7m1#
您使用的是conda环境吗?
在这种情况下,指向的协议文件夹位于C:\Users\xx\anaconda 3\envs\xx\Lib\site-packages\protos中
您应该将方案的内容从模型\研究复制到本方案中
fquxozlt2#
对我有效的解决方案如下:
如果您正在创建虚拟环境:
创建环境后运行命令,将Google文件
.protp
更改为.py
:protoc object_detection/protos/*.proto --python_out=.
但是,如果你仍然面临错误,你可以简单地在谷歌colab笔记本上运行代码:
%%cd /content/drive/MyDrive/TFOD1.x/models/research
!protoc object_detection/protos/*.proto --python_out=.
获取protoc文件夹中的文件,然后将其复制到〉models〉research〉protoc和(导入步骤):将文件夹复制到您的环境路径:
例如:
C:\用户\x04xx18\Python3\环境\tfod1.x\libs\protos
这应该可以为您修复错误!