2013-02-17 14 views
7

मैं एक वीडियो प्रोसेसिंग प्रोजेक्ट पर काम कर रहा हूं जिसके लिए फ्रेम की कुछ फ्लिपिंग की आवश्यकता है। मैंने सीवीफ्लिप का उपयोग करने की कोशिश की लेकिन वाई अक्ष (एक्स अक्ष काम कर रहा है ...) के साथ फ्लिप नहीं लग रहा है और सेगमेंटेशन गलती में परिणाम। क्या कोई अन्य विकल्प है ??दर्पण प्रभाव प्राप्त करने के लिए एक छवि फ़्लिपिंग

cv::Mat dst=src;  //src= source image from cam 
cv::flip(dst, dst, 1);  //segmentation fault shown 

imshow("flipped",dst); 
+0

प्रासंगिक कोड पोस्ट करें ताकि लोगों को मदद कर सकते हैं इसे ठीक। – Mat

+0

यह क्यूटी से कैसे संबंधित है? –

+0

@Stephen Chu सभी – berak

उत्तर

4

उपयोग cv::flip और 1flipcode के रूप में गुजरती हैं।

नमूना कोड के साथ अपना संपादन देखकर, आप जगह में फ़्लिप नहीं कर सकते हैं।

cv::Mat dst; 
cv::flip(src, dst, 1); 
imshow("flipped",dst); 
+0

में क्यूटी और ओपनसीवी के साथ काम कर रहा हूं, मैंने सर की कोशिश की लेकिन सेगमेंटेशन गलती में परिणाम .... – ranger

+1

@ranger आप जगह में नहीं जा सकते हैं। संपादन देखें। – juanchopanza

+0

मैंने पृथक गंतव्य के साथ-साथ सेगमेंटेशन गलती दिखाने के साथ भी कोशिश की! – ranger

10
cv::Mat src=imload("bla.png"); 
cv::Mat dst;    // dst must be a different Mat 
cv::flip(src, dst, 1);  // because you can't flip in-place (leads to segfault) 
2

कुंजी बिल्कुल src तरह dst बनाने के लिए है: आप एक अलग गंतव्य cv::Mat जरूरत

cv::Mat dst = cv::Mat(src.rows, src.cols, CV_8UC3); 
cv::flip(src, dst, 1); 

imshow("flipped", dst); 
+1

'dst = cv :: Mat (src.rows, src.cols, CV_8UC3) सेट करना आवश्यक नहीं है; 'फ्लिप फ़ंक्शन स्वचालित रूप से संभालता है। – PaulrBear

संबंधित मुद्दे