PARP Research Group | Universidad de Murcia |
src/qvblockprogramming/qvprocessingblocks/qvgraphsblock.hGo to the documentation of this file.00001 /* 00002 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012. PARP Research Group. 00003 * <http://perception.inf.um.es> 00004 * University of Murcia, Spain. 00005 * 00006 * This file is part of the QVision library. 00007 * 00008 * QVision is free software: you can redistribute it and/or modify 00009 * it under the terms of the GNU Lesser General Public License as 00010 * published by the Free Software Foundation, version 3 of the License. 00011 * 00012 * QVision is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with QVision. If not, see <http://www.gnu.org/licenses/>. 00019 */ 00020 00024 00025 #ifndef QVGRAPHSWORKER_H 00026 #define QVGRAPHSWORKER_H 00027 00028 #include <qvipp.h> 00029 #include <qvip.h> 00030 00031 #include <QVImage> 00032 #include <QVProcessingBlock> 00033 00035 00039 class QVGraphsBlock: public QVProcessingBlock 00040 { 00041 public: 00042 QVGraphsBlock(QString name = QString()): QVProcessingBlock(name) 00043 { 00044 addProperty< QVImage<uChar,1> >("Input image", inputFlag|outputFlag); 00045 addProperty< QVImage<uChar,1> >("Output image", outputFlag); 00046 addProperty<int>("Max pixel", outputFlag); 00047 addProperty<int>("Min pixel", outputFlag); 00048 // addProperty<QList<double> >("MinMaxList", outputFlag); 00049 // addProperty<QList<double> >("FirstRow", outputFlag); 00050 } 00051 00052 void iterate() 00053 { 00054 QVImage<uChar> image = getPropertyValue< QVImage<uChar,1> >("Input image"); 00055 uchar min, max; 00056 Max(image, max); 00057 Min(image, min); 00058 setPropertyValue<int>("Max pixel", max); 00059 setPropertyValue<int>("Min pixel", min); 00060 /* QList<double> minmaxlist; 00061 minmaxlist << min << max; 00062 setPropertyValue<QList<double> >("MinMaxList", minmaxlist); 00063 00064 QList<double> firstrow; 00065 for (uint i = 0; i < image.getCols(); i++) firstrow << image(i, 0); 00066 setPropertyValue<QList<double> >("FirstRow", firstrow); 00067 */ 00068 QVImage<uChar> dest(image); 00069 AddC(image, 10, dest); 00070 setPropertyValue< QVImage<uChar,1> >("Output image", dest); 00071 } 00072 }; 00074 00075 #endif |