object_detection模块中的protobuf编译问题

1、起因

使用tensorflow的models模块中的object_detection时,调试过程中难免会用到protos目录下的.proto文件,需要将.proto文件编译成.py文件才能使用。

2、准备工作

我的环境:windows10系统,anaconda,VS2019,models模块用的是tensorflow2以上的。

3、过程

安装protobuf,我采用的是参考这篇文章https://www.freesion.com/article/4240207775/,主要就是一句话,在Anaconda Prompt中执行conda install -c anaconda protobuf

安装完成后执行编译protoc object_detection/protos/*.proto --python_out=.
在这里插入图片描述
出现的错误
在这里插入图片描述
网上给的解决方法是编码问题,在notepad中修改UTF-8编码,但是我修改编码不能解决问题。

4、结论

打开.proto文件发现其中开头是这样的:
在这里插入图片描述
所有的.proto开头都有两个或者三个重复的开头,我在原文件中查看发现之前是没有这样的重复的,因此应该是在执行编译protoc object_detection/protos/*.proto --python_out=.过程中产生的,具体产生原因不知道。删除重复的开头后,再单独编译每个文件即可,把星号改成每个文件名,单独执行,因为有一些文件是不能编译的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值