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() 1444 1
C++ Armadillo :: Real and Imaginary part 1486 1
C++ OpenCV cv::perspectiveTransform() 4956 1
C++ Armadillo :: find_nonfinite 729 2
C++ Armadillo introduction and installation 552 1
C++ Armadillo :: Kron 1174 1
C++ Armadillo :: Accessing row and column and operations on it 1210 1
C++ Armadillo :: cond 436 2
C++ Armadillo :: pseudo-inverse 2642 1
C++ OpenCV cv::flip() 1663 1
C++ OpenCV cv::transpose() 6456 1
C++ Armadillo :: any 496 2
C++ Armadillo :: Max and Min of matrices 838 1
C++ OpenCV cv::pow() 2205 1
C++ Armadillo :: fliplr and flipud 935 2
C++ Armadillo :: Sort 1130 1
C++ Armadillo :: Determinant of Matrix 822 1
C++ Armadillo :: Indices of Unique elements of matrix 848 1
C++ Armadillo :: eps 453 3
C++ Armadillo :: Inverse 1313 1
C++ Armadillo :: Transpose of Matrix 1082 1
C++ Armadillo :: Basic Arithmetic Operations 433 1
C++ Armadillo :: Cross Product of vectors 1113 4
C++ OpenCV program to play a video 1093 1
C++ Armadillo :: Diagonal of Matrix 859 1
C++ Armadillo :: Absolute value of Matrix 1051 1
C++ Armadillo :: Conj 423 2
C++ Armadillo :: expmat 878 2
C++ OpenCV Input from Camera 1794 1
C++ OpenCV program to convert BGR image to grayscale image 5169 1
C++ Armadillo :: Intersect 703 2
C++ Armadillo :: Nonzeros 934 2
C++ Armadillo :: Dot Product of vectors 1523 2
C++ OpenCV:: Transforming BGR image to Grey scale image 545 2
C++ OpenCV to rotate an image 10531 1
C++ Armadillo :: Unique elements of matrix 759 1
C++ Armadillo :: Log Determinant 756 1
C++ Armadillo :: Sort_index 1370 2
C++ Armadillo :: Max Min 1436 1
C++ Armadillo :: Shift 822 1
C++ Armadillo :: Square root of Matrix 1605 1
C++ OpenCV cv::cvtColor() 2133 1

Comments