在离散图像中高精度、快速求解图像的旋转角度,下面会使用三种不同的算法逐一计算轮廓的旋转。
2.旋转的三种解法
2.1 应用迭代法进行求解
算法的基本参数:
1.给定轮廓相似程度的度量方式,这里我采用了ShapeContextDistance;
2.给定旋转的步长,也就是每次匹配时绿色轮廓旋转的变化量,这里为了实验方便步长为10°;
3.给定迭代的终止条件,这里为了快速迭代,迭代次数为10;
如何迭代:
每次旋转后计算ShapeContextDistance,达到阈值或者达到迭代上限即跳出循环。
#include<opencv2/opencv.hpp>
#include<iostream>
using namespace std;
using namespace cv;