在利用Python-OpenCV进行图像拼接处理时,会使用SIFT算法,该算法是保证关键点方向不变形,但是在OpenCV大于3.4.2.17版本以后,该算法被专利保护了,就不能使用了。针对这个情况,可以采用安装低版本的OpenCV来进行解决。
具体方法如下:
步骤一:卸载当前Python-OpenCV版本
pip3 uninstall opencv-python
步骤二:安装低版本的OpenCV,命令如下
pip3 install opencv-python==3.4.2.16
pip3 install opencv-contrib-python==3.4.2.16
如果你当前的python版本大于3.5在运行上述命令时会报差错,具体的报错信息如下:
No matching distribution found for opencv-python
这是由于在高版本的python中已经不支持低版本的opencv-python了,为此需要将python的版本进行降低,如果你当前的是利用Anaconda作为python环境的,可以用如下命令来创建新的python环境,具体命令如下所示:
conda create --name pythonConda python=3.5 # 创建一个名为 pythonConda,python 版本为 3.7 的虚拟环境
然后,再运行步骤二,问题得以解决。