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() 1314 1
C++ Armadillo :: Real and Imaginary part 1313 1
C++ OpenCV cv::perspectiveTransform() 4515 1
C++ Armadillo :: find_nonfinite 627 2
C++ Armadillo introduction and installation 526 1
C++ Armadillo :: Kron 1059 1
C++ Armadillo :: Accessing row and column and operations on it 912 1
C++ Armadillo :: cond 402 2
C++ Armadillo :: pseudo-inverse 2362 1
C++ OpenCV cv::flip() 1458 1
C++ OpenCV cv::transpose() 5804 1
C++ Armadillo :: any 456 2
C++ Armadillo :: Max and Min of matrices 729 1
C++ OpenCV cv::pow() 1985 1
C++ Armadillo :: fliplr and flipud 854 2
C++ Armadillo :: Sort 997 1
C++ Armadillo :: Determinant of Matrix 754 1
C++ Armadillo :: Indices of Unique elements of matrix 764 1
C++ Armadillo :: eps 408 3
C++ Armadillo :: Inverse 1095 1
C++ Armadillo :: Transpose of Matrix 942 1
C++ Armadillo :: Basic Arithmetic Operations 411 1
C++ Armadillo :: Cross Product of vectors 969 4
C++ OpenCV program to play a video 992 1
C++ Armadillo :: Diagonal of Matrix 767 1
C++ Armadillo :: Absolute value of Matrix 969 1
C++ Armadillo :: Conj 376 2
C++ Armadillo :: expmat 800 2
C++ OpenCV Input from Camera 1597 1
C++ OpenCV program to convert BGR image to grayscale image 4647 1
C++ Armadillo :: Intersect 646 2
C++ Armadillo :: Nonzeros 824 2
C++ Armadillo :: Dot Product of vectors 1414 2
C++ OpenCV:: Transforming BGR image to Grey scale image 508 2
C++ OpenCV to rotate an image 9578 1
C++ Armadillo :: Unique elements of matrix 687 1
C++ Armadillo :: Log Determinant 700 1
C++ Armadillo :: Sort_index 1255 2
C++ Armadillo :: Max Min 1299 1
C++ Armadillo :: Shift 702 1
C++ Armadillo :: Square root of Matrix 1424 1
C++ OpenCV cv::cvtColor() 1917 1

Comments