निम्नलिखित कोड त्रुटि संदेश पोस्ट करेंगे:opencv - अभिकथन cvCvtColor में विफल रहा है (dst.data == dst0.data)
// object is a color image with type cv::Mat
IplImage* temp_object = &(IplImage)object;
IplImage* ipl_object = cvCreateImage(cvGetSize(temp_object), 8, 3);
assert(temp_object->nChannels == 3 && temp_object->depth == IPL_DEPTH_8U);
assert(ipl_object->nChannels == 3 && ipl_object->depth == IPL_DEPTH_8U);
cvCvtColor(ipl_object, temp_object, CV_BGR2GRAY);
त्रुटि
OpenCV Error: Assertion failed (dst.data == dst0.data) in cvCvtColor, file /opt/local /var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_opencv/opencv/work/OpenCV-2.3.1/modules/imgproc/src/color.cpp, line 3175 terminate called throwing an exception`
अपडेट किया गया संशोधन के बाद कोड (अब यह काम करना चाहिए)। सहायता के लिए धन्यवाद!
IplImage temp_object (object);
IplImage* ipl_object = cvCreateImage(cvGetSize(&temp_object), 8, 1);
cvCvtColor(&temp_object, ipl_object, CV_BGR2GRAY);
स्पष्टीकरण के लिए धन्यवाद। 'IplImage * temp_object = static_cast (& ऑब्जेक्ट); 'त्रुटि देगी' त्रुटि: 'cv :: Mat *' टाइप करने के लिए अमान्य static_cast 'IplImage *'' –
LKS
@ user1020390 टाइप करें: उस स्थिति में, शायद आप बनाना चाहते हैं एक नई वस्तु; आपको इसे एक नाम देने की जरूरत है ताकि यह अस्थायी न हो। मेरा संपादन देखें। –
धन्यवाद। मुझे लगता है कि इसे अभी काम करना चाहिए। – LKS