Readded bilinear demosaicing

Added elapsed timing verbose
This commit is contained in:
ffsup2
2010-10-28 23:38:38 +02:00
parent 6b653ad5a1
commit 8c6bfa22ad
3 changed files with 17 additions and 5 deletions

View File

@@ -28,7 +28,7 @@
namespace rtengine {
namespace procparams {
const char *RAWParams::methodstring[RAWParams::numMethods]={"eahd", "hphd", "vng4", "dcb", "amaze", "ahd", "fast" };
const char *RAWParams::methodstring[RAWParams::numMethods]={"eahd", "hphd", "vng4", "dcb", "amaze", "ahd", "fast", "bilinear" };
ProcParams::ProcParams () {

View File

@@ -351,7 +351,7 @@ class EqualizerParams {
class RAWParams {
public:
enum eMethod{eahd,hphd,vng4,dcb,amaze,ahd,fast,
enum eMethod{eahd,hphd,vng4,dcb,amaze,ahd,fast,bilinear,
numMethods }; // This MUST be the last enum
static const char *methodstring[numMethods];

View File

@@ -719,6 +719,8 @@ void RawImageSource::inverse33 (double (*coeff)[3], double (*icoeff)[3]) {
int RawImageSource::load (Glib::ustring fname) {
MyTime t1,t2;
t1.set();
fileName = fname;
if (plistener) {
@@ -870,11 +872,17 @@ skip_block: ;
plistener->setProgress (1.0);
}
plistener=NULL; // This must be reset, because only load() is called through progressConnector
t2.set();
if( settings->verbose )
printf("Load %s: %d <20>sec\n",fname.c_str(), t2.etime(t1));
return 0; // OK!
}
void RawImageSource::preprocess (const RAWParams &raw)
{
MyTime t1,t2;
t1.set();
Glib::ustring newDF = raw.dark_frame;
RawImage *rid=NULL;
if (!raw.df_autoselect) {
@@ -983,8 +991,9 @@ void RawImageSource::preprocess (const RAWParams &raw)
CA_correct_RT();
}
t2.set();
if( settings->verbose )
printf("Preprocessing: %d <20>sec\n", t2.etime(t1));
return;
}
void RawImageSource::demosaic(const RAWParams &raw)
@@ -1006,10 +1015,13 @@ void RawImageSource::demosaic(const RAWParams &raw)
eahd_demosaic ();
else if (raw.dmethod == RAWParams::methodstring[RAWParams::fast] )
fast_demo (0,0,W,H);
else if (raw.dmethod == RAWParams::methodstring[RAWParams::bilinear] )
bilinear_demosaic();
else
nodemosaic();
t2.set();
printf("Demosaicing: %s - %d µsec\n",raw.dmethod.c_str(), t2.etime(t1));
if( settings->verbose )
printf("Demosaicing: %s - %d <20>sec\n",raw.dmethod.c_str(), t2.etime(t1));
}
if (plistener) {
plistener->setProgressStr ("Ready.");