我已经使用Tensorflow为从此链接克隆的诗人创建了分类器:https://github.com/googlecodelabs/tensorflow-for-poets-2
我用自己创建的标签训练了自己的数据。
python scripts/retrain.py --image_dir ./tf_files/train --output_graph=tf_files/retrained_graph.pb --output_labels=tf_files/retrained_labels.txt --how_many_training_steps=1000
当我一次使用它标记一个文件时,它工作正常。
python3 scripts/label_image.py --graph=tf_files/retrained_graph.pb --image=test.png
我试图运行一个使用subprocess
模块的脚本从python程序执行该脚本。
command = "python3 {} --graph={} --image={}".format(src_label,src_graph,sys.argv[1])
test = subprocess.Popen(command,shell = True,stdout=subprocess.PIPE)
output,err = test.communicate()
print("\nOUTPUT\n")
output = output.decode("utf-8")
这对于我作为我正在运行的代码的参数给出的一张图像来说效果很好。 src_label
,src_graph
已定义,分别是label_image.py和retrained_graph.pb的地址。
我可以做到这一点,使得它实际上可以对目录中的所有图像执行此操作,但是有一种方法可以直接执行此操作,而无需为此编写单独的代码。