// img.cc - Classe Image // nono - Programme du robot Efrei Robotique I1-I2 2004 // Copyright (C) 2004 Olivier Gaillard #include "segmNN.h" #include "oconfig.h" #include "group.h" #include "video4linux/video4linux.h" #include using namespace std; int main(int argc, char **argv) { Img img; OConfig config("rc/vision.conf"); if (argv[1]) ; //img.ReadRaw(argv[1]); else { Video4Linux v4l ("/dev/video", ImageLoader::yuv, 40000); v4l.calibrate (); img.load (v4l); } img.WriteRGB ("toto.yuv"); // img.EdgeDetect(); // img.RGBtoHSI(); // img.RGBtoYUV(); SegmNN segmNN(&img, &config); segmNN.BuildNN(config.nn_NbCouleurs, LOAD_FROM_FILE); // segmNN.TrainNN(); // segmNN.ShowNodes(); segmNN.Segm(); // config.node = segmNN.node; // config.CreateNNFile("rc/poids", config.colorMode, segmNN.nbOutput); // img.WriteSegm("NN.jpg", segmNN.tabSegm); // segmNN.CreateThresholds("threshold"); // config.LoadThFile(); // SegmTh segmTh(&img, &config); // segmTh.Segm(); // img.WriteSegm("Th.jpg", segmTh.tabSegm); // segmNN.TestNN(); // Group group(&img, &segmNN); // group.JumpPoints(config.groupColor); /* Space space(img.width, img.height); //if (group.zoneList) space.SetDist(group.zoneList[0], 10); space.DoDistTab(); space.ShowTab(); space.DoIndexTab(); // cout << space.GetDist(54) << endl; // cout << space.GetDist(155) << endl; */ //Vec vOrig(10, 5); //Vec vDir(1,2); // space.GetPos(&vOrig, &vDir, -0.785); // img.WriteSegm("group.jpg",group.tabOut); }