00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00039 #include <unistd.h>
00040 #include <stdlib.h>
00041 #include <stdio.h>
00042 #include <string.h>
00043 #include <stdarg.h>
00044
00045 #include <QVApplication>
00046 #include <QVMPlayerCamera>
00047 #include <QVDefaultGUI>
00048 #include <QVImageCanvas>
00049 #include <QVYUV4MPEG2Recorder>
00050
00051 #ifndef DOXYGEN_IGNORE_THIS
00052 class PlayerWorker: public QVWorker
00053 {
00054 public:
00055 PlayerWorker(QString name): QVWorker(name)
00056 {
00057 addProperty< QVImage<uChar,3> >("Input image", inputFlag|outputFlag);
00058 addProperty< QString >("Image name", inputFlag, "flower.ppm");
00059 QVImage<uChar,3> image;
00060
00061 readQVImageFromFile(getPropertyValue< QString > ("Image name"), image);
00062 addProperty< QVImage<uChar,3> >("Flower", outputFlag, image);
00063
00064 writeQVImageToFile("flower2.ppm", image);
00065 }
00066
00067 void iterate() { }
00068 };
00069
00070 int main(int argc, char *argv[])
00071 {
00072 QVApplication app(argc, argv, "Example program for QVision library. Displays the contents of a video source.");
00073
00074 QVMPlayerCamera camera("Video");
00075 PlayerWorker player("Video player");
00076 camera.linkProperty(&player,"Input image");
00077
00078 QVYUV4MPEG2Recorder recorder("Video recorder");
00079 player.linkProperty("Input image", recorder, QVWorker::SynchronousLink);
00080
00081 QVDefaultGUI interface;
00082
00083 QVImageCanvas imageCanvas("Output image");
00084 player.linkProperty("Input image", imageCanvas);
00085
00086 QVImageCanvas imageCanvasTest("flower.ppm");
00087 player.linkProperty("Flower", imageCanvasTest);
00088
00089 return app.exec();
00090 }
00091 #endif
00092