OpenCV के बिल्ट-इन फंक्शन का उपयोग करके छवि घुमाना एक सरल कार्य है। छवि घुमाने के लिए, हमें 'highgui.hpp' और 'imgproc.hpp' हेडर फाइलों का उपयोग करना होगा और हम इस प्रोग्राम में अधिक फंक्शन पेश करेंगे जो छवि रोटेशन से संबंधित हैं।
OpenCV में C++ का उपयोग करके छवि को घुमाने का निम्नलिखित प्रोग्राम।
उदाहरण
#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");//एक मैट्रिक्स में छवि लोड करना namedWindow("BeforeRotation");//मूल छवि दिखाने के लिए विंडो घोषित करना// imshow("BeforeRotation", before_rotation);//रोटेशन से पहले छवि दिखाना// namedWindow("AfterRotation");//घुमाई गई छवि दिखाने के लिए विंडो घोषित करना// int Rotation = 180://प्रारंभिक रोटेशन कोण// createTrackbar("Rotation", "AfterRotation", &Rotation, 360);//ट्रैकबार बनाना// int Height = before_rotation.rows / 2://पंक्तियों का मध्य बिंदु प्राप्त करना// int Width = before_rotation.cols / 2://ऊंचाई का मध्य बिंदु प्राप्त करना// while (true) { Mat for_Rotation = getRotationMatrix2D(Point(Width, Height), (Rotation - 180), 1);//2D रोटेशन के लिए एफाइन ट्रांसफॉर्मेशन मैट्रिक्स// Mat for_Rotated;//घुमाई गई छवि के लिए मैट्रिक्स घोषित करना warpAffine(before_rotation, for_Rotated, for_Rotation, before_rotation.size());//एफाइन ट्रांसफॉर्मेशन लागू करना// imshow("AfterRotation", for_Rotated);//घुमाई गई छवि दिखाना// int termination = waitKey(30);//सिस्टम को रोटेशन प्रभाव बनाने के लिए 30 मिलीसेकंड समय देना// if (termination == 27){ //यदि Esc बटन दबाया जाता है तो समाप्त करें// break; } } return 0; }आउटपुट
