Added fast demosaic to the collection of demosaic options. I was lazy and moved aside AHD in the demosaic preferences tab, since it is functionally little different than EAHD. In addition I backed out some of Hombre's changes which were breaking the windows resizing in a crazy way in the OSX build.

This commit is contained in:
Emil Martinec 2010-09-16 13:21:12 -05:00
parent bdf11e060f
commit e827e86831
9 changed files with 25 additions and 21 deletions

View File

@ -69,8 +69,8 @@ WindowWidth=1000
WindowHeight=900 WindowHeight=900
WindowMaximized=false WindowMaximized=false
FileBrowserHeight=250 FileBrowserHeight=250
ToolPanelWidth=750 ToolPanelWidth=300
BrowserToolPanelWidth=750 BrowserToolPanelWidth=300
HistoryPanelWidth=230 HistoryPanelWidth=230
LastPreviewScale=5 LastPreviewScale=5
LastCropSize=1 LastCropSize=1

View File

@ -69,9 +69,9 @@ WindowWidth=1000
WindowHeight=900 WindowHeight=900
WindowMaximized=false WindowMaximized=false
FileBrowserHeight=250 FileBrowserHeight=250
ToolPanelWidth=750 ToolPanelWidth=300
BrowserToolPanelWidth=750 BrowserToolPanelWidth=300
HistoryPanelWidth=230 HistoryPanelWidth=200
LastPreviewScale=5 LastPreviewScale=5
LastCropSize=1 LastCropSize=1
ShowHistory=true ShowHistory=true

View File

@ -69,8 +69,8 @@ WindowWidth=1000
WindowHeight=900 WindowHeight=900
WindowMaximized=false WindowMaximized=false
FileBrowserHeight=250 FileBrowserHeight=250
ToolPanelWidth=750 ToolPanelWidth=300
BrowserToolPanelWidth=750 BrowserToolPanelWidth=300
HistoryPanelWidth=230 HistoryPanelWidth=230
LastPreviewScale=5 LastPreviewScale=5
LastCropSize=1 LastCropSize=1

View File

