From 6d4e82b94f8cb0a315f7c67a4c44f4b261e01d12 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Sat, 27 Aug 2016 22:58:16 +0200 Subject: [PATCH 01/41] Speedups for B&W conversion --- rtengine/color.cc | 47 +++++++++++++++++++++++++++++-- rtengine/color.h | 2 ++ rtengine/improcfun.cc | 65 +++++++++++++++++++------------------------ 3 files changed, 74 insertions(+), 40 deletions(-) diff --git a/rtengine/color.cc b/rtengine/color.cc index c6f69d968..e6afbd86e 100644 --- a/rtengine/color.cc +++ b/rtengine/color.cc @@ -24,6 +24,8 @@ #include "sleef.c" #include "opthelper.h" +#define pow_F(a,b) (xexpf(b*xlogf(a))) + using namespace std; namespace rtengine @@ -857,6 +859,14 @@ void Color::xyz2rgb (float x, float y, float z, float &r, float &g, float &b, co b = ((rgb_xyz[2][0] * x + rgb_xyz[2][1] * y + rgb_xyz[2][2] * z)) ; } +void Color::xyz2r (float x, float y, float z, float &r, const double rgb_xyz[3][3]) // for black & white we need only r channel +{ + //Transform to output color. Standard sRGB is D65, but internal representation is D50 + //Note that it is only at this point that we should have need of clipping color data + + r = ((rgb_xyz[0][0] * x + rgb_xyz[0][1] * y + rgb_xyz[0][2] * z)) ; +} + // same for float void Color::xyz2rgb (float x, float y, float z, float &r, float &g, float &b, const float rgb_xyz[3][3]) { @@ -874,19 +884,39 @@ void Color::xyz2rgb (vfloat x, vfloat y, vfloat z, vfloat &r, vfloat &g, vfloat } #endif // __SSE2__ +#ifdef __SSE2__ +void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb) +{ + // correct gamma for black and white image : pseudo TRC curve of ICC profil + vfloat rgbv = _mm_set_ps(0.f, b, g, r); + vfloat gammabwv = _mm_set_ps(0.f, gammabwb, gammabwg, gammabwr); + vfloat c65535v = F2V(65535.f); + rgbv /= c65535v; + rgbv = vmaxf(rgbv, ZEROV); + rgbv = pow_F(rgbv, gammabwv); + rgbv *= c65535v; + float temp[4] ALIGNED16; + STVF(temp[0], rgbv); + r = temp[0]; + g = temp[1]; + b = temp[2]; +} + +#else void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb) { // correct gamma for black and white image : pseudo TRC curve of ICC profil b /= 65535.0f; - b = pow (max(b, 0.0f), gammabwb); + b = pow_F (max(b, 0.0f), gammabwb); b *= 65535.0f; r /= 65535.0f; - r = pow (max(r, 0.0f), gammabwr); + r = pow_F (max(r, 0.0f), gammabwr); r *= 65535.0f; g /= 65535.0f; - g = pow (max(g, 0.0f), gammabwg); + g = pow_F (max(g, 0.0f), gammabwg); g *= 65535.0f; } +#endif /** @brief Compute the B&W constants for the B&W processing and its tool's GUI * @@ -1492,6 +1522,17 @@ void Color::Lab2XYZ(float L, float a, float b, float &x, float &y, float &z) y = (LL > epskap) ? 65535.0f * fy * fy * fy : 65535.0f * LL / kappa; } +void Color::L2XYZ(float L, float &x, float &y, float &z) // for black & white +{ + float LL = L / 327.68f; + float fy = (0.00862069f * LL) + 0.137932f; // (L+16)/116 + float fxz = 65535.f * f2xyz(fy); + x = fxz * D50x; + z = fxz * D50z; + y = (LL > epskap) ? 65535.0f * fy * fy * fy : 65535.0f * LL / kappa; +} + + #ifdef __SSE2__ void Color::Lab2XYZ(vfloat L, vfloat a, vfloat b, vfloat &x, vfloat &y, vfloat &z) { diff --git a/rtengine/color.h b/rtengine/color.h index 1ae721e5a..c61861421 100644 --- a/rtengine/color.h +++ b/rtengine/color.h @@ -408,6 +408,7 @@ public: * @param rgb_xyz[3][3] transformation matrix to use for the conversion */ static void xyz2rgb (float x, float y, float z, float &r, float &g, float &b, const double rgb_xyz[3][3]); + static void xyz2r (float x, float y, float z, float &r, const double rgb_xyz[3][3]); static void xyz2rgb (float x, float y, float z, float &r, float &g, float &b, const float rgb_xyz[3][3]); #ifdef __SSE2__ static void xyz2rgb (vfloat x, vfloat y, vfloat z, vfloat &r, vfloat &g, vfloat &b, const vfloat rgb_xyz[3][3]); @@ -441,6 +442,7 @@ public: * @param z Z coordinate [0 ; 65535] ; can be negative! (return value) */ static void Lab2XYZ(float L, float a, float b, float &x, float &y, float &z); + static void L2XYZ(float L, float &x, float &y, float &z); #ifdef __SSE2__ static void Lab2XYZ(vfloat L, vfloat a, vfloat b, vfloat &x, vfloat &y, vfloat &z); diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 9bbdb022f..2fadfabe4 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -40,7 +40,7 @@ #include "improccoordinator.h" #include "clutstore.h" #include "ciecam02.h" -//#define BENCHMARK +#define BENCHMARK #include "StopWatch.h" #include "../rtgui/ppversion.h" #include "../rtgui/guiutils.h" @@ -4127,23 +4127,26 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer } else if (algm == 1) { //Luminance mixer in Lab mode to avoid artifacts for (int i = istart, ti = 0; i < tH; i++, ti++) { for (int j = jstart, tj = 0; j < tW; j++, tj++) { - //rgb=>lab - float r = rtemp[ti * TS + tj]; - float g = gtemp[ti * TS + tj]; - float b = btemp[ti * TS + tj]; + //rgb => xyz float X, Y, Z; + Color::rgbxyz(rtemp[ti * TS + tj], gtemp[ti * TS + tj], btemp[ti * TS + tj], X, Y, Z, wp); + //xyz => Lab float L, aa, bb; - Color::rgbxyz(r, g, b, X, Y, Z, wp); - //convert Lab Color::XYZ2Lab(X, Y, Z, L, aa, bb); - //end rgb=>lab - //lab ==> Ch - float CC = sqrt(SQR(aa / 327.68f) + SQR(bb / 327.68f)); //CC chromaticity in 0..180 or more + float CC = sqrtf(SQR(aa) + SQR(bb)) / 327.68f; //CC chromaticity in 0..180 or more float HH = xatan2f(bb, aa); // HH hue in -3.141 +3.141 - float l_r;//Luminance Lab in 0..1 - l_r = L / 32768.f; + float2 sincosval; + + if(CC == 0.0f) { + sincosval.y = 1.f; + sincosval.x = 0.0f; + } else { + sincosval.y = aa / (CC * 327.68f); + sincosval.x = bb / (CC * 327.68f); + } if (bwlCurveEnabled) { + L /= 32768.f; double hr = Color::huelab_to_huehsv2(HH); float valparam = float((bwlCurve->getVal(hr) - 0.5f) * 2.0f); //get l_r=f(H) float kcc = (CC / 70.f); //take Chroma into account...70 "middle" of chromaticity (arbitrary and simple), one can imagine other algorithme @@ -4151,47 +4154,35 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer valparam *= kcc; if(valparam > 0.f) { - l_r = (1.f - valparam) * l_r + valparam * (1.f - SQR(SQR(SQR(SQR(1.f - min(l_r, 1.0f)))))); // SQR (SQR((SQR) to increase action in low light + L = (1.f - valparam) * L + valparam * (1.f - SQR(SQR(SQR(SQR(1.f - min(L, 1.0f)))))); // SQR (SQR((SQR) to increase action in low light } else { - l_r *= (1.f + valparam); //for negative + L *= (1.f + valparam); //for negative } + L *= 32768.f; } - L = l_r * 32768.f; float RR, GG, BB; - float Lr; - Lr = L / 327.68f; //for gamutlch + L /= 327.68f; #ifdef _DEBUG bool neg = false; bool more_rgb = false; //gamut control : Lab values are in gamut - Color::gamutLchonly(HH, Lr, CC, RR, GG, BB, wip, highlight, 0.15f, 0.96f, neg, more_rgb); + Color::gamutLchonly(HH, sincosval, L, CC, RR, GG, BB, wip, highlight, 0.15f, 0.96f, neg, more_rgb); #else //gamut control : Lab values are in gamut - Color::gamutLchonly(HH, Lr, CC, RR, GG, BB, wip, highlight, 0.15f, 0.96f); + Color::gamutLchonly(HH, sincosval, L, CC, RR, GG, BB, wip, highlight, 0.15f, 0.96f); #endif - //convert CH ==> ab - L = Lr * 327.68f; - // float a_,b_; - // a_=0.f;//grey - // b_=0.f;//grey - //convert lab=>rgb - Color::Lab2XYZ(L, 0.f, 0.f, X, Y, Z); - float rr_, gg_, bb_; - Color::xyz2rgb(X, Y, Z, rr_, gg_, bb_, wip); - rtemp[ti * TS + tj] = gtemp[ti * TS + tj] = btemp[ti * TS + tj] = rr_; - // tmpImage->r(i,j) = tmpImage->g(i,j) = tmpImage->b(i,j) = CLIP(val[0]*kcorec); + L *= 327.68f; + //convert l => rgb + Color::L2XYZ(L, X, Y, Z); + float newRed; // We use the red channel for bw + Color::xyz2r(X, Y, Z, newRed, wip); + rtemp[ti * TS + tj] = gtemp[ti * TS + tj] = btemp[ti * TS + tj] = newRed; if (hasgammabw) { + //gamma correction: pseudo TRC curve Color::trcGammaBW (rtemp[ti * TS + tj], gtemp[ti * TS + tj], btemp[ti * TS + tj], gammabwr, gammabwg, gammabwb); } - - //gamma correction: pseudo TRC curve - // if (hasgammabw) - // Color::trcGammaBW (rr_, gg_, bb_, gammabwr, gammabwg, gammabwb); - // rtemp[ti*TS+tj] = rr_; - // gtemp[ti*TS+tj] = gg_; - // btemp[ti*TS+tj] = bb_; } } } From 84614a11e82bc2bc2ccbb8366503929e97101976 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Sun, 28 Aug 2016 14:47:01 +0200 Subject: [PATCH 02/41] B&W: Speedup for Color::trcGammaBW --- rtengine/color.cc | 40 ++++++++++++++++---- rtengine/color.h | 3 ++ rtengine/improcfun.cc | 87 +++++++++++++++++-------------------------- 3 files changed, 70 insertions(+), 60 deletions(-) diff --git a/rtengine/color.cc b/rtengine/color.cc index e6afbd86e..66887f550 100644 --- a/rtengine/color.cc +++ b/rtengine/color.cc @@ -888,7 +888,7 @@ void Color::xyz2rgb (vfloat x, vfloat y, vfloat z, vfloat &r, vfloat &g, vfloat void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb) { // correct gamma for black and white image : pseudo TRC curve of ICC profil - vfloat rgbv = _mm_set_ps(0.f, b, g, r); + vfloat rgbv = _mm_set_ps(0.f, r, r, r); // input channel is always r vfloat gammabwv = _mm_set_ps(0.f, gammabwb, gammabwg, gammabwr); vfloat c65535v = F2V(65535.f); rgbv /= c65535v; @@ -901,19 +901,45 @@ void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gamm g = temp[1]; b = temp[2]; } +void Color::trcGammaBWRow (float *r, float *g, float *b, int width, float gammabwr, float gammabwg, float gammabwb) +{ + // correct gamma for black and white image : pseudo TRC curve of ICC profil + vfloat c65535v = F2V(65535.f); + vfloat gammabwrv = F2V(gammabwr); + vfloat gammabwgv = F2V(gammabwg); + vfloat gammabwbv = F2V(gammabwb); + int i = 0; + for(; i < width - 3; i += 4 ) { + vfloat inv = _mm_loadu_ps(&r[i]); // input channel is always r + inv /= c65535v; + inv = vmaxf(inv, ZEROV); + vfloat rv = pow_F(inv, gammabwrv); + vfloat gv = pow_F(inv, gammabwgv); + vfloat bv = pow_F(inv, gammabwbv); + rv *= c65535v; + gv *= c65535v; + bv *= c65535v; + _mm_storeu_ps(&r[i], rv); + _mm_storeu_ps(&g[i], gv); + _mm_storeu_ps(&b[i], bv); + } + for(; i < width; i++) { + trcGammaBW(r[i], g[i], b[i], gammabwr, gammabwg, gammabwb); + } +} #else void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb) { // correct gamma for black and white image : pseudo TRC curve of ICC profil - b /= 65535.0f; - b = pow_F (max(b, 0.0f), gammabwb); + float in = r; // input channel is always r + in /= 65535.0f; + in = max(in, 0.f); + b = pow_F (in, gammabwb); b *= 65535.0f; - r /= 65535.0f; - r = pow_F (max(r, 0.0f), gammabwr); + r = pow_F (in, gammabwr); r *= 65535.0f; - g /= 65535.0f; - g = pow_F (max(g, 0.0f), gammabwg); + g = pow_F (in, gammabwg); g *= 65535.0f; } #endif diff --git a/rtengine/color.h b/rtengine/color.h index c61861421..e9b38c509 100644 --- a/rtengine/color.h +++ b/rtengine/color.h @@ -894,6 +894,9 @@ public: * @param gammabwb gamma value for red channel [>0] */ static void trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb); +#ifdef __SSE2__ + static void trcGammaBWRow (float *r, float *g, float *b, int width, float gammabwr, float gammabwg, float gammabwb); +#endif /** @brief Compute the B&W constants for the Black and White processing and its GUI diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 2fadfabe4..7fcee7512 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -4114,15 +4114,23 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer // -------------------------------------------------- +#ifndef __SSE2__ //gamma correction: pseudo TRC curve if (hasgammabw) { Color::trcGammaBW (r, g, b, gammabwr, gammabwg, gammabwb); } - +#endif rtemp[ti * TS + tj] = r; gtemp[ti * TS + tj] = g; btemp[ti * TS + tj] = b; } +#ifdef __SSE2__ + if (hasgammabw) { + //gamma correction: pseudo TRC curve + Color::trcGammaBWRow (&rtemp[ti * TS], >emp[ti * TS], &btemp[ti * TS], tW - jstart, gammabwr, gammabwg, gammabwb); + } +#endif + } } else if (algm == 1) { //Luminance mixer in Lab mode to avoid artifacts for (int i = istart, ti = 0; i < tH; i++, ti++) { @@ -4178,12 +4186,19 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer float newRed; // We use the red channel for bw Color::xyz2r(X, Y, Z, newRed, wip); rtemp[ti * TS + tj] = gtemp[ti * TS + tj] = btemp[ti * TS + tj] = newRed; - +#ifndef __SSE2__ if (hasgammabw) { //gamma correction: pseudo TRC curve Color::trcGammaBW (rtemp[ti * TS + tj], gtemp[ti * TS + tj], btemp[ti * TS + tj], gammabwr, gammabwg, gammabwb); } +#endif } +#ifdef __SSE2__ + if (hasgammabw) { + //gamma correction: pseudo TRC curve + Color::trcGammaBWRow (&rtemp[ti * TS], >emp[ti * TS], &btemp[ti * TS], tW - jstart, gammabwr, gammabwg, gammabwb); + } +#endif } } } @@ -4389,13 +4404,10 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer if (algm == 2) { //channel-mixer //end auto chmix - float mix[3][3]; - if (computeMixerAuto) { // auto channel-mixer - #ifdef _OPENMP - #pragma omp parallel for schedule(dynamic, 5) reduction(+:nr,ng,nb) + #pragma omp parallel for schedule(dynamic, 16) reduction(+:nr,ng,nb) #endif for (int i = 0; i < tH; i++) { @@ -4434,44 +4446,29 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer bwr, bwg, bwb, mixerOrange, mixerYellow, mixerCyan, mixerPurple, mixerMagenta, params->blackwhite.autoc, complem, kcorec, rrm, ggm, bbm); - mix[0][0] = bwr; - mix[1][0] = bwr; - mix[2][0] = bwr; - mix[0][1] = bwg; - mix[1][1] = bwg; - mix[2][1] = bwg; - mix[0][2] = bwb; - mix[1][2] = bwb; - mix[2][2] = bwb; - #ifdef _OPENMP - #pragma omp parallel for schedule(dynamic, 5) + #pragma omp parallel for schedule(dynamic, 16) #endif for (int i = 0; i < tH; i++) { - float in[3], val[3]; - for (int j = 0; j < tW; j++) { - in[0] = tmpImage->r(i, j); - in[1] = tmpImage->g(i, j); - in[2] = tmpImage->b(i, j); //mix channel - for (int end = 0; end < 3 ; end++) { - val[end] = 0.f; - - for (int beg = 0; beg < 3 ; beg++) { - val[end] += mix[end][beg] * in[beg]; - } - } - - tmpImage->r(i, j) = tmpImage->g(i, j) = tmpImage->b(i, j) = CLIP(val[0] * kcorec); + tmpImage->r(i, j) = tmpImage->g(i, j) = tmpImage->b(i, j) = CLIP((bwr * tmpImage->r(i, j) + bwg * tmpImage->g(i, j) + bwb * tmpImage->b(i, j)) * kcorec); +#ifndef __SSE2__ //gamma correction: pseudo TRC curve if (hasgammabw) { Color::trcGammaBW (tmpImage->r(i, j), tmpImage->g(i, j), tmpImage->b(i, j), gammabwr, gammabwg, gammabwb); } +#endif } +#ifdef __SSE2__ + if (hasgammabw) { + //gamma correction: pseudo TRC curve + Color::trcGammaBWRow (tmpImage->r(i), tmpImage->g(i), tmpImage->b(i), tW, gammabwr, gammabwg, gammabwb); + } +#endif } } @@ -4774,29 +4771,13 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer float fx, fy, fz; - fx = (x < 65535.0f ? Color::cachef[std::max(x, 0.f)] : 327.68f * std::cbrt(x / MAXVALF)); - fy = (y < 65535.0f ? Color::cachef[std::max(y, 0.f)] : 327.68f * std::cbrt(y / MAXVALF)); - fz = (z < 65535.0f ? Color::cachef[std::max(z, 0.f)] : 327.68f * std::cbrt(z / MAXVALF)); - - lab->L[i][j] = (116.0f * fy - 5242.88f); //5242.88=16.0*327.68; - lab->a[i][j] = (500.0f * (fx - fy) ); - lab->b[i][j] = (200.0f * (fy - fz) ); - - - //test for color accuracy - /*float fy = (0.00862069 * lab->L[i][j])/327.68 + 0.137932; // (L+16)/116 - float fx = (0.002 * lab->a[i][j])/327.68 + fy; - float fz = fy - (0.005 * lab->b[i][j])/327.68; - - float x_ = 65535*Lab2xyz(fx)*Color::D50x; - float y_ = 65535*Lab2xyz(fy); - float z_ = 65535*Lab2xyz(fz)*Color::D50z; - - int R,G,B; - xyz2srgb(x_,y_,z_,R,G,B); - r=(float)R; g=(float)G; b=(float)B; - float xxx=1;*/ + fx = (x < MAXVALF ? Color::cachef[x] : 327.68f * std::cbrt(x / MAXVALF)); + fy = (y < MAXVALF ? Color::cachef[y] : 327.68f * std::cbrt(y / MAXVALF)); + fz = (z < MAXVALF ? Color::cachef[z] : 327.68f * std::cbrt(z / MAXVALF)); + lab->L[i][j] = 116.0f * fy - 5242.88f; //5242.88=16.0*327.68; + lab->a[i][j] = 500.0f * (fx - fy); + lab->b[i][j] = 200.0f * (fy - fz); } } From dc4bbe906ba92ddc66f98a3c26ce19822bfb99ab Mon Sep 17 00:00:00 2001 From: heckflosse Date: Fri, 2 Sep 2016 21:04:23 +0200 Subject: [PATCH 03/41] Avoid possible buffer underrun in ImProcFunctions::Mad and ImProcFunctions::MadRgb --- rtengine/FTblockDN.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 288c9c994..69e846f3c 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -2146,6 +2146,9 @@ float ImProcFunctions::MadMax(float * DataList, int & max, int datalen) float ImProcFunctions::Mad(float * DataList, const int datalen) { + if(datalen <= 0) { // Avoid possible buffer underrun + return 0; + } //computes Median Absolute Deviation //DataList values should mostly have abs val < 256 because we are in Lab mode @@ -2172,6 +2175,9 @@ float ImProcFunctions::Mad(float * DataList, const int datalen) float ImProcFunctions::MadRgb(float * DataList, const int datalen) { + if(datalen <= 0) { // Avoid possible buffer underrun + return 0; + } //computes Median Absolute Deviation //DataList values should mostly have abs val < 65536 because we are in RGB mode From 40794f8e15f73ab0834b98691648ab9ddef4a0ac Mon Sep 17 00:00:00 2001 From: Hombre Date: Sat, 3 Sep 2016 21:44:02 +0200 Subject: [PATCH 04/41] Add full support of c++11 to the Eclipse IDE ...(i.e. including when building the index), with the help of -DCMAKE_ECLIPSE_VERSION="4.6.0" (set to your version, of course) on the command line. Without this, the declared symbols are wrong and c++11 is not supported by the IDE (vs the build makefiles). --- CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index e4ecf0903..ad0bd2e16 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,6 +4,13 @@ else (WIN32) cmake_minimum_required(VERSION 2.6) endif (WIN32) +# must stay before the 'project' command +if(${CMAKE_EXTRA_GENERATOR} MATCHES "Eclipse CDT4") + set(CMAKE_CXX_COMPILER_ARG1 "-std=c++11" CACHE STRING "C++ version for eclipse" FORCE) + # users building with Eclipse should set CMAKE_ECLIPSE_VERSION through the command line to their current version of Eclipse + #set(CMAKE_ECLIPSE_VERSION "4.6.0" CACHE STRING "Eclipse version" FORCE) +endif() + PROJECT(RawTherapee) # the default target is 'Debug' From b04596ec605e7c4febc09c9559b65020306ab249 Mon Sep 17 00:00:00 2001 From: Hombre Date: Sun, 4 Sep 2016 02:55:57 +0200 Subject: [PATCH 05/41] Fixing a small glitch in the main cmakefile --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e4ecf0903..4ef5b3d3e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -255,7 +255,7 @@ if (WITH_BZIP) find_package(BZip2) if (BZIP2_FOUND) add_definitions (-DBZIP_SUPPORT) - set (EXTRA_INCDIR ${EXTRA_LIB} ${BZIP2_INCLUDE_DIR}) + set (EXTRA_INCDIR ${BZIP2_INCLUDE_DIR}) set (EXTRA_LIB ${EXTRA_LIB} ${BZIP2_LIBRARIES}) endif (BZIP2_FOUND) endif (WITH_BZIP) From 3ddb4171d29c85c736d97902905260792714e4c9 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Mon, 5 Sep 2016 10:40:28 +0200 Subject: [PATCH 06/41] Fix a crash in denoise --- rtengine/FTblockDN.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 69e846f3c..c121ce7a1 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -879,13 +879,13 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef realred = interm_med + intermred; - if (realred < 0.f) { + if (realred <= 0.f) { realred = 0.001f; } realblue = interm_med + intermblue; - if (realblue < 0.f) { + if (realblue <= 0.f) { realblue = 0.001f; } From 0f21a0de6c1339fa7e8364d736af11dc1838b6f5 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 7 Sep 2016 16:44:16 +0200 Subject: [PATCH 07/41] Speedups for denoise, fixes #3418 --- rtengine/FTblockDN.cc | 97 ++++++++++++++++++----------------- rtengine/color.cc | 61 ++++++++++++++++++++++ rtengine/color.h | 18 +++++-- rtengine/dcrop.cc | 4 +- rtengine/improccoordinator.cc | 1 + rtengine/improccoordinator.h | 8 +++ rtengine/sleefsseavx.c | 37 +++++++++++++ 7 files changed, 174 insertions(+), 52 deletions(-) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 69e846f3c..4ccc63c3a 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -37,7 +37,8 @@ #include "opthelper.h" #include "cplx_wavelet_dec.h" #include "median.h" - +#define BENCHMARK +#include "StopWatch.h" #ifdef _OPENMP #include #endif @@ -426,6 +427,7 @@ enum nrquality {QUALITY_STANDARD, QUALITY_HIGH}; SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagefloat * dst, Imagefloat * calclum, float * ch_M, float *max_r, float *max_b, bool isRAW, const procparams::DirPyrDenoiseParams & dnparams, const double expcomp, const NoiseCurve & noiseLCurve, const NoiseCurve & noiseCCurve, float &chaut, float &redaut, float &blueaut, float &maxredaut, float &maxblueaut, float &nresi, float &highresi) { +BENCHFUN //#ifdef _DEBUG MyTime t1e, t2e; t1e.set(); @@ -588,19 +590,19 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef } } - float gamslope = exp(log(static_cast(gamthresh)) / gam) / gamthresh; LUTf gamcurve(65536, LUT_CLIP_BELOW); + float gamslope = exp(log(static_cast(gamthresh)) / gam) / gamthresh; + MyTime t1e, t2e; + t1e.set(); if (denoiseMethodRgb) { - for (int i = 0; i < 65536; ++i) { - gamcurve[i] = (Color::gamma(static_cast(i) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0)) * 32768.0f; - } + Color::gammaf2lut(gamcurve, gam, gamthresh, gamslope, 65535.f, 32768.f); } else { - for (int i = 0; i < 65536; ++i) { - gamcurve[i] = (Color::gamman(static_cast(i) / 65535.0, gam)) * 32768.0f; - } + Color::gammanf2lut(gamcurve, gam, 65535.f, 32768.f); } + t2e.set(); + printf("gamcurve performed in %d usec:\n", t2e.etime(t1e)); // inverse gamma transform for output data float igam = 1.f / gam; @@ -609,15 +611,16 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef LUTf igamcurve(65536, LUT_CLIP_BELOW); + MyTime t11e, t21e; + t11e.set(); + if (denoiseMethodRgb) { - for (int i = 0; i < 65536; ++i) { - igamcurve[i] = (Color::gamma(static_cast(i) / 32768.0f, igam, igamthresh, igamslope, 1.0, 0.0) * 65535.0f); - } + Color::gammaf2lut(igamcurve, igam, igamthresh, igamslope, 32768.f, 65535.f); } else { - for (int i = 0; i < 65536; ++i) { - igamcurve[i] = (Color::gamman(static_cast(i) / 32768.0f, igam) * 65535.0f); - } + Color::gammanf2lut(igamcurve, igam, 32768.f, 65535.f); } + t21e.set(); + printf("igamcurve performed in %d usec:\n", t21e.etime(t11e)); const float gain = pow (2.0f, float(expcomp)); float noisevar_Ldetail = SQR(static_cast(SQR(100. - dnparams.Ldetail) + 50.*(100. - dnparams.Ldetail)) * TS * 0.5f); @@ -922,9 +925,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef B_ = (*denoiseigamtab)[B_]; //apply gamma noise standard (slider) - R_ = R_ < 65535.0f ? gamcurve[R_] : (Color::gammanf(R_ / 65535.f, gam) * 32768.0f); - G_ = G_ < 65535.0f ? gamcurve[G_] : (Color::gammanf(G_ / 65535.f, gam) * 32768.0f); - B_ = B_ < 65535.0f ? gamcurve[B_] : (Color::gammanf(B_ / 65535.f, gam) * 32768.0f); + R_ = R_ < 65535.f ? gamcurve[R_] : (Color::gammanf(R_ / 65535.f, gam) * 32768.f); + G_ = G_ < 65535.f ? gamcurve[G_] : (Color::gammanf(G_ / 65535.f, gam) * 32768.f); + B_ = B_ < 65535.f ? gamcurve[B_] : (Color::gammanf(B_ / 65535.f, gam) * 32768.f); //true conversion xyz=>Lab float X, Y, Z; @@ -966,9 +969,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef float Y = gain * src->g(i, j); float Z = gain * src->b(i, j); //conversion colorspace to determine luminance with no gamma - X = X < 65535.0f ? gamcurve[X] : (Color::gamma(static_cast(X) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0) * 32768.0f); - Y = Y < 65535.0f ? gamcurve[Y] : (Color::gamma(static_cast(Y) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0) * 32768.0f); - Z = Z < 65535.0f ? gamcurve[Z] : (Color::gamma(static_cast(Z) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0) * 32768.0f); + X = X < 65535.f ? gamcurve[X] : (Color::gammaf(X / 65535.f, gam, gamthresh, gamslope) * 32768.f); + Y = Y < 65535.f ? gamcurve[Y] : (Color::gammaf(Y / 65535.f, gam, gamthresh, gamslope) * 32768.f); + Z = Z < 65535.f ? gamcurve[Z] : (Color::gammaf(Z / 65535.f, gam, gamthresh, gamslope) * 32768.f); //end chroma labdn->L[i1][j1] = Y; labdn->a[i1][j1] = (X - Y); @@ -1009,9 +1012,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef float btmp = Color::igammatab_srgb[ src->b(i, j) ]; //modification Jacques feb 2013 // gamma slider different from raw - rtmp = rtmp < 65535.0f ? gamcurve[rtmp] : (Color::gamman(static_cast(rtmp) / 65535.0, gam) * 32768.0f); - gtmp = gtmp < 65535.0f ? gamcurve[gtmp] : (Color::gamman(static_cast(gtmp) / 65535.0, gam) * 32768.0f); - btmp = btmp < 65535.0f ? gamcurve[btmp] : (Color::gamman(static_cast(btmp) / 65535.0, gam) * 32768.0f); + rtmp = rtmp < 65535.f ? gamcurve[rtmp] : (Color::gammanf(rtmp / 65535.f, gam) * 32768.f); + gtmp = gtmp < 65535.f ? gamcurve[gtmp] : (Color::gammanf(gtmp / 65535.f, gam) * 32768.f); + btmp = btmp < 65535.f ? gamcurve[btmp] : (Color::gammanf(btmp / 65535.f, gam) * 32768.f); float X, Y, Z; Color::rgbxyz(rtmp, gtmp, btmp, X, Y, Z, wp); @@ -1650,9 +1653,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef float Z = Y - (labdn->b[i1][j1]); - X = X < 32768.0f ? igamcurve[X] : (Color::gamma(X / 32768.0f, igam, igamthresh, igamslope, 1.0, 0.0) * 65535.0f); - Y = Y < 32768.0f ? igamcurve[Y] : (Color::gamma(Y / 32768.0f, igam, igamthresh, igamslope, 1.0, 0.0) * 65535.0f); - Z = Z < 32768.0f ? igamcurve[Z] : (Color::gamma(Z / 32768.0f, igam, igamthresh, igamslope, 1.0, 0.0) * 65535.0f); + X = X < 32768.f ? igamcurve[X] : (Color::gammaf(X / 32768.f, igam, igamthresh, igamslope) * 65535.f); + Y = Y < 32768.f ? igamcurve[Y] : (Color::gammaf(Y / 32768.f, igam, igamthresh, igamslope) * 65535.f); + Z = Z < 32768.f ? igamcurve[Z] : (Color::gammaf(Z / 32768.f, igam, igamthresh, igamslope) * 65535.f); if (numtiles == 1) { dsttmp->r(i, j) = newGain * X; @@ -1695,9 +1698,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef float r_, g_, b_; Color::xyz2rgb(X, Y, Z, r_, g_, b_, wip); //gamma slider is different from Raw - r_ = r_ < 32768.0f ? igamcurve[r_] : (Color::gamman(r_ / 32768.0f, igam) * 65535.0f); - g_ = g_ < 32768.0f ? igamcurve[g_] : (Color::gamman(g_ / 32768.0f, igam) * 65535.0f); - b_ = b_ < 32768.0f ? igamcurve[b_] : (Color::gamman(b_ / 32768.0f, igam) * 65535.0f); + r_ = r_ < 32768.f ? igamcurve[r_] : (Color::gammanf(r_ / 32768.f, igam) * 65535.f); + g_ = g_ < 32768.f ? igamcurve[g_] : (Color::gammanf(g_ / 32768.f, igam) * 65535.f); + b_ = b_ < 32768.f ? igamcurve[b_] : (Color::gammanf(b_ / 32768.f, igam) * 65535.f); if (numtiles == 1) { dsttmp->r(i, j) = newGain * r_; @@ -2982,7 +2985,7 @@ void ImProcFunctions::WaveletDenoiseAll_info(int levwav, wavelet_decomposition & } } -void ImProcFunctions::RGB_denoise_infoGamCurve(const procparams::DirPyrDenoiseParams & dnparams, bool isRAW, LUTf &gamcurve, float &gam, float &gamthresh, float &gamslope) +SSEFUNCTION void ImProcFunctions::RGB_denoise_infoGamCurve(const procparams::DirPyrDenoiseParams & dnparams, bool isRAW, LUTf &gamcurve, float &gam, float &gamthresh, float &gamslope) { gam = dnparams.gamma; gamthresh = 0.001f; @@ -2995,18 +2998,20 @@ void ImProcFunctions::RGB_denoise_infoGamCurve(const procparams::DirPyrDenoisePa } } - gamslope = exp(log(static_cast(gamthresh)) / gam) / gamthresh; bool denoiseMethodRgb = (dnparams.dmethod == "RGB"); + MyTime t1e, t2e; + t1e.set(); + if (denoiseMethodRgb) { - for (int i = 0; i < 65536; ++i) { - gamcurve[i] = (Color::gamma(static_cast(i) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0)) * 32768.0f; - } + gamslope = exp(log(static_cast(gamthresh)) / gam) / gamthresh; + Color::gammaf2lut(gamcurve, gam, gamthresh, gamslope, 65535.f, 32768.f); } else { - for (int i = 0; i < 65536; ++i) { - gamcurve[i] = (Color::gamman(static_cast(i) / 65535.0, gam)) * 32768.0f; - } + Color::gammanf2lut(gamcurve, gam, 65535.f, 32768.f); } + t2e.set(); + printf("gamcurve in RGB_denoise_infoGamCurve performed in %d usec:\n", t2e.etime(t1e)); + } void ImProcFunctions::calcautodn_info (float &chaut, float &delta, int Nb, int levaut, float maxmax, float lumema, float chromina, int mode, int lissage, float redyel, float skinc, float nsknc) @@ -3424,9 +3429,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise_info(Imagefloat * src, Imagefloat B_ = (*denoiseigamtab)[B_]; //apply gamma noise standard (slider) - R_ = R_ < 65535.0f ? gamcurve[R_] : (Color::gamman(static_cast(R_) / 65535.0, gam) * 32768.0f); - G_ = G_ < 65535.0f ? gamcurve[G_] : (Color::gamman(static_cast(G_) / 65535.0, gam) * 32768.0f); - B_ = B_ < 65535.0f ? gamcurve[B_] : (Color::gamman(static_cast(B_) / 65535.0, gam) * 32768.0f); + R_ = R_ < 65535.f ? gamcurve[R_] : (Color::gammanf(R_ / 65535.f, gam) * 32768.f); + G_ = G_ < 65535.f ? gamcurve[G_] : (Color::gammanf(G_ / 65535.f, gam) * 32768.f); + B_ = B_ < 65535.f ? gamcurve[B_] : (Color::gammanf(B_ / 65535.f, gam) * 32768.f); //true conversion xyz=>Lab float X, Y, Z; Color::rgbxyz(R_, G_, B_, X, Y, Z, wp); @@ -3451,9 +3456,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise_info(Imagefloat * src, Imagefloat float Y = gain * src->g(i, j); float Z = gain * src->b(i, j); - X = X < 65535.0f ? gamcurve[X] : (Color::gamma(static_cast(X) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0) * 32768.0f); - Y = Y < 65535.0f ? gamcurve[Y] : (Color::gamma(static_cast(Y) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0) * 32768.0f); - Z = Z < 65535.0f ? gamcurve[Z] : (Color::gamma(static_cast(Z) / 65535.0, gam, gamthresh, gamslope, 1.0, 0.0) * 32768.0f); + X = X < 65535.f ? gamcurve[X] : (Color::gammaf(X / 65535.f, gam, gamthresh, gamslope) * 32768.f); + Y = Y < 65535.f ? gamcurve[Y] : (Color::gammaf(Y / 65535.f, gam, gamthresh, gamslope) * 32768.f); + Z = Z < 65535.f ? gamcurve[Z] : (Color::gammaf(Z / 65535.f, gam, gamthresh, gamslope) * 32768.f); labdn->a[i1][j1] = (X - Y); labdn->b[i1][j1] = (Y - Z); @@ -3480,9 +3485,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise_info(Imagefloat * src, Imagefloat float btmp = Color::igammatab_srgb[ src->b(i, j) ]; //modification Jacques feb 2013 // gamma slider different from raw - rtmp = rtmp < 65535.0f ? gamcurve[rtmp] : (Color::gamman(static_cast(rtmp) / 65535.0, gam) * 32768.0f); - gtmp = gtmp < 65535.0f ? gamcurve[gtmp] : (Color::gamman(static_cast(gtmp) / 65535.0, gam) * 32768.0f); - btmp = btmp < 65535.0f ? gamcurve[btmp] : (Color::gamman(static_cast(btmp) / 65535.0, gam) * 32768.0f); + rtmp = rtmp < 65535.f ? gamcurve[rtmp] : (Color::gammanf(rtmp / 65535.f, gam) * 32768.f); + gtmp = gtmp < 65535.f ? gamcurve[gtmp] : (Color::gammanf(gtmp / 65535.f, gam) * 32768.f); + btmp = btmp < 65535.f ? gamcurve[btmp] : (Color::gammanf(btmp / 65535.f, gam) * 32768.f); float X, Y, Z; Color::rgbxyz(rtmp, gtmp, btmp, X, Y, Z, wp); diff --git a/rtengine/color.cc b/rtengine/color.cc index 872f47522..fa4a79840 100644 --- a/rtengine/color.cc +++ b/rtengine/color.cc @@ -1478,6 +1478,67 @@ void Color::calcGamma (double pwr, double ts, int mode, int imax, double &gamma0 return; } } +void Color::gammaf2lut (LUTf &gammacurve, float gamma, float start, float slope, float divisor, float factor) +{ +#ifdef __SSE2__ + // SSE2 version is more than 6 times faster than scalar version + vfloat iv = _mm_set_ps(3.f,2.f,1.f,0.f); + vfloat fourv = F2V(4.f); + vfloat gammav = F2V(1.f / gamma); + vfloat slopev = F2V((slope / divisor) * factor); + vfloat divisorv = F2V(xlogf(divisor)); + vfloat factorv = F2V(factor); + vfloat comparev = F2V(start * divisor); + int border = start * divisor; + int border1 = border - (border & 3); + int border2 = border1 + 4; + int i = 0; + for(; i < border1; i += 4) { + vfloat resultv = iv * slopev; + _mm_storeu_ps(&gammacurve[i], resultv); + iv += fourv; + } + for(; i < border2; i += 4) { + vfloat result0v = iv * slopev; + vfloat result1v = xexpf((xlogf(iv) - divisorv) * gammav) * factorv; + _mm_storeu_ps(&gammacurve[i], vself(vmaskf_le(iv, comparev), result0v, result1v)); + iv += fourv; + } + for(; i < 65536; i += 4) { + vfloat resultv = xexpfNoCheck((xlogfNoCheck(iv) - divisorv) * gammav) * factorv; + _mm_storeu_ps(&gammacurve[i], resultv); + iv += fourv; + } +#else + for (int i = 0; i < 65536; ++i) { + gammacurve[i] = gammaf(static_cast(i) / divisor, gamma, start, slope) * factor; + } +#endif +} + +void Color::gammanf2lut (LUTf &gammacurve, float gamma, float divisor, float factor) //standard gamma without slope... +{ +#ifdef __SSE2__ + // SSE2 version is more than 6 times faster than scalar version + vfloat iv = _mm_set_ps(3.f,2.f,1.f,0.f); + vfloat fourv = F2V(4.f); + vfloat gammav = F2V(1.f / gamma); + vfloat divisorv = F2V(xlogf(divisor)); + vfloat factorv = F2V(factor); + vfloat resultv = xexpf((xlogf(iv) - divisorv) * gammav) * factorv; + _mm_storeu_ps(&gammacurve[0], resultv); + iv += fourv; + for(int i=4; i < 65536; i += 4) { + resultv = xexpfNoCheck((xlogfNoCheck(iv) - divisorv) * gammav) * factorv; + _mm_storeu_ps(&gammacurve[i], resultv); + iv += fourv; + } +#else + for (int i = 0; i < 65536; ++i) { + gammacurve[i] = Color::gammanf(static_cast(i) / divisor, gamma) * factor; + } +#endif +} void Color::Lab2XYZ(float L, float a, float b, float &x, float &y, float &z) { diff --git a/rtengine/color.h b/rtengine/color.h index 1ae721e5a..c7699e9c5 100644 --- a/rtengine/color.h +++ b/rtengine/color.h @@ -1104,6 +1104,15 @@ public: { return (x <= start ? x*slope : exp(log(x) / gamma) * mul - add); } + + static inline float gammaf (float x, float gamma, float start, float slope) + { + return x <= start ? x*slope : xexpf(xlogf(x) / gamma); + } + + //fills a LUT of size 65536 using gamma with slope... + static void gammaf2lut (LUTf &gammacurve, float gamma, float start, float slope, float divisor, float factor); + static inline double igamma (double x, double gamma, double start, double slope, double mul, double add) { return (x <= start * slope ? x / slope : exp(log((x + add) / mul) * gamma) ); @@ -1118,7 +1127,7 @@ public: */ static inline double gamman (double x, double gamma) //standard gamma without slope... { - return (x = exp(log(x) / gamma)); + return exp(log(x) / gamma); } /** @@ -1129,9 +1138,10 @@ public: */ static inline float gammanf (float x, float gamma) //standard gamma without slope... { - return (x = xexpf(xlogf(x) / gamma)); + return xexpf(xlogf(x) / gamma); } - + //fills a LUT of size 65536 using gamma without slope... + static void gammanf2lut (LUTf &gammacurve, float gamma, float divisor, float factor); /** * @brief Very simply inverse gamma @@ -1141,7 +1151,7 @@ public: */ static inline double igamman (double x, double gamma) //standard inverse gamma without slope... { - return (x = exp(log(x) * gamma) ); + return exp(log(x) * gamma); } diff --git a/rtengine/dcrop.cc b/rtengine/dcrop.cc index 93aca0f6d..6bf3f2273 100644 --- a/rtengine/dcrop.cc +++ b/rtengine/dcrop.cc @@ -380,7 +380,7 @@ void Crop::update (int todo) } } - if(skip == 1 && params.dirpyrDenoise.enabled && ((settings->leveldnautsimpl == 1 && params.dirpyrDenoise.Cmethod == "AUT") || (settings->leveldnautsimpl == 0 && params.dirpyrDenoise.C2method == "AUTO"))) { + if(skip == 1 && params.dirpyrDenoise.enabled && !parent->denoiseInfoStore.valid && ((settings->leveldnautsimpl == 1 && params.dirpyrDenoise.Cmethod == "AUT") || (settings->leveldnautsimpl == 0 && params.dirpyrDenoise.C2method == "AUTO"))) { MyTime t1aue, t2aue; t1aue.set(); @@ -587,7 +587,7 @@ void Crop::update (int todo) params.dirpyrDenoise.chroma = chM / (autoNR * multip * adjustr); params.dirpyrDenoise.redchro = maxr; params.dirpyrDenoise.bluechro = maxb; - + parent->denoiseInfoStore.valid = true; if(parent->adnListener) { parent->adnListener->chromaChanged(params.dirpyrDenoise.chroma, params.dirpyrDenoise.redchro, params.dirpyrDenoise.bluechro); } diff --git a/rtengine/improccoordinator.cc b/rtengine/improccoordinator.cc index a6354bd56..8925b29e0 100644 --- a/rtengine/improccoordinator.cc +++ b/rtengine/improccoordinator.cc @@ -320,6 +320,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall) ipf.setScale (scale); imgsrc->getImage (currWB, tr, orig_prev, pp, params.toneCurve, params.icm, params.raw); + denoiseInfoStore.valid = false; //ColorTemp::CAT02 (orig_prev, ¶ms) ; // printf("orig_prevW=%d\n scale=%d",orig_prev->width, scale); /* Issue 2785, disabled some 1:1 tools diff --git a/rtengine/improccoordinator.h b/rtengine/improccoordinator.h index 5cc03cb72..a1124ff01 100644 --- a/rtengine/improccoordinator.h +++ b/rtengine/improccoordinator.h @@ -325,6 +325,14 @@ public: { return imgsrc; } + + class denoiseinfostore { + public: + bool valid; + + denoiseinfostore() : valid(false) {}; + } denoiseInfoStore; + }; } #endif diff --git a/rtengine/sleefsseavx.c b/rtengine/sleefsseavx.c index a9f49f143..1b0c9a0ae 100644 --- a/rtengine/sleefsseavx.c +++ b/rtengine/sleefsseavx.c @@ -1275,6 +1275,25 @@ static INLINE vfloat xlogf0(vfloat d) { return x; } +static INLINE vfloat xlogfNoCheck(vfloat d) { // this version does not check input values. Use it only when you know the input values are > 0 e.g. when filling a lookup table + vfloat x, x2, t, m; + vint2 e; + + e = vilogbp1f(vmulf(d, vcast_vf_f(0.7071f))); + m = vldexpf(d, vsubi2(vcast_vi2_i(0), e)); + + x = vdivf(vaddf(vcast_vf_f(-1.0f), m), vaddf(vcast_vf_f(1.0f), m)); + x2 = vmulf(x, x); + + t = vcast_vf_f(0.2371599674224853515625f); + t = vmlaf(t, x2, vcast_vf_f(0.285279005765914916992188f)); + t = vmlaf(t, x2, vcast_vf_f(0.400005519390106201171875f)); + t = vmlaf(t, x2, vcast_vf_f(0.666666567325592041015625f)); + t = vmlaf(t, x2, vcast_vf_f(2.0f)); + + return vaddf(vmulf(x, t), vmulf(vcast_vf_f(0.693147180559945286226764f), vcast_vf_vi2(e))); + +} static INLINE vfloat xexpf(vfloat d) { vint2 q = vrint_vi2_vf(vmulf(d, vcast_vf_f(R_LN2f))); @@ -1299,6 +1318,24 @@ static INLINE vfloat xexpf(vfloat d) { return u; } +static INLINE vfloat xexpfNoCheck(vfloat d) { // this version does not check input values. Use it only when you know the input values are > -104.f e.g. when filling a lookup table + vint2 q = vrint_vi2_vf(vmulf(d, vcast_vf_f(R_LN2f))); + vfloat s, u; + + s = vmlaf(vcast_vf_vi2(q), vcast_vf_f(-L2Uf),d); + s = vmlaf(vcast_vf_vi2(q), vcast_vf_f(-L2Lf),s); + + u = vcast_vf_f(0.00136324646882712841033936f); + u = vmlaf(u, s, vcast_vf_f(0.00836596917361021041870117f)); + u = vmlaf(u, s, vcast_vf_f(0.0416710823774337768554688f)); + u = vmlaf(u, s, vcast_vf_f(0.166665524244308471679688f)); + u = vmlaf(u, s, vcast_vf_f(0.499999850988388061523438f)); + + u = vaddf(vcast_vf_f(1.0f), vmlaf(vmulf(s, s), u, s)); + + return vldexpf(u, q); +} + static INLINE vfloat xcbrtf(vfloat d) { vfloat x, y, q = vcast_vf_f(1.0), t; vint2 e, qu, re; From ef83e6b591a211afe8d4471c6933b3953ae2fd4e Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 7 Sep 2016 23:34:06 +0200 Subject: [PATCH 08/41] Removed StopWatches and corrected some bugs from latest commit --- rtengine/FTblockDN.cc | 19 ------------------- rtengine/dcrop.cc | 26 ++++++++++---------------- rtengine/improccoordinator.h | 10 ++++++---- 3 files changed, 16 insertions(+), 39 deletions(-) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 4ccc63c3a..8229417e4 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -37,8 +37,6 @@ #include "opthelper.h" #include "cplx_wavelet_dec.h" #include "median.h" -#define BENCHMARK -#include "StopWatch.h" #ifdef _OPENMP #include #endif @@ -427,7 +425,6 @@ enum nrquality {QUALITY_STANDARD, QUALITY_HIGH}; SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagefloat * dst, Imagefloat * calclum, float * ch_M, float *max_r, float *max_b, bool isRAW, const procparams::DirPyrDenoiseParams & dnparams, const double expcomp, const NoiseCurve & noiseLCurve, const NoiseCurve & noiseCCurve, float &chaut, float &redaut, float &blueaut, float &maxredaut, float &maxblueaut, float &nresi, float &highresi) { -BENCHFUN //#ifdef _DEBUG MyTime t1e, t2e; t1e.set(); @@ -594,15 +591,11 @@ BENCHFUN LUTf gamcurve(65536, LUT_CLIP_BELOW); float gamslope = exp(log(static_cast(gamthresh)) / gam) / gamthresh; - MyTime t1e, t2e; - t1e.set(); if (denoiseMethodRgb) { Color::gammaf2lut(gamcurve, gam, gamthresh, gamslope, 65535.f, 32768.f); } else { Color::gammanf2lut(gamcurve, gam, 65535.f, 32768.f); } - t2e.set(); - printf("gamcurve performed in %d usec:\n", t2e.etime(t1e)); // inverse gamma transform for output data float igam = 1.f / gam; @@ -611,16 +604,11 @@ BENCHFUN LUTf igamcurve(65536, LUT_CLIP_BELOW); - MyTime t11e, t21e; - t11e.set(); - if (denoiseMethodRgb) { Color::gammaf2lut(igamcurve, igam, igamthresh, igamslope, 32768.f, 65535.f); } else { Color::gammanf2lut(igamcurve, igam, 32768.f, 65535.f); } - t21e.set(); - printf("igamcurve performed in %d usec:\n", t21e.etime(t11e)); const float gain = pow (2.0f, float(expcomp)); float noisevar_Ldetail = SQR(static_cast(SQR(100. - dnparams.Ldetail) + 50.*(100. - dnparams.Ldetail)) * TS * 0.5f); @@ -821,7 +809,6 @@ BENCHFUN {static_cast(wprof[2][0]), static_cast(wprof[2][1]), static_cast(wprof[2][2])} }; - // begin tile processing of image #ifdef _OPENMP #pragma omp parallel num_threads(numthreads) if (numthreads>1) @@ -3000,18 +2987,12 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise_infoGamCurve(const procparams::Dir bool denoiseMethodRgb = (dnparams.dmethod == "RGB"); - MyTime t1e, t2e; - t1e.set(); - if (denoiseMethodRgb) { gamslope = exp(log(static_cast(gamthresh)) / gam) / gamthresh; Color::gammaf2lut(gamcurve, gam, gamthresh, gamslope, 65535.f, 32768.f); } else { Color::gammanf2lut(gamcurve, gam, 65535.f, 32768.f); } - t2e.set(); - printf("gamcurve in RGB_denoise_infoGamCurve performed in %d usec:\n", t2e.etime(t1e)); - } void ImProcFunctions::calcautodn_info (float &chaut, float &delta, int Nb, int levaut, float maxmax, float lumema, float chromina, int mode, int lissage, float redyel, float skinc, float nsknc) diff --git a/rtengine/dcrop.cc b/rtengine/dcrop.cc index 6bf3f2273..1e5aba77c 100644 --- a/rtengine/dcrop.cc +++ b/rtengine/dcrop.cc @@ -191,9 +191,6 @@ void Crop::update (int todo) parent->ipf.Tile_calc (tilesize, overlap, kall, widIm, heiIm, numtiles_W, numtiles_H, tilewidth, tileheight, tileWskip, tileHskip); kall = 0; - float *ch_M = new float [9];//allocate memory - float *max_r = new float [9]; - float *max_b = new float [9]; float *min_b = new float [9]; float *min_r = new float [9]; float *lumL = new float [9]; @@ -462,9 +459,9 @@ void Crop::update (int todo) //printf("DCROP skip=%d cha=%f red=%f bl=%f redM=%f bluM=%f chrom=%f sigm=%f lum=%f\n",skip, chaut,redaut,blueaut, maxredaut, maxblueaut, chromina, sigma, lumema); Nb[hcr * 3 + wcr] = nb; - ch_M[hcr * 3 + wcr] = pondcorrec * chaut; - max_r[hcr * 3 + wcr] = pondcorrec * maxredaut; - max_b[hcr * 3 + wcr] = pondcorrec * maxblueaut; + parent->denoiseInfoStore.ch_M[hcr * 3 + wcr] = pondcorrec * chaut; + parent->denoiseInfoStore.max_r[hcr * 3 + wcr] = pondcorrec * maxredaut; + parent->denoiseInfoStore.max_b[hcr * 3 + wcr] = pondcorrec * maxblueaut; min_r[hcr * 3 + wcr] = pondcorrec * minredaut; min_b[hcr * 3 + wcr] = pondcorrec * minblueaut; lumL[hcr * 3 + wcr] = lumema; @@ -524,20 +521,20 @@ void Crop::update (int todo) int lissage = settings->leveldnliss; for (int k = 0; k < 9; k++) { - float maxmax = max(max_r[k], max_b[k]); - parent->ipf.calcautodn_info (ch_M[k], delta[k], Nb[k], levaut, maxmax, lumL[k], chromC[k], mode, lissage, ry[k], sk[k], pcsk[k]); + float maxmax = max(parent->denoiseInfoStore.max_r[k], parent->denoiseInfoStore.max_b[k]); + parent->ipf.calcautodn_info (parent->denoiseInfoStore.ch_M[k], delta[k], Nb[k], levaut, maxmax, lumL[k], chromC[k], mode, lissage, ry[k], sk[k], pcsk[k]); // printf("ch_M=%f delta=%f\n",ch_M[k], delta[k]); } for (int k = 0; k < 9; k++) { - if(max_r[k] > max_b[k]) { + if(parent->denoiseInfoStore.max_r[k] > parent->denoiseInfoStore.max_b[k]) { Max_R[k] = (delta[k]) / ((autoNRmax * multip * adjustr * lowdenoise) / 2.f); - Min_B[k] = -(ch_M[k] - min_b[k]) / (autoNRmax * multip * adjustr * lowdenoise); + Min_B[k] = -(parent->denoiseInfoStore.ch_M[k] - min_b[k]) / (autoNRmax * multip * adjustr * lowdenoise); Max_B[k] = 0.f; Min_R[k] = 0.f; } else { Max_B[k] = (delta[k]) / ((autoNRmax * multip * adjustr * lowdenoise) / 2.f); - Min_R[k] = - (ch_M[k] - min_r[k]) / (autoNRmax * multip * adjustr * lowdenoise); + Min_R[k] = - (parent->denoiseInfoStore.ch_M[k] - min_r[k]) / (autoNRmax * multip * adjustr * lowdenoise); Min_B[k] = 0.f; Max_R[k] = 0.f; } @@ -545,7 +542,7 @@ void Crop::update (int todo) for (int k = 0; k < 9; k++) { // printf("ch_M= %f Max_R=%f Max_B=%f min_r=%f min_b=%f\n",ch_M[k],Max_R[k], Max_B[k],Min_R[k], Min_B[k]); - chM += ch_M[k]; + chM += parent->denoiseInfoStore.ch_M[k]; MaxBMoy += Max_B[k]; MaxRMoy += Max_R[k]; MinRMoy += Min_R[k]; @@ -644,7 +641,7 @@ void Crop::update (int todo) int kall = 0; float chaut, redaut, blueaut, maxredaut, maxblueaut, nresi, highresi; - parent->ipf.RGB_denoise(kall, origCrop, origCrop, calclum, ch_M, max_r, max_b, parent->imgsrc->isRAW(), /*Roffset,*/ denoiseParams, parent->imgsrc->getDirPyrDenoiseExpComp(), noiseLCurve, noiseCCurve, chaut, redaut, blueaut, maxredaut, maxblueaut, nresi, highresi); + parent->ipf.RGB_denoise(kall, origCrop, origCrop, calclum, parent->denoiseInfoStore.ch_M, parent->denoiseInfoStore.max_r, parent->denoiseInfoStore.max_b, parent->imgsrc->isRAW(), /*Roffset,*/ denoiseParams, parent->imgsrc->getDirPyrDenoiseExpComp(), noiseLCurve, noiseCCurve, chaut, redaut, blueaut, maxredaut, maxblueaut, nresi, highresi); if (parent->adnListener) { parent->adnListener->noiseChanged(nresi, highresi); @@ -665,9 +662,6 @@ void Crop::update (int todo) parent->imgsrc->convertColorSpace(origCrop, params.icm, parent->currWB); - delete [] ch_M; - delete [] max_r; - delete [] max_b; delete [] min_r; delete [] min_b; delete [] lumL; diff --git a/rtengine/improccoordinator.h b/rtengine/improccoordinator.h index a1124ff01..776484791 100644 --- a/rtengine/improccoordinator.h +++ b/rtengine/improccoordinator.h @@ -326,11 +326,13 @@ public: return imgsrc; } - class denoiseinfostore { - public: - bool valid; + struct { + float chM; + float max_r[9]; + float max_b[9]; + float ch_M[9]; + bool valid = false; - denoiseinfostore() : valid(false) {}; } denoiseInfoStore; }; From 5bb20c413e889e397d005357c45003822989f606 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Fri, 9 Sep 2016 16:04:43 +0200 Subject: [PATCH 09/41] Cleaned code, also reduced base memory usage of RT by 1 MB --- rtengine/FTblockDN.cc | 66 +++----------------- rtengine/color.cc | 138 +++++++++++++++++++++++++----------------- rtengine/color.h | 11 ++-- 3 files changed, 95 insertions(+), 120 deletions(-) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 8229417e4..8ff22864c 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -613,36 +613,6 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef const float gain = pow (2.0f, float(expcomp)); float noisevar_Ldetail = SQR(static_cast(SQR(100. - dnparams.Ldetail) + 50.*(100. - dnparams.Ldetail)) * TS * 0.5f); - if (settings->verbose) { - printf("Denoise Lab=%i\n", settings->denoiselabgamma); - } - - // To avoid branches in loops we access the gammatabs by pointers - // modify arbitrary data for Lab..I have test : nothing, gamma 2.6 11 - gamma 4 5 - gamma 5.5 10 - // we can put other as gamma g=2.6 slope=11, etc. - // but noting to do with real gamma !!!: it's only for data Lab # data RGB - // finally I opted fot gamma55 and with options we can change - - LUTf *denoisegamtab; - LUTf *denoiseigamtab; - - switch(settings->denoiselabgamma) { - case 0: - denoisegamtab = &(Color::gammatab_26_11); - denoiseigamtab = &(Color::igammatab_26_11); - break; - - case 1: - denoisegamtab = &(Color::gammatab_4); - denoiseigamtab = &(Color::igammatab_4); - break; - - default: - denoisegamtab = &(Color::gammatab_55); - denoiseigamtab = &(Color::igammatab_55); - break; - } - array2D tilemask_in(TS, TS); array2D tilemask_out(TS, TS); @@ -907,9 +877,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef float G_ = gain * src->g(i, j); float B_ = gain * src->b(i, j); - R_ = (*denoiseigamtab)[R_]; - G_ = (*denoiseigamtab)[G_]; - B_ = (*denoiseigamtab)[B_]; + R_ = Color::denoiseIGammaTab[R_]; + G_ = Color::denoiseIGammaTab[G_]; + B_ = Color::denoiseIGammaTab[B_]; //apply gamma noise standard (slider) R_ = R_ < 65535.f ? gamcurve[R_] : (Color::gammanf(R_ / 65535.f, gam) * 32768.f); @@ -1602,9 +1572,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise(int kall, Imagefloat * src, Imagef b_ = b_ < 32768.f ? igamcurve[b_] : (Color::gammanf(b_ / 32768.f, igam) * 65535.f); //readapt arbitrary gamma (inverse from beginning) - r_ = (*denoisegamtab)[r_]; - g_ = (*denoisegamtab)[g_]; - b_ = (*denoisegamtab)[b_]; + r_ = Color::denoiseGammaTab[r_]; + g_ = Color::denoiseGammaTab[g_]; + b_ = Color::denoiseGammaTab[b_]; if (numtiles == 1) { dsttmp->r(i, j) = newGain * r_; @@ -3242,24 +3212,6 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise_info(Imagefloat * src, Imagefloat int nb = 0; int comptlevel = 0; - // To avoid branches in loops we access the gammatabs by pointers - LUTf *denoiseigamtab; - - switch(settings->denoiselabgamma) { - case 0: - denoiseigamtab = &(Color::igammatab_26_11); - break; - - case 1: - denoiseigamtab = &(Color::igammatab_4); - break; - - default: - denoiseigamtab = &(Color::igammatab_55); - break; - } - - for (int tiletop = 0; tiletop < imheight; tiletop += tileHskip) { for (int tileleft = 0; tileleft < imwidth; tileleft += tileWskip) { @@ -3405,9 +3357,9 @@ SSEFUNCTION void ImProcFunctions::RGB_denoise_info(Imagefloat * src, Imagefloat float G_ = gain * src->g(i, j); float B_ = gain * src->b(i, j); - R_ = (*denoiseigamtab)[R_]; - G_ = (*denoiseigamtab)[G_]; - B_ = (*denoiseigamtab)[B_]; + R_ = Color::denoiseIGammaTab[R_]; + G_ = Color::denoiseIGammaTab[G_]; + B_ = Color::denoiseIGammaTab[B_]; //apply gamma noise standard (slider) R_ = R_ < 65535.f ? gamcurve[R_] : (Color::gammanf(R_ / 65535.f, gam) * 32768.f); diff --git a/rtengine/color.cc b/rtengine/color.cc index fa4a79840..e19cfb616 100644 --- a/rtengine/color.cc +++ b/rtengine/color.cc @@ -41,15 +41,10 @@ LUTf Color::igammatab_srgb; LUTf Color::igammatab_srgb1; LUTf Color::gammatab_srgb; LUTf Color::gammatab_srgb1; -// LUTf Color::igammatab_709; -// LUTf Color::gammatab_709; -LUTf Color::igammatab_55; -LUTf Color::gammatab_55; -LUTf Color::igammatab_4; -LUTf Color::gammatab_4; -LUTf Color::igammatab_26_11; -LUTf Color::gammatab_26_11; +LUTf Color::denoiseGammaTab; +LUTf Color::denoiseIGammaTab; + LUTf Color::igammatab_24_17; LUTf Color::gammatab_24_17a; LUTf Color::gammatab_13_2; @@ -148,13 +143,10 @@ void Color::init () igammatab_srgb1(maxindex, 0); gammatab_srgb(maxindex, 0); gammatab_srgb1(maxindex, 0); - igammatab_55(maxindex, 0); - gammatab_55(maxindex, 0); - igammatab_4(maxindex, 0); - gammatab_4(maxindex, 0); - igammatab_26_11(maxindex, 0); - gammatab_26_11(maxindex, 0); + denoiseGammaTab(maxindex, 0); + denoiseIGammaTab(maxindex, 0); + igammatab_24_17(maxindex, 0); gammatab_24_17a(maxindex, LUT_CLIP_ABOVE | LUT_CLIP_BELOW); gammatab_13_2(maxindex, 0); @@ -193,6 +185,7 @@ void Color::init () { gammatab_srgb[i] = gammatab_srgb1[i] = gamma2(i / 65535.0); } + gammatab_srgb *= 65535.f; gamma2curve.share(gammatab_srgb, LUT_CLIP_BELOW | LUT_CLIP_ABOVE); // shares the buffer with gammatab_srgb but has different clip flags } @@ -200,9 +193,11 @@ void Color::init () #pragma omp section #endif { - for (int i = 0; i < maxindex; i++) { + for (int i = 0; i < maxindex; i++) + { igammatab_srgb[i] = igammatab_srgb1[i] = igamma2 (i / 65535.0); } + igammatab_srgb *= 65535.f; } #ifdef _OPENMP @@ -211,42 +206,74 @@ void Color::init () { double rsRGBGamma = 1.0 / sRGBGamma; - for (int i = 0; i < maxindex; i++) { + for (int i = 0; i < maxindex; i++) + { double val = pow (i / 65535.0, rsRGBGamma); gammatab[i] = 65535.0 * val; gammatabThumb[i] = (unsigned char)(255.0 * val); } } + #ifdef _OPENMP #pragma omp section #endif + // modify arbitrary data for Lab..I have test : nothing, gamma 2.6 11 - gamma 4 5 - gamma 5.5 10 + // we can put other as gamma g=2.6 slope=11, etc. + // but noting to do with real gamma !!!: it's only for data Lab # data RGB + // finally I opted for gamma55 and with options we can change - for (int i = 0; i < maxindex; i++) { - gammatab_55[i] = 65535.0 * gamma55 (i / 65535.0); + switch(settings->denoiselabgamma) { + case 0: + for (int i = 0; i < maxindex; i++) { + denoiseGammaTab[i] = 65535.0 * gamma26_11 (i / 65535.0); + } + + break; + + case 1: + for (int i = 0; i < maxindex; i++) { + denoiseGammaTab[i] = 65535.0 * gamma4 (i / 65535.0); + } + + break; + + default: + for (int i = 0; i < maxindex; i++) { + denoiseGammaTab[i] = 65535.0 * gamma55 (i / 65535.0); + } + + break; } #ifdef _OPENMP #pragma omp section #endif + // modify arbitrary data for Lab..I have test : nothing, gamma 2.6 11 - gamma 4 5 - gamma 5.5 10 + // we can put other as gamma g=2.6 slope=11, etc. + // but noting to do with real gamma !!!: it's only for data Lab # data RGB + // finally I opted for gamma55 and with options we can change - for (int i = 0; i < maxindex; i++) { - igammatab_55[i] = 65535.0 * igamma55 (i / 65535.0); - } + switch(settings->denoiselabgamma) { + case 0: + for (int i = 0; i < maxindex; i++) { + denoiseIGammaTab[i] = 65535.0 * igamma26_11 (i / 65535.0); + } -#ifdef _OPENMP - #pragma omp section -#endif + break; - for (int i = 0; i < maxindex; i++) { - gammatab_4[i] = 65535.0 * gamma4 (i / 65535.0); - } + case 1: + for (int i = 0; i < maxindex; i++) { + denoiseIGammaTab[i] = 65535.0 * igamma4 (i / 65535.0); + } -#ifdef _OPENMP - #pragma omp section -#endif + break; - for (int i = 0; i < maxindex; i++) { - igammatab_4[i] = 65535.0 * igamma4 (i / 65535.0); + default: + for (int i = 0; i < maxindex; i++) { + denoiseIGammaTab[i] = 65535.0 * igamma55 (i / 65535.0); + } + + break; } #ifdef _OPENMP @@ -297,22 +324,6 @@ void Color::init () igammatab_145_3[i] = 65535.0 * igamma145_3 (i / 65535.0); } -#ifdef _OPENMP - #pragma omp section -#endif - - for (int i = 0; i < maxindex; i++) { - gammatab_26_11[i] = 65535.0 * gamma26_11 (i / 65535.0); - } - -#ifdef _OPENMP - #pragma omp section -#endif - - for (int i = 0; i < maxindex; i++) { - igammatab_26_11[i] = 65535.0 * igamma26_11 (i / 65535.0); - } - #ifdef _OPENMP #pragma omp section #endif @@ -1482,7 +1493,7 @@ void Color::gammaf2lut (LUTf &gammacurve, float gamma, float start, float slope, { #ifdef __SSE2__ // SSE2 version is more than 6 times faster than scalar version - vfloat iv = _mm_set_ps(3.f,2.f,1.f,0.f); + vfloat iv = _mm_set_ps(3.f, 2.f, 1.f, 0.f); vfloat fourv = F2V(4.f); vfloat gammav = F2V(1.f / gamma); vfloat slopev = F2V((slope / divisor) * factor); @@ -1493,26 +1504,32 @@ void Color::gammaf2lut (LUTf &gammacurve, float gamma, float start, float slope, int border1 = border - (border & 3); int border2 = border1 + 4; int i = 0; + for(; i < border1; i += 4) { vfloat resultv = iv * slopev; - _mm_storeu_ps(&gammacurve[i], resultv); + STVFU(gammacurve[i], resultv); iv += fourv; } + for(; i < border2; i += 4) { vfloat result0v = iv * slopev; vfloat result1v = xexpf((xlogf(iv) - divisorv) * gammav) * factorv; - _mm_storeu_ps(&gammacurve[i], vself(vmaskf_le(iv, comparev), result0v, result1v)); + STVFU(gammacurve[i], vself(vmaskf_le(iv, comparev), result0v, result1v)); iv += fourv; } + for(; i < 65536; i += 4) { vfloat resultv = xexpfNoCheck((xlogfNoCheck(iv) - divisorv) * gammav) * factorv; - _mm_storeu_ps(&gammacurve[i], resultv); + STVFU(gammacurve[i], resultv); iv += fourv; } + #else + for (int i = 0; i < 65536; ++i) { gammacurve[i] = gammaf(static_cast(i) / divisor, gamma, start, slope) * factor; } + #endif } @@ -1520,23 +1537,30 @@ void Color::gammanf2lut (LUTf &gammacurve, float gamma, float divisor, float fac { #ifdef __SSE2__ // SSE2 version is more than 6 times faster than scalar version - vfloat iv = _mm_set_ps(3.f,2.f,1.f,0.f); + vfloat iv = _mm_set_ps(3.f, 2.f, 1.f, 0.f); vfloat fourv = F2V(4.f); vfloat gammav = F2V(1.f / gamma); vfloat divisorv = F2V(xlogf(divisor)); vfloat factorv = F2V(factor); + + // first input value is zero => we have to use the xlogf function which checks this vfloat resultv = xexpf((xlogf(iv) - divisorv) * gammav) * factorv; - _mm_storeu_ps(&gammacurve[0], resultv); + STVFU(gammacurve[0], resultv); iv += fourv; - for(int i=4; i < 65536; i += 4) { + + // inside the loop we can use xlogfNoCheck and xexpfNoCheck because we know about the input values + for(int i = 4; i < 65536; i += 4) { resultv = xexpfNoCheck((xlogfNoCheck(iv) - divisorv) * gammav) * factorv; - _mm_storeu_ps(&gammacurve[i], resultv); + STVFU(gammacurve[i], resultv); iv += fourv; } + #else + for (int i = 0; i < 65536; ++i) { gammacurve[i] = Color::gammanf(static_cast(i) / divisor, gamma) * factor; } + #endif } @@ -2204,6 +2228,7 @@ void Color::gamutLchonly (float HH, float2 sincosval, float &Lprov1, float &Chpr neg = false, more_rgb = false; #endif float ChprovSave = Chprov1; + do { inGamut = true; @@ -2226,6 +2251,7 @@ void Color::gamutLchonly (float HH, float2 sincosval, float &Lprov1, float &Chpr #ifdef _DEBUG neg = true; #endif + if (isnan(HH)) { float atemp = ChprovSave * sincosval.y * 327.68; float btemp = ChprovSave * sincosval.x * 327.68; diff --git a/rtengine/color.h b/rtengine/color.h index c7699e9c5..0f6b24797 100644 --- a/rtengine/color.h +++ b/rtengine/color.h @@ -132,13 +132,10 @@ public: static LUTf igammatab_srgb1; static LUTf gammatab_srgb; static LUTf gammatab_srgb1; - static LUTf igammatab_55; - static LUTf gammatab_55; - static LUTf igammatab_4; - static LUTf gammatab_4; - static LUTf igammatab_26_11; - static LUTf gammatab_26_11; + static LUTf denoiseGammaTab; + static LUTf denoiseIGammaTab; + static LUTf igammatab_24_17; static LUTf gammatab_24_17a; static LUTf gammatab_13_2; @@ -1107,7 +1104,7 @@ public: static inline float gammaf (float x, float gamma, float start, float slope) { - return x <= start ? x*slope : xexpf(xlogf(x) / gamma); + return x <= start ? x * slope : xexpf(xlogf(x) / gamma); } //fills a LUT of size 65536 using gamma with slope... From d564d17425e2677bf1f24b77088cb7e61957fc09 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Fri, 9 Sep 2016 16:36:18 +0200 Subject: [PATCH 10/41] mentioned the author of the sleef library in the header of the sleef source files, removed unused sleef.h --- rtengine/helperavx.h | 6 +++++ rtengine/helpersse2.h | 9 ++++++++ rtengine/sleef.c | 9 ++++++++ rtengine/sleef.h | 51 ------------------------------------------ rtengine/sleefsseavx.c | 10 +++++++++ 5 files changed, 34 insertions(+), 51 deletions(-) delete mode 100644 rtengine/sleef.h diff --git a/rtengine/helperavx.h b/rtengine/helperavx.h index eb32277c3..528760a92 100644 --- a/rtengine/helperavx.h +++ b/rtengine/helperavx.h @@ -1,3 +1,9 @@ +//////////////////////////////////////////////////////////////// +// +// this code was taken from http://shibatch.sourceforge.net/ +// Many thanks to the author: Naoki Shibata +// +//////////////////////////////////////////////////////////////// #ifndef __AVX__ #error Please specify -mavx. #endif diff --git a/rtengine/helpersse2.h b/rtengine/helpersse2.h index 0f1fc5759..23dd016fa 100644 --- a/rtengine/helpersse2.h +++ b/rtengine/helpersse2.h @@ -1,3 +1,12 @@ +//////////////////////////////////////////////////////////////// +// +// this code was taken from http://shibatch.sourceforge.net/ +// Many thanks to the author of original version: Naoki Shibata +// +// This version contains modifications made by Ingo Weyrich +// +//////////////////////////////////////////////////////////////// + #ifndef __SSE2__ #error Please specify -msse2. #endif diff --git a/rtengine/sleef.c b/rtengine/sleef.c index 2377aea79..bc38a3cfb 100644 --- a/rtengine/sleef.c +++ b/rtengine/sleef.c @@ -1,3 +1,12 @@ +//////////////////////////////////////////////////////////////// +// +// this code was taken from http://shibatch.sourceforge.net/ +// Many thanks to the author of original version: Naoki Shibata +// +// This version contains modifications made by Ingo Weyrich +// +//////////////////////////////////////////////////////////////// + #ifndef _SLEEFC_ #define _SLEEFC_ diff --git a/rtengine/sleef.h b/rtengine/sleef.h deleted file mode 100644 index 101a4faff..000000000 --- a/rtengine/sleef.h +++ /dev/null @@ -1,51 +0,0 @@ -typedef struct { - double x, y; -} double2; - -typedef struct { - float x, y; -} float2; - -double xsin(double d); -double xcos(double d); -double2 xsincos(double d); -double xtan(double d); -double xasin(double s); -double xacos(double s); -double xatan(double s); -double xatan2(double y, double x); -double xlog(double d); -double xexp(double d); -double xpow(double x, double y); - -double xsinh(double x); -double xcosh(double x); -double xtanh(double x); -double xasinh(double x); -double xacosh(double x); -double xatanh(double x); -double xldexp(double x, int q); -int xilogb(double d); - -double xfma(double x, double y, double z); -double xsqrt(double d); -double xcbrt(double d); - -double xexp2(double a); -double xexp10(double a); -double xexpm1(double a); -double xlog10(double a); -double xlog1p(double a); - -float xsinf(float d); -float xcosf(float d); -float2 xsincosf(float d); -float xtanf(float d); -float xasinf(float s); -float xacosf(float s); -float xatanf(float s); -float xatan2f(float y, float x); -float xlogf(float d); -float xexpf(float d); -float xpowf(float x, float y); -float xcbrtf(float d); diff --git a/rtengine/sleefsseavx.c b/rtengine/sleefsseavx.c index 1b0c9a0ae..a55fcf897 100644 --- a/rtengine/sleefsseavx.c +++ b/rtengine/sleefsseavx.c @@ -1,3 +1,13 @@ +//////////////////////////////////////////////////////////////// +// +// this code was taken from http://shibatch.sourceforge.net/ +// Many thanks to the author of original version: Naoki Shibata +// +// This version contains modifications made by Ingo Weyrich +// +//////////////////////////////////////////////////////////////// + + #ifndef SLEEFSSEAVX #define SLEEFSSEAVX From 344d97537816e0e799087a73839e17826d43077f Mon Sep 17 00:00:00 2001 From: heckflosse Date: Fri, 9 Sep 2016 21:36:37 +0200 Subject: [PATCH 11/41] Removed stopwatch --- rtengine/color.cc | 6 +++--- rtengine/improcfun.cc | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/rtengine/color.cc b/rtengine/color.cc index 66887f550..171a7efcd 100644 --- a/rtengine/color.cc +++ b/rtengine/color.cc @@ -887,7 +887,7 @@ void Color::xyz2rgb (vfloat x, vfloat y, vfloat z, vfloat &r, vfloat &g, vfloat #ifdef __SSE2__ void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb) { - // correct gamma for black and white image : pseudo TRC curve of ICC profil + // correct gamma for black and white image : pseudo TRC curve of ICC profile vfloat rgbv = _mm_set_ps(0.f, r, r, r); // input channel is always r vfloat gammabwv = _mm_set_ps(0.f, gammabwb, gammabwg, gammabwr); vfloat c65535v = F2V(65535.f); @@ -903,7 +903,7 @@ void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gamm } void Color::trcGammaBWRow (float *r, float *g, float *b, int width, float gammabwr, float gammabwg, float gammabwb) { - // correct gamma for black and white image : pseudo TRC curve of ICC profil + // correct gamma for black and white image : pseudo TRC curve of ICC profile vfloat c65535v = F2V(65535.f); vfloat gammabwrv = F2V(gammabwr); vfloat gammabwgv = F2V(gammabwg); @@ -931,7 +931,7 @@ void Color::trcGammaBWRow (float *r, float *g, float *b, int width, float gammab #else void Color::trcGammaBW (float &r, float &g, float &b, float gammabwr, float gammabwg, float gammabwb) { - // correct gamma for black and white image : pseudo TRC curve of ICC profil + // correct gamma for black and white image : pseudo TRC curve of ICC profile float in = r; // input channel is always r in /= 65535.0f; in = max(in, 0.f); diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 7fcee7512..3d3d9de9c 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -40,7 +40,7 @@ #include "improccoordinator.h" #include "clutstore.h" #include "ciecam02.h" -#define BENCHMARK +//#define BENCHMARK #include "StopWatch.h" #include "../rtgui/ppversion.h" #include "../rtgui/guiutils.h" @@ -4132,7 +4132,7 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer #endif } - } else if (algm == 1) { //Luminance mixer in Lab mode to avoid artifacts + } else if (algm == 1) { //Luminance mixer in Lab mode to avoid artefacts for (int i = istart, ti = 0; i < tH; i++, ti++) { for (int j = jstart, tj = 0; j < tW; j++, tj++) { //rgb => xyz From 3ffe983140ecb59966a3b929f8fbb196d452c2a1 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Fri, 9 Sep 2016 21:54:51 +0200 Subject: [PATCH 12/41] Small code cleanups --- rtengine/FTblockDN.cc | 4 ++-- rtengine/improccoordinator.h | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 8ff22864c..6c608cfc9 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -2106,7 +2106,7 @@ float ImProcFunctions::MadMax(float * DataList, int & max, int datalen) float ImProcFunctions::Mad(float * DataList, const int datalen) { - if(datalen <= 0) { // Avoid possible buffer underrun + if(datalen <= 1) { // Avoid possible buffer underrun return 0; } @@ -2135,7 +2135,7 @@ float ImProcFunctions::Mad(float * DataList, const int datalen) float ImProcFunctions::MadRgb(float * DataList, const int datalen) { - if(datalen <= 0) { // Avoid possible buffer underrun + if(datalen <= 1) { // Avoid possible buffer underrun return 0; } diff --git a/rtengine/improccoordinator.h b/rtengine/improccoordinator.h index 776484791..0fb0041f3 100644 --- a/rtengine/improccoordinator.h +++ b/rtengine/improccoordinator.h @@ -326,12 +326,13 @@ public: return imgsrc; } - struct { + struct DenoiseInfoStore { + DenoiseInfoStore () : valid(false) {} float chM; float max_r[9]; float max_b[9]; float ch_M[9]; - bool valid = false; + bool valid; } denoiseInfoStore; From a7dc063f35580ff7430d8954f620b6666ce03d1b Mon Sep 17 00:00:00 2001 From: heckflosse Date: Sat, 10 Sep 2016 17:58:07 +0200 Subject: [PATCH 13/41] Added Canon EOS 5D Mark IV to camconst.json, kudos to IliasG --- rtengine/camconst.json | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/rtengine/camconst.json b/rtengine/camconst.json index f5a9e0118..280efc26f 100644 --- a/rtengine/camconst.json +++ b/rtengine/camconst.json @@ -500,6 +500,36 @@ Quality X: unknown, ie we knowing to little about the camera properties to know } }, + { // Quality C, Color Matrix same as 80D (color model 13) + // White Levels not properly indicated (look same as 80D's so copied from there), aperture scaling missing, scaling factors are guessed + "make_model": "Canon EOS 5D Mark IV", + "dcraw_matrix": [ 7457,-671,-937,-4849,12495,2643,-1213,2354,5492 ], // 80D, DNG_V9.5 D65 + "raw_crop": [ 136, 42, 6740, 4500 ], // full size 6880x4544, official crop 148,54,6867,4533 + "masked_areas": [ 54, 4, 4534, 132 ], + "ranges": { + "white": [ + { "iso": [ 100, 125, 200, 250 ], "levels": 16200 }, // nominal 16383, LENR blue 16243 + { "iso": [ 160 ], "levels": 13000 }, // nominal 13097, + { "iso": [ 320, 640, 1250, 2500, 5000, 10000 ], "levels": 13200 }, // G1,G2 13415 + { "iso": [ 400, 500, 800, 1000, 1600, 2000, 3200, 4000 ], "levels": 16150 }, // nominal 16383, LENR ISO3200 16150 + { "iso": [ 6400, 8000, 12800, 16000, 25600 ], "levels": 16000 } // R,G1,G2 16383, B 16243, LENR B 16000 + ], + "white_max": 16383, + "aperture_scaling": [ + /* note: need for more data to properly fill all scale factors */ + { "aperture": 1.4, "scale_factor": 1.200 }, // guessed + { "aperture": 1.6, "scale_factor": 1.080 }, // guessed + { "aperture": 1.8, "scale_factor": 1.055 }, // guessed + { "aperture": 2.0, "scale_factor": 1.030 }, // guessed + { "aperture": 2.2, "scale_factor": 1.025 }, // guessed + { "aperture": 2.5, "scale_factor": 1.020 }, // guessed + { "aperture": 2.8, "scale_factor": 1.000 }, // + { "aperture": 3.2, "scale_factor": 1.000 }, // + { "aperture": 3.5, "scale_factor": 1.000 } // + ] + } + }, + { // Quality C, intermediate ISO samples missing but safely guessed, aperture scaling measures missing "make_model": [ "Canon EOS 5DS R", "Canon EOS 5DS" ], // "dcraw_matrix": [ 6848,-1661,-221,-3904,10931,3434,-470,1251,6039 ], // DNG_V9.0 A From 1c17be663bed1f5f3081ae9884a4c4af56d0675a Mon Sep 17 00:00:00 2001 From: heckflosse Date: Sun, 11 Sep 2016 23:49:37 +0200 Subject: [PATCH 14/41] fixes #3425, A combination of settings in Wavelet's Edge Sharpnes tool crashes RawTherapee --- rtengine/ipwavelet.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rtengine/ipwavelet.cc b/rtengine/ipwavelet.cc index 0f09f1ddd..93e4da318 100644 --- a/rtengine/ipwavelet.cc +++ b/rtengine/ipwavelet.cc @@ -2753,13 +2753,13 @@ void ImProcFunctions::ContAllL (float *koeLi[12], float *maxkoeLi, bool lipschit if (cp.reinforce == 3) { if(rad < lim0 / 60.f && level == 0) { - expkoef *= repart; //reduce effect for low values of rad and level=0==> quasi only level 1 is effective + expkoef *= abs(repart); //reduce effect for low values of rad and level=0==> quasi only level 1 is effective } } if (cp.reinforce == 1) { if(rad < lim0 / 60.f && level == 1) { - expkoef /= repart; //increase effect for low values of rad and level=1==> quasi only level 0 is effective + expkoef /= abs(repart); //increase effect for low values of rad and level=1==> quasi only level 0 is effective } } From 6b769fb13315fb2c55def4449ce23a929c77e2d2 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Mon, 12 Sep 2016 12:54:46 +0200 Subject: [PATCH 15/41] Correction to last commit --- rtengine/ipwavelet.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rtengine/ipwavelet.cc b/rtengine/ipwavelet.cc index 93e4da318..d5aa54890 100644 --- a/rtengine/ipwavelet.cc +++ b/rtengine/ipwavelet.cc @@ -2759,7 +2759,7 @@ void ImProcFunctions::ContAllL (float *koeLi[12], float *maxkoeLi, bool lipschit if (cp.reinforce == 1) { if(rad < lim0 / 60.f && level == 1) { - expkoef /= abs(repart); //increase effect for low values of rad and level=1==> quasi only level 0 is effective + expkoef /= repart; //increase effect for low values of rad and level=1==> quasi only level 0 is effective } } From 298e91b1a041bd0000c38032f0379054c6ee23f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Wed, 14 Sep 2016 21:00:15 +0200 Subject: [PATCH 16/41] Fix "FocusDistance*"-EXIF for Canon (#3422) Kudos to @cm7695 for finding and fixing! --- rtexif/canonattribs.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rtexif/canonattribs.cc b/rtexif/canonattribs.cc index e013b2534..692133a4b 100644 --- a/rtexif/canonattribs.cc +++ b/rtexif/canonattribs.cc @@ -1844,8 +1844,6 @@ const TagAttrib canonShotInfoAttribs[] = { {0, AC_WRITE, 0, 0, 16, AUTO, "AutoExposureBracketing", &caAutoExposureBracketingInterpreter}, {0, AC_WRITE, 0, 0, 17, AUTO, "AEBBracketValue", &stdInterpreter}, {0, AC_WRITE, 0, 0, 18, AUTO, "ControlMode", &caControModeInterpreter}, - {0, AC_WRITE, 0, 0, 19, AUTO, "FocusDistanceUpper", &caFocusDistanceInterpreter}, - {0, AC_WRITE, 0, 0, 20, AUTO, "FocusDistanceLower", &caFocusDistanceInterpreter}, {0, AC_WRITE, 0, 0, 21, AUTO, "FNumber" , &caApertureInterpreter}, {0, AC_WRITE, 0, 0, 22, AUTO, "ExposureTime", &caExposureTimeInterpreter}, {0, AC_WRITE, 0, 0, 24, AUTO, "BulbDuration", &stdInterpreter}, @@ -1872,6 +1870,8 @@ const TagAttrib canonFileInfoAttribs[] = { {0, AC_WRITE, 0, 0, 14, AUTO, "FilterEffect" , &caFilterEffectInterpreter}, {0, AC_WRITE, 0, 0, 15, AUTO, "ToningEffect" , &caToningEffectInterpreter}, {0, AC_WRITE, 0, 0, 19, AUTO, "LiveViewShooting" , &caOnOffInterpreter}, + {0, AC_WRITE, 0, 0, 20, AUTO, "FocusDistanceUpper", &caFocusDistanceInterpreter}, + {0, AC_WRITE, 0, 0, 21, AUTO, "FocusDistanceLower", &caFocusDistanceInterpreter}, {0, AC_WRITE, 0, 0, 25, AUTO, "FlashExposureLock" , &caOnOffInterpreter}, { -1, AC_DONTWRITE, 0, 0, 0, AUTO, "", NULL}, }; From cb034284be3f33921952dd28acd6c0fa951b3e1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Wed, 14 Sep 2016 21:36:44 +0200 Subject: [PATCH 17/41] Use full range in `ImageDatas::convertTo<>` (#3429) Kudos to @mmmtok for finding and fixing! --- rtengine/iimage.h | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/rtengine/iimage.h b/rtengine/iimage.h index 1f82ea3e6..2eded8208 100644 --- a/rtengine/iimage.h +++ b/rtengine/iimage.h @@ -58,10 +58,10 @@ enum TypeInterpolation { TI_Nearest, TI_Bilinear }; class ImageDatas : virtual public ImageDimensions { public: - template - void convertTo (S srcValue, D &dstValue) + template + void convertTo(S src, D& dst) const { - dstValue = static_cast(srcValue); + dst = src; } // parameters that will never be used, replaced by the subclasses r, g and b parameters! @@ -100,30 +100,30 @@ public: }; -template <> -inline void ImageDatas::convertTo (const unsigned short srcValue, unsigned char &dstValue) +template<> +inline void ImageDatas::convertTo(unsigned short src, unsigned char& dst) const { - dstValue = (unsigned char)(srcValue >> 8); + dst = src / 257; } -template <> -inline void ImageDatas::convertTo (const unsigned char srcValue, int &dstValue) +template<> +inline void ImageDatas::convertTo(unsigned char src, int& dst) const { - dstValue = (int)(srcValue) << 8; + dst = static_cast(src) * 257; } -template <> -inline void ImageDatas::convertTo (const unsigned char srcValue, unsigned short &dstValue) +template<> +inline void ImageDatas::convertTo(unsigned char src, unsigned short& dst) const { - dstValue = (unsigned short)(srcValue) << 8; + dst = static_cast(src) * 257; } -template <> -inline void ImageDatas::convertTo (const float srcValue, unsigned char &dstValue) +template<> +inline void ImageDatas::convertTo(float src, unsigned char& dst) const { - dstValue = (unsigned char)( (unsigned short)(srcValue) >> 8 ); + dst = static_cast(src) / 257; } -template <> -inline void ImageDatas::convertTo (const unsigned char srcValue, float &dstValue) +template<> +inline void ImageDatas::convertTo(unsigned char src, float& dst) const { - dstValue = float( (unsigned short)(srcValue) << 8 ); + dst = static_cast(src) * 257; } // -------------------------------------------------------------------- From 309b823f93d426367d192b2a9e5a5a03e5345b7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Sat, 17 Sep 2016 17:32:46 +0200 Subject: [PATCH 18/41] Fix range in `Image*` classes (#3429) --- rtengine/image16.cc | 36 ++++++++++++++++++------------------ rtengine/image8.cc | 8 ++++---- rtengine/imagefloat.cc | 20 ++++++++++---------- 3 files changed, 32 insertions(+), 32 deletions(-) diff --git a/rtengine/image16.cc b/rtengine/image16.cc index 937e2d19d..9d41f96c5 100644 --- a/rtengine/image16.cc +++ b/rtengine/image16.cc @@ -28,9 +28,9 @@ namespace void getScanline8 (const uint16_t *red, const uint16_t *green, const uint16_t *blue, int width, unsigned char* buffer) { for (int i = 0, ix = 0; i < width; i++) { - buffer[ix++] = red[i] >> 8; - buffer[ix++] = green[i] >> 8; - buffer[ix++] = blue[i] >> 8; + buffer[ix++] = red[i] / 257; + buffer[ix++] = green[i] / 257; + buffer[ix++] = blue[i] / 257; } } @@ -92,10 +92,10 @@ void Image16::setScanline (int row, unsigned char* buffer, int bps, float *minVa case (IIOSF_UNSIGNED_CHAR): { int ix = 0; - for (int i = 0; i < width; i++) { - r(row, i) = (unsigned short)(buffer[ix++]) << 8; - g(row, i) = (unsigned short)(buffer[ix++]) << 8; - b(row, i) = (unsigned short)(buffer[ix++]) << 8; + for (int i = 0; i < width; ++i) { + r(row, i) = static_cast(buffer[ix++]) * 257; + g(row, i) = static_cast(buffer[ix++]) * 257; + b(row, i) = static_cast(buffer[ix++]) * 257; } break; @@ -105,7 +105,7 @@ void Image16::setScanline (int row, unsigned char* buffer, int bps, float *minVa unsigned short* sbuffer = (unsigned short*) buffer; int ix = 0; - for (int i = 0; i < width; i++) { + for (int i = 0; i < width; ++i) { r(row, i) = sbuffer[ix++]; g(row, i) = sbuffer[ix++]; b(row, i) = sbuffer[ix++]; @@ -298,11 +298,11 @@ Image16::to8() { Image8* img8 = new Image8(width, height); - for ( int h = 0; h < height; ++h ) { - for ( int w = 0; w < width; ++w ) { - img8->r(h, w) = (unsigned char)( r(h, w) >> 8); - img8->g(h, w) = (unsigned char)( g(h, w) >> 8); - img8->b(h, w) = (unsigned char)( b(h, w) >> 8); + for (int h = 0; h < height; ++h) { + for (int w = 0; w < width; ++w) { + img8->r(h, w) = r(h, w) / 257; + img8->g(h, w) = g(h, w) / 257; + img8->b(h, w) = b(h, w) / 257; } } @@ -314,11 +314,11 @@ Image16::tofloat() { Imagefloat* imgfloat = new Imagefloat(width, height); - for ( int h = 0; h < height; ++h ) { - for ( int w = 0; w < width; ++w ) { - imgfloat->r(h, w) = (float)r(h, w); - imgfloat->g(h, w) = (float)g(h, w); - imgfloat->b(h, w) = (float)b(h, w); + for (int h = 0; h < height; ++h) { + for (int w = 0; w < width; ++w) { + imgfloat->r(h, w) = r(h, w); + imgfloat->g(h, w) = g(h, w); + imgfloat->b(h, w) = b(h, w); } } diff --git a/rtengine/image8.cc b/rtengine/image8.cc index b27851a76..1cc648eb5 100644 --- a/rtengine/image8.cc +++ b/rtengine/image8.cc @@ -49,8 +49,8 @@ void Image8::getScanline (int row, unsigned char* buffer, int bps) } else if (bps == 16) { unsigned short* sbuffer = (unsigned short*) buffer; - for (int i = 0, ix = row * width * 3; i < width * 3; i++, ix++) { - sbuffer[i] = (unsigned short)(data[ix]) << 8; + for (int i = 0, ix = row * width * 3; i < width * 3; ++i, ++ix) { + sbuffer[i] = static_cast(data[ix]) * 257; } } } @@ -73,8 +73,8 @@ void Image8::setScanline (int row, unsigned char* buffer, int bps, float *minVal case (IIOSF_UNSIGNED_SHORT): { unsigned short* sbuffer = (unsigned short*) buffer; - for (int i = 0, ix = row * width * 3; i < width * 3; i++, ix++) { - data[ix] = sbuffer[i] >> 8; + for (int i = 0, ix = row * width * 3; i < width * 3; ++i, ++ix) { + data[ix] = sbuffer[i] / 257; } break; diff --git a/rtengine/imagefloat.cc b/rtengine/imagefloat.cc index 26ea8ae6e..fb4ccae2e 100644 --- a/rtengine/imagefloat.cc +++ b/rtengine/imagefloat.cc @@ -333,11 +333,11 @@ Imagefloat::to8() #pragma omp parallel for schedule(static) #endif - for ( int h = 0; h < height; ++h ) { - for ( int w = 0; w < width; ++w ) { - img8->r(h, w) = (unsigned char)( (unsigned short)(r(h, w)) >> 8); - img8->g(h, w) = (unsigned char)( (unsigned short)(g(h, w)) >> 8); - img8->b(h, w) = (unsigned char)( (unsigned short)(b(h, w)) >> 8); + for (int h = 0; h < height; ++h) { + for (int w = 0; w < width; ++w) { + img8->r(h, w) = static_cast(r(h, w)) / 257; + img8->g(h, w) = static_cast(g(h, w)) / 257; + img8->b(h, w) = static_cast(b(h, w)) / 257; } } @@ -352,11 +352,11 @@ Imagefloat::to16() #pragma omp parallel for schedule(static) #endif - for ( int h = 0; h < height; ++h ) { - for ( int w = 0; w < width; ++w ) { - img16->r( h, w) = (unsigned short)(r(h, w)); - img16->g( h, w) = (unsigned short)(g(h, w)); - img16->b( h, w) = (unsigned short)(b(h, w)); + for (int h = 0; h < height; ++h) { + for (int w = 0; w < width; ++w) { + img16->r(h, w) = r(h, w); + img16->g(h, w) = g(h, w); + img16->b(h, w) = b(h, w); } } From c67b986744d21b803de17dba71f1d82d6bc38a7e Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 21 Sep 2016 00:22:42 +0200 Subject: [PATCH 19/41] add faster implementation to clip float to [0;65535] and round --- rtengine/rt_math.h | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/rtengine/rt_math.h b/rtengine/rt_math.h index 0836c8be7..b5c93d127 100644 --- a/rtengine/rt_math.h +++ b/rtengine/rt_math.h @@ -80,7 +80,7 @@ inline _Tp intp(_Tp a, _Tp b, _Tp c) // following is valid: // intp(a, b+x, c+x) = intp(a, b, c) + x // intp(a, b*x, c*x) = intp(a, b, c) * x - return a * (b-c) + c; + return a * (b - c) + c; } template @@ -101,5 +101,17 @@ inline T norminf(const T& x, const T& y) return std::max(std::abs(x), std::abs(y)); } -} +inline int float2uint16range(float d) // clips input to [0;65535] and rounds +{ + d = CLIP(d); // clip to [0;65535] +#ifdef __SSE2__ // this only works in IEEE 754 maths. For simplicity I restricted it to SSE2. We can enhance it later, but we have to take care of endianness then. + d += 12582912.f; + return reinterpret_cast(d); +#else // fall back to slow std::round() + return std::round(d); +#endif +} + +} + #endif From f17011cec400b0730a8f9ead26069ddb1390bd82 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 21 Sep 2016 00:24:44 +0200 Subject: [PATCH 20/41] use faster implementation to clip float to [0;65535] and round in rtengine::lab2rgb16b and rtengine::lab2rgb16 --- rtengine/iplab2rgb.cc | 45 +++++++++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index 489ca60bc..d37ba362d 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -26,6 +26,19 @@ #include "curves.h" #include "alignedbuffer.h" #include "color.h" +#define BENCHMARK +#include "StopWatch.h" + +namespace +{ + +int float2intx(float d) +{ + d += 12582912.f; + return reinterpret_cast(d); +} +} + namespace rtengine { @@ -241,8 +254,7 @@ Image8* ImProcFunctions::lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, // for default (not gamma) Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int ch, Glib::ustring profile, RenderingIntent intent, bool bw) { - - //gamutmap(lab); + BENCHFUN if (cx < 0) { cx = 0; @@ -279,7 +291,7 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int for (int j = cx; j < cx + cw; j++) { float fy = (0.0086206897f * rL[j]) / 327.68f + 0.1379310345f; // (L+16)/116 - float fx = (0.002 * ra[j]) / 327.68f + fy; + float fx = (0.002f * ra[j]) / 327.68f + fy; float fz = fy - (0.005f * rb[j]) / 327.68f; float LL = rL[j] / 327.68f; @@ -288,15 +300,14 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int float z_ = 65535.0f * (float) Color::f2xyz(fz) * Color::D50z; float y_ = (LL > Color::epskap) ? 65535.0f * fy * fy * fy : 65535.0f * LL / Color::kappa; - xa[j - cx] = CLIP((int) round(x_)); - ya[j - cx] = CLIP((int) round(y_)); - za[j - cx] = CLIP((int) round(z_)); + xa[j - cx] = float2uint16range(x_); + ya[j - cx] = float2uint16range(y_); + za[j - cx] = float2uint16range(z_); if(bw && y_ < 65535.f ) { //force Bw value and take highlight into account - xa[j - cx] = (int) round(y_ * Color::D50x ); - za[j - cx] = (int) round(y_ * Color::D50z); + xa[j - cx] = float2uint16range(y_ * Color::D50x); + za[j - cx] = float2uint16range(y_ * Color::D50z); } - } } @@ -345,7 +356,7 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int // for gamma options (BT709...sRGB linear...) Image16* ImProcFunctions::lab2rgb16b (LabImage* lab, int cx, int cy, int cw, int ch, Glib::ustring profile, RenderingIntent intent, Glib::ustring profi, Glib::ustring gam, bool freegamma, double gampos, double slpos, double &ga0, double &ga1, double &ga2, double &ga3, double &ga4, double &ga5, double &ga6, bool bw) { - +BENCHFUN //gamutmap(lab); if (cx < 0) { @@ -539,7 +550,7 @@ Image16* ImProcFunctions::lab2rgb16b (LabImage* lab, int cx, int cy, int cw, int // 7 parameters for smoother curves cmsWhitePointFromTemp(&xyD, t50); GammaTRC[0] = GammaTRC[1] = GammaTRC[2] = cmsBuildParametricToneCurve(NULL, 5, Parameters);//5 = more smoother than 4 - cmsHPROFILE oprofdef = cmsCreateRGBProfileTHR(NULL, &xyD, &Primaries, GammaTRC); //oprofdef become Outputprofile + cmsHPROFILE oprofdef = cmsCreateRGBProfileTHR(NULL, &xyD, &Primaries, GammaTRC); //oprofdef becomes Outputprofile cmsFreeToneCurve(GammaTRC[0]); @@ -567,13 +578,13 @@ Image16* ImProcFunctions::lab2rgb16b (LabImage* lab, int cx, int cy, int cw, int float z_ = 65535.0f * (float)Color::f2xyz(fz) * Color::D50z; float y_ = (LL > Color::epskap) ? (float) 65535.0 * fy * fy * fy : 65535.0f * LL / Color::kappa; - xa[j - cx] = CLIP((int) round(x_)) ; - ya[j - cx] = CLIP((int) round(y_)); - za[j - cx] = CLIP((int) round(z_)); + xa[j - cx] = float2uint16range(x_); + ya[j - cx] = float2uint16range(y_); + za[j - cx] = float2uint16range(z_); if(bw && y_ < 65535.f) { //force Bw value and take highlight into account - xa[j - cx] = (int) round(y_ * Color::D50x); - za[j - cx] = (int) round(y_ * Color::D50z); + xa[j - cx] = float2uint16range(y_ * Color::D50x); + za[j - cx] = float2uint16range(y_ * Color::D50z); } } @@ -581,7 +592,7 @@ Image16* ImProcFunctions::lab2rgb16b (LabImage* lab, int cx, int cy, int cw, int cmsHPROFILE iprof = iccStore->getXYZProfile (); lcmsMutex->lock (); - cmsHTRANSFORM hTransform = cmsCreateTransform (iprof, TYPE_RGB_16, oprofdef, TYPE_RGB_16, intent, cmsFLAGS_NOOPTIMIZE | cmsFLAGS_NOCACHE); + cmsHTRANSFORM hTransform = cmsCreateTransform (iprof, TYPE_RGB_16, oprofdef, TYPE_RGB_16, intent, cmsFLAGS_NOOPTIMIZE | cmsFLAGS_NOCACHE); lcmsMutex->unlock (); image->ExecCMSTransform(hTransform); From 29c4d936aa3c7f4801fadc1d15e45c15e7a7e5ba Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 21 Sep 2016 00:35:02 +0200 Subject: [PATCH 21/41] cleaned code --- rtengine/iplab2rgb.cc | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index d37ba362d..c5eeb1a2a 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -29,17 +29,6 @@ #define BENCHMARK #include "StopWatch.h" -namespace -{ - -int float2intx(float d) -{ - d += 12582912.f; - return reinterpret_cast(d); -} -} - - namespace rtengine { From ab2be87333407451ae090f6bc3f86b6910ea0056 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 21 Sep 2016 14:05:30 +0200 Subject: [PATCH 22/41] Simplified float2uint16range(..), removed StopWatches --- rtengine/iplab2rgb.cc | 26 +++++++++----------------- rtengine/rt_math.h | 7 +------ 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index c5eeb1a2a..576af00c3 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -26,8 +26,6 @@ #include "curves.h" #include "alignedbuffer.h" #include "color.h" -#define BENCHMARK -#include "StopWatch.h" namespace rtengine { @@ -79,9 +77,7 @@ void ImProcFunctions::lab2monitorRgb (LabImage* lab, Image8* image) cmsDoTransform (monitorTransform, buffer, data + ix, W); } } - } // End of parallelization - } else { int W = lab->W; @@ -129,7 +125,6 @@ void ImProcFunctions::lab2monitorRgb (LabImage* lab, Image8* image) Image8* ImProcFunctions::lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, Glib::ustring profile, RenderingIntent intent, bool standard_gamma) { - //gamutmap(lab); if (cx < 0) { cx = 0; @@ -243,7 +238,6 @@ Image8* ImProcFunctions::lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, // for default (not gamma) Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int ch, Glib::ustring profile, RenderingIntent intent, bool bw) { - BENCHFUN if (cx < 0) { cx = 0; @@ -264,10 +258,10 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int Image16* image = new Image16 (cw, ch); cmsHPROFILE oprof = iccStore->getProfile (profile); - - if (oprof) { +#ifdef _OPENMP #pragma omp parallel for if (multiThread) +#endif for (int i = cy; i < cy + ch; i++) { float* rL = lab->L[i]; @@ -309,7 +303,9 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int cmsDeleteTransform(hTransform); } else { +#ifdef _OPENMP #pragma omp parallel for if (multiThread) +#endif for (int i = cy; i < cy + ch; i++) { float R, G, B; @@ -345,8 +341,6 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int // for gamma options (BT709...sRGB linear...) Image16* ImProcFunctions::lab2rgb16b (LabImage* lab, int cx, int cy, int cw, int ch, Glib::ustring profile, RenderingIntent intent, Glib::ustring profi, Glib::ustring gam, bool freegamma, double gampos, double slpos, double &ga0, double &ga1, double &ga2, double &ga3, double &ga4, double &ga5, double &ga6, bool bw) { -BENCHFUN - //gamutmap(lab); if (cx < 0) { cx = 0; @@ -506,13 +500,11 @@ BENCHFUN Color::calcGamma(pwr, ts, mode, imax, g_a0, g_a1, g_a2, g_a3, g_a4, g_a5); // call to calcGamma with selected gamma and slope : return parameters for LCMS2 ga4 = g_a3 * ts; - //printf("g_a0=%f g_a1=%f g_a2=%f g_a3=%f g_a4=%f\n", g_a0,g_a1,g_a2,g_a3,g_a4); ga0 = gampos; ga1 = 1. / (1.0 + g_a4); ga2 = g_a4 / (1.0 + g_a4); ga3 = 1. / slpos; ga5 = 0.0; - //printf("ga0=%f ga1=%f ga2=%f ga3=%f ga4=%f\n", ga0,ga1,ga2,ga3,ga4); } @@ -543,9 +535,10 @@ BENCHFUN cmsFreeToneCurve(GammaTRC[0]); - if (oprofdef) { +#ifdef _OPENMP #pragma omp parallel for if (multiThread) +#endif for (int i = cy; i < cy + ch; i++) { float* rL = lab->L[i]; @@ -575,7 +568,6 @@ BENCHFUN xa[j - cx] = float2uint16range(y_ * Color::D50x); za[j - cx] = float2uint16range(y_ * Color::D50z); } - } } @@ -587,8 +579,10 @@ BENCHFUN image->ExecCMSTransform(hTransform); cmsDeleteTransform(hTransform); } else { - // +#ifdef _OPENMP #pragma omp parallel for if (multiThread) +#endif + for (int i = cy; i < cy + ch; i++) { float R, G, B; float* rL = lab->L[i]; @@ -619,6 +613,4 @@ BENCHFUN return image; } -//#include "sRGBgamutbdy.cc" - } diff --git a/rtengine/rt_math.h b/rtengine/rt_math.h index b5c93d127..f55f7c1b2 100644 --- a/rtengine/rt_math.h +++ b/rtengine/rt_math.h @@ -104,12 +104,7 @@ inline T norminf(const T& x, const T& y) inline int float2uint16range(float d) // clips input to [0;65535] and rounds { d = CLIP(d); // clip to [0;65535] -#ifdef __SSE2__ // this only works in IEEE 754 maths. For simplicity I restricted it to SSE2. We can enhance it later, but we have to take care of endianness then. - d += 12582912.f; - return reinterpret_cast(d); -#else // fall back to slow std::round() - return std::round(d); -#endif + return d + 0.5f; } } From 1e268105dbcb3d8653166907cb87589b87839a89 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Wed, 21 Sep 2016 21:01:51 +0200 Subject: [PATCH 23/41] replaced code to convert from Lab to XYZ by calling Color::Lab2XYZ(..) --- rtengine/iplab2rgb.cc | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index 576af00c3..c12e3463e 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -272,16 +272,8 @@ Image16* ImProcFunctions::lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int short* za = (short*)image->b(i - cy); for (int j = cx; j < cx + cw; j++) { - - float fy = (0.0086206897f * rL[j]) / 327.68f + 0.1379310345f; // (L+16)/116 - float fx = (0.002f * ra[j]) / 327.68f + fy; - float fz = fy - (0.005f * rb[j]) / 327.68f; - float LL = rL[j] / 327.68f; - - float x_ = 65535.0f * (float) Color::f2xyz(fx) * Color::D50x; - //float y_ = 65535.0 * Color::f2xyz(fy); - float z_ = 65535.0f * (float) Color::f2xyz(fz) * Color::D50z; - float y_ = (LL > Color::epskap) ? 65535.0f * fy * fy * fy : 65535.0f * LL / Color::kappa; + float x_, y_, z_; + Color::Lab2XYZ(rL[j], ra[j], rb[j], x_, y_, z_); xa[j - cx] = float2uint16range(x_); ya[j - cx] = float2uint16range(y_); @@ -549,16 +541,8 @@ Image16* ImProcFunctions::lab2rgb16b (LabImage* lab, int cx, int cy, int cw, int short* za = (short*)image->b(i - cy); for (int j = cx; j < cx + cw; j++) { - - float fy = (0.0086206897f * rL[j]) / 327.68f + 0.1379310345f; // (L+16)/116 - float fx = (0.002f * ra[j]) / 327.68f + fy; - float fz = fy - (0.005f * rb[j]) / 327.68f; - float LL = rL[j] / 327.68f; - - float x_ = 65535.0f * (float)Color::f2xyz(fx) * Color::D50x; - // float y_ = 65535.0 * Color::f2xyz(fy); - float z_ = 65535.0f * (float)Color::f2xyz(fz) * Color::D50z; - float y_ = (LL > Color::epskap) ? (float) 65535.0 * fy * fy * fy : 65535.0f * LL / Color::kappa; + float x_, y_, z_; + Color::Lab2XYZ(rL[j], ra[j], rb[j], x_, y_, z_); xa[j - cx] = float2uint16range(x_); ya[j - cx] = float2uint16range(y_); From 540e95a0634f646c8d8110de56724a3cde8eb363 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Wed, 21 Sep 2016 21:16:24 +0200 Subject: [PATCH 24/41] Fix "MeasuredEV2" (#3422) Kudos to @cm7695! --- rtexif/canonattribs.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rtexif/canonattribs.cc b/rtexif/canonattribs.cc index 692133a4b..bd14c6514 100644 --- a/rtexif/canonattribs.cc +++ b/rtexif/canonattribs.cc @@ -1846,8 +1846,8 @@ const TagAttrib canonShotInfoAttribs[] = { {0, AC_WRITE, 0, 0, 18, AUTO, "ControlMode", &caControModeInterpreter}, {0, AC_WRITE, 0, 0, 21, AUTO, "FNumber" , &caApertureInterpreter}, {0, AC_WRITE, 0, 0, 22, AUTO, "ExposureTime", &caExposureTimeInterpreter}, + {0, AC_WRITE, 0, 0, 23, AUTO, "MeasuredEV2", &caMeasuredEVInterpreter}, {0, AC_WRITE, 0, 0, 24, AUTO, "BulbDuration", &stdInterpreter}, - {0, AC_WRITE, 0, 0, 24, AUTO, "MeasuredEV2", &caMeasuredEVInterpreter}, {0, AC_WRITE, 0, 0, 26, AUTO, "CameraType", &caCameraTypeInterpreter}, {0, AC_WRITE, 0, 0, 27, AUTO, "AutoRotate", &caAutoRotateInterpreter}, {0, AC_WRITE, 0, 0, 28, AUTO, "NDFilter", &caOnOffInterpreter}, From 1e7b8035c41196b0585b2c1c103761d71083e19d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Wed, 21 Sep 2016 21:54:46 +0200 Subject: [PATCH 25/41] Round when converting to 8 bits (#3429) --- rtengine/iimage.h | 10 +++++----- rtengine/image16.cc | 12 ++++++------ rtengine/image8.cc | 2 +- rtengine/imagefloat.cc | 6 +++--- rtengine/iplab2rgb.cc | 12 ++++++------ 5 files changed, 21 insertions(+), 21 deletions(-) diff --git a/rtengine/iimage.h b/rtengine/iimage.h index 2eded8208..4362f369a 100644 --- a/rtengine/iimage.h +++ b/rtengine/iimage.h @@ -103,27 +103,27 @@ public: template<> inline void ImageDatas::convertTo(unsigned short src, unsigned char& dst) const { - dst = src / 257; + dst = (src + 128) / 257; } template<> inline void ImageDatas::convertTo(unsigned char src, int& dst) const { - dst = static_cast(src) * 257; + dst = src * 257; } template<> inline void ImageDatas::convertTo(unsigned char src, unsigned short& dst) const { - dst = static_cast(src) * 257; + dst = src * 257; } template<> inline void ImageDatas::convertTo(float src, unsigned char& dst) const { - dst = static_cast(src) / 257; + dst = (static_cast(src) + 128) / 257; } template<> inline void ImageDatas::convertTo(unsigned char src, float& dst) const { - dst = static_cast(src) * 257; + dst = src * 257; } // -------------------------------------------------------------------- diff --git a/rtengine/image16.cc b/rtengine/image16.cc index 9d41f96c5..11a05902f 100644 --- a/rtengine/image16.cc +++ b/rtengine/image16.cc @@ -28,9 +28,9 @@ namespace void getScanline8 (const uint16_t *red, const uint16_t *green, const uint16_t *blue, int width, unsigned char* buffer) { for (int i = 0, ix = 0; i < width; i++) { - buffer[ix++] = red[i] / 257; - buffer[ix++] = green[i] / 257; - buffer[ix++] = blue[i] / 257; + buffer[ix++] = (red[i] + 128) / 257; + buffer[ix++] = (green[i] + 128) / 257; + buffer[ix++] = (blue[i] + 128) / 257; } } @@ -300,9 +300,9 @@ Image16::to8() for (int h = 0; h < height; ++h) { for (int w = 0; w < width; ++w) { - img8->r(h, w) = r(h, w) / 257; - img8->g(h, w) = g(h, w) / 257; - img8->b(h, w) = b(h, w) / 257; + img8->r(h, w) = (r(h, w) + 128) / 257; + img8->g(h, w) = (g(h, w) + 128) / 257; + img8->b(h, w) = (b(h, w) + 128) / 257; } } diff --git a/rtengine/image8.cc b/rtengine/image8.cc index 1cc648eb5..41589993d 100644 --- a/rtengine/image8.cc +++ b/rtengine/image8.cc @@ -74,7 +74,7 @@ void Image8::setScanline (int row, unsigned char* buffer, int bps, float *minVal unsigned short* sbuffer = (unsigned short*) buffer; for (int i = 0, ix = row * width * 3; i < width * 3; ++i, ++ix) { - data[ix] = sbuffer[i] / 257; + data[ix] = (sbuffer[i] + 128) / 257; } break; diff --git a/rtengine/imagefloat.cc b/rtengine/imagefloat.cc index fb4ccae2e..7f84f1cab 100644 --- a/rtengine/imagefloat.cc +++ b/rtengine/imagefloat.cc @@ -335,9 +335,9 @@ Imagefloat::to8() for (int h = 0; h < height; ++h) { for (int w = 0; w < width; ++w) { - img8->r(h, w) = static_cast(r(h, w)) / 257; - img8->g(h, w) = static_cast(g(h, w)) / 257; - img8->b(h, w) = static_cast(b(h, w)) / 257; + img8->r(h, w) = (static_cast(r(h, w)) + 128) / 257; + img8->g(h, w) = (static_cast(g(h, w)) + 128) / 257; + img8->b(h, w) = (static_cast(b(h, w)) + 128) / 257; } } diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index 489ca60bc..843bdaa9c 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -117,9 +117,9 @@ void ImProcFunctions::lab2monitorRgb (LabImage* lab, Image8* image) /* copy RGB */ //int R1=((int)gamma2curve[(R)]) - data[ix++] = ((int)Color::gamma2curve[R]) >> 8; - data[ix++] = ((int)Color::gamma2curve[G]) >> 8; - data[ix++] = ((int)Color::gamma2curve[B]) >> 8; + data[ix++] = (static_cast(Color::gamma2curve[R]) + 128) / 257; + data[ix++] = (static_cast(Color::gamma2curve[G]) + 128) / 257; + data[ix++] = (static_cast(Color::gamma2curve[B]) + 128) / 257; } } } @@ -229,9 +229,9 @@ Image8* ImProcFunctions::lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, Color::xyz2rgb(x_, y_, z_, R, G, B, xyz_rgb); - image->data[ix++] = (int)Color::gamma2curve[R] >> 8; - image->data[ix++] = (int)Color::gamma2curve[G] >> 8; - image->data[ix++] = (int)Color::gamma2curve[B] >> 8; + image->data[ix++] = (static_cast(Color::gamma2curve[R]) + 128) / 257; + image->data[ix++] = (static_cast(Color::gamma2curve[G]) + 128) / 257; + image->data[ix++] = (static_cast(Color::gamma2curve[B]) + 128) / 257; } } } From 76355590628322f5484f8085e6370cecbac2eb63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Thu, 22 Sep 2016 21:22:35 +0200 Subject: [PATCH 26/41] Add Ingo's missing optimization (#3432) --- rtengine/iplab2rgb.cc | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index 9a3e710e7..419854523 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -101,15 +101,7 @@ void ImProcFunctions::lab2monitorRgb (LabImage* lab, Image8* image) //float L1=rL[j],a1=ra[j],b1=rb[j];//for testing - fy = (0.00862069 * rL[j]) / 327.68 + 0.137932; // (L+16)/116 - fx = (0.002 * ra[j]) / 327.68 + fy; - fz = fy - (0.005 * rb[j]) / 327.68; - LL = rL[j] / 327.68; - - x_ = 65535.0 * Color::f2xyz(fx) * Color::D50x; - // y_ = 65535.0 * Color::f2xyz(fy); - z_ = 65535.0 * Color::f2xyz(fz) * Color::D50z; - y_ = (LL > Color::epskap) ? 65535.0 * fy * fy * fy : 65535.0 * LL / Color::kappa; + Color::Lab2XYZ(rL[j], ra[j], rb[j], x_, y_, z_ ); Color::xyz2srgb(x_, y_, z_, R, G, B); From 759676788b186a25fa5c6ebd287b94da62d4b6ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Thu, 22 Sep 2016 21:52:07 +0200 Subject: [PATCH 27/41] Use BABL method for 16-to-8 bit conversion (#3429) --- rtengine/iimage.h | 4 ++-- rtengine/image16.cc | 12 ++++++------ rtengine/image8.cc | 2 +- rtengine/imagefloat.cc | 6 +++--- rtengine/iplab2rgb.cc | 12 ++++++------ rtengine/rt_math.h | 20 ++++++++++++-------- 6 files changed, 30 insertions(+), 26 deletions(-) diff --git a/rtengine/iimage.h b/rtengine/iimage.h index 4362f369a..cd49c1329 100644 --- a/rtengine/iimage.h +++ b/rtengine/iimage.h @@ -103,7 +103,7 @@ public: template<> inline void ImageDatas::convertTo(unsigned short src, unsigned char& dst) const { - dst = (src + 128) / 257; + dst = uint16ToUint8Rounded(src); } template<> inline void ImageDatas::convertTo(unsigned char src, int& dst) const @@ -118,7 +118,7 @@ inline void ImageDatas::convertTo(unsigned char src, unsigned short& dst) const template<> inline void ImageDatas::convertTo(float src, unsigned char& dst) const { - dst = (static_cast(src) + 128) / 257; + dst = uint16ToUint8Rounded(src); } template<> inline void ImageDatas::convertTo(unsigned char src, float& dst) const diff --git a/rtengine/image16.cc b/rtengine/image16.cc index 11a05902f..b61170e03 100644 --- a/rtengine/image16.cc +++ b/rtengine/image16.cc @@ -28,9 +28,9 @@ namespace void getScanline8 (const uint16_t *red, const uint16_t *green, const uint16_t *blue, int width, unsigned char* buffer) { for (int i = 0, ix = 0; i < width; i++) { - buffer[ix++] = (red[i] + 128) / 257; - buffer[ix++] = (green[i] + 128) / 257; - buffer[ix++] = (blue[i] + 128) / 257; + buffer[ix++] = rtengine::uint16ToUint8Rounded(red[i]); + buffer[ix++] = rtengine::uint16ToUint8Rounded(green[i]); + buffer[ix++] = rtengine::uint16ToUint8Rounded(blue[i]); } } @@ -300,9 +300,9 @@ Image16::to8() for (int h = 0; h < height; ++h) { for (int w = 0; w < width; ++w) { - img8->r(h, w) = (r(h, w) + 128) / 257; - img8->g(h, w) = (g(h, w) + 128) / 257; - img8->b(h, w) = (b(h, w) + 128) / 257; + img8->r(h, w) = uint16ToUint8Rounded(r(h, w)); + img8->g(h, w) = uint16ToUint8Rounded(g(h, w)); + img8->b(h, w) = uint16ToUint8Rounded(b(h, w)); } } diff --git a/rtengine/image8.cc b/rtengine/image8.cc index 41589993d..d7a49138b 100644 --- a/rtengine/image8.cc +++ b/rtengine/image8.cc @@ -74,7 +74,7 @@ void Image8::setScanline (int row, unsigned char* buffer, int bps, float *minVal unsigned short* sbuffer = (unsigned short*) buffer; for (int i = 0, ix = row * width * 3; i < width * 3; ++i, ++ix) { - data[ix] = (sbuffer[i] + 128) / 257; + data[ix] = uint16ToUint8Rounded(sbuffer[i]); } break; diff --git a/rtengine/imagefloat.cc b/rtengine/imagefloat.cc index 7f84f1cab..ae4a1a09b 100644 --- a/rtengine/imagefloat.cc +++ b/rtengine/imagefloat.cc @@ -335,9 +335,9 @@ Imagefloat::to8() for (int h = 0; h < height; ++h) { for (int w = 0; w < width; ++w) { - img8->r(h, w) = (static_cast(r(h, w)) + 128) / 257; - img8->g(h, w) = (static_cast(g(h, w)) + 128) / 257; - img8->b(h, w) = (static_cast(b(h, w)) + 128) / 257; + img8->r(h, w) = uint16ToUint8Rounded(r(h, w)); + img8->g(h, w) = uint16ToUint8Rounded(g(h, w)); + img8->b(h, w) = uint16ToUint8Rounded(b(h, w)); } } diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index 419854523..8aff50886 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -107,9 +107,9 @@ void ImProcFunctions::lab2monitorRgb (LabImage* lab, Image8* image) /* copy RGB */ //int R1=((int)gamma2curve[(R)]) - data[ix++] = (static_cast(Color::gamma2curve[R]) + 128) / 257; - data[ix++] = (static_cast(Color::gamma2curve[G]) + 128) / 257; - data[ix++] = (static_cast(Color::gamma2curve[B]) + 128) / 257; + data[ix++] = uint16ToUint8Rounded(Color::gamma2curve[R]); + data[ix++] = uint16ToUint8Rounded(Color::gamma2curve[G]); + data[ix++] = uint16ToUint8Rounded(Color::gamma2curve[B]); } } } @@ -218,9 +218,9 @@ Image8* ImProcFunctions::lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, Color::xyz2rgb(x_, y_, z_, R, G, B, xyz_rgb); - image->data[ix++] = (static_cast(Color::gamma2curve[R]) + 128) / 257; - image->data[ix++] = (static_cast(Color::gamma2curve[G]) + 128) / 257; - image->data[ix++] = (static_cast(Color::gamma2curve[B]) + 128) / 257; + image->data[ix++] = uint16ToUint8Rounded(Color::gamma2curve[R]); + image->data[ix++] = uint16ToUint8Rounded(Color::gamma2curve[G]); + image->data[ix++] = uint16ToUint8Rounded(Color::gamma2curve[B]); } } } diff --git a/rtengine/rt_math.h b/rtengine/rt_math.h index f55f7c1b2..67d883080 100644 --- a/rtengine/rt_math.h +++ b/rtengine/rt_math.h @@ -1,14 +1,15 @@ -#ifndef _MYMATH_ -#define _MYMATH_ -#include -#include +#pragma once +#include +#include +#include namespace rtengine { -static const int MAXVAL = 0xffff; -static const float MAXVALF = float(MAXVAL); // float version of MAXVAL -static const double MAXVALD = double(MAXVAL); // double version of MAXVAL + +constexpr int MAXVAL = 0xffff; +constexpr float MAXVALF = static_cast(MAXVAL); // float version of MAXVAL +constexpr double MAXVALD = static_cast(MAXVAL); // double version of MAXVAL template inline _Tp SQR (_Tp x) @@ -107,6 +108,9 @@ inline int float2uint16range(float d) // clips input to [0;65535] and rounds return d + 0.5f; } +constexpr std::uint8_t uint16ToUint8Rounded(std::uint16_t i) +{ + return ((i + 128) - ((i + 128) >> 8)) >> 8; } -#endif +} From b32ace88a99800605bcf35da0e2874810447baef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Thu, 22 Sep 2016 22:00:05 +0200 Subject: [PATCH 28/41] Fix `Tag::toString()` for `LONG` type (#3422) --- rtexif/rtexif.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rtexif/rtexif.cc b/rtexif/rtexif.cc index dd49ab23d..91f52ce55 100644 --- a/rtexif/rtexif.cc +++ b/rtexif/rtexif.cc @@ -1553,11 +1553,11 @@ void Tag::toString (char* buffer, int ofs) break; case SLONG: - sprintf (b, "%ld", (long)toInt(4 * i + ofs)); + sprintf (b, "%d", toInt(4 * i + ofs)); break; case LONG: - sprintf (b, "%lu", (unsigned long)toInt(4 * i + ofs)); + sprintf (b, "%u", toInt(4 * i + ofs)); break; case SRATIONAL: From a5af13228d57af4a088889cac9f1098f267006ed Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Sat, 24 Sep 2016 13:57:28 +0200 Subject: [PATCH 29/41] camconst.json updated by IliasG, closes #3298 --- rtengine/camconst.json | 54 +++++++++++++++++++++++++++++------------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/rtengine/camconst.json b/rtengine/camconst.json index 280efc26f..bba957405 100644 --- a/rtengine/camconst.json +++ b/rtengine/camconst.json @@ -500,32 +500,34 @@ Quality X: unknown, ie we knowing to little about the camera properties to know } }, - { // Quality C, Color Matrix same as 80D (color model 13) - // White Levels not properly indicated (look same as 80D's so copied from there), aperture scaling missing, scaling factors are guessed + { // Quality B, some intermediate ISO samples missing, LENR samples missing + // so White Levels not properly indicated, some aperture scaling missing "make_model": "Canon EOS 5D Mark IV", - "dcraw_matrix": [ 7457,-671,-937,-4849,12495,2643,-1213,2354,5492 ], // 80D, DNG_V9.5 D65 + "dcraw_matrix": [ 6446,-366,-864,-4436,12204,2513,-952,2496,6348 ], // DNG_V9.7 D65 "raw_crop": [ 136, 42, 6740, 4500 ], // full size 6880x4544, official crop 148,54,6867,4533 "masked_areas": [ 54, 4, 4534, 132 ], "ranges": { "white": [ - { "iso": [ 100, 125, 200, 250 ], "levels": 16200 }, // nominal 16383, LENR blue 16243 - { "iso": [ 160 ], "levels": 13000 }, // nominal 13097, - { "iso": [ 320, 640, 1250, 2500, 5000, 10000 ], "levels": 13200 }, // G1,G2 13415 - { "iso": [ 400, 500, 800, 1000, 1600, 2000, 3200, 4000 ], "levels": 16150 }, // nominal 16383, LENR ISO3200 16150 - { "iso": [ 6400, 8000, 12800, 16000, 25600 ], "levels": 16000 } // R,G1,G2 16383, B 16243, LENR B 16000 + { "iso": [ 100, 125, 200, 250 ], "levels": 16100 }, // nominal 16383, LENR? + { "iso": [ 160 ], "levels": 13000 }, // nominal f8-13105 + { "iso": [ 320, 640, 1250, 2500 ], "levels": 13300 }, // G1,G2 F4.0-13422-F2.8-13562-13616 + { "iso": [ 5000, 10000, 20000 ], "levels": 13200 }, // G1,G2 F4.0-13422-F2.8-13562-13616 + { "iso": [ 400, 500, 800, 1000, 1600, 2000, 3200, 4000 ], "levels": 16100 }, // nominal 16383, + { "iso": [ 6400, 8000, 12800, 16000, 25600, 32000 ], "levels": 16000 }, // R,G1,G2 16383, LENR? + { "iso": [ 40000, 51200, 102400 ], "levels": 15800 } // 16383, LENR? ], "white_max": 16383, "aperture_scaling": [ /* note: need for more data to properly fill all scale factors */ - { "aperture": 1.4, "scale_factor": 1.200 }, // guessed - { "aperture": 1.6, "scale_factor": 1.080 }, // guessed - { "aperture": 1.8, "scale_factor": 1.055 }, // guessed - { "aperture": 2.0, "scale_factor": 1.030 }, // guessed - { "aperture": 2.2, "scale_factor": 1.025 }, // guessed - { "aperture": 2.5, "scale_factor": 1.020 }, // guessed - { "aperture": 2.8, "scale_factor": 1.000 }, // - { "aperture": 3.2, "scale_factor": 1.000 }, // - { "aperture": 3.5, "scale_factor": 1.000 } // + { "aperture": 1.4, "scale_factor": 1.130 }, // + { "aperture": 1.6, "scale_factor": 1.100 }, // + { "aperture": 1.8, "scale_factor": 1.070 }, // + { "aperture": 2.0, "scale_factor": 1.050 }, // 14171/13422=1.055 + { "aperture": 2.2, "scale_factor": 1.035 }, // 13954/13422=1.039 + { "aperture": 2.5, "scale_factor": 1.025 }, // 11400/11000=1.028 + { "aperture": 2.8, "scale_factor": 1.015 }, // 13562/13422 - 13731,13688,13562 + { "aperture": 3.2, "scale_factor": 1.010 }, // + { "aperture": 3.5, "scale_factor": 1.005 } // 13508/13422 ] } }, @@ -1287,6 +1289,12 @@ Quality X: unknown, ie we knowing to little about the camera properties to know "ranges": { "black": 0, "white": 16300 } // WL typical 16383 set to 16300 for safety }, + { // Quality B + "make_model": "Nikon D3400", + "dcraw_matrix": [ 6988,-1384,-714,-5631,13410,2447,-1485,2204,7318 ], // adobe dng_v9.7 d65 + "ranges": { "white": 16300 } // WL value is for 14-bit files, RT auto adapts it for 12-bit files. WL typical 16383 set to 16300 for safety + }, + { // Quality B "make_model": "Nikon D5300", "dcraw_matrix": [ 6988,-1384,-714,-5631,13410,2447,-1485,2204,7318 ], // adobe dng_v8.8 d65 @@ -1671,6 +1679,18 @@ Quality X: unknown, ie we knowing to little about the camera properties to know { "iso": [ 160, 200, 250, 320, 400,500, 640, 800, 1000, 1250, 1600, 2000, 2500, 3200, 4000, 5000, 6400, 12800, 25600 ], "levels": 4080 } // nominal 4095 ] } + }, + { // Quality B, Same as Panasonic G7 + "make_model": [ "Panasonic DMC-G8", "Panasonic DMC-G80", "Panasonic DMC-G81", "Panasonic DMC-G85" ], + "dcraw_matrix": [ 7610,-2780,-576,-4614,12195,2733,-1375,2393,6490 ],// DNG_v9.7 D65 + "ranges": { + "black": 16, // 16 is BL offset. Dcraw/RT read the base black from exif and calculates total BL = BLbase+BLoffset + "white": [ + { "iso": 100, "levels": 2300 }, // gaussian 2300-2700 exif_linearitylimit 2111 + { "iso": 125, "levels": 3180 }, // gaussian 3200-3600 exif_linearitylimit 2626 + { "iso": [ 160, 200, 250, 320, 400,500, 640, 800, 1000, 1250, 1600, 2000, 2500, 3200, 4000, 5000, 6400, 12800, 25600 ], "levels": 4080 } // nominal 4095 + ] + } }, { // Quality B, "make_model": "Panasonic DMC-GX8", From 4076e1d5aada5d74d52f6c21fe93e08cd54600a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Mon, 26 Sep 2016 21:16:20 +0200 Subject: [PATCH 30/41] Add Ingo's optimization in another place, too (#3432) --- rtengine/iplab2rgb.cc | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/rtengine/iplab2rgb.cc b/rtengine/iplab2rgb.cc index 8aff50886..4c2da72a4 100644 --- a/rtengine/iplab2rgb.cc +++ b/rtengine/iplab2rgb.cc @@ -88,16 +88,16 @@ void ImProcFunctions::lab2monitorRgb (LabImage* lab, Image8* image) #pragma omp parallel for schedule(dynamic,16) if (multiThread) #endif - for (int i = 0; i < H; i++) { + for (int i = 0; i < H; ++i) { float* rL = lab->L[i]; float* ra = lab->a[i]; float* rb = lab->b[i]; int ix = i * 3 * W; float R, G, B; - float fy, fx, fz, x_, y_, z_, LL; + float x_, y_, z_; - for (int j = 0; j < W; j++) { + for (int j = 0; j < W; ++j) { //float L1=rL[j],a1=ra[j],b1=rb[j];//for testing @@ -197,24 +197,17 @@ Image8* ImProcFunctions::lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, #pragma omp parallel for schedule(dynamic,16) if (multiThread) #endif - for (int i = cy; i < cy + ch; i++) { - float R, G, B; + for (int i = cy; i < cy + ch; ++i) { float* rL = lab->L[i]; float* ra = lab->a[i]; float* rb = lab->b[i]; int ix = 3 * i * cw; - for (int j = cx; j < cx + cw; j++) { + float R, G, B; + float x_, y_, z_; - float fy = (0.00862069 * rL[j]) / 327.68 + 0.137932; // (L+16)/116 - float fx = (0.002 * ra[j]) / 327.68 + fy; - float fz = fy - (0.005 * rb[j]) / 327.68; - float LL = rL[j] / 327.68; - - float x_ = 65535.0 * Color::f2xyz(fx) * Color::D50x; - //float y_ = 65535.0 * Color::f2xyz(fy); - float z_ = 65535.0 * Color::f2xyz(fz) * Color::D50z; - float y_ = (LL > Color::epskap) ? 65535.0 * fy * fy * fy : 65535.0 * LL / Color::kappa; + for (int j = cx; j < cx + cw; ++j) { + Color::Lab2XYZ(rL[j], ra[j], rb[j], x_, y_, z_); Color::xyz2rgb(x_, y_, z_, R, G, B, xyz_rgb); From d8be9933e2a100eca98d2076c330ed8982c792c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Mon, 26 Sep 2016 21:31:46 +0200 Subject: [PATCH 31/41] Fix "-Wignored-attributes" with vector arguments in `rtengine/median.h` See [GCC bug 69884](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69884). --- rtengine/median.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rtengine/median.h b/rtengine/median.h index c2ef5fd27..d3cd8c826 100644 --- a/rtengine/median.h +++ b/rtengine/median.h @@ -24,6 +24,10 @@ #include "opthelper.h" +#if defined __GNUC__ && __GNUC__>=6 && defined __SSE2__ + #pragma GCC diagnostic ignored "-Wignored-attributes" +#endif + template inline T median(std::array array) { From d076223293e0cb53dfad5496c3610c318960676e Mon Sep 17 00:00:00 2001 From: heckflosse Date: Tue, 27 Sep 2016 14:47:37 +0200 Subject: [PATCH 32/41] Added attributions in median.h --- rtengine/median.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/rtengine/median.h b/rtengine/median.h index c2ef5fd27..6226d2520 100644 --- a/rtengine/median.h +++ b/rtengine/median.h @@ -15,6 +15,16 @@ * * You should have received a copy of the GNU General Public License * along with RawTherapee. If not, see . + * + * This median implementations from Floessie and Ingo Weyrich are inspired by this work: + * + * http://ndevilla.free.fr/median/median.pdf + * http://pages.ripco.net/~jgamble/nw.html + * https://github.com/hoytech/Algorithm-Networksort-Chooser + * + * Instead of using the PIX_SORT and PIX_SWAP macros we use std::min() and std::max() + * because it turned out that it generates much faster (branch free) code on machines which support SSE + * */ #pragma once From 8b94684d325389452a19f815b5ed7ffa262df468 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Tue, 27 Sep 2016 15:56:07 +0200 Subject: [PATCH 33/41] Fix Denoise - Median tooltip --- rtdata/languages/default | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rtdata/languages/default b/rtdata/languages/default index 5998c585d..199258b66 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -1,6 +1,6 @@ #00 default translation file #01 Developers should add translations to this file and then run the 'generateTranslationDiffs' Bash script to update other locales. -#02 Translators please append a comment with the date of translation and your name(s) as used in the RawTherapee forum or Google Code project to the top of your translation, e.g.: +#02 Translators please append a comment with the date of translation and your name(s) as used in the RawTherapee forum or GitHub Code project to the top of your translation, e.g.: #03 2525-12-24 Zager and Evans ABOUT_TAB_BUILD;Version ABOUT_TAB_CREDITS;Credits @@ -1354,8 +1354,8 @@ TP_DEFRINGE_THRESHOLD;Threshold TP_DIRPYRDENOISE_33;3×3 strong TP_DIRPYRDENOISE_55;5×5 strong TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (slow) -TP_DIRPYRDENOISE_99;9x9 (very slow) +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9x9 TP_DIRPYRDENOISE_ABM;Chroma only TP_DIRPYRDENOISE_AUT;Automatic global TP_DIRPYRDENOISE_AUTO;Automatic global From 18c0f7ad9189ef55bfcb5ee6e23111ffef731c8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Tue, 27 Sep 2016 21:16:30 +0200 Subject: [PATCH 34/41] Fix remaining Denoise - Median tooltips (#3360) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Also replace 'x' with '×' for uniformity. --- rtdata/languages/Catala | 4 ++-- rtdata/languages/Chinese (Simplified) | 4 ++-- rtdata/languages/Chinese (Traditional) | 4 ++-- rtdata/languages/Czech | 4 ++-- rtdata/languages/Dansk | 4 ++-- rtdata/languages/Deutsch | 10 +++++----- rtdata/languages/English (UK) | 4 ++-- rtdata/languages/English (US) | 4 ++-- rtdata/languages/Espanol | 4 ++-- rtdata/languages/Euskara | 4 ++-- rtdata/languages/Francais | 4 ++-- rtdata/languages/Greek | 4 ++-- rtdata/languages/Hebrew | 4 ++-- rtdata/languages/Italiano | 4 ++-- rtdata/languages/Japanese | 6 +++--- rtdata/languages/LICENSE | 0 rtdata/languages/Latvian | 4 ++-- rtdata/languages/Magyar | 4 ++-- rtdata/languages/Nederlands | 10 +++++----- rtdata/languages/Norsk BM | 4 ++-- rtdata/languages/Polish | 4 ++-- rtdata/languages/Polish (Latin Characters) | 4 ++-- rtdata/languages/Portugues (Brasil) | 4 ++-- rtdata/languages/Russian | 4 ++-- rtdata/languages/Serbian (Cyrilic Characters) | 4 ++-- rtdata/languages/Serbian (Latin Characters) | 4 ++-- rtdata/languages/Slovak | 4 ++-- rtdata/languages/Suomi | 4 ++-- rtdata/languages/Swedish | 4 ++-- rtdata/languages/Turkish | 4 ++-- rtdata/languages/default | 2 +- 31 files changed, 66 insertions(+), 66 deletions(-) mode change 100755 => 100644 rtdata/languages/LICENSE diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala index afcb829a2..f9f393139 100644 --- a/rtdata/languages/Catala +++ b/rtdata/languages/Catala @@ -1625,8 +1625,8 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified) index 48b139f0f..ad1c06481 100644 --- a/rtdata/languages/Chinese (Simplified) +++ b/rtdata/languages/Chinese (Simplified) @@ -1559,8 +1559,8 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional) index 055d1f2b2..9ce592251 100644 --- a/rtdata/languages/Chinese (Traditional) +++ b/rtdata/languages/Chinese (Traditional) @@ -1433,8 +1433,8 @@ TP_WBALANCE_TEMPERATURE;色溫 !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Czech b/rtdata/languages/Czech index 4a2e3a9bd..918c87557 100644 --- a/rtdata/languages/Czech +++ b/rtdata/languages/Czech @@ -1357,8 +1357,8 @@ TP_DEFRINGE_THRESHOLD;Práh TP_DIRPYRDENOISE_33;3×3 silný TP_DIRPYRDENOISE_55;5×5 silný TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (pomalý) -TP_DIRPYRDENOISE_99;9x9 (velmi pomalé) +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Pouze barevnost TP_DIRPYRDENOISE_AUT;Automatická celková TP_DIRPYRDENOISE_AUTO;Automatická celková diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk index c22a60c37..772933ef5 100644 --- a/rtdata/languages/Dansk +++ b/rtdata/languages/Dansk @@ -1431,8 +1431,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Deutsch b/rtdata/languages/Deutsch index 1f2a579ac..f65001418 100644 --- a/rtdata/languages/Deutsch +++ b/rtdata/languages/Deutsch @@ -1380,11 +1380,11 @@ TP_DARKFRAME_LABEL;Dunkelbild TP_DEFRINGE_LABEL;Farbsaum entfernen (Defringe) TP_DEFRINGE_RADIUS;Radius TP_DEFRINGE_THRESHOLD;Schwellenwert -TP_DIRPYRDENOISE_33;3x3 stark -TP_DIRPYRDENOISE_55;5x5 stark -TP_DIRPYRDENOISE_55SOFT;5x5 -TP_DIRPYRDENOISE_77;7x7 (langsam) -TP_DIRPYRDENOISE_99;9x9 (sehr langsam) +TP_DIRPYRDENOISE_33;3×3 stark +TP_DIRPYRDENOISE_55;5×5 stark +TP_DIRPYRDENOISE_55SOFT;5×5 +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Nur Farbe TP_DIRPYRDENOISE_AUT;Automatisch Global TP_DIRPYRDENOISE_AUTO;Automatisch Global diff --git a/rtdata/languages/English (UK) b/rtdata/languages/English (UK) index 2f97b36d1..20966492f 100644 --- a/rtdata/languages/English (UK) +++ b/rtdata/languages/English (UK) @@ -1389,8 +1389,8 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US) index f7a82441c..5b3578336 100644 --- a/rtdata/languages/English (US) +++ b/rtdata/languages/English (US) @@ -1355,8 +1355,8 @@ !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Espanol b/rtdata/languages/Espanol index 215c21390..ddcc4a362 100644 --- a/rtdata/languages/Espanol +++ b/rtdata/languages/Espanol @@ -1165,7 +1165,7 @@ TP_DEFRINGE_THRESHOLD;Umbral TP_DIRPYRDENOISE_33;3×3 fuerte TP_DIRPYRDENOISE_55;5×5 fuerte TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (lento) +TP_DIRPYRDENOISE_77;7×7 TP_DIRPYRDENOISE_BLUE;Crominancia: Azul-Amarillo TP_DIRPYRDENOISE_CHROMA;Crominancia: Maestra TP_DIRPYRDENOISE_CURVEEDITOR_L_TOOLTIP;Modula la acción de eliminación de ruido 'de luminancia' @@ -1795,7 +1795,7 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara index 5a7e068d2..94bc87b4b 100644 --- a/rtdata/languages/Euskara +++ b/rtdata/languages/Euskara @@ -1431,8 +1431,8 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Francais b/rtdata/languages/Francais index d35371458..7c3e411b4 100644 --- a/rtdata/languages/Francais +++ b/rtdata/languages/Francais @@ -1298,8 +1298,8 @@ TP_DEFRINGE_THRESHOLD;Seuil TP_DIRPYRDENOISE_33;3×3 fort TP_DIRPYRDENOISE_55;5×5 fort TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (lent) -TP_DIRPYRDENOISE_99;9x9 (très lent) +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Chroma uniquement TP_DIRPYRDENOISE_AUT;Global automatique TP_DIRPYRDENOISE_AUTO;Global automatique diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek index 1929b0059..2f66d779f 100644 --- a/rtdata/languages/Greek +++ b/rtdata/languages/Greek @@ -1430,8 +1430,8 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew index 54396a92f..10de78b94 100644 --- a/rtdata/languages/Hebrew +++ b/rtdata/languages/Hebrew @@ -1431,8 +1431,8 @@ TP_WBALANCE_TEMPERATURE;מידת חום !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Italiano b/rtdata/languages/Italiano index 94329b411..e752f8acf 100644 --- a/rtdata/languages/Italiano +++ b/rtdata/languages/Italiano @@ -1697,8 +1697,8 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Japanese b/rtdata/languages/Japanese index 967e57e4d..8a9fdff4d 100644 --- a/rtdata/languages/Japanese +++ b/rtdata/languages/Japanese @@ -1331,9 +1331,9 @@ TP_DEFRINGE_RADIUS;半径 TP_DEFRINGE_THRESHOLD;しきい値 TP_DIRPYRDENOISE_33;強い3x3 TP_DIRPYRDENOISE_55;強い5x5 -TP_DIRPYRDENOISE_55SOFT;5x5 -TP_DIRPYRDENOISE_77;7x7(遅い) -TP_DIRPYRDENOISE_99;9x9 (非常に遅い) +TP_DIRPYRDENOISE_55SOFT;5×5 +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;色ノイズだけ TP_DIRPYRDENOISE_AUT;自動(分割方式) TP_DIRPYRDENOISE_AUTO;自動(分割方式) diff --git a/rtdata/languages/LICENSE b/rtdata/languages/LICENSE old mode 100755 new mode 100644 diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian index bfbbf4d76..20fbad2f8 100644 --- a/rtdata/languages/Latvian +++ b/rtdata/languages/Latvian @@ -1431,8 +1431,8 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Magyar b/rtdata/languages/Magyar index 5183cb9de..fc3cdf366 100644 --- a/rtdata/languages/Magyar +++ b/rtdata/languages/Magyar @@ -1577,8 +1577,8 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Nederlands b/rtdata/languages/Nederlands index 88f71e101..239120a91 100644 --- a/rtdata/languages/Nederlands +++ b/rtdata/languages/Nederlands @@ -1360,11 +1360,11 @@ TP_DARKFRAME_LABEL;Donkerframe TP_DEFRINGE_LABEL;Verzachten (Lab/CIECAM02) TP_DEFRINGE_RADIUS;Straal TP_DEFRINGE_THRESHOLD;Drempel -TP_DIRPYRDENOISE_33;3x3 sterk -TP_DIRPYRDENOISE_55;5x5 sterk -TP_DIRPYRDENOISE_55SOFT;5x5 -TP_DIRPYRDENOISE_77;7x7 (langzaam) -TP_DIRPYRDENOISE_99;9x9 (erg langzaam) +TP_DIRPYRDENOISE_33;3×3 sterk +TP_DIRPYRDENOISE_55;5×5 sterk +TP_DIRPYRDENOISE_55SOFT;5×5 +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Alleen chroma TP_DIRPYRDENOISE_AUT;Automatisch algemeen TP_DIRPYRDENOISE_AUTO;Automatisch algemeen diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM index 222667cd5..807b9c95e 100644 --- a/rtdata/languages/Norsk BM +++ b/rtdata/languages/Norsk BM @@ -1430,8 +1430,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish index 323d6ac8a..366761246 100644 --- a/rtdata/languages/Polish +++ b/rtdata/languages/Polish @@ -1120,7 +1120,7 @@ TP_DEFRINGE_THRESHOLD;Próg TP_DIRPYRDENOISE_33;3×3 silne TP_DIRPYRDENOISE_55;5×5 silne TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (wolne) +TP_DIRPYRDENOISE_77;7×7 TP_DIRPYRDENOISE_BLUE;Chrominancja - Błękit-żółć TP_DIRPYRDENOISE_CHROMA;Chrominancja - Główna TP_DIRPYRDENOISE_CURVEEDITOR_L_TOOLTIP;Moduluje działanie usuwania szumów luminancji @@ -1743,7 +1743,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters) index 1967a9e4e..37569990e 100644 --- a/rtdata/languages/Polish (Latin Characters) +++ b/rtdata/languages/Polish (Latin Characters) @@ -1120,7 +1120,7 @@ TP_DEFRINGE_THRESHOLD;Prog TP_DIRPYRDENOISE_33;3×3 silne TP_DIRPYRDENOISE_55;5×5 silne TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (wolne) +TP_DIRPYRDENOISE_77;7×7 TP_DIRPYRDENOISE_BLUE;Chrominancja - Blekit-zolc TP_DIRPYRDENOISE_CHROMA;Chrominancja - Glowna TP_DIRPYRDENOISE_CURVEEDITOR_L_TOOLTIP;Moduluje dzialanie usuwania szumow luminancji @@ -1743,7 +1743,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil) index 06cc8b37d..a655ae6e9 100644 --- a/rtdata/languages/Portugues (Brasil) +++ b/rtdata/languages/Portugues (Brasil) @@ -1431,8 +1431,8 @@ TP_WBALANCE_TEMPERATURE;Temperatura !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian index 5b9625741..969890ad6 100644 --- a/rtdata/languages/Russian +++ b/rtdata/languages/Russian @@ -1691,8 +1691,8 @@ ZOOMPANEL_ZOOMOUT;Удалить - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Serbian (Cyrilic Characters) b/rtdata/languages/Serbian (Cyrilic Characters) index 73e43b15d..35d1f1749 100644 --- a/rtdata/languages/Serbian (Cyrilic Characters) +++ b/rtdata/languages/Serbian (Cyrilic Characters) @@ -1823,8 +1823,8 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Serbian (Latin Characters) b/rtdata/languages/Serbian (Latin Characters) index 8f64eddec..ea67134d3 100644 --- a/rtdata/languages/Serbian (Latin Characters) +++ b/rtdata/languages/Serbian (Latin Characters) @@ -1823,8 +1823,8 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Slovak b/rtdata/languages/Slovak index a3ed2994b..422c08e3b 100644 --- a/rtdata/languages/Slovak +++ b/rtdata/languages/Slovak @@ -1470,8 +1470,8 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi index f7962a735..a3f79f469 100644 --- a/rtdata/languages/Suomi +++ b/rtdata/languages/Suomi @@ -1431,8 +1431,8 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/Swedish b/rtdata/languages/Swedish index f3ba72af8..d4d5d3e10 100644 --- a/rtdata/languages/Swedish +++ b/rtdata/languages/Swedish @@ -1243,8 +1243,8 @@ TP_DEFRINGE_THRESHOLD;Tröskelvärde TP_DIRPYRDENOISE_33;3×3 kraftig TP_DIRPYRDENOISE_55;5×5 kraftig TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 (långsam) -TP_DIRPYRDENOISE_99;9x9 (mycket långsam) +TP_DIRPYRDENOISE_77;7×7 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Endast chroma TP_DIRPYRDENOISE_AUTO_TOOLTIP;Försök att utvärdera chroma-bruset\nVar försiktig, den här beräkningen görs på genomsnittet och är tämligen subjektiv! TP_DIRPYRDENOISE_BLUE;Krominans - Blå-Gul diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish index b3de5a01f..38c0a1ecf 100644 --- a/rtdata/languages/Turkish +++ b/rtdata/languages/Turkish @@ -1430,8 +1430,8 @@ TP_WBALANCE_TEMPERATURE;Isı !TP_DIRPYRDENOISE_33;3×3 strong !TP_DIRPYRDENOISE_55;5×5 strong !TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 (slow) -!TP_DIRPYRDENOISE_99;9x9 (very slow) +!TP_DIRPYRDENOISE_77;7×7 +!TP_DIRPYRDENOISE_99;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global diff --git a/rtdata/languages/default b/rtdata/languages/default index 199258b66..acd6c00d8 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -1355,7 +1355,7 @@ TP_DIRPYRDENOISE_33;3×3 strong TP_DIRPYRDENOISE_55;5×5 strong TP_DIRPYRDENOISE_55SOFT;5×5 TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9x9 +TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Chroma only TP_DIRPYRDENOISE_AUT;Automatic global TP_DIRPYRDENOISE_AUTO;Automatic global From 7d21cbfaa6956fb03198966712366cf00e8eea1b Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Tue, 27 Sep 2016 23:13:55 +0200 Subject: [PATCH 35/41] Reworked Median (NR) wording, updated RawPedia accordingly. --- rtdata/languages/default | 18 +++++++++--------- rtgui/dirpyrdenoise.cc | 18 +++++++++--------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/rtdata/languages/default b/rtdata/languages/default index acd6c00d8..af23e7d12 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -1,6 +1,6 @@ #00 default translation file #01 Developers should add translations to this file and then run the 'generateTranslationDiffs' Bash script to update other locales. -#02 Translators please append a comment with the date of translation and your name(s) as used in the RawTherapee forum or GitHub Code project to the top of your translation, e.g.: +#02 Translators please append a comment here with the current date and your name(s) as used in the RawTherapee forum or GitHub page, e.g.: #03 2525-12-24 Zager and Evans ABOUT_TAB_BUILD;Version ABOUT_TAB_CREDITS;Credits @@ -1351,11 +1351,12 @@ TP_DARKFRAME_LABEL;Dark-Frame TP_DEFRINGE_LABEL;Defringe TP_DEFRINGE_RADIUS;Radius TP_DEFRINGE_THRESHOLD;Threshold -TP_DIRPYRDENOISE_33;3×3 strong -TP_DIRPYRDENOISE_55;5×5 strong -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 +TP_DIRPYRDENOISE_3X3;3×3 +TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +TP_DIRPYRDENOISE_5X5;5×5 +TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +TP_DIRPYRDENOISE_7X7;7×7 +TP_DIRPYRDENOISE_9X9;9x9 TP_DIRPYRDENOISE_ABM;Chroma only TP_DIRPYRDENOISE_AUT;Automatic global TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1398,12 +1399,12 @@ TP_DIRPYRDENOISE_METHOD11;Quality TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. TP_DIRPYRDENOISE_PASSES;Median iterations -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. TP_DIRPYRDENOISE_PON;Auto multi-zones TP_DIRPYRDENOISE_PRE;Preview multi-zones TP_DIRPYRDENOISE_PREV;Preview @@ -1414,7 +1415,6 @@ TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Standard TP_DIRPYRDENOISE_SHALBI;High TP_DIRPYRDENOISE_SLI;Slider -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 TP_DIRPYREQUALIZER_ALGO;Skin Color Range TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtgui/dirpyrdenoise.cc b/rtgui/dirpyrdenoise.cc index 5eac04b2a..5bff14ef2 100644 --- a/rtgui/dirpyrdenoise.cc +++ b/rtgui/dirpyrdenoise.cc @@ -218,21 +218,21 @@ DirPyrDenoise::DirPyrDenoise () : FoldableToolPanel(this, "dirpyrdenoise", M("TP methodmedconn = methodmed->signal_changed().connect ( sigc::mem_fun(*this, &DirPyrDenoise::methodmedChanged) ); rgbmethod = Gtk::manage (new MyComboBoxText ()); - rgbmethod->append_text (M("TP_DIRPYRDENOISE_SOFT")); - rgbmethod->append_text (M("TP_DIRPYRDENOISE_33")); - rgbmethod->append_text (M("TP_DIRPYRDENOISE_55SOFT")); + rgbmethod->append_text (M("TP_DIRPYRDENOISE_3X3_SOFT")); + rgbmethod->append_text (M("TP_DIRPYRDENOISE_3X3")); + rgbmethod->append_text (M("TP_DIRPYRDENOISE_5X5_SOFT")); rgbmethod->set_active (0); rgbmethod->set_tooltip_text (M("TP_DIRPYRDENOISE_MET_TOOLTIP")); rgbmethodconn = rgbmethod->signal_changed().connect ( sigc::mem_fun(*this, &DirPyrDenoise::rgbmethodChanged) ); medmethod = Gtk::manage (new MyComboBoxText ()); - medmethod->append_text (M("TP_DIRPYRDENOISE_SOFT")); - medmethod->append_text (M("TP_DIRPYRDENOISE_33")); - medmethod->append_text (M("TP_DIRPYRDENOISE_55SOFT")); - medmethod->append_text (M("TP_DIRPYRDENOISE_55")); - medmethod->append_text (M("TP_DIRPYRDENOISE_77")); - medmethod->append_text (M("TP_DIRPYRDENOISE_99")); + medmethod->append_text (M("TP_DIRPYRDENOISE_3X3_SOFT")); + medmethod->append_text (M("TP_DIRPYRDENOISE_3X3")); + medmethod->append_text (M("TP_DIRPYRDENOISE_5X5_SOFT")); + medmethod->append_text (M("TP_DIRPYRDENOISE_5X5")); + medmethod->append_text (M("TP_DIRPYRDENOISE_7X7")); + medmethod->append_text (M("TP_DIRPYRDENOISE_9X9")); medmethod->set_active (0); medmethod->set_tooltip_text (M("TP_DIRPYRDENOISE_MET_TOOLTIP")); medmethodconn = medmethod->signal_changed().connect ( sigc::mem_fun(*this, &DirPyrDenoise::medmethodChanged) ); From c339eddcc9bf6233fe10ae7d939079616f654325 Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Tue, 27 Sep 2016 23:14:17 +0200 Subject: [PATCH 36/41] Regenerated translation files. --- rtdata/languages/Catala | 16 +++++++-------- rtdata/languages/Chinese (Simplified) | 16 +++++++-------- rtdata/languages/Chinese (Traditional) | 16 +++++++-------- rtdata/languages/Czech | 16 +++++++-------- rtdata/languages/Dansk | 16 +++++++-------- rtdata/languages/Deutsch | 20 +++++++++++-------- rtdata/languages/English (UK) | 16 +++++++-------- rtdata/languages/English (US) | 16 +++++++-------- rtdata/languages/Espanol | 16 +++++++-------- rtdata/languages/Euskara | 16 +++++++-------- rtdata/languages/Francais | 16 +++++++-------- rtdata/languages/Greek | 16 +++++++-------- rtdata/languages/Hebrew | 16 +++++++-------- rtdata/languages/Italiano | 16 +++++++-------- rtdata/languages/Japanese | 16 +++++++-------- rtdata/languages/LICENSE | 0 rtdata/languages/Latvian | 16 +++++++-------- rtdata/languages/Magyar | 16 +++++++-------- rtdata/languages/Nederlands | 16 +++++++-------- rtdata/languages/Norsk BM | 16 +++++++-------- rtdata/languages/Polish | 16 +++++++-------- rtdata/languages/Polish (Latin Characters) | 16 +++++++-------- rtdata/languages/Portugues (Brasil) | 16 +++++++-------- rtdata/languages/Russian | 16 +++++++-------- rtdata/languages/Serbian (Cyrilic Characters) | 16 +++++++-------- rtdata/languages/Serbian (Latin Characters) | 16 +++++++-------- rtdata/languages/Slovak | 16 +++++++-------- rtdata/languages/Suomi | 16 +++++++-------- rtdata/languages/Swedish | 16 +++++++-------- rtdata/languages/Turkish | 16 +++++++-------- 30 files changed, 236 insertions(+), 232 deletions(-) mode change 100644 => 100755 rtdata/languages/LICENSE diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala index f9f393139..3d5c4863c 100644 --- a/rtdata/languages/Catala +++ b/rtdata/languages/Catala @@ -1622,11 +1622,12 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1664,12 +1665,12 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1680,7 +1681,6 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified) index ad1c06481..70748624f 100644 --- a/rtdata/languages/Chinese (Simplified) +++ b/rtdata/languages/Chinese (Simplified) @@ -1556,11 +1556,12 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1600,12 +1601,12 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1615,7 +1616,6 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional) index 9ce592251..a4dfae140 100644 --- a/rtdata/languages/Chinese (Traditional) +++ b/rtdata/languages/Chinese (Traditional) @@ -1430,11 +1430,12 @@ TP_WBALANCE_TEMPERATURE;色溫 !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1477,12 +1478,12 @@ TP_WBALANCE_TEMPERATURE;色溫 !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1493,7 +1494,6 @@ TP_WBALANCE_TEMPERATURE;色溫 !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Czech b/rtdata/languages/Czech index 918c87557..fd7aad1f9 100644 --- a/rtdata/languages/Czech +++ b/rtdata/languages/Czech @@ -1354,11 +1354,6 @@ TP_DARKFRAME_LABEL;Tmavý snímek TP_DEFRINGE_LABEL;Odstranění lemu TP_DEFRINGE_RADIUS;Poloměr TP_DEFRINGE_THRESHOLD;Práh -TP_DIRPYRDENOISE_33;3×3 silný -TP_DIRPYRDENOISE_55;5×5 silný -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Pouze barevnost TP_DIRPYRDENOISE_AUT;Automatická celková TP_DIRPYRDENOISE_AUTO;Automatická celková @@ -1401,12 +1396,10 @@ TP_DIRPYRDENOISE_METHOD11;Kvalita TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Kvalita může být přizpůsobena vzoru šumu. Nastavení "Vysoká" vylepší efekt redukce šumu za cenu navýšení času zpracování. TP_DIRPYRDENOISE_METHOD_TOOLTIP;Pro raw obrázky může být použita jak RGB tak i L*a*b* metoda.\n\nPro ostatní obrázky bude vždy použita metoda L*a*b* bez ohledu na výběr. TP_DIRPYRDENOISE_METM_TOOLTIP;Pokud je použito 'Pouze Jas' a 'L*a*b*' metody, bude při odstranění šumu použit filtr medián hned po vlnkové transformaci.\nPokud je použit "RGB" mód, bude filtr použit až na úplný závěr procesu redukce šumu. -TP_DIRPYRDENOISE_MET_TOOLTIP;Aplikuje filtr medián požadované velikosti. Čím větší velikost, tím déle to trvá.\n\n3×3 jemný: upraví 5 pixelů v rozsahu jednoho pixelu.\n3×3: upraví 9 pixelů v rozsahu jednoho pixelu.\n5×5 jemný; upraví 13 pixelů v rozsahu dvou pixelů.\n5×5: upraví 25 pixelů v rozsahu dvou pixelů.\n7×7: upraví 49 pixelů v rozsahu tří pixelů.\n9×9: upraví 81 pixelů v rozsahu čtyř pixelů.\n\nV některých případech může být větší kvality dosaženo pomocí několika průběhů s menším rozsahem než jedním průběhem s velkým rozsahem. TP_DIRPYRDENOISE_NOISELABEL;Náhled šumu: Průměr=%1 Výšky=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;Náhled šumu: Průměr= - Výšky= - TP_DIRPYRDENOISE_NRESID_TOOLTIP;Zobrazuje zbývající úroveň zašumění části obrázku viditelného v náhledu po vlnkové transformaci.\n\n>300 Hodně šumu\n100-300 Šum\n50-100 Málo šumu\n<50 Velmi málo šumu\n\nUpozornění: hodnoty RGB a L*a*b* režimu se budou lišit. Protože v RGB režimu nedochází ke kompletnímu oddělení jasu a barev jsou RGB hodnoty jméně přesné TP_DIRPYRDENOISE_PASSES;Počet průchodů mediánu -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Aplikování medián filtru 3×3 se třemi průchody často vede k lepšímu výsledku než jednou aplikovaný filtr 7×7. TP_DIRPYRDENOISE_PON;Více zónová automatika TP_DIRPYRDENOISE_PRE;Více zónový náhled TP_DIRPYRDENOISE_PREV;Náhled @@ -1417,7 +1410,6 @@ TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Běžná TP_DIRPYRDENOISE_SHALBI;Vysoká TP_DIRPYRDENOISE_SLI;Posuvník -TP_DIRPYRDENOISE_SOFT;3×3 TP_DIRPYRDENOISE_TILELABEL;Velikost dlaždice=%1, Střed: Tx=%2 Ty=%3 TP_DIRPYREQUALIZER_ALGO;Rozsah pleťových tónů TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Jemný: blíž k barvám pleti, minimalizuje zásahy na ostatních barvách.\nVelký: více zabrání vzniku artefaktů. @@ -2025,6 +2017,14 @@ ZOOMPANEL_ZOOMOUT;Oddálit\nZkratka: - !TP_CBDL_BEF;Before Black-and-White !TP_CBDL_METHOD;Process located !TP_CBDL_METHOD_TOOLTIP;Choose whether the Contrast by Detail Levels tool is to be positioned after the Black-and-White tool, which makes it work in L*a*b* space, or before it, which makes it work in RGB space. +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_FILMSIMULATION_SLOWPARSEDIR;RawTherapee is configured to look for Hald CLUT images, which are used for the Film Simulation tool, in a folder which is taking too long to load.\nGo to Preferences > Image Processing > Film Simulation\nto see which folder is being used. You should either point RawTherapee to a folder which contains only Hald CLUT images and nothing more, or to an empty folder if you don't want to use the Film Simulation tool.\n\nRead the Film Simulation article in RawPedia for more information.\n\nDo you want to cancel the scan now? !TP_ICM_PROFILEINTENT;Rendering Intent !TP_NEUTRAL;Reset diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk index 772933ef5..f63f74969 100644 --- a/rtdata/languages/Dansk +++ b/rtdata/languages/Dansk @@ -1428,11 +1428,12 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1491,7 +1492,6 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Deutsch b/rtdata/languages/Deutsch index f65001418..12a66c991 100644 --- a/rtdata/languages/Deutsch +++ b/rtdata/languages/Deutsch @@ -1380,11 +1380,6 @@ TP_DARKFRAME_LABEL;Dunkelbild TP_DEFRINGE_LABEL;Farbsaum entfernen (Defringe) TP_DEFRINGE_RADIUS;Radius TP_DEFRINGE_THRESHOLD;Schwellenwert -TP_DIRPYRDENOISE_33;3×3 stark -TP_DIRPYRDENOISE_55;5×5 stark -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Nur Farbe TP_DIRPYRDENOISE_AUT;Automatisch Global TP_DIRPYRDENOISE_AUTO;Automatisch Global @@ -1427,12 +1422,10 @@ TP_DIRPYRDENOISE_METHOD11;Qualität TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Einstellung der Qualität der Rauschreduzierung. Die Einstellung “Hoch“ verbessert die Rauschreduzierung auf Kosten der Verarbeitungszeit. TP_DIRPYRDENOISE_METHOD_TOOLTIP;Für RAW-Bilder kann entweder die RGB- oder L*a*b*-Methode verwendet werden.\n\nFür andere Bilder wird unabhängig von der Auswahl immer die L*a*b*-Methode verwendet. TP_DIRPYRDENOISE_METM_TOOLTIP;Bei der Methode “Nur Luminanz“ und “L*a*b*“, wird der Medianfilter nach den Waveletschritten verarbeitet.\nBei RGB wird der Medianfilter am Ende der Rauschreduzierung verarbeitet. -TP_DIRPYRDENOISE_MET_TOOLTIP;Wendet einen Medianfilter mit der angegebenen Größe an. Je größer der Bereich, desto länger dauert die Verarbeitung..\n\n3x3: Verarbeitet 5 Pixel in einem 1-Pixelbereich.\n3x3 stark: Verarbeitet 9 Pixel in einem 1-Pixelbereich.\n5x5: Verarbeitet 13 Pixel in einem 2-Pixelbereich.\n5x5 stark: Verarbeitet 25 Pixel in einem 2-Pixelbereich.\n7x7: Verarbeitet 49 Pixel in einem 3-Pixelbereich.\n9x9: Verarbeitet 81 Pixel in einem 4-Pixelbereich.\n\nManchmal erzielt man mit einem kleinen Bereich mit mehreren Iterationen eine bessere Qualität als mit einem großen Bereich. TP_DIRPYRDENOISE_NOISELABEL;Rauschen: Mittelwert=%1 Hoch=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;Rauschen: Mittelwert = --- Hoch = --- TP_DIRPYRDENOISE_NRESID_TOOLTIP;Zeigt das Restrauschen des sichtbaren Bildbereichs in der 100%-Ansicht an.\n\n<50: Sehr wenig Rauschen\n50 - 100: Wenig Rauschen\n100 - 300: Durchschnittliches Rauschen\n>300: Hohes Rauschen\n\nDie Werte unterscheiden sich im L*a*b*- und RGB-Modus. Die RGB-Werte sind ungenauer, da der RGB-Modus Luminanz und Chrominanz nicht komplett trennt. TP_DIRPYRDENOISE_PASSES;Medianiterationen -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Ein 3x3-Medianfilter mit 3 Iterationen erzielt oft bessere Ergebnisse als ein 7x7-Medianfilter mit nur einer Iteration. TP_DIRPYRDENOISE_PON;Auto-Multizonen TP_DIRPYRDENOISE_PRE;Vorschau TP_DIRPYRDENOISE_PREV;Vorschau @@ -1443,7 +1436,6 @@ TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Standard TP_DIRPYRDENOISE_SHALBI;Hoch TP_DIRPYRDENOISE_SLI;Regler -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYRDENOISE_TILELABEL;Kachelgröße=%1 Zentrum: Tx=%2 Ty=%2 TP_DIRPYREQUALIZER_ALGO;Hautfarbtonbereich TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fein: Ist näher an den Hautfarbtönen und minimiert den Einfluss auf andere Farben.\n\nGrob: Minimiert Artefakte. @@ -2053,3 +2045,15 @@ ZOOMPANEL_ZOOMFITSCREEN;An Bildschirm anpassen\nTaste: f ZOOMPANEL_ZOOMIN;Hineinzoomen\nTaste: + ZOOMPANEL_ZOOMOUT;Herauszoomen\nTaste: - +!!!!!!!!!!!!!!!!!!!!!!!!! +! Untranslated keys follow; remove the ! prefix after an entry is translated. +!!!!!!!!!!!!!!!!!!!!!!!!! + +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. diff --git a/rtdata/languages/English (UK) b/rtdata/languages/English (UK) index 20966492f..3acddbed5 100644 --- a/rtdata/languages/English (UK) +++ b/rtdata/languages/English (UK) @@ -1386,11 +1386,12 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1431,12 +1432,12 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1446,7 +1447,6 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYREQUALIZER_ARTIF;Reduce artifacts !TP_DIRPYREQUALIZER_HUESKIN;Skin hue !TP_DIRPYREQUALIZER_HUESKIN_TOOLTIP;This pyramid is for the upper part, so far as the algorithm at its maximum efficiency.\nTo the lower part, the transition zones.\nIf you need to move the area significantly to the left or right - or if there are artifacts: the white balance is incorrect\nYou can slightly reduce the zone to prevent the rest of the image is affected. diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US) index 5b3578336..550798ed0 100644 --- a/rtdata/languages/English (US) +++ b/rtdata/languages/English (US) @@ -1352,11 +1352,12 @@ !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1399,12 +1400,12 @@ !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1415,7 +1416,6 @@ !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Espanol b/rtdata/languages/Espanol index ddcc4a362..a6b52f597 100644 --- a/rtdata/languages/Espanol +++ b/rtdata/languages/Espanol @@ -1162,10 +1162,6 @@ TP_DARKFRAME_LABEL;Toma Negra TP_DEFRINGE_LABEL;Quitar borde púrpura TP_DEFRINGE_RADIUS;Radio TP_DEFRINGE_THRESHOLD;Umbral -TP_DIRPYRDENOISE_33;3×3 fuerte -TP_DIRPYRDENOISE_55;5×5 fuerte -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 TP_DIRPYRDENOISE_BLUE;Crominancia: Azul-Amarillo TP_DIRPYRDENOISE_CHROMA;Crominancia: Maestra TP_DIRPYRDENOISE_CURVEEDITOR_L_TOOLTIP;Modula la acción de eliminación de ruido 'de luminancia' @@ -1189,15 +1185,12 @@ TP_DIRPYRDENOISE_METHOD11;Calidad TP_DIRPYRDENOISE_METHOD11_TOOLTIP;La Calidad puede ser adaptada a un patrón de ruido. Al seleccionar "Alto" se incrementa el efecto de reducción de ruido a costa de prolongar el tiempo de procesamiento. TP_DIRPYRDENOISE_METHOD_TOOLTIP;Para imágenes raw puede usar tanto el método RGB como el Lab.\n\nPara imágenes no raw el método Lab será usado de todas maneras, ignorando el método seleccionado. TP_DIRPYRDENOISE_METM_TOOLTIP;Cuando se utiliza "Sólo Luminancia" y los métodos "Lab", el filtro Median será aplicado inmediatamente después de cada proceso de toda la cadena de reducción de ruido.\nCuando se utiliza el modo "RGB", el filtro Median se aplicará al final de toda la cadena de procesos de reducción de ruido. -TP_DIRPYRDENOISE_MET_TOOLTIP;Aplicar el filtro Median al tamaño deseado. Cuanto mayor sea el tamaño, demandará más tiempo.\n\n3x3 suave: procesar 5 píxeles en un rango de 1 píxel.\n3x3: procesar 9 píxeles en un rango de 1 píxel.\n5x5 suave: procesar 13 píxeles en un rango de 2 píxeles.\n5x5: procesar 25 píxeles en un rango de 2 píxeles.\n7x7: procesar 49 píxeles en un rango 3 píxeles.\n\nAlgunas veces es posible lograr una mayor calidad ejecutando varias iteraciones con un rango pequeño, que con una sóla iteración con un rango amplio. TP_DIRPYRDENOISE_PASSES;Iteracciones Median -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Aplicar el filtro Median 3x3 con 3 iteraciones, a menudo produce mejores resultados que aplicar una sola vez 7x7. TP_DIRPYRDENOISE_RED;Crominancia: Rojo-Verde TP_DIRPYRDENOISE_RGB;RGB TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Estándar TP_DIRPYRDENOISE_SHALBI;Alto -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYREQUALIZER_ALGO;Rango de Color de Piel TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fino: cercano a los colores de la piel, minimizando la acción en otros colores\nAmplio: evita más elementos extraños. TP_DIRPYREQUALIZER_HUESKIN;Matiz de la piel @@ -1795,7 +1788,12 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1815,9 +1813,11 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: - !TP_DIRPYRDENOISE_LUMAFR_TOOLTIP;Wavelet on luminance and Fourier transform for luminance detail !TP_DIRPYRDENOISE_MAN;Manual !TP_DIRPYRDENOISE_MANU;Manual +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara index 94bc87b4b..5a5f50b1a 100644 --- a/rtdata/languages/Euskara +++ b/rtdata/languages/Euskara @@ -1428,11 +1428,12 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1491,7 +1492,6 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Francais b/rtdata/languages/Francais index 7c3e411b4..668bf103c 100644 --- a/rtdata/languages/Francais +++ b/rtdata/languages/Francais @@ -1295,11 +1295,6 @@ TP_DARKFRAME_LABEL;Trame Noire TP_DEFRINGE_LABEL;Aberration chromatique TP_DEFRINGE_RADIUS;Rayon TP_DEFRINGE_THRESHOLD;Seuil -TP_DIRPYRDENOISE_33;3×3 fort -TP_DIRPYRDENOISE_55;5×5 fort -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Chroma uniquement TP_DIRPYRDENOISE_AUT;Global automatique TP_DIRPYRDENOISE_AUTO;Global automatique @@ -1342,12 +1337,10 @@ TP_DIRPYRDENOISE_METHOD11;Qualité TP_DIRPYRDENOISE_METHOD11_TOOLTIP;La qualité peut être adapté à la trame du bruit. Régler sur "haut" augmentera l'effet de la réduction de bruit au prix d'un temps de traitement plus long. TP_DIRPYRDENOISE_METHOD_TOOLTIP;Pour les images raw, les méthodes RVB ou Lab peuvent être utilisées.\n\nPour les images non-raw la méthode Lab sera utilisée, indépendamment de ce qu'indique ce bouton. TP_DIRPYRDENOISE_METM_TOOLTIP;Lorsque vous utilisez les méthodes "Luminance seulement" et "Lab", un filtrage médian sera effectué juste après l'étape des ondelettes dans le pipeline de la réduction de bruit.\nEm mode "RVB", il sera effectué à la toute fin du pipeline de la réduction de bruit. -TP_DIRPYRDENOISE_MET_TOOLTIP;Applique un filtre médian de la taille souhaité. Plus il est large, plus cela prendra de temps.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. TP_DIRPYRDENOISE_NOISELABEL;Bruit de l'aperçu: Moyen=%1 Haut=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;Bruit de l'aperçu: Moyen= - Haut= - TP_DIRPYRDENOISE_NRESID_TOOLTIP;Affiche les niveaux de bruit résiduel de la partie de l'image visible dans l'aperçu après les ondelettes.\n\n>300 Très bruité\n100-300 Bruité\n50-100 Peu bruité\n<50 Très peu bruité\n\nAttention, les valeurs diffèreront entre le mode RVB et L*a*b*. Les valeurs RVB sont moins précises car le mode RVB ne séparent pas complètement la luminance et la chrominance. TP_DIRPYRDENOISE_PASSE;Itérations -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Appliquer 3 itération du filtre médian 3x3 donne de meilleurs résultats qu'appliquer une seule fois le filtre 7x7. TP_DIRPYRDENOISE_PON;Multi-zones auto TP_DIRPYRDENOISE_PRE;Aperçu multi-zones TP_DIRPYRDENOISE_PREV;Aperçu @@ -1358,7 +1351,6 @@ TP_DIRPYRDENOISE_RGBM;RVB TP_DIRPYRDENOISE_SHAL;Standard TP_DIRPYRDENOISE_SHALBI;Haut TP_DIRPYRDENOISE_SLI;Curseur -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYRDENOISE_TILELABEL;Taille des tuiles =%1, Centre: Tx=%2 Ty=%3 TP_DIRPYREQUALIZER_ALGO;Domaine des tons chairs TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fin: plus proche des tons chairs, minimisant l'actions sur les autres couleurs\nLarge: évite plus d'artéfacts @@ -1942,7 +1934,15 @@ ZOOMPANEL_ZOOMOUT;Zoom Arrière\nRaccourci: - !TP_CBDL_METHOD;Process located !TP_CBDL_METHOD_TOOLTIP;Choose whether the Contrast by Detail Levels tool is to be positioned after the Black-and-White tool, which makes it work in L*a*b* space, or before it, which makes it work in RGB space. !TP_COLORTONING_NEUTRAL;Reset sliders +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_PASSES;Median iterations +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_FILMSIMULATION_SLOWPARSEDIR;RawTherapee is configured to look for Hald CLUT images, which are used for the Film Simulation tool, in a folder which is taking too long to load.\nGo to Preferences > Image Processing > Film Simulation\nto see which folder is being used. You should either point RawTherapee to a folder which contains only Hald CLUT images and nothing more, or to an empty folder if you don't want to use the Film Simulation tool.\n\nRead the Film Simulation article in RawPedia for more information.\n\nDo you want to cancel the scan now? !TP_ICM_PROFILEINTENT;Rendering Intent !TP_NEUTRAL;Reset diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek index 2f66d779f..54da61d39 100644 --- a/rtdata/languages/Greek +++ b/rtdata/languages/Greek @@ -1427,11 +1427,12 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1474,12 +1475,12 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1490,7 +1491,6 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew index 10de78b94..2f10d945a 100644 --- a/rtdata/languages/Hebrew +++ b/rtdata/languages/Hebrew @@ -1428,11 +1428,12 @@ TP_WBALANCE_TEMPERATURE;מידת חום !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;מידת חום !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1491,7 +1492,6 @@ TP_WBALANCE_TEMPERATURE;מידת חום !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Italiano b/rtdata/languages/Italiano index e752f8acf..ed7c308c6 100644 --- a/rtdata/languages/Italiano +++ b/rtdata/languages/Italiano @@ -1694,11 +1694,12 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1728,12 +1729,12 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1742,7 +1743,6 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ARTIF;Reduce artifacts !TP_EPD_GAMMA;Gamma diff --git a/rtdata/languages/Japanese b/rtdata/languages/Japanese index 8a9fdff4d..c8352a7fc 100644 --- a/rtdata/languages/Japanese +++ b/rtdata/languages/Japanese @@ -1329,11 +1329,6 @@ TP_DARKFRAME_LABEL;ダークフレーム TP_DEFRINGE_LABEL;フリンジ低減 TP_DEFRINGE_RADIUS;半径 TP_DEFRINGE_THRESHOLD;しきい値 -TP_DIRPYRDENOISE_33;強い3x3 -TP_DIRPYRDENOISE_55;強い5x5 -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;色ノイズだけ TP_DIRPYRDENOISE_AUT;自動(分割方式) TP_DIRPYRDENOISE_AUTO;自動(分割方式) @@ -1376,12 +1371,10 @@ TP_DIRPYRDENOISE_METHOD11;ノイズ低減の質 TP_DIRPYRDENOISE_METHOD11_TOOLTIP;ノイズの状態に応じて低減効果の質を選べます:1-標準 2-高い\n2の方がノイズ低減効果は高くなりますが、その分処理時間が増えます。 TP_DIRPYRDENOISE_METHOD_TOOLTIP;raw画像は、RGBまたはL*a*b*方式のいずれかを使用することができます。\n\nraw以外の画像は、選択にかかわらずL*a*b*方式が採用されます TP_DIRPYRDENOISE_METM_TOOLTIP;フィルタリングの方式で、"輝度のみ"と"L*a*b*"を選択した場合、メディアンフィルタリングはノイズ低減行程でウェーブレット変換が行われた直後に適用されます\n"RGB"モードの場合は、ノイズ低減行程の最後で適用されます -TP_DIRPYRDENOISE_MET_TOOLTIP;適用するメディアンフィルターのサイズを決めます。大きくするとその分処理時間が増えます。\n\nソフトな3x3:1ピクセル範囲で5ピクセルの処理を行います\n強い3x3:1ピクセル範囲で9ピクセルの処理を行います\nソフトな5x5:2ピクセル範囲で13ピクセルの処理を行います\n強い5x5:2ピクセル範囲で25ピクセルの処理を行います\n7x7:3ピクセル範囲で49ピクセルの処理を行います\n9x9:4ピクセル範囲で81ピクセルの処理を行います\n\n小さいフィルターを使って、繰り返し処理をした方が、大きいフィルターを1回使うより結果が良いこともあります。 TP_DIRPYRDENOISE_NOISELABEL;プレビューのノイズ: 中間色度=%1 高色度=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;プレビューのノイズ: 中間色度= - 高色度= - TP_DIRPYRDENOISE_NRESID_TOOLTIP;ウェーブレット変換後、プレビューで見える部分画像で残ったノイズのレベルを表示します\n\n>300以上 非常にノイズが多い\n100~300 ノイズが多い\n50~100 ノイズが少ない\n50以下 ノイズが非常に少ない\n\n算出値はRGBとL*a*b*モードでは異なります。RGBモードは輝度と色を完全に切り離すことが出来ないので、算出値の精度は劣ります。 TP_DIRPYRDENOISE_PASSES;フィルタリングの繰り返し回数 -TP_DIRPYRDENOISE_PASSES_TOOLTIP;3x3のメディアンフィルターを3回繰り返して適用する方が、7x7のフィルターを1回適用するより、良い結果を生むことが多いです TP_DIRPYRDENOISE_PON;自動(多分割方式) TP_DIRPYRDENOISE_PRE;自動(プレビュー方式) TP_DIRPYRDENOISE_PREV;プレビュー方式 @@ -1392,7 +1385,6 @@ TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;標準 TP_DIRPYRDENOISE_SHALBI;高い TP_DIRPYRDENOISE_SLI;スライダー -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYRDENOISE_TILELABEL;タイルのサイズ=%1, 中心位置: X座標=%2 Y座標=%3 TP_DIRPYREQUALIZER_ALGO;肌色の範囲 TP_DIRPYREQUALIZER_ALGO_TOOLTIP;ファイン:撮影の肌色に近い部分に働くアルゴリズム、他の色への影響を最小限に抑えます\n広範: アーティファクトの増加を避けるアルゴリズムです @@ -1975,6 +1967,14 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: - !TP_CBDL_BEF;Before Black-and-White !TP_CBDL_METHOD;Process located !TP_CBDL_METHOD_TOOLTIP;Choose whether the Contrast by Detail Levels tool is to be positioned after the Black-and-White tool, which makes it work in L*a*b* space, or before it, which makes it work in RGB space. +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_FILMSIMULATION_SLOWPARSEDIR;RawTherapee is configured to look for Hald CLUT images, which are used for the Film Simulation tool, in a folder which is taking too long to load.\nGo to Preferences > Image Processing > Film Simulation\nto see which folder is being used. You should either point RawTherapee to a folder which contains only Hald CLUT images and nothing more, or to an empty folder if you don't want to use the Film Simulation tool.\n\nRead the Film Simulation article in RawPedia for more information.\n\nDo you want to cancel the scan now? !TP_ICM_PROFILEINTENT;Rendering Intent !TP_NEUTRAL;Reset diff --git a/rtdata/languages/LICENSE b/rtdata/languages/LICENSE old mode 100644 new mode 100755 diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian index 20fbad2f8..46ae366e0 100644 --- a/rtdata/languages/Latvian +++ b/rtdata/languages/Latvian @@ -1428,11 +1428,12 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1491,7 +1492,6 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Magyar b/rtdata/languages/Magyar index fc3cdf366..8fec58639 100644 --- a/rtdata/languages/Magyar +++ b/rtdata/languages/Magyar @@ -1574,11 +1574,12 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1617,12 +1618,12 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1633,7 +1634,6 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Nederlands b/rtdata/languages/Nederlands index 239120a91..406214184 100644 --- a/rtdata/languages/Nederlands +++ b/rtdata/languages/Nederlands @@ -1360,11 +1360,6 @@ TP_DARKFRAME_LABEL;Donkerframe TP_DEFRINGE_LABEL;Verzachten (Lab/CIECAM02) TP_DEFRINGE_RADIUS;Straal TP_DEFRINGE_THRESHOLD;Drempel -TP_DIRPYRDENOISE_33;3×3 sterk -TP_DIRPYRDENOISE_55;5×5 sterk -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Alleen chroma TP_DIRPYRDENOISE_AUT;Automatisch algemeen TP_DIRPYRDENOISE_AUTO;Automatisch algemeen @@ -1407,13 +1402,11 @@ TP_DIRPYRDENOISE_METHOD11;Kwaliteit TP_DIRPYRDENOISE_METHOD11_TOOLTIP;De kwaliteit kan worden aangepast aan de hoeveelheid ruis. \nHoog verbetert de ruisonderdrukking, maar verlengt de verwerkingstijd TP_DIRPYRDENOISE_METHOD_TOOLTIP;Voor raw afbeeldingen kan RGB of Lab methode worden gebruikt.\n\nVoor niet-raw afbeeldingen zal altijd de Lab methode worden gebruikt, ongeacht de geselecteerde methode. TP_DIRPYRDENOISE_METM_TOOLTIP;De "Alleen Luminantie" en "L*a*b*" methodes worden meteen na de wavelet stap uitgevoerd bij het onderdrukken van ruis.\nDe "RGB" methode, wordt echter als laatste stap uitgevoerd bij ruisonderdrukking. -TP_DIRPYRDENOISE_MET_TOOLTIP;Mediaan filters. Hoe groter de omvang, hoe langer de verwerking.\n\n3x3: bewerkt 5 pixels in een 1-pixel reeks.\n3x3 sterk: bewerkt 9 pixels in een 1-pixel reeks.\n5x5 soft: bewerkt 13 pixels in een 2-pixel reeks.\n5x5: bewerkt 25 pixels in een 2-pixel reeks.\n7x7: bewerkt 49 pixels in een 3-pixel reeks.\n9x9: bewerkt 81 pixels in een 4-pixel reeks.\n\nSoms is het mogelijk om een beter resultaat te behalen door meerdere iteraties met een kleinere reeks uit te voeren dan 1 iteratie met een grotere reeks. TP_DIRPYRDENOISE_NOISELABEL;Voorbeeld ruis: Gemiddeld=%1 Hoog=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;Voorbeeld ruis: Gemiddeld= - Hoog= - TP_DIRPYRDENOISE_NRESID_TOOLTIP;Toont de overgebleven ruisniveaus van het zichtbare deel van de afbeelding in het voorbeeld na wavelet.\n\n>300 Veel ruis\n100-300 Gemiddeld ruis\n50-100 Weinig ruis\n<50 Zeer weinig ruis\n\nVoorzichtig, de waarden zullen verschillen tussen RGB en L*a*b* mode. De RGB waarden zijn minder accuraat omdat de RGB mode luminantie en chrominantie niet volledig scheidt. TP_DIRPYRDENOISE_PASSE;Herhalingen TP_DIRPYRDENOISE_PASSES;Mediaan herhalingen -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Een 3x3 filter met drie herhalingen geeft meestal een beter resultaat dan eenmaal het 7x7 filter. TP_DIRPYRDENOISE_PON;Auto multi-zone TP_DIRPYRDENOISE_PRE;Voorbeeld multi-zone TP_DIRPYRDENOISE_PREV;Voorbeeld @@ -1424,7 +1417,6 @@ TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Standaard TP_DIRPYRDENOISE_SHALBI;Hoog TP_DIRPYRDENOISE_SLI;Schuifbalk -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYRDENOISE_TILELABEL;Tegel grootte=%1, Centrum: Tx=%2 Ty=%3 TP_DIRPYREQUALIZER_ALGO;Algoritme Huid TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fijn: behoud de kleuren van de huid, minimaliseert de actie op andere kleuren\nGroot: vermijd artefacten @@ -2041,6 +2033,14 @@ ZOOMPANEL_ZOOMOUT;Zoom uit\nSneltoets: - !HISTORY_MSG_441;Retinex - Gain transmission !HISTORY_MSG_442;Retinex - Scale !TP_BWMIX_AUTOCH;Auto +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_RETINEX_GAINOFFS;Gain and Offset (brightness) !TP_RETINEX_GAINTRANSMISSION;Gain transmission !TP_RETINEX_GAINTRANSMISSION_TOOLTIP;Amplify or reduce transmission map to achieve luminance.\nAbscissa: transmission -min from 0, mean, and values (max).\nOrdinate: gain. diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM index 807b9c95e..5427563d7 100644 --- a/rtdata/languages/Norsk BM +++ b/rtdata/languages/Norsk BM @@ -1427,11 +1427,12 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1474,12 +1475,12 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1490,7 +1491,6 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish index 366761246..216ee924c 100644 --- a/rtdata/languages/Polish +++ b/rtdata/languages/Polish @@ -1117,10 +1117,6 @@ TP_DARKFRAME_LABEL;Czarna klatka TP_DEFRINGE_LABEL;Usuwanie widma TP_DEFRINGE_RADIUS;Promień TP_DEFRINGE_THRESHOLD;Próg -TP_DIRPYRDENOISE_33;3×3 silne -TP_DIRPYRDENOISE_55;5×5 silne -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 TP_DIRPYRDENOISE_BLUE;Chrominancja - Błękit-żółć TP_DIRPYRDENOISE_CHROMA;Chrominancja - Główna TP_DIRPYRDENOISE_CURVEEDITOR_L_TOOLTIP;Moduluje działanie usuwania szumów luminancji @@ -1144,15 +1140,12 @@ TP_DIRPYRDENOISE_METHOD11;Jakość TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Jakość może zostać dopasowana do wzoru szumów. Ustawienie "wysoka" ulepsza odszumianie około 20% wzrostu czasu przetwarzania. TP_DIRPYRDENOISE_METHOD_TOOLTIP;Dla obrazów raw można używać metody RGB oraz L*a*b*.\n\nDla obrazów nie-raw metoda L*a*b* zostanie użyta niezależnie od wyboru. TP_DIRPYRDENOISE_METM_TOOLTIP;Przy użyciu metod "tylko luminancja" oraz "L*a*b*", filtrowanie mediana zostanie wykonane prosto po funkcji falki w procesie odszumiania.\nW trybie "RGB" filtrowanie to zostanie wykonana pod koniec calego procesu. -TP_DIRPYRDENOISE_MET_TOOLTIP;Zasrosuj filtrowanie mediana o oknie pożądanego rozmiaru. Im większy rozmiar okna, tym dłużej przetwarzanie zajmie.\n\n3x3 miękki: użyje 5 pikseli w zasięgu 1 pikseli.\n3x3: użyje 9 pikseli w zasięgu 1 pikseli.\n5x5 miękki: użyje 13 pikseli w zasięgu 2 pikseli.\n5x5: użyje 25 pikseli w zasięgu 2 pikseli.\n7x7: użyje 49 pikseli w zasięgu 3 pikseli.\n\nCzasem można uzyskać wyższą jakość wielokrotnym powtórzeniem filtru przy użyciu małego okna niz przy jednokrotnym przetworzeniu przy użyciu dużego okna. TP_DIRPYRDENOISE_PASSES;Liczba powtórzeń mediana -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Trzykrotne powtórzenie filtru mediana przy użyciu okna o rozmiarze 3x3 często skutkuje wyższą jakością niż jednokrotne z oknem o rozmiarze 7x7. TP_DIRPYRDENOISE_RED;Chrominancja - Czerwień-zieleń TP_DIRPYRDENOISE_RGB;RGB TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Standardowa TP_DIRPYRDENOISE_SHALBI;Wysoka -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYREQUALIZER_ALGO;Zakres odcieni skóry TP_DIRPYREQUALIZER_ALGO_TOOLTIP;- TP_DIRPYREQUALIZER_HUESKIN;Odcień skóry @@ -1743,7 +1736,12 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1763,9 +1761,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: - !TP_DIRPYRDENOISE_LUMAFR_TOOLTIP;Wavelet on luminance and Fourier transform for luminance detail !TP_DIRPYRDENOISE_MAN;Manual !TP_DIRPYRDENOISE_MANU;Manual +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters) index 37569990e..170bd52d7 100644 --- a/rtdata/languages/Polish (Latin Characters) +++ b/rtdata/languages/Polish (Latin Characters) @@ -1117,10 +1117,6 @@ TP_DARKFRAME_LABEL;Czarna klatka TP_DEFRINGE_LABEL;Usuwanie widma TP_DEFRINGE_RADIUS;Promien TP_DEFRINGE_THRESHOLD;Prog -TP_DIRPYRDENOISE_33;3×3 silne -TP_DIRPYRDENOISE_55;5×5 silne -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 TP_DIRPYRDENOISE_BLUE;Chrominancja - Blekit-zolc TP_DIRPYRDENOISE_CHROMA;Chrominancja - Glowna TP_DIRPYRDENOISE_CURVEEDITOR_L_TOOLTIP;Moduluje dzialanie usuwania szumow luminancji @@ -1144,15 +1140,12 @@ TP_DIRPYRDENOISE_METHOD11;Jakosc TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Jakosc moze zostac dopasowana do wzoru szumow. Ustawienie "wysoka" ulepsza odszumianie okolo 20% wzrostu czasu przetwarzania. TP_DIRPYRDENOISE_METHOD_TOOLTIP;Dla obrazow raw mozna uzywac metody RGB oraz L*a*b*.\n\nDla obrazow nie-raw metoda L*a*b* zostanie uzyta niezaleznie od wyboru. TP_DIRPYRDENOISE_METM_TOOLTIP;Przy uzyciu metod "tylko luminancja" oraz "L*a*b*", filtrowanie mediana zostanie wykonane prosto po funkcji falki w procesie odszumiania.\nW trybie "RGB" filtrowanie to zostanie wykonana pod koniec calego procesu. -TP_DIRPYRDENOISE_MET_TOOLTIP;Zasrosuj filtrowanie mediana o oknie pozadanego rozmiaru. Im wiekszy rozmiar okna, tym dluzej przetwarzanie zajmie.\n\n3x3 miekki: uzyje 5 pikseli w zasiegu 1 pikseli.\n3x3: uzyje 9 pikseli w zasiegu 1 pikseli.\n5x5 miekki: uzyje 13 pikseli w zasiegu 2 pikseli.\n5x5: uzyje 25 pikseli w zasiegu 2 pikseli.\n7x7: uzyje 49 pikseli w zasiegu 3 pikseli.\n\nCzasem mozna uzyskac wyzsza jakosc wielokrotnym powtorzeniem filtru przy uzyciu malego okna niz przy jednokrotnym przetworzeniu przy uzyciu duzego okna. TP_DIRPYRDENOISE_PASSES;Liczba powtorzen mediana -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Trzykrotne powtorzenie filtru mediana przy uzyciu okna o rozmiarze 3x3 czesto skutkuje wyzsza jakoscia niz jednokrotne z oknem o rozmiarze 7x7. TP_DIRPYRDENOISE_RED;Chrominancja - Czerwien-zielen TP_DIRPYRDENOISE_RGB;RGB TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Standardowa TP_DIRPYRDENOISE_SHALBI;Wysoka -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYREQUALIZER_ALGO;Zakres odcieni skory TP_DIRPYREQUALIZER_ALGO_TOOLTIP;- TP_DIRPYREQUALIZER_HUESKIN;Odcien skory @@ -1743,7 +1736,12 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1763,9 +1761,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: - !TP_DIRPYRDENOISE_LUMAFR_TOOLTIP;Wavelet on luminance and Fourier transform for luminance detail !TP_DIRPYRDENOISE_MAN;Manual !TP_DIRPYRDENOISE_MANU;Manual +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil) index a655ae6e9..ff9d89f18 100644 --- a/rtdata/languages/Portugues (Brasil) +++ b/rtdata/languages/Portugues (Brasil) @@ -1428,11 +1428,12 @@ TP_WBALANCE_TEMPERATURE;Temperatura !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Temperatura !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1491,7 +1492,6 @@ TP_WBALANCE_TEMPERATURE;Temperatura !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian index 969890ad6..883128411 100644 --- a/rtdata/languages/Russian +++ b/rtdata/languages/Russian @@ -1688,11 +1688,12 @@ ZOOMPANEL_ZOOMOUT;Удалить - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1722,12 +1723,12 @@ ZOOMPANEL_ZOOMOUT;Удалить - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1736,7 +1737,6 @@ ZOOMPANEL_ZOOMOUT;Удалить - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Serbian (Cyrilic Characters) b/rtdata/languages/Serbian (Cyrilic Characters) index 35d1f1749..57e334ae5 100644 --- a/rtdata/languages/Serbian (Cyrilic Characters) +++ b/rtdata/languages/Serbian (Cyrilic Characters) @@ -1820,11 +1820,12 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1855,12 +1856,12 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1869,7 +1870,6 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Serbian (Latin Characters) b/rtdata/languages/Serbian (Latin Characters) index ea67134d3..0246c9a36 100644 --- a/rtdata/languages/Serbian (Latin Characters) +++ b/rtdata/languages/Serbian (Latin Characters) @@ -1820,11 +1820,12 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1855,12 +1856,12 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1869,7 +1870,6 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Slovak b/rtdata/languages/Slovak index 422c08e3b..d78119721 100644 --- a/rtdata/languages/Slovak +++ b/rtdata/languages/Slovak @@ -1467,11 +1467,12 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1510,12 +1511,12 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1526,7 +1527,6 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi index a3f79f469..20bad26da 100644 --- a/rtdata/languages/Suomi +++ b/rtdata/languages/Suomi @@ -1428,11 +1428,12 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1491,7 +1492,6 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. diff --git a/rtdata/languages/Swedish b/rtdata/languages/Swedish index d4d5d3e10..d6556b8c2 100644 --- a/rtdata/languages/Swedish +++ b/rtdata/languages/Swedish @@ -1240,11 +1240,6 @@ TP_DARKFRAME_LABEL;Svartbild TP_DEFRINGE_LABEL;Fyll ut överstrålning TP_DEFRINGE_RADIUS;Radie TP_DEFRINGE_THRESHOLD;Tröskelvärde -TP_DIRPYRDENOISE_33;3×3 kraftig -TP_DIRPYRDENOISE_55;5×5 kraftig -TP_DIRPYRDENOISE_55SOFT;5×5 -TP_DIRPYRDENOISE_77;7×7 -TP_DIRPYRDENOISE_99;9×9 TP_DIRPYRDENOISE_ABM;Endast chroma TP_DIRPYRDENOISE_AUTO_TOOLTIP;Försök att utvärdera chroma-bruset\nVar försiktig, den här beräkningen görs på genomsnittet och är tämligen subjektiv! TP_DIRPYRDENOISE_BLUE;Krominans - Blå-Gul @@ -1278,7 +1273,6 @@ TP_DIRPYRDENOISE_RGBM;RGB TP_DIRPYRDENOISE_SHAL;Standard TP_DIRPYRDENOISE_SHALBI;Hög TP_DIRPYRDENOISE_SLI;Reglage -TP_DIRPYRDENOISE_SOFT;3x3 TP_DIRPYREQUALIZER_ALGO;Algoritm för hudtoner TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fin: närmre hudens färger, minimerar inverkan på andra färger\nStor: undvik än mer artefakter TP_DIRPYREQUALIZER_ARTIF;Reducera artefakter @@ -1830,6 +1824,12 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: - !TP_COLORTONING_TWOALL;Special chroma !TP_COLORTONING_TWOBY;Special a* and b* !TP_COLORTONING_TWOCOLOR_TOOLTIP;Standard chroma:\nLinear response, a* = b*.\n\nSpecial chroma:\nLinear response, a* = b*, but unbound - try under the diagonal.\n\nSpecial a* and b*:\nLinear response unbound with separate curves for a* and b*. Intended for special effects.\n\nSpecial chroma 2 colors:\nMore predictable. +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global !TP_DIRPYRDENOISE_C2TYPE_TOOLTIP;Manual\nActs on the full image.\nYou control the noise reduction settings manually.\n\nAutomatic global\nActs on the full image.\n9 zones are used to calculate a global chrominance noise reduction setting.\n\nPreview\nActs on the whole image.\nThe part of the image visible in the preview is used to calculate global chrominance noise reduction settings. @@ -1846,12 +1846,12 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: - !TP_DIRPYRDENOISE_MED_TOOLTIP;Enabled median denoising !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREVLABEL;Preview size=%1, Center: Px=%2 Py=%3 diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish index 38c0a1ecf..329a9627a 100644 --- a/rtdata/languages/Turkish +++ b/rtdata/languages/Turkish @@ -1427,11 +1427,12 @@ TP_WBALANCE_TEMPERATURE;Isı !TP_DEFRINGE_LABEL;Defringe !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold -!TP_DIRPYRDENOISE_33;3×3 strong -!TP_DIRPYRDENOISE_55;5×5 strong -!TP_DIRPYRDENOISE_55SOFT;5×5 -!TP_DIRPYRDENOISE_77;7×7 -!TP_DIRPYRDENOISE_99;9×9 +!TP_DIRPYRDENOISE_3X3;3×3 +!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_5X5;5×5 +!TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft +!TP_DIRPYRDENOISE_7X7;7×7 +!TP_DIRPYRDENOISE_9X9;9x9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1474,12 +1475,12 @@ TP_WBALANCE_TEMPERATURE;Isı !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired size. The larger the size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 1-pixel range.\n3x3: treats 9 pixels in a 1-pixel range.\n5x5 soft: treats 13 pixels in a 2-pixel range.\n5x5: treats 25 pixels in a 2-pixel range.\n7x7: treats 49 pixels in a 3-pixel range.\n9x9: treats 81 pixels in a 4-pixel range.\n\nSometimes it is possible to achieve higher quality running several iterations with a small range than one iteration with a large range. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying a 3x3 median filter with three iterations often leads to better results than applying 7x7 once. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview @@ -1490,7 +1491,6 @@ TP_WBALANCE_TEMPERATURE;Isı !TP_DIRPYRDENOISE_SHAL;Standard !TP_DIRPYRDENOISE_SHALBI;High !TP_DIRPYRDENOISE_SLI;Slider -!TP_DIRPYRDENOISE_SOFT;3x3 !TP_DIRPYRDENOISE_TILELABEL;Tile size=%1, Center: Tx=%2 Ty=%3 !TP_DIRPYREQUALIZER_ALGO;Skin Color Range !TP_DIRPYREQUALIZER_ALGO_TOOLTIP;Fine: closer to the colors of the skin, minimizing the action on other colors\nLarge: avoid more artifacts. From 6ba96a10e97aee695d2a4b272a14c8a84cb71476 Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Tue, 27 Sep 2016 23:24:02 +0200 Subject: [PATCH 37/41] =?UTF-8?q?Replaced=20"x"=20with=20Floessie's=20"?= =?UTF-8?q?=C3=97".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rtdata/languages/Catala | 10 +++++----- rtdata/languages/Chinese (Simplified) | 10 +++++----- rtdata/languages/Chinese (Traditional) | 10 +++++----- rtdata/languages/Czech | 8 ++++---- rtdata/languages/Dansk | 10 +++++----- rtdata/languages/Deutsch | 8 ++++---- rtdata/languages/English (UK) | 10 +++++----- rtdata/languages/English (US) | 10 +++++----- rtdata/languages/Espanol | 10 +++++----- rtdata/languages/Euskara | 10 +++++----- rtdata/languages/Francais | 10 +++++----- rtdata/languages/Greek | 10 +++++----- rtdata/languages/Hebrew | 10 +++++----- rtdata/languages/Italiano | 10 +++++----- rtdata/languages/Japanese | 10 +++++----- rtdata/languages/Latvian | 10 +++++----- rtdata/languages/Magyar | 10 +++++----- rtdata/languages/Nederlands | 10 +++++----- rtdata/languages/Norsk BM | 10 +++++----- rtdata/languages/Polish | 10 +++++----- rtdata/languages/Polish (Latin Characters) | 10 +++++----- rtdata/languages/Portugues (Brasil) | 10 +++++----- rtdata/languages/Russian | 10 +++++----- rtdata/languages/Serbian (Cyrilic Characters) | 10 +++++----- rtdata/languages/Serbian (Latin Characters) | 10 +++++----- rtdata/languages/Slovak | 10 +++++----- rtdata/languages/Suomi | 10 +++++----- rtdata/languages/Swedish | 10 +++++----- rtdata/languages/Turkish | 10 +++++----- rtdata/languages/default | 10 +++++----- 30 files changed, 148 insertions(+), 148 deletions(-) diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala index 3d5c4863c..c31e73a4d 100644 --- a/rtdata/languages/Catala +++ b/rtdata/languages/Catala @@ -335,7 +335,7 @@ HISTORY_MSG_145;Microcontrast - uniformitat HISTORY_MSG_146;Afinament de vores HISTORY_MSG_147;Afinant vores - només luminància HISTORY_MSG_148;Microcontrast -HISTORY_MSG_149;Microcontrast - matriu 3x3 +HISTORY_MSG_149;Microcontrast - matriu 3×3 HISTORY_MSG_150;Artefactes en post-demosaicat/reducció de soroll HISTORY_MSG_151;Vibrància HISTORY_MSG_152;Vibrància - tons pastel @@ -1623,11 +1623,11 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1665,12 +1665,12 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified) index 70748624f..9807768f9 100644 --- a/rtdata/languages/Chinese (Simplified) +++ b/rtdata/languages/Chinese (Simplified) @@ -943,7 +943,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !HISTORY_MSG_144;Microcontrast - Quantity !HISTORY_MSG_145;Microcontrast - Uniformity !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1557,11 +1557,11 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1601,12 +1601,12 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional) index a4dfae140..b0dd37f50 100644 --- a/rtdata/languages/Chinese (Traditional) +++ b/rtdata/languages/Chinese (Traditional) @@ -663,7 +663,7 @@ TP_WBALANCE_TEMPERATURE;色溫 !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1431,11 +1431,11 @@ TP_WBALANCE_TEMPERATURE;色溫 !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1478,12 +1478,12 @@ TP_WBALANCE_TEMPERATURE;色溫 !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Czech b/rtdata/languages/Czech index fd7aad1f9..8b2db6ca4 100644 --- a/rtdata/languages/Czech +++ b/rtdata/languages/Czech @@ -2018,13 +2018,13 @@ ZOOMPANEL_ZOOMOUT;Oddálit\nZkratka: - !TP_CBDL_METHOD;Process located !TP_CBDL_METHOD_TOOLTIP;Choose whether the Contrast by Detail Levels tool is to be positioned after the Black-and-White tool, which makes it work in L*a*b* space, or before it, which makes it work in RGB space. !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_9X9;9×9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_FILMSIMULATION_SLOWPARSEDIR;RawTherapee is configured to look for Hald CLUT images, which are used for the Film Simulation tool, in a folder which is taking too long to load.\nGo to Preferences > Image Processing > Film Simulation\nto see which folder is being used. You should either point RawTherapee to a folder which contains only Hald CLUT images and nothing more, or to an empty folder if you don't want to use the Film Simulation tool.\n\nRead the Film Simulation article in RawPedia for more information.\n\nDo you want to cancel the scan now? !TP_ICM_PROFILEINTENT;Rendering Intent !TP_NEUTRAL;Reset diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk index f63f74969..177dfce05 100644 --- a/rtdata/languages/Dansk +++ b/rtdata/languages/Dansk @@ -659,7 +659,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1429,11 +1429,11 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1476,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Deutsch b/rtdata/languages/Deutsch index 12a66c991..90cec593b 100644 --- a/rtdata/languages/Deutsch +++ b/rtdata/languages/Deutsch @@ -2050,10 +2050,10 @@ ZOOMPANEL_ZOOMOUT;Herauszoomen\nTaste: - !!!!!!!!!!!!!!!!!!!!!!!!! !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_9X9;9×9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. diff --git a/rtdata/languages/English (UK) b/rtdata/languages/English (UK) index 3acddbed5..ccd06a0ec 100644 --- a/rtdata/languages/English (UK) +++ b/rtdata/languages/English (UK) @@ -469,7 +469,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1387,11 +1387,11 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1432,12 +1432,12 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US) index 550798ed0..280402073 100644 --- a/rtdata/languages/English (US) +++ b/rtdata/languages/English (US) @@ -380,7 +380,7 @@ !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1353,11 +1353,11 @@ !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1400,12 +1400,12 @@ !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Espanol b/rtdata/languages/Espanol index a6b52f597..cb00de1d3 100644 --- a/rtdata/languages/Espanol +++ b/rtdata/languages/Espanol @@ -421,7 +421,7 @@ HISTORY_MSG_145;Micro-contraste - Uniformidad HISTORY_MSG_146;Enfoque de bordes (EB) HISTORY_MSG_147;EB - Sólo luminancia HISTORY_MSG_148;Micro-contraste -HISTORY_MSG_149;Micro-contraste - matriz 3x3 +HISTORY_MSG_149;Micro-contraste - matriz 3×3 HISTORY_MSG_150;Reducción artefactos/ruido post interpolado HISTORY_MSG_151;Vibranza (Vib) HISTORY_MSG_152;Vib - Tonos pastel @@ -1789,11 +1789,11 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1813,11 +1813,11 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: - !TP_DIRPYRDENOISE_LUMAFR_TOOLTIP;Wavelet on luminance and Fourier transform for luminance detail !TP_DIRPYRDENOISE_MAN;Manual !TP_DIRPYRDENOISE_MANU;Manual -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara index 5a5f50b1a..772ef25ce 100644 --- a/rtdata/languages/Euskara +++ b/rtdata/languages/Euskara @@ -659,7 +659,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1429,11 +1429,11 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1476,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Francais b/rtdata/languages/Francais index 668bf103c..bdb1c72cd 100644 --- a/rtdata/languages/Francais +++ b/rtdata/languages/Francais @@ -376,7 +376,7 @@ HISTORY_MSG_145;Microcontraste - Uniformité HISTORY_MSG_146;Netteté des bords HISTORY_MSG_147;Bords - Luminance uniquement HISTORY_MSG_148;Microcontraste -HISTORY_MSG_149;Microcontraste - Matrice 3x3 +HISTORY_MSG_149;Microcontraste - Matrice 3×3 HISTORY_MSG_150;Réduction du bruit/artefact post-dématriçage HISTORY_MSG_151;Vibrance HISTORY_MSG_152;Vib. - Tons pastels @@ -1935,14 +1935,14 @@ ZOOMPANEL_ZOOMOUT;Zoom Arrière\nRaccourci: - !TP_CBDL_METHOD_TOOLTIP;Choose whether the Contrast by Detail Levels tool is to be positioned after the Black-and-White tool, which makes it work in L*a*b* space, or before it, which makes it work in RGB space. !TP_COLORTONING_NEUTRAL;Reset sliders !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_9X9;9×9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_FILMSIMULATION_SLOWPARSEDIR;RawTherapee is configured to look for Hald CLUT images, which are used for the Film Simulation tool, in a folder which is taking too long to load.\nGo to Preferences > Image Processing > Film Simulation\nto see which folder is being used. You should either point RawTherapee to a folder which contains only Hald CLUT images and nothing more, or to an empty folder if you don't want to use the Film Simulation tool.\n\nRead the Film Simulation article in RawPedia for more information.\n\nDo you want to cancel the scan now? !TP_ICM_PROFILEINTENT;Rendering Intent !TP_NEUTRAL;Reset diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek index 54da61d39..1af0dc7d4 100644 --- a/rtdata/languages/Greek +++ b/rtdata/languages/Greek @@ -658,7 +658,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1428,11 +1428,11 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1475,12 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew index 2f10d945a..5d5911e9a 100644 --- a/rtdata/languages/Hebrew +++ b/rtdata/languages/Hebrew @@ -659,7 +659,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1429,11 +1429,11 @@ TP_WBALANCE_TEMPERATURE;מידת חום !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1476,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;מידת חום !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Italiano b/rtdata/languages/Italiano index ed7c308c6..211e7190a 100644 --- a/rtdata/languages/Italiano +++ b/rtdata/languages/Italiano @@ -365,7 +365,7 @@ HISTORY_MSG_145;Microcontrasto - Uniformità HISTORY_MSG_146;Nitidezza ai Bordi (ES) HISTORY_MSG_147;ES - Solo luminanza HISTORY_MSG_148;Microcontrasto -HISTORY_MSG_149;Microcontrasto - Matrice 3x3 +HISTORY_MSG_149;Microcontrasto - Matrice 3×3 HISTORY_MSG_150;Rid. rumore/artefatti di demosaic. HISTORY_MSG_151;Vividezza HISTORY_MSG_152;Vividezza - Toni Pastello @@ -1695,11 +1695,11 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1729,12 +1729,12 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Japanese b/rtdata/languages/Japanese index c8352a7fc..071d76020 100644 --- a/rtdata/languages/Japanese +++ b/rtdata/languages/Japanese @@ -409,7 +409,7 @@ HISTORY_MSG_145;マイクロコントラスト - 均等 HISTORY_MSG_146;エッジ シャープ化 HISTORY_MSG_147;エッジ シャープ化 - 輝度のみ HISTORY_MSG_148;マイクロコントラスト -HISTORY_MSG_149;マイクロコントラスト - 3x3 マトリクス +HISTORY_MSG_149;マイクロコントラスト - 3×3 マトリクス HISTORY_MSG_150;デモザイク後にアーティファクトとノイズを軽減 HISTORY_MSG_151;自然な彩度 HISTORY_MSG_152;自然な彩度 - 明清色トーン @@ -1968,13 +1968,13 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: - !TP_CBDL_METHOD;Process located !TP_CBDL_METHOD_TOOLTIP;Choose whether the Contrast by Detail Levels tool is to be positioned after the Black-and-White tool, which makes it work in L*a*b* space, or before it, which makes it work in RGB space. !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_9X9;9×9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_FILMSIMULATION_SLOWPARSEDIR;RawTherapee is configured to look for Hald CLUT images, which are used for the Film Simulation tool, in a folder which is taking too long to load.\nGo to Preferences > Image Processing > Film Simulation\nto see which folder is being used. You should either point RawTherapee to a folder which contains only Hald CLUT images and nothing more, or to an empty folder if you don't want to use the Film Simulation tool.\n\nRead the Film Simulation article in RawPedia for more information.\n\nDo you want to cancel the scan now? !TP_ICM_PROFILEINTENT;Rendering Intent !TP_NEUTRAL;Reset diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian index 46ae366e0..25a0e2052 100644 --- a/rtdata/languages/Latvian +++ b/rtdata/languages/Latvian @@ -659,7 +659,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1429,11 +1429,11 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1476,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Magyar b/rtdata/languages/Magyar index 8fec58639..e4ee4d113 100644 --- a/rtdata/languages/Magyar +++ b/rtdata/languages/Magyar @@ -328,7 +328,7 @@ HISTORY_MSG_145;Mikrokontraszt - egységesség HISTORY_MSG_146;Élek élesítése HISTORY_MSG_147;Élek élesítése - csak luminencia HISTORY_MSG_148;Mikrokontraszt -HISTORY_MSG_149;Mikrokontraszt - 3x3 mátrix +HISTORY_MSG_149;Mikrokontraszt - 3×3 mátrix HISTORY_MSG_150;Interpoláció utáni műtermék-/zajcsökkentés HISTORY_MSG_151;Vibrancia HISTORY_MSG_152;Vibrancia - Pastel tones @@ -1575,11 +1575,11 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1618,12 +1618,12 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Nederlands b/rtdata/languages/Nederlands index 406214184..abfc6c9a1 100644 --- a/rtdata/languages/Nederlands +++ b/rtdata/languages/Nederlands @@ -391,7 +391,7 @@ HISTORY_MSG_145;Microcontrast - Uniformiteit HISTORY_MSG_146;Randen verscherpen HISTORY_MSG_147;RV - Luminantie HISTORY_MSG_148;Microcontrast -HISTORY_MSG_149;Microcontrast - 3x3 matrix +HISTORY_MSG_149;Microcontrast - 3×3 matrix HISTORY_MSG_150;Nabewerking demozaïek HISTORY_MSG_151;Levendigheid HISTORY_MSG_152;LV - Pasteltinten @@ -2034,13 +2034,13 @@ ZOOMPANEL_ZOOMOUT;Zoom uit\nSneltoets: - !HISTORY_MSG_442;Retinex - Scale !TP_BWMIX_AUTOCH;Auto !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_9X9;9×9 +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_RETINEX_GAINOFFS;Gain and Offset (brightness) !TP_RETINEX_GAINTRANSMISSION;Gain transmission !TP_RETINEX_GAINTRANSMISSION_TOOLTIP;Amplify or reduce transmission map to achieve luminance.\nAbscissa: transmission -min from 0, mean, and values (max).\nOrdinate: gain. diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM index 5427563d7..376e12be5 100644 --- a/rtdata/languages/Norsk BM +++ b/rtdata/languages/Norsk BM @@ -658,7 +658,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1428,11 +1428,11 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1475,12 @@ TP_WBALANCE_TEMPERATURE;Temperatur !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish index 216ee924c..c5e74ced3 100644 --- a/rtdata/languages/Polish +++ b/rtdata/languages/Polish @@ -369,7 +369,7 @@ HISTORY_MSG_145;Mikrokontrast - Jednolitość HISTORY_MSG_146;Wyostrzanie krawędzi HISTORY_MSG_147;Wyostrzanie krawędzi - tylko luminacja HISTORY_MSG_148;Mikrokontrast -HISTORY_MSG_149;Mikrokontrast - matryca 3x3 +HISTORY_MSG_149;Mikrokontrast - matryca 3×3 HISTORY_MSG_150;Redukcja szumu i artefaktów po demozaikowaniu HISTORY_MSG_151;Jaskrawość HISTORY_MSG_152;Jaskrawość - Ppastelowe @@ -1737,11 +1737,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1761,11 +1761,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: - !TP_DIRPYRDENOISE_LUMAFR_TOOLTIP;Wavelet on luminance and Fourier transform for luminance detail !TP_DIRPYRDENOISE_MAN;Manual !TP_DIRPYRDENOISE_MANU;Manual -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters) index 170bd52d7..c82e4b3e1 100644 --- a/rtdata/languages/Polish (Latin Characters) +++ b/rtdata/languages/Polish (Latin Characters) @@ -369,7 +369,7 @@ HISTORY_MSG_145;Mikrokontrast - Jednolitosc HISTORY_MSG_146;Wyostrzanie krawedzi HISTORY_MSG_147;Wyostrzanie krawedzi - tylko luminacja HISTORY_MSG_148;Mikrokontrast -HISTORY_MSG_149;Mikrokontrast - matryca 3x3 +HISTORY_MSG_149;Mikrokontrast - matryca 3×3 HISTORY_MSG_150;Redukcja szumu i artefaktow po demozaikowaniu HISTORY_MSG_151;Jaskrawosc HISTORY_MSG_152;Jaskrawosc - Ppastelowe @@ -1737,11 +1737,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1761,11 +1761,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: - !TP_DIRPYRDENOISE_LUMAFR_TOOLTIP;Wavelet on luminance and Fourier transform for luminance detail !TP_DIRPYRDENOISE_MAN;Manual !TP_DIRPYRDENOISE_MANU;Manual -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil) index ff9d89f18..5f0f5918a 100644 --- a/rtdata/languages/Portugues (Brasil) +++ b/rtdata/languages/Portugues (Brasil) @@ -659,7 +659,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1429,11 +1429,11 @@ TP_WBALANCE_TEMPERATURE;Temperatura !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1476,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Temperatura !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian index 883128411..de6a7c749 100644 --- a/rtdata/languages/Russian +++ b/rtdata/languages/Russian @@ -364,7 +364,7 @@ HISTORY_MSG_145;Микроконтраст: Равномерность HISTORY_MSG_146;Резкость контуров HISTORY_MSG_147;РК: Только освещенность HISTORY_MSG_148;Микроконтраст -HISTORY_MSG_149;Микроконтраст: матрица 3x3 +HISTORY_MSG_149;Микроконтраст: матрица 3×3 HISTORY_MSG_150;Пост-демозаик шумоподавление HISTORY_MSG_151;Резонанс HISTORY_MSG_152;Рез: Пастельные тона @@ -1689,11 +1689,11 @@ ZOOMPANEL_ZOOMOUT;Удалить - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1723,12 +1723,12 @@ ZOOMPANEL_ZOOMOUT;Удалить - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Serbian (Cyrilic Characters) b/rtdata/languages/Serbian (Cyrilic Characters) index 57e334ae5..c805a5de6 100644 --- a/rtdata/languages/Serbian (Cyrilic Characters) +++ b/rtdata/languages/Serbian (Cyrilic Characters) @@ -353,7 +353,7 @@ HISTORY_MSG_145;Микроконтраст - уједначеност HISTORY_MSG_146;Оштрење ивица HISTORY_MSG_147;Оштрење ивица - само луминанса HISTORY_MSG_148;Микроконтраст -HISTORY_MSG_149;Микроконтраст - 3x3 матрица +HISTORY_MSG_149;Микроконтраст - 3×3 матрица HISTORY_MSG_150;Уклањање артефакта/шума након расклапања мозаика HISTORY_MSG_151;Живост боја HISTORY_MSG_152;Жив - Пастелни тонови @@ -1821,11 +1821,11 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1856,12 +1856,12 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Serbian (Latin Characters) b/rtdata/languages/Serbian (Latin Characters) index 0246c9a36..45d05c8ce 100644 --- a/rtdata/languages/Serbian (Latin Characters) +++ b/rtdata/languages/Serbian (Latin Characters) @@ -353,7 +353,7 @@ HISTORY_MSG_145;Mikrokontrast - ujednačenost HISTORY_MSG_146;Oštrenje ivica HISTORY_MSG_147;Oštrenje ivica - samo luminansa HISTORY_MSG_148;Mikrokontrast -HISTORY_MSG_149;Mikrokontrast - 3x3 matrica +HISTORY_MSG_149;Mikrokontrast - 3×3 matrica HISTORY_MSG_150;Uklanjanje artefakta/šuma nakon rasklapanja mozaika HISTORY_MSG_151;Živost boja HISTORY_MSG_152;Živ - Pastelni tonovi @@ -1821,11 +1821,11 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1856,12 +1856,12 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !TP_DIRPYRDENOISE_METHOD11;Quality !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Slovak b/rtdata/languages/Slovak index d78119721..b61b42e65 100644 --- a/rtdata/languages/Slovak +++ b/rtdata/languages/Slovak @@ -722,7 +722,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1468,11 +1468,11 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1511,12 +1511,12 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi index 20bad26da..8f0ce27bc 100644 --- a/rtdata/languages/Suomi +++ b/rtdata/languages/Suomi @@ -660,7 +660,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1429,11 +1429,11 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1476,12 +1476,12 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/Swedish b/rtdata/languages/Swedish index d6556b8c2..599b344bc 100644 --- a/rtdata/languages/Swedish +++ b/rtdata/languages/Swedish @@ -374,7 +374,7 @@ HISTORY_MSG_145;Mikrokontrast - Enhetlighet HISTORY_MSG_146;Kantskärpning HISTORY_MSG_147;Kantskärpning - Endast luminans HISTORY_MSG_148;Mikrokontrast -HISTORY_MSG_149;Mikrokontrast - 3x3-matris +HISTORY_MSG_149;Mikrokontrast - 3×3-matris HISTORY_MSG_150;Reducering av artefakter och brus e. demosaicing HISTORY_MSG_151;Lyster HISTORY_MSG_152;Lyster - Pastelltoner @@ -1825,11 +1825,11 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: - !TP_COLORTONING_TWOBY;Special a* and b* !TP_COLORTONING_TWOCOLOR_TOOLTIP;Standard chroma:\nLinear response, a* = b*.\n\nSpecial chroma:\nLinear response, a* = b*, but unbound - try under the diagonal.\n\nSpecial a* and b*:\nLinear response unbound with separate curves for a* and b*. Intended for special effects.\n\nSpecial chroma 2 colors:\nMore predictable. !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global !TP_DIRPYRDENOISE_C2TYPE_TOOLTIP;Manual\nActs on the full image.\nYou control the noise reduction settings manually.\n\nAutomatic global\nActs on the full image.\n9 zones are used to calculate a global chrominance noise reduction setting.\n\nPreview\nActs on the whole image.\nThe part of the image visible in the preview is used to calculate global chrominance noise reduction settings. @@ -1846,12 +1846,12 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: - !TP_DIRPYRDENOISE_MED_TOOLTIP;Enabled median denoising !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREVLABEL;Preview size=%1, Center: Px=%2 Py=%3 diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish index 329a9627a..7e064ce8e 100644 --- a/rtdata/languages/Turkish +++ b/rtdata/languages/Turkish @@ -659,7 +659,7 @@ TP_WBALANCE_TEMPERATURE;Isı !HISTORY_MSG_146;Edge sharpening !HISTORY_MSG_147;ES - Luminance only !HISTORY_MSG_148;Microcontrast -!HISTORY_MSG_149;Microcontrast - 3x3 matrix +!HISTORY_MSG_149;Microcontrast - 3×3 matrix !HISTORY_MSG_150;Post-demosaic artifact/noise red. !HISTORY_MSG_151;Vibrance !HISTORY_MSG_152;Vib - Pastel tones @@ -1428,11 +1428,11 @@ TP_WBALANCE_TEMPERATURE;Isı !TP_DEFRINGE_RADIUS;Radius !TP_DEFRINGE_THRESHOLD;Threshold !TP_DIRPYRDENOISE_3X3;3×3 -!TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft !TP_DIRPYRDENOISE_7X7;7×7 -!TP_DIRPYRDENOISE_9X9;9x9 +!TP_DIRPYRDENOISE_9X9;9×9 !TP_DIRPYRDENOISE_ABM;Chroma only !TP_DIRPYRDENOISE_AUT;Automatic global !TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1475,12 +1475,12 @@ TP_WBALANCE_TEMPERATURE;Isı !TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. !TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. !TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +!TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. !TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 !TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - !TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. !TP_DIRPYRDENOISE_PASSES;Median iterations -!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +!TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. !TP_DIRPYRDENOISE_PON;Auto multi-zones !TP_DIRPYRDENOISE_PRE;Preview multi-zones !TP_DIRPYRDENOISE_PREV;Preview diff --git a/rtdata/languages/default b/rtdata/languages/default index af23e7d12..fc1c2ea2b 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -379,7 +379,7 @@ HISTORY_MSG_145;Microcontrast - Uniformity HISTORY_MSG_146;Edge sharpening HISTORY_MSG_147;ES - Luminance only HISTORY_MSG_148;Microcontrast -HISTORY_MSG_149;Microcontrast - 3x3 matrix +HISTORY_MSG_149;Microcontrast - 3×3 matrix HISTORY_MSG_150;Post-demosaic artifact/noise red. HISTORY_MSG_151;Vibrance HISTORY_MSG_152;Vib - Pastel tones @@ -1352,11 +1352,11 @@ TP_DEFRINGE_LABEL;Defringe TP_DEFRINGE_RADIUS;Radius TP_DEFRINGE_THRESHOLD;Threshold TP_DIRPYRDENOISE_3X3;3×3 -TP_DIRPYRDENOISE_3X3_SOFT;3x3 soft +TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft TP_DIRPYRDENOISE_5X5;5×5 TP_DIRPYRDENOISE_5X5_SOFT;5×5 soft TP_DIRPYRDENOISE_7X7;7×7 -TP_DIRPYRDENOISE_9X9;9x9 +TP_DIRPYRDENOISE_9X9;9×9 TP_DIRPYRDENOISE_ABM;Chroma only TP_DIRPYRDENOISE_AUT;Automatic global TP_DIRPYRDENOISE_AUTO;Automatic global @@ -1399,12 +1399,12 @@ TP_DIRPYRDENOISE_METHOD11;Quality TP_DIRPYRDENOISE_METHOD11_TOOLTIP;Quality can be adapted to the noise pattern. A setting of "high" increases the noise reduction effect at a cost of extended processing time. TP_DIRPYRDENOISE_METHOD_TOOLTIP;For raw images either RGB or L*a*b* methods can be used.\n\nFor non-raw images the L*a*b* method will be used, regardless of the selection. TP_DIRPYRDENOISE_METM_TOOLTIP;When using the "Luminance only" and "L*a*b*" methods, median filtering will be performed just after the wavelet step in the noise reduction pipeline.\nWhen using the "RGB" mode, it will be performed at the very end of the noise reduction pipeline. -TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3x3 soft: treats 5 pixels in a 3x3 pixel window.\n3x3: treats 9 pixels in a 3x3 pixel window.\n5x5 soft: treats 13 pixels in a 5x5 pixel window.\n5x5: treats 25 pixels in a 5x5 pixel window.\n7x7: treats 49 pixels in a 7x7 pixel window.\n9x9: treats 81 pixels in a 9x9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. +TP_DIRPYRDENOISE_MET_TOOLTIP;Apply a median filter of the desired window size. The larger the window's size, the longer it takes.\n\n3×3 soft: treats 5 pixels in a 3×3 pixel window.\n3×3: treats 9 pixels in a 3×3 pixel window.\n5×5 soft: treats 13 pixels in a 5×5 pixel window.\n5×5: treats 25 pixels in a 5×5 pixel window.\n7×7: treats 49 pixels in a 7×7 pixel window.\n9×9: treats 81 pixels in a 9×9 pixel window.\n\nSometimes it is possible to achieve higher quality running several iterations with a smaller window size than one iteration with a larger one. TP_DIRPYRDENOISE_NOISELABEL;Preview noise: Mean=%1 High=%2 TP_DIRPYRDENOISE_NOISELABELEMPTY;Preview noise: Mean= - High= - TP_DIRPYRDENOISE_NRESID_TOOLTIP;Displays the remaining noise levels of the part of the image visible in the preview after wavelet.\n\n>300 Very noisy\n100-300 Noisy\n50-100 A little noisy\n<50 Very low noise\n\nBeware, the values will differ between RGB and L*a*b* mode. The RGB values are less accurate because the RGB mode does not completely separate luminance and chrominance. TP_DIRPYRDENOISE_PASSES;Median iterations -TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3x3 window size often leads to better results than using one median filter iteration with a 7x7 window size. +TP_DIRPYRDENOISE_PASSES_TOOLTIP;Applying three median filter iterations with a 3×3 window size often leads to better results than using one median filter iteration with a 7×7 window size. TP_DIRPYRDENOISE_PON;Auto multi-zones TP_DIRPYRDENOISE_PRE;Preview multi-zones TP_DIRPYRDENOISE_PREV;Preview From 4b54f985008522e307507f3d3af882e0b07da074 Mon Sep 17 00:00:00 2001 From: Morgan Hardwood Date: Wed, 28 Sep 2016 00:03:23 +0200 Subject: [PATCH 38/41] Syncing translation files with gtk3 branch. --- rtdata/languages/Catala | 2 ++ rtdata/languages/Chinese (Simplified) | 2 ++ rtdata/languages/Chinese (Traditional) | 2 ++ rtdata/languages/Czech | 2 ++ rtdata/languages/Dansk | 2 ++ rtdata/languages/English (UK) | 2 ++ rtdata/languages/English (US) | 2 ++ rtdata/languages/Espanol | 2 ++ rtdata/languages/Euskara | 2 ++ rtdata/languages/Francais | 2 ++ rtdata/languages/Greek | 2 ++ rtdata/languages/Hebrew | 2 ++ rtdata/languages/Italiano | 2 ++ rtdata/languages/Japanese | 2 ++ rtdata/languages/Latvian | 2 ++ rtdata/languages/Magyar | 2 ++ rtdata/languages/Nederlands | 2 ++ rtdata/languages/Norsk BM | 2 ++ rtdata/languages/Polish | 2 ++ rtdata/languages/Polish (Latin Characters) | 2 ++ rtdata/languages/Portugues (Brasil) | 2 ++ rtdata/languages/Russian | 2 ++ rtdata/languages/Serbian (Cyrilic Characters) | 2 ++ rtdata/languages/Serbian (Latin Characters) | 2 ++ rtdata/languages/Slovak | 2 ++ rtdata/languages/Suomi | 2 ++ rtdata/languages/Swedish | 2 ++ rtdata/languages/Turkish | 2 ++ rtdata/languages/default | 2 ++ 29 files changed, 58 insertions(+) diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala index c31e73a4d..d54566400 100644 --- a/rtdata/languages/Catala +++ b/rtdata/languages/Catala @@ -1031,9 +1031,11 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_CLOSE;Close +!GENERAL_OPEN;Open !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_174;CIECAM02 diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified) index 9807768f9..9b6385249 100644 --- a/rtdata/languages/Chinese (Simplified) +++ b/rtdata/languages/Chinese (Simplified) @@ -892,7 +892,9 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional) index b0dd37f50..c797a80d8 100644 --- a/rtdata/languages/Chinese (Traditional) +++ b/rtdata/languages/Chinese (Traditional) @@ -586,11 +586,13 @@ TP_WBALANCE_TEMPERATURE;色溫 !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. diff --git a/rtdata/languages/Czech b/rtdata/languages/Czech index 8b2db6ca4..f3142f30d 100644 --- a/rtdata/languages/Czech +++ b/rtdata/languages/Czech @@ -1988,6 +1988,8 @@ ZOOMPANEL_ZOOMOUT;Oddálit\nZkratka: - !!!!!!!!!!!!!!!!!!!!!!!!! !FILEBROWSER_SHOWORIGINALHINT;Show only original images.\n\nWhen several images exist with the same filename but different extensions, the one considered original is the one whose extension is nearest the top of the parsed extensions list in Preferences > File Browser > Parsed Extensions. +!GENERAL_APPLY;Apply +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_427;Output rendering intent !HISTORY_MSG_428;Monitor rendering intent diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk index 177dfce05..67ab884c8 100644 --- a/rtdata/languages/Dansk +++ b/rtdata/languages/Dansk @@ -580,12 +580,14 @@ TP_WBALANCE_TEMPERATURE;Temperatur !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/English (UK) b/rtdata/languages/English (UK) index ccd06a0ec..f960286c8 100644 --- a/rtdata/languages/English (UK) +++ b/rtdata/languages/English (UK) @@ -295,6 +295,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_ABOUT;About !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before @@ -310,6 +311,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !GENERAL_NO;No !GENERAL_NONE;None !GENERAL_OK;OK +!GENERAL_OPEN;Open !GENERAL_PORTRAIT;Portrait !GENERAL_SAVE;Save !GENERAL_UNCHANGED;(Unchanged) diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US) index 280402073..f38615acd 100644 --- a/rtdata/languages/English (US) +++ b/rtdata/languages/English (US) @@ -200,6 +200,7 @@ !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_ABOUT;About !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before @@ -215,6 +216,7 @@ !GENERAL_NO;No !GENERAL_NONE;None !GENERAL_OK;OK +!GENERAL_OPEN;Open !GENERAL_PORTRAIT;Portrait !GENERAL_SAVE;Save !GENERAL_UNCHANGED;(Unchanged) diff --git a/rtdata/languages/Espanol b/rtdata/languages/Espanol index cb00de1d3..fc06babc8 100644 --- a/rtdata/languages/Espanol +++ b/rtdata/languages/Espanol @@ -1554,7 +1554,9 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_299;NR - Chrominance curve !HISTORY_MSG_300;- diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara index 772ef25ce..1d4df36ae 100644 --- a/rtdata/languages/Euskara +++ b/rtdata/languages/Euskara @@ -580,12 +580,14 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Francais b/rtdata/languages/Francais index bdb1c72cd..c13f02fdf 100644 --- a/rtdata/languages/Francais +++ b/rtdata/languages/Francais @@ -1881,6 +1881,8 @@ ZOOMPANEL_ZOOMOUT;Zoom Arrière\nRaccourci: - !!!!!!!!!!!!!!!!!!!!!!!!! !FILEBROWSER_SHOWORIGINALHINT;Show only original images.\n\nWhen several images exist with the same filename but different extensions, the one considered original is the one whose extension is nearest the top of the parsed extensions list in Preferences > File Browser > Parsed Extensions. +!GENERAL_APPLY;Apply +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_407;Retinex - Method !HISTORY_MSG_408;Retinex - Radius diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek index 1af0dc7d4..13d87c84c 100644 --- a/rtdata/languages/Greek +++ b/rtdata/languages/Greek @@ -579,12 +579,14 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew index 5d5911e9a..f91ac1f95 100644 --- a/rtdata/languages/Hebrew +++ b/rtdata/languages/Hebrew @@ -580,12 +580,14 @@ TP_WBALANCE_TEMPERATURE;מידת חום !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Italiano b/rtdata/languages/Italiano index 211e7190a..eabb2ff60 100644 --- a/rtdata/languages/Italiano +++ b/rtdata/languages/Italiano @@ -1383,7 +1383,9 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_256;NR - Median type !HISTORY_MSG_257;Color Toning diff --git a/rtdata/languages/Japanese b/rtdata/languages/Japanese index 071d76020..34211dbb3 100644 --- a/rtdata/languages/Japanese +++ b/rtdata/languages/Japanese @@ -1915,6 +1915,8 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: - !!!!!!!!!!!!!!!!!!!!!!!!! !FILEBROWSER_SHOWORIGINALHINT;Show only original images.\n\nWhen several images exist with the same filename but different extensions, the one considered original is the one whose extension is nearest the top of the parsed extensions list in Preferences > File Browser > Parsed Extensions. +!GENERAL_APPLY;Apply +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_407;Retinex - Method !HISTORY_MSG_408;Retinex - Radius diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian index 25a0e2052..8e93725bb 100644 --- a/rtdata/languages/Latvian +++ b/rtdata/languages/Latvian @@ -580,12 +580,14 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Magyar b/rtdata/languages/Magyar index e4ee4d113..dc4129b8f 100644 --- a/rtdata/languages/Magyar +++ b/rtdata/languages/Magyar @@ -951,9 +951,11 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_CLOSE;Close +!GENERAL_OPEN;Open !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. diff --git a/rtdata/languages/Nederlands b/rtdata/languages/Nederlands index abfc6c9a1..54e0a68e1 100644 --- a/rtdata/languages/Nederlands +++ b/rtdata/languages/Nederlands @@ -2029,6 +2029,8 @@ ZOOMPANEL_ZOOMOUT;Zoom uit\nSneltoets: - ! Untranslated keys follow; remove the ! prefix after an entry is translated. !!!!!!!!!!!!!!!!!!!!!!!!! +!GENERAL_APPLY;Apply +!GENERAL_OPEN;Open !HISTORY_MSG_439;Retinex - Process !HISTORY_MSG_441;Retinex - Gain transmission !HISTORY_MSG_442;Retinex - Scale diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM index 376e12be5..a3554ca16 100644 --- a/rtdata/languages/Norsk BM +++ b/rtdata/languages/Norsk BM @@ -579,12 +579,14 @@ TP_WBALANCE_TEMPERATURE;Temperatur !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish index c5e74ced3..584409e96 100644 --- a/rtdata/languages/Polish +++ b/rtdata/languages/Polish @@ -1511,7 +1511,9 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_299;NR - Chrominance curve !HISTORY_MSG_300;- diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters) index c82e4b3e1..5ff2cc31b 100644 --- a/rtdata/languages/Polish (Latin Characters) +++ b/rtdata/languages/Polish (Latin Characters) @@ -1511,7 +1511,9 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_299;NR - Chrominance curve !HISTORY_MSG_300;- diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil) index 5f0f5918a..9891c07b3 100644 --- a/rtdata/languages/Portugues (Brasil) +++ b/rtdata/languages/Portugues (Brasil) @@ -580,12 +580,14 @@ TP_WBALANCE_TEMPERATURE;Temperatura !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian index de6a7c749..b792e92bc 100644 --- a/rtdata/languages/Russian +++ b/rtdata/languages/Russian @@ -1322,7 +1322,9 @@ ZOOMPANEL_ZOOMOUT;Удалить - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_252;CbDL - Skin tar/prot !HISTORY_MSG_253;CbDL - Reduce artifacts diff --git a/rtdata/languages/Serbian (Cyrilic Characters) b/rtdata/languages/Serbian (Cyrilic Characters) index c805a5de6..5145322d2 100644 --- a/rtdata/languages/Serbian (Cyrilic Characters) +++ b/rtdata/languages/Serbian (Cyrilic Characters) @@ -1490,7 +1490,9 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_252;CbDL - Skin tar/prot !HISTORY_MSG_253;CbDL - Reduce artifacts !HISTORY_MSG_254;CbDL - Skin hue diff --git a/rtdata/languages/Serbian (Latin Characters) b/rtdata/languages/Serbian (Latin Characters) index 45d05c8ce..c770ad345 100644 --- a/rtdata/languages/Serbian (Latin Characters) +++ b/rtdata/languages/Serbian (Latin Characters) @@ -1490,7 +1490,9 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image +!GENERAL_OPEN;Open !HISTORY_MSG_252;CbDL - Skin tar/prot !HISTORY_MSG_253;CbDL - Reduce artifacts !HISTORY_MSG_254;CbDL - Skin hue diff --git a/rtdata/languages/Slovak b/rtdata/languages/Slovak index b61b42e65..90eef3409 100644 --- a/rtdata/languages/Slovak +++ b/rtdata/languages/Slovak @@ -655,11 +655,13 @@ ZOOMPANEL_ZOOMOUT;Oddialiť - !FILECHOOSER_FILTER_PP;Processing profiles !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi index 8f0ce27bc..612df257d 100644 --- a/rtdata/languages/Suomi +++ b/rtdata/languages/Suomi @@ -581,12 +581,14 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/Swedish b/rtdata/languages/Swedish index 599b344bc..fbdb4c3ae 100644 --- a/rtdata/languages/Swedish +++ b/rtdata/languages/Swedish @@ -1716,6 +1716,8 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: - !CURVEEDITOR_EDITPOINT_HINT;Enable edition of node in/out values.\n\nRight-click on a node to select it.\nRight-click on empty space to de-select the node. !EDIT_PIPETTE_TOOLTIP;To add an adjustment point to the curve, hold the Ctrl key while left-clicking the desired spot in the image preview.\nTo adjust the point, hold the Ctrl key while left-clicking the corresponding area in the preview, then let go of Ctrl (unless you desire fine control) and while still holding the left mouse button move the mouse up or down to move that point up or down in the curve. !FILEBROWSER_SHOWORIGINALHINT;Show only original images.\n\nWhen several images exist with the same filename but different extensions, the one considered original is the one whose extension is nearest the top of the parsed extensions list in Preferences > File Browser > Parsed Extensions. +!GENERAL_APPLY;Apply +!GENERAL_OPEN;Open !HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_256;NR - Median type !HISTORY_MSG_257;Color Toning diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish index 7e064ce8e..0af0611d5 100644 --- a/rtdata/languages/Turkish +++ b/rtdata/languages/Turkish @@ -580,12 +580,14 @@ TP_WBALANCE_TEMPERATURE;Isı !FILECHOOSER_FILTER_SAME;Same format as current photo !FILECHOOSER_FILTER_TIFF;TIFF files !GENERAL_AFTER;After +!GENERAL_APPLY;Apply !GENERAL_ASIMAGE;As Image !GENERAL_AUTO;Automatic !GENERAL_BEFORE;Before !GENERAL_CLOSE;Close !GENERAL_FILE;File !GENERAL_NONE;None +!GENERAL_OPEN;Open !GENERAL_UNCHANGED;(Unchanged) !GENERAL_WARNING;Warning !HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. diff --git a/rtdata/languages/default b/rtdata/languages/default index fc1c2ea2b..71d2263c7 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -199,6 +199,7 @@ FILECHOOSER_FILTER_SAME;Same format as current photo FILECHOOSER_FILTER_TIFF;TIFF files GENERAL_ABOUT;About GENERAL_AFTER;After +GENERAL_APPLY;Apply GENERAL_ASIMAGE;As Image GENERAL_AUTO;Automatic GENERAL_BEFORE;Before @@ -214,6 +215,7 @@ GENERAL_NA;n/a GENERAL_NO;No GENERAL_NONE;None GENERAL_OK;OK +GENERAL_OPEN;Open GENERAL_PORTRAIT;Portrait GENERAL_SAVE;Save GENERAL_UNCHANGED;(Unchanged) From 8e6cfcb76653f227452806e56b31466ff5f6384a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=B6ssie?= Date: Thu, 29 Sep 2016 18:21:37 +0200 Subject: [PATCH 39/41] Fix use-after-free of `ImageArea::mainCropWindow` (#3048) --- rtengine/median.h | 2 +- rtgui/editorpanel.cc | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/rtengine/median.h b/rtengine/median.h index fa0e893f4..d7a6b37de 100644 --- a/rtengine/median.h +++ b/rtengine/median.h @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with RawTherapee. If not, see . * - * This median implementations from Floessie and Ingo Weyrich are inspired by this work: + * These median implementations from Flössie and Ingo Weyrich are inspired by this work: * * http://ndevilla.free.fr/median/median.pdf * http://pages.ripco.net/~jgamble/nw.html diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc index 80dc3dfae..93a20c294 100644 --- a/rtgui/editorpanel.cc +++ b/rtgui/editorpanel.cc @@ -781,6 +781,7 @@ void EditorPanel::close () if(iareapanel) { iareapanel->imageArea->setPreviewHandler (NULL); iareapanel->imageArea->setImProcCoordinator (NULL); + iareapanel->imageArea->unsubscribe(); } rtengine::StagedImageProcessor::destroy (ipc); From 5b2ebce7d602da8e2e3057d61f400df740e7ad26 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Thu, 29 Sep 2016 22:54:38 +0200 Subject: [PATCH 40/41] Use same logic to auto select darkframe in gui and engine --- rtengine/rawimagesource.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rtengine/rawimagesource.cc b/rtengine/rawimagesource.cc index a7ca7d86c..15e9d0c5e 100644 --- a/rtengine/rawimagesource.cc +++ b/rtengine/rawimagesource.cc @@ -1655,7 +1655,7 @@ void RawImageSource::preprocess (const RAWParams &raw, const LensProfParams &le rid = dfm.searchDarkFrame( raw.dark_frame ); } } else { - rid = dfm.searchDarkFrame( ri->get_maker(), ri->get_model(), ri->get_ISOspeed(), ri->get_shutter(), ri->get_timestamp()); + rid = dfm.searchDarkFrame( idata->getMake(), idata->getModel(), idata->getISOSpeed(), idata->getShutterSpeed(), idata->getDateTimeAsTS()); } if( rid && settings->verbose) { From bf273043115b55172d27ce52d27b8f6d90914426 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Thu, 29 Sep 2016 23:39:10 +0200 Subject: [PATCH 41/41] Use same logic to auto select darkframe in gui and engine also for darkframe hotpixels detection --- rtengine/rawimagesource.cc | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/rtengine/rawimagesource.cc b/rtengine/rawimagesource.cc index 15e9d0c5e..d2bdf9763 100644 --- a/rtengine/rawimagesource.cc +++ b/rtengine/rawimagesource.cc @@ -1322,8 +1322,8 @@ SSEFUNCTION int RawImageSource::findHotDeadPixels( PixelsMap &bpMap, float thres for (int i = 2; i < H - 2; i++) { for (int j = 2; j < W - 2; j++) { const float& temp = median(rawData[i - 2][j - 2], rawData[i - 2][j], rawData[i - 2][j + 2], - rawData[i][j - 2], rawData[i][j], rawData[i][j + 2], - rawData[i + 2][j - 2], rawData[i + 2][j], rawData[i + 2][j + 2]); + rawData[i][j - 2], rawData[i][j], rawData[i][j + 2], + rawData[i + 2][j - 2], rawData[i + 2][j], rawData[i + 2][j + 2]); cfablur[i * W + j] = rawData[i][j] - temp; } } @@ -1655,7 +1655,7 @@ void RawImageSource::preprocess (const RAWParams &raw, const LensProfParams &le rid = dfm.searchDarkFrame( raw.dark_frame ); } } else { - rid = dfm.searchDarkFrame( idata->getMake(), idata->getModel(), idata->getISOSpeed(), idata->getShutterSpeed(), idata->getDateTimeAsTS()); + rid = dfm.searchDarkFrame(idata->getMake(), idata->getModel(), idata->getISOSpeed(), idata->getShutterSpeed(), idata->getDateTimeAsTS()); } if( rid && settings->verbose) { @@ -1726,7 +1726,7 @@ void RawImageSource::preprocess (const RAWParams &raw, const LensProfParams &le bp = 0; if( raw.df_autoselect ) { - bp = dfm.getHotPixels( ri->get_maker(), ri->get_model(), ri->get_ISOspeed(), ri->get_shutter(), ri->get_timestamp()); + bp = dfm.getHotPixels(idata->getMake(), idata->getModel(), idata->getISOSpeed(), idata->getShutterSpeed(), idata->getDateTimeAsTS()); } else if( !raw.dark_frame.empty() ) { bp = dfm.getHotPixels( raw.dark_frame ); } @@ -3775,10 +3775,11 @@ void RawImageSource::colorSpaceConversion_ (Imagefloat* im, ColorManagementParam pre_mul[2] }; const DCPProfile::Matrix cam_matrix = {{ - {camMatrix[0][0], camMatrix[0][1], camMatrix[0][2]}, - {camMatrix[1][0], camMatrix[1][1], camMatrix[1][2]}, - {camMatrix[2][0], camMatrix[2][1], camMatrix[2][2]} - }}; + {camMatrix[0][0], camMatrix[0][1], camMatrix[0][2]}, + {camMatrix[1][0], camMatrix[1][1], camMatrix[1][2]}, + {camMatrix[2][0], camMatrix[2][1], camMatrix[2][2]} + } + }; dcpProf->apply(im, cmp.dcpIlluminant, cmp.working, wb, pre_mul_row, cam_matrix, cmp.applyHueSatMap); return; }