Backed out changeset bce43bcbc451 (dark frame subtraction)
This commit is contained in:
@@ -35,7 +35,20 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
#define ULIM(x,y,z) ((y) < (z) ? LIM(x,y,z) : LIM(x,z,y))
|
||||
//#define CLIP(x) LIM(x,0,65535)
|
||||
|
||||
//allocate outpute arrays
|
||||
int width=W, height=H;
|
||||
red = new unsigned short*[H];
|
||||
for (int i=0; i<H; i++) {
|
||||
red[i] = new unsigned short[W];
|
||||
}
|
||||
green = new unsigned short*[H];
|
||||
for (int i=0; i<H; i++) {
|
||||
green[i] = new unsigned short[W];
|
||||
}
|
||||
blue = new unsigned short*[H];
|
||||
for (int i=0; i<H; i++) {
|
||||
blue[i] = new unsigned short[W];
|
||||
}
|
||||
|
||||
|
||||
static const float clip_pt = 1/ri->defgain;
|
||||
@@ -226,7 +239,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
}
|
||||
|
||||
// Main algorithm: Tile loop
|
||||
//#pragma omp parallel for shared(rawData,height,width,red,green,blue) private(top,left) schedule(dynamic)
|
||||
//#pragma omp parallel for shared(ri->data,height,width,red,green,blue) private(top,left) schedule(dynamic)
|
||||
//code is openmp ready; just have to pull local tile variable declarations inside the tile loop
|
||||
#pragma omp for schedule(dynamic) nowait
|
||||
for (top=-16; top < height; top += TS-32)
|
||||
@@ -327,7 +340,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
c = FC(rr,cc);
|
||||
indx=row*width+col;
|
||||
indx1=rr*TS+cc;
|
||||
rgb[indx1][c] = (rawData[row][col])/65535.0f;
|
||||
rgb[indx1][c] = (ri->data[row][col])/65535.0f;
|
||||
//rgb[indx1][c] = image[indx][c]/65535.0f;//for dcraw implementation
|
||||
|
||||
cfa[indx1] = rgb[indx1][c];
|
||||
@@ -346,7 +359,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
for (rr=0; rr<16; rr++)
|
||||
for (cc=ccmin; cc<ccmax; cc++) {
|
||||
c=FC(rr,cc);
|
||||
rgb[(rrmax+rr)*TS+cc][c] = (rawData[(height-rr-2)][left+cc])/65535.0f;
|
||||
rgb[(rrmax+rr)*TS+cc][c] = (ri->data[(height-rr-2)][left+cc])/65535.0f;
|
||||
//rgb[(rrmax+rr)*TS+cc][c] = (image[(height-rr-2)*width+left+cc][c])/65535.0f;//for dcraw implementation
|
||||
cfa[(rrmax+rr)*TS+cc] = rgb[(rrmax+rr)*TS+cc][c];
|
||||
}
|
||||
@@ -363,7 +376,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
for (rr=rrmin; rr<rrmax; rr++)
|
||||
for (cc=0; cc<16; cc++) {
|
||||
c=FC(rr,cc);
|
||||
rgb[rr*TS+ccmax+cc][c] = (rawData[(top+rr)][(width-cc-2)])/65535.0f;
|
||||
rgb[rr*TS+ccmax+cc][c] = (ri->data[(top+rr)][(width-cc-2)])/65535.0f;
|
||||
//rgb[rr*TS+ccmax+cc][c] = (image[(top+rr)*width+(width-cc-2)][c])/65535.0f;//for dcraw implementation
|
||||
cfa[rr*TS+ccmax+cc] = rgb[rr*TS+ccmax+cc][c];
|
||||
}
|
||||
@@ -374,7 +387,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
for (rr=0; rr<16; rr++)
|
||||
for (cc=0; cc<16; cc++) {
|
||||
c=FC(rr,cc);
|
||||
rgb[(rr)*TS+cc][c] = (rawData[32-rr][32-cc])/65535.0f;
|
||||
rgb[(rr)*TS+cc][c] = (ri->data[32-rr][32-cc])/65535.0f;
|
||||
//rgb[(rr)*TS+cc][c] = (rgb[(32-rr)*TS+(32-cc)][c]);//for dcraw implementation
|
||||
cfa[(rr)*TS+cc] = rgb[(rr)*TS+cc][c];
|
||||
}
|
||||
@@ -383,7 +396,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
for (rr=0; rr<16; rr++)
|
||||
for (cc=0; cc<16; cc++) {
|
||||
c=FC(rr,cc);
|
||||
rgb[(rrmax+rr)*TS+ccmax+cc][c] = (rawData[(height-rr-2)][(width-cc-2)])/65535.0f;
|
||||
rgb[(rrmax+rr)*TS+ccmax+cc][c] = (ri->data[(height-rr-2)][(width-cc-2)])/65535.0f;
|
||||
//rgb[(rrmax+rr)*TS+ccmax+cc][c] = (image[(height-rr-2)*width+(width-cc-2)][c])/65535.0f;//for dcraw implementation
|
||||
cfa[(rrmax+rr)*TS+ccmax+cc] = rgb[(rrmax+rr)*TS+ccmax+cc][c];
|
||||
}
|
||||
@@ -392,7 +405,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
for (rr=0; rr<16; rr++)
|
||||
for (cc=0; cc<16; cc++) {
|
||||
c=FC(rr,cc);
|
||||
rgb[(rr)*TS+ccmax+cc][c] = (rawData[(32-rr)][(width-cc-2)])/65535.0f;
|
||||
rgb[(rr)*TS+ccmax+cc][c] = (ri->data[(32-rr)][(width-cc-2)])/65535.0f;
|
||||
//rgb[(rr)*TS+ccmax+cc][c] = (image[(32-rr)*width+(width-cc-2)][c])/65535.0f;//for dcraw implementation
|
||||
cfa[(rr)*TS+ccmax+cc] = rgb[(rr)*TS+ccmax+cc][c];
|
||||
}
|
||||
@@ -401,7 +414,7 @@ void RawImageSource::amaze_demosaic_RT() {
|
||||
for (rr=0; rr<16; rr++)
|
||||
for (cc=0; cc<16; cc++) {
|
||||
c=FC(rr,cc);
|
||||
rgb[(rrmax+rr)*TS+cc][c] = (rawData[(height-rr-2)][(32-cc)])/65535.0f;
|
||||
rgb[(rrmax+rr)*TS+cc][c] = (ri->data[(height-rr-2)][(32-cc)])/65535.0f;
|
||||
//rgb[(rrmax+rr)*TS+cc][c] = (image[(height-rr-2)*width+(32-cc)][c])/65535.0f;//for dcraw implementation
|
||||
cfa[(rrmax+rr)*TS+cc] = rgb[(rrmax+rr)*TS+cc][c];
|
||||
}
|
||||
|
Reference in New Issue
Block a user