OpenCV: IplImage を回転させるには? 質問する

OpenCV: IplImage を回転させるには? 質問する

画像を1~5度程度の小さな角度で回転させる必要があるのですが、オープンCVそれを実行する簡単な方法を提供しますか?ドキュメントを読むと、私は次のように推測できますアフィン変換を取得します。関与する必要がありますが、次のようなことを直接行う例はありません。

IplImage *rotateImage( IplImage *source, double angle);

ベストアンサー1

OpenCV > 2.0を使用する場合は、次のように簡単です。

using namespace cv;

Mat rotateImage(const Mat& source, double angle)
{
    Point2f src_center(source.cols/2.0F, source.rows/2.0F);
    Mat rot_mat = getRotationMatrix2D(src_center, angle, 1.0);
    Mat dst;
    warpAffine(source, dst, rot_mat, source.size());
    return dst;
}

注記:角度はラジアンではなく度単位です。

詳細については C++ インターフェイスのドキュメントを参照し、必要に応じて調整してください。

おすすめ記事