C++Guns – RoboBlog

07.02.2010

Ein Bild mit OpenCV anzeigen

Filed under: Allgemein — Thomas @ 22:02

Nun geht es um unser erstes Programm. Es soll ein Bild geladen und angezeigt werden.
Hier der Code:

#include "highgui.h"

int main(int argc, char** argv) {
IplImage *img = cvLoadImage(argv[1]);
cvNamedWindow("Example1", CV_WINDOW_AUTOSIZE);
cvShowImage("Example1", img),
cvWaitKey(0);
cvReleaseImage(&img);
cvDestroyWindow("Example1");
}

Nun wird das Programm compiliert und von einer Konsole mit einem Argument aufgerufen. Z.B. "./meinProgramm bild1.jpg". Es sollte sich nun ein Fenster öffnen und das Bild anzeigen.

Das Programm ist ganz einfach. IplImage enthält immer Bilder die man später bearbeiten will.
cvLoadImage() läd Bilder von der Festplatte wobei das Format automatisch erkannt wird.

Mit cvNamedWindow() wird ein neues Fenster mit dem internen Namen Example1 erstellt in dem vorerst die Bilder angezeigt werden. Später übernimmt das Qt für uns.

Mit cvShowImage() wird nun das Bild im vorher erstellten Fenster angezeigt.

cvWaitKey() stopt das Programm für die angegebene Zeit bzw. wartet, dass der User eine Taste drückt. cvWaitKey() ist zwingend notwendig sonst wird das Programm sofort beendet bzw. es erscheint einfach kein Bild.

cvReleaseImage() gibt den reservierten Speicher vom Bild wieder an das Betriebssystem zurück und cvDestroyWindow() zerstört das Fenster.

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

You must be logged in to post a comment.

Powered by WordPress