今天運行程序,不斷報錯,發現大多是環境問題,我使用的環境是anaconda中自己生成的一個python2.7版本的spyder(annaconda默認的環境是python3.6.)
cmd,activate test_py2 ,激活自己創建的test_py2環境 ,conda search opencv查看支持的opencv版本,如下圖
截圖
python2.7下報錯AttributeError: 'module' object has no attribute 'xfeatures2d'
查找資料,opencv3.0+版本,因為新的模塊通常沒有穩定的API,而且它們沒有經過良好的測試,通常放在稱作opencv_contrib-master的庫中,此存儲庫旨在開發所謂的“額外”模塊,
參考類似情形如下圖
因為opencv是3.3.1版本,沒有對應的contrib庫
要想在python2.7環境下使用opencv_contrib庫需要另外下載庫文件并利用cmake+vs生成可用的opencv源碼,
另一個方法就是在python3.6環境下編譯,但是代碼找的都是python2版本的,這就要想辦法升級代碼版本(不太熟悉,操作起來不明所以)