2011-06-10 12 views
23

ओपनसीवी में, अगर मेरे पास एक मैट आईएमजी है जिसमें यूचर डेटा है, तो मैं डेटा को फ्लोट में कैसे परिवर्तित करूं? क्या कोई फ़ंक्शन उपलब्ध है? धन्यवाद।ओचसीवी में मट फ्लोट करने के लिए उचर मट कनवर्ट करें?

उत्तर

7

cvConvert फ़ंक्शन का उपयोग करें। अजगर में:

import cv 
m = cv.CreateMat(2, 2, cv.CV_8UC1) 
m1 = cv.CreateMat(2, 2, cv.CV_32FC1) 
cv.Convert(m, m1) 
42

यदि आप C++ का मतलब तो आप opencv2refman.pdf में

#include<opencv2/opencv.hpp> 
using namespace cv; 
Mat img; 
img.create(2,2,CV_8UC1); 
Mat img2; 
img.convertTo(img2, CV_32FC1); // or CV_32F works (too) 

विवरण है।

अद्यतन:

CV_32FC1 1 चैनल (सी 1, यानी ग्रे छवि) नाव मूल्यवान के लिए (32F) पिक्सल

CV_8UC1 है 1 चैनल (सी 1, यानी ग्रे छवि) अहस्ताक्षरित चार के लिए (8 यूसी) मूल्यवान वाले।

+0

क्या आप कृपया मुझे बता सकते हैं कि हमें '32F' और' 8U' – AHF

+0

@ अहमद अपडेट का उपयोग करने की आवश्यकता है। –

+0

यह वास्तव में मेरा प्रश्न है, हमें फ्लोट मूल्यवान पिक्सेल का उपयोग करने की आवश्यकता क्यों है और जहां हमें चार मूल्यवान वाले – AHF

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