OpenCV के अंतर्निहित कार्यों का उपयोग करके छवि को घुमाना एक सरल कार्य है। इमेज को घुमाने के लिए, हमें 'highgui.hpp' और 'imgproc.hpp' हेडर फाइल्स का इस्तेमाल करना होगा और हम इस प्रोग्राम में और फंक्शन पेश करेंगे जो इमेज रोटेशन से संबंधित हैं।
निम्नलिखित प्रोग्राम C++ का उपयोग करके OpenCV में एक छवि को कैसे घुमाना है।
उदाहरण
#include<iostream> #include<opencv2/highgui/highgui.hpp> #include<opencv2/imgproc/imgproc.hpp> using namespace std; using namespace cv; int main(int argc, char** argv) { Mat before_rotation = imread("bright.jpg");//loading image to a matrix namedWindow("BeforeRotation");//Declaring window to show the original image// imshow("BeforeRotation", before_rotation);//showing the image before rotation// namedWindow("AfterRotation");//declaring window to show rotated image// int Rotation = 180;//initialization rotation angle// createTrackbar("Rotation", "AfterRotation", &Rotation, 360);//creating trackbar// int Height = before_rotation.rows / 2;//getting middle point of rows// int Width = before_rotation.cols / 2;//getting middle point of height// while (true) { Mat for_Rotation = getRotationMatrix2D(Point(Width, Height), (Rotation - 180), 1);//affine transformation matrix for 2D rotation// Mat for_Rotated;//declaring a matrix for rotated image warpAffine(before_rotation, for_Rotated, for_Rotation, before_rotation.size());//applying affine transformation// imshow("AfterRotation", for_Rotated);//show rotated image// int termination = waitKey(30);//allow system 30 millisecond time to create the rottion effect// if (termination == 27){ //terminate if Esc button is pressed// break; } } return 0; }
आउटपुट