挖坑,图像拼接作为计算机视觉大作业做了不止一次了,每次都得重新查资料,而且网上中文资料过于琐碎,索性自己整理一个。主要内容包括:
- 基本的特征点检测算法原理
- 图像拼接的基础主要是单应性原理
- 一些其他内容包括NMS非极大值抑制,RANSAC,偏移纠正等
至于什么时候填坑...实验室摸鱼...
工具准备
Python包:
- numpy
- opencv-python
- opencv-contrib-python
- matplotlib
一些常见的问题:
- OpenCV的SIFT不可用。
这一问题常见的报错是:
...modulesxfeatures2dsrcsift.cpp:1207: error: (-213:The function/feature is not implemented) This algorithm is patented and is excluded in this configuration...
虽然SIFT专利过期了,但是最新的opencv-python貌似还没有对其解封,想用的话要降低opencv的版本。首先卸载已安装的opencv
pip uninstall opencv-python
pip uninstall opencv-contrib-python
然后安装
pip install opencv-python==3.4.2.16
pip install opencv-contrib-python==3.4.2.16
对于Anaconda用户可以使用
conda install -c menpo opencv
方法源自StackOverflow问题贴
- OpenCV的部分模块不可用
常见的报错诸如:
...'module' object has no attribute 'xfeatures2d'...
原因是opencv-python 3.X以后只包含部分内容,需要神经网络或者其他的函数需要导入opencv-contrib.
pip install opencv-contrib-python