使用protobuf进行编译,将.proto文件转换为.py文件时是否可能循环? - python

我当时正在使用TensorFlow为对象识别项目设置环境。当涉及到编译一些.proto文件时,我碰壁了。它花费了很多努力来找到文件的路径,然后找到protobuf应用程序的路径,然后继续为每个单独的proto文件命令-- python_out=.

我正在/正在尝试做的事情:
在(https://www.edureka.co/blog/tensorflow-object-detection-tutorial/#object)教程之后,我设法在edureka上进行了以下操作:

将“模型”和“ protobuf”保留在一个“ Tensorflow”文件夹下
进入Tensorflow文件夹,然后进入研究文件夹,并使用以下命令从此处运行protobuf:

"path_of_protobuf's bin"./bin/protoc object_detection/protos/

命令

C:\Users\yourusername\Desktop\TensorFlow\protoc-3.5.1-win32\bin\protoc object_detection/protos/anchor_generator.proto --python_out=.
C:\Users\yourusername\Desktop\TensorFlow\protoc-3.5.1-win32\bin\protoc object_detection/protos/argmax_matcher.proto --python_out=.
C:\Users\yourusername\Desktop\TensorFlow\protoc-3.5.1-win32\bin\protoc object_detection/protos/bipartite_matcher.proto --python_out=.

....依此类推,直到完成protos文件夹中的所有项目

因此,这样做基本上是让我可以在每个原型文件下编译为.py文件。我确实有很多事情要做,所以要提高效率-如何循环执行此操作,以便一遍又一遍地通过需要编译的原型文件执行完全相同的任务?

参考方案

我可以按照以下步骤解决此问题:

导航到命令行中的Tensorflow\models\research文件夹(具体情况视路径而定)
输入此命令for %i in (object_detection\protos\*.proto) do protoc %i --python_out=.

如screenshot所示,它将为.py文件夹中的每个.proto文件创建Tensorflow\models\research文件。

希望这可以帮助。

Python GPU资源利用 - python

我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…

Python sqlite3数据库已锁定 - python

我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…

Python exchangelib在子文件夹中读取邮件 - python

我想从Outlook邮箱的子文件夹中读取邮件。Inbox ├──myfolder 我可以使用account.inbox.all()阅读收件箱,但我想阅读myfolder中的邮件我尝试了此页面folder部分中的内容,但无法正确完成https://pypi.python.org/pypi/exchangelib/ 参考方案 您需要首先掌握Folder的myfo…

python-docx应该在空单元格已满时返回空单元格 - python

我试图遍历文档中的所有表并从中提取文本。作为中间步骤,我只是尝试将文本打印到控制台。我在类似的帖子中已经看过scanny提供的其他代码,但是由于某种原因,它并没有提供我正在解析的文档的预期输出可以在https://www.ontario.ca/laws/regulation/140300中找到该文档from docx import Document from…

Python ThreadPoolExecutor抑制异常 - python

from concurrent.futures import ThreadPoolExecutor, wait, ALL_COMPLETED def div_zero(x): print('In div_zero') return x / 0 with ThreadPoolExecutor(max_workers=4) as execut…