0
我在探索OpenCV(版本2.4.8)中的關鍵點匹配。要打印出來的關鍵點和/或描述,讓他們更好的理解:OpenCV 2.4.8,Python:無法打印SIFT關鍵點和描述符
test_img = cv2.imread('../../Downloads/stanford.jpg')
print len(test_img)
detector = cv2.FeatureDetector_create("SIFT")
descriptor = cv2.DescriptorExtractor_create("SIFT")
sskp = detector.detect(test_img)
sskp, ssd = descriptor.compute(test_img, sskp)
print sskp, ssd
代碼編譯但不打印任何東西。下面是輸出:
/usr/bin/python2.7 /home/.../test_sift.py
683
Process finished with exit code 139
這裏是 「stanford.jpg」 的形象: http://web.stanford.edu/group/iuc/assets/bg6.jpg
爲什麼print
不在這裏工作了?
你是什麼意思的「不打印任何東西」。因爲即使這些變量是空字符串(它們不太可能),它至少會打印一個換行符。你看到'[]沒有'嗎?您不以任何方式測試圖像是否實際加載('imread'不會引發異常) - 您確定圖像實際加載了嗎? –
對不起,你是對的,我已經更新了這篇文章。退貨是:'處理完成退出代碼139'。我也測試了圖像確實存在。 –
哦,那個退出代碼很重要,這是段錯誤。可能是OpenCV中的一個bug,它已經被修復 - 這個版本大約有2.5年的歷史。你可以嘗試升級到更新的版本嗎? –