00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00024
00025 #include <qvippblocks.h>
00026
00027 const QMap<QString, QString> getQVIPPBlocksNames()
00028 {
00029 QMap<QString, QString> result;
00030
00031 result.insertMulti("IPP: Image Data Exchange and Initialization Functions", "QVConvert_uCharsFloatC1Block");
00032 result.insertMulti("IPP: Image Data Exchange and Initialization Functions", "QVConvert_uCharsFloatC3Block");
00033 result.insertMulti("IPP: Image Data Exchange and Initialization Functions", "QVConvert_sFloatuCharC1Block");
00034 result.insertMulti("IPP: Image Data Exchange and Initialization Functions", "QVConvert_sFloatuCharC3Block");
00035 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAdd_uCharC1Block");
00036 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAdd_uCharC3Block");
00037 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAdd_sFloatC1Block");
00038 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAdd_sFloatC3Block");
00039 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAddC_uCharC1Block");
00040 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAddC_sFloatC1Block");
00041 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMul_uCharC1Block");
00042 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMul_uCharC3Block");
00043 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMul_sFloatC3Block");
00044 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMul_sFloatC1Block");
00045 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMulC_uCharC1Block");
00046 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMulC_sFloatC1Block");
00047 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMulScale_uCharC1Block");
00048 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVMulScale_uCharC3Block");
00049 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSub_uCharC1Block");
00050 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSub_uCharC3Block");
00051 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSub_sFloatC1Block");
00052 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSub_sFloatC3Block");
00053 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSubC_uCharC1Block");
00054 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSubC_sFloatC1Block");
00055 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVDiv_uCharC1Block");
00056 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVDiv_uCharC3Block");
00057 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVDiv_sFloatC3Block");
00058 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVDiv_sFloatC1Block");
00059 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVDivC_uCharC1Block");
00060 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVDivC_sFloatC1Block");
00061 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAbs_sShortC1Block");
00062 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAbs_sFloatC1Block");
00063 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAbsDiff_uCharC1Block");
00064 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAbsDiff_sFloatC1Block");
00065 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVSqr_sFloatC1Block");
00066 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVLn_sFloatC1Block");
00067 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVLn_sFloatC3Block");
00068 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVAndC_uCharC1Block");
00069 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVNot_uCharC1Block");
00070 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVNot_uCharC3Block");
00071 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVOrC_uCharC1Block");
00072 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVXorC_uCharC1Block");
00073 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVLShiftC_uCharC1Block");
00074 result.insertMulti("IPP: Image Arithmetic and Logical Operations", "QVRShiftC_uCharC1Block");
00075 result.insertMulti("IPP: Image Color Conversion", "QVRGBToGray_uCharC3C1Block");
00076 result.insertMulti("IPP: Image Color Conversion", "QVRGBToGray_sFloatC3C1Block");
00077 result.insertMulti("IPP: Threshold and Compare Operations", "QVThreshold_uCharC1Block");
00078 result.insertMulti("IPP: Threshold and Compare Operations", "QVThreshold_sFloatC1Block");
00079 result.insertMulti("IPP: Threshold and Compare Operations", "QVComputeThreshold_Otsu_uCharC1Block");
00080 result.insertMulti("IPP: Threshold and Compare Operations", "QVCompare_uCharC1Block");
00081 result.insertMulti("IPP: Threshold and Compare Operations", "QVCompare_sFloatC1Block");
00082 result.insertMulti("IPP: Threshold and Compare Operations", "QVCompareC_uCharC1Block");
00083 result.insertMulti("IPP: Threshold and Compare Operations", "QVCompareC_sFloatC1Block");
00084 result.insertMulti("IPP: Filtering Functions", "QVFilterBox_uCharC1Block");
00085 result.insertMulti("IPP: Filtering Functions", "QVFilterBox_uCharC3Block");
00086 result.insertMulti("IPP: Filtering Functions", "QVFilterBox_sFloatC1Block");
00087 result.insertMulti("IPP: Filtering Functions", "QVFilterMin_uCharC1Block");
00088 result.insertMulti("IPP: Filtering Functions", "QVFilterMin_uCharC3Block");
00089 result.insertMulti("IPP: Filtering Functions", "QVFilterMin_sFloatC1Block");
00090 result.insertMulti("IPP: Filtering Functions", "QVFilterMax_uCharC1Block");
00091 result.insertMulti("IPP: Filtering Functions", "QVFilterMax_uCharC3Block");
00092 result.insertMulti("IPP: Filtering Functions", "QVFilterMax_sFloatC1Block");
00093 result.insertMulti("IPP: Filtering Functions", "QVFilterMedian_uCharC1Block");
00094 result.insertMulti("IPP: Filtering Functions", "QVFilterMedian_uCharC3Block");
00095 result.insertMulti("IPP: Filtering Functions", "QVFilterMedianHoriz_uCharC1Block");
00096 result.insertMulti("IPP: Filtering Functions", "QVFilterSobelHorizMask_sFloatC1Block");
00097 result.insertMulti("IPP: Filtering Functions", "QVFilterSobelVertMask_sFloatC1Block");
00098 result.insertMulti("IPP: Filtering Functions", "QVFilterLaplace_uCharC1Block");
00099 result.insertMulti("IPP: Filtering Functions", "QVFilterLaplace_sFloatC1Block");
00100 result.insertMulti("IPP: Filtering Functions", "QVFilterGauss_uCharC1Block");
00101 result.insertMulti("IPP: Filtering Functions", "QVFilterGauss_sFloatC1Block");
00102 result.insertMulti("IPP: Filtering Functions", "QVFilterGauss_uCharC3Block");
00103 result.insertMulti("IPP: Filtering Functions", "QVFilterGauss_sFloatC3Block");
00104 result.insertMulti("IPP: Filtering Functions", "QVFilterHipass_uCharC1Block");
00105 result.insertMulti("IPP: Filtering Functions", "QVFilterHipass_uCharC3Block");
00106 result.insertMulti("IPP: Filtering Functions", "QVFilterHipass_sFloatC1Block");
00107 result.insertMulti("IPP: Filtering Functions", "QVFilterHipass_sFloatC3Block");
00108 result.insertMulti("IPP: Filtering Functions", "QVFilterLowpass_uCharC1Block");
00109 result.insertMulti("IPP: Filtering Functions", "QVFilterLowpass_sFloatC1Block");
00110 result.insertMulti("IPP: Image Statistics Functions", "QVSum_uCharC1Block");
00111 result.insertMulti("IPP: Image Statistics Functions", "QVMean_uCharC1Block");
00112 result.insertMulti("IPP: Image Statistics Functions", "QVMin_uCharC1Block");
00113 result.insertMulti("IPP: Image Statistics Functions", "QVMin_sFloatC1Block");
00114 result.insertMulti("IPP: Image Statistics Functions", "QVMax_uCharC1Block");
00115 result.insertMulti("IPP: Image Statistics Functions", "QVMax_sFloatC1Block");
00116
00117 return result;
00118 }
00119
00120 QVPropertyContainer *newQVIPPBlock(QString type, QString name)
00121 {
00122 if (type == "QVConvert_uCharsFloatC1Block") return new QVConvert_uCharsFloatC1Block(name);
00123 else if (type == "QVConvert_uCharsFloatC3Block") return new QVConvert_uCharsFloatC3Block(name);
00124 else if (type == "QVConvert_sFloatuCharC1Block") return new QVConvert_sFloatuCharC1Block(name);
00125 else if (type == "QVConvert_sFloatuCharC3Block") return new QVConvert_sFloatuCharC3Block(name);
00126 else if (type == "QVAdd_uCharC1Block") return new QVAdd_uCharC1Block(name);
00127 else if (type == "QVAdd_uCharC3Block") return new QVAdd_uCharC3Block(name);
00128 else if (type == "QVAdd_sFloatC1Block") return new QVAdd_sFloatC1Block(name);
00129 else if (type == "QVAdd_sFloatC3Block") return new QVAdd_sFloatC3Block(name);
00130 else if (type == "QVAddC_uCharC1Block") return new QVAddC_uCharC1Block(name);
00131 else if (type == "QVAddC_sFloatC1Block") return new QVAddC_sFloatC1Block(name);
00132 else if (type == "QVMul_uCharC1Block") return new QVMul_uCharC1Block(name);
00133 else if (type == "QVMul_uCharC3Block") return new QVMul_uCharC3Block(name);
00134 else if (type == "QVMul_sFloatC3Block") return new QVMul_sFloatC3Block(name);
00135 else if (type == "QVMul_sFloatC1Block") return new QVMul_sFloatC1Block(name);
00136 else if (type == "QVMulC_uCharC1Block") return new QVMulC_uCharC1Block(name);
00137 else if (type == "QVMulC_sFloatC1Block") return new QVMulC_sFloatC1Block(name);
00138 else if (type == "QVMulScale_uCharC1Block") return new QVMulScale_uCharC1Block(name);
00139 else if (type == "QVMulScale_uCharC3Block") return new QVMulScale_uCharC3Block(name);
00140 else if (type == "QVSub_uCharC1Block") return new QVSub_uCharC1Block(name);
00141 else if (type == "QVSub_uCharC3Block") return new QVSub_uCharC3Block(name);
00142 else if (type == "QVSub_sFloatC1Block") return new QVSub_sFloatC1Block(name);
00143 else if (type == "QVSub_sFloatC3Block") return new QVSub_sFloatC3Block(name);
00144 else if (type == "QVSubC_uCharC1Block") return new QVSubC_uCharC1Block(name);
00145 else if (type == "QVSubC_sFloatC1Block") return new QVSubC_sFloatC1Block(name);
00146 else if (type == "QVDiv_uCharC1Block") return new QVDiv_uCharC1Block(name);
00147 else if (type == "QVDiv_uCharC3Block") return new QVDiv_uCharC3Block(name);
00148 else if (type == "QVDiv_sFloatC3Block") return new QVDiv_sFloatC3Block(name);
00149 else if (type == "QVDiv_sFloatC1Block") return new QVDiv_sFloatC1Block(name);
00150 else if (type == "QVDivC_uCharC1Block") return new QVDivC_uCharC1Block(name);
00151 else if (type == "QVDivC_sFloatC1Block") return new QVDivC_sFloatC1Block(name);
00152 else if (type == "QVAbs_sShortC1Block") return new QVAbs_sShortC1Block(name);
00153 else if (type == "QVAbs_sFloatC1Block") return new QVAbs_sFloatC1Block(name);
00154 else if (type == "QVAbsDiff_uCharC1Block") return new QVAbsDiff_uCharC1Block(name);
00155 else if (type == "QVAbsDiff_sFloatC1Block") return new QVAbsDiff_sFloatC1Block(name);
00156 else if (type == "QVSqr_sFloatC1Block") return new QVSqr_sFloatC1Block(name);
00157 else if (type == "QVLn_sFloatC1Block") return new QVLn_sFloatC1Block(name);
00158 else if (type == "QVLn_sFloatC3Block") return new QVLn_sFloatC3Block(name);
00159 else if (type == "QVAndC_uCharC1Block") return new QVAndC_uCharC1Block(name);
00160 else if (type == "QVNot_uCharC1Block") return new QVNot_uCharC1Block(name);
00161 else if (type == "QVNot_uCharC3Block") return new QVNot_uCharC3Block(name);
00162 else if (type == "QVOrC_uCharC1Block") return new QVOrC_uCharC1Block(name);
00163 else if (type == "QVXorC_uCharC1Block") return new QVXorC_uCharC1Block(name);
00164 else if (type == "QVLShiftC_uCharC1Block") return new QVLShiftC_uCharC1Block(name);
00165 else if (type == "QVRShiftC_uCharC1Block") return new QVRShiftC_uCharC1Block(name);
00166 else if (type == "QVRGBToGray_uCharC3C1Block") return new QVRGBToGray_uCharC3C1Block(name);
00167 else if (type == "QVRGBToGray_sFloatC3C1Block") return new QVRGBToGray_sFloatC3C1Block(name);
00168 else if (type == "QVThreshold_uCharC1Block") return new QVThreshold_uCharC1Block(name);
00169 else if (type == "QVThreshold_sFloatC1Block") return new QVThreshold_sFloatC1Block(name);
00170 else if (type == "QVComputeThreshold_Otsu_uCharC1Block") return new QVComputeThreshold_Otsu_uCharC1Block(name);
00171 else if (type == "QVCompare_uCharC1Block") return new QVCompare_uCharC1Block(name);
00172 else if (type == "QVCompare_sFloatC1Block") return new QVCompare_sFloatC1Block(name);
00173 else if (type == "QVCompareC_uCharC1Block") return new QVCompareC_uCharC1Block(name);
00174 else if (type == "QVCompareC_sFloatC1Block") return new QVCompareC_sFloatC1Block(name);
00175 else if (type == "QVFilterBox_uCharC1Block") return new QVFilterBox_uCharC1Block(name);
00176 else if (type == "QVFilterBox_uCharC3Block") return new QVFilterBox_uCharC3Block(name);
00177 else if (type == "QVFilterBox_sFloatC1Block") return new QVFilterBox_sFloatC1Block(name);
00178 else if (type == "QVFilterMin_uCharC1Block") return new QVFilterMin_uCharC1Block(name);
00179 else if (type == "QVFilterMin_uCharC3Block") return new QVFilterMin_uCharC3Block(name);
00180 else if (type == "QVFilterMin_sFloatC1Block") return new QVFilterMin_sFloatC1Block(name);
00181 else if (type == "QVFilterMax_uCharC1Block") return new QVFilterMax_uCharC1Block(name);
00182 else if (type == "QVFilterMax_uCharC3Block") return new QVFilterMax_uCharC3Block(name);
00183 else if (type == "QVFilterMax_sFloatC1Block") return new QVFilterMax_sFloatC1Block(name);
00184 else if (type == "QVFilterMedian_uCharC1Block") return new QVFilterMedian_uCharC1Block(name);
00185 else if (type == "QVFilterMedian_uCharC3Block") return new QVFilterMedian_uCharC3Block(name);
00186 else if (type == "QVFilterMedianHoriz_uCharC1Block") return new QVFilterMedianHoriz_uCharC1Block(name);
00187 else if (type == "QVFilterSobelHorizMask_sFloatC1Block") return new QVFilterSobelHorizMask_sFloatC1Block(name);
00188 else if (type == "QVFilterSobelVertMask_sFloatC1Block") return new QVFilterSobelVertMask_sFloatC1Block(name);
00189 else if (type == "QVFilterLaplace_uCharC1Block") return new QVFilterLaplace_uCharC1Block(name);
00190 else if (type == "QVFilterLaplace_sFloatC1Block") return new QVFilterLaplace_sFloatC1Block(name);
00191 else if (type == "QVFilterGauss_uCharC1Block") return new QVFilterGauss_uCharC1Block(name);
00192 else if (type == "QVFilterGauss_sFloatC1Block") return new QVFilterGauss_sFloatC1Block(name);
00193 else if (type == "QVFilterGauss_uCharC3Block") return new QVFilterGauss_uCharC3Block(name);
00194 else if (type == "QVFilterGauss_sFloatC3Block") return new QVFilterGauss_sFloatC3Block(name);
00195 else if (type == "QVFilterHipass_uCharC1Block") return new QVFilterHipass_uCharC1Block(name);
00196 else if (type == "QVFilterHipass_uCharC3Block") return new QVFilterHipass_uCharC3Block(name);
00197 else if (type == "QVFilterHipass_sFloatC1Block") return new QVFilterHipass_sFloatC1Block(name);
00198 else if (type == "QVFilterHipass_sFloatC3Block") return new QVFilterHipass_sFloatC3Block(name);
00199 else if (type == "QVFilterLowpass_uCharC1Block") return new QVFilterLowpass_uCharC1Block(name);
00200 else if (type == "QVFilterLowpass_sFloatC1Block") return new QVFilterLowpass_sFloatC1Block(name);
00201 else if (type == "QVSum_uCharC1Block") return new QVSum_uCharC1Block(name);
00202 else if (type == "QVMean_uCharC1Block") return new QVMean_uCharC1Block(name);
00203 else if (type == "QVMin_uCharC1Block") return new QVMin_uCharC1Block(name);
00204 else if (type == "QVMin_sFloatC1Block") return new QVMin_sFloatC1Block(name);
00205 else if (type == "QVMax_uCharC1Block") return new QVMax_uCharC1Block(name);
00206 else if (type == "QVMax_sFloatC1Block") return new QVMax_sFloatC1Block(name);
00207 else return NULL;
00208 }
00209
00210
00211 QVConvert_uCharsFloatC1Block::QVConvert_uCharsFloatC1Block(QString name): QVProcessingBlock(name)
00212 {
00213 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
00214 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00215 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00216 }
00217
00218 void QVConvert_uCharsFloatC1Block::iterate()
00219 {
00220 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
00221 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00222 timeFlag("Read input data");
00223
00224 QVImage<sFloat, 1> qvimage_pDst;
00225 timeFlag("Create output data");
00226
00227 Convert(qvimage_pSrc, qvimage_pDst, destROIOffset);
00228 timeFlag("Process input data");
00229
00230 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00231 timeFlag("Store output data");
00232 }
00233
00234
00235 QVConvert_uCharsFloatC3Block::QVConvert_uCharsFloatC3Block(QString name): QVProcessingBlock(name)
00236 {
00237 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
00238 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
00239 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00240 }
00241
00242 void QVConvert_uCharsFloatC3Block::iterate()
00243 {
00244 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
00245 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00246 timeFlag("Read input data");
00247
00248 QVImage<sFloat, 3> qvimage_pDst;
00249 timeFlag("Create output data");
00250
00251 Convert(qvimage_pSrc, qvimage_pDst, destROIOffset);
00252 timeFlag("Process input data");
00253
00254 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
00255 timeFlag("Store output data");
00256 }
00257
00258
00259 QVConvert_sFloatuCharC1Block::QVConvert_sFloatuCharC1Block(QString name): QVProcessingBlock(name)
00260 {
00261 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
00262 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00263 addProperty< IppRoundMode >("roundMode", inputFlag, ippRndNear);
00264 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00265 }
00266
00267 void QVConvert_sFloatuCharC1Block::iterate()
00268 {
00269 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
00270 const IppRoundMode roundMode = getPropertyValue< IppRoundMode > ("roundMode");
00271 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00272 timeFlag("Read input data");
00273
00274 QVImage<uChar, 1> qvimage_pDst;
00275 timeFlag("Create output data");
00276
00277 Convert(qvimage_pSrc, qvimage_pDst, roundMode, destROIOffset);
00278 timeFlag("Process input data");
00279
00280 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00281 timeFlag("Store output data");
00282 }
00283
00284
00285 QVConvert_sFloatuCharC3Block::QVConvert_sFloatuCharC3Block(QString name): QVProcessingBlock(name)
00286 {
00287 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc", inputFlag);
00288 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
00289 addProperty< IppRoundMode >("roundMode", inputFlag, ippRndNear);
00290 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00291 }
00292
00293 void QVConvert_sFloatuCharC3Block::iterate()
00294 {
00295 const QVImage<sFloat, 3> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc");
00296 const IppRoundMode roundMode = getPropertyValue< IppRoundMode > ("roundMode");
00297 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00298 timeFlag("Read input data");
00299
00300 QVImage<uChar, 3> qvimage_pDst;
00301 timeFlag("Create output data");
00302
00303 Convert(qvimage_pSrc, qvimage_pDst, roundMode, destROIOffset);
00304 timeFlag("Process input data");
00305
00306 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
00307 timeFlag("Store output data");
00308 }
00309
00310
00311 QVAdd_uCharC1Block::QVAdd_uCharC1Block(QString name): QVProcessingBlock(name)
00312 {
00313 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
00314 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
00315 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00316 addProperty< int >("scaleFactor", inputFlag);
00317 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00318 }
00319
00320 void QVAdd_uCharC1Block::iterate()
00321 {
00322 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
00323 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
00324 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00325 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00326 timeFlag("Read input data");
00327
00328 QVImage<uChar, 1> qvimage_pDst;
00329 timeFlag("Create output data");
00330
00331 Add(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00332 timeFlag("Process input data");
00333
00334 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00335 timeFlag("Store output data");
00336 }
00337
00338
00339 QVAdd_uCharC3Block::QVAdd_uCharC3Block(QString name): QVProcessingBlock(name)
00340 {
00341 addProperty< QVImage<uChar, 3> >("qvimage_pSrc1", inputFlag);
00342 addProperty< QVImage<uChar, 3> >("qvimage_pSrc2", inputFlag);
00343 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
00344 addProperty< int >("scaleFactor", inputFlag);
00345 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00346 }
00347
00348 void QVAdd_uCharC3Block::iterate()
00349 {
00350 const QVImage<uChar, 3> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc1");
00351 const QVImage<uChar, 3> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc2");
00352 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00353 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00354 timeFlag("Read input data");
00355
00356 QVImage<uChar, 3> qvimage_pDst;
00357 timeFlag("Create output data");
00358
00359 Add(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00360 timeFlag("Process input data");
00361
00362 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
00363 timeFlag("Store output data");
00364 }
00365
00366
00367 QVAdd_sFloatC1Block::QVAdd_sFloatC1Block(QString name): QVProcessingBlock(name)
00368 {
00369 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc1", inputFlag);
00370 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc2", inputFlag);
00371 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00372 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00373 }
00374
00375 void QVAdd_sFloatC1Block::iterate()
00376 {
00377 const QVImage<sFloat, 1> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc1");
00378 const QVImage<sFloat, 1> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc2");
00379 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00380 timeFlag("Read input data");
00381
00382 QVImage<sFloat, 1> qvimage_pDst;
00383 timeFlag("Create output data");
00384
00385 Add(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00386 timeFlag("Process input data");
00387
00388 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00389 timeFlag("Store output data");
00390 }
00391
00392
00393 QVAdd_sFloatC3Block::QVAdd_sFloatC3Block(QString name): QVProcessingBlock(name)
00394 {
00395 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc1", inputFlag);
00396 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc2", inputFlag);
00397 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
00398 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00399 }
00400
00401 void QVAdd_sFloatC3Block::iterate()
00402 {
00403 const QVImage<sFloat, 3> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc1");
00404 const QVImage<sFloat, 3> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc2");
00405 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00406 timeFlag("Read input data");
00407
00408 QVImage<sFloat, 3> qvimage_pDst;
00409 timeFlag("Create output data");
00410
00411 Add(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00412 timeFlag("Process input data");
00413
00414 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
00415 timeFlag("Store output data");
00416 }
00417
00418
00419 QVAddC_uCharC1Block::QVAddC_uCharC1Block(QString name): QVProcessingBlock(name)
00420 {
00421 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
00422 addProperty< uChar >("value", inputFlag);
00423 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00424 addProperty< int >("scaleFactor", inputFlag);
00425 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00426 }
00427
00428 void QVAddC_uCharC1Block::iterate()
00429 {
00430 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
00431 const uChar value = getPropertyValue< uChar > ("value");
00432 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00433 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00434 timeFlag("Read input data");
00435
00436 QVImage<uChar, 1> qvimage_pDst;
00437 timeFlag("Create output data");
00438
00439 AddC(qvimage_pSrc, value, qvimage_pDst, scaleFactor, destROIOffset);
00440 timeFlag("Process input data");
00441
00442 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00443 timeFlag("Store output data");
00444 }
00445
00446
00447 QVAddC_sFloatC1Block::QVAddC_sFloatC1Block(QString name): QVProcessingBlock(name)
00448 {
00449 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
00450 addProperty< sFloat >("value", inputFlag);
00451 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00452 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00453 }
00454
00455 void QVAddC_sFloatC1Block::iterate()
00456 {
00457 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
00458 const sFloat value = getPropertyValue< sFloat > ("value");
00459 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00460 timeFlag("Read input data");
00461
00462 QVImage<sFloat, 1> qvimage_pDst;
00463 timeFlag("Create output data");
00464
00465 AddC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
00466 timeFlag("Process input data");
00467
00468 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00469 timeFlag("Store output data");
00470 }
00471
00472
00473 QVMul_uCharC1Block::QVMul_uCharC1Block(QString name): QVProcessingBlock(name)
00474 {
00475 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
00476 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
00477 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00478 addProperty< int >("scaleFactor", inputFlag);
00479 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00480 }
00481
00482 void QVMul_uCharC1Block::iterate()
00483 {
00484 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
00485 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
00486 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00487 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00488 timeFlag("Read input data");
00489
00490 QVImage<uChar, 1> qvimage_pDst;
00491 timeFlag("Create output data");
00492
00493 Mul(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00494 timeFlag("Process input data");
00495
00496 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00497 timeFlag("Store output data");
00498 }
00499
00500
00501 QVMul_uCharC3Block::QVMul_uCharC3Block(QString name): QVProcessingBlock(name)
00502 {
00503 addProperty< QVImage<uChar, 3> >("qvimage_pSrc1", inputFlag);
00504 addProperty< QVImage<uChar, 3> >("qvimage_pSrc2", inputFlag);
00505 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
00506 addProperty< int >("scaleFactor", inputFlag);
00507 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00508 }
00509
00510 void QVMul_uCharC3Block::iterate()
00511 {
00512 const QVImage<uChar, 3> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc1");
00513 const QVImage<uChar, 3> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc2");
00514 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00515 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00516 timeFlag("Read input data");
00517
00518 QVImage<uChar, 3> qvimage_pDst;
00519 timeFlag("Create output data");
00520
00521 Mul(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00522 timeFlag("Process input data");
00523
00524 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
00525 timeFlag("Store output data");
00526 }
00527
00528
00529 QVMul_sFloatC3Block::QVMul_sFloatC3Block(QString name): QVProcessingBlock(name)
00530 {
00531 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc1", inputFlag);
00532 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc2", inputFlag);
00533 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
00534 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00535 }
00536
00537 void QVMul_sFloatC3Block::iterate()
00538 {
00539 const QVImage<sFloat, 3> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc1");
00540 const QVImage<sFloat, 3> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc2");
00541 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00542 timeFlag("Read input data");
00543
00544 QVImage<sFloat, 3> qvimage_pDst;
00545 timeFlag("Create output data");
00546
00547 Mul(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00548 timeFlag("Process input data");
00549
00550 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
00551 timeFlag("Store output data");
00552 }
00553
00554
00555 QVMul_sFloatC1Block::QVMul_sFloatC1Block(QString name): QVProcessingBlock(name)
00556 {
00557 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc1", inputFlag);
00558 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc2", inputFlag);
00559 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00560 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00561 }
00562
00563 void QVMul_sFloatC1Block::iterate()
00564 {
00565 const QVImage<sFloat, 1> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc1");
00566 const QVImage<sFloat, 1> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc2");
00567 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00568 timeFlag("Read input data");
00569
00570 QVImage<sFloat, 1> qvimage_pDst;
00571 timeFlag("Create output data");
00572
00573 Mul(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00574 timeFlag("Process input data");
00575
00576 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00577 timeFlag("Store output data");
00578 }
00579
00580
00581 QVMulC_uCharC1Block::QVMulC_uCharC1Block(QString name): QVProcessingBlock(name)
00582 {
00583 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
00584 addProperty< uChar >("value", inputFlag);
00585 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00586 addProperty< int >("scaleFactor", inputFlag);
00587 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00588 }
00589
00590 void QVMulC_uCharC1Block::iterate()
00591 {
00592 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
00593 const uChar value = getPropertyValue< uChar > ("value");
00594 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00595 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00596 timeFlag("Read input data");
00597
00598 QVImage<uChar, 1> qvimage_pDst;
00599 timeFlag("Create output data");
00600
00601 MulC(qvimage_pSrc, value, qvimage_pDst, scaleFactor, destROIOffset);
00602 timeFlag("Process input data");
00603
00604 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00605 timeFlag("Store output data");
00606 }
00607
00608
00609 QVMulC_sFloatC1Block::QVMulC_sFloatC1Block(QString name): QVProcessingBlock(name)
00610 {
00611 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
00612 addProperty< sFloat >("value", inputFlag);
00613 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00614 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00615 }
00616
00617 void QVMulC_sFloatC1Block::iterate()
00618 {
00619 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
00620 const sFloat value = getPropertyValue< sFloat > ("value");
00621 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00622 timeFlag("Read input data");
00623
00624 QVImage<sFloat, 1> qvimage_pDst;
00625 timeFlag("Create output data");
00626
00627 MulC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
00628 timeFlag("Process input data");
00629
00630 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00631 timeFlag("Store output data");
00632 }
00633
00634
00635 QVMulScale_uCharC1Block::QVMulScale_uCharC1Block(QString name): QVProcessingBlock(name)
00636 {
00637 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
00638 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
00639 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00640 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00641 }
00642
00643 void QVMulScale_uCharC1Block::iterate()
00644 {
00645 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
00646 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
00647 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00648 timeFlag("Read input data");
00649
00650 QVImage<uChar, 1> qvimage_pDst;
00651 timeFlag("Create output data");
00652
00653 MulScale(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00654 timeFlag("Process input data");
00655
00656 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00657 timeFlag("Store output data");
00658 }
00659
00660
00661 QVMulScale_uCharC3Block::QVMulScale_uCharC3Block(QString name): QVProcessingBlock(name)
00662 {
00663 addProperty< QVImage<uChar, 3> >("qvimage_pSrc1", inputFlag);
00664 addProperty< QVImage<uChar, 3> >("qvimage_pSrc2", inputFlag);
00665 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
00666 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00667 }
00668
00669 void QVMulScale_uCharC3Block::iterate()
00670 {
00671 const QVImage<uChar, 3> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc1");
00672 const QVImage<uChar, 3> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc2");
00673 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00674 timeFlag("Read input data");
00675
00676 QVImage<uChar, 3> qvimage_pDst;
00677 timeFlag("Create output data");
00678
00679 MulScale(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00680 timeFlag("Process input data");
00681
00682 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
00683 timeFlag("Store output data");
00684 }
00685
00686
00687 QVSub_uCharC1Block::QVSub_uCharC1Block(QString name): QVProcessingBlock(name)
00688 {
00689 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
00690 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
00691 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00692 addProperty< int >("scaleFactor", inputFlag);
00693 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00694 }
00695
00696 void QVSub_uCharC1Block::iterate()
00697 {
00698 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
00699 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
00700 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00701 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00702 timeFlag("Read input data");
00703
00704 QVImage<uChar, 1> qvimage_pDst;
00705 timeFlag("Create output data");
00706
00707 Sub(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00708 timeFlag("Process input data");
00709
00710 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00711 timeFlag("Store output data");
00712 }
00713
00714
00715 QVSub_uCharC3Block::QVSub_uCharC3Block(QString name): QVProcessingBlock(name)
00716 {
00717 addProperty< QVImage<uChar, 3> >("qvimage_pSrc1", inputFlag);
00718 addProperty< QVImage<uChar, 3> >("qvimage_pSrc2", inputFlag);
00719 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
00720 addProperty< int >("scaleFactor", inputFlag);
00721 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00722 }
00723
00724 void QVSub_uCharC3Block::iterate()
00725 {
00726 const QVImage<uChar, 3> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc1");
00727 const QVImage<uChar, 3> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc2");
00728 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00729 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00730 timeFlag("Read input data");
00731
00732 QVImage<uChar, 3> qvimage_pDst;
00733 timeFlag("Create output data");
00734
00735 Sub(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00736 timeFlag("Process input data");
00737
00738 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
00739 timeFlag("Store output data");
00740 }
00741
00742
00743 QVSub_sFloatC1Block::QVSub_sFloatC1Block(QString name): QVProcessingBlock(name)
00744 {
00745 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc1", inputFlag);
00746 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc2", inputFlag);
00747 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00748 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00749 }
00750
00751 void QVSub_sFloatC1Block::iterate()
00752 {
00753 const QVImage<sFloat, 1> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc1");
00754 const QVImage<sFloat, 1> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc2");
00755 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00756 timeFlag("Read input data");
00757
00758 QVImage<sFloat, 1> qvimage_pDst;
00759 timeFlag("Create output data");
00760
00761 Sub(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00762 timeFlag("Process input data");
00763
00764 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00765 timeFlag("Store output data");
00766 }
00767
00768
00769 QVSub_sFloatC3Block::QVSub_sFloatC3Block(QString name): QVProcessingBlock(name)
00770 {
00771 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc1", inputFlag);
00772 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc2", inputFlag);
00773 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
00774 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00775 }
00776
00777 void QVSub_sFloatC3Block::iterate()
00778 {
00779 const QVImage<sFloat, 3> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc1");
00780 const QVImage<sFloat, 3> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc2");
00781 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00782 timeFlag("Read input data");
00783
00784 QVImage<sFloat, 3> qvimage_pDst;
00785 timeFlag("Create output data");
00786
00787 Sub(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00788 timeFlag("Process input data");
00789
00790 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
00791 timeFlag("Store output data");
00792 }
00793
00794
00795 QVSubC_uCharC1Block::QVSubC_uCharC1Block(QString name): QVProcessingBlock(name)
00796 {
00797 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
00798 addProperty< uChar >("value", inputFlag);
00799 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00800 addProperty< int >("scaleFactor", inputFlag);
00801 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00802 }
00803
00804 void QVSubC_uCharC1Block::iterate()
00805 {
00806 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
00807 const uChar value = getPropertyValue< uChar > ("value");
00808 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00809 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00810 timeFlag("Read input data");
00811
00812 QVImage<uChar, 1> qvimage_pDst;
00813 timeFlag("Create output data");
00814
00815 SubC(qvimage_pSrc, value, qvimage_pDst, scaleFactor, destROIOffset);
00816 timeFlag("Process input data");
00817
00818 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00819 timeFlag("Store output data");
00820 }
00821
00822
00823 QVSubC_sFloatC1Block::QVSubC_sFloatC1Block(QString name): QVProcessingBlock(name)
00824 {
00825 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
00826 addProperty< sFloat >("value", inputFlag);
00827 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00828 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00829 }
00830
00831 void QVSubC_sFloatC1Block::iterate()
00832 {
00833 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
00834 const sFloat value = getPropertyValue< sFloat > ("value");
00835 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00836 timeFlag("Read input data");
00837
00838 QVImage<sFloat, 1> qvimage_pDst;
00839 timeFlag("Create output data");
00840
00841 SubC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
00842 timeFlag("Process input data");
00843
00844 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00845 timeFlag("Store output data");
00846 }
00847
00848
00849 QVDiv_uCharC1Block::QVDiv_uCharC1Block(QString name): QVProcessingBlock(name)
00850 {
00851 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
00852 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
00853 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00854 addProperty< int >("scaleFactor", inputFlag);
00855 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00856 }
00857
00858 void QVDiv_uCharC1Block::iterate()
00859 {
00860 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
00861 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
00862 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00863 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00864 timeFlag("Read input data");
00865
00866 QVImage<uChar, 1> qvimage_pDst;
00867 timeFlag("Create output data");
00868
00869 Div(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00870 timeFlag("Process input data");
00871
00872 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00873 timeFlag("Store output data");
00874 }
00875
00876
00877 QVDiv_uCharC3Block::QVDiv_uCharC3Block(QString name): QVProcessingBlock(name)
00878 {
00879 addProperty< QVImage<uChar, 3> >("qvimage_pSrc1", inputFlag);
00880 addProperty< QVImage<uChar, 3> >("qvimage_pSrc2", inputFlag);
00881 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
00882 addProperty< int >("scaleFactor", inputFlag);
00883 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00884 }
00885
00886 void QVDiv_uCharC3Block::iterate()
00887 {
00888 const QVImage<uChar, 3> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc1");
00889 const QVImage<uChar, 3> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc2");
00890 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00891 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00892 timeFlag("Read input data");
00893
00894 QVImage<uChar, 3> qvimage_pDst;
00895 timeFlag("Create output data");
00896
00897 Div(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, scaleFactor, destROIOffset);
00898 timeFlag("Process input data");
00899
00900 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
00901 timeFlag("Store output data");
00902 }
00903
00904
00905 QVDiv_sFloatC3Block::QVDiv_sFloatC3Block(QString name): QVProcessingBlock(name)
00906 {
00907 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc1", inputFlag);
00908 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc2", inputFlag);
00909 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
00910 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00911 }
00912
00913 void QVDiv_sFloatC3Block::iterate()
00914 {
00915 const QVImage<sFloat, 3> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc1");
00916 const QVImage<sFloat, 3> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc2");
00917 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00918 timeFlag("Read input data");
00919
00920 QVImage<sFloat, 3> qvimage_pDst;
00921 timeFlag("Create output data");
00922
00923 Div(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00924 timeFlag("Process input data");
00925
00926 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
00927 timeFlag("Store output data");
00928 }
00929
00930
00931 QVDiv_sFloatC1Block::QVDiv_sFloatC1Block(QString name): QVProcessingBlock(name)
00932 {
00933 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc1", inputFlag);
00934 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc2", inputFlag);
00935 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00936 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00937 }
00938
00939 void QVDiv_sFloatC1Block::iterate()
00940 {
00941 const QVImage<sFloat, 1> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc1");
00942 const QVImage<sFloat, 1> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc2");
00943 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00944 timeFlag("Read input data");
00945
00946 QVImage<sFloat, 1> qvimage_pDst;
00947 timeFlag("Create output data");
00948
00949 Div(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
00950 timeFlag("Process input data");
00951
00952 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
00953 timeFlag("Store output data");
00954 }
00955
00956
00957 QVDivC_uCharC1Block::QVDivC_uCharC1Block(QString name): QVProcessingBlock(name)
00958 {
00959 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
00960 addProperty< uChar >("value", inputFlag);
00961 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
00962 addProperty< int >("scaleFactor", inputFlag);
00963 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00964 }
00965
00966 void QVDivC_uCharC1Block::iterate()
00967 {
00968 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
00969 const uChar value = getPropertyValue< uChar > ("value");
00970 const int scaleFactor = getPropertyValue< int > ("scaleFactor");
00971 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00972 timeFlag("Read input data");
00973
00974 QVImage<uChar, 1> qvimage_pDst;
00975 timeFlag("Create output data");
00976
00977 DivC(qvimage_pSrc, value, qvimage_pDst, scaleFactor, destROIOffset);
00978 timeFlag("Process input data");
00979
00980 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
00981 timeFlag("Store output data");
00982 }
00983
00984
00985 QVDivC_sFloatC1Block::QVDivC_sFloatC1Block(QString name): QVProcessingBlock(name)
00986 {
00987 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
00988 addProperty< sFloat >("value", inputFlag);
00989 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
00990 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
00991 }
00992
00993 void QVDivC_sFloatC1Block::iterate()
00994 {
00995 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
00996 const sFloat value = getPropertyValue< sFloat > ("value");
00997 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
00998 timeFlag("Read input data");
00999
01000 QVImage<sFloat, 1> qvimage_pDst;
01001 timeFlag("Create output data");
01002
01003 DivC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
01004 timeFlag("Process input data");
01005
01006 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01007 timeFlag("Store output data");
01008 }
01009
01010
01011 QVAbs_sShortC1Block::QVAbs_sShortC1Block(QString name): QVProcessingBlock(name)
01012 {
01013 addProperty< QVImage<sShort, 1> >("qvimage_pSrc", inputFlag);
01014 addProperty< QVImage<sShort, 1> >("qvimage_pDst", outputFlag);
01015 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01016 }
01017
01018 void QVAbs_sShortC1Block::iterate()
01019 {
01020 const QVImage<sShort, 1> qvimage_pSrc = getPropertyValue< QVImage<sShort, 1> > ("qvimage_pSrc");
01021 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01022 timeFlag("Read input data");
01023
01024 QVImage<sShort, 1> qvimage_pDst;
01025 timeFlag("Create output data");
01026
01027 Abs(qvimage_pSrc, qvimage_pDst, destROIOffset);
01028 timeFlag("Process input data");
01029
01030 setPropertyValue< QVImage<sShort, 1> >("qvimage_pDst", qvimage_pDst);
01031 timeFlag("Store output data");
01032 }
01033
01034
01035 QVAbs_sFloatC1Block::QVAbs_sFloatC1Block(QString name): QVProcessingBlock(name)
01036 {
01037 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01038 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01039 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01040 }
01041
01042 void QVAbs_sFloatC1Block::iterate()
01043 {
01044 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01045 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01046 timeFlag("Read input data");
01047
01048 QVImage<sFloat, 1> qvimage_pDst;
01049 timeFlag("Create output data");
01050
01051 Abs(qvimage_pSrc, qvimage_pDst, destROIOffset);
01052 timeFlag("Process input data");
01053
01054 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01055 timeFlag("Store output data");
01056 }
01057
01058
01059 QVAbsDiff_uCharC1Block::QVAbsDiff_uCharC1Block(QString name): QVProcessingBlock(name)
01060 {
01061 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
01062 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
01063 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01064 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01065 }
01066
01067 void QVAbsDiff_uCharC1Block::iterate()
01068 {
01069 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
01070 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
01071 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01072 timeFlag("Read input data");
01073
01074 QVImage<uChar, 1> qvimage_pDst;
01075 timeFlag("Create output data");
01076
01077 AbsDiff(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
01078 timeFlag("Process input data");
01079
01080 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01081 timeFlag("Store output data");
01082 }
01083
01084
01085 QVAbsDiff_sFloatC1Block::QVAbsDiff_sFloatC1Block(QString name): QVProcessingBlock(name)
01086 {
01087 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc1", inputFlag);
01088 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc2", inputFlag);
01089 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01090 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01091 }
01092
01093 void QVAbsDiff_sFloatC1Block::iterate()
01094 {
01095 const QVImage<sFloat, 1> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc1");
01096 const QVImage<sFloat, 1> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc2");
01097 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01098 timeFlag("Read input data");
01099
01100 QVImage<sFloat, 1> qvimage_pDst;
01101 timeFlag("Create output data");
01102
01103 AbsDiff(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, destROIOffset);
01104 timeFlag("Process input data");
01105
01106 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01107 timeFlag("Store output data");
01108 }
01109
01110
01111 QVSqr_sFloatC1Block::QVSqr_sFloatC1Block(QString name): QVProcessingBlock(name)
01112 {
01113 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01114 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01115 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01116 }
01117
01118 void QVSqr_sFloatC1Block::iterate()
01119 {
01120 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01121 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01122 timeFlag("Read input data");
01123
01124 QVImage<sFloat, 1> qvimage_pDst;
01125 timeFlag("Create output data");
01126
01127 Sqr(qvimage_pSrc, qvimage_pDst, destROIOffset);
01128 timeFlag("Process input data");
01129
01130 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01131 timeFlag("Store output data");
01132 }
01133
01134
01135 QVLn_sFloatC1Block::QVLn_sFloatC1Block(QString name): QVProcessingBlock(name)
01136 {
01137 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01138 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01139 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01140 }
01141
01142 void QVLn_sFloatC1Block::iterate()
01143 {
01144 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01145 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01146 timeFlag("Read input data");
01147
01148 QVImage<sFloat, 1> qvimage_pDst;
01149 timeFlag("Create output data");
01150
01151 Ln(qvimage_pSrc, qvimage_pDst, destROIOffset);
01152 timeFlag("Process input data");
01153
01154 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01155 timeFlag("Store output data");
01156 }
01157
01158
01159 QVLn_sFloatC3Block::QVLn_sFloatC3Block(QString name): QVProcessingBlock(name)
01160 {
01161 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc", inputFlag);
01162 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
01163 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01164 }
01165
01166 void QVLn_sFloatC3Block::iterate()
01167 {
01168 const QVImage<sFloat, 3> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc");
01169 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01170 timeFlag("Read input data");
01171
01172 QVImage<sFloat, 3> qvimage_pDst;
01173 timeFlag("Create output data");
01174
01175 Ln(qvimage_pSrc, qvimage_pDst, destROIOffset);
01176 timeFlag("Process input data");
01177
01178 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
01179 timeFlag("Store output data");
01180 }
01181
01182
01183 QVAndC_uCharC1Block::QVAndC_uCharC1Block(QString name): QVProcessingBlock(name)
01184 {
01185 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01186 addProperty< uChar >("value", inputFlag);
01187 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01188 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01189 }
01190
01191 void QVAndC_uCharC1Block::iterate()
01192 {
01193 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01194 const uChar value = getPropertyValue< uChar > ("value");
01195 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01196 timeFlag("Read input data");
01197
01198 QVImage<uChar, 1> qvimage_pDst;
01199 timeFlag("Create output data");
01200
01201 AndC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
01202 timeFlag("Process input data");
01203
01204 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01205 timeFlag("Store output data");
01206 }
01207
01208
01209 QVNot_uCharC1Block::QVNot_uCharC1Block(QString name): QVProcessingBlock(name)
01210 {
01211 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01212 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01213 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01214 }
01215
01216 void QVNot_uCharC1Block::iterate()
01217 {
01218 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01219 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01220 timeFlag("Read input data");
01221
01222 QVImage<uChar, 1> qvimage_pDst;
01223 timeFlag("Create output data");
01224
01225 Not(qvimage_pSrc, qvimage_pDst, destROIOffset);
01226 timeFlag("Process input data");
01227
01228 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01229 timeFlag("Store output data");
01230 }
01231
01232
01233 QVNot_uCharC3Block::QVNot_uCharC3Block(QString name): QVProcessingBlock(name)
01234 {
01235 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
01236 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
01237 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01238 }
01239
01240 void QVNot_uCharC3Block::iterate()
01241 {
01242 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
01243 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01244 timeFlag("Read input data");
01245
01246 QVImage<uChar, 3> qvimage_pDst;
01247 timeFlag("Create output data");
01248
01249 Not(qvimage_pSrc, qvimage_pDst, destROIOffset);
01250 timeFlag("Process input data");
01251
01252 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
01253 timeFlag("Store output data");
01254 }
01255
01256
01257 QVOrC_uCharC1Block::QVOrC_uCharC1Block(QString name): QVProcessingBlock(name)
01258 {
01259 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01260 addProperty< uChar >("value", inputFlag);
01261 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01262 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01263 }
01264
01265 void QVOrC_uCharC1Block::iterate()
01266 {
01267 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01268 const uChar value = getPropertyValue< uChar > ("value");
01269 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01270 timeFlag("Read input data");
01271
01272 QVImage<uChar, 1> qvimage_pDst;
01273 timeFlag("Create output data");
01274
01275 OrC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
01276 timeFlag("Process input data");
01277
01278 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01279 timeFlag("Store output data");
01280 }
01281
01282
01283 QVXorC_uCharC1Block::QVXorC_uCharC1Block(QString name): QVProcessingBlock(name)
01284 {
01285 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01286 addProperty< uChar >("value", inputFlag);
01287 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01288 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01289 }
01290
01291 void QVXorC_uCharC1Block::iterate()
01292 {
01293 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01294 const uChar value = getPropertyValue< uChar > ("value");
01295 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01296 timeFlag("Read input data");
01297
01298 QVImage<uChar, 1> qvimage_pDst;
01299 timeFlag("Create output data");
01300
01301 XorC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
01302 timeFlag("Process input data");
01303
01304 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01305 timeFlag("Store output data");
01306 }
01307
01308
01309 QVLShiftC_uCharC1Block::QVLShiftC_uCharC1Block(QString name): QVProcessingBlock(name)
01310 {
01311 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01312 addProperty< uInt >("value", inputFlag);
01313 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01314 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01315 }
01316
01317 void QVLShiftC_uCharC1Block::iterate()
01318 {
01319 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01320 const uInt value = getPropertyValue< uInt > ("value");
01321 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01322 timeFlag("Read input data");
01323
01324 QVImage<uChar, 1> qvimage_pDst;
01325 timeFlag("Create output data");
01326
01327 LShiftC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
01328 timeFlag("Process input data");
01329
01330 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01331 timeFlag("Store output data");
01332 }
01333
01334
01335 QVRShiftC_uCharC1Block::QVRShiftC_uCharC1Block(QString name): QVProcessingBlock(name)
01336 {
01337 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01338 addProperty< uInt >("value", inputFlag);
01339 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01340 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01341 }
01342
01343 void QVRShiftC_uCharC1Block::iterate()
01344 {
01345 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01346 const uInt value = getPropertyValue< uInt > ("value");
01347 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01348 timeFlag("Read input data");
01349
01350 QVImage<uChar, 1> qvimage_pDst;
01351 timeFlag("Create output data");
01352
01353 RShiftC(qvimage_pSrc, value, qvimage_pDst, destROIOffset);
01354 timeFlag("Process input data");
01355
01356 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01357 timeFlag("Store output data");
01358 }
01359
01360
01361 QVRGBToGray_uCharC3C1Block::QVRGBToGray_uCharC3C1Block(QString name): QVProcessingBlock(name)
01362 {
01363 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
01364 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01365 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01366 }
01367
01368 void QVRGBToGray_uCharC3C1Block::iterate()
01369 {
01370 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
01371 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01372 timeFlag("Read input data");
01373
01374 QVImage<uChar, 1> qvimage_pDst;
01375 timeFlag("Create output data");
01376
01377 RGBToGray(qvimage_pSrc, qvimage_pDst, destROIOffset);
01378 timeFlag("Process input data");
01379
01380 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01381 timeFlag("Store output data");
01382 }
01383
01384
01385 QVRGBToGray_sFloatC3C1Block::QVRGBToGray_sFloatC3C1Block(QString name): QVProcessingBlock(name)
01386 {
01387 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc", inputFlag);
01388 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01389 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01390 }
01391
01392 void QVRGBToGray_sFloatC3C1Block::iterate()
01393 {
01394 const QVImage<sFloat, 3> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc");
01395 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01396 timeFlag("Read input data");
01397
01398 QVImage<sFloat, 1> qvimage_pDst;
01399 timeFlag("Create output data");
01400
01401 RGBToGray(qvimage_pSrc, qvimage_pDst, destROIOffset);
01402 timeFlag("Process input data");
01403
01404 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01405 timeFlag("Store output data");
01406 }
01407
01408
01409 QVThreshold_uCharC1Block::QVThreshold_uCharC1Block(QString name): QVProcessingBlock(name)
01410 {
01411 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01412 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01413 addProperty< uChar >("threshold", inputFlag);
01414 addProperty< IppCmpOp >("ippCmpOp", inputFlag, ippCmpEq);
01415 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01416 }
01417
01418 void QVThreshold_uCharC1Block::iterate()
01419 {
01420 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01421 const uChar threshold = getPropertyValue< uChar > ("threshold");
01422 const IppCmpOp ippCmpOp = getPropertyValue< IppCmpOp > ("ippCmpOp");
01423 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01424 timeFlag("Read input data");
01425
01426 QVImage<uChar, 1> qvimage_pDst;
01427 timeFlag("Create output data");
01428
01429 Threshold(qvimage_pSrc, qvimage_pDst, threshold, ippCmpOp, destROIOffset);
01430 timeFlag("Process input data");
01431
01432 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01433 timeFlag("Store output data");
01434 }
01435
01436
01437 QVThreshold_sFloatC1Block::QVThreshold_sFloatC1Block(QString name): QVProcessingBlock(name)
01438 {
01439 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01440 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01441 addProperty< sFloat >("threshold", inputFlag);
01442 addProperty< IppCmpOp >("ippCmpOp", inputFlag, ippCmpEq);
01443 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01444 }
01445
01446 void QVThreshold_sFloatC1Block::iterate()
01447 {
01448 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01449 const sFloat threshold = getPropertyValue< sFloat > ("threshold");
01450 const IppCmpOp ippCmpOp = getPropertyValue< IppCmpOp > ("ippCmpOp");
01451 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01452 timeFlag("Read input data");
01453
01454 QVImage<sFloat, 1> qvimage_pDst;
01455 timeFlag("Create output data");
01456
01457 Threshold(qvimage_pSrc, qvimage_pDst, threshold, ippCmpOp, destROIOffset);
01458 timeFlag("Process input data");
01459
01460 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01461 timeFlag("Store output data");
01462 }
01463
01464
01465 QVComputeThreshold_Otsu_uCharC1Block::QVComputeThreshold_Otsu_uCharC1Block(QString name): QVProcessingBlock(name)
01466 {
01467 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01468 addProperty< uChar >("pThreshold", outputFlag);
01469 }
01470
01471 void QVComputeThreshold_Otsu_uCharC1Block::iterate()
01472 {
01473 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01474 timeFlag("Read input data");
01475
01476 uChar pThreshold;
01477 timeFlag("Create output data");
01478
01479 ComputeThreshold_Otsu(qvimage_pSrc, pThreshold);
01480 timeFlag("Process input data");
01481
01482 setPropertyValue< uChar >("pThreshold", pThreshold);
01483 timeFlag("Store output data");
01484 }
01485
01486
01487 QVCompare_uCharC1Block::QVCompare_uCharC1Block(QString name): QVProcessingBlock(name)
01488 {
01489 addProperty< QVImage<uChar, 1> >("qvimage_pSrc1", inputFlag);
01490 addProperty< QVImage<uChar, 1> >("qvimage_pSrc2", inputFlag);
01491 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01492 addProperty< IppCmpOp >("ippCmpOp", inputFlag, ippCmpEq);
01493 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01494 }
01495
01496 void QVCompare_uCharC1Block::iterate()
01497 {
01498 const QVImage<uChar, 1> qvimage_pSrc1 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc1");
01499 const QVImage<uChar, 1> qvimage_pSrc2 = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc2");
01500 const IppCmpOp ippCmpOp = getPropertyValue< IppCmpOp > ("ippCmpOp");
01501 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01502 timeFlag("Read input data");
01503
01504 QVImage<uChar, 1> qvimage_pDst;
01505 timeFlag("Create output data");
01506
01507 Compare(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, ippCmpOp, destROIOffset);
01508 timeFlag("Process input data");
01509
01510 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01511 timeFlag("Store output data");
01512 }
01513
01514
01515 QVCompare_sFloatC1Block::QVCompare_sFloatC1Block(QString name): QVProcessingBlock(name)
01516 {
01517 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc1", inputFlag);
01518 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc2", inputFlag);
01519 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01520 addProperty< IppCmpOp >("ippCmpOp", inputFlag, ippCmpEq);
01521 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01522 }
01523
01524 void QVCompare_sFloatC1Block::iterate()
01525 {
01526 const QVImage<sFloat, 1> qvimage_pSrc1 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc1");
01527 const QVImage<sFloat, 1> qvimage_pSrc2 = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc2");
01528 const IppCmpOp ippCmpOp = getPropertyValue< IppCmpOp > ("ippCmpOp");
01529 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01530 timeFlag("Read input data");
01531
01532 QVImage<uChar, 1> qvimage_pDst;
01533 timeFlag("Create output data");
01534
01535 Compare(qvimage_pSrc1, qvimage_pSrc2, qvimage_pDst, ippCmpOp, destROIOffset);
01536 timeFlag("Process input data");
01537
01538 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01539 timeFlag("Store output data");
01540 }
01541
01542
01543 QVCompareC_uCharC1Block::QVCompareC_uCharC1Block(QString name): QVProcessingBlock(name)
01544 {
01545 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01546 addProperty< uChar >("value", inputFlag);
01547 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01548 addProperty< IppCmpOp >("ippCmpOp", inputFlag, ippCmpEq);
01549 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01550 }
01551
01552 void QVCompareC_uCharC1Block::iterate()
01553 {
01554 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01555 const uChar value = getPropertyValue< uChar > ("value");
01556 const IppCmpOp ippCmpOp = getPropertyValue< IppCmpOp > ("ippCmpOp");
01557 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01558 timeFlag("Read input data");
01559
01560 QVImage<uChar, 1> qvimage_pDst;
01561 timeFlag("Create output data");
01562
01563 CompareC(qvimage_pSrc, value, qvimage_pDst, ippCmpOp, destROIOffset);
01564 timeFlag("Process input data");
01565
01566 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01567 timeFlag("Store output data");
01568 }
01569
01570
01571 QVCompareC_sFloatC1Block::QVCompareC_sFloatC1Block(QString name): QVProcessingBlock(name)
01572 {
01573 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01574 addProperty< sFloat >("value", inputFlag);
01575 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01576 addProperty< IppCmpOp >("ippCmpOp", inputFlag, ippCmpEq);
01577 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01578 }
01579
01580 void QVCompareC_sFloatC1Block::iterate()
01581 {
01582 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01583 const sFloat value = getPropertyValue< sFloat > ("value");
01584 const IppCmpOp ippCmpOp = getPropertyValue< IppCmpOp > ("ippCmpOp");
01585 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01586 timeFlag("Read input data");
01587
01588 QVImage<uChar, 1> qvimage_pDst;
01589 timeFlag("Create output data");
01590
01591 CompareC(qvimage_pSrc, value, qvimage_pDst, ippCmpOp, destROIOffset);
01592 timeFlag("Process input data");
01593
01594 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01595 timeFlag("Store output data");
01596 }
01597
01598
01599 QVFilterBox_uCharC1Block::QVFilterBox_uCharC1Block(QString name): QVProcessingBlock(name)
01600 {
01601 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01602 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01603 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01604 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01605 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01606 }
01607
01608 void QVFilterBox_uCharC1Block::iterate()
01609 {
01610 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01611 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01612 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01613 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01614 timeFlag("Read input data");
01615
01616 QVImage<uChar, 1> qvimage_pDst;
01617 timeFlag("Create output data");
01618
01619 FilterBox(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01620 timeFlag("Process input data");
01621
01622 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01623 timeFlag("Store output data");
01624 }
01625
01626
01627 QVFilterBox_uCharC3Block::QVFilterBox_uCharC3Block(QString name): QVProcessingBlock(name)
01628 {
01629 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
01630 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
01631 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01632 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01633 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01634 }
01635
01636 void QVFilterBox_uCharC3Block::iterate()
01637 {
01638 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
01639 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01640 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01641 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01642 timeFlag("Read input data");
01643
01644 QVImage<uChar, 3> qvimage_pDst;
01645 timeFlag("Create output data");
01646
01647 FilterBox(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01648 timeFlag("Process input data");
01649
01650 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
01651 timeFlag("Store output data");
01652 }
01653
01654
01655 QVFilterBox_sFloatC1Block::QVFilterBox_sFloatC1Block(QString name): QVProcessingBlock(name)
01656 {
01657 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01658 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01659 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01660 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01661 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01662 }
01663
01664 void QVFilterBox_sFloatC1Block::iterate()
01665 {
01666 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01667 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01668 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01669 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01670 timeFlag("Read input data");
01671
01672 QVImage<sFloat, 1> qvimage_pDst;
01673 timeFlag("Create output data");
01674
01675 FilterBox(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01676 timeFlag("Process input data");
01677
01678 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01679 timeFlag("Store output data");
01680 }
01681
01682
01683 QVFilterMin_uCharC1Block::QVFilterMin_uCharC1Block(QString name): QVProcessingBlock(name)
01684 {
01685 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01686 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01687 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01688 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01689 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01690 }
01691
01692 void QVFilterMin_uCharC1Block::iterate()
01693 {
01694 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01695 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01696 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01697 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01698 timeFlag("Read input data");
01699
01700 QVImage<uChar, 1> qvimage_pDst;
01701 timeFlag("Create output data");
01702
01703 FilterMin(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01704 timeFlag("Process input data");
01705
01706 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01707 timeFlag("Store output data");
01708 }
01709
01710
01711 QVFilterMin_uCharC3Block::QVFilterMin_uCharC3Block(QString name): QVProcessingBlock(name)
01712 {
01713 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
01714 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
01715 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01716 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01717 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01718 }
01719
01720 void QVFilterMin_uCharC3Block::iterate()
01721 {
01722 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
01723 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01724 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01725 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01726 timeFlag("Read input data");
01727
01728 QVImage<uChar, 3> qvimage_pDst;
01729 timeFlag("Create output data");
01730
01731 FilterMin(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01732 timeFlag("Process input data");
01733
01734 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
01735 timeFlag("Store output data");
01736 }
01737
01738
01739 QVFilterMin_sFloatC1Block::QVFilterMin_sFloatC1Block(QString name): QVProcessingBlock(name)
01740 {
01741 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01742 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01743 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01744 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01745 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01746 }
01747
01748 void QVFilterMin_sFloatC1Block::iterate()
01749 {
01750 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01751 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01752 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01753 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01754 timeFlag("Read input data");
01755
01756 QVImage<sFloat, 1> qvimage_pDst;
01757 timeFlag("Create output data");
01758
01759 FilterMin(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01760 timeFlag("Process input data");
01761
01762 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01763 timeFlag("Store output data");
01764 }
01765
01766
01767 QVFilterMax_uCharC1Block::QVFilterMax_uCharC1Block(QString name): QVProcessingBlock(name)
01768 {
01769 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01770 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01771 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01772 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01773 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01774 }
01775
01776 void QVFilterMax_uCharC1Block::iterate()
01777 {
01778 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01779 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01780 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01781 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01782 timeFlag("Read input data");
01783
01784 QVImage<uChar, 1> qvimage_pDst;
01785 timeFlag("Create output data");
01786
01787 FilterMax(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01788 timeFlag("Process input data");
01789
01790 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01791 timeFlag("Store output data");
01792 }
01793
01794
01795 QVFilterMax_uCharC3Block::QVFilterMax_uCharC3Block(QString name): QVProcessingBlock(name)
01796 {
01797 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
01798 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
01799 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01800 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01801 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01802 }
01803
01804 void QVFilterMax_uCharC3Block::iterate()
01805 {
01806 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
01807 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01808 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01809 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01810 timeFlag("Read input data");
01811
01812 QVImage<uChar, 3> qvimage_pDst;
01813 timeFlag("Create output data");
01814
01815 FilterMax(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01816 timeFlag("Process input data");
01817
01818 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
01819 timeFlag("Store output data");
01820 }
01821
01822
01823 QVFilterMax_sFloatC1Block::QVFilterMax_sFloatC1Block(QString name): QVProcessingBlock(name)
01824 {
01825 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01826 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01827 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01828 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01829 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01830 }
01831
01832 void QVFilterMax_sFloatC1Block::iterate()
01833 {
01834 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01835 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01836 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01837 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01838 timeFlag("Read input data");
01839
01840 QVImage<sFloat, 1> qvimage_pDst;
01841 timeFlag("Create output data");
01842
01843 FilterMax(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01844 timeFlag("Process input data");
01845
01846 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01847 timeFlag("Store output data");
01848 }
01849
01850
01851 QVFilterMedian_uCharC1Block::QVFilterMedian_uCharC1Block(QString name): QVProcessingBlock(name)
01852 {
01853 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01854 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01855 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01856 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01857 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01858 }
01859
01860 void QVFilterMedian_uCharC1Block::iterate()
01861 {
01862 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01863 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01864 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01865 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01866 timeFlag("Read input data");
01867
01868 QVImage<uChar, 1> qvimage_pDst;
01869 timeFlag("Create output data");
01870
01871 FilterMedian(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01872 timeFlag("Process input data");
01873
01874 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01875 timeFlag("Store output data");
01876 }
01877
01878
01879 QVFilterMedian_uCharC3Block::QVFilterMedian_uCharC3Block(QString name): QVProcessingBlock(name)
01880 {
01881 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
01882 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
01883 addProperty< QSize >("maskSize", inputFlag, QSize(3,3));
01884 addProperty< QPoint >("anchor", inputFlag, QPoint(0,0));
01885 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01886 }
01887
01888 void QVFilterMedian_uCharC3Block::iterate()
01889 {
01890 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
01891 const QSize maskSize = getPropertyValue< QSize > ("maskSize");
01892 const QPoint anchor = getPropertyValue< QPoint > ("anchor");
01893 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01894 timeFlag("Read input data");
01895
01896 QVImage<uChar, 3> qvimage_pDst;
01897 timeFlag("Create output data");
01898
01899 FilterMedian(qvimage_pSrc, qvimage_pDst, maskSize, anchor, destROIOffset);
01900 timeFlag("Process input data");
01901
01902 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
01903 timeFlag("Store output data");
01904 }
01905
01906
01907 QVFilterMedianHoriz_uCharC1Block::QVFilterMedianHoriz_uCharC1Block(QString name): QVProcessingBlock(name)
01908 {
01909 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01910 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01911 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
01912 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01913 }
01914
01915 void QVFilterMedianHoriz_uCharC1Block::iterate()
01916 {
01917 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01918 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
01919 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01920 timeFlag("Read input data");
01921
01922 QVImage<uChar, 1> qvimage_pDst;
01923 timeFlag("Create output data");
01924
01925 FilterMedianHoriz(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
01926 timeFlag("Process input data");
01927
01928 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
01929 timeFlag("Store output data");
01930 }
01931
01932
01933 QVFilterSobelHorizMask_sFloatC1Block::QVFilterSobelHorizMask_sFloatC1Block(QString name): QVProcessingBlock(name)
01934 {
01935 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01936 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01937 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
01938 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01939 }
01940
01941 void QVFilterSobelHorizMask_sFloatC1Block::iterate()
01942 {
01943 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01944 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
01945 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01946 timeFlag("Read input data");
01947
01948 QVImage<sFloat, 1> qvimage_pDst;
01949 timeFlag("Create output data");
01950
01951 FilterSobelHorizMask(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
01952 timeFlag("Process input data");
01953
01954 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01955 timeFlag("Store output data");
01956 }
01957
01958
01959 QVFilterSobelVertMask_sFloatC1Block::QVFilterSobelVertMask_sFloatC1Block(QString name): QVProcessingBlock(name)
01960 {
01961 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
01962 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
01963 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
01964 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01965 }
01966
01967 void QVFilterSobelVertMask_sFloatC1Block::iterate()
01968 {
01969 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
01970 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
01971 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01972 timeFlag("Read input data");
01973
01974 QVImage<sFloat, 1> qvimage_pDst;
01975 timeFlag("Create output data");
01976
01977 FilterSobelVertMask(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
01978 timeFlag("Process input data");
01979
01980 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
01981 timeFlag("Store output data");
01982 }
01983
01984
01985 QVFilterLaplace_uCharC1Block::QVFilterLaplace_uCharC1Block(QString name): QVProcessingBlock(name)
01986 {
01987 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
01988 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
01989 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
01990 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
01991 }
01992
01993 void QVFilterLaplace_uCharC1Block::iterate()
01994 {
01995 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
01996 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
01997 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
01998 timeFlag("Read input data");
01999
02000 QVImage<uChar, 1> qvimage_pDst;
02001 timeFlag("Create output data");
02002
02003 FilterLaplace(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02004 timeFlag("Process input data");
02005
02006 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
02007 timeFlag("Store output data");
02008 }
02009
02010
02011 QVFilterLaplace_sFloatC1Block::QVFilterLaplace_sFloatC1Block(QString name): QVProcessingBlock(name)
02012 {
02013 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
02014 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
02015 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02016 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02017 }
02018
02019 void QVFilterLaplace_sFloatC1Block::iterate()
02020 {
02021 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
02022 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02023 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02024 timeFlag("Read input data");
02025
02026 QVImage<sFloat, 1> qvimage_pDst;
02027 timeFlag("Create output data");
02028
02029 FilterLaplace(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02030 timeFlag("Process input data");
02031
02032 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
02033 timeFlag("Store output data");
02034 }
02035
02036
02037 QVFilterGauss_uCharC1Block::QVFilterGauss_uCharC1Block(QString name): QVProcessingBlock(name)
02038 {
02039 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02040 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
02041 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02042 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02043 }
02044
02045 void QVFilterGauss_uCharC1Block::iterate()
02046 {
02047 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02048 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02049 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02050 timeFlag("Read input data");
02051
02052 QVImage<uChar, 1> qvimage_pDst;
02053 timeFlag("Create output data");
02054
02055 FilterGauss(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02056 timeFlag("Process input data");
02057
02058 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
02059 timeFlag("Store output data");
02060 }
02061
02062
02063 QVFilterGauss_sFloatC1Block::QVFilterGauss_sFloatC1Block(QString name): QVProcessingBlock(name)
02064 {
02065 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
02066 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
02067 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02068 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02069 }
02070
02071 void QVFilterGauss_sFloatC1Block::iterate()
02072 {
02073 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
02074 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02075 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02076 timeFlag("Read input data");
02077
02078 QVImage<sFloat, 1> qvimage_pDst;
02079 timeFlag("Create output data");
02080
02081 FilterGauss(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02082 timeFlag("Process input data");
02083
02084 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
02085 timeFlag("Store output data");
02086 }
02087
02088
02089 QVFilterGauss_uCharC3Block::QVFilterGauss_uCharC3Block(QString name): QVProcessingBlock(name)
02090 {
02091 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
02092 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
02093 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02094 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02095 }
02096
02097 void QVFilterGauss_uCharC3Block::iterate()
02098 {
02099 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
02100 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02101 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02102 timeFlag("Read input data");
02103
02104 QVImage<uChar, 3> qvimage_pDst;
02105 timeFlag("Create output data");
02106
02107 FilterGauss(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02108 timeFlag("Process input data");
02109
02110 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
02111 timeFlag("Store output data");
02112 }
02113
02114
02115 QVFilterGauss_sFloatC3Block::QVFilterGauss_sFloatC3Block(QString name): QVProcessingBlock(name)
02116 {
02117 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc", inputFlag);
02118 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
02119 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02120 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02121 }
02122
02123 void QVFilterGauss_sFloatC3Block::iterate()
02124 {
02125 const QVImage<sFloat, 3> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc");
02126 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02127 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02128 timeFlag("Read input data");
02129
02130 QVImage<sFloat, 3> qvimage_pDst;
02131 timeFlag("Create output data");
02132
02133 FilterGauss(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02134 timeFlag("Process input data");
02135
02136 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
02137 timeFlag("Store output data");
02138 }
02139
02140
02141 QVFilterHipass_uCharC1Block::QVFilterHipass_uCharC1Block(QString name): QVProcessingBlock(name)
02142 {
02143 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02144 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
02145 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02146 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02147 }
02148
02149 void QVFilterHipass_uCharC1Block::iterate()
02150 {
02151 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02152 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02153 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02154 timeFlag("Read input data");
02155
02156 QVImage<uChar, 1> qvimage_pDst;
02157 timeFlag("Create output data");
02158
02159 FilterHipass(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02160 timeFlag("Process input data");
02161
02162 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
02163 timeFlag("Store output data");
02164 }
02165
02166
02167 QVFilterHipass_uCharC3Block::QVFilterHipass_uCharC3Block(QString name): QVProcessingBlock(name)
02168 {
02169 addProperty< QVImage<uChar, 3> >("qvimage_pSrc", inputFlag);
02170 addProperty< QVImage<uChar, 3> >("qvimage_pDst", outputFlag);
02171 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02172 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02173 }
02174
02175 void QVFilterHipass_uCharC3Block::iterate()
02176 {
02177 const QVImage<uChar, 3> qvimage_pSrc = getPropertyValue< QVImage<uChar, 3> > ("qvimage_pSrc");
02178 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02179 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02180 timeFlag("Read input data");
02181
02182 QVImage<uChar, 3> qvimage_pDst;
02183 timeFlag("Create output data");
02184
02185 FilterHipass(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02186 timeFlag("Process input data");
02187
02188 setPropertyValue< QVImage<uChar, 3> >("qvimage_pDst", qvimage_pDst);
02189 timeFlag("Store output data");
02190 }
02191
02192
02193 QVFilterHipass_sFloatC1Block::QVFilterHipass_sFloatC1Block(QString name): QVProcessingBlock(name)
02194 {
02195 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
02196 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
02197 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02198 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02199 }
02200
02201 void QVFilterHipass_sFloatC1Block::iterate()
02202 {
02203 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
02204 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02205 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02206 timeFlag("Read input data");
02207
02208 QVImage<sFloat, 1> qvimage_pDst;
02209 timeFlag("Create output data");
02210
02211 FilterHipass(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02212 timeFlag("Process input data");
02213
02214 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
02215 timeFlag("Store output data");
02216 }
02217
02218
02219 QVFilterHipass_sFloatC3Block::QVFilterHipass_sFloatC3Block(QString name): QVProcessingBlock(name)
02220 {
02221 addProperty< QVImage<sFloat, 3> >("qvimage_pSrc", inputFlag);
02222 addProperty< QVImage<sFloat, 3> >("qvimage_pDst", outputFlag);
02223 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02224 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02225 }
02226
02227 void QVFilterHipass_sFloatC3Block::iterate()
02228 {
02229 const QVImage<sFloat, 3> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 3> > ("qvimage_pSrc");
02230 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02231 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02232 timeFlag("Read input data");
02233
02234 QVImage<sFloat, 3> qvimage_pDst;
02235 timeFlag("Create output data");
02236
02237 FilterHipass(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02238 timeFlag("Process input data");
02239
02240 setPropertyValue< QVImage<sFloat, 3> >("qvimage_pDst", qvimage_pDst);
02241 timeFlag("Store output data");
02242 }
02243
02244
02245 QVFilterLowpass_uCharC1Block::QVFilterLowpass_uCharC1Block(QString name): QVProcessingBlock(name)
02246 {
02247 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02248 addProperty< QVImage<uChar, 1> >("qvimage_pDst", outputFlag);
02249 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02250 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02251 }
02252
02253 void QVFilterLowpass_uCharC1Block::iterate()
02254 {
02255 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02256 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02257 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02258 timeFlag("Read input data");
02259
02260 QVImage<uChar, 1> qvimage_pDst;
02261 timeFlag("Create output data");
02262
02263 FilterLowpass(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02264 timeFlag("Process input data");
02265
02266 setPropertyValue< QVImage<uChar, 1> >("qvimage_pDst", qvimage_pDst);
02267 timeFlag("Store output data");
02268 }
02269
02270
02271 QVFilterLowpass_sFloatC1Block::QVFilterLowpass_sFloatC1Block(QString name): QVProcessingBlock(name)
02272 {
02273 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
02274 addProperty< QVImage<sFloat, 1> >("qvimage_pDst", outputFlag);
02275 addProperty< IppiMaskSize >("mask", inputFlag, ippMskSize3x3);
02276 addProperty< QPoint >("destROIOffset", inputFlag, QPoint(0,0));
02277 }
02278
02279 void QVFilterLowpass_sFloatC1Block::iterate()
02280 {
02281 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
02282 const IppiMaskSize mask = getPropertyValue< IppiMaskSize > ("mask");
02283 const QPoint destROIOffset = getPropertyValue< QPoint > ("destROIOffset");
02284 timeFlag("Read input data");
02285
02286 QVImage<sFloat, 1> qvimage_pDst;
02287 timeFlag("Create output data");
02288
02289 FilterLowpass(qvimage_pSrc, qvimage_pDst, mask, destROIOffset);
02290 timeFlag("Process input data");
02291
02292 setPropertyValue< QVImage<sFloat, 1> >("qvimage_pDst", qvimage_pDst);
02293 timeFlag("Store output data");
02294 }
02295
02296
02297 QVSum_uCharC1Block::QVSum_uCharC1Block(QString name): QVProcessingBlock(name)
02298 {
02299 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02300 addProperty< sDouble >("pSum", outputFlag);
02301 }
02302
02303 void QVSum_uCharC1Block::iterate()
02304 {
02305 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02306 timeFlag("Read input data");
02307
02308 sDouble pSum;
02309 timeFlag("Create output data");
02310
02311 Sum(qvimage_pSrc, pSum);
02312 timeFlag("Process input data");
02313
02314 setPropertyValue< sDouble >("pSum", pSum);
02315 timeFlag("Store output data");
02316 }
02317
02318
02319 QVMean_uCharC1Block::QVMean_uCharC1Block(QString name): QVProcessingBlock(name)
02320 {
02321 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02322 addProperty< sDouble >("pMean", outputFlag);
02323 }
02324
02325 void QVMean_uCharC1Block::iterate()
02326 {
02327 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02328 timeFlag("Read input data");
02329
02330 sDouble pMean;
02331 timeFlag("Create output data");
02332
02333 Mean(qvimage_pSrc, pMean);
02334 timeFlag("Process input data");
02335
02336 setPropertyValue< sDouble >("pMean", pMean);
02337 timeFlag("Store output data");
02338 }
02339
02340
02341 QVMin_uCharC1Block::QVMin_uCharC1Block(QString name): QVProcessingBlock(name)
02342 {
02343 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02344 addProperty< uChar >("pMin", outputFlag);
02345 }
02346
02347 void QVMin_uCharC1Block::iterate()
02348 {
02349 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02350 timeFlag("Read input data");
02351
02352 uChar pMin;
02353 timeFlag("Create output data");
02354
02355 Min(qvimage_pSrc, pMin);
02356 timeFlag("Process input data");
02357
02358 setPropertyValue< uChar >("pMin", pMin);
02359 timeFlag("Store output data");
02360 }
02361
02362
02363 QVMin_sFloatC1Block::QVMin_sFloatC1Block(QString name): QVProcessingBlock(name)
02364 {
02365 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
02366 addProperty< sFloat >("pMin", outputFlag);
02367 }
02368
02369 void QVMin_sFloatC1Block::iterate()
02370 {
02371 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
02372 timeFlag("Read input data");
02373
02374 sFloat pMin;
02375 timeFlag("Create output data");
02376
02377 Min(qvimage_pSrc, pMin);
02378 timeFlag("Process input data");
02379
02380 setPropertyValue< sFloat >("pMin", pMin);
02381 timeFlag("Store output data");
02382 }
02383
02384
02385 QVMax_uCharC1Block::QVMax_uCharC1Block(QString name): QVProcessingBlock(name)
02386 {
02387 addProperty< QVImage<uChar, 1> >("qvimage_pSrc", inputFlag);
02388 addProperty< uChar >("pMax", outputFlag);
02389 }
02390
02391 void QVMax_uCharC1Block::iterate()
02392 {
02393 const QVImage<uChar, 1> qvimage_pSrc = getPropertyValue< QVImage<uChar, 1> > ("qvimage_pSrc");
02394 timeFlag("Read input data");
02395
02396 uChar pMax;
02397 timeFlag("Create output data");
02398
02399 Max(qvimage_pSrc, pMax);
02400 timeFlag("Process input data");
02401
02402 setPropertyValue< uChar >("pMax", pMax);
02403 timeFlag("Store output data");
02404 }
02405
02406
02407 QVMax_sFloatC1Block::QVMax_sFloatC1Block(QString name): QVProcessingBlock(name)
02408 {
02409 addProperty< QVImage<sFloat, 1> >("qvimage_pSrc", inputFlag);
02410 addProperty< sFloat >("pMax", outputFlag);
02411 }
02412
02413 void QVMax_sFloatC1Block::iterate()
02414 {
02415 const QVImage<sFloat, 1> qvimage_pSrc = getPropertyValue< QVImage<sFloat, 1> > ("qvimage_pSrc");
02416 timeFlag("Read input data");
02417
02418 sFloat pMax;
02419 timeFlag("Create output data");
02420
02421 Max(qvimage_pSrc, pMax);
02422 timeFlag("Process input data");
02423
02424 setPropertyValue< sFloat >("pMax", pMax);
02425 timeFlag("Store output data");
02426 }
02427
02428