123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #include "NDCodebookLevelImagePooling.h"
- //STL
- #include <iostream>
- //core
- #include <core/vector/VectorT.h>
- using namespace std;
- using namespace NICE;
- using namespace OBJREC;
- //**********************************************
- //
- // PROTECTED METHODS
- //
- //**********************************************
- //**********************************************
- //
- // PUBLIC METHODS
- //
- //**********************************************
- NDCodebookLevelImagePooling::NDCodebookLevelImagePooling ( const Config *_conf,
- const MultiDataset *_md, const std::string & _section )
- : NoveltyDetectorCodebookLevel ( _conf, _md, _section )
- {
- this->section = _section;
- // d_noveltyThreshold = conf->gD ( section , "noveltyThreshold", 0.0064 );
- d_noveltyThreshold = conf->gD ( section , "stupidNoveltyThreshold", 0.0064 );
- }
- NDCodebookLevelImagePooling::~NDCodebookLevelImagePooling()
- {
- }
- bool NDCodebookLevelImagePooling::evaluateNoveltyOfImage ( const std::string & _filename )
- {
- ROADWORKSNOVDET;
- }
- bool NDCodebookLevelImagePooling::evaluateNoveltyOfImage ( const NICE::FloatImage & _noveltyImage )
- {
- double meanNovelty ( 0.0 );
- for ( uint y = 0 ; y < ( uint ) _noveltyImage.height() ; y++ )
- {
- for ( uint x = 0 ; x < ( uint ) _noveltyImage.width(); x++ )
- {
- meanNovelty += _noveltyImage(x,y);
- }
- }
- int imageSize ( _noveltyImage.height() * _noveltyImage.width() );
- meanNovelty /= imageSize;
- std::cerr << " NOVELTY SCORE FOR CURRENT IMAGE: " << meanNovelty << " -- threshold: " << d_noveltyThreshold << std::endl;
-
- if ( meanNovelty < d_noveltyThreshold )
- {
- // --- NOT NOVEL ---
- return false;
- }
- else
- {
- // --- NOVEL ---
- return true;
- }
- }
|