2012-04-14 17 views
11

क्या कोई ओपनसीवी फ़ंक्शन है जिसे मैं cv::Mat में पास कर सकता हूं और उन सभी मानों का योग प्राप्त कर सकता हूं?ओपनसीवी: कुल मिलाकर मैट मान प्राप्त करना

उदाहरण के लिए: int cvSumFoo(Mat &srcMat); मैं एक पूर्णांक वापस आने के लिए

उम्मीद कर रहा हूँ मैं इस तरह इसे बनाने:

srcMat= new Mat(rows, cols, CV_8U); 

मैं अपने खुद के पाश बनाने यदि संभव हो बचने के लिए चाहते हैं।

+0

खुले सीवी में मैट्रिक्स में तत्वों की योग का संभावित डुप्लिकेट?] (Http://stackoverflow.com/questions/21874774/sum-of-elements-in-a-matrix-in-open-cv) – Kiran

उत्तर

15

फ़ंक्शन 'योग' "गणना करता है और प्रत्येक चैनल के लिए स्वतंत्र रूप से सरणी तत्वों का योग देता है।"

आप यहाँ जानकारी पा सकते हैं: http://docs.opencv.org/modules/core/doc/operations_on_arrays.html#sum

+0

धन्यवाद! वह चाल है। यह हमेशा आपके कोड को साफ रखने के लिए ओपनसीवी में कोड का उपयोग करने में मदद करता है। चीजें अब बेहतर लग रही हैं। – roboto1986

5

मुझे पता है कि प्रश्नकर्ता जावा openCV में समारोह के लिए नहीं पूछा, लेकिन मैं अभी भी कैसे जावा में यह करने के लिए दिखाना चाहते हैं, क्योंकि:

  1. जावा में "योग" समारोह पूरी तरह से अलग नाम और एक अलग कक्षा में है है
  2. जावा openCV एपीआई उदाहरण विरल हैं

जावा openCV में एक योग मुद्रण के लिए कोड है:

Core.sumElems(myMat); 

स्पष्ट है कि, यह "अदिश का कार्य नहीं है "-क्लास और इसका नाम sum() है।

+0

असल में, साझा करने के लिए धन्यवाद! – roboto1986

+0

मैं जावा ओपनसीवी का भी उपयोग कर रहा हूं - यह बहुत उपयोगी था। – mayhewsw

+0

आप इस स्केलर से एक पूर्णांक मूल्य कैसे प्राप्त करते हैं? जैसे मुझे मिल रहा है (12550,0,0,0) – nette

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