Konvertierung eines Farbbildes in Graustufen, Ausgabe in OpenCV

Ich bin vor ein problem, wenn ich versuche, zu konvertieren, ein farbiges Bild in ein Graustufenbild. Die Fehlermeldung lautet: "bad argument (array sollte CvMat oder IplImage) in cvGetSize", aber ich kann zu verwalten, laden Sie die ursprüngliche Farbe Bild und zeigt es an, wenn ich kommentieren Sie alle Zeilen, die im Zusammenhang mit der Graustufen. Wie kann ich dieses Problem beheben Fehler ?.

#include <opencv\cv.h>
#include <opencv\highgui.h>
#include <iostream>
#include <stdio.h>


int main(int argc, char** argv)
{
    //Loading the color image 
    IplImage* frame = cvLoadImage("lena.jpg");
    //Converting the color image to grayscale
    IplImage* grayframe = cvCreateImage(cvGetSize(frame), IPL_DEPTH_8U, 1);
    cvCvtColor(frame, grayframe, CV_RGB2GRAY);

    //Creating a window for color image
    cvNamedWindow("Example1", CV_WINDOW_AUTOSIZE);
    //Creating a window for grayscale image
    cvNamedWindow("Example2", CV_WINDOW_AUTOSIZE);
    //Showing the color image
    cvShowImage("Example1", frame);
    //Showing the grayscale image
    cvShowImage("Example2", grayframe);
    //Showeing for X seconds
    cvWaitKey(2000);
    cvReleaseImage(&frame);
    cvDestroyWindow("Example1");
    cvReleaseImage(&grayframe);
    cvDestroyWindow("Example2");
    return 0;
}
Bro, verwenden Sie cv::Mat mit imread zum Erwerb der Bilder. Auch verbringen Sie ein paar Stunden hier.

InformationsquelleAutor Osman Esen | 2014-01-28

Schreibe einen Kommentar