作为我的BSc学位论文的一部分,我必须利用视频提要上的图像识别。
我已经确定了openCV和Tensorflow --特别是“盗梦空间”训练模型--是两种选择,但是我不知道如何继续下去。基本上,我需要的是传递一个字符串,比如“key”,如果前5名的结果之一是“key”,则返回一个布尔值。
值得一提的是,我在网上做了一个python课程,因为两者都使用python。此外,我对Java也有相当丰富的经验,我们在过去两年一直在我们的uni中使用Java。
请注意,我做的而不是需要创建一个全新的图像识别系统,我需要用一个来告诉我我的相机看到了什么。
此外,虽然它是视频,我认为这将是更难处理的实际视频饲料。我想的是从30帧中选出1帧(假设一个30 run视频提要)并对其进行图像识别。
提前感谢!
发布于 2016-10-28 22:26:43
如果您阅读了本教程,特别是“使用Python”一节,您的项目应该相当简单。在这段代码中,classify_image.py产生的最高N个结果被转换为人类可读的文本这里:
top_k = predictions.argsort()[-FLAGS.num_top_predictions:][::-1]
for node_id in top_k:
human_string = node_lookup.id_to_string(node_id)
score = predictions[node_id]
print('%s (score = %.5f)' % (human_string, score))对于您的示例,您可能希望将FLAGS.num_top_predictions设置为5,并且希望将前5个human_string值累加为如下所示:
top_k_strings = []
top_k = predictions.argsort()[-FLAGS.num_top_predictions:][::-1]
for node_id in top_k:
human_string = node_lookup.id_to_string(node_id)
top_k_strings.append(human_string)
score = predictions[node_id]
print('%s (score = %.5f)' % (human_string, score))最后,您可以检查“key”是否是imagenet生成的前5个字符串之一,并将一个布尔值作为
return "keys" in top_k_strings此外,如果您对人类可读类别的完整列表感兴趣,您可以找到它们这里
关于视频,您可能是正确的,您将不得不分样本视频序列,以跟上帧速率。一些实验和定时测试会让你对所需的次抽样率有一种感觉。
祝好运!
https://stackoverflow.com/questions/40311268
复制相似问题