在这个循环中似乎发生了一些奇怪的事情。我试着调试它,但我无法解释到底发生了什么。你知道吗
这段代码来自另一篇堆栈溢出文章,我对它做了一些编辑。你知道吗
modelImages = ['/home/lie/Desktop/dylan.jpg','/home/lie/Desktop/melissa.jpg']
for modelImage in modelImages:
**print modelImage**
template=cv2.imread(modelImage)
templateg = cv2.cvtColor(template,cv2.COLOR_BGR2GRAY)
keys = surf.detect(templateg)
keys,desc = surfDescriptorExtractor.compute(templateg, keys)
count = 0
for h,des in enumerate(desc):
des = np.array(des,np.float32).reshape((1,64))
retval, results, neigh_resp, dists = knn.find_nearest(des,1)
res,dist = int(results[0][0]),dists[0][0]
if dist<0.1: # draw matched keypoints in red color
count=count + 1
print "space"**
重要的部分有星号。这是代码的一部分,用来识别人脸图像之间的相似性。代码的作用并不重要。奇怪的是,这个循环对大小为2的数组执行了1次。你知道吗
输出为:
/home/lie/Desktop/dylan.jpg
/home/lie/Desktop/melissa.jpg
space
请注意,modelImages中的两个字符串都打印在空格之前。顺便说一下,这是从循环调用的函数的一部分。这似乎更像是python的问题,而不是opencv的问题。似乎有一个隐藏的继续站
谢谢
目前没有回答
相关问题 更多 >
编程相关推荐