Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Selected Reading
How to rotate a video in OpenCV using C++?
Rotating a video is similar to rotate an image. The only difference is instead of load a still picture into an image matrix, we have loaded a video or take video stream from the camera.
Here, we are not loading the video but taking a video using the camera. If you want to use a video file, just put the address of the video file properly.
The following program demonstrates how to rotate a video in OpenCV using C++.
Example
#include#include #include using namespace std; using namespace cv; int main(int argc, char* argv[]) { VideoCapture loadvideo(0);//capture video from default camera// namedWindow("OriginalVideo");//declaring window to show original video stream// namedWindow("RotatedVideo");//declaring window to show rotated video stream// int rotating_angle = 180;//initial rotation angle// createTrackbar("Rotation", "RotatedVideo", &rotating_angle, 360);//creating trackbar for rotation// while (true) { Mat before_Rotating;//declaring matrix for image before rotation// bool temp = loadvideo.read(before_Rotating);//load frames from video source to matrix// imshow("OriginalVideo", before_Rotating);//show image frames before rotation// Mat for_Rotation = getRotationMatrix2D(Point(before_Rotating.cols / 2, before_Rotating.rows / 2), (rotating_angle - 180), 1);//affine transformation matrix for the 2D rotation// Mat after_Rotating;//declaring matrix for image after rotation// warpAffine(before_Rotating, after_Rotating, for_Rotation, before_Rotating.size());//applying affine transformation// imshow("RotatedVideo", after_Rotating);//show image after rotating// if (waitKey(30) == 27){ //wait till Esc key is pressed from keyboard// break; } } return 0; }
Output

Advertisements