@ -903,7 +903,8 @@ int RawImageSource::load (Glib::ustring fname) {
else if (settings->demosaicMethod=="vng4") else if (settings->demosaicMethod=="vng4")
vng4_demosaic (); vng4_demosaic ();
else if (settings->demosaicMethod=="ahd") else if (settings->demosaicMethod=="ahd")
ahd_demosaic (); //ahd_demosaic ();
fast_demo ();
else if (settings->demosaicMethod=="bilinear") else if (settings->demosaicMethod=="bilinear")
bilinear_demosaic(); bilinear_demosaic();
//else if (settings->demosaicMethod=="ppg") //else if (settings->demosaicMethod=="ppg")
@ -3215,6 +3216,7 @@ void RawImageSource::dcb_demosaic(int iterations, int dcb_enhance)
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//Emil's code for AMaZE //Emil's code for AMaZE
#include "fast_demo.cc"//fast demosaic
#include "amaze_interpolate_RT.cc"//AMaZE demosaic #include "amaze_interpolate_RT.cc"//AMaZE demosaic
#include "CA_correct_RT.cc"//Emil's CA auto correction #include "CA_correct_RT.cc"//Emil's CA auto correction
#include "cfa_linedn_RT.cc"//Emil's CA auto correction #include "cfa_linedn_RT.cc"//Emil's CA auto correction

View File

@ -138,21 +138,22 @@ class RawImageSource : public ImageSource {
inline void interpolate_row_rb_mul_pp (unsigned short* ar, unsigned short* ab, unsigned short* pg, unsigned short* cg, unsigned short* ng, int i, double r_mul, double g_mul, double b_mul, int x1, int width, int skip); inline void interpolate_row_rb_mul_pp (unsigned short* ar, unsigned short* ab, unsigned short* pg, unsigned short* cg, unsigned short* ng, int i, double r_mul, double g_mul, double b_mul, int x1, int width, int skip);
int LinEqSolve (int nDim, float* pfMatr, float* pfVect, float* pfSolution);//Emil's CA auto correction int LinEqSolve (int nDim, float* pfMatr, float* pfVect, float* pfSolution);//Emil's CA auto correction
void CA_correct_RT (); void CA_correct_RT (); //Emil's pre-demosaic CA correction
void cfa_clean (float thresh);//Emil's hot/dead pixel filter void cfa_clean (float thresh); //Emil's hot/dead pixel filter
void ddct8x8s(int isgn, float **a); void ddct8x8s(int isgn, float **a);
void cfa_linedn (float linenoiselevel);//Emil's line denoise void cfa_linedn (float linenoiselevel); //Emil's line denoise
void green_equilibrate (float greenthresh);//Emil's green equilibration void green_equilibrate (float greenthresh);//Emil's green equilibration
void eahd_demosaic (); void eahd_demosaic ();
void hphd_demosaic (); void hphd_demosaic ();
void vng4_demosaic (); void vng4_demosaic ();
void ppg_demosaic(); void ppg_demosaic();
void amaze_demosaic_RT ();//Emil's code for AMaZE void amaze_demosaic_RT (); //Emil's code for AMaZE
void fast_demo (); //Emil's fast demosaic
void dcb_demosaic(int iterations, int dcb_enhance); void dcb_demosaic(int iterations, int dcb_enhance);
void ahd_demosaic(); void ahd_demosaic();
void bilinear_demosaic(); void bilinear_demosaic();

View File

@ -192,7 +192,7 @@ EditorPanel::EditorPanel () : beforePreviewHandler(NULL), beforeIarea(NULL), par
hpanedr->pack1(*hpanedl, true, true); hpanedr->pack1(*hpanedl, true, true);
hpanedr->pack2(*vboxright, false, true); hpanedr->pack2(*vboxright, false, true);
hpanedr->set_position(options.toolPanelWidth); //hpanedr->set_position(options.toolPanelWidth);
pack_start (*hpanedr); pack_start (*hpanedr);
show_all (); show_all ();
@ -843,7 +843,8 @@ bool EditorPanel::idle_sentToGimp(ProgressConnector<int> *pc,rtengine::IImage16*
void EditorPanel::saveOptions () { void EditorPanel::saveOptions () {
options.historyPanelWidth = hpanedl->get_position (); options.historyPanelWidth = hpanedl->get_position ();
options.toolPanelWidth = hpanedr->get_position (); options.toolPanelWidth = vboxright->get_width ();//older code
//options.toolPanelWidth = hpanedr->get_position ();//Hombre's change which screws up OSX build
} }
void EditorPanel::historyBeforeLineChanged (const rtengine::procparams::ProcParams& params) { void EditorPanel::historyBeforeLineChanged (const rtengine::procparams::ProcParams& params) {

View File

@ -101,7 +101,7 @@ FilePanel::FilePanel () : parent(NULL) {
pack1(*dirpaned, true, true); pack1(*dirpaned, true, true);
pack2(*rightBox, true, true); pack2(*rightBox, true, true);
set_position(options.browserToolPanelWidth); //set_position(options.browserToolPanelWidth);////Hombre's change which screws up OSX build
fileCatalog->setFileSelectionChangeListener (tpc); fileCatalog->setFileSelectionChangeListener (tpc);

View File

@ -61,8 +61,8 @@ void Options::setDefaults () {
profilePath = "profiles"; profilePath = "profiles";
dirBrowserWidth = 200; dirBrowserWidth = 200;
dirBrowserHeight = 150; dirBrowserHeight = 150;
toolPanelWidth = 700; toolPanelWidth = 300;
browserToolPanelWidth = 700; browserToolPanelWidth = 300;
historyPanelWidth = 150; historyPanelWidth = 150;
lastScale = 4; lastScale = 4;
lastCropSize = 1; lastCropSize = 1;
@ -372,7 +372,7 @@ int Options::saveToFile (Glib::ustring fname) {
keyFile.set_boolean ("Profiles", "SaveParamsToCache", saveParamsCache); keyFile.set_boolean ("Profiles", "SaveParamsToCache", saveParamsCache);
keyFile.set_integer ("Profiles", "LoadParamsFromLocation", paramsLoadLocation); keyFile.set_integer ("Profiles", "LoadParamsFromLocation", paramsLoadLocation);
keyFile.set_integer ("GUI", "WindowWidth", windowWidth); keyFile.set_integer ("GUI", "WindowWidth", 1200);//windowWidth);
keyFile.set_integer ("GUI", "WindowHeight", windowHeight); keyFile.set_integer ("GUI", "WindowHeight", windowHeight);
keyFile.set_boolean ("GUI", "WindowMaximized", windowMaximized); keyFile.set_boolean ("GUI", "WindowMaximized", windowMaximized);
keyFile.set_integer ("GUI", "DirBrowserWidth", dirBrowserWidth); keyFile.set_integer ("GUI", "DirBrowserWidth", dirBrowserWidth);

View File

@ -266,7 +266,7 @@ Gtk::Widget* Preferences::getProcParamsPanel () {
//dmethod->append_text ("PPG"); //dmethod->append_text ("PPG");
dmethod->append_text ("AMaZE");//Emil's code for AMaZE dmethod->append_text ("AMaZE");//Emil's code for AMaZE
dmethod->append_text ("DCB"); dmethod->append_text ("DCB");
dmethod->append_text ("AHD"); dmethod->append_text ("Fast Demosaic");//("AHD");
dmethod->append_text ("Bilinear"); dmethod->append_text ("Bilinear");
Gtk::Label* cclab = Gtk::manage (new Gtk::Label (M("PREFERENCES_FALSECOLOR")+":")); Gtk::Label* cclab = Gtk::manage (new Gtk::Label (M("PREFERENCES_FALSECOLOR")+":"));
ccSteps = Gtk::manage (new Gtk::SpinButton ()); ccSteps = Gtk::manage (new Gtk::SpinButton ());