Class naming update
Documentation improvement Bug in output format for JPG set fixed
This commit is contained in:
@@ -225,7 +225,7 @@ int main( int argc, char* argv[] )
|
||||
"Annotations are in a separate directory\n",
|
||||
(( pngoutput ) ? "JPG" : "PNG") );
|
||||
|
||||
PngTrainingSetGenerator creator( infoname );
|
||||
PngDatasetGenerator creator( infoname );
|
||||
creator.create( imagename, bgcolor, bgthreshold, bgfilename, num,
|
||||
invert, maxintensitydev, maxxangle, maxyangle, maxzangle,
|
||||
showsamples, width, height );
|
||||
@@ -238,7 +238,7 @@ int main( int argc, char* argv[] )
|
||||
"Output format: %s\n",
|
||||
(( pngoutput ) ? "JPG" : "PNG") );
|
||||
|
||||
TestSamplesGenerator creator( infoname );
|
||||
JpgDatasetGrenerator creator( infoname );
|
||||
creator.create( imagename, bgcolor, bgthreshold, bgfilename, num,
|
||||
invert, maxintensitydev, maxxangle, maxyangle, maxzangle,
|
||||
showsamples, width, height );
|
||||
|
@@ -2942,13 +2942,13 @@ void cvCreateTrainingSamples( const char* filename,
|
||||
|
||||
}
|
||||
|
||||
SamplesGenerator::SamplesGenerator( IOutput* _writer )
|
||||
DatasetGenerator::DatasetGenerator( IOutput* _writer )
|
||||
:writer(_writer)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void SamplesGenerator::showSamples(bool* show, CvMat *img) const
|
||||
void DatasetGenerator::showSamples(bool* show, CvMat *img) const
|
||||
{
|
||||
if( *show )
|
||||
{
|
||||
@@ -2960,7 +2960,7 @@ void SamplesGenerator::showSamples(bool* show, CvMat *img) const
|
||||
}
|
||||
}
|
||||
|
||||
void SamplesGenerator::create(const char* imgfilename, int bgcolor, int bgthreshold,
|
||||
void DatasetGenerator::create(const char* imgfilename, int bgcolor, int bgthreshold,
|
||||
const char* bgfilename, int count,
|
||||
int invert, int maxintensitydev,
|
||||
double maxxangle, double maxyangle, double maxzangle,
|
||||
@@ -3023,18 +3023,18 @@ void SamplesGenerator::create(const char* imgfilename, int bgcolor, int bgthresh
|
||||
}
|
||||
}
|
||||
|
||||
SamplesGenerator::~SamplesGenerator()
|
||||
DatasetGenerator::~DatasetGenerator()
|
||||
{
|
||||
delete writer;
|
||||
}
|
||||
|
||||
|
||||
TestSamplesGenerator::TestSamplesGenerator(const char* filename)
|
||||
:SamplesGenerator(IOutput::createOutput(filename,IOutput::JPG_TEST_SET))
|
||||
JpgDatasetGrenerator::JpgDatasetGrenerator(const char* filename)
|
||||
:DatasetGenerator(IOutput::createOutput(filename,IOutput::JPG_TEST_SET))
|
||||
{
|
||||
}
|
||||
|
||||
CvSize TestSamplesGenerator::scaleObjectSize(const CvSize& bgImgSize,
|
||||
CvSize JpgDatasetGrenerator::scaleObjectSize(const CvSize& bgImgSize,
|
||||
const CvSize& ,
|
||||
const CvSize& sampleSize) const
|
||||
{
|
||||
@@ -3058,7 +3058,7 @@ CvSize TestSamplesGenerator::scaleObjectSize(const CvSize& bgImgSize,
|
||||
return cvSize( width, height );
|
||||
}
|
||||
|
||||
CvRect SamplesGenerator::getObjectPosition(const CvSize& bgImgSize,
|
||||
CvRect DatasetGenerator::getObjectPosition(const CvSize& bgImgSize,
|
||||
const CvSize& imgSize,
|
||||
const CvSize& sampleSize) const
|
||||
{
|
||||
@@ -3073,12 +3073,12 @@ CvRect SamplesGenerator::getObjectPosition(const CvSize& bgImgSize,
|
||||
}
|
||||
|
||||
|
||||
PngTrainingSetGenerator::PngTrainingSetGenerator(const char* filename)
|
||||
:SamplesGenerator(IOutput::createOutput(filename,IOutput::PNG_TRAINING_SET))
|
||||
PngDatasetGenerator::PngDatasetGenerator(const char* filename)
|
||||
:DatasetGenerator(IOutput::createOutput(filename,IOutput::PNG_TRAINING_SET))
|
||||
{
|
||||
}
|
||||
|
||||
CvSize PngTrainingSetGenerator::scaleObjectSize( const CvSize& bgImgSize,
|
||||
CvSize PngDatasetGenerator::scaleObjectSize( const CvSize& bgImgSize,
|
||||
const CvSize& imgSize,
|
||||
const CvSize& ) const
|
||||
{
|
||||
|
@@ -202,17 +202,17 @@ void cvCreateTreeCascadeClassifier( const char* dirname,
|
||||
int maxtreesplits, int minpos, bool bg_vecfile = false );
|
||||
|
||||
|
||||
class SamplesGenerator
|
||||
class DatasetGenerator
|
||||
{
|
||||
public:
|
||||
SamplesGenerator( IOutput* _writer );
|
||||
DatasetGenerator( IOutput* _writer );
|
||||
void create( const char* imgfilename, int bgcolor, int bgthreshold,
|
||||
const char* bgfilename, int count,
|
||||
int invert, int maxintensitydev,
|
||||
double maxxangle, double maxyangle, double maxzangle,
|
||||
bool showsamples,
|
||||
int winwidth, int winheight);
|
||||
virtual ~SamplesGenerator();
|
||||
virtual ~DatasetGenerator();
|
||||
private:
|
||||
virtual void showSamples( bool* showSamples, CvMat* img ) const;
|
||||
|
||||
@@ -226,20 +226,21 @@ private:
|
||||
IOutput* writer;
|
||||
};
|
||||
|
||||
class TestSamplesGenerator: public SamplesGenerator
|
||||
/* Provides the functionality of test set generating */
|
||||
class JpgDatasetGrenerator: public DatasetGenerator
|
||||
{
|
||||
public:
|
||||
TestSamplesGenerator(const char* filename);
|
||||
JpgDatasetGrenerator(const char* filename);
|
||||
private:
|
||||
CvSize scaleObjectSize(const CvSize& bgImgSize,
|
||||
const CvSize& ,
|
||||
const CvSize& sampleSize) const;
|
||||
};
|
||||
|
||||
class PngTrainingSetGenerator: public SamplesGenerator
|
||||
class PngDatasetGenerator: public DatasetGenerator
|
||||
{
|
||||
public:
|
||||
PngTrainingSetGenerator(const char *filename);
|
||||
PngDatasetGenerator(const char *filename);
|
||||
private:
|
||||
CvSize scaleObjectSize(const CvSize& bgImgSize,
|
||||
const CvSize& imgSize ,
|
||||
|
@@ -35,10 +35,10 @@ IOutput* IOutput::createOutput(const char *filename,
|
||||
IOutput* output = 0;
|
||||
switch (type) {
|
||||
case IOutput::PNG_TRAINING_SET:
|
||||
output = new PngTrainingSetOutput();
|
||||
output = new PngDatasetOutput();
|
||||
break;
|
||||
case IOutput::JPG_TEST_SET:
|
||||
output = new TestSamplesOutput();
|
||||
output = new JpgDatasetOutput();
|
||||
break;
|
||||
default:
|
||||
#if CV_VERBOSE
|
||||
@@ -53,7 +53,7 @@ IOutput* IOutput::createOutput(const char *filename,
|
||||
return 0;
|
||||
}
|
||||
|
||||
bool PngTrainingSetOutput::init( const char* annotationsListFileName )
|
||||
bool PngDatasetOutput::init( const char* annotationsListFileName )
|
||||
{
|
||||
IOutput::init( annotationsListFileName );
|
||||
|
||||
@@ -112,7 +112,7 @@ bool PngTrainingSetOutput::init( const char* annotationsListFileName )
|
||||
return true;
|
||||
}
|
||||
|
||||
bool PngTrainingSetOutput::write( const CvMat& img,
|
||||
bool PngDatasetOutput::write( const CvMat& img,
|
||||
const CvRect& boundingBox )
|
||||
{
|
||||
CvRect bbox = scaleBoundingBox(cvGetSize(&img), boundingBox);
|
||||
@@ -153,7 +153,7 @@ bool PngTrainingSetOutput::write( const CvMat& img,
|
||||
return true;
|
||||
}
|
||||
|
||||
void PngTrainingSetOutput::writeImage(const CvMat &img) const
|
||||
void PngDatasetOutput::writeImage(const CvMat &img) const
|
||||
{
|
||||
CvSize origsize = cvGetSize(&img);
|
||||
|
||||
@@ -173,7 +173,7 @@ void PngTrainingSetOutput::writeImage(const CvMat &img) const
|
||||
return;
|
||||
}
|
||||
|
||||
CvRect PngTrainingSetOutput::scaleBoundingBox(const CvSize& imgSize, const CvRect& bbox)
|
||||
CvRect PngDatasetOutput::scaleBoundingBox(const CvSize& imgSize, const CvRect& bbox)
|
||||
{
|
||||
double scale = MAX( (float) destImgWidth / imgSize.width,
|
||||
(float) destImgHeight / imgSize.height );
|
||||
@@ -231,7 +231,7 @@ bool IOutput::init(const char *filename)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TestSamplesOutput::write( const CvMat& img,
|
||||
bool JpgDatasetOutput::write( const CvMat& img,
|
||||
const CvRect& boundingBox )
|
||||
{
|
||||
sprintf( imgFileName, "%04d_%04d_%04d_%04d_%04d.jpg",
|
||||
@@ -242,7 +242,7 @@ bool TestSamplesOutput::write( const CvMat& img,
|
||||
boundingBox.height );
|
||||
|
||||
fprintf( annotationsList, "%s %d %d %d %d %d\n",
|
||||
imgFullPath,
|
||||
imgFileName,
|
||||
1,
|
||||
boundingBox.x,
|
||||
boundingBox.y,
|
||||
|
@@ -3,16 +3,16 @@
|
||||
|
||||
#include "ioutput.h"
|
||||
|
||||
class PngTrainingSetOutput: public IOutput
|
||||
class PngDatasetOutput: public IOutput
|
||||
{
|
||||
friend IOutput* IOutput::createOutput(const char *filename, OutputType type);
|
||||
public:
|
||||
virtual bool write( const CvMat& img,
|
||||
const CvRect& boundingBox);
|
||||
|
||||
virtual ~PngTrainingSetOutput(){}
|
||||
virtual ~PngDatasetOutput(){}
|
||||
private:
|
||||
PngTrainingSetOutput()
|
||||
PngDatasetOutput()
|
||||
: extension("png")
|
||||
, destImgWidth(640)
|
||||
, destImgHeight(480)
|
||||
@@ -36,14 +36,14 @@ private:
|
||||
int destImgHeight ;
|
||||
};
|
||||
|
||||
class TestSamplesOutput: public IOutput
|
||||
class JpgDatasetOutput: public IOutput
|
||||
{
|
||||
friend IOutput* IOutput::createOutput(const char *filename, OutputType type);
|
||||
public:
|
||||
virtual bool write( const CvMat& img,
|
||||
const CvRect& boundingBox );
|
||||
virtual ~TestSamplesOutput(){}
|
||||
virtual ~JpgDatasetOutput(){}
|
||||
private:
|
||||
TestSamplesOutput(){}
|
||||
JpgDatasetOutput(){}
|
||||
};
|
||||
#endif // CVSAMPLESOUTPUT_H
|
||||
|
Reference in New Issue
Block a user