PARP Research Group | Universidad de Murcia |
src/qvblockprogramming/qvprocessingblocks/qvippblocks.hGo to the documentation of this file.00001 /* 00002 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012. PARP Research Group. 00003 * <http://perception.inf.um.es> 00004 * University of Murcia, Spain. 00005 * 00006 * This file is part of the QVision library. 00007 * 00008 * QVision is free software: you can redistribute it and/or modify 00009 * it under the terms of the GNU Lesser General Public License as 00010 * published by the Free Software Foundation, version 3 of the License. 00011 * 00012 * QVision is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with QVision. If not, see <http://www.gnu.org/licenses/>. 00019 */ 00020 00024 00025 #include <ipp.h> 00026 00027 #include <QMap> 00028 #include <QSize> 00029 #include <QPoint> 00030 #include <QVImage> 00031 #include <QVProcessingBlock> 00032 00033 #include <qvdefines.h> 00034 #include <qvipp.h> 00035 00036 #ifndef QVIPPBLOCKS_H 00037 #define QVIPPBLOCKS_H 00038 00046 const QMap<QString, QString> getQVIPPBlocksNames(); 00047 00061 QVPropertyContainer *newQVIPPBlock(QString type, QString name); 00062 00075 class QVConvert_uCharsFloatC1Block: public QVProcessingBlock 00076 { 00077 public: 00079 QVConvert_uCharsFloatC1Block(QString name = QString()); 00081 void iterate(); 00082 }; 00083 00096 class QVConvert_uCharsFloatC3Block: public QVProcessingBlock 00097 { 00098 public: 00100 QVConvert_uCharsFloatC3Block(QString name = QString()); 00102 void iterate(); 00103 }; 00104 00118 class QVConvert_sFloatuCharC1Block: public QVProcessingBlock 00119 { 00120 public: 00122 QVConvert_sFloatuCharC1Block(QString name = QString()); 00124 void iterate(); 00125 }; 00126 00140 class QVConvert_sFloatuCharC3Block: public QVProcessingBlock 00141 { 00142 public: 00144 QVConvert_sFloatuCharC3Block(QString name = QString()); 00146 void iterate(); 00147 }; 00148 00163 class QVAdd_uCharC1Block: public QVProcessingBlock 00164 { 00165 public: 00167 QVAdd_uCharC1Block(QString name = QString()); 00169 void iterate(); 00170 }; 00171 00186 class QVAdd_uCharC3Block: public QVProcessingBlock 00187 { 00188 public: 00190 QVAdd_uCharC3Block(QString name = QString()); 00192 void iterate(); 00193 }; 00194 00208 class QVAdd_sFloatC1Block: public QVProcessingBlock 00209 { 00210 public: 00212 QVAdd_sFloatC1Block(QString name = QString()); 00214 void iterate(); 00215 }; 00216 00230 class QVAdd_sFloatC3Block: public QVProcessingBlock 00231 { 00232 public: 00234 QVAdd_sFloatC3Block(QString name = QString()); 00236 void iterate(); 00237 }; 00238 00253 class QVAddC_uCharC1Block: public QVProcessingBlock 00254 { 00255 public: 00257 QVAddC_uCharC1Block(QString name = QString()); 00259 void iterate(); 00260 }; 00261 00275 class QVAddC_sFloatC1Block: public QVProcessingBlock 00276 { 00277 public: 00279 QVAddC_sFloatC1Block(QString name = QString()); 00281 void iterate(); 00282 }; 00283 00298 class QVMul_uCharC1Block: public QVProcessingBlock 00299 { 00300 public: 00302 QVMul_uCharC1Block(QString name = QString()); 00304 void iterate(); 00305 }; 00306 00321 class QVMul_uCharC3Block: public QVProcessingBlock 00322 { 00323 public: 00325 QVMul_uCharC3Block(QString name = QString()); 00327 void iterate(); 00328 }; 00329 00343 class QVMul_sFloatC3Block: public QVProcessingBlock 00344 { 00345 public: 00347 QVMul_sFloatC3Block(QString name = QString()); 00349 void iterate(); 00350 }; 00351 00365 class QVMul_sFloatC1Block: public QVProcessingBlock 00366 { 00367 public: 00369 QVMul_sFloatC1Block(QString name = QString()); 00371 void iterate(); 00372 }; 00373 00388 class QVMulC_uCharC1Block: public QVProcessingBlock 00389 { 00390 public: 00392 QVMulC_uCharC1Block(QString name = QString()); 00394 void iterate(); 00395 }; 00396 00410 class QVMulC_sFloatC1Block: public QVProcessingBlock 00411 { 00412 public: 00414 QVMulC_sFloatC1Block(QString name = QString()); 00416 void iterate(); 00417 }; 00418 00432 class QVMulScale_uCharC1Block: public QVProcessingBlock 00433 { 00434 public: 00436 QVMulScale_uCharC1Block(QString name = QString()); 00438 void iterate(); 00439 }; 00440 00454 class QVMulScale_uCharC3Block: public QVProcessingBlock 00455 { 00456 public: 00458 QVMulScale_uCharC3Block(QString name = QString()); 00460 void iterate(); 00461 }; 00462 00477 class QVSub_uCharC1Block: public QVProcessingBlock 00478 { 00479 public: 00481 QVSub_uCharC1Block(QString name = QString()); 00483 void iterate(); 00484 }; 00485 00500 class QVSub_uCharC3Block: public QVProcessingBlock 00501 { 00502 public: 00504 QVSub_uCharC3Block(QString name = QString()); 00506 void iterate(); 00507 }; 00508 00522 class QVSub_sFloatC1Block: public QVProcessingBlock 00523 { 00524 public: 00526 QVSub_sFloatC1Block(QString name = QString()); 00528 void iterate(); 00529 }; 00530 00544 class QVSub_sFloatC3Block: public QVProcessingBlock 00545 { 00546 public: 00548 QVSub_sFloatC3Block(QString name = QString()); 00550 void iterate(); 00551 }; 00552 00567 class QVSubC_uCharC1Block: public QVProcessingBlock 00568 { 00569 public: 00571 QVSubC_uCharC1Block(QString name = QString()); 00573 void iterate(); 00574 }; 00575 00589 class QVSubC_sFloatC1Block: public QVProcessingBlock 00590 { 00591 public: 00593 QVSubC_sFloatC1Block(QString name = QString()); 00595 void iterate(); 00596 }; 00597 00612 class QVDiv_uCharC1Block: public QVProcessingBlock 00613 { 00614 public: 00616 QVDiv_uCharC1Block(QString name = QString()); 00618 void iterate(); 00619 }; 00620 00635 class QVDiv_uCharC3Block: public QVProcessingBlock 00636 { 00637 public: 00639 QVDiv_uCharC3Block(QString name = QString()); 00641 void iterate(); 00642 }; 00643 00657 class QVDiv_sFloatC3Block: public QVProcessingBlock 00658 { 00659 public: 00661 QVDiv_sFloatC3Block(QString name = QString()); 00663 void iterate(); 00664 }; 00665 00679 class QVDiv_sFloatC1Block: public QVProcessingBlock 00680 { 00681 public: 00683 QVDiv_sFloatC1Block(QString name = QString()); 00685 void iterate(); 00686 }; 00687 00702 class QVDivC_uCharC1Block: public QVProcessingBlock 00703 { 00704 public: 00706 QVDivC_uCharC1Block(QString name = QString()); 00708 void iterate(); 00709 }; 00710 00724 class QVDivC_sFloatC1Block: public QVProcessingBlock 00725 { 00726 public: 00728 QVDivC_sFloatC1Block(QString name = QString()); 00730 void iterate(); 00731 }; 00732 00745 class QVAbs_sShortC1Block: public QVProcessingBlock 00746 { 00747 public: 00749 QVAbs_sShortC1Block(QString name = QString()); 00751 void iterate(); 00752 }; 00753 00766 class QVAbs_sFloatC1Block: public QVProcessingBlock 00767 { 00768 public: 00770 QVAbs_sFloatC1Block(QString name = QString()); 00772 void iterate(); 00773 }; 00774 00788 class QVAbsDiff_uCharC1Block: public QVProcessingBlock 00789 { 00790 public: 00792 QVAbsDiff_uCharC1Block(QString name = QString()); 00794 void iterate(); 00795 }; 00796 00810 class QVAbsDiff_sFloatC1Block: public QVProcessingBlock 00811 { 00812 public: 00814 QVAbsDiff_sFloatC1Block(QString name = QString()); 00816 void iterate(); 00817 }; 00818 00831 class QVSqr_sFloatC1Block: public QVProcessingBlock 00832 { 00833 public: 00835 QVSqr_sFloatC1Block(QString name = QString()); 00837 void iterate(); 00838 }; 00839 00852 class QVLn_sFloatC1Block: public QVProcessingBlock 00853 { 00854 public: 00856 QVLn_sFloatC1Block(QString name = QString()); 00858 void iterate(); 00859 }; 00860 00873 class QVLn_sFloatC3Block: public QVProcessingBlock 00874 { 00875 public: 00877 QVLn_sFloatC3Block(QString name = QString()); 00879 void iterate(); 00880 }; 00881 00895 class QVAnd_uCharC1Block: public QVProcessingBlock 00896 { 00897 public: 00899 QVAnd_uCharC1Block(QString name = QString()); 00901 void iterate(); 00902 }; 00903 00917 class QVAnd_uCharC3Block: public QVProcessingBlock 00918 { 00919 public: 00921 QVAnd_uCharC3Block(QString name = QString()); 00923 void iterate(); 00924 }; 00925 00939 class QVAnd_uShortC1Block: public QVProcessingBlock 00940 { 00941 public: 00943 QVAnd_uShortC1Block(QString name = QString()); 00945 void iterate(); 00946 }; 00947 00961 class QVAnd_uShortC3Block: public QVProcessingBlock 00962 { 00963 public: 00965 QVAnd_uShortC3Block(QString name = QString()); 00967 void iterate(); 00968 }; 00969 00983 class QVAnd_sIntC1Block: public QVProcessingBlock 00984 { 00985 public: 00987 QVAnd_sIntC1Block(QString name = QString()); 00989 void iterate(); 00990 }; 00991 01005 class QVAnd_sIntC3Block: public QVProcessingBlock 01006 { 01007 public: 01009 QVAnd_sIntC3Block(QString name = QString()); 01011 void iterate(); 01012 }; 01013 01027 class QVOr_uCharC1Block: public QVProcessingBlock 01028 { 01029 public: 01031 QVOr_uCharC1Block(QString name = QString()); 01033 void iterate(); 01034 }; 01035 01049 class QVOr_uCharC3Block: public QVProcessingBlock 01050 { 01051 public: 01053 QVOr_uCharC3Block(QString name = QString()); 01055 void iterate(); 01056 }; 01057 01071 class QVOr_uShortC1Block: public QVProcessingBlock 01072 { 01073 public: 01075 QVOr_uShortC1Block(QString name = QString()); 01077 void iterate(); 01078 }; 01079 01093 class QVOr_uShortC3Block: public QVProcessingBlock 01094 { 01095 public: 01097 QVOr_uShortC3Block(QString name = QString()); 01099 void iterate(); 01100 }; 01101 01115 class QVOr_sIntC1Block: public QVProcessingBlock 01116 { 01117 public: 01119 QVOr_sIntC1Block(QString name = QString()); 01121 void iterate(); 01122 }; 01123 01137 class QVOr_sIntC3Block: public QVProcessingBlock 01138 { 01139 public: 01141 QVOr_sIntC3Block(QString name = QString()); 01143 void iterate(); 01144 }; 01145 01159 class QVXor_uCharC1Block: public QVProcessingBlock 01160 { 01161 public: 01163 QVXor_uCharC1Block(QString name = QString()); 01165 void iterate(); 01166 }; 01167 01181 class QVXor_uCharC3Block: public QVProcessingBlock 01182 { 01183 public: 01185 QVXor_uCharC3Block(QString name = QString()); 01187 void iterate(); 01188 }; 01189 01203 class QVXor_uShortC1Block: public QVProcessingBlock 01204 { 01205 public: 01207 QVXor_uShortC1Block(QString name = QString()); 01209 void iterate(); 01210 }; 01211 01225 class QVXor_uShortC3Block: public QVProcessingBlock 01226 { 01227 public: 01229 QVXor_uShortC3Block(QString name = QString()); 01231 void iterate(); 01232 }; 01233 01247 class QVXor_sIntC1Block: public QVProcessingBlock 01248 { 01249 public: 01251 QVXor_sIntC1Block(QString name = QString()); 01253 void iterate(); 01254 }; 01255 01269 class QVXor_sIntC3Block: public QVProcessingBlock 01270 { 01271 public: 01273 QVXor_sIntC3Block(QString name = QString()); 01275 void iterate(); 01276 }; 01277 01290 class QVNot_uCharC1Block: public QVProcessingBlock 01291 { 01292 public: 01294 QVNot_uCharC1Block(QString name = QString()); 01296 void iterate(); 01297 }; 01298 01311 class QVNot_uCharC3Block: public QVProcessingBlock 01312 { 01313 public: 01315 QVNot_uCharC3Block(QString name = QString()); 01317 void iterate(); 01318 }; 01319 01333 class QVAndC_uCharC1Block: public QVProcessingBlock 01334 { 01335 public: 01337 QVAndC_uCharC1Block(QString name = QString()); 01339 void iterate(); 01340 }; 01341 01355 class QVOrC_uCharC1Block: public QVProcessingBlock 01356 { 01357 public: 01359 QVOrC_uCharC1Block(QString name = QString()); 01361 void iterate(); 01362 }; 01363 01377 class QVXorC_uCharC1Block: public QVProcessingBlock 01378 { 01379 public: 01381 QVXorC_uCharC1Block(QString name = QString()); 01383 void iterate(); 01384 }; 01385 01399 class QVLShiftC_uCharC1Block: public QVProcessingBlock 01400 { 01401 public: 01403 QVLShiftC_uCharC1Block(QString name = QString()); 01405 void iterate(); 01406 }; 01407 01421 class QVRShiftC_uCharC1Block: public QVProcessingBlock 01422 { 01423 public: 01425 QVRShiftC_uCharC1Block(QString name = QString()); 01427 void iterate(); 01428 }; 01429 01442 class QVRGBToGray_uCharC3C1Block: public QVProcessingBlock 01443 { 01444 public: 01446 QVRGBToGray_uCharC3C1Block(QString name = QString()); 01448 void iterate(); 01449 }; 01450 01463 class QVRGBToGray_sFloatC3C1Block: public QVProcessingBlock 01464 { 01465 public: 01467 QVRGBToGray_sFloatC3C1Block(QString name = QString()); 01469 void iterate(); 01470 }; 01471 01486 class QVThreshold_uCharC1Block: public QVProcessingBlock 01487 { 01488 public: 01490 QVThreshold_uCharC1Block(QString name = QString()); 01492 void iterate(); 01493 }; 01494 01509 class QVThreshold_sFloatC1Block: public QVProcessingBlock 01510 { 01511 public: 01513 QVThreshold_sFloatC1Block(QString name = QString()); 01515 void iterate(); 01516 }; 01517 01529 class QVComputeThreshold_Otsu_uCharC1Block: public QVProcessingBlock 01530 { 01531 public: 01533 QVComputeThreshold_Otsu_uCharC1Block(QString name = QString()); 01535 void iterate(); 01536 }; 01537 01552 class QVCompare_uCharC1Block: public QVProcessingBlock 01553 { 01554 public: 01556 QVCompare_uCharC1Block(QString name = QString()); 01558 void iterate(); 01559 }; 01560 01575 class QVCompare_sFloatC1Block: public QVProcessingBlock 01576 { 01577 public: 01579 QVCompare_sFloatC1Block(QString name = QString()); 01581 void iterate(); 01582 }; 01583 01598 class QVCompareC_uCharC1Block: public QVProcessingBlock 01599 { 01600 public: 01602 QVCompareC_uCharC1Block(QString name = QString()); 01604 void iterate(); 01605 }; 01606 01621 class QVCompareC_sFloatC1Block: public QVProcessingBlock 01622 { 01623 public: 01625 QVCompareC_sFloatC1Block(QString name = QString()); 01627 void iterate(); 01628 }; 01629 01644 class QVFilterBox_uCharC1Block: public QVProcessingBlock 01645 { 01646 public: 01648 QVFilterBox_uCharC1Block(QString name = QString()); 01650 void iterate(); 01651 }; 01652 01667 class QVFilterBox_uCharC3Block: public QVProcessingBlock 01668 { 01669 public: 01671 QVFilterBox_uCharC3Block(QString name = QString()); 01673 void iterate(); 01674 }; 01675 01690 class QVFilterBox_sFloatC1Block: public QVProcessingBlock 01691 { 01692 public: 01694 QVFilterBox_sFloatC1Block(QString name = QString()); 01696 void iterate(); 01697 }; 01698 01713 class QVFilterMin_uCharC1Block: public QVProcessingBlock 01714 { 01715 public: 01717 QVFilterMin_uCharC1Block(QString name = QString()); 01719 void iterate(); 01720 }; 01721 01736 class QVFilterMin_uCharC3Block: public QVProcessingBlock 01737 { 01738 public: 01740 QVFilterMin_uCharC3Block(QString name = QString()); 01742 void iterate(); 01743 }; 01744 01759 class QVFilterMin_sFloatC1Block: public QVProcessingBlock 01760 { 01761 public: 01763 QVFilterMin_sFloatC1Block(QString name = QString()); 01765 void iterate(); 01766 }; 01767 01782 class QVFilterMax_uCharC1Block: public QVProcessingBlock 01783 { 01784 public: 01786 QVFilterMax_uCharC1Block(QString name = QString()); 01788 void iterate(); 01789 }; 01790 01805 class QVFilterMax_uCharC3Block: public QVProcessingBlock 01806 { 01807 public: 01809 QVFilterMax_uCharC3Block(QString name = QString()); 01811 void iterate(); 01812 }; 01813 01828 class QVFilterMax_sFloatC1Block: public QVProcessingBlock 01829 { 01830 public: 01832 QVFilterMax_sFloatC1Block(QString name = QString()); 01834 void iterate(); 01835 }; 01836 01851 class QVFilterMedian_uCharC1Block: public QVProcessingBlock 01852 { 01853 public: 01855 QVFilterMedian_uCharC1Block(QString name = QString()); 01857 void iterate(); 01858 }; 01859 01874 class QVFilterMedian_uCharC3Block: public QVProcessingBlock 01875 { 01876 public: 01878 QVFilterMedian_uCharC3Block(QString name = QString()); 01880 void iterate(); 01881 }; 01882 01896 class QVFilterMedianHoriz_uCharC1Block: public QVProcessingBlock 01897 { 01898 public: 01900 QVFilterMedianHoriz_uCharC1Block(QString name = QString()); 01902 void iterate(); 01903 }; 01904 01918 class QVFilterSobelHorizMask_sFloatC1Block: public QVProcessingBlock 01919 { 01920 public: 01922 QVFilterSobelHorizMask_sFloatC1Block(QString name = QString()); 01924 void iterate(); 01925 }; 01926 01940 class QVFilterSobelVertMask_sFloatC1Block: public QVProcessingBlock 01941 { 01942 public: 01944 QVFilterSobelVertMask_sFloatC1Block(QString name = QString()); 01946 void iterate(); 01947 }; 01948 01962 class QVFilterLaplace_uCharC1Block: public QVProcessingBlock 01963 { 01964 public: 01966 QVFilterLaplace_uCharC1Block(QString name = QString()); 01968 void iterate(); 01969 }; 01970 01984 class QVFilterLaplace_sFloatC1Block: public QVProcessingBlock 01985 { 01986 public: 01988 QVFilterLaplace_sFloatC1Block(QString name = QString()); 01990 void iterate(); 01991 }; 01992 02006 class QVFilterGauss_uCharC1Block: public QVProcessingBlock 02007 { 02008 public: 02010 QVFilterGauss_uCharC1Block(QString name = QString()); 02012 void iterate(); 02013 }; 02014 02028 class QVFilterGauss_sFloatC1Block: public QVProcessingBlock 02029 { 02030 public: 02032 QVFilterGauss_sFloatC1Block(QString name = QString()); 02034 void iterate(); 02035 }; 02036 02050 class QVFilterGauss_uCharC3Block: public QVProcessingBlock 02051 { 02052 public: 02054 QVFilterGauss_uCharC3Block(QString name = QString()); 02056 void iterate(); 02057 }; 02058 02072 class QVFilterGauss_sFloatC3Block: public QVProcessingBlock 02073 { 02074 public: 02076 QVFilterGauss_sFloatC3Block(QString name = QString()); 02078 void iterate(); 02079 }; 02080 02094 class QVFilterHipass_uCharC1Block: public QVProcessingBlock 02095 { 02096 public: 02098 QVFilterHipass_uCharC1Block(QString name = QString()); 02100 void iterate(); 02101 }; 02102 02116 class QVFilterHipass_uCharC3Block: public QVProcessingBlock 02117 { 02118 public: 02120 QVFilterHipass_uCharC3Block(QString name = QString()); 02122 void iterate(); 02123 }; 02124 02138 class QVFilterHipass_sFloatC1Block: public QVProcessingBlock 02139 { 02140 public: 02142 QVFilterHipass_sFloatC1Block(QString name = QString()); 02144 void iterate(); 02145 }; 02146 02160 class QVFilterHipass_sFloatC3Block: public QVProcessingBlock 02161 { 02162 public: 02164 QVFilterHipass_sFloatC3Block(QString name = QString()); 02166 void iterate(); 02167 }; 02168 02182 class QVFilterLowpass_uCharC1Block: public QVProcessingBlock 02183 { 02184 public: 02186 QVFilterLowpass_uCharC1Block(QString name = QString()); 02188 void iterate(); 02189 }; 02190 02204 class QVFilterLowpass_sFloatC1Block: public QVProcessingBlock 02205 { 02206 public: 02208 QVFilterLowpass_sFloatC1Block(QString name = QString()); 02210 void iterate(); 02211 }; 02212 02224 class QVSum_uCharC1Block: public QVProcessingBlock 02225 { 02226 public: 02228 QVSum_uCharC1Block(QString name = QString()); 02230 void iterate(); 02231 }; 02232 02244 class QVMean_uCharC1Block: public QVProcessingBlock 02245 { 02246 public: 02248 QVMean_uCharC1Block(QString name = QString()); 02250 void iterate(); 02251 }; 02252 02264 class QVMin_uCharC1Block: public QVProcessingBlock 02265 { 02266 public: 02268 QVMin_uCharC1Block(QString name = QString()); 02270 void iterate(); 02271 }; 02272 02284 class QVMin_sFloatC1Block: public QVProcessingBlock 02285 { 02286 public: 02288 QVMin_sFloatC1Block(QString name = QString()); 02290 void iterate(); 02291 }; 02292 02304 class QVMax_uCharC1Block: public QVProcessingBlock 02305 { 02306 public: 02308 QVMax_uCharC1Block(QString name = QString()); 02310 void iterate(); 02311 }; 02312 02324 class QVMax_sFloatC1Block: public QVProcessingBlock 02325 { 02326 public: 02328 QVMax_sFloatC1Block(QString name = QString()); 02330 void iterate(); 02331 }; 02332 02333 #endif |