C++ OpenCV to rotate an image














































C++ OpenCV to rotate an image



---------------------------------------------------------------------------------------------------------------
Description::
This is a C++ program to rotate the input file(image) by the use of wrafAffine funtion which is inbuilt in the opencv library. wrafAffine takes 4 parametres. FIrst is source image file , second is destination image file , third parameter is mat object that is ouput after rotating with some point taking into reference and last is taking the size.
---------------------------------------------------------------------------------------------------------------
Program::

#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
 
using namespace cv;
using namespace std;
 
Mat rotate(Mat src, double angle)   //rotate function returning mat object with parametres imagefile and angle
{
    Mat dst;      //Mat object for output image file
    Point2f pt(src.cols/2., src.rows/2.);          //point from where to rotate    
    Mat r = getRotationMatrix2D(pt, angle, 1.0);      //Mat object for storing after rotation
    warpAffine(src, dst, r, Size(src.cols, src.rows));  ///applie an affine transforation to image.
    return dst;         //returning Mat object for output image file
}
 
int main()
{
    Mat src = imread("1.png");           //reading image file in mat object
 
    Mat dst;      //Mat object for output image file
    dst = rotate(src, 30);       //rotating image with 30 degree angle
 
    imshow("src", src);          //displaying input image file
    imshow("dst", dst);         //displaying output image file
    waitKey(0);                     //to exit press escape
    return 0;
}
---------------------------------------------------------------------------------------------------------------
Commands to run program on terminal::
g++ -ggdb `pkg-config --cflags filename` -o `basename filename .cpp` filename `pkg-config --libs opencv`

$ ./cvopen filename
---------------------------------------------------------------------------------------------------------------
Output::

More Articles of Shubham Loya:

Name Views Likes
C++ OpenCV cv::trace() 1763 1
C++ Armadillo :: Real and Imaginary part 1844 1
C++ OpenCV cv::perspectiveTransform() 5804 1
C++ Armadillo :: find_nonfinite 877 2
C++ Armadillo introduction and installation 667 1
C++ Armadillo :: Kron 1495 1
C++ Armadillo :: Accessing row and column and operations on it 1697 1
C++ Armadillo :: cond 550 2
C++ Armadillo :: pseudo-inverse 3171 1
C++ OpenCV cv::flip() 2315 1
C++ OpenCV cv::transpose() 7684 1
C++ Armadillo :: any 569 2
C++ Armadillo :: Max and Min of matrices 1036 1
C++ OpenCV cv::pow() 2624 1
C++ Armadillo :: fliplr and flipud 1125 2
C++ Armadillo :: Sort 1362 1
C++ Armadillo :: Determinant of Matrix 1016 1
C++ Armadillo :: Indices of Unique elements of matrix 1069 1
C++ Armadillo :: eps 556 3
C++ Armadillo :: Inverse 1891 1
C++ Armadillo :: Transpose of Matrix 1424 1
C++ Armadillo :: Basic Arithmetic Operations 497 1
C++ Armadillo :: Cross Product of vectors 1493 4
C++ OpenCV program to play a video 1450 1
C++ Armadillo :: Diagonal of Matrix 1089 1
C++ Armadillo :: Absolute value of Matrix 1323 1
C++ Armadillo :: Conj 552 2
C++ Armadillo :: expmat 1049 2
C++ OpenCV Input from Camera 2262 1
C++ OpenCV program to convert BGR image to grayscale image 6494 1
C++ Armadillo :: Intersect 831 2
C++ Armadillo :: Nonzeros 1108 2
C++ Armadillo :: Dot Product of vectors 1839 2
C++ OpenCV:: Transforming BGR image to Grey scale image 641 2
C++ OpenCV to rotate an image 11700 1
C++ Armadillo :: Unique elements of matrix 895 1
C++ Armadillo :: Log Determinant 877 1
C++ Armadillo :: Sort_index 1665 2
C++ Armadillo :: Max Min 1824 1
C++ Armadillo :: Shift 980 1
C++ Armadillo :: Square root of Matrix 1911 1
C++ OpenCV cv::cvtColor() 2715 1

Comments