Merge branch 'dev' into multiframe-handling, with some merge bugfix

This commit is contained in:
Hombre57 2017-09-17 01:15:51 +02:00
commit 0905294bda
197 changed files with 11535 additions and 5495 deletions

View File

@ -7,6 +7,7 @@ Processor: ${PROC_LABEL}
System: ${SYSTEM} System: ${SYSTEM}
Bit depth: ${PROC_BIT_DEPTH} Bit depth: ${PROC_BIT_DEPTH}
Gtkmm: V${GTKMM_VERSION} Gtkmm: V${GTKMM_VERSION}
Lensfun: V${LENSFUN_VERSION}
Build type: ${BUILD_TYPE} Build type: ${BUILD_TYPE}
Build flags: ${CXX_FLAGS} Build flags: ${CXX_FLAGS}
Link flags: ${LFLAGS} Link flags: ${LFLAGS}

View File

@ -231,6 +231,10 @@ if(NOT DEFINED APPDATADIR)
endif() endif()
endif() endif()
if(DEFINED LENSFUNDBDIR AND NOT IS_ABSOLUTE "${LENSFUNDBDIR}")
set(LENSFUNDBDIR "${DATADIR}/${LENSFUNDBDIR}")
endif()
# Enforce absolute paths for non-bundle builds: # Enforce absolute paths for non-bundle builds:
if(NOT BUILD_BUNDLE) if(NOT BUILD_BUNDLE)
foreach(path BINDIR DATADIR LIBDIR DOCDIR CREDITSDIR LICENCEDIR) foreach(path BINDIR DATADIR LIBDIR DOCDIR CREDITSDIR LICENCEDIR)
@ -272,6 +276,7 @@ pkg_check_modules (GIOMM REQUIRED giomm-2.4>=2.44)
pkg_check_modules (GTHREAD REQUIRED gthread-2.0>=2.44) pkg_check_modules (GTHREAD REQUIRED gthread-2.0>=2.44)
pkg_check_modules (GOBJECT REQUIRED gobject-2.0>=2.44) pkg_check_modules (GOBJECT REQUIRED gobject-2.0>=2.44)
pkg_check_modules (SIGC REQUIRED sigc++-2.0>=2.3.1) pkg_check_modules (SIGC REQUIRED sigc++-2.0>=2.3.1)
pkg_check_modules (LENSFUN REQUIRED lensfun>=0.2)
if(WIN32) if(WIN32)
add_definitions(-DWIN32) add_definitions(-DWIN32)
@ -389,7 +394,8 @@ set(ABOUT_COMMAND_WITH_ARGS ${CMAKE_COMMAND}
-DBUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} -DBUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-DGTKMM_VERSION:STRING=${GTKMM_VERSION} -DGTKMM_VERSION:STRING=${GTKMM_VERSION}
-DOPTION_OMP:STRING=${OPTION_OMP} -DOPTION_OMP:STRING=${OPTION_OMP}
-DWITH_MYFILE_MMAP:STRING=${WITH_MYFILE_MMAP}) -DWITH_MYFILE_MMAP:STRING=${WITH_MYFILE_MMAP}
-DLENSFUN_VERSION:STRING=${LENSFUN_VERSION})
if(WIN32) if(WIN32)
list(APPEND ABOUT_COMMAND_WITH_ARGS -DSYSTEM:STRING=Windows list(APPEND ABOUT_COMMAND_WITH_ARGS -DSYSTEM:STRING=Windows
@ -439,6 +445,19 @@ if(UNIX)
install(FILES rawtherapee.appdata.xml DESTINATION "${APPDATADIR}") install(FILES rawtherapee.appdata.xml DESTINATION "${APPDATADIR}")
endif() endif()
# check whether the used version of lensfun has lfDatabase::LoadDirectory
include(CheckCXXSourceCompiles)
set(CMAKE_REQUIRED_INCLUDES ${LENSFUN_INCLUDE_DIRS})
check_cxx_source_compiles(
"#include <lensfun.h>
int main()
{
lfDatabase *db = 0;
bool b = db->LoadDirectory(0);
return 0;
}" LENSFUN_HAS_LOAD_DIRECTORY)
add_subdirectory(rtexif) add_subdirectory(rtexif)
add_subdirectory(rtengine) add_subdirectory(rtengine)
add_subdirectory(rtgui) add_subdirectory(rtgui)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 805 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 719 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 235 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 710 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 719 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 235 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 178 B

View File

@ -518,8 +518,6 @@ PREFERENCES_DARKFRAMESHOTS;trets
PREFERENCES_DARKFRAMETEMPLATES;plantilles PREFERENCES_DARKFRAMETEMPLATES;plantilles
PREFERENCES_DATEFORMAT;Format de data PREFERENCES_DATEFORMAT;Format de data
PREFERENCES_DATEFORMATHINT;<i>Podeu fer servir les següents cadenes formatades:</i>\n<b>%y</b><i> : any</i>\n<b>%m</b><i> : mes</i>\n<b>%d</b><i> : dia</i>\n<i>\nPer exemple, el format de data hongarès és:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>Podeu fer servir les següents cadenes formatades:</i>\n<b>%y</b><i> : any</i>\n<b>%m</b><i> : mes</i>\n<b>%d</b><i> : dia</i>\n<i>\nPer exemple, el format de data hongarès és:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Idioma per omissió
PREFERENCES_DEFAULTTHEME;Tema per omissió
PREFERENCES_DIRDARKFRAMES;Carpeta de marcs foscos PREFERENCES_DIRDARKFRAMES;Carpeta de marcs foscos
PREFERENCES_DIRHOME;directori home PREFERENCES_DIRHOME;directori home
PREFERENCES_DIRLAST;Últim directori usat PREFERENCES_DIRLAST;Últim directori usat
@ -966,6 +964,7 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1018,6 +1017,7 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!GENERAL_AUTO;Automatic !GENERAL_AUTO;Automatic
!GENERAL_CLOSE;Close !GENERAL_CLOSE;Close
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_174;CIECAM02 !HISTORY_MSG_174;CIECAM02
@ -1305,6 +1305,15 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1398,7 +1407,8 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!PREFERENCES_CUSTPROFBUILDKEYFORMAT;Keys format !PREFERENCES_CUSTPROFBUILDKEYFORMAT;Keys format
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name !PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1415,7 +1425,8 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1428,6 +1439,7 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1469,6 +1481,7 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1555,11 +1568,11 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1579,8 +1592,8 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1591,6 +1604,7 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1602,9 +1616,11 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1623,10 +1639,14 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1759,15 +1779,15 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b>
!TP_GRADIENT_STRENGTH_TOOLTIP;Filter strength in stops. !TP_GRADIENT_STRENGTH_TOOLTIP;Filter strength in stops.
!TP_HLREC_ENA_TOOLTIP;Could be activated by Auto Levels. !TP_HLREC_ENA_TOOLTIP;Could be activated by Auto Levels.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image
!TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance !TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance

View File

@ -417,8 +417,6 @@ PREFERENCES_D60;6000K
PREFERENCES_D65;6500K PREFERENCES_D65;6500K
PREFERENCES_DATEFORMAT;日期格式 PREFERENCES_DATEFORMAT;日期格式
PREFERENCES_DATEFORMATHINT;<i>可以使用下列控制符:</i>\n<b>%y</b><i> : 年</i>\n<b>%m</b><i> : 月h</i>\n<b>%d</b><i> : 日</i>\n<i>\n例如中文日期格式:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>可以使用下列控制符:</i>\n<b>%y</b><i> : 年</i>\n<b>%m</b><i> : 月h</i>\n<b>%d</b><i> : 日</i>\n<i>\n例如中文日期格式:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;缺省语言
PREFERENCES_DEFAULTTHEME;默认主题
PREFERENCES_DIRHOME;用户文件路径 PREFERENCES_DIRHOME;用户文件路径
PREFERENCES_DIRLAST;上次访问路径 PREFERENCES_DIRLAST;上次访问路径
PREFERENCES_DIROTHER;其他 PREFERENCES_DIROTHER;其他
@ -797,6 +795,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!CURVEEDITOR_PARAMETRIC;Parametric !CURVEEDITOR_PARAMETRIC;Parametric
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -878,6 +877,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -1223,6 +1223,15 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1331,6 +1340,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DARKFRAME;Dark-Frame !PREFERENCES_DARKFRAME;Dark-Frame
!PREFERENCES_DARKFRAMEFOUND;Found !PREFERENCES_DARKFRAMEFOUND;Found
!PREFERENCES_DARKFRAMESHOTS;shots !PREFERENCES_DARKFRAMESHOTS;shots
@ -1354,7 +1364,8 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1369,6 +1380,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1431,6 +1443,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1496,11 +1509,11 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1520,8 +1533,8 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1532,6 +1545,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1540,9 +1554,11 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_COLORAPP_LABEL_SCENE;Scene Conditions !TP_COLORAPP_LABEL_SCENE;Scene Conditions
!TP_COLORAPP_LABEL_VIEWING;Viewing Conditions !TP_COLORAPP_LABEL_VIEWING;Viewing Conditions
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1555,10 +1571,14 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_COLORAPP_TCMODE_LABEL1;Curve mode 1 !TP_COLORAPP_TCMODE_LABEL1;Curve mode 1
!TP_COLORAPP_TCMODE_LABEL2;Curve mode 2 !TP_COLORAPP_TCMODE_LABEL2;Curve mode 2
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1693,17 +1713,17 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_GRADIENT_STRENGTH_TOOLTIP;Filter strength in stops. !TP_GRADIENT_STRENGTH_TOOLTIP;Filter strength in stops.
!TP_HLREC_ENA_TOOLTIP;Could be activated by Auto Levels. !TP_HLREC_ENA_TOOLTIP;Could be activated by Auto Levels.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1713,7 +1733,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b>
!TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance !TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_LABCURVE_CHROMA_TOOLTIP;To apply B&amp;W toning, set Chromaticity to -100. !TP_LABCURVE_CHROMA_TOOLTIP;To apply B&amp;W toning, set Chromaticity to -100.
!TP_LABCURVE_CURVEEDITOR_A_RANGE1;Green Saturated !TP_LABCURVE_CURVEEDITOR_A_RANGE1;Green Saturated
!TP_LABCURVE_CURVEEDITOR_A_RANGE2;Green Pastel !TP_LABCURVE_CURVEEDITOR_A_RANGE2;Green Pastel

View File

@ -253,8 +253,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maximal Thumbnail Height
PREFERENCES_CLIPPINGIND;高光提示 PREFERENCES_CLIPPINGIND;高光提示
PREFERENCES_DATEFORMAT;日期格式 PREFERENCES_DATEFORMAT;日期格式
PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;預設語言
PREFERENCES_DEFAULTTHEME;Default theme
PREFERENCES_DIRHOME;用戶檔路徑 PREFERENCES_DIRHOME;用戶檔路徑
PREFERENCES_DIRLAST;上次訪問路徑 PREFERENCES_DIRLAST;上次訪問路徑
PREFERENCES_DIROTHER;其他 PREFERENCES_DIROTHER;其他
@ -457,6 +455,7 @@ TP_WBALANCE_TEMPERATURE;色溫
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -582,6 +581,7 @@ TP_WBALANCE_TEMPERATURE;色溫
!GENERAL_NONE;None !GENERAL_NONE;None
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -963,6 +963,15 @@ TP_WBALANCE_TEMPERATURE;色溫
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1134,7 +1143,8 @@ TP_WBALANCE_TEMPERATURE;色溫
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1163,7 +1173,8 @@ TP_WBALANCE_TEMPERATURE;色溫
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1178,6 +1189,7 @@ TP_WBALANCE_TEMPERATURE;色溫
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1243,6 +1255,7 @@ TP_WBALANCE_TEMPERATURE;色溫
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1356,11 +1369,11 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1380,8 +1393,8 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1392,6 +1405,7 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1403,9 +1417,11 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1424,10 +1440,14 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1617,17 +1637,17 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1641,7 +1661,7 @@ TP_WBALANCE_TEMPERATURE;色溫
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -1001,8 +1001,6 @@ PREFERENCES_DATEFORMAT;Formát data
PREFERENCES_DATEFORMATHINT;Lze použít následující formátovací řetězce:\n<b>%y</b>\t- rok (year)\n<b>%m</b>\t- měsíc (month)\n<b>%d</b>\t- den (day)\n\nNapříklad český formát data:\n<b>%d. %m. %y</b> PREFERENCES_DATEFORMATHINT;Lze použít následující formátovací řetězce:\n<b>%y</b>\t- rok (year)\n<b>%m</b>\t- měsíc (month)\n<b>%d</b>\t- den (day)\n\nNapříklad český formát data:\n<b>%d. %m. %y</b>
PREFERENCES_DAUB_LABEL;Použít D6 Daubechiesové vlnky namísto D4 PREFERENCES_DAUB_LABEL;Použít D6 Daubechiesové vlnky namísto D4
PREFERENCES_DAUB_TOOLTIP;Nástroje Redukce šumu a Úrovně vlnky používají Daubechiesové mateřskou vlnku. Pokud místo D4 vyberete D6 zvýší se počet ortogonálních Daubechiesové koeficientů a pravděpodobně zvýší kvalitu úrovní malého měřítka. Není zde rozdíl ve spotřebě paměti nebo délce zpracování. PREFERENCES_DAUB_TOOLTIP;Nástroje Redukce šumu a Úrovně vlnky používají Daubechiesové mateřskou vlnku. Pokud místo D4 vyberete D6 zvýší se počet ortogonálních Daubechiesové koeficientů a pravděpodobně zvýší kvalitu úrovní malého měřítka. Není zde rozdíl ve spotřebě paměti nebo délce zpracování.
PREFERENCES_DEFAULTLANG;Výchozí jazyk
PREFERENCES_DEFAULTTHEME;Výchozí vzhled
PREFERENCES_DIRDARKFRAMES;Složka tmavých snímků PREFERENCES_DIRDARKFRAMES;Složka tmavých snímků
PREFERENCES_DIRHOME;Domovská složka PREFERENCES_DIRHOME;Domovská složka
PREFERENCES_DIRLAST;Poslední navštívená složka PREFERENCES_DIRLAST;Poslední navštívená složka
@ -2167,3 +2165,29 @@ ZOOMPANEL_ZOOMFITSCREEN;Přizpůsobit obrázek obrazovce\nZkratka: <b>f</b>
ZOOMPANEL_ZOOMIN;Přiblížit\nZkratka: <b>+</b> ZOOMPANEL_ZOOMIN;Přiblížit\nZkratka: <b>+</b>
ZOOMPANEL_ZOOMOUT;Oddálit\nZkratka: <b>-</b> ZOOMPANEL_ZOOMOUT;Oddálit\nZkratka: <b>-</b>
!!!!!!!!!!!!!!!!!!!!!!!!!
! Untranslated keys follow; remove the ! prefix after an entry is translated.
!!!!!!!!!!!!!!!!!!!!!!!!!
!DONT_SHOW_AGAIN;Don't show this message again.
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_LANG;Language
!PREFERENCES_THEME;Theme
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maksimal miniaturehøjde
PREFERENCES_CLIPPINGIND;Indikator for udbrændte områder PREFERENCES_CLIPPINGIND;Indikator for udbrændte områder
PREFERENCES_DATEFORMAT;Datoformat PREFERENCES_DATEFORMAT;Datoformat
PREFERENCES_DATEFORMATHINT;<i>Du kan bruge følgende formatindstillinger:</i>\n<b>%y</b><i> : år</i>\n<b>%m</b><i> : måned</i>\n<b>%d</b><i> : dag</i>\n<i>\nDet typiske datoformat i danmark er:</i>\n<b>%d/%m/%y</b> PREFERENCES_DATEFORMATHINT;<i>Du kan bruge følgende formatindstillinger:</i>\n<b>%y</b><i> : år</i>\n<b>%m</b><i> : måned</i>\n<b>%d</b><i> : dag</i>\n<i>\nDet typiske datoformat i danmark er:</i>\n<b>%d/%m/%y</b>
PREFERENCES_DEFAULTLANG;Sprog
PREFERENCES_DEFAULTTHEME;Tema
PREFERENCES_DIRHOME;Standardmappe PREFERENCES_DIRHOME;Standardmappe
PREFERENCES_DIRLAST;Sidst anvendte mappe PREFERENCES_DIRLAST;Sidst anvendte mappe
PREFERENCES_DIROTHER;Andet PREFERENCES_DIROTHER;Andet
@ -449,6 +447,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -578,6 +577,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -959,6 +959,15 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1132,7 +1141,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1161,7 +1171,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1176,6 +1187,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1241,6 +1253,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1354,11 +1367,11 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1378,8 +1391,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1390,6 +1403,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1401,9 +1415,11 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1422,10 +1438,14 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1615,17 +1635,17 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1639,7 +1659,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -1021,8 +1021,6 @@ PREFERENCES_DATEFORMAT;Format
PREFERENCES_DATEFORMATHINT;Die folgenden Variablen können verwendet werden:\n<b>%y</b> : <i>Jahr</i>\n<b>%m</b> : <i>Monat</i>\n<b>%d</b> : <i>Tag</i>\n\nBeispiele:\n<b>%d.%m.%y</b> (übliche deutsche Datumsschreibweise)\n<b>%y-%m-%d</b> (Datumsformat nach ISO 8601 und EN 28601) PREFERENCES_DATEFORMATHINT;Die folgenden Variablen können verwendet werden:\n<b>%y</b> : <i>Jahr</i>\n<b>%m</b> : <i>Monat</i>\n<b>%d</b> : <i>Tag</i>\n\nBeispiele:\n<b>%d.%m.%y</b> (übliche deutsche Datumsschreibweise)\n<b>%y-%m-%d</b> (Datumsformat nach ISO 8601 und EN 28601)
PREFERENCES_DAUB_LABEL;Benutze Daubechies D6-Wavelets anstatt D4 PREFERENCES_DAUB_LABEL;Benutze Daubechies D6-Wavelets anstatt D4
PREFERENCES_DAUB_TOOLTIP;Rauschreduzierung und Waveletebenen verwenden ein Debauchies Mutter-Wavelet. Wenn Sie D6 statt D4 wählen, erhöhen Sie die Anzahl der orthogonalen Daubechies-Koeffizienten, was die Qualität bei niedrigen Ebenen verbessern kann. Es gibt keinen Unterschied zwischen D4 und D6 im Speicherverbrauch oder in der Verarbeitungszeit. PREFERENCES_DAUB_TOOLTIP;Rauschreduzierung und Waveletebenen verwenden ein Debauchies Mutter-Wavelet. Wenn Sie D6 statt D4 wählen, erhöhen Sie die Anzahl der orthogonalen Daubechies-Koeffizienten, was die Qualität bei niedrigen Ebenen verbessern kann. Es gibt keinen Unterschied zwischen D4 und D6 im Speicherverbrauch oder in der Verarbeitungszeit.
PREFERENCES_DEFAULTLANG;Sprache für Menüs und Dialoge
PREFERENCES_DEFAULTTHEME;Oberflächendesign
PREFERENCES_DIRDARKFRAMES;Dunkelbild-Verzeichnis PREFERENCES_DIRDARKFRAMES;Dunkelbild-Verzeichnis
PREFERENCES_DIRHOME;Benutzer-Verzeichnis PREFERENCES_DIRHOME;Benutzer-Verzeichnis
PREFERENCES_DIRLAST;Zuletzt geöffnetes Verzeichnis PREFERENCES_DIRLAST;Zuletzt geöffnetes Verzeichnis
@ -2187,3 +2185,29 @@ ZOOMPANEL_ZOOMFITSCREEN;An Bildschirm anpassen\nTaste: <b>f</b>
ZOOMPANEL_ZOOMIN;Hineinzoomen\nTaste: <b>+</b> ZOOMPANEL_ZOOMIN;Hineinzoomen\nTaste: <b>+</b>
ZOOMPANEL_ZOOMOUT;Herauszoomen\nTaste: <b>-</b> ZOOMPANEL_ZOOMOUT;Herauszoomen\nTaste: <b>-</b>
!!!!!!!!!!!!!!!!!!!!!!!!!
! Untranslated keys follow; remove the ! prefix after an entry is translated.
!!!!!!!!!!!!!!!!!!!!!!!!!
!DONT_SHOW_AGAIN;Don't show this message again.
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_LANG;Language
!PREFERENCES_THEME;Theme
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance

View File

@ -58,7 +58,6 @@ TP_COLORAPP_CHROMA_M_TOOLTIP;Colourfulness in CIECAM02 differs from L*a*b* and R
TP_COLORAPP_CURVEEDITOR3;Colour curve TP_COLORAPP_CURVEEDITOR3;Colour curve
TP_COLORAPP_CURVEEDITOR3_TOOLTIP;Adjust either chroma, saturation or colourfulness.\n\nShows the histogram of chromaticity (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of C, s or M after CIECAM02.\n\nC, s and M are not shown in the main histogram panel.\nFor final output refer to the main histogram panel. TP_COLORAPP_CURVEEDITOR3_TOOLTIP;Adjust either chroma, saturation or colourfulness.\n\nShows the histogram of chromaticity (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of C, s or M after CIECAM02.\n\nC, s and M are not shown in the main histogram panel.\nFor final output refer to the main histogram panel.
TP_COLORAPP_LABEL;CIE Colour Appearance Model 2002 TP_COLORAPP_LABEL;CIE Colour Appearance Model 2002
TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Colour Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Colour Management</i>.
TP_COLORAPP_SURROUND_TOOLTIP;Changes tones and colours to take into account the viewing conditions of the output device.\n\n<b>Average</b>: Average light environment (standard). The image will not change.\n\n<b>Dim</b>: Dim environment (TV). The image will become slighty dark.\n\n<b>Dark</b>: Dark environment (projector). The image will become more dark.\n\n<b>Extremly Dark</b>: Extremly dark environment (cutsheet). The image will become very dark. TP_COLORAPP_SURROUND_TOOLTIP;Changes tones and colours to take into account the viewing conditions of the output device.\n\n<b>Average</b>: Average light environment (standard). The image will not change.\n\n<b>Dim</b>: Dim environment (TV). The image will become slighty dark.\n\n<b>Dark</b>: Dark environment (projector). The image will become more dark.\n\n<b>Extremly Dark</b>: Extremly dark environment (cutsheet). The image will become very dark.
TP_COLORAPP_TCMODE_COLORF;Colourfulness TP_COLORAPP_TCMODE_COLORF;Colourfulness
TP_COLORTONING_COLOR;Colour TP_COLORTONING_COLOR;Colour
@ -141,6 +140,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!CURVEEDITOR_TOOLTIPSAVE;Save current curve. !CURVEEDITOR_TOOLTIPSAVE;Save current curve.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DIRBROWSER_FOLDERS;Folders !DIRBROWSER_FOLDERS;Folders
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -334,6 +334,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!GENERAL_SAVE;Save !GENERAL_SAVE;Save
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_B;Show/Hide blue histogram. !HISTOGRAM_TOOLTIP_B;Show/Hide blue histogram.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
@ -786,6 +787,15 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT;Add !HISTORY_NEWSNAPSHOT;Add
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!HISTORY_SNAPSHOT;Snapshot !HISTORY_SNAPSHOT;Snapshot
@ -1023,7 +1033,8 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name !PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1035,8 +1046,6 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:\n<b>%y</b> - year\n<b>%m</b> - month\n<b>%d</b> - day\n\nFor example, the ISO 8601 standard dictates the date format as follows:\n<b>%y-%m-%d</b> !PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:\n<b>%y</b> - year\n<b>%m</b> - month\n<b>%d</b> - day\n\nFor example, the ISO 8601 standard dictates the date format as follows:\n<b>%y-%m-%d</b>
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_DEFAULTLANG;Default Language
!PREFERENCES_DEFAULTTHEME;Default Theme
!PREFERENCES_DIRDARKFRAMES;Dark-frames directory !PREFERENCES_DIRDARKFRAMES;Dark-frames directory
!PREFERENCES_DIRHOME;Home directory !PREFERENCES_DIRHOME;Home directory
!PREFERENCES_DIRLAST;Last visited directory !PREFERENCES_DIRLAST;Last visited directory
@ -1068,7 +1077,8 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1087,6 +1097,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!PREFERENCES_INTENT_PERCEPTUAL;Perceptual !PREFERENCES_INTENT_PERCEPTUAL;Perceptual
!PREFERENCES_INTENT_SATURATION;Saturation !PREFERENCES_INTENT_SATURATION;Saturation
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1172,6 +1183,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!PREFERENCES_TAB_IMPROC;Image Processing !PREFERENCES_TAB_IMPROC;Image Processing
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1319,11 +1331,11 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left.\n\nShortcuts:\n<b>[</b> - Multiple Editor Tabs Mode,\n<b>Alt-[</b> - Single Editor Tab Mode. !TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left.\n\nShortcuts:\n<b>[</b> - Multiple Editor Tabs Mode,\n<b>Alt-[</b> - Single Editor Tab Mode.
!TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right.\n\nShortcuts:\n<b>]</b> - Multiple Editor Tabs Mode,\n<b>Alt-]</b> - Single Editor Tab Mode. !TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right.\n\nShortcuts:\n<b>]</b> - Multiple Editor Tabs Mode,\n<b>Alt-]</b> - Single Editor Tab Mode.
!TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically. !TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically.
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1339,8 +1351,8 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1349,6 +1361,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1359,8 +1372,11 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1377,10 +1393,14 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1577,17 +1597,17 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERA;Camera standard !TP_ICM_INPUTCAMERA;Camera standard
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCUSTOM;Custom !TP_ICM_INPUTCUSTOM;Custom
@ -1603,7 +1623,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_ICM_WORKINGPROFILE;Working Profile !TP_ICM_WORKINGPROFILE;Working Profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold

View File

@ -37,6 +37,7 @@
!CURVEEDITOR_TOOLTIPSAVE;Save current curve. !CURVEEDITOR_TOOLTIPSAVE;Save current curve.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DIRBROWSER_FOLDERS;Folders !DIRBROWSER_FOLDERS;Folders
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -235,6 +236,7 @@
!GENERAL_SAVE;Save !GENERAL_SAVE;Save
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_B;Show/Hide blue histogram. !HISTOGRAM_TOOLTIP_B;Show/Hide blue histogram.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
@ -705,6 +707,15 @@
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT;Add !HISTORY_NEWSNAPSHOT;Add
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!HISTORY_SNAPSHOT;Snapshot !HISTORY_SNAPSHOT;Snapshot
@ -953,7 +964,8 @@
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -965,8 +977,6 @@
!PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:\n<b>%y</b> - year\n<b>%m</b> - month\n<b>%d</b> - day\n\nFor example, the ISO 8601 standard dictates the date format as follows:\n<b>%y-%m-%d</b> !PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:\n<b>%y</b> - year\n<b>%m</b> - month\n<b>%d</b> - day\n\nFor example, the ISO 8601 standard dictates the date format as follows:\n<b>%y-%m-%d</b>
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_DEFAULTLANG;Default Language
!PREFERENCES_DEFAULTTHEME;Default Theme
!PREFERENCES_DIRDARKFRAMES;Dark-frames directory !PREFERENCES_DIRDARKFRAMES;Dark-frames directory
!PREFERENCES_DIRHOME;Home directory !PREFERENCES_DIRHOME;Home directory
!PREFERENCES_DIRLAST;Last visited directory !PREFERENCES_DIRLAST;Last visited directory
@ -998,7 +1008,8 @@
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1020,6 +1031,7 @@
!PREFERENCES_INTENT_RELATIVE;Relative Colorimetric !PREFERENCES_INTENT_RELATIVE;Relative Colorimetric
!PREFERENCES_INTENT_SATURATION;Saturation !PREFERENCES_INTENT_SATURATION;Saturation
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1111,6 +1123,7 @@
!PREFERENCES_TAB_IMPROC;Image Processing !PREFERENCES_TAB_IMPROC;Image Processing
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1268,11 +1281,11 @@
!TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left.\n\nShortcuts:\n<b>[</b> - Multiple Editor Tabs Mode,\n<b>Alt-[</b> - Single Editor Tab Mode. !TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left.\n\nShortcuts:\n<b>[</b> - Multiple Editor Tabs Mode,\n<b>Alt-[</b> - Single Editor Tab Mode.
!TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right.\n\nShortcuts:\n<b>]</b> - Multiple Editor Tabs Mode,\n<b>Alt-]</b> - Single Editor Tab Mode. !TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right.\n\nShortcuts:\n<b>]</b> - Multiple Editor Tabs Mode,\n<b>Alt-]</b> - Single Editor Tab Mode.
!TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically. !TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically.
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1292,8 +1305,8 @@
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1304,6 +1317,7 @@
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1315,9 +1329,11 @@
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1336,10 +1352,14 @@
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1556,17 +1576,17 @@
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERA;Camera standard !TP_ICM_INPUTCAMERA;Camera standard
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
@ -1588,7 +1608,7 @@
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_ICM_WORKINGPROFILE;Working Profile !TP_ICM_WORKINGPROFILE;Working Profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold

View File

@ -765,8 +765,6 @@ PREFERENCES_DARKFRAMESHOTS;disparos
PREFERENCES_DARKFRAMETEMPLATES;plantillas PREFERENCES_DARKFRAMETEMPLATES;plantillas
PREFERENCES_DATEFORMAT;Formato de fecha PREFERENCES_DATEFORMAT;Formato de fecha
PREFERENCES_DATEFORMATHINT;<i>Puede usar las siguientes variables :</i>\n<b>%y</b><i> : año</i>\n<b>%m</b><i> : mes</i>\n<b>%d</b><i> : dia</i>\n<i>\nPor ejemplo, la fecha en formato Húngaro es: </i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>Puede usar las siguientes variables :</i>\n<b>%y</b><i> : año</i>\n<b>%m</b><i> : mes</i>\n<b>%d</b><i> : dia</i>\n<i>\nPor ejemplo, la fecha en formato Húngaro es: </i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Idioma predeterminado
PREFERENCES_DEFAULTTHEME;Tema predeterminado
PREFERENCES_DIRDARKFRAMES;Carpeta con las Tomas Negras PREFERENCES_DIRDARKFRAMES;Carpeta con las Tomas Negras
PREFERENCES_DIRHOME;Carpeta de usuario PREFERENCES_DIRHOME;Carpeta de usuario
PREFERENCES_DIRLAST;Última carpeta visitada PREFERENCES_DIRLAST;Última carpeta visitada
@ -1507,6 +1505,7 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1536,6 +1535,7 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_299;NR - Chrominance curve !HISTORY_MSG_299;NR - Chrominance curve
!HISTORY_MSG_300;- !HISTORY_MSG_300;-
@ -1698,6 +1698,15 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1760,11 +1769,13 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1772,6 +1783,7 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1809,6 +1821,7 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1826,6 +1839,13 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTHARMMEANS;Harmonic Means
!TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE1;Golden Triangles 1
!TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_CROP_GTTRIANGLE2;Golden Triangles 2
@ -1871,11 +1891,11 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b>
!TP_EXPOSURE_TCMODE_PERCEPTUAL;Perceptual !TP_EXPOSURE_TCMODE_PERCEPTUAL;Perceptual
!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_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_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maximal Thumbnail Height
PREFERENCES_CLIPPINGIND;Itzal/argi moztuen adierazlea PREFERENCES_CLIPPINGIND;Itzal/argi moztuen adierazlea
PREFERENCES_DATEFORMAT;Data formatua PREFERENCES_DATEFORMAT;Data formatua
PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Hizkuntza
PREFERENCES_DEFAULTTHEME;Default theme
PREFERENCES_DIRHOME;Etxe karpeta PREFERENCES_DIRHOME;Etxe karpeta
PREFERENCES_DIRLAST;Azkena ikusitako karpeta PREFERENCES_DIRLAST;Azkena ikusitako karpeta
PREFERENCES_DIROTHER;Besterik PREFERENCES_DIROTHER;Besterik
@ -449,6 +447,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -578,6 +577,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -959,6 +959,15 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1132,7 +1141,8 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1161,7 +1171,8 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1176,6 +1187,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1241,6 +1253,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1354,11 +1367,11 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1378,8 +1391,8 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1390,6 +1403,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1401,9 +1415,11 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1422,10 +1438,14 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1615,17 +1635,17 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1639,7 +1659,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -962,8 +962,6 @@ PREFERENCES_DATEFORMAT;Format
PREFERENCES_DATEFORMATHINT;<i>Vous pouvez utiliser les paramètres de chaînes formatées suivants:</i>\n<b>%y</b><i> : année</i>\n<b>%m</b><i> : mois</i>\n<b>%d</b><i> : jour</i>\n<i>\nPar exemple, le format de date française est:</i>\n<b>%d/%m/%y</b> PREFERENCES_DATEFORMATHINT;<i>Vous pouvez utiliser les paramètres de chaînes formatées suivants:</i>\n<b>%y</b><i> : année</i>\n<b>%m</b><i> : mois</i>\n<b>%d</b><i> : jour</i>\n<i>\nPar exemple, le format de date française est:</i>\n<b>%d/%m/%y</b>
PREFERENCES_DAUB_LABEL;Utiliser les ondelettes de Daubechies D6 au lieu de D4 PREFERENCES_DAUB_LABEL;Utiliser les ondelettes de Daubechies D6 au lieu de D4
PREFERENCES_DAUB_TOOLTIP;Les outils de Réduction de Bruit et de Niveaux d'Ondelettes utilisent une ondelette de Debauchie mère. Si vous choisissez D6 au lieu de D4 vous augmentez le nombre de coéf. orthogonaux de Daubechies et augmentez probablement la qualité des niveaux de taille moyenne. Il n'y a pas de différence de consommation mémoire ou de temps de traitement entre les deux. PREFERENCES_DAUB_TOOLTIP;Les outils de Réduction de Bruit et de Niveaux d'Ondelettes utilisent une ondelette de Debauchie mère. Si vous choisissez D6 au lieu de D4 vous augmentez le nombre de coéf. orthogonaux de Daubechies et augmentez probablement la qualité des niveaux de taille moyenne. Il n'y a pas de différence de consommation mémoire ou de temps de traitement entre les deux.
PREFERENCES_DEFAULTLANG;Langue par défaut
PREFERENCES_DEFAULTTHEME;Thème par défaut
PREFERENCES_DIRDARKFRAMES;Dossier des images de Trame Noire PREFERENCES_DIRDARKFRAMES;Dossier des images de Trame Noire
PREFERENCES_DIRHOME;Racine de mes documents personnels PREFERENCES_DIRHOME;Racine de mes documents personnels
PREFERENCES_DIRLAST;Dernier dossier visité PREFERENCES_DIRLAST;Dernier dossier visité
@ -2137,3 +2135,29 @@ ZOOMPANEL_ZOOMFITSCREEN;Affiche l'image entière\nRaccourci: <b>f</b>
ZOOMPANEL_ZOOMIN;Zoom Avant\nRaccourci: <b>+</b> ZOOMPANEL_ZOOMIN;Zoom Avant\nRaccourci: <b>+</b>
ZOOMPANEL_ZOOMOUT;Zoom Arrière\nRaccourci: <b>-</b> ZOOMPANEL_ZOOMOUT;Zoom Arrière\nRaccourci: <b>-</b>
!!!!!!!!!!!!!!!!!!!!!!!!!
! Untranslated keys follow; remove the ! prefix after an entry is translated.
!!!!!!!!!!!!!!!!!!!!!!!!!
!DONT_SHOW_AGAIN;Don't show this message again.
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_LANG;Language
!PREFERENCES_THEME;Theme
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maximal Thumbnail Height
PREFERENCES_CLIPPINGIND;Ένδειξη ψαλιδίσματος PREFERENCES_CLIPPINGIND;Ένδειξη ψαλιδίσματος
PREFERENCES_DATEFORMAT;Διάταξη ημερομηνίας PREFERENCES_DATEFORMAT;Διάταξη ημερομηνίας
PREFERENCES_DATEFORMATHINT;<i>YΜπορείτε να χρησιμοποιήσετε τις εξής εντολές μορφοποίησης:</i>\n<b>%y</b><i> : χρονολογία</i>\n<b>%m</b><i> : μήνας</i>\n<b>%d</b><i> : ημέρα</i>\n<i>\nΓια παράδειγμα, η μορφοποίηση ημερομηνίας στην Ελλάδα είναι:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>YΜπορείτε να χρησιμοποιήσετε τις εξής εντολές μορφοποίησης:</i>\n<b>%y</b><i> : χρονολογία</i>\n<b>%m</b><i> : μήνας</i>\n<b>%d</b><i> : ημέρα</i>\n<i>\nΓια παράδειγμα, η μορφοποίηση ημερομηνίας στην Ελλάδα είναι:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Προεπιλεγμένη γλώσσα
PREFERENCES_DEFAULTTHEME;Προεπιλεγμένο θέμα
PREFERENCES_DIRHOME;Τοποθεσία "Home" PREFERENCES_DIRHOME;Τοποθεσία "Home"
PREFERENCES_DIRLAST;Τελευταία τοποθεσία που χρησιμοποιήθηκε PREFERENCES_DIRLAST;Τελευταία τοποθεσία που χρησιμοποιήθηκε
PREFERENCES_DIROTHER;Άλλο PREFERENCES_DIROTHER;Άλλο
@ -448,6 +446,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -577,6 +576,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -958,6 +958,15 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1131,7 +1140,8 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1160,7 +1170,8 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1175,6 +1186,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1240,6 +1252,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1353,11 +1366,11 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1377,8 +1390,8 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1389,6 +1402,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1400,9 +1414,11 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1421,10 +1437,14 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1614,17 +1634,17 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1638,7 +1658,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maximal Thumbnail Height
PREFERENCES_CLIPPINGIND;סימון קיצוץ PREFERENCES_CLIPPINGIND;סימון קיצוץ
PREFERENCES_DATEFORMAT;צורת תאריך PREFERENCES_DATEFORMAT;צורת תאריך
PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;שפה ברירת המחדל
PREFERENCES_DEFAULTTHEME;Default theme
PREFERENCES_DIRHOME;תיקיית הבית PREFERENCES_DIRHOME;תיקיית הבית
PREFERENCES_DIRLAST;תיקיה האחרונה שביקרתי בה PREFERENCES_DIRLAST;תיקיה האחרונה שביקרתי בה
PREFERENCES_DIROTHER;אחר PREFERENCES_DIROTHER;אחר
@ -449,6 +447,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -578,6 +577,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -959,6 +959,15 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1132,7 +1141,8 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1161,7 +1171,8 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1176,6 +1187,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1241,6 +1253,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1354,11 +1367,11 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1378,8 +1391,8 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1390,6 +1403,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1401,9 +1415,11 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1422,10 +1438,14 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1615,17 +1635,17 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1639,7 +1659,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -667,8 +667,6 @@ PREFERENCES_DARKFRAMESHOTS;fotogrammi
PREFERENCES_DARKFRAMETEMPLATES;modelli PREFERENCES_DARKFRAMETEMPLATES;modelli
PREFERENCES_DATEFORMAT;Formato della data PREFERENCES_DATEFORMAT;Formato della data
PREFERENCES_DATEFORMATHINT;<i>Puoi usare le seguenti stringhe di formattazione:</i>\n<b>%y</b><i> : anno</i>\n<b>%m</b><i> : mese</i>\n<b>%d</b><i> : giorno</i>\n<i>\nPer esempio, il formato italiano per la data è:</i>\n<b>%d/%m/%y</b> PREFERENCES_DATEFORMATHINT;<i>Puoi usare le seguenti stringhe di formattazione:</i>\n<b>%y</b><i> : anno</i>\n<b>%m</b><i> : mese</i>\n<b>%d</b><i> : giorno</i>\n<i>\nPer esempio, il formato italiano per la data è:</i>\n<b>%d/%m/%y</b>
PREFERENCES_DEFAULTLANG;Lingua predefinita
PREFERENCES_DEFAULTTHEME;Tema predefinito
PREFERENCES_DIRDARKFRAMES;Cartella dei fotogrammi di fondo (Dark Frame) PREFERENCES_DIRDARKFRAMES;Cartella dei fotogrammi di fondo (Dark Frame)
PREFERENCES_DIRHOME;Cartella personale dell'utente (home directory) PREFERENCES_DIRHOME;Cartella personale dell'utente (home directory)
PREFERENCES_DIRLAST;Ultima cartella visitata PREFERENCES_DIRLAST;Ultima cartella visitata
@ -1338,6 +1336,7 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1366,6 +1365,7 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_256;NR - Median type !HISTORY_MSG_256;NR - Median type
!HISTORY_MSG_257;Color Toning !HISTORY_MSG_257;Color Toning
@ -1571,6 +1571,15 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1630,12 +1639,14 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FILMSIMULATION;Film Simulation !PREFERENCES_FILMSIMULATION;Film Simulation
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1643,6 +1654,7 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1680,6 +1692,7 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1697,6 +1710,13 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1798,11 +1818,11 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b>
!TP_FLATFIELD_CLIPCONTROL;Clip control !TP_FLATFIELD_CLIPCONTROL;Clip control
!TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast. !TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -889,8 +889,6 @@ PREFERENCES_DATEFORMAT;日付の形式
PREFERENCES_DATEFORMATHINT;<i>次の書式を使用することができます:</i>\n<b>%y</b><i> : 年</i>\n<b>%m</b><i> : 月</i>\n<b>%d</b><i> : 日</i>\n<i>\n例として, ハンガリアン記法の日付:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>次の書式を使用することができます:</i>\n<b>%y</b><i> : 年</i>\n<b>%m</b><i> : 月</i>\n<b>%d</b><i> : 日</i>\n<i>\n例として, ハンガリアン記法の日付:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DAUB_LABEL;ドビッシー関数のタイプ D4の代わりにD6を使う PREFERENCES_DAUB_LABEL;ドビッシー関数のタイプ D4の代わりにD6を使う
PREFERENCES_DAUB_TOOLTIP;イズ低減とウェーブレットのレベルツールはマザーウェーブレットにドビッシーを使っています。このタイプでD4の代わりにD6を選択すると、直交系であるドビッシーの係数が増えるので、恐らくスケールの小さいレベルは質が向上するでしょう。タイプを変えても処理時間やメモリー使用量に影響はありません。 PREFERENCES_DAUB_TOOLTIP;イズ低減とウェーブレットのレベルツールはマザーウェーブレットにドビッシーを使っています。このタイプでD4の代わりにD6を選択すると、直交系であるドビッシーの係数が増えるので、恐らくスケールの小さいレベルは質が向上するでしょう。タイプを変えても処理時間やメモリー使用量に影響はありません。
PREFERENCES_DEFAULTLANG;デフォルトの言語
PREFERENCES_DEFAULTTHEME;デフォルトテーマ
PREFERENCES_DIRDARKFRAMES;ダークフレーム・ディレクトリ PREFERENCES_DIRDARKFRAMES;ダークフレーム・ディレクトリ
PREFERENCES_DIRHOME;ホーム・ディレクトリ PREFERENCES_DIRHOME;ホーム・ディレクトリ
PREFERENCES_DIRLAST;最近参照したディレクトリ PREFERENCES_DIRLAST;最近参照したディレクトリ
@ -1877,6 +1875,7 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: <b>-</b>
! Untranslated keys follow; remove the ! prefix after an entry is translated. ! Untranslated keys follow; remove the ! prefix after an entry is translated.
!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1895,6 +1894,7 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: <b>-</b>
!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. !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_APPLY;Apply
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_407;Retinex - Method !HISTORY_MSG_407;Retinex - Method
!HISTORY_MSG_408;Retinex - Radius !HISTORY_MSG_408;Retinex - Radius
@ -1949,6 +1949,15 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1983,6 +1992,9 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: <b>-</b>
!PARTIALPASTE_RAW_PIXELSHIFT;PixelShift !PARTIALPASTE_RAW_PIXELSHIFT;PixelShift
!PARTIALPASTE_RETINEX;Retinex !PARTIALPASTE_RETINEX;Retinex
!PREFERENCES_CMMBPC;Black point compensation !PREFERENCES_CMMBPC;Black point compensation
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_LANG;Language
!PREFERENCES_MONINTENT;Default rendering intent !PREFERENCES_MONINTENT;Default rendering intent
!PREFERENCES_MONITOR;Monitor !PREFERENCES_MONITOR;Monitor
!PREFERENCES_MONPROFILE;Default color profile !PREFERENCES_MONPROFILE;Default color profile
@ -1997,6 +2009,7 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: <b>-</b>
!PREFERENCES_PRTPROFILE;Color profile !PREFERENCES_PRTPROFILE;Color profile
!PREFERENCES_SELECTFONT_COLPICKER;Select Color Picker's font !PREFERENCES_SELECTFONT_COLPICKER;Select Color Picker's font
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TUNNELMETADATA;Copy Exif/IPTC/XMP unchanged to output file !PREFERENCES_TUNNELMETADATA;Copy Exif/IPTC/XMP unchanged to output file
!PROFILEPANEL_PDYNAMIC;Dynamic !PROFILEPANEL_PDYNAMIC;Dynamic
!SAVEDLG_SUBSAMP_TOOLTIP;Best compression:\nJ:a:b 4:2:0\nh/v 2/2\nChroma halved horizontally and vertically.\n\nBalanced:\nJ:a:b 4:2:2\nh/v 2/1\nChroma halved horizontally.\n\nBest quality:\nJ:a:b 4:4:4\nh/v 1/1\nNo chroma subsampling. !SAVEDLG_SUBSAMP_TOOLTIP;Best compression:\nJ:a:b 4:2:0\nh/v 2/2\nChroma halved horizontally and vertically.\n\nBalanced:\nJ:a:b 4:2:2\nh/v 2/1\nChroma halved horizontally.\n\nBest quality:\nJ:a:b 4:4:4\nh/v 1/1\nNo chroma subsampling.
@ -2007,6 +2020,13 @@ ZOOMPANEL_ZOOMOUT;ズームアウト\nショートカット: <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_DIRPYRDENOISE_3X3;3×3 !TP_DIRPYRDENOISE_3X3;3×3
!TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft !TP_DIRPYRDENOISE_3X3_SOFT;3×3 soft
!TP_DIRPYRDENOISE_5X5;5×5 !TP_DIRPYRDENOISE_5X5;5×5

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Keša maksimālais sīktēla augstums
PREFERENCES_CLIPPINGIND;Cirpšanas pazīme PREFERENCES_CLIPPINGIND;Cirpšanas pazīme
PREFERENCES_DATEFORMAT;Datuma formāts PREFERENCES_DATEFORMAT;Datuma formāts
PREFERENCES_DATEFORMATHINT;Jūs varat lietot šāduas formatēšanas parametrus:\n%y : gads\n%m : mēnesis\n%d : diena\n\nPiemēram, ungāru datuma formāts ir:\n%y/%m/%d PREFERENCES_DATEFORMATHINT;Jūs varat lietot šāduas formatēšanas parametrus:\n%y : gads\n%m : mēnesis\n%d : diena\n\nPiemēram, ungāru datuma formāts ir:\n%y/%m/%d
PREFERENCES_DEFAULTLANG;Noklusētā valoda
PREFERENCES_DEFAULTTHEME;Noklusētā tēma
PREFERENCES_DIRHOME;Mājas mape PREFERENCES_DIRHOME;Mājas mape
PREFERENCES_DIRLAST;Pēdējā lietotā mape PREFERENCES_DIRLAST;Pēdējā lietotā mape
PREFERENCES_DIROTHER;Cita PREFERENCES_DIROTHER;Cita
@ -449,6 +447,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -578,6 +577,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -959,6 +959,15 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1132,7 +1141,8 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1161,7 +1171,8 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1176,6 +1187,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1241,6 +1253,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1354,11 +1367,11 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1378,8 +1391,8 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1390,6 +1403,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1401,9 +1415,11 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1422,10 +1438,14 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1615,17 +1635,17 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1639,7 +1659,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -499,8 +499,6 @@ PREFERENCES_DARKFRAMESHOTS;kép
PREFERENCES_DARKFRAMETEMPLATES;sablonok PREFERENCES_DARKFRAMETEMPLATES;sablonok
PREFERENCES_DATEFORMAT;Dátumformátum PREFERENCES_DATEFORMAT;Dátumformátum
PREFERENCES_DATEFORMATHINT;<i>A következő jeleket lehet használni:</i>\n<b>%y</b><i> : év</i>\n<b>%m</b><i> : hónap</i>\n<b>%d</b><i> : nap</i>\n<i>\nPéldául a magyar dátumformátum:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>A következő jeleket lehet használni:</i>\n<b>%y</b><i> : év</i>\n<b>%m</b><i> : hónap</i>\n<b>%d</b><i> : nap</i>\n<i>\nPéldául a magyar dátumformátum:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Alapértelmezett nyelv
PREFERENCES_DEFAULTTHEME;Alapértelmezett kinézet
PREFERENCES_DIRDARKFRAMES;Dark frame könyvtára PREFERENCES_DIRDARKFRAMES;Dark frame könyvtára
PREFERENCES_DIRHOME;Saját könyvtár PREFERENCES_DIRHOME;Saját könyvtár
PREFERENCES_DIRLAST;Utoljára látogatott könyvtár PREFERENCES_DIRLAST;Utoljára látogatott könyvtár
@ -881,6 +879,7 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -939,6 +938,7 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!GENERAL_CLOSE;Close !GENERAL_CLOSE;Close
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram. !HISTOGRAM_TOOLTIP_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
@ -1234,6 +1234,15 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1334,7 +1343,8 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!PREFERENCES_CUSTPROFBUILDKEYFORMAT;Keys format !PREFERENCES_CUSTPROFBUILDKEYFORMAT;Keys format
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name !PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1351,7 +1361,8 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1364,6 +1375,7 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1406,6 +1418,7 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1506,11 +1519,11 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1530,8 +1543,8 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1542,6 +1555,7 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1553,9 +1567,11 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1574,10 +1590,14 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1721,22 +1741,22 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b>
!TP_GRADIENT_STRENGTH_TOOLTIP;Filter strength in stops. !TP_GRADIENT_STRENGTH_TOOLTIP;Filter strength in stops.
!TP_HLREC_ENA_TOOLTIP;Could be activated by Auto Levels. !TP_HLREC_ENA_TOOLTIP;Could be activated by Auto Levels.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image
!TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance !TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift
!TP_LABCURVE_AVOIDCOLORSHIFT_TOOLTIP;Fit colors into gamut of the working color space and apply Munsell correction. !TP_LABCURVE_AVOIDCOLORSHIFT_TOOLTIP;Fit colors into gamut of the working color space and apply Munsell correction.
!TP_LABCURVE_CHROMATICITY;Chromaticity !TP_LABCURVE_CHROMATICITY;Chromaticity

View File

@ -974,8 +974,6 @@ PREFERENCES_DATEFORMAT;Datumformaat
PREFERENCES_DATEFORMATHINT;<i>U kunt de volgende formaten gebruiken:</i>\n<b>%y</b><i> : jaar</i>\n<b>%m</b><i> : maand</i>\n<b>%d</b><i> : dag</i>\n<i>\nHet Nederlandse datumformaat is bijvoorbeeld:</i>\n<b>%d/%m/%y</b> PREFERENCES_DATEFORMATHINT;<i>U kunt de volgende formaten gebruiken:</i>\n<b>%y</b><i> : jaar</i>\n<b>%m</b><i> : maand</i>\n<b>%d</b><i> : dag</i>\n<i>\nHet Nederlandse datumformaat is bijvoorbeeld:</i>\n<b>%d/%m/%y</b>
PREFERENCES_DAUB_LABEL;Gebruik Daubechies D6 wavelets in plaats van D4 PREFERENCES_DAUB_LABEL;Gebruik Daubechies D6 wavelets in plaats van D4
PREFERENCES_DAUB_TOOLTIP;De Ruisonderdrukking en Wavelet niveaus gebruiken de Debauchies moeder wavelet. Als je D6 gebruikt in plaats van D4 vergroot het aantal orthogonale Daubechies coëfficiënten en dit verbeterd waarschijnlijk de kwaliteit van de lage niveaus. PREFERENCES_DAUB_TOOLTIP;De Ruisonderdrukking en Wavelet niveaus gebruiken de Debauchies moeder wavelet. Als je D6 gebruikt in plaats van D4 vergroot het aantal orthogonale Daubechies coëfficiënten en dit verbeterd waarschijnlijk de kwaliteit van de lage niveaus.
PREFERENCES_DEFAULTLANG;Standaardtaal
PREFERENCES_DEFAULTTHEME;Standaardthema
PREFERENCES_DIRDARKFRAMES;Map met donkerframes PREFERENCES_DIRDARKFRAMES;Map met donkerframes
PREFERENCES_DIRHOME;Standaardmap PREFERENCES_DIRHOME;Standaardmap
PREFERENCES_DIRLAST;Laatst bezochte map PREFERENCES_DIRLAST;Laatst bezochte map
@ -2141,11 +2139,33 @@ ZOOMPANEL_ZOOMOUT;Zoom uit\nSneltoets: <b>-</b>
! Untranslated keys follow; remove the ! prefix after an entry is translated. ! Untranslated keys follow; remove the ! prefix after an entry is translated.
!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!
!DONT_SHOW_AGAIN;Don't show this message again.
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_441;Retinex - Gain transmission !HISTORY_MSG_441;Retinex - Gain transmission
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!MAIN_MSG_TOOMANYOPENEDITORS;Too many open editors.\nPlease close an editor to continue. !MAIN_MSG_TOOMANYOPENEDITORS;Too many open editors.\nPlease close an editor to continue.
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_LANG;Language
!PREFERENCES_PROFILESAVEBOTH;Save processing profile both to the cache and next to the input file !PREFERENCES_PROFILESAVEBOTH;Save processing profile both to the cache and next to the input file
!PREFERENCES_PROFILESAVELOCATION;Processing profile saving location !PREFERENCES_PROFILESAVELOCATION;Processing profile saving location
!PREFERENCES_THEME;Theme
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_RAW_IMAGENUM_TOOLTIP;Some raw files consist of several sub-images (Pentax Pixel Shift, Pentax 3-in-1 HDR, Canon Dual Pixel).\n\nWhen using any demosaicing method other than Pixel Shift, this selects which sub-image is used.\n\nWhen using the Pixel Shift demosaicing method on a Pixel Shift raw, all sub-images are used, and this selects which sub-image should be used for moving parts. !TP_RAW_IMAGENUM_TOOLTIP;Some raw files consist of several sub-images (Pentax Pixel Shift, Pentax 3-in-1 HDR, Canon Dual Pixel).\n\nWhen using any demosaicing method other than Pixel Shift, this selects which sub-image is used.\n\nWhen using the Pixel Shift demosaicing method on a Pixel Shift raw, all sub-images are used, and this selects which sub-image should be used for moving parts.
!TP_RAW_PIXELSHIFTEQUALBRIGHTCHANNEL;Equalize per channel !TP_RAW_PIXELSHIFTEQUALBRIGHTCHANNEL;Equalize per channel
!TP_RAW_PIXELSHIFTEQUALBRIGHTCHANNEL_TOOLTIP;Enabled: Equalize the RGB channels individually.\nDisabled: Use same equalization factor for all channels. !TP_RAW_PIXELSHIFTEQUALBRIGHTCHANNEL_TOOLTIP;Enabled: Equalize the RGB channels individually.\nDisabled: Use same equalization factor for all channels.

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maksimal Thumbnail Høyde
PREFERENCES_CLIPPINGIND;Markerings-indikasjon PREFERENCES_CLIPPINGIND;Markerings-indikasjon
PREFERENCES_DATEFORMAT;Datoformat PREFERENCES_DATEFORMAT;Datoformat
PREFERENCES_DATEFORMATHINT;<i>Du kan bruke følgende formattering:</i>\n<b>%y</b><i> : år</i>\n<b>%m</b><i> : måned</i>\n<b>%d</b><i> : dag</i>\n<i>\nF. eks. er ungarsk datoformat:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>Du kan bruke følgende formattering:</i>\n<b>%y</b><i> : år</i>\n<b>%m</b><i> : måned</i>\n<b>%d</b><i> : dag</i>\n<i>\nF. eks. er ungarsk datoformat:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Programspråk
PREFERENCES_DEFAULTTHEME;Standard tema
PREFERENCES_DIRHOME;Hjemmemappe PREFERENCES_DIRHOME;Hjemmemappe
PREFERENCES_DIRLAST;Sidste besøkte mappe PREFERENCES_DIRLAST;Sidste besøkte mappe
PREFERENCES_DIROTHER;Annen PREFERENCES_DIROTHER;Annen
@ -448,6 +446,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -577,6 +576,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -958,6 +958,15 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1131,7 +1140,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1160,7 +1170,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1175,6 +1186,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1240,6 +1252,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1353,11 +1366,11 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1377,8 +1390,8 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1389,6 +1402,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1400,9 +1414,11 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1421,10 +1437,14 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1614,17 +1634,17 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1638,7 +1658,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -720,8 +720,6 @@ PREFERENCES_DARKFRAMESHOTS;zdjęć(ia)
PREFERENCES_DARKFRAMETEMPLATES;szablonów(ny) PREFERENCES_DARKFRAMETEMPLATES;szablonów(ny)
PREFERENCES_DATEFORMAT;Format daty PREFERENCES_DATEFORMAT;Format daty
PREFERENCES_DATEFORMATHINT;<i>Dozwolone są następujące kody formatujące:\n<b>%y</b> - rok\n<b>%m</b> - miesiąc\n<b>%d</b> - dzień\n\nNa przykład według standardu ISO 8601 format daty wygląda następująco:\n<b>%y-%m-%d</b> PREFERENCES_DATEFORMATHINT;<i>Dozwolone są następujące kody formatujące:\n<b>%y</b> - rok\n<b>%m</b> - miesiąc\n<b>%d</b> - dzień\n\nNa przykład według standardu ISO 8601 format daty wygląda następująco:\n<b>%y-%m-%d</b>
PREFERENCES_DEFAULTLANG;Domyślny język
PREFERENCES_DEFAULTTHEME;Domyślny temat
PREFERENCES_DIRDARKFRAMES;Katalog z czarnymi klatkami PREFERENCES_DIRDARKFRAMES;Katalog z czarnymi klatkami
PREFERENCES_DIRHOME;Katalog domowy PREFERENCES_DIRHOME;Katalog domowy
PREFERENCES_DIRLAST;Ostatnio odwiedzony katalog PREFERENCES_DIRLAST;Ostatnio odwiedzony katalog
@ -1465,6 +1463,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1493,6 +1492,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_299;NR - Chrominance curve !HISTORY_MSG_299;NR - Chrominance curve
!HISTORY_MSG_300;- !HISTORY_MSG_300;-
@ -1655,6 +1655,15 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1708,11 +1717,13 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1720,6 +1731,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1757,6 +1769,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1774,6 +1787,13 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTHARMMEANS;Harmonic Means
!TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE1;Golden Triangles 1
!TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_CROP_GTTRIANGLE2;Golden Triangles 2
@ -1819,11 +1839,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b>
!TP_EXPOSURE_TCMODE_PERCEPTUAL;Perceptual !TP_EXPOSURE_TCMODE_PERCEPTUAL;Perceptual
!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_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_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -720,8 +720,6 @@ PREFERENCES_DARKFRAMESHOTS;zdjec(ia)
PREFERENCES_DARKFRAMETEMPLATES;szablonow(ny) PREFERENCES_DARKFRAMETEMPLATES;szablonow(ny)
PREFERENCES_DATEFORMAT;Format daty PREFERENCES_DATEFORMAT;Format daty
PREFERENCES_DATEFORMATHINT;<i>Dozwolone sa nastepujace kody formatujace:\n<b>%y</b> - rok\n<b>%m</b> - miesiac\n<b>%d</b> - dzien\n\nNa przyklad wedlug standardu ISO 8601 format daty wyglada nastepujaco:\n<b>%y-%m-%d</b> PREFERENCES_DATEFORMATHINT;<i>Dozwolone sa nastepujace kody formatujace:\n<b>%y</b> - rok\n<b>%m</b> - miesiac\n<b>%d</b> - dzien\n\nNa przyklad wedlug standardu ISO 8601 format daty wyglada nastepujaco:\n<b>%y-%m-%d</b>
PREFERENCES_DEFAULTLANG;Domyslny jezyk
PREFERENCES_DEFAULTTHEME;Domyslny temat
PREFERENCES_DIRDARKFRAMES;Katalog z czarnymi klatkami PREFERENCES_DIRDARKFRAMES;Katalog z czarnymi klatkami
PREFERENCES_DIRHOME;Katalog domowy PREFERENCES_DIRHOME;Katalog domowy
PREFERENCES_DIRLAST;Ostatnio odwiedzony katalog PREFERENCES_DIRLAST;Ostatnio odwiedzony katalog
@ -1465,6 +1463,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1493,6 +1492,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_299;NR - Chrominance curve !HISTORY_MSG_299;NR - Chrominance curve
!HISTORY_MSG_300;- !HISTORY_MSG_300;-
@ -1655,6 +1655,15 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1708,11 +1717,13 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1720,6 +1731,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1757,6 +1769,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1774,6 +1787,13 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_CROP_GTHARMMEANS;Harmonic Means !TP_CROP_GTHARMMEANS;Harmonic Means
!TP_CROP_GTTRIANGLE1;Golden Triangles 1 !TP_CROP_GTTRIANGLE1;Golden Triangles 1
!TP_CROP_GTTRIANGLE2;Golden Triangles 2 !TP_CROP_GTTRIANGLE2;Golden Triangles 2
@ -1819,11 +1839,11 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b>
!TP_EXPOSURE_TCMODE_PERCEPTUAL;Perceptual !TP_EXPOSURE_TCMODE_PERCEPTUAL;Perceptual
!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_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_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Tamanho máximo das miniaturas
PREFERENCES_CLIPPINGIND;Recortando indicação PREFERENCES_CLIPPINGIND;Recortando indicação
PREFERENCES_DATEFORMAT;Formato de data PREFERENCES_DATEFORMAT;Formato de data
PREFERENCES_DATEFORMATHINT;<i>Você pode usar as seguintes formatações:</i>\n<b>%a</b><i> : ano</i>\n<b>%m</b><i> : mês</i>\n<b>%d</b><i> : dia</i>\n<i>\nPor exemplo, o formato de data húngaro é:</i>\n<b>%a/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>Você pode usar as seguintes formatações:</i>\n<b>%a</b><i> : ano</i>\n<b>%m</b><i> : mês</i>\n<b>%d</b><i> : dia</i>\n<i>\nPor exemplo, o formato de data húngaro é:</i>\n<b>%a/%m/%d</b>
PREFERENCES_DEFAULTLANG;Idioma padrão
PREFERENCES_DEFAULTTHEME;Tema padrão
PREFERENCES_DIRHOME;Directory inicial PREFERENCES_DIRHOME;Directory inicial
PREFERENCES_DIRLAST;Último directory visitado PREFERENCES_DIRLAST;Último directory visitado
PREFERENCES_DIROTHER;Outro PREFERENCES_DIROTHER;Outro
@ -449,6 +447,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -578,6 +577,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -959,6 +959,15 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1132,7 +1141,8 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1161,7 +1171,8 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1176,6 +1187,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1241,6 +1253,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1354,11 +1367,11 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1378,8 +1391,8 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1390,6 +1403,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1401,9 +1415,11 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1422,10 +1438,14 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1615,17 +1635,17 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1639,7 +1659,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -651,8 +651,6 @@ PREFERENCES_DARKFRAMESHOTS;снимков
PREFERENCES_DARKFRAMETEMPLATES;шаблонов PREFERENCES_DARKFRAMETEMPLATES;шаблонов
PREFERENCES_DATEFORMAT;Формат даты PREFERENCES_DATEFORMAT;Формат даты
PREFERENCES_DATEFORMATHINT;Вы можете использовать следующие элементы форматирования:\n<b>%y</b><i>: год</i>\n<b>%m</b><i>: месяц</i>\n<b>%d</b><i>: день</i>\n\nНапример, венгерский формат даты такой:\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;Вы можете использовать следующие элементы форматирования:\n<b>%y</b><i>: год</i>\n<b>%m</b><i>: месяц</i>\n<b>%d</b><i>: день</i>\n\nНапример, венгерский формат даты такой:\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Язык по умолчанию
PREFERENCES_DEFAULTTHEME;Тема по умолчанию
PREFERENCES_DIRDARKFRAMES;Каталог размещения темновых кадров PREFERENCES_DIRDARKFRAMES;Каталог размещения темновых кадров
PREFERENCES_DIRHOME;Домашний каталог PREFERENCES_DIRHOME;Домашний каталог
PREFERENCES_DIRLAST;Последний каталог PREFERENCES_DIRLAST;Последний каталог
@ -1274,6 +1272,7 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!CURVEEDITOR_AXIS_OUT;O: !CURVEEDITOR_AXIS_OUT;O:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1305,6 +1304,7 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_166;Exposure - Reset !HISTORY_MSG_166;Exposure - Reset
!HISTORY_MSG_252;CbDL - Skin tar/prot !HISTORY_MSG_252;CbDL - Skin tar/prot
!HISTORY_MSG_253;CbDL - Reduce artifacts !HISTORY_MSG_253;CbDL - Reduce artifacts
@ -1514,6 +1514,15 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1584,12 +1593,14 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FILMSIMULATION;Film Simulation !PREFERENCES_FILMSIMULATION;Film Simulation
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1599,6 +1610,7 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1637,6 +1649,7 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1661,6 +1674,7 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_HUE_TOOLTIP;Hue (h) - angle between 0° and 360°. !TP_COLORAPP_HUE_TOOLTIP;Hue (h) - angle between 0° and 360°.
!TP_COLORAPP_LABEL;CIE Color Appearance Model 2002 !TP_COLORAPP_LABEL;CIE Color Appearance Model 2002
!TP_COLORAPP_LABEL_CAM02;Image Adjustments !TP_COLORAPP_LABEL_CAM02;Image Adjustments
@ -1668,9 +1682,11 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!TP_COLORAPP_LABEL_VIEWING;Viewing Conditions !TP_COLORAPP_LABEL_VIEWING;Viewing Conditions
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
!TP_COLORAPP_SURROUND_AVER;Average !TP_COLORAPP_SURROUND_AVER;Average
!TP_COLORAPP_SURROUND_DARK;Dark !TP_COLORAPP_SURROUND_DARK;Dark
@ -1687,10 +1703,14 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1799,13 +1819,13 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b>
!TP_FLATFIELD_CLIPCONTROL;Clip control !TP_FLATFIELD_CLIPCONTROL;Clip control
!TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast. !TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image
!TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance !TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance

View File

@ -637,8 +637,6 @@ PREFERENCES_DARKFRAMESHOTS;снимака
PREFERENCES_DARKFRAMETEMPLATES;шаблони PREFERENCES_DARKFRAMETEMPLATES;шаблони
PREFERENCES_DATEFORMAT;Формат датума PREFERENCES_DATEFORMAT;Формат датума
PREFERENCES_DATEFORMATHINT;<i>Можете задати следеће формате:</i>\n<b>%y</b><i> :година</i>\n<b>%m</b><i> : месец</i>\n<b>%d</b><i> : дан</i>\n<i>\nУ Србији се највише користи:</i>\n<b>%d.%m.%y</b> PREFERENCES_DATEFORMATHINT;<i>Можете задати следеће формате:</i>\n<b>%y</b><i> :година</i>\n<b>%m</b><i> : месец</i>\n<b>%d</b><i> : дан</i>\n<i>\nУ Србији се највише користи:</i>\n<b>%d.%m.%y</b>
PREFERENCES_DEFAULTLANG;Језик програма
PREFERENCES_DEFAULTTHEME;Тема програма
PREFERENCES_DIRDARKFRAMES;Директоријум тамног кадра PREFERENCES_DIRDARKFRAMES;Директоријум тамног кадра
PREFERENCES_DIRHOME;Лични директоријум PREFERENCES_DIRHOME;Лични директоријум
PREFERENCES_DIRLAST;Последњи директоријум PREFERENCES_DIRLAST;Последњи директоријум
@ -1296,6 +1294,7 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DIRBROWSER_FOLDERS;Folders !DIRBROWSER_FOLDERS;Folders
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1339,6 +1338,7 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_252;CbDL - Skin tar/prot !HISTORY_MSG_252;CbDL - Skin tar/prot
!HISTORY_MSG_253;CbDL - Reduce artifacts !HISTORY_MSG_253;CbDL - Reduce artifacts
!HISTORY_MSG_254;CbDL - Skin hue !HISTORY_MSG_254;CbDL - Skin hue
@ -1547,6 +1547,15 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1616,12 +1625,14 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FILMSIMULATION;Film Simulation !PREFERENCES_FILMSIMULATION;Film Simulation
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1631,6 +1642,7 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1669,6 +1681,7 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1689,6 +1702,13 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1798,13 +1818,13 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b>
!TP_FLATFIELD_CLIPCONTROL;Clip control !TP_FLATFIELD_CLIPCONTROL;Clip control
!TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast. !TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -637,8 +637,6 @@ PREFERENCES_DARKFRAMESHOTS;snimaka
PREFERENCES_DARKFRAMETEMPLATES;šabloni PREFERENCES_DARKFRAMETEMPLATES;šabloni
PREFERENCES_DATEFORMAT;Format datuma PREFERENCES_DATEFORMAT;Format datuma
PREFERENCES_DATEFORMATHINT;<i>Možete zadati sledeće formate:</i>\n<b>%y</b><i> :godina</i>\n<b>%m</b><i> : mesec</i>\n<b>%d</b><i> : dan</i>\n<i>\nU Srbiji se najviše koristi:</i>\n<b>%d.%m.%y</b> PREFERENCES_DATEFORMATHINT;<i>Možete zadati sledeće formate:</i>\n<b>%y</b><i> :godina</i>\n<b>%m</b><i> : mesec</i>\n<b>%d</b><i> : dan</i>\n<i>\nU Srbiji se najviše koristi:</i>\n<b>%d.%m.%y</b>
PREFERENCES_DEFAULTLANG;Jezik programa
PREFERENCES_DEFAULTTHEME;Tema programa
PREFERENCES_DIRDARKFRAMES;Direktorijum tamnog kadra PREFERENCES_DIRDARKFRAMES;Direktorijum tamnog kadra
PREFERENCES_DIRHOME;Lični direktorijum PREFERENCES_DIRHOME;Lični direktorijum
PREFERENCES_DIRLAST;Poslednji direktorijum PREFERENCES_DIRLAST;Poslednji direktorijum
@ -1296,6 +1294,7 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DIRBROWSER_FOLDERS;Folders !DIRBROWSER_FOLDERS;Folders
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1339,6 +1338,7 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!GENERAL_APPLY;Apply !GENERAL_APPLY;Apply
!GENERAL_ASIMAGE;As Image !GENERAL_ASIMAGE;As Image
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_252;CbDL - Skin tar/prot !HISTORY_MSG_252;CbDL - Skin tar/prot
!HISTORY_MSG_253;CbDL - Reduce artifacts !HISTORY_MSG_253;CbDL - Reduce artifacts
!HISTORY_MSG_254;CbDL - Skin hue !HISTORY_MSG_254;CbDL - Skin hue
@ -1547,6 +1547,15 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1616,12 +1625,14 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_BELOW;Below
!PREFERENCES_CURVEBBOXPOS_LEFT;Left !PREFERENCES_CURVEBBOXPOS_LEFT;Left
!PREFERENCES_CURVEBBOXPOS_RIGHT;Right !PREFERENCES_CURVEBBOXPOS_RIGHT;Right
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 !PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
!PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. !PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
!PREFERENCES_EXPAUT;Expert !PREFERENCES_EXPAUT;Expert
!PREFERENCES_FILMSIMULATION;Film Simulation !PREFERENCES_FILMSIMULATION;Film Simulation
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Filmstrip and the File Browser
!PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser. !PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREYSC;Scene Yb luminance (%) !PREFERENCES_GREYSC;Scene Yb luminance (%)
!PREFERENCES_GREYSC18;Yb=18 CIE L#50 !PREFERENCES_GREYSC18;Yb=18 CIE L#50
!PREFERENCES_GREYSCA;Automatic !PREFERENCES_GREYSCA;Automatic
@ -1631,6 +1642,7 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!PREFERENCES_INSPECT_LABEL;Inspect !PREFERENCES_INSPECT_LABEL;Inspect
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
@ -1669,6 +1681,7 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!PREFERENCES_SMA;Small (250x287) !PREFERENCES_SMA;Small (250x287)
!PREFERENCES_STDAUT;Standard !PREFERENCES_STDAUT;Standard
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1689,6 +1702,13 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!TP_CBDL_BEF;Before Black-and-White !TP_CBDL_BEF;Before Black-and-White
!TP_CBDL_METHOD;Process located !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_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_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1798,13 +1818,13 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b>
!TP_FLATFIELD_CLIPCONTROL;Clip control !TP_FLATFIELD_CLIPCONTROL;Clip control
!TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast. !TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -288,8 +288,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maximálna výška zmenšenín
PREFERENCES_CLIPPINGIND;Indikácia orezu PREFERENCES_CLIPPINGIND;Indikácia orezu
PREFERENCES_DATEFORMAT;Formát dátumu PREFERENCES_DATEFORMAT;Formát dátumu
PREFERENCES_DATEFORMATHINT;<i>Môžete použiť nasledujúce formátovacie reťazce:</i>\n<b>%y</b><i> : rok</i>\n<b>%m</b><i> : mesiac</i>\n<b>%d</b><i> : deň</i>\n<i>\nNapríklad, slovenský formát je:</i>\n<b>%d.%m.%y</b> PREFERENCES_DATEFORMATHINT;<i>Môžete použiť nasledujúce formátovacie reťazce:</i>\n<b>%y</b><i> : rok</i>\n<b>%m</b><i> : mesiac</i>\n<b>%d</b><i> : deň</i>\n<i>\nNapríklad, slovenský formát je:</i>\n<b>%d.%m.%y</b>
PREFERENCES_DEFAULTLANG;Predvolený jazyk
PREFERENCES_DEFAULTTHEME;Predvolený vzhľad
PREFERENCES_DIRHOME;Domovský adresár PREFERENCES_DIRHOME;Domovský adresár
PREFERENCES_DIRLAST;Posledný navštívený adresár PREFERENCES_DIRLAST;Posledný navštívený adresár
PREFERENCES_DIROTHER;Iný PREFERENCES_DIROTHER;Iný
@ -530,6 +528,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!CURVEEDITOR_MINMAXCPOINTS;Equalizer !CURVEEDITOR_MINMAXCPOINTS;Equalizer
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -650,6 +649,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!GENERAL_NONE;None !GENERAL_NONE;None
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -1021,6 +1021,15 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1182,7 +1191,8 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1210,7 +1220,8 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1225,6 +1236,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1284,6 +1296,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1393,11 +1406,11 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1417,8 +1430,8 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1429,6 +1442,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1440,9 +1454,11 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1461,10 +1477,14 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1643,17 +1663,17 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1667,7 +1687,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b>
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift
!TP_LABCURVE_AVOIDCOLORSHIFT_TOOLTIP;Fit colors into gamut of the working color space and apply Munsell correction. !TP_LABCURVE_AVOIDCOLORSHIFT_TOOLTIP;Fit colors into gamut of the working color space and apply Munsell correction.
!TP_LABCURVE_CHROMATICITY;Chromaticity !TP_LABCURVE_CHROMATICITY;Chromaticity

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Suurin esikatselukuvan korkeus
PREFERENCES_CLIPPINGIND;Leikkautuminen PREFERENCES_CLIPPINGIND;Leikkautuminen
PREFERENCES_DATEFORMAT;Päivämäärän muoto PREFERENCES_DATEFORMAT;Päivämäärän muoto
PREFERENCES_DATEFORMATHINT;<i>Voit käyttää seuraavia komentoja:</i>\n<b>%y</b><i> : vuosi</i>\n<b>%m</b><i> : kuukausi</i>\n<b>%d</b><i> : päivä</i>\n<i>\nEsimerkiksi, pp.kk.vvvv:</i>\n<b>%d.%m.%y</b> PREFERENCES_DATEFORMATHINT;<i>Voit käyttää seuraavia komentoja:</i>\n<b>%y</b><i> : vuosi</i>\n<b>%m</b><i> : kuukausi</i>\n<b>%d</b><i> : päivä</i>\n<i>\nEsimerkiksi, pp.kk.vvvv:</i>\n<b>%d.%m.%y</b>
PREFERENCES_DEFAULTLANG;Oletuskieli
PREFERENCES_DEFAULTTHEME;Oletusteema
PREFERENCES_DIRHOME;Kotihakemisto PREFERENCES_DIRHOME;Kotihakemisto
PREFERENCES_DIRLAST;Viimeksi käytetty hakemisto PREFERENCES_DIRLAST;Viimeksi käytetty hakemisto
PREFERENCES_DIROTHER;Muu PREFERENCES_DIROTHER;Muu
@ -450,6 +448,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -579,6 +578,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -960,6 +960,15 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1133,7 +1142,8 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1162,7 +1172,8 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1177,6 +1188,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1242,6 +1254,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1354,11 +1367,11 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1378,8 +1391,8 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1390,6 +1403,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1401,9 +1415,11 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1422,10 +1438,14 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1615,17 +1635,17 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1639,7 +1659,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K]
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -878,8 +878,6 @@ PREFERENCES_DATEFORMAT;Datumformat
PREFERENCES_DATEFORMATHINT;Du kan använda följande format:\n<b>%y</b>: år\n<b>%m</b>: månad\n<b>%d</b>: dag\n\nTill exempel är det svenska datumformatet:\n<b>%y-%m-%d</b> PREFERENCES_DATEFORMATHINT;Du kan använda följande format:\n<b>%y</b>: år\n<b>%m</b>: månad\n<b>%d</b>: dag\n\nTill exempel är det svenska datumformatet:\n<b>%y-%m-%d</b>
PREFERENCES_DAUB_LABEL;Använd Daubechies D6-wavelets istället för D4 PREFERENCES_DAUB_LABEL;Använd Daubechies D6-wavelets istället för D4
PREFERENCES_DAUB_TOOLTIP;Brusreduceringen och wavelet-verktyget använder en Debauchies moder-wavelet. Om du väljer D6 istället för D4 ökas antalet ortogonala Daubechies-koefficienter och troligtvis ökas också kvaliteten på de småskaliga nivåerna. Det blir ingen skillnad i minnesanvändning eller beräkningstid. PREFERENCES_DAUB_TOOLTIP;Brusreduceringen och wavelet-verktyget använder en Debauchies moder-wavelet. Om du väljer D6 istället för D4 ökas antalet ortogonala Daubechies-koefficienter och troligtvis ökas också kvaliteten på de småskaliga nivåerna. Det blir ingen skillnad i minnesanvändning eller beräkningstid.
PREFERENCES_DEFAULTLANG;Förvalt språk
PREFERENCES_DEFAULTTHEME;Förvalt tema
PREFERENCES_DIRDARKFRAMES;Katalog för svartbilder PREFERENCES_DIRDARKFRAMES;Katalog för svartbilder
PREFERENCES_DIRHOME;Hemkatalog PREFERENCES_DIRHOME;Hemkatalog
PREFERENCES_DIRLAST;Senaste besökta katalog PREFERENCES_DIRLAST;Senaste besökta katalog
@ -1888,6 +1886,7 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: <b>-</b>
!CURVEEDITOR_AXIS_LEFT_TAN;LT: !CURVEEDITOR_AXIS_LEFT_TAN;LT:
!CURVEEDITOR_AXIS_RIGHT_TAN;RT: !CURVEEDITOR_AXIS_RIGHT_TAN;RT:
!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. !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.
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -1903,6 +1902,7 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: <b>-</b>
!EXPORT_USE_FAST_PIPELINE_TIP;Use a dedicated processing pipeline for images in Fast Export mode, that trades speed for quality. Resizing of the image is done as early as possible, instead of doing it at the end like in the normal pipeline. The speedup can be significant, but be prepared to see artifacts and a general degradation of output quality. !EXPORT_USE_FAST_PIPELINE_TIP;Use a dedicated processing pipeline for images in Fast Export mode, that trades speed for quality. Resizing of the image is done as early as possible, instead of doing it at the end like in the normal pipeline. The speedup can be significant, but be prepared to see artifacts and a general degradation of output quality.
!EXPORT_USE_NORMAL_PIPELINE;Standard (bypass some steps, resize at the end) !EXPORT_USE_NORMAL_PIPELINE;Standard (bypass some steps, resize at the end)
!FILEBROWSER_RESETDEFAULTPROFILE;Reset to default !FILEBROWSER_RESETDEFAULTPROFILE;Reset to default
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTORY_MSG_257;Color Toning !HISTORY_MSG_257;Color Toning
!HISTORY_MSG_288;Flat Field - Clip control !HISTORY_MSG_288;Flat Field - Clip control
!HISTORY_MSG_289;Flat Field - Clip control - Auto !HISTORY_MSG_289;Flat Field - Clip control - Auto
@ -1942,6 +1942,15 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: <b>-</b>
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
!IPTCPANEL_COPYRIGHT;Copyright notice !IPTCPANEL_COPYRIGHT;Copyright notice
@ -1974,7 +1983,10 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: <b>-</b>
!PARTIALPASTE_RAW_IMAGENUM;Sub-image !PARTIALPASTE_RAW_IMAGENUM;Sub-image
!PARTIALPASTE_RAW_PIXELSHIFT;PixelShift !PARTIALPASTE_RAW_PIXELSHIFT;PixelShift
!PREFERENCES_CMMBPC;Black point compensation !PREFERENCES_CMMBPC;Black point compensation
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_LANG;Language
!PREFERENCES_LISS;Auto multi-zone smoothing !PREFERENCES_LISS;Auto multi-zone smoothing
!PREFERENCES_MONINTENT;Default rendering intent !PREFERENCES_MONINTENT;Default rendering intent
!PREFERENCES_MONITOR;Monitor !PREFERENCES_MONITOR;Monitor
@ -1987,8 +1999,16 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: <b>-</b>
!PREFERENCES_PRTPROFILE;Color profile !PREFERENCES_PRTPROFILE;Color profile
!PREFERENCES_SERIALIZE_TIFF_READ;Tiff Read Settings !PREFERENCES_SERIALIZE_TIFF_READ;Tiff Read Settings
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_THEME;Theme
!PROFILEPANEL_PDYNAMIC;Dynamic !PROFILEPANEL_PDYNAMIC;Dynamic
!TP_CBDL_METHOD;Process located !TP_CBDL_METHOD;Process located
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_CURVEEDITOR_CL_TOOLTIP;Chroma opacity as a function of luminance oC=f(L) !TP_COLORTONING_CURVEEDITOR_CL_TOOLTIP;Chroma opacity as a function of luminance oC=f(L)
!TP_COLORTONING_LABEL;Color Toning !TP_COLORTONING_LABEL;Color Toning
!TP_COLORTONING_METHOD_TOOLTIP;"L*a*b* blending", "RGB sliders" and "RGB curves" use interpolated color blending.\n"Color balance (Shadows/Midtones/Highlights)" and "Saturation 2 colors" use direct colors.\n\nThe Black-and-White tool can be enabled when using any color toning method, which allows for color toning. !TP_COLORTONING_METHOD_TOOLTIP;"L*a*b* blending", "RGB sliders" and "RGB curves" use interpolated color blending.\n"Color balance (Shadows/Midtones/Highlights)" and "Saturation 2 colors" use direct colors.\n\nThe Black-and-White tool can be enabled when using any color toning method, which allows for color toning.
@ -2008,8 +2028,8 @@ ZOOMPANEL_ZOOMOUT;Förminska.\nKortkommando: <b>-</b>
!TP_DISTORTION_AUTO_TIP;Automatically corrects lens distortion in raw files by matching it against the embedded JPEG image if one exists and has had its lens disortion auto-corrected by the camera. !TP_DISTORTION_AUTO_TIP;Automatically corrects lens distortion in raw files by matching it against the embedded JPEG image if one exists and has had its lens disortion auto-corrected by the camera.
!TP_FLATFIELD_CLIPCONTROL;Clip control !TP_FLATFIELD_CLIPCONTROL;Clip control
!TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast. !TP_FLATFIELD_CLIPCONTROL_TOOLTIP;Clip control avoids clipped highlights caused by applying the flat field. If there are already clipped highlights before applying the flat field, clip control can lead to color cast.
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_PROFILEINTENT;Rendering Intent !TP_ICM_PROFILEINTENT;Rendering Intent
!TP_ICM_SAVEREFERENCE;Save Reference Image !TP_ICM_SAVEREFERENCE;Save Reference Image

View File

@ -244,8 +244,6 @@ PREFERENCES_CACHETHUMBHEIGHT;Maximal Thumbnail Height
PREFERENCES_CLIPPINGIND;Kırpma gösterme PREFERENCES_CLIPPINGIND;Kırpma gösterme
PREFERENCES_DATEFORMAT;Tarih biçimi PREFERENCES_DATEFORMAT;Tarih biçimi
PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b> PREFERENCES_DATEFORMATHINT;<i>You can use the following formatting strings:</i>\n<b>%y</b><i> : year</i>\n<b>%m</b><i> : month</i>\n<b>%d</b><i> : day</i>\n<i>\nFor example, the hungarian date format is:</i>\n<b>%y/%m/%d</b>
PREFERENCES_DEFAULTLANG;Varsayılan dil
PREFERENCES_DEFAULTTHEME;Default theme
PREFERENCES_DIRHOME;Kullanıcı dizini PREFERENCES_DIRHOME;Kullanıcı dizini
PREFERENCES_DIRLAST;Son gidilen dizin PREFERENCES_DIRLAST;Son gidilen dizin
PREFERENCES_DIROTHER;Diğer PREFERENCES_DIROTHER;Diğer
@ -449,6 +447,7 @@ TP_WBALANCE_TEMPERATURE;Isı
!CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard. !CURVEEDITOR_TOOLTIPCOPY;Copy current curve to clipboard.
!CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard. !CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
!CURVEEDITOR_TYPE;Type: !CURVEEDITOR_TYPE;Type:
!DONT_SHOW_AGAIN;Don't show this message again.
!DYNPROFILEEDITOR_DELETE;Delete !DYNPROFILEEDITOR_DELETE;Delete
!DYNPROFILEEDITOR_EDIT;Edit !DYNPROFILEEDITOR_EDIT;Edit
!DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule !DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -578,6 +577,7 @@ TP_WBALANCE_TEMPERATURE;Isı
!GENERAL_OPEN;Open !GENERAL_OPEN;Open
!GENERAL_UNCHANGED;(Unchanged) !GENERAL_UNCHANGED;(Unchanged)
!GENERAL_WARNING;Warning !GENERAL_WARNING;Warning
!GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
!HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. !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_CHRO;Show/Hide chromaticity histogram.
!HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram. !HISTOGRAM_TOOLTIP_FULL;Toggle full (off) or scaled (on) histogram.
@ -959,6 +959,15 @@ TP_WBALANCE_TEMPERATURE;Isı
!HISTORY_MSG_473;PS - Use LMMSE !HISTORY_MSG_473;PS - Use LMMSE
!HISTORY_MSG_474;PS - Equalize !HISTORY_MSG_474;PS - Equalize
!HISTORY_MSG_475;PS - Equalize channel !HISTORY_MSG_475;PS - Equalize channel
!HISTORY_MSG_476;CAM02 - Temp out
!HISTORY_MSG_477;CAM02 - Green out
!HISTORY_MSG_478;CAM02 - Yb out
!HISTORY_MSG_479;CAM02 - CAT02 adaptation out
!HISTORY_MSG_480;CAM02 - Automatic CAT02 out
!HISTORY_MSG_481;CAM02 - Temp scene
!HISTORY_MSG_482;CAM02 - Green scene
!HISTORY_MSG_483;CAM02 - Yb scene
!HISTORY_MSG_484;CAM02 - Auto Yb scene
!HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> !HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider. !IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider.
!IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image. !IPTCPANEL_CITYHINT;Enter the name of the city pictured in this image.
@ -1132,7 +1141,8 @@ TP_WBALANCE_TEMPERATURE;Isı
!PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID !PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
!PREFERENCES_CUSTPROFBUILDPATH;Executable path !PREFERENCES_CUSTPROFBUILDPATH;Executable path
!PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency !PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
!PREFERENCES_D50;5000K !PREFERENCES_D50;Settings in main menu
!PREFERENCES_D50_OLD;5000K
!PREFERENCES_D55;5500K !PREFERENCES_D55;5500K
!PREFERENCES_D60;6000K !PREFERENCES_D60;6000K
!PREFERENCES_D65;6500K !PREFERENCES_D65;6500K
@ -1161,7 +1171,8 @@ TP_WBALANCE_TEMPERATURE;Isı
!PREFERENCES_GREY05;Yb=05 CIE L#30 !PREFERENCES_GREY05;Yb=05 CIE L#30
!PREFERENCES_GREY10;Yb=10 CIE L#40 !PREFERENCES_GREY10;Yb=10 CIE L#40
!PREFERENCES_GREY15;Yb=15 CIE L#45 !PREFERENCES_GREY15;Yb=15 CIE L#45
!PREFERENCES_GREY18;Yb=18 CIE L#50 !PREFERENCES_GREY18;Settings in main menu
!PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
!PREFERENCES_GREY23;Yb=23 CIE L#55 !PREFERENCES_GREY23;Yb=23 CIE L#55
!PREFERENCES_GREY30;Yb=30 CIE L#60 !PREFERENCES_GREY30;Yb=30 CIE L#60
!PREFERENCES_GREY40;Yb=40 CIE L#70 !PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1176,6 +1187,7 @@ TP_WBALANCE_TEMPERATURE;Isı
!PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images !PREFERENCES_INSPECT_MAXBUFFERS_LABEL;Maximum number of cached images
!PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2. !PREFERENCES_INSPECT_MAXBUFFERS_TOOLTIP;Set the maximum number of images stored in cache when hovering over them in the File Browser; systems with little RAM (2GB) should keep this value set to 1 or 2.
!PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited !PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
!PREFERENCES_LANG;Language
!PREFERENCES_LANGAUTODETECT;Use system language !PREFERENCES_LANGAUTODETECT;Use system language
!PREFERENCES_LEVAUTDN;Denoising level !PREFERENCES_LEVAUTDN;Denoising level
!PREFERENCES_LEVDN;Cell size !PREFERENCES_LEVDN;Cell size
@ -1241,6 +1253,7 @@ TP_WBALANCE_TEMPERATURE;Isı
!PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules !PREFERENCES_TAB_DYNAMICPROFILE;Dynamic Profile Rules
!PREFERENCES_TAB_PERFORMANCE;Performance & Quality !PREFERENCES_TAB_PERFORMANCE;Performance & Quality
!PREFERENCES_TAB_SOUND;Sounds !PREFERENCES_TAB_SOUND;Sounds
!PREFERENCES_THEME;Theme
!PREFERENCES_TIMAX;High !PREFERENCES_TIMAX;High
!PREFERENCES_TINB;Number of tiles !PREFERENCES_TINB;Number of tiles
!PREFERENCES_TISTD;Standard !PREFERENCES_TISTD;Standard
@ -1353,11 +1366,11 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_CBDL_METHOD;Process located !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_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_CHROMATABERR_LABEL;Chromatic Aberration !TP_CHROMATABERR_LABEL;Chromatic Aberration
!TP_COLORAPP_ADAPTSCENE;Scene luminosity !TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
!TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. !TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
!TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) !TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
!TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). !TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
!TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. !TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
!TP_COLORAPP_ALGO;Algorithm !TP_COLORAPP_ALGO;Algorithm
!TP_COLORAPP_ALGO_ALL;All !TP_COLORAPP_ALGO_ALL;All
!TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) !TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1377,8 +1390,8 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation !TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
!TP_COLORAPP_CONTRAST;Contrast (J) !TP_COLORAPP_CONTRAST;Contrast (J)
!TP_COLORAPP_CONTRAST_Q;Contrast (Q) !TP_COLORAPP_CONTRAST_Q;Contrast (Q)
!TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. !TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
!TP_COLORAPP_CURVEEDITOR1;Tone curve 1 !TP_COLORAPP_CURVEEDITOR1;Tone curve 1
!TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. !TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
!TP_COLORAPP_CURVEEDITOR2;Tone curve 2 !TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1389,6 +1402,7 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. !TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
!TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). !TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
!TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. !TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
!TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
!TP_COLORAPP_GAMUT;Gamut control (L*a*b*) !TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
!TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. !TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
!TP_COLORAPP_HUE;Hue (h) !TP_COLORAPP_HUE;Hue (h)
@ -1400,9 +1414,11 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_COLORAPP_LIGHT;Lightness (J) !TP_COLORAPP_LIGHT;Lightness (J)
!TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. !TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
!TP_COLORAPP_MODEL;WP Model !TP_COLORAPP_MODEL;WP Model
!TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in <i>Preferences > Color Management</i>.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in <i>Preferences - Color Management</i>. !TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
!TP_COLORAPP_NEUTRAL;Reset
!TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
!TP_COLORAPP_RSTPRO;Red & skin-tones protection !TP_COLORAPP_RSTPRO;Red & skin-tones protection
!TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. !TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
!TP_COLORAPP_SHARPCIE;--unused-- !TP_COLORAPP_SHARPCIE;--unused--
!TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- !TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
!TP_COLORAPP_SURROUND;Surround !TP_COLORAPP_SURROUND;Surround
@ -1421,10 +1437,14 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode !TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
!TP_COLORAPP_TCMODE_LIGHTNESS;Lightness !TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
!TP_COLORAPP_TCMODE_SATUR;Saturation !TP_COLORAPP_TCMODE_SATUR;Saturation
!TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
!TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 !TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
!TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. !TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
!TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] !TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
!TP_COLORAPP_WBRT;WB [RT] + [output] !TP_COLORAPP_WBRT;WB [RT] + [output]
!TP_COLORAPP_YB;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE;Yb% (mean luminance)
!TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
!TP_COLORTONING_AB;o C/L !TP_COLORTONING_AB;o C/L
!TP_COLORTONING_AUTOSAT;Automatic !TP_COLORTONING_AUTOSAT;Automatic
!TP_COLORTONING_BALANCE;Balance !TP_COLORTONING_BALANCE;Balance
@ -1614,17 +1634,17 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_HSVEQUALIZER_SAT;S !TP_HSVEQUALIZER_SAT;S
!TP_HSVEQUALIZER_VAL;V !TP_HSVEQUALIZER_VAL;V
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure !TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
!TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. !TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
!TP_ICM_APPLYHUESATMAP;Base table !TP_ICM_APPLYHUESATMAP;Base table
!TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
!TP_ICM_APPLYLOOKTABLE;Look table !TP_ICM_APPLYLOOKTABLE;Look table
!TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. !TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
!TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix !TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
!TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. !TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
!TP_ICM_BPC;Black Point Compensation !TP_ICM_BPC;Black Point Compensation
!TP_ICM_DCPILLUMINANT;Illuminant !TP_ICM_DCPILLUMINANT;Illuminant
!TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated !TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
!TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. !TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
!TP_ICM_INPUTCAMERAICC;Auto-matched camera profile !TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
!TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. !TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
!TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG. !TP_ICM_INPUTCAMERA_TOOLTIP;Use a simple color matrix from dcraw, an enhanced RawTherapee version (whichever is available based on camera model) or one embedded in the DNG.
@ -1638,7 +1658,7 @@ TP_WBALANCE_TEMPERATURE;Isı
!TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. !TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
!TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. !TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
!TP_ICM_TONECURVE;Tone curve !TP_ICM_TONECURVE;Tone curve
!TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. !TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction !TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
!TP_IMPULSEDENOISE_THRESH;Threshold !TP_IMPULSEDENOISE_THRESH;Threshold
!TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift !TP_LABCURVE_AVOIDCOLORSHIFT;Avoid color shift

View File

@ -36,6 +36,7 @@ CURVEEDITOR_TOOLTIPPASTE;Paste curve from clipboard.
CURVEEDITOR_TOOLTIPSAVE;Save current curve. CURVEEDITOR_TOOLTIPSAVE;Save current curve.
CURVEEDITOR_TYPE;Type: CURVEEDITOR_TYPE;Type:
DIRBROWSER_FOLDERS;Folders DIRBROWSER_FOLDERS;Folders
DONT_SHOW_AGAIN;Don't show this message again.
DYNPROFILEEDITOR_DELETE;Delete DYNPROFILEEDITOR_DELETE;Delete
DYNPROFILEEDITOR_EDIT;Edit DYNPROFILEEDITOR_EDIT;Edit
DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule DYNPROFILEEDITOR_EDIT_RULE;Edit Dynamic Profile Rule
@ -234,6 +235,7 @@ GENERAL_PORTRAIT;Portrait
GENERAL_SAVE;Save GENERAL_SAVE;Save
GENERAL_UNCHANGED;(Unchanged) GENERAL_UNCHANGED;(Unchanged)
GENERAL_WARNING;Warning GENERAL_WARNING;Warning
GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP.
HISTOGRAM_TOOLTIP_B;Show/Hide blue histogram. HISTOGRAM_TOOLTIP_B;Show/Hide blue histogram.
HISTOGRAM_TOOLTIP_BAR;Show/Hide RGB indicator bar.\nRight-click on image preview to freeze/unfreeze. 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_CHRO;Show/Hide chromaticity histogram.
@ -279,9 +281,9 @@ HISTORY_MSG_30;RLD - Radius
HISTORY_MSG_31;RLD - Amount HISTORY_MSG_31;RLD - Amount
HISTORY_MSG_32;RLD - Damping HISTORY_MSG_32;RLD - Damping
HISTORY_MSG_33;RLD - Iterations HISTORY_MSG_33;RLD - Iterations
HISTORY_MSG_34;LCP distortion correction HISTORY_MSG_34;Lens Correction - Distortion
HISTORY_MSG_35;LCP vignetting correction HISTORY_MSG_35;Lens Correction - Vignetting
HISTORY_MSG_36;LCP CA correction HISTORY_MSG_36;Lens Correction - CA
HISTORY_MSG_37;Exposure - Auto levels HISTORY_MSG_37;Exposure - Auto levels
HISTORY_MSG_38;White Balance - Method HISTORY_MSG_38;White Balance - Method
HISTORY_MSG_39;WB - Temperature HISTORY_MSG_39;WB - Temperature
@ -330,7 +332,7 @@ HISTORY_MSG_81;Resize
HISTORY_MSG_82;Profile changed HISTORY_MSG_82;Profile changed
HISTORY_MSG_83;S/H - Sharp mask HISTORY_MSG_83;S/H - Sharp mask
HISTORY_MSG_84;Perspective correction HISTORY_MSG_84;Perspective correction
HISTORY_MSG_85;LCP HISTORY_MSG_85;Lens Correction - LCP file
HISTORY_MSG_86;RGB Curves - Luminosity mode HISTORY_MSG_86;RGB Curves - Luminosity mode
HISTORY_MSG_87;Impulse Noise Reduction HISTORY_MSG_87;Impulse Noise Reduction
HISTORY_MSG_88;Impulse NR threshold HISTORY_MSG_88;Impulse NR threshold
@ -707,6 +709,15 @@ HISTORY_MSG_475;PS - Equalize channel
HISTORY_MSG_476;CAM02 - Temp out HISTORY_MSG_476;CAM02 - Temp out
HISTORY_MSG_477;CAM02 - Green out HISTORY_MSG_477;CAM02 - Green out
HISTORY_MSG_478;CAM02 - Yb out HISTORY_MSG_478;CAM02 - Yb out
HISTORY_MSG_479;CAM02 - CAT02 adaptation out
HISTORY_MSG_480;CAM02 - Automatic CAT02 out
HISTORY_MSG_481;CAM02 - Temp scene
HISTORY_MSG_482;CAM02 - Green scene
HISTORY_MSG_483;CAM02 - Yb scene
HISTORY_MSG_484;CAM02 - Auto Yb scene
HISTORY_MSG_485;Lens Correction
HISTORY_MSG_486;Lens Correction - Camera
HISTORY_MSG_487;Lens Correction - Lens
HISTORY_NEWSNAPSHOT;Add HISTORY_NEWSNAPSHOT;Add
HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b> HISTORY_NEWSNAPSHOT_TOOLTIP;Shortcut: <b>Alt-s</b>
HISTORY_SNAPSHOT;Snapshot HISTORY_SNAPSHOT;Snapshot
@ -811,6 +822,7 @@ MAIN_TAB_WAVELET_TOOLTIP;Shortcut: <b>Alt-w</b>
MAIN_TOOLTIP_BACKCOLOR0;Background color of the preview: <b>Theme-based</b>\nShortcut: <b>9</b> MAIN_TOOLTIP_BACKCOLOR0;Background color of the preview: <b>Theme-based</b>\nShortcut: <b>9</b>
MAIN_TOOLTIP_BACKCOLOR1;Background color of the preview: <b>Black</b>\nShortcut: <b>9</b> MAIN_TOOLTIP_BACKCOLOR1;Background color of the preview: <b>Black</b>\nShortcut: <b>9</b>
MAIN_TOOLTIP_BACKCOLOR2;Background color of the preview: <b>White</b>\nShortcut: <b>9</b> MAIN_TOOLTIP_BACKCOLOR2;Background color of the preview: <b>White</b>\nShortcut: <b>9</b>
MAIN_TOOLTIP_BACKCOLOR3;Background color of the preview: <b>Middle grey</b>\nShortcut: <b>9</b>
MAIN_TOOLTIP_BEFOREAFTERLOCK;<b>Lock</b> / <b>Unlock</b> the <b>Before</b> view\n\n<b>Lock</b>: keep the <b>Before</b> view unchanged.\nUseful to evaluate the cumulative effect of multiple tools.\nAdditionally, comparisons can be made to any state in the History.\n\n<b>Unlock</b>: the <b>Before</b> view will follow the <b>After</b> view one step behind, showing the image before the effect of the currently used tool. MAIN_TOOLTIP_BEFOREAFTERLOCK;<b>Lock</b> / <b>Unlock</b> the <b>Before</b> view\n\n<b>Lock</b>: keep the <b>Before</b> view unchanged.\nUseful to evaluate the cumulative effect of multiple tools.\nAdditionally, comparisons can be made to any state in the History.\n\n<b>Unlock</b>: the <b>Before</b> view will follow the <b>After</b> view one step behind, showing the image before the effect of the currently used tool.
MAIN_TOOLTIP_HIDEHP;Show/Hide the left panel (including the history).\nShortcut: <b>l</b> MAIN_TOOLTIP_HIDEHP;Show/Hide the left panel (including the history).\nShortcut: <b>l</b>
MAIN_TOOLTIP_INDCLIPPEDH;Clipped highlight indication.\nShortcut: <b>&lt;</b> MAIN_TOOLTIP_INDCLIPPEDH;Clipped highlight indication.\nShortcut: <b>&lt;</b>
@ -878,7 +890,7 @@ PARTIALPASTE_IMPULSEDENOISE;Impulse noise reduction
PARTIALPASTE_IPTCINFO;IPTC PARTIALPASTE_IPTCINFO;IPTC
PARTIALPASTE_LABCURVE;L*a*b* adjustments PARTIALPASTE_LABCURVE;L*a*b* adjustments
PARTIALPASTE_LENSGROUP;Lens Related Settings PARTIALPASTE_LENSGROUP;Lens Related Settings
PARTIALPASTE_LENSPROFILE;Lens correction profile PARTIALPASTE_LENSPROFILE;Profiled lens correction
PARTIALPASTE_METAGROUP;Metadata PARTIALPASTE_METAGROUP;Metadata
PARTIALPASTE_PCVIGNETTE;Vignette filter PARTIALPASTE_PCVIGNETTE;Vignette filter
PARTIALPASTE_PERSPECTIVE;Perspective PARTIALPASTE_PERSPECTIVE;Perspective
@ -955,8 +967,8 @@ PREFERENCES_CUSTPROFBUILDKEYFORMAT_NAME;Name
PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID PREFERENCES_CUSTPROFBUILDKEYFORMAT_TID;TagID
PREFERENCES_CUSTPROFBUILDPATH;Executable path PREFERENCES_CUSTPROFBUILDPATH;Executable path
PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency PREFERENCES_CUTOVERLAYBRUSH;Crop mask color/transparency
PREFERENCES_D50_OLD;5000K
PREFERENCES_D50;Settings in main menu PREFERENCES_D50;Settings in main menu
PREFERENCES_D50_OLD;5000K
PREFERENCES_D55;5500K PREFERENCES_D55;5500K
PREFERENCES_D60;6000K PREFERENCES_D60;6000K
PREFERENCES_D65;6500K PREFERENCES_D65;6500K
@ -968,8 +980,6 @@ PREFERENCES_DATEFORMAT;Date format
PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:\n<b>%y</b> - year\n<b>%m</b> - month\n<b>%d</b> - day\n\nFor example, the ISO 8601 standard dictates the date format as follows:\n<b>%y-%m-%d</b> PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:\n<b>%y</b> - year\n<b>%m</b> - month\n<b>%d</b> - day\n\nFor example, the ISO 8601 standard dictates the date format as follows:\n<b>%y-%m-%d</b>
PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4 PREFERENCES_DAUB_LABEL;Use Daubechies D6 wavelets instead of D4
PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two. PREFERENCES_DAUB_TOOLTIP;The Noise Reduction and Wavelet Levels tools use a Debauchies mother wavelet. If you choose D6 instead of D4 you increase the number of orthogonal Daubechies coefficients and probably increase quality of small-scale levels. There is no memory or processing time difference between the two.
PREFERENCES_DEFAULTLANG;Default Language
PREFERENCES_DEFAULTTHEME;Default Theme
PREFERENCES_DIRDARKFRAMES;Dark-frames directory PREFERENCES_DIRDARKFRAMES;Dark-frames directory
PREFERENCES_DIRHOME;Home directory PREFERENCES_DIRHOME;Home directory
PREFERENCES_DIRLAST;Last visited directory PREFERENCES_DIRLAST;Last visited directory
@ -1001,8 +1011,8 @@ PREFERENCES_GREY;Output device's Yb luminance (%)
PREFERENCES_GREY05;Yb=05 CIE L#30 PREFERENCES_GREY05;Yb=05 CIE L#30
PREFERENCES_GREY10;Yb=10 CIE L#40 PREFERENCES_GREY10;Yb=10 CIE L#40
PREFERENCES_GREY15;Yb=15 CIE L#45 PREFERENCES_GREY15;Yb=15 CIE L#45
PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
PREFERENCES_GREY18;Settings in main menu PREFERENCES_GREY18;Settings in main menu
PREFERENCES_GREY18_OLD;Yb=18 CIE L#50
PREFERENCES_GREY23;Yb=23 CIE L#55 PREFERENCES_GREY23;Yb=23 CIE L#55
PREFERENCES_GREY30;Yb=30 CIE L#60 PREFERENCES_GREY30;Yb=30 CIE L#60
PREFERENCES_GREY40;Yb=40 CIE L#70 PREFERENCES_GREY40;Yb=40 CIE L#70
@ -1024,6 +1034,7 @@ PREFERENCES_INTENT_PERCEPTUAL;Perceptual
PREFERENCES_INTENT_RELATIVE;Relative Colorimetric PREFERENCES_INTENT_RELATIVE;Relative Colorimetric
PREFERENCES_INTENT_SATURATION;Saturation PREFERENCES_INTENT_SATURATION;Saturation
PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited PREFERENCES_INTERNALTHUMBIFUNTOUCHED;Show embedded JPEG thumbnail if raw is unedited
PREFERENCES_LANG;Language
PREFERENCES_LANGAUTODETECT;Use system language PREFERENCES_LANGAUTODETECT;Use system language
PREFERENCES_LEVAUTDN;Denoising level PREFERENCES_LEVAUTDN;Denoising level
PREFERENCES_LEVDN;Cell size PREFERENCES_LEVDN;Cell size
@ -1115,12 +1126,15 @@ PREFERENCES_TAB_GENERAL;General
PREFERENCES_TAB_IMPROC;Image Processing PREFERENCES_TAB_IMPROC;Image Processing
PREFERENCES_TAB_PERFORMANCE;Performance & Quality PREFERENCES_TAB_PERFORMANCE;Performance & Quality
PREFERENCES_TAB_SOUND;Sounds PREFERENCES_TAB_SOUND;Sounds
PREFERENCES_THEME;Theme
PREFERENCES_TIMAX;High PREFERENCES_TIMAX;High
PREFERENCES_TINB;Number of tiles PREFERENCES_TINB;Number of tiles
PREFERENCES_TISTD;Standard PREFERENCES_TISTD;Standard
PREFERENCES_TP_LABEL;Tool panel: PREFERENCES_TP_LABEL;Tool panel:
PREFERENCES_TP_USEICONORTEXT;Use tab icons instead of text PREFERENCES_TP_USEICONORTEXT;Use tab icons instead of text
PREFERENCES_TP_VSCROLLBAR;Hide vertical scrollbar PREFERENCES_TP_VSCROLLBAR;Hide vertical scrollbar
PREFERENCES_AUTOSAVE_TP_OPEN;Automatically save tools collapsed/expanded\nstate before exiting
PREFERENCES_SAVE_TP_OPEN_NOW;Save tools collapsed/expanded state now
PREFERENCES_TUNNELMETADATA;Copy Exif/IPTC/XMP unchanged to output file PREFERENCES_TUNNELMETADATA;Copy Exif/IPTC/XMP unchanged to output file
PREFERENCES_USEBUNDLEDPROFILES;Use bundled profiles PREFERENCES_USEBUNDLEDPROFILES;Use bundled profiles
PREFERENCES_VIEW;Output device's white balance (monitor, TV, projector, viewing, etc.) PREFERENCES_VIEW;Output device's white balance (monitor, TV, projector, viewing, etc.)
@ -1280,11 +1294,11 @@ TP_COARSETRAF_TOOLTIP_HFLIP;Flip horizontally.
TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left.\n\nShortcuts:\n<b>[</b> - Multiple Editor Tabs Mode,\n<b>Alt-[</b> - Single Editor Tab Mode. TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left.\n\nShortcuts:\n<b>[</b> - Multiple Editor Tabs Mode,\n<b>Alt-[</b> - Single Editor Tab Mode.
TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right.\n\nShortcuts:\n<b>]</b> - Multiple Editor Tabs Mode,\n<b>Alt-]</b> - Single Editor Tab Mode. TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right.\n\nShortcuts:\n<b>]</b> - Multiple Editor Tabs Mode,\n<b>Alt-]</b> - Single Editor Tab Mode.
TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically. TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically.
TP_COLORAPP_ADAPTSCENE;Scene luminosity TP_COLORAPP_ADAPTSCENE;Scene absolute luminance
TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environement (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider. TP_COLORAPP_ADAPTSCENE_TOOLTIP;Absolute luminance of the scene environment (cd/m²).\n1) Calculated from the Exif data:\nShutter speed - ISO speed - F number - camera exposure correction.\n2) Calculated from the raw white point and RT's Exposure Compensation slider.
TP_COLORAPP_ADAPTVIEWING;Viewing luminosity (cd/m²) TP_COLORAPP_ADAPTVIEWING;Viewing absolute luminance (cd/m²)
TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environnement\n(usually 16cd/m²). TP_COLORAPP_ADAPTVIEWING_TOOLTIP;Absolute luminance of the viewing environment\n(usually 16cd/m²).
TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from Exif data.\nTo set the value manually, uncheck the checkbox first. TP_COLORAPP_ADAP_AUTO_TOOLTIP;If the checkbox is checked (recommended) RawTherapee calculates an optimum value from the Exif data.\nTo set the value manually, uncheck the checkbox first.
TP_COLORAPP_ALGO;Algorithm TP_COLORAPP_ALGO;Algorithm
TP_COLORAPP_ALGO_ALL;All TP_COLORAPP_ALGO_ALL;All
TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC) TP_COLORAPP_ALGO_JC;Lightness + Chroma (JC)
@ -1304,8 +1318,8 @@ TP_COLORAPP_CHROMA_TOOLTIP;Chroma in CIECAM02 differs from L*a*b* and RGB chroma
TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation TP_COLORAPP_CIECAT_DEGREE;CAT02 adaptation
TP_COLORAPP_CONTRAST;Contrast (J) TP_COLORAPP_CONTRAST;Contrast (J)
TP_COLORAPP_CONTRAST_Q;Contrast (Q) TP_COLORAPP_CONTRAST_Q;Contrast (Q)
TP_COLORAPP_CONTRAST_Q_TOOLTIP;Contrast in CIECAM02 for the Q slider; it differs from L*a*b* and RGB contrast. TP_COLORAPP_CONTRAST_Q_TOOLTIP;Differs from L*a*b* and RGB contrast.
TP_COLORAPP_CONTRAST_TOOLTIP;Contrast in CIECAM02 for the J slider; it differs from L*a*b* and RGB contrast. TP_COLORAPP_CONTRAST_TOOLTIP;Differs from L*a*b* and RGB contrast.
TP_COLORAPP_CURVEEDITOR1;Tone curve 1 TP_COLORAPP_CURVEEDITOR1;Tone curve 1
TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel. TP_COLORAPP_CURVEEDITOR1_TOOLTIP;Shows the histogram of L* (L*a*b*) before CIECAM02.\nIf the "Show CIECAM02 output histograms in curves" checkbox is enabled, shows the histogram of J or Q after CIECAM02.\n\nJ and Q are not shown in the main histogram panel.\n\nFor final output refer to the main histogram panel.
TP_COLORAPP_CURVEEDITOR2;Tone curve 2 TP_COLORAPP_CURVEEDITOR2;Tone curve 2
@ -1316,6 +1330,7 @@ TP_COLORAPP_DATACIE;CIECAM02 output histograms in curves
TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments. TP_COLORAPP_DATACIE_TOOLTIP;When enabled, histograms in CIECAM02 curves show approximate values/ranges for J or Q, and C, s or M after the CIECAM02 adjustments.\nThis selection does not impact the main histogram panel.\n\nWhen disabled, histograms in CIECAM02 curves show L*a*b* values before CIECAM02 adjustments.
TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended). TP_COLORAPP_DEGREE_AUTO_TOOLTIP;If the check-box is checked (recommended), RawTherapee calculates an optimum value, which is then used by CAT02, and also for the entire CIECAM02.\nTo set the value manually, uncheck the check-box first (values above 65 are recommended).
TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002. TP_COLORAPP_DEGREE_TOOLTIP;Amount of CIE Chromatic Adaptation Transform 2002.
TP_COLORAPP_FREE;Free temp+green + CAT02 + [output]
TP_COLORAPP_GAMUT;Gamut control (L*a*b*) TP_COLORAPP_GAMUT;Gamut control (L*a*b*)
TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode. TP_COLORAPP_GAMUT_TOOLTIP;Allow gamut control in L*a*b* mode.
TP_COLORAPP_HUE;Hue (h) TP_COLORAPP_HUE;Hue (h)
@ -1327,9 +1342,11 @@ TP_COLORAPP_LABEL_VIEWING;Viewing Conditions
TP_COLORAPP_LIGHT;Lightness (J) TP_COLORAPP_LIGHT;Lightness (J)
TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness. TP_COLORAPP_LIGHT_TOOLTIP;Lightness in CIECAM02 differs from L*a*b* and RGB lightness.
TP_COLORAPP_MODEL;WP Model TP_COLORAPP_MODEL;WP Model
TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions. TP_COLORAPP_MODEL_TOOLTIP;White-Point Model.\n\n<b>WB [RT] + [output]</b>: RT's white balance is used for the scene, CIECAM02 is set to D50, and the output device's white balance is set in Viewing Conditions.\n\n<b>WB [RT+CAT02] + [output]</b>: RT's white balance settings are used by CAT02 and the output device's white balance is set in Viewing Conditions.\n\n<b>Free temp+green + CAT02 + [output]:</b> temp and green are selected bu user, output device's white balance is set in Viewing Conditions.
TP_COLORAPP_NEUTRAL;Reset
TP_COLORAPP_NEUTRAL_TIP;Reset all sliders checkbox and curves to their default values
TP_COLORAPP_RSTPRO;Red & skin-tones protection TP_COLORAPP_RSTPRO;Red & skin-tones protection
TP_COLORAPP_RSTPRO_TOOLTIP;Red and skin-tones protection affects both sliders and curves. TP_COLORAPP_RSTPRO_TOOLTIP;Red &amp; skin-tones protection affects both sliders and curves.
TP_COLORAPP_SHARPCIE;--unused-- TP_COLORAPP_SHARPCIE;--unused--
TP_COLORAPP_SHARPCIE_TOOLTIP;--unused-- TP_COLORAPP_SHARPCIE_TOOLTIP;--unused--
TP_COLORAPP_SURROUND;Surround TP_COLORAPP_SURROUND;Surround
@ -1348,11 +1365,14 @@ TP_COLORAPP_TCMODE_LABEL2;Curve mode 2
TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode TP_COLORAPP_TCMODE_LABEL3;Curve chroma mode
TP_COLORAPP_TCMODE_LIGHTNESS;Lightness TP_COLORAPP_TCMODE_LIGHTNESS;Lightness
TP_COLORAPP_TCMODE_SATUR;Saturation TP_COLORAPP_TCMODE_SATUR;Saturation
TP_COLORAPP_TEMP_TOOLTIP;To select an illuminant always Tint=1.\nA temp=2856\nD50 temp=5003\nD55 temp=5503\nD65 temp=6504\nD75 temp=7504
TP_COLORAPP_TONECIE;Tone mapping using CIECAM02 TP_COLORAPP_TONECIE;Tone mapping using CIECAM02
TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect. TP_COLORAPP_TONECIE_TOOLTIP;If this option is disabled, tone mapping is done in L*a*b* space.\nIf this option is enabled, tone mapping is done using CIECAM02.\nThe Tone Mapping tool must be enabled for this setting to take effect.
TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output] TP_COLORAPP_WBCAM;WB [RT+CAT02] + [output]
TP_COLORAPP_WBRT;WB [RT] + [output] TP_COLORAPP_WBRT;WB [RT] + [output]
TP_COLORAPP_YB;Yb (mean luminance) TP_COLORAPP_YB;Yb% (mean luminance)
TP_COLORAPP_YBSCENE;Yb% (mean luminance)
TP_COLORAPP_YBSCENE_TOOLTIP;if auto enable, Yb is calculated from the mean value of actual image luminance
TP_COLORTONING_AB;o C/L TP_COLORTONING_AB;o C/L
TP_COLORTONING_AUTOSAT;Automatic TP_COLORTONING_AUTOSAT;Automatic
TP_COLORTONING_BALANCE;Balance TP_COLORTONING_BALANCE;Balance
@ -1569,17 +1589,17 @@ TP_HSVEQUALIZER_LABEL;HSV Equalizer
TP_HSVEQUALIZER_SAT;S TP_HSVEQUALIZER_SAT;S
TP_HSVEQUALIZER_VAL;V TP_HSVEQUALIZER_VAL;V
TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure TP_ICM_APPLYBASELINEEXPOSUREOFFSET;Baseline exposure
TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only enabled if the selected DCP has any. TP_ICM_APPLYBASELINEEXPOSUREOFFSET_TOOLTIP;Employ the embedded DCP baseline exposure offset. The setting is only available if the selected DCP has one.
TP_ICM_APPLYHUESATMAP;Base table TP_ICM_APPLYHUESATMAP;Base table
TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only enabled if the selected DCP has one. TP_ICM_APPLYHUESATMAP_TOOLTIP;Employ the embedded DCP base table (HueSatMap). The setting is only available if the selected DCP has one.
TP_ICM_APPLYLOOKTABLE;Look table TP_ICM_APPLYLOOKTABLE;Look table
TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only enabled if the selected DCP has one. TP_ICM_APPLYLOOKTABLE_TOOLTIP;Employ the embedded DCP look table. The setting is only available if the selected DCP has one.
TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix TP_ICM_BLENDCMSMATRIX;Blend ICC highlights with matrix
TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles. TP_ICM_BLENDCMSMATRIX_TOOLTIP;Enable to recover clipped highlights when using LUT-based ICC profiles.
TP_ICM_BPC;Black Point Compensation TP_ICM_BPC;Black Point Compensation
TP_ICM_DCPILLUMINANT;Illuminant TP_ICM_DCPILLUMINANT;Illuminant
TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated TP_ICM_DCPILLUMINANT_INTERPOLATED;Interpolated
TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only enabled if a Dual-Illuminant DCP with interpolation support is selected. TP_ICM_DCPILLUMINANT_TOOLTIP;Select which embedded DCP illuminant to employ. Default is "interpolated" which is a mix between the two based on white balance. The setting is only available if a dual-illuminant DCP with interpolation support is selected.
TP_ICM_INPUTCAMERA;Camera standard TP_ICM_INPUTCAMERA;Camera standard
TP_ICM_INPUTCAMERAICC;Auto-matched camera profile TP_ICM_INPUTCAMERAICC;Auto-matched camera profile
TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera. TP_ICM_INPUTCAMERAICC_TOOLTIP;Use RawTherapee's camera-specific DCP or ICC input color profiles. These profiles are more precise than simpler matrix ones. They are not available for all cameras. These profiles are stored in the /iccprofiles/input and /dcpprofiles folders and are automatically retrieved based on a file name matching to the exact model name of the camera.
@ -1601,7 +1621,7 @@ TP_ICM_SAVEREFERENCE_APPLYWB;Apply white balance
TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles. TP_ICM_SAVEREFERENCE_APPLYWB_TOOLTIP;Generally, apply the white balance when saving images to create ICC profiles, and do not apply the white balance to create DCP profiles.
TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile. TP_ICM_SAVEREFERENCE_TOOLTIP;Save the linear TIFF image before the input profile is applied. The result can be used for calibration purposes and generation of a camera profile.
TP_ICM_TONECURVE;Tone curve TP_ICM_TONECURVE;Tone curve
TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only enabled if the selected DCP has a tone curve. TP_ICM_TONECURVE_TOOLTIP;Employ the embedded DCP tone curve. The setting is only available if the selected DCP has a tone curve.
TP_ICM_WORKINGPROFILE;Working Profile TP_ICM_WORKINGPROFILE;Working Profile
TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
TP_IMPULSEDENOISE_THRESH;Threshold TP_IMPULSEDENOISE_THRESH;Threshold
@ -1645,7 +1665,7 @@ TP_LABCURVE_RSTPRO_TOOLTIP;Works on the Chromaticity slider and the CC curve.
TP_LENSGEOM_AUTOCROP;Auto-Crop TP_LENSGEOM_AUTOCROP;Auto-Crop
TP_LENSGEOM_FILL;Auto-fill TP_LENSGEOM_FILL;Auto-fill
TP_LENSGEOM_LABEL;Lens / Geometry TP_LENSGEOM_LABEL;Lens / Geometry
TP_LENSPROFILE_LABEL;Lens Correction Profile TP_LENSPROFILE_LABEL;Profiled Lens Correction
TP_LENSPROFILE_USECA;Chromatic aberration correction TP_LENSPROFILE_USECA;Chromatic aberration correction
TP_LENSPROFILE_USEDIST;Distortion correction TP_LENSPROFILE_USEDIST;Distortion correction
TP_LENSPROFILE_USEVIGN;Vignetting correction TP_LENSPROFILE_USEVIGN;Vignetting correction
@ -2143,5 +2163,7 @@ ZOOMPANEL_ZOOMFITCROPSCREEN;Fit crop to screen\nShortcut: <b>Alt</b>-<b>f</b>
ZOOMPANEL_ZOOMFITSCREEN;Fit whole image to screen\nShortcut: <b>f</b> ZOOMPANEL_ZOOMFITSCREEN;Fit whole image to screen\nShortcut: <b>f</b>
ZOOMPANEL_ZOOMIN;Zoom In\nShortcut: <b>+</b> ZOOMPANEL_ZOOMIN;Zoom In\nShortcut: <b>+</b>
ZOOMPANEL_ZOOMOUT;Zoom Out\nShortcut: <b>-</b> ZOOMPANEL_ZOOMOUT;Zoom Out\nShortcut: <b>-</b>
GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP. LENSPROFILE_CORRECTION_AUTOMATCH;Auto-matched correction parameters
DONT_SHOW_AGAIN;Don't show this message again. LENSPROFILE_CORRECTION_MANUAL;Manual correction parameters
LENSPROFILE_CORRECTION_LCPFILE;LCP File
LENSPROFILE_LENS_WARNING;Warning: the crop factor used for lens profiling is larger than the crop factor of the camera, the results might be wrong.

View File

@ -187,24 +187,37 @@ button {
min-width: 5px; min-width: 5px;
background-image: linear-gradient(#343434, #2E2E2E, #292929); background-image: linear-gradient(#343434, #2E2E2E, #292929);
} }
/* Curve mode buttons and drop-downs */
button:checked.Left {
background-image: linear-gradient(to bottom, rgba(100,100,100,.3), rgba(30,30,30,.3));
background-color: #585858;
}
button.flat { button.flat {
background-image: none; background-image: none;
} }
button.flat:checked { button.flat:checked {
background-image: linear-gradient(#343434, #2E2E2E, #292929); background-image: linear-gradient(#343434, #2E2E2E, #292929);
} }
checkbutton > check { checkbutton > check {
background-image: linear-gradient(#343434, #2E2E2E, #292929); background-image: linear-gradient(#343434, #2E2E2E, #292929);
} }
radiobutton > radio { radiobutton > radio {
background-image: linear-gradient(#343434, #2E2E2E, #292929); background-image: linear-gradient(#343434, #2E2E2E, #292929);
} }
button:hover , button.flat:hover, checkbutton:hover > check, radiobutton:hover > radio { button:hover , button.flat:hover, checkbutton:hover > check, radiobutton:hover > radio {
background-image: linear-gradient(shade(#343434,1.3), shade(#2E2E2E,1.3), shade(#292929,1.3)); background-image: linear-gradient(shade(#343434,1.3), shade(#2E2E2E,1.3), shade(#292929,1.3));
} }
button.popupbutton-arrow { button.popupbutton-arrow {
min-width: 18px; min-width: 18px;
} }
/* Save, Cancel, OK ... buttons */ /* Save, Cancel, OK ... buttons */
.dialog-action-area button { .dialog-action-area button {
min-height: 24px; min-height: 24px;
@ -626,18 +639,11 @@ paned box, paned grid {
} }
paned > separator { paned > separator {
border-width: 1px; border-width: 1px 1px 0 0;
border-color: #484848; border-style: solid;
margin: 0; border-color: #404040;
padding: 0; padding: 0px;
} margin: 4px;
paned.horizontal > separator {
min-width: 2px;
border-style: none solid;
}
paned.vertical > separator {
min-height: 2px;
border-style: solid none;
} }
#PlacesPaned { #PlacesPaned {

View File

@ -31,19 +31,19 @@
@define-color bg-highlighted-text-color rgb(43,119,196); /*** Highlighted text color background* Default: rgb(35,99,166) ***/ @define-color bg-highlighted-text-color rgb(43,119,196); /*** Highlighted text color background* Default: rgb(35,99,166) ***/
@define-color highlighted-text-color rgb(255,255,255); /*** Highlighted text color * Default: rgb(210,210,210) ***/ @define-color highlighted-text-color rgb(255,255,255); /*** Highlighted text color * Default: rgb(210,210,210) ***/
@define-color bg-image rgb(90,90,90); /*** Image area & File Browser background * Default: rgb(70,70,70) ***/ @define-color bg-image rgb(95,95,95); /*** Image area & File Browser background * Default: rgb(70,70,70) ***/
@define-color accent-color2 rgb(43,119,196); /*** Scale, Progressbar, Scrollbar, Tabs * Default: rgb(35,99,166) ***/ @define-color accent-color2 rgb(43,119,196); /*** Scale, Progressbar, Scrollbar, Tabs * Default: rgb(35,99,166) ***/
@define-color accent-color4 rgb(128,128,128); /*** Slider knob * Default: rgb(115,115,115) ***/ @define-color accent-color4 rgb(135,135,135); /*** Slider knob * Default: rgb(115,115,115) ***/
@define-color accent-color3 rgb(43,119,196); /*** Selected thumbnail background color * Default: rgb(35,99,166) ***/ @define-color accent-color3 rgb(43,119,196); /*** Selected thumbnail background color * Default: rgb(35,99,166) ***/
@define-color text-hl-color3 rgb(255,255,255); /*** Selected thumbnail text color * Default: rgb(210,210,210) ***/ @define-color text-hl-color3 rgb(255,255,255); /*** Selected thumbnail text color * Default: rgb(210,210,210) ***/
/*** Change me end *****************************************************************************/ /*** Change me end *****************************************************************************/
@define-color bg-light-grey rgb(110,110,110); @define-color bg-light-grey rgb(115,115,115);
@define-color bg-grey rgb(90,90,90); @define-color bg-grey rgb(95,95,95);
@define-color bg-dark-grey rgb(50,50,50); @define-color bg-dark-grey rgb(55,55,55);
@define-color bg-button-hover rgba(0,0,0,.25); @define-color bg-button-hover rgba(0,0,0,.25);
@define-color bg-button-active rgba(0,0,0,.60); @define-color bg-button-active rgba(0,0,0,.60);
@ -58,12 +58,15 @@
@define-color text-color rgb(210,210,210); @define-color text-color rgb(210,210,210);
@define-color text-tbEntry rgb(230,230,230); @define-color text-tbEntry rgb(230,230,230);
@define-color border-color rgba(255,255,255,.35); @define-color border-color rgba(255,255,255,.35);
@define-color bg-list-hover rgb(60,60,60); @define-color bg-list-hover rgb(68,68,68);
@define-color bg-scale-entry rgba(0,0,0,.14); @define-color bg-scale-entry rgba(0,0,0,.14);
@define-color bg-button-border rgba(0,0,0,.60); @define-color bg-button-border rgba(0,0,0,.5);
@define-color bg-entry-border rgba(0,0,0,.40); @define-color bg-entry-border rgba(0,0,0,.40);
@define-color view-grid-border rgba(255,255,255,0.25); @define-color view-grid-border rgba(255,255,255,0.25);
@define-color headline-big rgb(210,210,210); @define-color headline-big rgb(210,210,210);
@define-color headline-hl rgb(255,255,255); @define-color headline-hl rgb(255,255,255);
@define-color headline-frame rgb(245,245,245); @define-color headline-frame rgb(245,245,245);
/*** New Color Variable v2.53 ************************************************************************/
@define-color fg-disabled rgb(145,145,145);
@define-color bg-tb-spinbutton shade(@bg-grey, 1.3);
/***********************************************************************************************/ /***********************************************************************************************/

View File

@ -43,7 +43,7 @@
@define-color bg-light-grey rgb(75,75,75); @define-color bg-light-grey rgb(75,75,75);
@define-color bg-grey rgb(58,58,58); @define-color bg-grey rgb(58,58,58);
@define-color bg-dark-grey rgb(36,36,36); @define-color bg-dark-grey rgb(30,30,30);
@define-color bg-button-hover rgba(0,0,0,.3); @define-color bg-button-hover rgba(0,0,0,.3);
@define-color bg-button-active rgba(0,0,0,.7); @define-color bg-button-active rgba(0,0,0,.7);
@ -66,4 +66,7 @@
@define-color headline-big rgb(187,187,187); @define-color headline-big rgb(187,187,187);
@define-color headline-hl rgb(215,215,215); @define-color headline-hl rgb(215,215,215);
@define-color headline-frame rgb(210,210,210); @define-color headline-frame rgb(210,210,210);
/*** New Color Variable v2.53 ************************************************************************/
@define-color fg-disabled rgb(128,128,128);
@define-color bg-tb-spinbutton shade(@bg-grey, 1.35);
/***********************************************************************************************/ /***********************************************************************************************/

View File

@ -2,7 +2,7 @@
This file is part of RawTherapee. This file is part of RawTherapee.
Copyright (c) 2016-2017 TooWaBoo Copyright (c) 2016-2017 TooWaBoo
Version 2.51 - requires RT 5.0 (Gtk+ >= 3.20) Version 2.56 - requires RT 5.0 (Gtk+ >= 3.20)
RawTherapee is free software: you can redistribute it and/or modify RawTherapee is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -26,7 +26,7 @@
@define-color bg-highlighted-text-color rgb(35,99,166); /*** Highlighted text color background* Default: rgb(35,99,166) ***/ @define-color bg-highlighted-text-color rgb(35,99,166); /*** Highlighted text color background* Default: rgb(35,99,166) ***/
@define-color highlighted-text-color rgb(210,210,210); /*** Highlighted text color * Default: rgb(210,210,210) ***/ @define-color highlighted-text-color rgb(210,210,210); /*** Highlighted text color * Default: rgb(210,210,210) ***/
@define-color bg-image rgb(70,70,70); /*** Image area & File Browser background * Default: rgb(70,70,70) ***/ @define-color bg-image rgb(75,75,75); /*** Image area & File Browser background * Default: rgb(70,70,70) ***/
@define-color accent-color2 rgb(35,99,166); /*** Scale, Progressbar, Scrollbar, Tabs * Default: rgb(35,99,166) ***/ @define-color accent-color2 rgb(35,99,166); /*** Scale, Progressbar, Scrollbar, Tabs * Default: rgb(35,99,166) ***/
@define-color accent-color4 rgb(115,115,115); /*** Slider knob * Default: rgb(115,115,115) ***/ @define-color accent-color4 rgb(115,115,115); /*** Slider knob * Default: rgb(115,115,115) ***/
@ -36,9 +36,9 @@
/*** Change me end *****************************************************************************/ /*** Change me end *****************************************************************************/
@define-color bg-light-grey rgb(90,90,90); @define-color bg-light-grey rgb(95,95,95);
@define-color bg-grey rgb(70,70,70); @define-color bg-grey rgb(75,75,75);
@define-color bg-dark-grey rgb(36,36,36); @define-color bg-dark-grey rgb(40,40,40);
@define-color bg-button-hover rgba(0,0,0,.25); @define-color bg-button-hover rgba(0,0,0,.25);
@define-color bg-button-active rgba(0,0,0,.60); @define-color bg-button-active rgba(0,0,0,.60);
@ -47,8 +47,8 @@
@define-color winTitle rgb(190,190,190); @define-color winTitle rgb(190,190,190);
@define-color bg-tooltip rgb(185,185,185); @define-color bg-tooltip rgb(185,185,185);
@define-color border-tooltip rgb(36,36,36); @define-color border-tooltip rgb(40,40,40);
@define-color text-tooltip rgb(36,36,36); @define-color text-tooltip rgb(40,40,40);
/***********************************************/ /***********************************************/
@define-color text-color rgb(186,186,186); @define-color text-color rgb(186,186,186);
@define-color text-tbEntry rgb(192,192,192); @define-color text-tbEntry rgb(192,192,192);
@ -61,6 +61,9 @@
@define-color headline-big rgb(195,195,195); @define-color headline-big rgb(195,195,195);
@define-color headline-hl rgb(230,230,230); @define-color headline-hl rgb(230,230,230);
@define-color headline-frame rgb(215,215,215); @define-color headline-frame rgb(215,215,215);
/*** New Color Variable v2.53 ************************************************************************/
@define-color fg-disabled rgb(128,128,128);
@define-color bg-tb-spinbutton shade(@bg-grey, 1.33);
/***********************************************************************************************/ /***********************************************************************************************/
* { * {
@ -72,7 +75,7 @@
} }
*:disabled { *:disabled {
color: rgb(128,128,128); color: @fg-disabled;
} }
#ToolPanelNotebook { #ToolPanelNotebook {
@ -422,6 +425,7 @@ paned.horizontal > separator {
} }
paned.vertical > separator { paned.vertical > separator {
background-image: image(@bg-dark-grey);
background-color: @bg-light-grey; background-color: @bg-light-grey;
min-height: 0.5em; min-height: 0.5em;
border-top: 1px solid @bg-light-grey; border-top: 1px solid @bg-light-grey;
@ -594,7 +598,7 @@ scale slider {
margin: calc(-0.33334em - 1px); margin: calc(-0.33334em - 1px);
border-radius: 0.83334em; border-radius: 0.83334em;
background-image: linear-gradient(to bottom, shade (@accent-color4,1.15), shade (@accent-color4,.85)); background-image: linear-gradient(to bottom, shade (@accent-color4,1.15), shade (@accent-color4,.85));
border: 0.08334em solid @bg-dark-grey; border: 0.08334em solid @bg-button-border;
box-shadow: none; box-shadow: none;
} }
scale slider:hover { scale slider:hover {
@ -604,13 +608,13 @@ scale slider:hover {
scale trough { scale trough {
margin: 0.5em; /* has to be half of "scale slider / min-width min-height*/ margin: 0.5em; /* has to be half of "scale slider / min-width min-height*/
background-color: @bg-scale-entry; background-color: @bg-scale-entry;
border: 0.08334em solid @bg-dark-grey; border: 0.08334em solid @bg-button-border;
box-shadow: inset 0 0.08334em rgba(255, 255, 255, 0.11), 0 0.08334em rgba(242, 242, 242, 0.11); box-shadow: inset 0 0.08334em rgba(255, 255, 255, 0.11), 0 0.08334em rgba(242, 242, 242, 0.11);
border-radius: 0.5em; border-radius: 0.5em;
} }
scale:not(:disabled) trough highlight { scale:not(:disabled) trough highlight {
background-color: @accent-color2; background-color: @accent-color2;
border: 0.08334em solid @bg-dark-grey; border: 0.08334em solid @bg-button-border;
box-shadow: inset 0 0.08334em shade(@accent-color2, 1.3); box-shadow: inset 0 0.08334em shade(@accent-color2, 1.3);
border-radius: 0.5em; border-radius: 0.5em;
} }
@ -1031,36 +1035,10 @@ window.csd:not(.fullscreen) #MainNotebook > header.top {
margin-right: 0; margin-right: 0;
} }
#EditorTopPanel > box:nth-child(9) > button.image-button:not(:nth-child(6)) { #EditorTopPanel > box:nth-child(9) > button.image-button {
min-width: 0; min-width: 0;
padding-left: 0.33334em; padding-left: 0.25em;
padding-right: 0.33334em; padding-right: 0.25em;
}
#EditorTopPanel > box:nth-child(9) > button.image-button:nth-child(6) {
-gtk-icon-shadow: none;
}
#EditorTopPanel > box > box > button {
min-height: 0.625em;
min-width: 0;
margin: 0 0.16667em;
padding: 0 0.16667em;
border: 0.08334em solid transparent;
background-color: transparent;
background-image: none;
box-shadow: none;
}
#EditorTopPanel > box > box > button:hover {
background-color: transparent;
background-image: none;
border: 0.08334em solid transparent;
box-shadow: none;
}
#EditorTopPanel > box > box > button:checked {
background-color: transparent;
background-image: none;
border: 0.08334em solid @bg-button-border;
box-shadow: none;
} }
/*Button editor bottom*/ /*Button editor bottom*/
@ -1639,7 +1617,7 @@ radiobutton {
check, check,
radio { radio {
border: calc(0.083334em + 0.18px) solid shade(@text-color, .9); border: calc(0.083334em + 0.18px) solid @text-color;
background-image: none; background-image: none;
background-color: transparent; background-color: transparent;
margin: 0; margin: 0;
@ -1649,6 +1627,7 @@ radio {
box-shadow: none; box-shadow: none;
background-repeat: no-repeat; background-repeat: no-repeat;
-gtk-icon-shadow: none; -gtk-icon-shadow: none;
color: @text-color;
} }
radiobutton label, radiobutton label,
checkbutton label { checkbutton label {
@ -1664,7 +1643,7 @@ radio{
} }
check:disabled, check:disabled,
radio:disabled { radio:disabled {
border-color: rgb(120,120,120); border-color: @fg-disabled;
} }
frame > checkbutton check{ frame > checkbutton check{
@ -1717,7 +1696,7 @@ spinbutton {
min-width: 0; min-width: 0;
border-top-left-radius: 1.83334em; border-top-left-radius: 1.83334em;
border-bottom-left-radius: 1.83334em; border-bottom-left-radius: 1.83334em;
background-color: shade(@bg-grey, 1.33); background-color: @bg-tb-spinbutton;
border: 0.08334em solid @bg-button-border; border: 0.08334em solid @bg-button-border;
color: @text-tbEntry; color: @text-tbEntry;
box-shadow: inset 0.08334em 0.08334em rgba(0, 0, 0, .12), 0 0.08334em rgba(255, 255, 255, 0.12); box-shadow: inset 0.08334em 0.08334em rgba(0, 0, 0, .12), 0 0.08334em rgba(255, 255, 255, 0.12);
@ -1858,5 +1837,4 @@ headerbar:backdrop {
headerbar .title:backdrop { headerbar .title:backdrop {
color: alpha(@winTitle,.60); color: alpha(@winTitle,.60);
} }
/**/
/*** end ***************************************************************************************/ /*** end ***************************************************************************************/

View File

@ -0,0 +1,72 @@
/*
This file is part of RawTherapee.
Copyright (c) 2016-2017 TooWaBoo
Requires RT 5.0 (Gtk+ >= 3.20)
RawTherapee is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
RawTherapee is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with RawTherapee. If not, see <http://www.gnu.org/licenses/>.
*/
/*****************************************/
/**/ @import "TooWaBlue-GTK3-20_.css"; /**/
/*****************************************/
/*** Change me *** rgb(red,green,blue) *** allowed values from 0 to 255 for each color ***/
@define-color accent-color rgb(110,110,110); /*** Active color for Lists, Menu, Borders ... * Default: rgb(35,99,166) ***/
@define-color text-hl-color rgb(255,255,255); /*** Active text color * Default: rgb(210,210,210) ***/
@define-color bg-highlighted-text-color rgb(49,132,220); /*** Highlighted text color background* Default: rgb(35,99,166) ***/
@define-color highlighted-text-color rgb(255,255,255); /*** Highlighted text color * Default: rgb(210,210,210) ***/
@define-color bg-image rgb(120,120,120); /*** Image area & File Browser background * Default: rgb(70,70,70) ***/
@define-color accent-color2 rgb(49,132,220); /*** Scale, Progressbar, Scrollbar, Tabs * Default: rgb(35,99,166) ***/
@define-color accent-color4 rgb(155,155,155); /*** Slider knob * Default: rgb(115,115,115) ***/
@define-color accent-color3 rgb(85,85,85); /*** Selected thumbnail background color * Default: rgb(35,99,166) ***/
@define-color text-hl-color3 rgb(230,230,230); /*** Selected thumbnail text color * Default: rgb(210,210,210) ***/
/*** Change me end *****************************************************************************/
@define-color bg-light-grey rgb(135,135,135);
@define-color bg-grey rgb(120,120,120);
@define-color bg-dark-grey rgb(85,85,85);
@define-color bg-button-hover rgba(0,0,0,.15);
@define-color bg-button-active rgba(0,0,0,.5);
@define-color winHeaderbar rgb(75,75,75);
@define-color winTitle rgb(210,210,210);
@define-color bg-tooltip rgb(210,210,210);
@define-color border-tooltip rgb(50,50,50);
@define-color text-tooltip rgb(50,50,50);
/***********************************************/
@define-color text-color rgb(230,230,230);
@define-color text-tbEntry rgb(245,245,245);
@define-color border-color rgba(255,255,255,.35);
@define-color bg-list-hover rgb(95,95,95);
@define-color bg-scale-entry rgba(0,0,0,.14);
@define-color bg-button-border rgba(0,0,0,.45);
@define-color bg-entry-border rgba(0,0,0,.40);
@define-color view-grid-border rgba(255,255,255,0.25);
@define-color headline-big rgb(210,210,210);
@define-color headline-hl rgb(255,255,255);
@define-color headline-frame rgb(245,245,245);
/*** New Color Variable v2.53 ************************************************************************/
@define-color fg-disabled rgb(180,180,180);
@define-color bg-tb-spinbutton shade(@bg-grey, 1.20);
/***********************************************************************************************/

View File

@ -113,7 +113,7 @@ using namespace rtengine;
void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const double cablue, const double caautostrength, array2D<float> &rawData) void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const double cablue, const double caautostrength, array2D<float> &rawData)
{ {
// multithreaded and partly vectorized by Ingo Weyrich // multithreaded and vectorized by Ingo Weyrich
constexpr int ts = 128; constexpr int ts = 128;
constexpr int tsh = ts / 2; constexpr int tsh = ts / 2;
//shifts to location of vertical and diagonal neighbors //shifts to location of vertical and diagonal neighbors
@ -134,12 +134,12 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
} }
// local variables // local variables
const int width = W, height = H; const int width = W + (W & 1), height = H;
//temporary array to store simple interpolation of G //temporary array to store simple interpolation of G
float *Gtmp = (float (*)) calloc ((height) * (width), sizeof * Gtmp); float *Gtmp = (float (*)) malloc ((height * width) / 2 * sizeof * Gtmp);
// temporary array to avoid race conflicts, only every second pixel needs to be saved here // temporary array to avoid race conflicts, only every second pixel needs to be saved here
float *RawDataTmp = (float*) malloc( (height * width + ((height * width) & 1)) * sizeof(float) / 2); float *RawDataTmp = (float*) malloc( (height * width) * sizeof(float) / 2);
float blockave[2][2] = {{0, 0}, {0, 0}}, blocksqave[2][2] = {{0, 0}, {0, 0}}, blockdenom[2][2] = {{0, 0}, {0, 0}}, blockvar[2][2]; float blockave[2][2] = {{0, 0}, {0, 0}}, blocksqave[2][2] = {{0, 0}, {0, 0}}, blockdenom[2][2] = {{0, 0}, {0, 0}}, blockvar[2][2];
@ -185,7 +185,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
float blockavethr[2][2] = {{0, 0}, {0, 0}}, blocksqavethr[2][2] = {{0, 0}, {0, 0}}, blockdenomthr[2][2] = {{0, 0}, {0, 0}}; float blockavethr[2][2] = {{0, 0}, {0, 0}}, blocksqavethr[2][2] = {{0, 0}, {0, 0}}, blockdenomthr[2][2] = {{0, 0}, {0, 0}};
// assign working space // assign working space
constexpr int buffersize = 3 * sizeof(float) * ts * ts + 6 * sizeof(float) * ts * tsh + 8 * 64 + 63; constexpr int buffersize = sizeof(float) * ts * ts + 8 * sizeof(float) * ts * tsh + 8 * 64 + 63;
char *buffer = (char *) malloc(buffersize); char *buffer = (char *) malloc(buffersize);
char *data = (char*)( ( uintptr_t(buffer) + uintptr_t(63)) / 64 * 64); char *data = (char*)( ( uintptr_t(buffer) + uintptr_t(63)) / 64 * 64);
@ -194,22 +194,21 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
//rgb data in a tile //rgb data in a tile
float* rgb[3]; float* rgb[3];
rgb[0] = (float (*)) data; rgb[0] = (float (*)) data;
rgb[1] = (float (*)) (data + 1 * sizeof(float) * ts * ts + 1 * 64); rgb[1] = (float (*)) (data + sizeof(float) * ts * tsh + 1 * 64);
rgb[2] = (float (*)) (data + 2 * sizeof(float) * ts * ts + 2 * 64); rgb[2] = (float (*)) (data + sizeof(float) * (ts * ts + ts * tsh) + 2 * 64);
//high pass filter for R/B in vertical direction //high pass filter for R/B in vertical direction
float *rbhpfh = (float (*)) (data + 3 * sizeof(float) * ts * ts + 3 * 64); float *rbhpfh = (float (*)) (data + 2 * sizeof(float) * ts * ts + 3 * 64);
//high pass filter for R/B in horizontal direction //high pass filter for R/B in horizontal direction
float *rbhpfv = (float (*)) (data + 3 * sizeof(float) * ts * ts + sizeof(float) * ts * tsh + 4 * 64); float *rbhpfv = (float (*)) (data + 2 * sizeof(float) * ts * ts + sizeof(float) * ts * tsh + 4 * 64);
//low pass filter for R/B in horizontal direction //low pass filter for R/B in horizontal direction
float *rblpfh = (float (*)) (data + 4 * sizeof(float) * ts * ts + 5 * 64); float *rblpfh = (float (*)) (data + 3 * sizeof(float) * ts * ts + 5 * 64);
//low pass filter for R/B in vertical direction //low pass filter for R/B in vertical direction
float *rblpfv = (float (*)) (data + 4 * sizeof(float) * ts * ts + sizeof(float) * ts * tsh + 6 * 64); float *rblpfv = (float (*)) (data + 3 * sizeof(float) * ts * ts + sizeof(float) * ts * tsh + 6 * 64);
//low pass filter for colour differences in horizontal direction //low pass filter for colour differences in horizontal direction
float *grblpfh = (float (*)) (data + 5 * sizeof(float) * ts * ts + 7 * 64); float *grblpfh = (float (*)) (data + 4 * sizeof(float) * ts * ts + 7 * 64);
//low pass filter for colour differences in vertical direction //low pass filter for colour differences in vertical direction
float *grblpfv = (float (*)) (data + 5 * sizeof(float) * ts * ts + sizeof(float) * ts * tsh + 8 * 64); float *grblpfv = (float (*)) (data + 4 * sizeof(float) * ts * ts + sizeof(float) * ts * tsh + 8 * 64);
//colour differences
float *grbdiff = rbhpfh; // there is no overlap in buffer usage => share float *grbdiff = rbhpfh; // there is no overlap in buffer usage => share
//green interpolated to optical sample points for R/B //green interpolated to optical sample points for R/B
float *gshift = rbhpfv; // there is no overlap in buffer usage => share float *gshift = rbhpfv; // there is no overlap in buffer usage => share
@ -236,13 +235,38 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
// rgb values should be floating point numbers between 0 and 1 // rgb values should be floating point numbers between 0 and 1
// after white balance multipliers are applied // after white balance multipliers are applied
for (int rr = rrmin; rr < rrmax; rr++) #ifdef __SSE2__
for (int row = rr + top, cc = ccmin; cc < ccmax; cc++) { vfloat c65535v = F2V(65535.f);
int col = cc + left; #endif
for (int rr = rrmin; rr < rrmax; rr++) {
int row = rr + top;
int cc = ccmin;
int col = cc + left;
#ifdef __SSE2__
int c0 = FC(rr, cc);
if(c0 == 1) {
rgb[c0][rr * ts + cc] = rawData[row][col] / 65535.f;
cc++;
col++;
c0 = FC(rr, cc);
}
int indx1 = rr * ts + cc;
for (; cc < ccmax - 7; cc+=8, col+=8, indx1 += 8) {
vfloat val1 = LVFU(rawData[row][col]) / c65535v;
vfloat val2 = LVFU(rawData[row][col + 4]) / c65535v;
vfloat nonGreenv = _mm_shuffle_ps(val1,val2,_MM_SHUFFLE( 2,0,2,0 ));
STVFU(rgb[c0][indx1 >> 1], nonGreenv);
STVFU(rgb[1][indx1], val1);
STVFU(rgb[1][indx1 + 4], val2);
}
#endif
for (; cc < ccmax; cc++, col++) {
int c = FC(rr, cc); int c = FC(rr, cc);
int indx1 = rr * ts + cc; int indx1 = rr * ts + cc;
rgb[c][indx1] = (rawData[row][col]) / 65535.0f; rgb[c][indx1 >> ((c & 1) ^ 1)] = rawData[row][col] / 65535.f;
} }
}
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//fill borders //fill borders
@ -250,7 +274,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = ccmin; cc < ccmax; cc++) { for (int cc = ccmin; cc < ccmax; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][rr * ts + cc] = rgb[c][(border2 - rr) * ts + cc]; rgb[c][(rr * ts + cc) >> ((c & 1) ^ 1)] = rgb[c][((border2 - rr) * ts + cc) >> ((c & 1) ^ 1)];
} }
} }
@ -258,7 +282,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = ccmin; cc < ccmax; cc++) { for (int cc = ccmin; cc < ccmax; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rrmax + rr)*ts + cc] = (rawData[(height - rr - 2)][left + cc]) / 65535.0f; rgb[c][((rrmax + rr)*ts + cc) >> ((c & 1) ^ 1)] = rawData[(height - rr - 2)][left + cc] / 65535.f;
} }
} }
@ -266,7 +290,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = rrmin; rr < rrmax; rr++) for (int rr = rrmin; rr < rrmax; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][rr * ts + cc] = rgb[c][rr * ts + border2 - cc]; rgb[c][(rr * ts + cc) >> ((c & 1) ^ 1)] = rgb[c][(rr * ts + border2 - cc) >> ((c & 1) ^ 1)];
} }
} }
@ -274,7 +298,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = rrmin; rr < rrmax; rr++) for (int rr = rrmin; rr < rrmax; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][rr * ts + ccmax + cc] = (rawData[(top + rr)][(width - cc - 2)]) / 65535.0f; rgb[c][(rr * ts + ccmax + cc) >> ((c & 1) ^ 1)] = rawData[(top + rr)][(width - cc - 2)] / 65535.f;
} }
} }
@ -283,7 +307,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rr)*ts + cc] = (rawData[border2 - rr][border2 - cc]) / 65535.0f; rgb[c][(rr * ts + cc) >> ((c & 1) ^ 1)] = rawData[border2 - rr][border2 - cc] / 65535.f;
} }
} }
@ -291,7 +315,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rrmax + rr)*ts + ccmax + cc] = (rawData[(height - rr - 2)][(width - cc - 2)]) / 65535.0f; rgb[c][((rrmax + rr)*ts + ccmax + cc) >> ((c & 1) ^ 1)] = rawData[(height - rr - 2)][(width - cc - 2)] / 65535.f;
} }
} }
@ -299,7 +323,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rr)*ts + ccmax + cc] = (rawData[(border2 - rr)][(width - cc - 2)]) / 65535.0f; rgb[c][(rr * ts + ccmax + cc) >> ((c & 1) ^ 1)] = rawData[(border2 - rr)][(width - cc - 2)] / 65535.f;
} }
} }
@ -307,7 +331,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rrmax + rr)*ts + cc] = (rawData[(height - rr - 2)][(border2 - cc)]) / 65535.0f; rgb[c][((rrmax + rr)*ts + cc) >> ((c & 1) ^ 1)] = rawData[(height - rr - 2)][(border2 - cc)] / 65535.f;
} }
} }
@ -328,30 +352,45 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
#ifdef __SSE2__ #ifdef __SSE2__
for (; cc < cc1 - 9; cc+=8, indx+=8) { for (; cc < cc1 - 9; cc+=8, indx+=8) {
//compute directional weights using image gradients //compute directional weights using image gradients
vfloat wtuv = onev / SQRV(epsv + vabsf(LC2VFU(rgb[1][indx + v1]) - LC2VFU(rgb[1][indx - v1])) + vabsf(LC2VFU(rgb[c][indx]) - LC2VFU(rgb[c][indx - v2])) + vabsf(LC2VFU(rgb[1][indx - v1]) - LC2VFU(rgb[1][indx - v3]))); vfloat rgb1mv1v = LC2VFU(rgb[1][indx - v1]);
vfloat wtdv = onev / SQRV(epsv + vabsf(LC2VFU(rgb[1][indx - v1]) - LC2VFU(rgb[1][indx + v1])) + vabsf(LC2VFU(rgb[c][indx]) - LC2VFU(rgb[c][indx + v2])) + vabsf(LC2VFU(rgb[1][indx + v1]) - LC2VFU(rgb[1][indx + v3]))); vfloat rgb1pv1v = LC2VFU(rgb[1][indx + v1]);
vfloat wtlv = onev / SQRV(epsv + vabsf(LC2VFU(rgb[1][indx + 1]) - LC2VFU(rgb[1][indx - 1])) + vabsf(LC2VFU(rgb[c][indx]) - LC2VFU(rgb[c][indx - 2])) + vabsf(LC2VFU(rgb[1][indx - 1]) - LC2VFU(rgb[1][indx - 3]))); vfloat rgbcv = LVFU(rgb[c][indx >> 1]);
vfloat wtrv = onev / SQRV(epsv + vabsf(LC2VFU(rgb[1][indx - 1]) - LC2VFU(rgb[1][indx + 1])) + vabsf(LC2VFU(rgb[c][indx]) - LC2VFU(rgb[c][indx + 2])) + vabsf(LC2VFU(rgb[1][indx + 1]) - LC2VFU(rgb[1][indx + 3]))); vfloat temp1v = epsv + vabsf(rgb1mv1v - rgb1pv1v);
vfloat wtuv = onev / SQRV(temp1v + vabsf(rgbcv - LVFU(rgb[c][(indx - v2) >> 1])) + vabsf(rgb1mv1v - LC2VFU(rgb[1][indx - v3])));
vfloat wtdv = onev / SQRV(temp1v + vabsf(rgbcv - LVFU(rgb[c][(indx + v2) >> 1])) + vabsf(rgb1pv1v - LC2VFU(rgb[1][indx + v3])));
vfloat rgb1m1v = LC2VFU(rgb[1][indx - 1]);
vfloat rgb1p1v = LC2VFU(rgb[1][indx + 1]);
vfloat temp2v = epsv + vabsf(rgb1m1v - rgb1p1v);
vfloat wtlv = onev / SQRV(temp2v + vabsf(rgbcv - LVFU(rgb[c][(indx - 2) >> 1])) + vabsf(rgb1m1v - LC2VFU(rgb[1][indx - 3])));
vfloat wtrv = onev / SQRV(temp2v + vabsf(rgbcv - LVFU(rgb[c][(indx + 2) >> 1])) + vabsf(rgb1p1v - LC2VFU(rgb[1][indx + 3])));
//store in rgb array the interpolated G value at R/B grid points using directional weighted average //store in rgb array the interpolated G value at R/B grid points using directional weighted average
STC2VFU(rgb[1][indx], (wtuv * LC2VFU(rgb[1][indx - v1]) + wtdv * LC2VFU(rgb[1][indx + v1]) + wtlv * LC2VFU(rgb[1][indx - 1]) + wtrv * LC2VFU(rgb[1][indx + 1])) / (wtuv + wtdv + wtlv + wtrv)); STC2VFU(rgb[1][indx], (wtuv * rgb1mv1v + wtdv * rgb1pv1v + wtlv * rgb1m1v + wtrv * rgb1p1v) / (wtuv + wtdv + wtlv + wtrv));
} }
#endif #endif
for (; cc < cc1 - 3; cc+=2, indx+=2) { for (; cc < cc1 - 3; cc+=2, indx+=2) {
//compute directional weights using image gradients //compute directional weights using image gradients
float wtu = 1.f / SQR(eps + fabsf(rgb[1][indx + v1] - rgb[1][indx - v1]) + fabsf(rgb[c][indx] - rgb[c][indx - v2]) + fabsf(rgb[1][indx - v1] - rgb[1][indx - v3])); float wtu = 1.f / SQR(eps + fabsf(rgb[1][indx + v1] - rgb[1][indx - v1]) + fabsf(rgb[c][indx >> 1] - rgb[c][(indx - v2) >> 1]) + fabsf(rgb[1][indx - v1] - rgb[1][indx - v3]));
float wtd = 1.f / SQR(eps + fabsf(rgb[1][indx - v1] - rgb[1][indx + v1]) + fabsf(rgb[c][indx] - rgb[c][indx + v2]) + fabsf(rgb[1][indx + v1] - rgb[1][indx + v3])); float wtd = 1.f / SQR(eps + fabsf(rgb[1][indx - v1] - rgb[1][indx + v1]) + fabsf(rgb[c][indx >> 1] - rgb[c][(indx + v2) >> 1]) + fabsf(rgb[1][indx + v1] - rgb[1][indx + v3]));
float wtl = 1.f / SQR(eps + fabsf(rgb[1][indx + 1] - rgb[1][indx - 1]) + fabsf(rgb[c][indx] - rgb[c][indx - 2]) + fabsf(rgb[1][indx - 1] - rgb[1][indx - 3])); float wtl = 1.f / SQR(eps + fabsf(rgb[1][indx + 1] - rgb[1][indx - 1]) + fabsf(rgb[c][indx >> 1] - rgb[c][(indx - 2) >> 1]) + fabsf(rgb[1][indx - 1] - rgb[1][indx - 3]));
float wtr = 1.f / SQR(eps + fabsf(rgb[1][indx - 1] - rgb[1][indx + 1]) + fabsf(rgb[c][indx] - rgb[c][indx + 2]) + fabsf(rgb[1][indx + 1] - rgb[1][indx + 3])); float wtr = 1.f / SQR(eps + fabsf(rgb[1][indx - 1] - rgb[1][indx + 1]) + fabsf(rgb[c][indx >> 1] - rgb[c][(indx + 2) >> 1]) + fabsf(rgb[1][indx + 1] - rgb[1][indx + 3]));
//store in rgb array the interpolated G value at R/B grid points using directional weighted average //store in rgb array the interpolated G value at R/B grid points using directional weighted average
rgb[1][indx] = (wtu * rgb[1][indx - v1] + wtd * rgb[1][indx + v1] + wtl * rgb[1][indx - 1] + wtr * rgb[1][indx + 1]) / (wtu + wtd + wtl + wtr); rgb[1][indx] = (wtu * rgb[1][indx - v1] + wtd * rgb[1][indx + v1] + wtl * rgb[1][indx - 1] + wtr * rgb[1][indx + 1]) / (wtu + wtd + wtl + wtr);
} }
if (row > -1 && row < height) { if (row > -1 && row < height) {
for(int col = max(left + 3, 0), indx = rr * ts + 3 - (left < 0 ? (left+3) : 0); col < min(cc1 + left - 3, width); col++, indx++) { int offset = (FC(row,max(left + 3, 0)) & 1);
Gtmp[row * width + col] = rgb[1][indx]; int col = max(left + 3, 0) + offset;
int indx = rr * ts + 3 - (left < 0 ? (left+3) : 0) + offset;
#ifdef __SSE2__
for(; col < min(cc1 + left - 3, width) - 7; col+=8, indx+=8) {
STVFU(Gtmp[(row * width + col) >> 1], LC2VFU(rgb[1][indx]));
}
#endif
for(; col < min(cc1 + left - 3, width); col+=2, indx+=2) {
Gtmp[(row * width + col) >> 1] = rgb[1][indx];
} }
} }
@ -361,47 +400,53 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
vfloat zd25v = F2V(0.25f); vfloat zd25v = F2V(0.25f);
#endif #endif
for (int rr = 4; rr < rr1 - 4; rr++) { for (int rr = 4; rr < rr1 - 4; rr++) {
int cc = 4 + (FC(rr, 2) & 1), indx = rr * ts + cc, c = FC(rr, cc); int cc = 4 + (FC(rr, 2) & 1);
int indx = rr * ts + cc;
int c = FC(rr, cc);
#ifdef __SSE2__ #ifdef __SSE2__
for (; cc < cc1 - 10; cc += 8, indx += 8) { for (; cc < cc1 - 10; cc += 8, indx += 8) {
vfloat rgb1v = LC2VFU(rgb[1][indx]); vfloat rgb1v = LC2VFU(rgb[1][indx]);
vfloat rgbcv = LC2VFU(rgb[c][indx]); vfloat rgbcv = LVFU(rgb[c][indx >> 1]);
vfloat temp1v = vabsf(vabsf((rgb1v - rgbcv) - (LC2VFU(rgb[1][indx + v4]) - LC2VFU(rgb[c][indx + v4]))) + vfloat rgb1mv4 = LC2VFU(rgb[1][indx - v4]);
vabsf(LC2VFU(rgb[1][indx - v4]) - LC2VFU(rgb[c][indx - v4]) - rgb1v + rgbcv) - vfloat rgb1pv4 = LC2VFU(rgb[1][indx + v4]);
vabsf(LC2VFU(rgb[1][indx - v4]) - LC2VFU(rgb[c][indx - v4]) - LC2VFU(rgb[1][indx + v4]) + LC2VFU(rgb[c][indx + v4]))); vfloat temp1v = vabsf(vabsf((rgb1v - rgbcv) - (rgb1pv4 - LVFU(rgb[c][(indx + v4) >> 1]))) +
vabsf(rgb1mv4 - LVFU(rgb[c][(indx - v4) >> 1]) - rgb1v + rgbcv) -
vabsf(rgb1mv4 - LVFU(rgb[c][(indx - v4) >> 1]) - rgb1pv4 + LVFU(rgb[c][(indx + v4) >> 1])));
STVFU(rbhpfv[indx >> 1], temp1v); STVFU(rbhpfv[indx >> 1], temp1v);
vfloat temp2v = vabsf(vabsf((rgb1v - rgbcv) - (LC2VFU(rgb[1][indx + 4]) - LC2VFU(rgb[c][indx + 4]))) + vfloat rgb1m4 = LC2VFU(rgb[1][indx - 4]);
vabsf(LC2VFU(rgb[1][indx - 4]) - LC2VFU(rgb[c][indx - 4]) - rgb1v + rgbcv) - vfloat rgb1p4 = LC2VFU(rgb[1][indx + 4]);
vabsf(LC2VFU(rgb[1][indx - 4]) - LC2VFU(rgb[c][indx - 4]) - LC2VFU(rgb[1][indx + 4]) + LC2VFU(rgb[c][indx + 4]))); vfloat temp2v = vabsf(vabsf((rgb1v - rgbcv) - (rgb1p4 - LVFU(rgb[c][(indx + 4) >> 1]))) +
vabsf(rgb1m4 - LVFU(rgb[c][(indx - 4) >> 1]) - rgb1v + rgbcv) -
vabsf(rgb1m4 - LVFU(rgb[c][(indx - 4) >> 1]) - rgb1p4 + LVFU(rgb[c][(indx + 4) >> 1])));
STVFU(rbhpfh[indx >> 1], temp2v); STVFU(rbhpfh[indx >> 1], temp2v);
//low and high pass 1D filters of G in vertical/horizontal directions //low and high pass 1D filters of G in vertical/horizontal directions
rgb1v = vmul2f(rgb1v); rgb1v = vmul2f(rgb1v);
vfloat glpfvv = zd25v * (rgb1v + LC2VFU(rgb[1][indx + v2]) + LC2VFU(rgb[1][indx - v2])); vfloat glpfvv = (rgb1v + LC2VFU(rgb[1][indx + v2]) + LC2VFU(rgb[1][indx - v2]));
vfloat glpfhv = zd25v * (rgb1v + LC2VFU(rgb[1][indx + 2]) + LC2VFU(rgb[1][indx - 2])); vfloat glpfhv = (rgb1v + LC2VFU(rgb[1][indx + 2]) + LC2VFU(rgb[1][indx - 2]));
rgbcv = vmul2f(rgbcv); rgbcv = vmul2f(rgbcv);
STVFU(rblpfv[indx >> 1], epsv + vabsf(glpfvv - zd25v * (rgbcv + LC2VFU(rgb[c][indx + v2]) + LC2VFU(rgb[c][indx - v2])))); STVFU(rblpfv[indx >> 1], zd25v * vabsf(glpfvv - (rgbcv + LVFU(rgb[c][(indx + v2) >> 1]) + LVFU(rgb[c][(indx - v2) >> 1]))));
STVFU(rblpfh[indx >> 1], epsv + vabsf(glpfhv - zd25v * (rgbcv + LC2VFU(rgb[c][indx + 2]) + LC2VFU(rgb[c][indx - 2])))); STVFU(rblpfh[indx >> 1], zd25v * vabsf(glpfhv - (rgbcv + LVFU(rgb[c][(indx + 2) >> 1]) + LVFU(rgb[c][(indx - 2) >> 1]))));
STVFU(grblpfv[indx >> 1], glpfvv + zd25v * (rgbcv + LC2VFU(rgb[c][indx + v2]) + LC2VFU(rgb[c][indx - v2]))); STVFU(grblpfv[indx >> 1], zd25v * (glpfvv + (rgbcv + LVFU(rgb[c][(indx + v2) >> 1]) + LVFU(rgb[c][(indx - v2) >> 1]))));
STVFU(grblpfh[indx >> 1], glpfhv + zd25v * (rgbcv + LC2VFU(rgb[c][indx + 2]) + LC2VFU(rgb[c][indx - 2]))); STVFU(grblpfh[indx >> 1], zd25v * (glpfhv + (rgbcv + LVFU(rgb[c][(indx + 2) >> 1]) + LVFU(rgb[c][(indx - 2) >> 1]))));
} }
#endif #endif
for (; cc < cc1 - 4; cc += 2, indx += 2) { for (; cc < cc1 - 4; cc += 2, indx += 2) {
rbhpfv[indx >> 1] = fabsf(fabsf((rgb[1][indx] - rgb[c][indx]) - (rgb[1][indx + v4] - rgb[c][indx + v4])) + rbhpfv[indx >> 1] = fabsf(fabsf((rgb[1][indx] - rgb[c][indx >> 1]) - (rgb[1][indx + v4] - rgb[c][(indx + v4) >> 1])) +
fabsf((rgb[1][indx - v4] - rgb[c][indx - v4]) - (rgb[1][indx] - rgb[c][indx])) - fabsf((rgb[1][indx - v4] - rgb[c][(indx - v4) >> 1]) - (rgb[1][indx] - rgb[c][indx >> 1])) -
fabsf((rgb[1][indx - v4] - rgb[c][indx - v4]) - (rgb[1][indx + v4] - rgb[c][indx + v4]))); fabsf((rgb[1][indx - v4] - rgb[c][(indx - v4) >> 1]) - (rgb[1][indx + v4] - rgb[c][(indx + v4) >> 1])));
rbhpfh[indx >> 1] = fabsf(fabsf((rgb[1][indx] - rgb[c][indx]) - (rgb[1][indx + 4] - rgb[c][indx + 4])) + rbhpfh[indx >> 1] = fabsf(fabsf((rgb[1][indx] - rgb[c][indx >> 1]) - (rgb[1][indx + 4] - rgb[c][(indx + 4) >> 1])) +
fabsf((rgb[1][indx - 4] - rgb[c][indx - 4]) - (rgb[1][indx] - rgb[c][indx])) - fabsf((rgb[1][indx - 4] - rgb[c][(indx - 4) >> 1]) - (rgb[1][indx] - rgb[c][indx >> 1])) -
fabsf((rgb[1][indx - 4] - rgb[c][indx - 4]) - (rgb[1][indx + 4] - rgb[c][indx + 4]))); fabsf((rgb[1][indx - 4] - rgb[c][(indx - 4) >> 1]) - (rgb[1][indx + 4] - rgb[c][(indx + 4) >> 1])));
//low and high pass 1D filters of G in vertical/horizontal directions //low and high pass 1D filters of G in vertical/horizontal directions
float glpfv = 0.25f * (2.f * rgb[1][indx] + rgb[1][indx + v2] + rgb[1][indx - v2]); float glpfv = (2.f * rgb[1][indx] + rgb[1][indx + v2] + rgb[1][indx - v2]);
float glpfh = 0.25f * (2.f * rgb[1][indx] + rgb[1][indx + 2] + rgb[1][indx - 2]); float glpfh = (2.f * rgb[1][indx] + rgb[1][indx + 2] + rgb[1][indx - 2]);
rblpfv[indx >> 1] = eps + fabsf(glpfv - 0.25f * (2.f * rgb[c][indx] + rgb[c][indx + v2] + rgb[c][indx - v2])); rblpfv[indx >> 1] = 0.25f * fabsf(glpfv - (2.f * rgb[c][indx >> 1] + rgb[c][(indx + v2) >> 1] + rgb[c][(indx - v2) >> 1]));
rblpfh[indx >> 1] = eps + fabsf(glpfh - 0.25f * (2.f * rgb[c][indx] + rgb[c][indx + 2] + rgb[c][indx - 2])); rblpfh[indx >> 1] = 0.25f * fabsf(glpfh - (2.f * rgb[c][indx >> 1] + rgb[c][(indx + 2) >> 1] + rgb[c][(indx - 2) >> 1]));
grblpfv[indx >> 1] = glpfv + 0.25f * (2.f * rgb[c][indx] + rgb[c][indx + v2] + rgb[c][indx - v2]); grblpfv[indx >> 1] = 0.25f * (glpfv + (2.f * rgb[c][indx >> 1] + rgb[c][(indx + v2) >> 1] + rgb[c][(indx - v2) >> 1]));
grblpfh[indx >> 1] = glpfh + 0.25f * (2.f * rgb[c][indx] + rgb[c][indx + 2] + rgb[c][indx - 2]); grblpfh[indx >> 1] = 0.25f * (glpfh + (2.f * rgb[c][indx >> 1] + rgb[c][(indx + 2) >> 1] + rgb[c][(indx - 2) >> 1]));
} }
} }
@ -414,10 +459,9 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
} }
#ifdef __SSE2__ #ifdef __SSE2__
vfloat zd3125v = F2V(0.3125f); vfloat zd3v = F2V(0.3f);
vfloat zd09375v = F2V(0.09375f);
vfloat zd1v = F2V(0.1f); vfloat zd1v = F2V(0.1f);
vfloat zd125v = F2V(0.125f); vfloat zd5v = F2V(0.5f);
#endif #endif
// along line segments, find the point along each segment that minimizes the colour variance // along line segments, find the point along each segment that minimizes the colour variance
@ -439,29 +483,27 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
//solve for the interpolation position that minimizes colour difference variance over the tile //solve for the interpolation position that minimizes colour difference variance over the tile
//vertical //vertical
vfloat gdiffv = zd3125v * (LC2VFU(rgb[1][indx + ts]) - LC2VFU(rgb[1][indx - ts])) + zd09375v * (LC2VFU(rgb[1][indx + ts + 1]) - LC2VFU(rgb[1][indx - ts + 1]) + LC2VFU(rgb[1][indx + ts - 1]) - LC2VFU(rgb[1][indx - ts - 1])); vfloat temp1 = zd3v * (LC2VFU(rgb[1][indx + ts + 1]) - LC2VFU(rgb[1][indx - ts - 1]));
vfloat deltgrbv = LC2VFU(rgb[c][indx]) - LC2VFU(rgb[1][indx]); vfloat temp2 = zd3v * (LC2VFU(rgb[1][indx - ts + 1]) - LC2VFU(rgb[1][indx + ts - 1]));
vfloat gdiffvv = (LC2VFU(rgb[1][indx + ts]) - LC2VFU(rgb[1][indx - ts])) + (temp1 - temp2);
vfloat deltgrbv = LVFU(rgb[c][indx >> 1]) - LC2VFU(rgb[1][indx]);
vfloat gradwtv = vabsf(zd25v * LVFU(rbhpfv[indx >> 1]) + zd125v * (LVFU(rbhpfv[(indx >> 1) + 1]) + LVFU(rbhpfv[(indx >> 1) - 1])) ) * (LVFU(grblpfv[(indx >> 1) - v1]) + LVFU(grblpfv[(indx >> 1) + v1])) / (epsv + zd1v * (LVFU(grblpfv[(indx >> 1) - v1]) + LVFU(grblpfv[(indx >> 1) + v1])) + LVFU(rblpfv[(indx >> 1) - v1]) + LVFU(rblpfv[(indx >> 1) + v1])); vfloat gradwtvv = (LVFU(rbhpfv[indx >> 1]) + zd5v * (LVFU(rbhpfv[(indx >> 1) + 1]) + LVFU(rbhpfv[(indx >> 1) - 1]))) * (LVFU(grblpfv[(indx >> 1) - v1]) + LVFU(grblpfv[(indx >> 1) + v1])) / (epsv + zd1v * (LVFU(grblpfv[(indx >> 1) - v1]) + LVFU(grblpfv[(indx >> 1) + v1])) + LVFU(rblpfv[(indx >> 1) - v1]) + LVFU(rblpfv[(indx >> 1) + v1]));
coeff00v += gradwtv * deltgrbv * deltgrbv; coeff00v += gradwtvv * deltgrbv * deltgrbv;
coeff01v += gradwtv * gdiffv * deltgrbv; coeff01v += gradwtvv * gdiffvv * deltgrbv;
coeff02v += gradwtv * gdiffv * gdiffv; coeff02v += gradwtvv * gdiffvv * gdiffvv;
//horizontal //horizontal
gdiffv = zd3125v * (LC2VFU(rgb[1][indx + 1]) - LC2VFU(rgb[1][indx - 1])) + zd09375v * (LC2VFU(rgb[1][indx + 1 + ts]) - LC2VFU(rgb[1][indx - 1 + ts]) + LC2VFU(rgb[1][indx + 1 - ts]) - LC2VFU(rgb[1][indx - 1 - ts])); vfloat gdiffhv = (LC2VFU(rgb[1][indx + 1]) - LC2VFU(rgb[1][indx - 1])) + (temp1 + temp2);
gradwtv = vabsf(zd25v * LVFU(rbhpfh[indx >> 1]) + zd125v * (LVFU(rbhpfh[(indx >> 1) + v1]) + LVFU(rbhpfh[(indx >> 1) - v1])) ) * (LVFU(grblpfh[(indx >> 1) - 1]) + LVFU(grblpfh[(indx >> 1) + 1])) / (epsv + zd1v * (LVFU(grblpfh[(indx >> 1) - 1]) + LVFU(grblpfh[(indx >> 1) + 1])) + LVFU(rblpfh[(indx >> 1) - 1]) + LVFU(rblpfh[(indx >> 1) + 1])); vfloat gradwthv = (LVFU(rbhpfh[indx >> 1]) + zd5v * (LVFU(rbhpfh[(indx >> 1) + v1]) + LVFU(rbhpfh[(indx >> 1) - v1]))) * (LVFU(grblpfh[(indx >> 1) - 1]) + LVFU(grblpfh[(indx >> 1) + 1])) / (epsv + zd1v * (LVFU(grblpfh[(indx >> 1) - 1]) + LVFU(grblpfh[(indx >> 1) + 1])) + LVFU(rblpfh[(indx >> 1) - 1]) + LVFU(rblpfh[(indx >> 1) + 1]));
coeff10v += gradwtv * deltgrbv * deltgrbv; coeff10v += gradwthv * deltgrbv * deltgrbv;
coeff11v += gradwtv * gdiffv * deltgrbv; coeff11v += gradwthv * gdiffhv * deltgrbv;
coeff12v += gradwtv * gdiffv * gdiffv; coeff12v += gradwthv * gdiffhv * gdiffhv;
// In Mathematica,
// f[x_]=Expand[Total[Flatten[
// ((1-x) RotateLeft[Gint,shift1]+x RotateLeft[Gint,shift2]-cfapad)^2[[dv;;-1;;2,dh;;-1;;2]]]]];
// extremum = -.5Coefficient[f[x],x]/Coefficient[f[x],x^2]
} }
coeff[0][0][c>>1] += vhadd(coeff00v); coeff[0][0][c>>1] += vhadd(coeff00v);
coeff[0][1][c>>1] += vhadd(coeff01v); coeff[0][1][c>>1] += vhadd(coeff01v);
coeff[0][2][c>>1] += vhadd(coeff02v); coeff[0][2][c>>1] += vhadd(coeff02v);
@ -476,19 +518,19 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
//solve for the interpolation position that minimizes colour difference variance over the tile //solve for the interpolation position that minimizes colour difference variance over the tile
//vertical //vertical
float gdiff = 0.3125f * (rgb[1][indx + ts] - rgb[1][indx - ts]) + 0.09375f * (rgb[1][indx + ts + 1] - rgb[1][indx - ts + 1] + rgb[1][indx + ts - 1] - rgb[1][indx - ts - 1]); float gdiff = (rgb[1][indx + ts] - rgb[1][indx - ts]) + 0.3f * (rgb[1][indx + ts + 1] - rgb[1][indx - ts + 1] + rgb[1][indx + ts - 1] - rgb[1][indx - ts - 1]);
float deltgrb = (rgb[c][indx] - rgb[1][indx]); float deltgrb = (rgb[c][indx >> 1] - rgb[1][indx]);
float gradwt = fabsf(0.25f * rbhpfv[indx >> 1] + 0.125f * (rbhpfv[(indx >> 1) + 1] + rbhpfv[(indx >> 1) - 1]) ) * (grblpfv[(indx >> 1) - v1] + grblpfv[(indx >> 1) + v1]) / (eps + 0.1f * (grblpfv[(indx >> 1) - v1] + grblpfv[(indx >> 1) + v1]) + rblpfv[(indx >> 1) - v1] + rblpfv[(indx >> 1) + v1]); float gradwt = (rbhpfv[indx >> 1] + 0.5f * (rbhpfv[(indx >> 1) + 1] + rbhpfv[(indx >> 1) - 1]) ) * (grblpfv[(indx >> 1) - v1] + grblpfv[(indx >> 1) + v1]) / (eps + 0.1f * (grblpfv[(indx >> 1) - v1] + grblpfv[(indx >> 1) + v1]) + rblpfv[(indx >> 1) - v1] + rblpfv[(indx >> 1) + v1]);
coeff[0][0][c>>1] += gradwt * deltgrb * deltgrb; coeff[0][0][c>>1] += gradwt * deltgrb * deltgrb;
coeff[0][1][c>>1] += gradwt * gdiff * deltgrb; coeff[0][1][c>>1] += gradwt * gdiff * deltgrb;
coeff[0][2][c>>1] += gradwt * gdiff * gdiff; coeff[0][2][c>>1] += gradwt * gdiff * gdiff;
//horizontal //horizontal
gdiff = 0.3125f * (rgb[1][indx + 1] - rgb[1][indx - 1]) + 0.09375f * (rgb[1][indx + 1 + ts] - rgb[1][indx - 1 + ts] + rgb[1][indx + 1 - ts] - rgb[1][indx - 1 - ts]); gdiff = (rgb[1][indx + 1] - rgb[1][indx - 1]) + 0.3f * (rgb[1][indx + 1 + ts] - rgb[1][indx - 1 + ts] + rgb[1][indx + 1 - ts] - rgb[1][indx - 1 - ts]);
gradwt = fabsf(0.25f * rbhpfh[indx >> 1] + 0.125f * (rbhpfh[(indx >> 1) + v1] + rbhpfh[(indx >> 1) - v1]) ) * (grblpfh[(indx >> 1) - 1] + grblpfh[(indx >> 1) + 1]) / (eps + 0.1f * (grblpfh[(indx >> 1) - 1] + grblpfh[(indx >> 1) + 1]) + rblpfh[(indx >> 1) - 1] + rblpfh[(indx >> 1) + 1]); gradwt = (rbhpfh[indx >> 1] + 0.5f * (rbhpfh[(indx >> 1) + v1] + rbhpfh[(indx >> 1) - v1]) ) * (grblpfh[(indx >> 1) - 1] + grblpfh[(indx >> 1) + 1]) / (eps + 0.1f * (grblpfh[(indx >> 1) - 1] + grblpfh[(indx >> 1) + 1]) + rblpfh[(indx >> 1) - 1] + rblpfh[(indx >> 1) + 1]);
coeff[1][0][c>>1] += gradwt * deltgrb * deltgrb; coeff[1][0][c>>1] += gradwt * deltgrb * deltgrb;
coeff[1][1][c>>1] += gradwt * gdiff * deltgrb; coeff[1][1][c>>1] += gradwt * gdiff * deltgrb;
@ -501,6 +543,19 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
} }
} }
for (int dir = 0; dir < 2; dir++) {
for (int k = 0; k < 3; k++) {
for (int c = 0; c < 2; c++) {
coeff[dir][k][c] *= 0.25f;
if(k == 1) {
coeff[dir][k][c] *= 0.3125f;
} else if(k == 2) {
coeff[dir][k][c] *= SQR(0.3125f);
}
}
}
}
for (int c = 0; c < 2; c++) { for (int c = 0; c < 2; c++) {
for (int dir = 0; dir < 2; dir++) { // vert/hor for (int dir = 0; dir < 2; dir++) { // vert/hor
@ -719,26 +774,51 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
// rgb values should be floating point number between 0 and 1 // rgb values should be floating point number between 0 and 1
// after white balance multipliers are applied // after white balance multipliers are applied
for (int rr = rrmin; rr < rrmax; rr++) #ifdef __SSE2__
for (int row = rr + top, cc = ccmin; cc < ccmax; cc++) { vfloat c65535v = F2V(65535.f);
int col = cc + left; vmask gmask = _mm_set_epi32(0, 0xffffffff, 0, 0xffffffff);
#endif
for (int rr = rrmin; rr < rrmax; rr++) {
int row = rr + top;
int cc = ccmin;
int col = cc + left;
int indx = row * width + col;
int indx1 = rr * ts + cc;
#ifdef __SSE2__
int c = FC(rr, cc);
if(c & 1) {
rgb[1][indx1] = rawData[row][col] / 65535.f;
indx++;
indx1++;
cc++;
col++;
c = FC(rr, cc);
}
for (; cc < ccmax - 7; cc += 8, col += 8, indx += 8, indx1 += 8) {
vfloat val1v = LVFU(rawData[row][col]) / c65535v;
vfloat val2v = LVFU(rawData[row][col + 4]) / c65535v;
STVFU(rgb[c][indx1 >> 1], _mm_shuffle_ps(val1v, val2v, _MM_SHUFFLE(2, 0, 2, 0)));
vfloat gtmpv = LVFU(Gtmp[indx >> 1]);
STVFU(rgb[1][indx1], vself(gmask, PERMUTEPS(gtmpv, _MM_SHUFFLE(1, 1, 0, 0)), val1v));
STVFU(rgb[1][indx1 + 4], vself(gmask, PERMUTEPS(gtmpv, _MM_SHUFFLE(3, 3, 2, 2)), val2v));
}
#endif
for (; cc < ccmax; cc++, col++, indx++, indx1++) {
int c = FC(rr, cc); int c = FC(rr, cc);
int indx = row * width + col; rgb[c][indx1 >> ((c & 1) ^ 1)] = rawData[row][col] / 65535.f;
int indx1 = rr * ts + cc;
rgb[c][indx1] = (rawData[row][col]) / 65535.0f;
if ((c & 1) == 0) { if ((c & 1) == 0) {
rgb[1][indx1] = Gtmp[indx]; rgb[1][indx1] = Gtmp[indx >> 1];
} }
} }
}
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//fill borders //fill borders
if (rrmin > 0) { if (rrmin > 0) {
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = ccmin; cc < ccmax; cc++) { for (int cc = ccmin; cc < ccmax; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][rr * ts + cc] = rgb[c][(border2 - rr) * ts + cc]; rgb[c][(rr * ts + cc) >> ((c & 1) ^ 1)] = rgb[c][((border2 - rr) * ts + cc) >> ((c & 1) ^ 1)];
rgb[1][rr * ts + cc] = rgb[1][(border2 - rr) * ts + cc]; rgb[1][rr * ts + cc] = rgb[1][(border2 - rr) * ts + cc];
} }
} }
@ -747,8 +827,10 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = ccmin; cc < ccmax; cc++) { for (int cc = ccmin; cc < ccmax; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rrmax + rr)*ts + cc] = (rawData[(height - rr - 2)][left + cc]) / 65535.0f; rgb[c][((rrmax + rr)*ts + cc) >> ((c & 1) ^ 1)] = (rawData[(height - rr - 2)][left + cc]) / 65535.f;
rgb[1][(rrmax + rr)*ts + cc] = Gtmp[(height - rr - 2) * width + left + cc]; if ((c & 1) == 0) {
rgb[1][(rrmax + rr)*ts + cc] = Gtmp[((height - rr - 2) * width + left + cc) >> 1];
}
} }
} }
@ -756,7 +838,7 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = rrmin; rr < rrmax; rr++) for (int rr = rrmin; rr < rrmax; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][rr * ts + cc] = rgb[c][rr * ts + border2 - cc]; rgb[c][(rr * ts + cc) >> ((c & 1) ^ 1)] = rgb[c][(rr * ts + border2 - cc) >> ((c & 1) ^ 1)];
rgb[1][rr * ts + cc] = rgb[1][rr * ts + border2 - cc]; rgb[1][rr * ts + cc] = rgb[1][rr * ts + border2 - cc];
} }
} }
@ -765,8 +847,10 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = rrmin; rr < rrmax; rr++) for (int rr = rrmin; rr < rrmax; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][rr * ts + ccmax + cc] = (rawData[(top + rr)][(width - cc - 2)]) / 65535.0f; rgb[c][(rr * ts + ccmax + cc) >> ((c & 1) ^ 1)] = (rawData[(top + rr)][(width - cc - 2)]) / 65535.f;
rgb[1][rr * ts + ccmax + cc] = Gtmp[(top + rr) * width + (width - cc - 2)]; if ((c & 1) == 0) {
rgb[1][rr * ts + ccmax + cc] = Gtmp[((top + rr) * width + (width - cc - 2)) >> 1];
}
} }
} }
@ -775,8 +859,10 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rr)*ts + cc] = (rawData[border2 - rr][border2 - cc]) / 65535.0f; rgb[c][(rr * ts + cc) >> ((c & 1) ^ 1)] = (rawData[border2 - rr][border2 - cc]) / 65535.f;
rgb[1][(rr)*ts + cc] = Gtmp[(border2 - rr) * width + border2 - cc]; if ((c & 1) == 0) {
rgb[1][rr * ts + cc] = Gtmp[((border2 - rr) * width + border2 - cc) >> 1];
}
} }
} }
@ -784,8 +870,10 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rrmax + rr)*ts + ccmax + cc] = (rawData[(height - rr - 2)][(width - cc - 2)]) / 65535.0f; rgb[c][((rrmax + rr)*ts + ccmax + cc) >> ((c & 1) ^ 1)] = (rawData[(height - rr - 2)][(width - cc - 2)]) / 65535.f;
rgb[1][(rrmax + rr)*ts + ccmax + cc] = Gtmp[(height - rr - 2) * width + (width - cc - 2)]; if ((c & 1) == 0) {
rgb[1][(rrmax + rr)*ts + ccmax + cc] = Gtmp[((height - rr - 2) * width + (width - cc - 2)) >> 1];
}
} }
} }
@ -793,8 +881,10 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rr)*ts + ccmax + cc] = (rawData[(border2 - rr)][(width - cc - 2)]) / 65535.0f; rgb[c][(rr * ts + ccmax + cc) >> ((c & 1) ^ 1)] = (rawData[(border2 - rr)][(width - cc - 2)]) / 65535.f;
rgb[1][(rr)*ts + ccmax + cc] = Gtmp[(border2 - rr) * width + (width - cc - 2)]; if ((c & 1) == 0) {
rgb[1][rr * ts + ccmax + cc] = Gtmp[((border2 - rr) * width + (width - cc - 2)) >> 1];
}
} }
} }
@ -802,8 +892,10 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 0; rr < border; rr++) for (int rr = 0; rr < border; rr++)
for (int cc = 0; cc < border; cc++) { for (int cc = 0; cc < border; cc++) {
int c = FC(rr, cc); int c = FC(rr, cc);
rgb[c][(rrmax + rr)*ts + cc] = (rawData[(height - rr - 2)][(border2 - cc)]) / 65535.0f; rgb[c][((rrmax + rr)*ts + cc) >> ((c & 1) ^ 1)] = (rawData[(height - rr - 2)][(border2 - cc)]) / 65535.f;
rgb[1][(rrmax + rr)*ts + cc] = Gtmp[(height - rr - 2) * width + (border2 - cc)]; if ((c & 1) == 0) {
rgb[1][(rrmax + rr)*ts + cc] = Gtmp[((height - rr - 2) * width + (border2 - cc)) >> 1];
}
} }
} }
@ -813,24 +905,20 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
if (!autoCA) { if (!autoCA) {
//manual CA correction; use red/blue slider values to set CA shift parameters //manual CA correction; use red/blue slider values to set CA shift parameters
for (int rr = 3; rr < rr1 - 3; rr++) for (int rr = 3; rr < rr1 - 3; rr++)
for (int row = rr + top, cc = 3, indx = rr * ts + cc; cc < cc1 - 3; cc++, indx++) { for (int cc = 3, indx = rr * ts + cc; cc < cc1 - 3; cc++, indx++) {
int col = cc + left;
int c = FC(rr, cc); int c = FC(rr, cc);
if (c != 1) { if (c != 1) {
//compute directional weights using image gradients //compute directional weights using image gradients
float wtu = 1.0 / SQR(eps + fabsf(rgb[1][(rr + 1) * ts + cc] - rgb[1][(rr - 1) * ts + cc]) + fabsf(rgb[c][(rr) * ts + cc] - rgb[c][(rr - 2) * ts + cc]) + fabsf(rgb[1][(rr - 1) * ts + cc] - rgb[1][(rr - 3) * ts + cc])); float wtu = 1.f / SQR(eps + fabsf(rgb[1][(rr + 1) * ts + cc] - rgb[1][(rr - 1) * ts + cc]) + fabsf(rgb[c][(rr * ts + cc) >> 1] - rgb[c][((rr - 2) * ts + cc) >> 1]) + fabsf(rgb[1][(rr - 1) * ts + cc] - rgb[1][(rr - 3) * ts + cc]));
float wtd = 1.0 / SQR(eps + fabsf(rgb[1][(rr - 1) * ts + cc] - rgb[1][(rr + 1) * ts + cc]) + fabsf(rgb[c][(rr) * ts + cc] - rgb[c][(rr + 2) * ts + cc]) + fabsf(rgb[1][(rr + 1) * ts + cc] - rgb[1][(rr + 3) * ts + cc])); float wtd = 1.f / SQR(eps + fabsf(rgb[1][(rr - 1) * ts + cc] - rgb[1][(rr + 1) * ts + cc]) + fabsf(rgb[c][(rr * ts + cc) >> 1] - rgb[c][((rr + 2) * ts + cc) >> 1]) + fabsf(rgb[1][(rr + 1) * ts + cc] - rgb[1][(rr + 3) * ts + cc]));
float wtl = 1.0 / SQR(eps + fabsf(rgb[1][(rr) * ts + cc + 1] - rgb[1][(rr) * ts + cc - 1]) + fabsf(rgb[c][(rr) * ts + cc] - rgb[c][(rr) * ts + cc - 2]) + fabsf(rgb[1][(rr) * ts + cc - 1] - rgb[1][(rr) * ts + cc - 3])); float wtl = 1.f / SQR(eps + fabsf(rgb[1][rr * ts + cc + 1] - rgb[1][rr * ts + cc - 1]) + fabsf(rgb[c][(rr * ts + cc) >> 1] - rgb[c][(rr * ts + cc - 2) >> 1]) + fabsf(rgb[1][rr * ts + cc - 1] - rgb[1][rr * ts + cc - 3]));
float wtr = 1.0 / SQR(eps + fabsf(rgb[1][(rr) * ts + cc - 1] - rgb[1][(rr) * ts + cc + 1]) + fabsf(rgb[c][(rr) * ts + cc] - rgb[c][(rr) * ts + cc + 2]) + fabsf(rgb[1][(rr) * ts + cc + 1] - rgb[1][(rr) * ts + cc + 3])); float wtr = 1.f / SQR(eps + fabsf(rgb[1][rr * ts + cc - 1] - rgb[1][rr * ts + cc + 1]) + fabsf(rgb[c][(rr * ts + cc) >> 1] - rgb[c][(rr * ts + cc + 2) >> 1]) + fabsf(rgb[1][rr * ts + cc + 1] - rgb[1][rr * ts + cc + 3]));
//store in rgb array the interpolated G value at R/B grid points using directional weighted average //store in rgb array the interpolated G value at R/B grid points using directional weighted average
rgb[1][indx] = (wtu * rgb[1][indx - v1] + wtd * rgb[1][indx + v1] + wtl * rgb[1][indx - 1] + wtr * rgb[1][indx + 1]) / (wtu + wtd + wtl + wtr); rgb[1][indx] = (wtu * rgb[1][indx - v1] + wtd * rgb[1][indx + v1] + wtl * rgb[1][indx - 1] + wtr * rgb[1][indx + 1]) / (wtu + wtd + wtl + wtr);
} }
if (row > -1 && row < height && col > -1 && col < width) {
Gtmp[row * width + col] = rgb[1][indx];
}
} }
float hfrac = -((float)(hblock - 0.5) / (hblsz - 2) - 0.5); float hfrac = -((float)(hblock - 0.5) / (hblsz - 2) - 0.5);
@ -884,34 +972,39 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
for (int rr = 4; rr < rr1 - 4; rr++) { for (int rr = 4; rr < rr1 - 4; rr++) {
int cc = 4 + (FC(rr, 2) & 1); int cc = 4 + (FC(rr, 2) & 1);
int c = FC(rr, cc); int c = FC(rr, cc);
int indx = (rr * ts + cc) >> 1;
int indxfc = (rr + shiftvfloor[c]) * ts + cc + shifthceil[c];
int indxff = (rr + shiftvfloor[c]) * ts + cc + shifthfloor[c];
int indxcc = (rr + shiftvceil[c]) * ts + cc + shifthceil[c];
int indxcf = (rr + shiftvceil[c]) * ts + cc + shifthfloor[c];
#ifdef __SSE2__ #ifdef __SSE2__
vfloat shifthfracv = F2V(shifthfrac[c]); vfloat shifthfracv = F2V(shifthfrac[c]);
vfloat shiftvfracv = F2V(shiftvfrac[c]); vfloat shiftvfracv = F2V(shiftvfrac[c]);
for (; cc < cc1 - 10; cc += 8) { for (; cc < cc1 - 10; cc += 8, indxfc += 8, indxff += 8, indxcc += 8, indxcf += 8, indx += 4) {
//perform CA correction using colour ratios or colour differences //perform CA correction using colour ratios or colour differences
vfloat Ginthfloorv = vintpf(shifthfracv, LC2VFU(rgb[1][(rr + shiftvfloor[c]) * ts + cc + shifthceil[c]]), LC2VFU(rgb[1][(rr + shiftvfloor[c]) * ts + cc + shifthfloor[c]])); vfloat Ginthfloorv = vintpf(shifthfracv, LC2VFU(rgb[1][indxfc]), LC2VFU(rgb[1][indxff]));
vfloat Ginthceilv = vintpf(shifthfracv, LC2VFU(rgb[1][(rr + shiftvceil[c]) * ts + cc + shifthceil[c]]), LC2VFU(rgb[1][(rr + shiftvceil[c]) * ts + cc + shifthfloor[c]])); vfloat Ginthceilv = vintpf(shifthfracv, LC2VFU(rgb[1][indxcc]), LC2VFU(rgb[1][indxcf]));
//Gint is bilinear interpolation of G at CA shift point //Gint is bilinear interpolation of G at CA shift point
vfloat Gintv = vintpf(shiftvfracv, Ginthceilv, Ginthfloorv); vfloat Gintv = vintpf(shiftvfracv, Ginthceilv, Ginthfloorv);
//determine R/B at grid points using colour differences at shift point plus interpolated G value at grid point //determine R/B at grid points using colour differences at shift point plus interpolated G value at grid point
//but first we need to interpolate G-R/G-B to grid points... //but first we need to interpolate G-R/G-B to grid points...
STVFU(grbdiff[((rr)*ts + cc) >> 1], Gintv - LC2VFU(rgb[c][(rr) * ts + cc])); STVFU(grbdiff[indx], Gintv - LVFU(rgb[c][indx]));
STVFU(gshift[((rr)*ts + cc) >> 1], Gintv); STVFU(gshift[indx], Gintv);
} }
#endif #endif
for (; cc < cc1 - 4; cc += 2) { for (; cc < cc1 - 4; cc += 2, indxfc += 2, indxff += 2, indxcc += 2, indxcf += 2, ++indx) {
//perform CA correction using colour ratios or colour differences //perform CA correction using colour ratios or colour differences
float Ginthfloor = intp(shifthfrac[c], rgb[1][(rr + shiftvfloor[c]) * ts + cc + shifthceil[c]], rgb[1][(rr + shiftvfloor[c]) * ts + cc + shifthfloor[c]]); float Ginthfloor = intp(shifthfrac[c], rgb[1][indxfc], rgb[1][indxff]);
float Ginthceil = intp(shifthfrac[c], rgb[1][(rr + shiftvceil[c]) * ts + cc + shifthceil[c]], rgb[1][(rr + shiftvceil[c]) * ts + cc + shifthfloor[c]]); float Ginthceil = intp(shifthfrac[c], rgb[1][indxcc], rgb[1][indxcf]);
//Gint is bilinear interpolation of G at CA shift point //Gint is bilinear interpolation of G at CA shift point
float Gint = intp(shiftvfrac[c], Ginthceil, Ginthfloor); float Gint = intp(shiftvfrac[c], Ginthceil, Ginthfloor);
//determine R/B at grid points using colour differences at shift point plus interpolated G value at grid point //determine R/B at grid points using colour differences at shift point plus interpolated G value at grid point
//but first we need to interpolate G-R/G-B to grid points... //but first we need to interpolate G-R/G-B to grid points...
grbdiff[((rr)*ts + cc) >> 1] = Gint - rgb[c][(rr) * ts + cc]; grbdiff[indx] = Gint - rgb[c][indx];
gshift[((rr)*ts + cc) >> 1] = Gint; gshift[indx] = Gint;
} }
} }
@ -920,54 +1013,105 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
shiftvfrac[0] /= 2.f; shiftvfrac[0] /= 2.f;
shiftvfrac[2] /= 2.f; shiftvfrac[2] /= 2.f;
// this loop does not deserve vectorization in mainly because the most expensive part with the divisions does not happen often (less than 1/10 in my tests) #ifdef __SSE2__
for (int rr = 8; rr < rr1 - 8; rr++) vfloat zd25v = F2V(0.25f);
for (int cc = 8 + (FC(rr, 2) & 1), c = FC(rr, cc), indx = rr * ts + cc; cc < cc1 - 8; cc += 2, indx += 2) { vfloat onev = F2V(1.f);
vfloat zd5v = F2V(0.5f);
vfloat epsv = F2V(eps);
#endif
for (int rr = 8; rr < rr1 - 8; rr++) {
int cc = 8 + (FC(rr, 2) & 1);
int c = FC(rr, cc);
int GRBdir0 = GRBdir[0][c];
int GRBdir1 = GRBdir[1][c];
#ifdef __SSE2__
vfloat shifthfracc = F2V(shifthfrac[c]);
vfloat shiftvfracc = F2V(shiftvfrac[c]);
for (int indx = rr * ts + cc; cc < cc1 - 14; cc += 8, indx += 8) {
//interpolate colour difference from optical R/B locations to grid locations
vfloat grbdiffinthfloor = vintpf(shifthfracc, LVFU(grbdiff[(indx - GRBdir1) >> 1]), LVFU(grbdiff[indx >> 1]));
vfloat grbdiffinthceil = vintpf(shifthfracc, LVFU(grbdiff[((rr - GRBdir0) * ts + cc - GRBdir1) >> 1]), LVFU(grbdiff[((rr - GRBdir0) * ts + cc) >> 1]));
//grbdiffint is bilinear interpolation of G-R/G-B at grid point
vfloat grbdiffint = vintpf(shiftvfracc, grbdiffinthceil, grbdiffinthfloor);
float grbdiffold = rgb[1][indx] - rgb[c][indx]; //now determine R/B at grid points using interpolated colour differences and interpolated G value at grid point
vfloat cinv = LVFU(rgb[c][indx >> 1]);
vfloat rinv = LC2VFU(rgb[1][indx]);
vfloat RBint = rinv - grbdiffint;
vmask cmask = vmaskf_ge(vabsf(RBint - cinv), zd25v * (RBint + cinv));
if(_mm_movemask_ps((vfloat)cmask)) {
// if for any of the 4 pixels the condition is true, do the math for all 4 pixels and mask the unused out at the end
//gradient weights using difference from G at CA shift points and G at grid points
vfloat p0 = onev / (epsv + vabsf(rinv - LVFU(gshift[indx >> 1])));
vfloat p1 = onev / (epsv + vabsf(rinv - LVFU(gshift[(indx - GRBdir1) >> 1])));
vfloat p2 = onev / (epsv + vabsf(rinv - LVFU(gshift[((rr - GRBdir0) * ts + cc) >> 1])));
vfloat p3 = onev / (epsv + vabsf(rinv - LVFU(gshift[((rr - GRBdir0) * ts + cc - GRBdir1) >> 1])));
grbdiffint = vself(cmask, (p0 * LVFU(grbdiff[indx >> 1]) + p1 * LVFU(grbdiff[(indx - GRBdir1) >> 1]) +
p2 * LVFU(grbdiff[((rr - GRBdir0) * ts + cc) >> 1]) + p3 * LVFU(grbdiff[((rr - GRBdir0) * ts + cc - GRBdir1) >> 1])) / (p0 + p1 + p2 + p3), grbdiffint);
}
vfloat grbdiffold = rinv - cinv;
RBint = rinv - grbdiffint;
RBint = vself(vmaskf_gt(vabsf(grbdiffold), vabsf(grbdiffint)), RBint, cinv);
RBint = vself(vmaskf_lt(grbdiffold * grbdiffint, ZEROV), rinv - zd5v * (grbdiffold + grbdiffint), RBint);
STVFU(rgb[c][indx >> 1], RBint);
}
#endif
for (int c = FC(rr, cc), indx = rr * ts + cc; cc < cc1 - 8; cc += 2, indx += 2) {
float grbdiffold = rgb[1][indx] - rgb[c][indx >> 1];
//interpolate colour difference from optical R/B locations to grid locations //interpolate colour difference from optical R/B locations to grid locations
float grbdiffinthfloor = intp(shifthfrac[c], grbdiff[(indx - GRBdir[1][c]) >> 1], grbdiff[indx >> 1]); float grbdiffinthfloor = intp(shifthfrac[c], grbdiff[(indx - GRBdir1) >> 1], grbdiff[indx >> 1]);
float grbdiffinthceil = intp(shifthfrac[c], grbdiff[((rr - GRBdir[0][c]) * ts + cc - GRBdir[1][c]) >> 1], grbdiff[((rr - GRBdir[0][c]) * ts + cc) >> 1]); float grbdiffinthceil = intp(shifthfrac[c], grbdiff[((rr - GRBdir0) * ts + cc - GRBdir1) >> 1], grbdiff[((rr - GRBdir0) * ts + cc) >> 1]);
//grbdiffint is bilinear interpolation of G-R/G-B at grid point //grbdiffint is bilinear interpolation of G-R/G-B at grid point
float grbdiffint = intp(shiftvfrac[c], grbdiffinthceil, grbdiffinthfloor); float grbdiffint = intp(shiftvfrac[c], grbdiffinthceil, grbdiffinthfloor);
//now determine R/B at grid points using interpolated colour differences and interpolated G value at grid point //now determine R/B at grid points using interpolated colour differences and interpolated G value at grid point
float RBint = rgb[1][indx] - grbdiffint; float RBint = rgb[1][indx] - grbdiffint;
if (fabsf(RBint - rgb[c][indx]) < 0.25f * (RBint + rgb[c][indx])) { if (fabsf(RBint - rgb[c][indx >> 1]) < 0.25f * (RBint + rgb[c][indx >> 1])) {
if (fabsf(grbdiffold) > fabsf(grbdiffint) ) { if (fabsf(grbdiffold) > fabsf(grbdiffint) ) {
rgb[c][indx] = RBint; rgb[c][indx >> 1] = RBint;
} }
} else { } else {
//gradient weights using difference from G at CA shift points and G at grid points //gradient weights using difference from G at CA shift points and G at grid points
float p0 = 1.0f / (eps + fabsf(rgb[1][indx] - gshift[indx >> 1])); float p0 = 1.f / (eps + fabsf(rgb[1][indx] - gshift[indx >> 1]));
float p1 = 1.0f / (eps + fabsf(rgb[1][indx] - gshift[(indx - GRBdir[1][c]) >> 1])); float p1 = 1.f / (eps + fabsf(rgb[1][indx] - gshift[(indx - GRBdir1) >> 1]));
float p2 = 1.0f / (eps + fabsf(rgb[1][indx] - gshift[((rr - GRBdir[0][c]) * ts + cc) >> 1])); float p2 = 1.f / (eps + fabsf(rgb[1][indx] - gshift[((rr - GRBdir0) * ts + cc) >> 1]));
float p3 = 1.0f / (eps + fabsf(rgb[1][indx] - gshift[((rr - GRBdir[0][c]) * ts + cc - GRBdir[1][c]) >> 1])); float p3 = 1.f / (eps + fabsf(rgb[1][indx] - gshift[((rr - GRBdir0) * ts + cc - GRBdir1) >> 1]));
grbdiffint = (p0 * grbdiff[indx >> 1] + p1 * grbdiff[(indx - GRBdir[1][c]) >> 1] + grbdiffint = (p0 * grbdiff[indx >> 1] + p1 * grbdiff[(indx - GRBdir1) >> 1] +
p2 * grbdiff[((rr - GRBdir[0][c]) * ts + cc) >> 1] + p3 * grbdiff[((rr - GRBdir[0][c]) * ts + cc - GRBdir[1][c]) >> 1]) / (p0 + p1 + p2 + p3) ; p2 * grbdiff[((rr - GRBdir0) * ts + cc) >> 1] + p3 * grbdiff[((rr - GRBdir0) * ts + cc - GRBdir1) >> 1]) / (p0 + p1 + p2 + p3) ;
//now determine R/B at grid points using interpolated colour differences and interpolated G value at grid point //now determine R/B at grid points using interpolated colour differences and interpolated G value at grid point
if (fabsf(grbdiffold) > fabsf(grbdiffint) ) { if (fabsf(grbdiffold) > fabsf(grbdiffint) ) {
rgb[c][indx] = rgb[1][indx] - grbdiffint; rgb[c][indx >> 1] = rgb[1][indx] - grbdiffint;
} }
} }
//if colour difference interpolation overshot the correction, just desaturate //if colour difference interpolation overshot the correction, just desaturate
if (grbdiffold * grbdiffint < 0) { if (grbdiffold * grbdiffint < 0) {
rgb[c][indx] = rgb[1][indx] - 0.5f * (grbdiffold + grbdiffint); rgb[c][indx >> 1] = rgb[1][indx] - 0.5f * (grbdiffold + grbdiffint);
} }
} }
}
// copy CA corrected results to temporary image matrix // copy CA corrected results to temporary image matrix
for (int rr = border; rr < rr1 - border; rr++) { for (int rr = border; rr < rr1 - border; rr++) {
int c = FC(rr + top, left + border + (FC(rr + top, 2) & 1)); int c = FC(rr + top, left + border + (FC(rr + top, 2) & 1));
int row = rr + top;
for (int row = rr + top, cc = border + (FC(rr, 2) & 1), indx = (row * width + cc + left) >> 1; cc < cc1 - border; cc += 2, indx++) { int cc = border + (FC(rr, 2) & 1);
RawDataTmp[indx] = 65535.0f * rgb[c][(rr) * ts + cc]; int indx = (row * width + cc + left) >> 1;
int indx1 = (rr * ts + cc) >> 1;
#ifdef __SSE2__
for (; indx < (row * width + cc1 - border - 7 + left) >> 1; indx+=4, indx1 += 4) {
STVFU(RawDataTmp[indx], c65535v * LVFU(rgb[c][indx1]));
}
#endif
for (; indx < (row * width + cc1 - border + left) >> 1; indx++, indx1++) {
RawDataTmp[indx] = 65535.f * rgb[c][indx1];
} }
} }
@ -993,17 +1137,23 @@ void RawImageSource::CA_correct_RT(const bool autoCA, const double cared, const
// copy temporary image matrix back to image matrix // copy temporary image matrix back to image matrix
#pragma omp for #pragma omp for
for(int row = 0; row < height; row++) for(int row = 0; row < height; row++) {
for(int col = 0 + (FC(row, 0) & 1), indx = (row * width + col) >> 1; col < width; col += 2, indx++) { int col = FC(row, 0) & 1;
int indx = (row * width + col) >> 1;
#ifdef __SSE2__
for(; col < width - 7; col += 8, indx += 4) {
STC2VFU(rawData[row][col], LVFU(RawDataTmp[indx]));
}
#endif
for(; col < width; col += 2, indx++) {
rawData[row][col] = RawDataTmp[indx]; rawData[row][col] = RawDataTmp[indx];
} }
}
} }
// clean up // clean up
free(buffer); free(buffer);
} }
free(Gtmp); free(Gtmp);

View File

@ -9,6 +9,7 @@ include_directories(${EXTRA_INCDIR}
${GTK_INCLUDE_DIRS} ${GTK_INCLUDE_DIRS}
${IPTCDATA_INCLUDE_DIRS} ${IPTCDATA_INCLUDE_DIRS}
${LCMS_INCLUDE_DIRS} ${LCMS_INCLUDE_DIRS}
${LENSFUN_INCLUDE_DIRS}
) )
link_directories("${PROJECT_SOURCE_DIR}/rtexif" link_directories("${PROJECT_SOURCE_DIR}/rtexif"
@ -109,8 +110,14 @@ set(RTENGINESOURCEFILES
slicer.cc slicer.cc
stdimagesource.cc stdimagesource.cc
utils.cc utils.cc
rtlensfun.cc
) )
if(LENSFUN_HAS_LOAD_DIRECTORY)
set_source_files_properties(rtlensfun.cc PROPERTIES COMPILE_DEFINITIONS RT_LENSFUN_HAS_LOAD_DIRECTORY)
endif()
if(NOT WITH_SYSTEM_KLT) if(NOT WITH_SYSTEM_KLT)
set(RTENGINESOURCEFILES ${RTENGINESOURCEFILES} set(RTENGINESOURCEFILES ${RTENGINESOURCEFILES}
klt/convolve.cc klt/convolve.cc
@ -153,6 +160,7 @@ target_link_libraries(rtengine rtexif
${PNG_LIBRARIES} ${PNG_LIBRARIES}
${TIFF_LIBRARIES} ${TIFF_LIBRARIES}
${ZLIB_LIBRARIES} ${ZLIB_LIBRARIES}
${LENSFUN_LIBRARIES}
) )
install(FILES ${CAMCONSTSFILE} DESTINATION "${DATADIR}" PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ) install(FILES ${CAMCONSTSFILE} DESTINATION "${DATADIR}" PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)

File diff suppressed because it is too large Load Diff

View File

@ -28,12 +28,12 @@ namespace rtengine
class Ciecam02 class Ciecam02
{ {
private: private:
static double d_factor( double f, double la ); static double d_factor ( double f, double la );
static float d_factorfloat( float f, float la ); static float d_factorfloat ( float f, float la );
static double calculate_fl_from_la_ciecam02( double la ); static double calculate_fl_from_la_ciecam02 ( double la );
static float calculate_fl_from_la_ciecam02float( float la ); static float calculate_fl_from_la_ciecam02float ( float la );
static double achromatic_response_to_white( double x, double y, double z, double d, double fl, double nbb, int gamu ); static double achromatic_response_to_white ( double x, double y, double z, double d, double fl, double nbb, int gamu );
static float achromatic_response_to_whitefloat( float x, float y, float z, float d, float fl, float nbb, int gamu ); static float achromatic_response_to_whitefloat ( float x, float y, float z, float d, float fl, float nbb, int gamu );
static void xyz_to_cat02 ( double &r, double &g, double &b, double x, double y, double z, int gamu ); static void xyz_to_cat02 ( double &r, double &g, double &b, double x, double y, double z, int gamu );
static void cat02_to_hpe ( double &rh, double &gh, double &bh, double r, double g, double b, int gamu ); static void cat02_to_hpe ( double &rh, double &gh, double &bh, double r, double g, double b, int gamu );
static void cat02_to_xyz ( double &x, double &y, double &z, double r, double g, double b, int gamu ); static void cat02_to_xyz ( double &x, double &y, double &z, double r, double g, double b, int gamu );
@ -45,97 +45,97 @@ private:
#ifdef __SSE2__ #ifdef __SSE2__
static void xyz_to_cat02float ( vfloat &r, vfloat &g, vfloat &b, vfloat x, vfloat y, vfloat z ); static void xyz_to_cat02float ( vfloat &r, vfloat &g, vfloat &b, vfloat x, vfloat y, vfloat z );
static void cat02_to_hpefloat ( vfloat &rh, vfloat &gh, vfloat &bh, vfloat r, vfloat g, vfloat b ); static void cat02_to_hpefloat ( vfloat &rh, vfloat &gh, vfloat &bh, vfloat r, vfloat g, vfloat b );
static vfloat nonlinear_adaptationfloat( vfloat c, vfloat fl ); static vfloat nonlinear_adaptationfloat ( vfloat c, vfloat fl );
#endif #endif
static void Aab_to_rgb( double &r, double &g, double &b, double A, double aa, double bb, double nbb ); static void Aab_to_rgb ( double &r, double &g, double &b, double A, double aa, double bb, double nbb );
static void calculate_ab( double &aa, double &bb, double h, double e, double t, double nbb, double a ); static void calculate_ab ( double &aa, double &bb, double h, double e, double t, double nbb, double a );
static double nonlinear_adaptation( double c, double fl ); static double nonlinear_adaptation ( double c, double fl );
static float nonlinear_adaptationfloat( float c, float fl ); static float nonlinear_adaptationfloat ( float c, float fl );
static double inverse_nonlinear_adaptation( double c, double fl ); static double inverse_nonlinear_adaptation ( double c, double fl );
static float inverse_nonlinear_adaptationfloat( float c, float fl ); static float inverse_nonlinear_adaptationfloat ( float c, float fl );
static void calculate_abfloat( float &aa, float &bb, float h, float e, float t, float nbb, float a ); static void calculate_abfloat ( float &aa, float &bb, float h, float e, float t, float nbb, float a );
static void Aab_to_rgbfloat( float &r, float &g, float &b, float A, float aa, float bb, float nbb ); static void Aab_to_rgbfloat ( float &r, float &g, float &b, float A, float aa, float bb, float nbb );
static void hpe_to_xyzfloat ( float &x, float &y, float &z, float r, float g, float b ); static void hpe_to_xyzfloat ( float &x, float &y, float &z, float r, float g, float b );
static void cat02_to_xyzfloat ( float &x, float &y, float &z, float r, float g, float b, int gamu ); static void cat02_to_xyzfloat ( float &x, float &y, float &z, float r, float g, float b, int gamu );
#ifdef __SSE2__ #ifdef __SSE2__
static vfloat inverse_nonlinear_adaptationfloat( vfloat c, vfloat fl ); static vfloat inverse_nonlinear_adaptationfloat ( vfloat c, vfloat fl );
static void calculate_abfloat( vfloat &aa, vfloat &bb, vfloat h, vfloat e, vfloat t, vfloat nbb, vfloat a ); static void calculate_abfloat ( vfloat &aa, vfloat &bb, vfloat h, vfloat e, vfloat t, vfloat nbb, vfloat a );
static void Aab_to_rgbfloat( vfloat &r, vfloat &g, vfloat &b, vfloat A, vfloat aa, vfloat bb, vfloat nbb ); static void Aab_to_rgbfloat ( vfloat &r, vfloat &g, vfloat &b, vfloat A, vfloat aa, vfloat bb, vfloat nbb );
static void hpe_to_xyzfloat ( vfloat &x, vfloat &y, vfloat &z, vfloat r, vfloat g, vfloat b ); static void hpe_to_xyzfloat ( vfloat &x, vfloat &y, vfloat &z, vfloat r, vfloat g, vfloat b );
static void cat02_to_xyzfloat ( vfloat &x, vfloat &y, vfloat &z, vfloat r, vfloat g, vfloat b ); static void cat02_to_xyzfloat ( vfloat &x, vfloat &y, vfloat &z, vfloat r, vfloat g, vfloat b );
#endif #endif
public: public:
Ciecam02 () {} Ciecam02 () {}
static void curvecolor(double satind, double satval, double &sres, double parsat); static void curvecolor (double satind, double satval, double &sres, double parsat);
static void curvecolorfloat(float satind, float satval, float &sres, float parsat); static void curvecolorfloat (float satind, float satval, float &sres, float parsat);
static void curveJ (double br, double contr, int db, LUTf & outCurve , LUTu & histogram ) ; static void curveJ (double br, double contr, int db, LUTf & outCurve, LUTu & histogram ) ;
static void curveJfloat (float br, float contr, const LUTu & histogram, LUTf & outCurve ) ; static void curveJfloat (float br, float contr, const LUTu & histogram, LUTf & outCurve ) ;
/** /**
* Inverse transform from CIECAM02 JCh to XYZ. * Inverse transform from CIECAM02 JCh to XYZ.
*/ */
static void jch2xyz_ciecam02( double &x, double &y, double &z, static void jch2xyz_ciecam02 ( double &x, double &y, double &z,
double J, double C, double h, double J, double C, double h,
double xw, double yw, double zw, double xw, double yw, double zw,
double yb, double la, double yb, double la,
double f, double c, double nc, int gamu, double n, double nbb, double ncb, double fl, double cz, double d, double aw); double f, double c, double nc, int gamu, double n, double nbb, double ncb, double fl, double cz, double d, double aw);
static void jch2xyz_ciecam02float( float &x, float &y, float &z, static void jch2xyz_ciecam02float ( float &x, float &y, float &z,
float J, float C, float h, float J, float C, float h,
float xw, float yw, float zw, float xw, float yw, float zw,
float f, float c, float nc, int gamu, float n, float nbb, float ncb, float fl, float cz, float d, float aw ); float f, float c, float nc, int gamu, float n, float nbb, float ncb, float fl, float cz, float d, float aw );
#ifdef __SSE2__ #ifdef __SSE2__
static void jch2xyz_ciecam02float( vfloat &x, vfloat &y, vfloat &z, static void jch2xyz_ciecam02float ( vfloat &x, vfloat &y, vfloat &z,
vfloat J, vfloat C, vfloat h, vfloat J, vfloat C, vfloat h,
vfloat xw, vfloat yw, vfloat zw, vfloat xw, vfloat yw, vfloat zw,
vfloat f, vfloat nc, vfloat n, vfloat nbb, vfloat ncb, vfloat fl, vfloat d, vfloat aw, vfloat reccmcz ); vfloat f, vfloat nc, vfloat n, vfloat nbb, vfloat ncb, vfloat fl, vfloat d, vfloat aw, vfloat reccmcz );
#endif #endif
/** /**
* Forward transform from XYZ to CIECAM02 JCh. * Forward transform from XYZ to CIECAM02 JCh.
*/ */
static void initcam1(double gamu, double yb, double pilotd, double f, double la, double xw, double yw, double zw, double &n, double &d, double &nbb, double &ncb, static void initcam1 (double gamu, double yb, double pilotd, double f, double la, double xw, double yw, double zw, double &n, double &d, double &nbb, double &ncb,
double &cz, double &aw, double &wh, double &pfl, double &fl, double &c); double &cz, double &aw, double &wh, double &pfl, double &fl, double &c);
static void initcam2(double gamu, double yb, double f, double la, double xw, double yw, double zw, double &n, double &d, double &nbb, double &ncb, static void initcam2 (double gamu, double yb, double pilotd, double f, double la, double xw, double yw, double zw, double &n, double &d, double &nbb, double &ncb,
double &cz, double &aw, double &fl); double &cz, double &aw, double &fl);
static void initcam1float(float gamu, float yb, float pilotd, float f, float la, float xw, float yw, float zw, float &n, float &d, float &nbb, float &ncb, static void initcam1float (float gamu, float yb, float pilotd, float f, float la, float xw, float yw, float zw, float &n, float &d, float &nbb, float &ncb,
float &cz, float &aw, float &wh, float &pfl, float &fl, float &c); float &cz, float &aw, float &wh, float &pfl, float &fl, float &c);
static void initcam2float(float gamu, float yb, float f, float la, float xw, float yw, float zw, float &n, float &d, float &nbb, float &ncb, static void initcam2float (float gamu, float yb, float pilotd, float f, float la, float xw, float yw, float zw, float &n, float &d, float &nbb, float &ncb,
float &cz, float &aw, float &fl); float &cz, float &aw, float &fl);
static void xyz2jchqms_ciecam02( double &J, double &C, double &h, static void xyz2jchqms_ciecam02 ( double &J, double &C, double &h,
double &Q, double &M, double &s, double &aw, double &fl, double &wh, double &Q, double &M, double &s, double &aw, double &fl, double &wh,
double x, double y, double z, double x, double y, double z,
double xw, double yw, double zw, double xw, double yw, double zw,
double yb, double la, double yb, double la,
double f, double c, double nc, double pilotd, int gamu , double n, double nbb, double ncb, double pfl, double cz, double d ); double f, double c, double nc, double pilotd, int gamu, double n, double nbb, double ncb, double pfl, double cz, double d );
static void xyz2jch_ciecam02float( float &J, float &C, float &h, static void xyz2jch_ciecam02float ( float &J, float &C, float &h,
float aw, float fl, float aw, float fl,
float x, float y, float z, float x, float y, float z,
float xw, float yw, float zw, float xw, float yw, float zw,
float c, float nc, float n, float nbb, float ncb, float cz, float d ); float c, float nc, float n, float nbb, float ncb, float cz, float d );
static void xyz2jchqms_ciecam02float( float &J, float &C, float &h, static void xyz2jchqms_ciecam02float ( float &J, float &C, float &h,
float &Q, float &M, float &s, float aw, float fl, float wh, float &Q, float &M, float &s, float aw, float fl, float wh,
float x, float y, float z, float x, float y, float z,
float xw, float yw, float zw, float xw, float yw, float zw,
float c, float nc, int gamu, float n, float nbb, float ncb, float pfl, float cz, float d ); float c, float nc, int gamu, float n, float nbb, float ncb, float pfl, float cz, float d );
#ifdef __SSE2__ #ifdef __SSE2__
static void xyz2jchqms_ciecam02float( vfloat &J, vfloat &C, vfloat &h, static void xyz2jchqms_ciecam02float ( vfloat &J, vfloat &C, vfloat &h,
vfloat &Q, vfloat &M, vfloat &s, vfloat aw, vfloat fl, vfloat wh, vfloat &Q, vfloat &M, vfloat &s, vfloat aw, vfloat fl, vfloat wh,
vfloat x, vfloat y, vfloat z, vfloat x, vfloat y, vfloat z,
vfloat xw, vfloat yw, vfloat zw, vfloat xw, vfloat yw, vfloat zw,
vfloat c, vfloat nc, vfloat n, vfloat nbb, vfloat ncb, vfloat pfl, vfloat cz, vfloat d ); vfloat c, vfloat nc, vfloat n, vfloat nbb, vfloat ncb, vfloat pfl, vfloat cz, vfloat d );
#endif #endif

View File

@ -305,7 +305,7 @@ rtengine::CLUTStore& rtengine::CLUTStore::getInstance()
return instance; return instance;
} }
std::shared_ptr<rtengine::HaldCLUT> rtengine::CLUTStore::getClut(const Glib::ustring& filename) std::shared_ptr<rtengine::HaldCLUT> rtengine::CLUTStore::getClut(const Glib::ustring& filename) const
{ {
std::shared_ptr<rtengine::HaldCLUT> result; std::shared_ptr<rtengine::HaldCLUT> result;

View File

@ -57,14 +57,14 @@ class CLUTStore final :
public: public:
static CLUTStore& getInstance(); static CLUTStore& getInstance();
std::shared_ptr<HaldCLUT> getClut(const Glib::ustring& filename); std::shared_ptr<HaldCLUT> getClut(const Glib::ustring& filename) const;
void clearCache(); void clearCache();
private: private:
CLUTStore(); CLUTStore();
Cache<Glib::ustring, std::shared_ptr<HaldCLUT>> cache; mutable Cache<Glib::ustring, std::shared_ptr<HaldCLUT>> cache;
}; };
} }

View File

@ -2562,6 +2562,12 @@ void CLASS kodak_radc_load_raw()
((short *)buf)[i] = 2048; ((short *)buf)[i] = 2048;
for (row=0; row < height; row+=4) { for (row=0; row < height; row+=4) {
FORC3 mul[c] = getbits(6); FORC3 mul[c] = getbits(6);
FORC3 {
if (!mul[c]) {
mul[c] = 1;
derror();
}
}
FORC3 { FORC3 {
val = ((0x1000000/last[c] + 0x7ff) >> 12) * mul[c]; val = ((0x1000000/last[c] + 0x7ff) >> 12) * mul[c];
s = val > 65564 ? 10:12; s = val > 65564 ? 10:12;
@ -2924,9 +2930,13 @@ void CLASS kodak_65000_load_raw()
pred[0] = pred[1] = 0; pred[0] = pred[1] = 0;
len = MIN (256, width-col); len = MIN (256, width-col);
ret = kodak_65000_decode (buf, len); ret = kodak_65000_decode (buf, len);
for (i=0; i < len; i++) for (i=0; i < len; i++) {
if ((RAW(row,col+i) = curve[ret ? buf[i] : int idx = ret ? buf[i] : (pred[i & 1] += buf[i]);
(pred[i & 1] += buf[i])]) >> 12) derror(); if(idx >=0 && idx <= 0xffff) {
if ((RAW(row,col+i) = curve[idx]) >> 12) derror();
} else
derror();
}
} }
} }
@ -9754,11 +9764,45 @@ static void copyFloatDataToInt(float * src, ushort * dst, size_t size, float max
fprintf(stderr, "DNG Float: NaN data found in input file\n"); fprintf(stderr, "DNG Float: NaN data found in input file\n");
} }
static int decompress(size_t srcLen, size_t dstLen, unsigned char *in, unsigned char *out) {
// At least in zlib 1.2.11 the uncompress function is not thread save while it is thread save in zlib 1.2.8
// This simple replacement is thread save. Used example code from https://zlib.net/zlib_how.html
int ret;
z_stream strm;
/* allocate inflate state */
strm.zalloc = Z_NULL;
strm.zfree = Z_NULL;
strm.opaque = Z_NULL;
strm.avail_in = 0;
strm.next_in = Z_NULL;
ret = inflateInit(&strm);
if (ret != Z_OK) {
return ret;
}
strm.avail_out = dstLen;
strm.next_out = out;
strm.avail_in = srcLen;
strm.next_in = in;
ret = inflate(&strm, Z_NO_FLUSH);
switch (ret) {
case Z_NEED_DICT:
ret = Z_DATA_ERROR; /* and fall through */
case Z_DATA_ERROR:
case Z_MEM_ERROR:
(void)inflateEnd(&strm);
return ret;
}
/* clean up and return */
(void)inflateEnd(&strm);
return ret == Z_STREAM_END ? Z_OK : Z_DATA_ERROR;
}
void CLASS deflate_dng_load_raw() { void CLASS deflate_dng_load_raw() {
float_raw_image = new float[raw_width * raw_height]; float_raw_image = new float[raw_width * raw_height];
#ifdef _OPENMP #ifdef _OPENMP
#pragma omp parallel for #pragma omp parallel for
#endif #endif
for (size_t i = 0; i < raw_width * raw_height; ++i) for (size_t i = 0; i < raw_width * raw_height; ++i)
float_raw_image[i] = 0.0f; float_raw_image[i] = 0.0f;
@ -9815,44 +9859,45 @@ void CLASS deflate_dng_load_raw() {
} }
uLongf dstLen = tile_width * tile_length * 4; uLongf dstLen = tile_width * tile_length * 4;
#if defined(_OPENMP) && ZLIB_VER_REVISION == 8 #ifdef _OPENMP
#pragma omp parallel #pragma omp parallel
#endif #endif
{ {
Bytef * cBuffer = new Bytef[maxCompressed]; Bytef * cBuffer = new Bytef[maxCompressed];
Bytef * uBuffer = new Bytef[dstLen]; Bytef * uBuffer = new Bytef[dstLen];
#if defined(_OPENMP) && ZLIB_VER_REVISION == 8 #ifdef _OPENMP
#pragma omp for collapse(2) nowait #pragma omp for collapse(2) schedule(dynamic) nowait
#endif #endif
for (size_t y = 0; y < raw_height; y += tile_length) { for (size_t y = 0; y < raw_height; y += tile_length) {
for (size_t x = 0; x < raw_width; x += tile_width) { for (size_t x = 0; x < raw_width; x += tile_width) {
size_t t = (y / tile_length) * tilesWide + (x / tile_width); size_t t = (y / tile_length) * tilesWide + (x / tile_width);
#if defined(_OPENMP) && ZLIB_VER_REVISION == 8 #ifdef _OPENMP
#pragma omp critical #pragma omp critical
#endif #endif
{ {
fseek(ifp, tileOffsets[t], SEEK_SET); fseek(ifp, tileOffsets[t], SEEK_SET);
fread(cBuffer, 1, tileBytes[t], ifp); fread(cBuffer, 1, tileBytes[t], ifp);
} }
int err = uncompress(uBuffer, &dstLen, cBuffer, tileBytes[t]); int err = decompress(tileBytes[t], dstLen, cBuffer, uBuffer);
if (err != Z_OK) { if (err != Z_OK) {
fprintf(stderr, "DNG Deflate: Failed uncompressing tile %d, with error %d\n", (int)t, err); fprintf(stderr, "DNG Deflate: Failed uncompressing tile %d, with error %d\n", (int)t, err);
} else if (ifd->sample_format == 3) { // Floating point data } else if (ifd->sample_format == 3) { // Floating point data
int bytesps = ifd->bps >> 3; int bytesps = ifd->bps >> 3;
size_t thisTileLength = y + tile_length > raw_height ? raw_height - y : tile_length; size_t thisTileLength = y + tile_length > raw_height ? raw_height - y : tile_length;
size_t thisTileWidth = x + tile_width > raw_width ? raw_width - x : tile_width; size_t thisTileWidth = x + tile_width > raw_width ? raw_width - x : tile_width;
for (size_t row = 0; row < thisTileLength; ++row) { for (size_t row = 0; row < thisTileLength; ++row) {
Bytef * src = uBuffer + row*tile_width*bytesps; Bytef * src = uBuffer + row*tile_width*bytesps;
Bytef * dst = (Bytef *)&float_raw_image[(y+row)*raw_width + x]; Bytef * dst = (Bytef *)&float_raw_image[(y+row)*raw_width + x];
if (predFactor) if (predFactor) {
decodeFPDeltaRow(src, dst, thisTileWidth, tile_width, bytesps, predFactor); decodeFPDeltaRow(src, dst, thisTileWidth, tile_width, bytesps, predFactor);
expandFloats(dst, thisTileWidth, bytesps); }
} expandFloats(dst, thisTileWidth, bytesps);
} else { // 32-bit Integer data }
// TODO } else { // 32-bit Integer data
// TODO
}
} }
}
} }
delete [] cBuffer; delete [] cBuffer;
@ -9901,4 +9946,4 @@ struct tiff_hdr {
/*RT*/#undef CLIP /*RT*/#undef CLIP
#ifdef __GNUC__ #ifdef __GNUC__
#pragma GCC diagnostic pop #pragma GCC diagnostic pop
#endif #endif

File diff suppressed because it is too large Load Diff

View File

@ -3,9 +3,10 @@
// Green Equilibration via directional average // Green Equilibration via directional average
// //
// copyright (c) 2008-2010 Emil Martinec <ejmartin@uchicago.edu> // copyright (c) 2008-2010 Emil Martinec <ejmartin@uchicago.edu>
// optimized for speed 2017 Ingo Weyrich <heckflosse67@gmx.de>
// //
// //
// code dated: February 12, 2011 // code dated: August 25, 2017
// //
// green_equil_RT.cc is free software: you can redistribute it and/or modify // green_equil_RT.cc is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by // it under the terms of the GNU General Public License as published by
@ -21,18 +22,72 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>. // along with this program. If not, see <http://www.gnu.org/licenses/>.
// //
//////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////
#define TS 256 // Tile size
#include <cmath> #include <cmath>
#include <cstdlib> #include <cstdlib>
#include <ctime> #include <ctime>
#include "rt_math.h" #include "rt_math.h"
#include "rawimagesource.h" #include "rawimagesource.h"
#include "opthelper.h"
namespace rtengine namespace rtengine
{ {
void RawImageSource::green_equilibrate_global(array2D<float> &rawData)
{
// global correction
int ng1 = 0, ng2 = 0;
double avgg1 = 0., avgg2 = 0.;
#ifdef _OPENMP
#pragma omp parallel for reduction(+: ng1, ng2, avgg1, avgg2) schedule(dynamic,16)
#endif
for (int i = border; i < H - border; i++) {
double avgg = 0.;
for (int j = border + ((FC(i, border) & 1) ^ 1); j < W - border; j += 2) {
avgg += rawData[i][j];
}
int ng = (W - 2 * border + (FC(i, border) & 1)) / 2;
if (i & 1) {
avgg2 += avgg;
ng2 += ng;
} else {
avgg1 += avgg;
ng1 += ng;
}
}
// Avoid division by zero
if(ng1 == 0 || avgg1 == 0.0) {
ng1 = 1;
avgg1 = 1.0;
}
if(ng2 == 0 || avgg2 == 0.0) {
ng2 = 1;
avgg2 = 1.0;
}
double corrg1 = (avgg1 / ng1 + avgg2 / ng2) / 2.0 / (avgg1 / ng1);
double corrg2 = (avgg1 / ng1 + avgg2 / ng2) / 2.0 / (avgg2 / ng2);
#ifdef _OPENMP
#pragma omp parallel for schedule(dynamic,16)
#endif
for (int i = border; i < H - border; i++) {
double corrg = (i & 1) ? corrg2 : corrg1;
for (int j = border + ((FC(i, border) & 1) ^ 1); j < W - border; j += 2) {
rawData[i][j] *= corrg;
}
}
}
//void green_equilibrate()//for dcraw implementation //void green_equilibrate()//for dcraw implementation
void RawImageSource::green_equilibrate(float thresh, array2D<float> &rawData) void RawImageSource::green_equilibrate(float thresh, array2D<float> &rawData)
{ {
@ -42,15 +97,29 @@ void RawImageSource::green_equilibrate(float thresh, array2D<float> &rawData)
int height = H, width = W; int height = H, width = W;
// local variables // local variables
float** rawptr = rawData; array2D<float> cfa(width / 2 + (width & 1), height);
array2D<float> cfa (width, height, rawptr);
//array2D<int> checker (width,height,ARRAY2D_CLEAR_DATA);
#ifdef _OPENMP
#pragma omp parallel for schedule(dynamic,16)
#endif
//int verbose=1; for (int i = 0; i < height; ++i) {
int j = (FC(i, 0) & 1) ^ 1;
#ifdef __SSE2__
static const float eps = 1.0; //tolerance to avoid dividing by zero for (; j < width - 7; j += 8) {
STVFU(cfa[i][j >> 1], LC2VFU(rawData[i][j]));
}
#endif
for (; j < width; j += 2) {
cfa[i][j >> 1] = rawData[i][j];
}
}
constexpr float eps = 1.f; //tolerance to avoid dividing by zero
const float thresh6 = 6 * thresh;
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
// Fill G interpolated values with border interpolation and input values // Fill G interpolated values with border interpolation and input values
@ -59,94 +128,118 @@ void RawImageSource::green_equilibrate(float thresh, array2D<float> &rawData)
//int counter, vtest; //int counter, vtest;
//The green equilibration algorithm starts here //The green equilibration algorithm starts here
/*
#ifdef _OPENMP
#pragma omp parallel for
#endif
for (int rr=1; rr < height-1; rr++)
for (int cc=3-(FC(rr,2)&1); cc < width-2; cc+=2) {
float pcorr = (cfa[rr+1][cc+1]-cfa[rr][cc])*(cfa[rr-1][cc-1]-cfa[rr][cc]);
float mcorr = (cfa[rr-1][cc+1]-cfa[rr][cc])*(cfa[rr+1][cc-1]-cfa[rr][cc]);
if (pcorr>0 && mcorr>0) {checker[rr][cc]=1;} else {checker[rr][cc]=0;}
checker[rr][cc]=1;//test what happens if we always interpolate
}
counter=vtest=0;
*/
//now smooth the cfa data //now smooth the cfa data
#ifdef _OPENMP #ifdef _OPENMP
#pragma omp parallel for schedule(dynamic,16) #pragma omp parallel
#endif
{
#ifdef __SSE2__
vfloat zd5v = F2V(0.5f);
vfloat onev = F2V(1.f);
vfloat threshv = F2V(thresh);
vfloat thresh6v = F2V(thresh6);
vfloat epsv = F2V(eps);
#endif
#ifdef _OPENMP
#pragma omp for schedule(dynamic,16)
#endif #endif
for (int rr = 4; rr < height - 4; rr++) for (int rr = 4; rr < height - 4; rr++) {
for (int cc = 5 - (FC(rr, 2) & 1); cc < width - 6; cc += 2) { int cc = 5 - (FC(rr, 2) & 1);
//if (checker[rr][cc]) { #ifdef __SSE2__
//%%%%%%%%%%%%%%%%%%%%%%
//neighbor checking code from Manuel Llorens Garcia
float o1_1 = cfa[(rr - 1)][cc - 1];
float o1_2 = cfa[(rr - 1)][cc + 1];
float o1_3 = cfa[(rr + 1)][cc - 1];
float o1_4 = cfa[(rr + 1)][cc + 1];
float o2_1 = cfa[(rr - 2)][cc];
float o2_2 = cfa[(rr + 2)][cc];
float o2_3 = cfa[(rr)][cc - 2];
float o2_4 = cfa[(rr)][cc + 2];
float d1 = (o1_1 + o1_2 + o1_3 + o1_4) * 0.25f; for (; cc < width - 12; cc += 8) {
float d2 = (o2_1 + o2_2 + o2_3 + o2_4) * 0.25f; //neighbour checking code from Manuel Llorens Garcia
vfloat o1_1 = LVFU(cfa[rr - 1][(cc - 1) >> 1]);
vfloat o1_2 = LVFU(cfa[rr - 1][(cc + 1) >> 1]);
vfloat o1_3 = LVFU(cfa[rr + 1][(cc - 1) >> 1]);
vfloat o1_4 = LVFU(cfa[rr + 1][(cc + 1) >> 1]);
vfloat o2_1 = LVFU(cfa[rr - 2][cc >> 1]);
vfloat o2_2 = LVFU(cfa[rr + 2][cc >> 1]);
vfloat o2_3 = LVFU(cfa[rr][(cc >> 1) - 1]);
vfloat o2_4 = LVFU(cfa[rr][(cc >> 1) + 1]);
float c1 = (fabs(o1_1 - o1_2) + fabs(o1_1 - o1_3) + fabs(o1_1 - o1_4) + fabs(o1_2 - o1_3) + fabs(o1_3 - o1_4) + fabs(o1_2 - o1_4)) / 6.f; vfloat d1 = (o1_1 + o1_2 + o1_3 + o1_4);
float c2 = (fabs(o2_1 - o2_2) + fabs(o2_1 - o2_3) + fabs(o2_1 - o2_4) + fabs(o2_2 - o2_3) + fabs(o2_3 - o2_4) + fabs(o2_2 - o2_4)) / 6.f; vfloat d2 = (o2_1 + o2_2 + o2_3 + o2_4);
//%%%%%%%%%%%%%%%%%%%%%%
//vote1=(checker[rr-2][cc]+checker[rr][cc-2]+checker[rr][cc+2]+checker[rr+2][cc]); vfloat c1 = (vabsf(o1_1 - o1_2) + vabsf(o1_1 - o1_3) + vabsf(o1_1 - o1_4) + vabsf(o1_2 - o1_3) + vabsf(o1_3 - o1_4) + vabsf(o1_2 - o1_4));
//vote2=(checker[rr+1][cc-1]+checker[rr+1][cc+1]+checker[rr-1][cc-1]+checker[rr-1][cc+1]); vfloat c2 = (vabsf(o2_1 - o2_2) + vabsf(o2_1 - o2_3) + vabsf(o2_1 - o2_4) + vabsf(o2_2 - o2_3) + vabsf(o2_3 - o2_4) + vabsf(o2_2 - o2_4));
//if ((vote1==0 || vote2==0) && (c1+c2)<2*thresh*fabs(d1-d2)) vtest++;
//if (vote1>0 && vote2>0 && (c1+c2)<4*thresh*fabs(d1-d2)) {
if ((c1 + c2) < 4 * thresh * fabs(d1 - d2)) {
//pixel interpolation
float gin = cfa[rr][cc];
float gse = (cfa[rr + 1][cc + 1]) + 0.5f * (cfa[rr][cc] - cfa[rr + 2][cc + 2]); vmask mask1 = vmaskf_lt(c1 + c2, thresh6v * vabsf(d1 - d2));
float gnw = (cfa[rr - 1][cc - 1]) + 0.5f * (cfa[rr][cc] - cfa[rr - 2][cc - 2]);
float gne = (cfa[rr - 1][cc + 1]) + 0.5f * (cfa[rr][cc] - cfa[rr - 2][cc + 2]);
float gsw = (cfa[rr + 1][cc - 1]) + 0.5f * (cfa[rr][cc] - cfa[rr + 2][cc - 2]);
if (_mm_movemask_ps((vfloat)mask1)) { // if for any of the 4 pixels the condition is true, do the maths for all 4 pixels and mask the unused out at the end
//pixel interpolation
vfloat gin = LVFU(cfa[rr][cc >> 1]);
vfloat gmp2p2 = gin - LVFU(cfa[rr + 2][(cc >> 1) + 1]);
vfloat gmm2m2 = gin - LVFU(cfa[rr - 2][(cc >> 1) - 1]);
vfloat gmm2p2 = gin - LVFU(cfa[rr - 2][(cc >> 1) + 1]);
vfloat gmp2m2 = gin - LVFU(cfa[rr + 2][(cc >> 1) - 1]);
float wtse = 1.0f / (eps + SQR(cfa[rr + 2][cc + 2] - cfa[rr][cc]) + SQR(cfa[rr + 3][cc + 3] - cfa[rr + 1][cc + 1])); vfloat gse = o1_4 + zd5v * gmp2p2;
float wtnw = 1.0f / (eps + SQR(cfa[rr - 2][cc - 2] - cfa[rr][cc]) + SQR(cfa[rr - 3][cc - 3] - cfa[rr - 1][cc - 1])); vfloat gnw = o1_1 + zd5v * gmm2m2;
float wtne = 1.0f / (eps + SQR(cfa[rr - 2][cc + 2] - cfa[rr][cc]) + SQR(cfa[rr - 3][cc + 3] - cfa[rr - 1][cc + 1])); vfloat gne = o1_2 + zd5v * gmm2p2;
float wtsw = 1.0f / (eps + SQR(cfa[rr + 2][cc - 2] - cfa[rr][cc]) + SQR(cfa[rr + 3][cc - 3] - cfa[rr + 1][cc - 1])); vfloat gsw = o1_3 + zd5v * gmp2m2;
float ginterp = (gse * wtse + gnw * wtnw + gne * wtne + gsw * wtsw) / (wtse + wtnw + wtne + wtsw); vfloat wtse = onev / (epsv + SQRV(gmp2p2) + SQRV(LVFU(cfa[rr + 3][(cc + 3) >> 1]) - o1_4));
vfloat wtnw = onev / (epsv + SQRV(gmm2m2) + SQRV(LVFU(cfa[rr - 3][(cc - 3) >> 1]) - o1_1));
vfloat wtne = onev / (epsv + SQRV(gmm2p2) + SQRV(LVFU(cfa[rr - 3][(cc + 3) >> 1]) - o1_2));
vfloat wtsw = onev / (epsv + SQRV(gmp2m2) + SQRV(LVFU(cfa[rr + 3][(cc - 3) >> 1]) - o1_3));
if ( ((ginterp - gin) < thresh * (ginterp + gin)) ) { vfloat ginterp = (gse * wtse + gnw * wtnw + gne * wtne + gsw * wtsw) / (wtse + wtnw + wtne + wtsw);
rawData[rr][cc] = 0.5f * (ginterp + gin);
//counter++; vfloat val = vself(vmaskf_lt(ginterp - gin, threshv * (ginterp + gin)), zd5v * (ginterp + gin), gin);
val = vself(mask1, val, gin);
STC2VFU(rawData[rr][cc], val);
} }
} }
// } #endif
for (; cc < width - 6; cc += 2) {
//neighbour checking code from Manuel Llorens Garcia
float o1_1 = cfa[rr - 1][(cc - 1) >> 1];
float o1_2 = cfa[rr - 1][(cc + 1) >> 1];
float o1_3 = cfa[rr + 1][(cc - 1) >> 1];
float o1_4 = cfa[rr + 1][(cc + 1) >> 1];
float o2_1 = cfa[rr - 2][cc >> 1];
float o2_2 = cfa[rr + 2][cc >> 1];
float o2_3 = cfa[rr][(cc - 2) >> 1];
float o2_4 = cfa[rr][(cc + 2) >> 1];
float d1 = (o1_1 + o1_2) + (o1_3 + o1_4);
float d2 = (o2_1 + o2_2) + (o2_3 + o2_4);
float c1 = (fabs(o1_1 - o1_2) + fabs(o1_1 - o1_3) + fabs(o1_1 - o1_4) + fabs(o1_2 - o1_3) + fabs(o1_3 - o1_4) + fabs(o1_2 - o1_4));
float c2 = (fabs(o2_1 - o2_2) + fabs(o2_1 - o2_3) + fabs(o2_1 - o2_4) + fabs(o2_2 - o2_3) + fabs(o2_3 - o2_4) + fabs(o2_2 - o2_4));
if (c1 + c2 < thresh6 * fabs(d1 - d2)) {
//pixel interpolation
float gin = cfa[rr][cc >> 1];
float gmp2p2 = gin - cfa[rr + 2][(cc + 2) >> 1];
float gmm2m2 = gin - cfa[rr - 2][(cc - 2) >> 1];
float gmm2p2 = gin - cfa[rr - 2][(cc + 2) >> 1];
float gmp2m2 = gin - cfa[rr + 2][(cc - 2) >> 1];
float gse = o1_4 + 0.5f * gmp2p2;
float gnw = o1_1 + 0.5f * gmm2m2;
float gne = o1_2 + 0.5f * gmm2p2;
float gsw = o1_3 + 0.5f * gmp2m2;
float wtse = 1.f / (eps + SQR(gmp2p2) + SQR(cfa[rr + 3][(cc + 3) >> 1] - o1_4));
float wtnw = 1.f / (eps + SQR(gmm2m2) + SQR(cfa[rr - 3][(cc - 3) >> 1] - o1_1));
float wtne = 1.f / (eps + SQR(gmm2p2) + SQR(cfa[rr - 3][(cc + 3) >> 1] - o1_2));
float wtsw = 1.f / (eps + SQR(gmp2m2) + SQR(cfa[rr + 3][(cc - 3) >> 1] - o1_3));
float ginterp = (gse * wtse + gnw * wtnw + gne * wtne + gsw * wtsw) / (wtse + wtnw + wtne + wtsw);
if (ginterp - gin < thresh * (ginterp + gin)) {
rawData[rr][cc] = 0.5f * (ginterp + gin);
}
}
}
} }
}
//printf("pixfix count= %d; vtest= %d \n",counter,vtest);
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
// done
/*t2 = clock();
dt = ((double)(t2-t1)) / CLOCKS_PER_SEC;
if (verbose) {
fprintf(stderr,_("elapsed time = %5.3fs\n"),dt);
}*/
} }
} }
#undef TS

View File

@ -33,48 +33,48 @@ namespace rtengine
extern const Settings* settings; extern const Settings* settings;
ImProcCoordinator::ImProcCoordinator () ImProcCoordinator::ImProcCoordinator ()
: orig_prev(nullptr), oprevi(nullptr), oprevl(nullptr), nprevl(nullptr), previmg(nullptr), workimg(nullptr), : orig_prev (nullptr), oprevi (nullptr), oprevl (nullptr), nprevl (nullptr), previmg (nullptr), workimg (nullptr),
ncie(nullptr), imgsrc(nullptr), shmap(nullptr), lastAwbEqual(0.), lastAwbTempBias(0.0), ipf(&params, true), monitorIntent(RI_RELATIVE), ncie (nullptr), imgsrc (nullptr), shmap (nullptr), lastAwbEqual (0.), lastAwbTempBias (0.0), ipf (&params, true), monitorIntent (RI_RELATIVE),
softProof(false), gamutCheck(false), scale(10), highDetailPreprocessComputed(false), highDetailRawComputed(false), softProof (false), gamutCheck (false), scale (10), highDetailPreprocessComputed (false), highDetailRawComputed (false),
allocated(false), bwAutoR(-9000.f), bwAutoG(-9000.f), bwAutoB(-9000.f), CAMMean(NAN), allocated (false), bwAutoR (-9000.f), bwAutoG (-9000.f), bwAutoB (-9000.f), CAMMean (NAN),
hltonecurve(65536), hltonecurve (65536),
shtonecurve(65536), shtonecurve (65536),
tonecurve(65536, 0), //,1); tonecurve (65536, 0), //,1);
lumacurve(32770, 0), // lumacurve[32768] and lumacurve[32769] will be set to 32768 and 32769 later to allow linear interpolation lumacurve (32770, 0), // lumacurve[32768] and lumacurve[32769] will be set to 32768 and 32769 later to allow linear interpolation
chroma_acurve(65536, 0), chroma_acurve (65536, 0),
chroma_bcurve(65536, 0), chroma_bcurve (65536, 0),
satcurve(65536, 0), satcurve (65536, 0),
lhskcurve(65536, 0), lhskcurve (65536, 0),
clcurve(65536, 0), clcurve (65536, 0),
conversionBuffer(1, 1), conversionBuffer (1, 1),
wavclCurve(65536, 0), wavclCurve (65536, 0),
clToningcurve(65536, 0), clToningcurve (65536, 0),
cl2Toningcurve(65536, 0), cl2Toningcurve (65536, 0),
Noisecurve(65536, 0), Noisecurve (65536, 0),
NoiseCCcurve(65536, 0), NoiseCCcurve (65536, 0),
vhist16(65536), vhist16bw(65536), vhist16 (65536), vhist16bw (65536),
lhist16CAM(65536), lhist16CAM (65536),
lhist16CCAM(65536), lhist16CCAM (65536),
lhist16RETI(), lhist16RETI(),
lhist16LClad(65536), lhist16LClad (65536),
histRed(256), histRedRaw(256), histRed (256), histRedRaw (256),
histGreen(256), histGreenRaw(256), histGreen (256), histGreenRaw (256),
histBlue(256), histBlueRaw(256), histBlue (256), histBlueRaw (256),
histLuma(256), histLuma (256),
histToneCurve(256), histToneCurve (256),
histToneCurveBW(256), histToneCurveBW (256),
histLCurve(256), histLCurve (256),
histCCurve(256), histCCurve (256),
histLLCurve(256), histLLCurve (256),
histLCAM(256), histLCAM (256),
histCCAM(256), histCCAM (256),
histClad(256), histClad (256),
bcabhist(256), bcabhist (256),
histChroma(256), histChroma (256),
histLRETI(256), histLRETI (256),
CAMBrightCurveJ(), CAMBrightCurveQ(), CAMBrightCurveJ(), CAMBrightCurveQ(),
@ -82,15 +82,15 @@ ImProcCoordinator::ImProcCoordinator ()
gCurve(), gCurve(),
bCurve(), bCurve(),
ctColorCurve(), ctColorCurve(),
rcurvehist(256), rcurvehistCropped(256), rbeforehist(256), rcurvehist (256), rcurvehistCropped (256), rbeforehist (256),
gcurvehist(256), gcurvehistCropped(256), gbeforehist(256), gcurvehist (256), gcurvehistCropped (256), gbeforehist (256),
bcurvehist(256), bcurvehistCropped(256), bbeforehist(256), bcurvehist (256), bcurvehistCropped (256), bbeforehist (256),
fw(0), fh(0), tr(0), fw (0), fh (0), tr (0),
fullw(1), fullh(1), fullw (1), fullh (1),
pW(-1), pH(-1), pW (-1), pH (-1),
plistener(nullptr), imageListener(nullptr), aeListener(nullptr), acListener(nullptr), abwListener(nullptr), awbListener(nullptr), frameCountListener(nullptr), imageTypeListener(nullptr), actListener(nullptr), adnListener(nullptr), awavListener(nullptr), dehaListener(nullptr), hListener(nullptr), plistener (nullptr), imageListener (nullptr), aeListener (nullptr), acListener (nullptr), abwListener (nullptr), awbListener (nullptr), frameCountListener (nullptr), imageTypeListener (nullptr), actListener (nullptr), adnListener (nullptr), awavListener (nullptr), dehaListener (nullptr), hListener (nullptr),
resultValid(false), lastOutputProfile("BADFOOD"), lastOutputIntent(RI__COUNT), lastOutputBPC(false), thread(nullptr), changeSinceLast(0), updaterRunning(false), destroying(false), utili(false), autili(false), resultValid (false), lastOutputProfile ("BADFOOD"), lastOutputIntent (RI__COUNT), lastOutputBPC (false), thread (nullptr), changeSinceLast (0), updaterRunning (false), destroying (false), utili (false), autili (false),
butili(false), ccutili(false), cclutili(false), clcutili(false), opautili(false), wavcontlutili(false), colourToningSatLimit(0.f), colourToningSatLimitOpacity(0.f) butili (false), ccutili (false), cclutili (false), clcutili (false), opautili (false), wavcontlutili (false), colourToningSatLimit (0.f), colourToningSatLimitOpacity (0.f)
{} {}
void ImProcCoordinator::assign (ImageSource* imgsrc) void ImProcCoordinator::assign (ImageSource* imgsrc)
@ -134,7 +134,7 @@ DetailedCrop* ImProcCoordinator::createCrop (::EditDataProvider *editDataProvid
void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall) void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
{ {
MyMutex::MyLock processingLock(mProcessing); MyMutex::MyLock processingLock (mProcessing);
int numofphases = 14; int numofphases = 14;
int readyphase = 0; int readyphase = 0;
@ -165,15 +165,15 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
ColorManagementParams cmp = params.icm; ColorManagementParams cmp = params.icm;
LCurveParams lcur = params.labCurve; LCurveParams lcur = params.labCurve;
if( !highDetailNeeded ) { if ( !highDetailNeeded ) {
// if below 100% magnification, take a fast path // if below 100% magnification, take a fast path
if(rp.bayersensor.method != RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::none] && rp.bayersensor.method != RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::mono]) { if (rp.bayersensor.method != RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::none] && rp.bayersensor.method != RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::mono]) {
rp.bayersensor.method = RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::fast]; rp.bayersensor.method = RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::fast];
} }
//bayerrp.all_enhance = false; //bayerrp.all_enhance = false;
if(rp.xtranssensor.method != RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::none] && rp.xtranssensor.method != RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::mono]) { if (rp.xtranssensor.method != RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::none] && rp.xtranssensor.method != RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::mono]) {
rp.xtranssensor.method = RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::fast]; rp.xtranssensor.method = RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::fast];
} }
@ -184,16 +184,16 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
progress ("Applying white balance, color correction & sRGB conversion...", 100 * readyphase / numofphases); progress ("Applying white balance, color correction & sRGB conversion...", 100 * readyphase / numofphases);
if(frameCountListener) { if (frameCountListener) {
frameCountListener->FrameCountChanged(imgsrc->getFrameCount(), params.raw.bayersensor.imageNum); frameCountListener->FrameCountChanged (imgsrc->getFrameCount(), params.raw.bayersensor.imageNum);
} }
// raw auto CA is bypassed if no high detail is needed, so we have to compute it when high detail is needed // raw auto CA is bypassed if no high detail is needed, so we have to compute it when high detail is needed
if ( (todo & M_PREPROC) || (!highDetailPreprocessComputed && highDetailNeeded)) { if ( (todo & M_PREPROC) || (!highDetailPreprocessComputed && highDetailNeeded)) {
imgsrc->setCurrentFrame(params.raw.bayersensor.imageNum); imgsrc->setCurrentFrame (params.raw.bayersensor.imageNum);
imgsrc->preprocess( rp, params.lensProf, params.coarse ); imgsrc->preprocess ( rp, params.lensProf, params.coarse );
imgsrc->getRAWHistogram( histRedRaw, histGreenRaw, histBlueRaw ); imgsrc->getRAWHistogram ( histRedRaw, histGreenRaw, histBlueRaw );
if (highDetailNeeded) { if (highDetailNeeded) {
highDetailPreprocessComputed = true; highDetailPreprocessComputed = true;
@ -214,8 +214,8 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
*/ */
// If high detail (=100%) is newly selected, do a demosaic update, since the last was just with FAST // If high detail (=100%) is newly selected, do a demosaic update, since the last was just with FAST
if(imageTypeListener) { if (imageTypeListener) {
imageTypeListener->imageTypeChanged(imgsrc->isRAW(), imgsrc->getSensorType() == ST_BAYER, imgsrc->getSensorType() == ST_FUJI_XTRANS); imageTypeListener->imageTypeChanged (imgsrc->isRAW(), imgsrc->getSensorType() == ST_BAYER, imgsrc->getSensorType() == ST_FUJI_XTRANS);
} }
if ( (todo & M_RAW) if ( (todo & M_RAW)
@ -225,13 +225,13 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
if (settings->verbose) { if (settings->verbose) {
if (imgsrc->getSensorType() == ST_BAYER) { if (imgsrc->getSensorType() == ST_BAYER) {
printf("Demosaic Bayer image n.%d using method: %s\n", rp.bayersensor.imageNum + 1, rp.bayersensor.method.c_str()); printf ("Demosaic Bayer image n.%d using method: %s\n", rp.bayersensor.imageNum + 1, rp.bayersensor.method.c_str());
} else if (imgsrc->getSensorType() == ST_FUJI_XTRANS) { } else if (imgsrc->getSensorType() == ST_FUJI_XTRANS) {
printf("Demosaic X-Trans image with using method: %s\n", rp.xtranssensor.method.c_str()); printf ("Demosaic X-Trans image with using method: %s\n", rp.xtranssensor.method.c_str());
} }
} }
imgsrc->demosaic( rp);//enabled demosaic imgsrc->demosaic ( rp); //enabled demosaic
// if a demosaic happened we should also call getimage later, so we need to set the M_INIT flag // if a demosaic happened we should also call getimage later, so we need to set the M_INIT flag
todo |= M_INIT; todo |= M_INIT;
@ -242,10 +242,10 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} }
if (params.retinex.enabled) { if (params.retinex.enabled) {
lhist16RETI(32768); lhist16RETI (32768);
lhist16RETI.clear(); lhist16RETI.clear();
imgsrc->retinexPrepareBuffers(params.icm, params.retinex, conversionBuffer, lhist16RETI); imgsrc->retinexPrepareBuffers (params.icm, params.retinex, conversionBuffer, lhist16RETI);
} }
} }
@ -256,12 +256,12 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
LUTf cdcurve (65536, 0); LUTf cdcurve (65536, 0);
LUTf mapcurve (65536, 0); LUTf mapcurve (65536, 0);
imgsrc->retinexPrepareCurves(params.retinex, cdcurve, mapcurve, dehatransmissionCurve, dehagaintransmissionCurve, dehacontlutili, mapcontlutili, useHsl, lhist16RETI, histLRETI); imgsrc->retinexPrepareCurves (params.retinex, cdcurve, mapcurve, dehatransmissionCurve, dehagaintransmissionCurve, dehacontlutili, mapcontlutili, useHsl, lhist16RETI, histLRETI);
float minCD, maxCD, mini, maxi, Tmean, Tsigma, Tmin, Tmax; float minCD, maxCD, mini, maxi, Tmean, Tsigma, Tmin, Tmax;
imgsrc->retinex( params.icm, params.retinex, params.toneCurve, cdcurve, mapcurve, dehatransmissionCurve, dehagaintransmissionCurve, conversionBuffer, dehacontlutili, mapcontlutili, useHsl, minCD, maxCD, mini, maxi, Tmean, Tsigma, Tmin, Tmax, histLRETI);//enabled Retinex imgsrc->retinex ( params.icm, params.retinex, params.toneCurve, cdcurve, mapcurve, dehatransmissionCurve, dehagaintransmissionCurve, conversionBuffer, dehacontlutili, mapcontlutili, useHsl, minCD, maxCD, mini, maxi, Tmean, Tsigma, Tmin, Tmax, histLRETI); //enabled Retinex
if(dehaListener) { if (dehaListener) {
dehaListener->minmaxChanged(maxCD, minCD, mini, maxi, Tmean, Tsigma, Tmin, Tmax); dehaListener->minmaxChanged (maxCD, minCD, mini, maxi, Tmean, Tsigma, Tmin, Tmax);
} }
} }
@ -270,7 +270,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
// It has to be done there, because the next 'if' statement will use the value computed here // It has to be done there, because the next 'if' statement will use the value computed here
if (todo & M_AUTOEXP) { if (todo & M_AUTOEXP) {
if (params.toneCurve.autoexp) {// this enabled HLRecovery if (params.toneCurve.autoexp) {// this enabled HLRecovery
if (ToneCurveParams::HLReconstructionNecessary(histRedRaw, histGreenRaw, histBlueRaw) && !params.toneCurve.hrenabled) { if (ToneCurveParams::HLReconstructionNecessary (histRedRaw, histGreenRaw, histBlueRaw) && !params.toneCurve.hrenabled) {
// switching params.toneCurve.hrenabled to true -> shouting in listener's ears! // switching params.toneCurve.hrenabled to true -> shouting in listener's ears!
params.toneCurve.hrenabled = true; params.toneCurve.hrenabled = true;
@ -281,9 +281,9 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} }
if (todo & (M_INIT | M_LINDENOISE)) { if (todo & (M_INIT | M_LINDENOISE)) {
MyMutex::MyLock initLock(minit); // Also used in crop window MyMutex::MyLock initLock (minit); // Also used in crop window
imgsrc->HLRecovery_Global( params.toneCurve); // this handles Color HLRecovery imgsrc->HLRecovery_Global ( params.toneCurve); // this handles Color HLRecovery
if (settings->verbose) { if (settings->verbose) {
@ -297,16 +297,16 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} else if (params.wb.method == "Auto") { } else if (params.wb.method == "Auto") {
if (lastAwbEqual != params.wb.equal || lastAwbTempBias != params.wb.tempBias) { if (lastAwbEqual != params.wb.equal || lastAwbTempBias != params.wb.tempBias) {
double rm, gm, bm; double rm, gm, bm;
imgsrc->getAutoWBMultipliers(rm, gm, bm); imgsrc->getAutoWBMultipliers (rm, gm, bm);
if (rm != -1.) { if (rm != -1.) {
autoWB.update(rm, gm, bm, params.wb.equal, params.wb.tempBias); autoWB.update (rm, gm, bm, params.wb.equal, params.wb.tempBias);
lastAwbEqual = params.wb.equal; lastAwbEqual = params.wb.equal;
lastAwbTempBias = params.wb.tempBias; lastAwbTempBias = params.wb.tempBias;
} else { } else {
lastAwbEqual = -1.; lastAwbEqual = -1.;
lastAwbTempBias = 0.0; lastAwbTempBias = 0.0;
autoWB.useDefaults(params.wb.equal); autoWB.useDefaults (params.wb.equal);
} }
//double rr,gg,bb; //double rr,gg,bb;
@ -318,11 +318,12 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
params.wb.temperature = currWB.getTemp (); params.wb.temperature = currWB.getTemp ();
params.wb.green = currWB.getGreen (); params.wb.green = currWB.getGreen ();
if(params.wb.method == "Auto" && awbListener) {
awbListener->WBChanged(params.wb.temperature, params.wb.green); if (params.wb.method == "Auto" && awbListener) {
awbListener->WBChanged (params.wb.temperature, params.wb.green);
} }
int tr = getCoarseBitMask(params.coarse); int tr = getCoarseBitMask (params.coarse);
imgsrc->getFullSize (fw, fh, tr); imgsrc->getFullSize (fw, fh, tr);
@ -377,7 +378,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} }
} }
*/ */
imgsrc->convertColorSpace(orig_prev, params.icm, currWB); imgsrc->convertColorSpace (orig_prev, params.icm, currWB);
ipf.firstAnalysis (orig_prev, params, vhist16); ipf.firstAnalysis (orig_prev, params, vhist16);
} }
@ -388,42 +389,45 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
// Remove transformation if unneeded // Remove transformation if unneeded
bool needstransform = ipf.needsTransform(); bool needstransform = ipf.needsTransform();
if (!needstransform && !((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled) && orig_prev != oprevi) { if (!needstransform && ! ((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled) && orig_prev != oprevi) {
delete oprevi; delete oprevi;
oprevi = orig_prev; oprevi = orig_prev;
} }
if ((needstransform || ((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled)) ) { if ((needstransform || ((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled)) ) {
if(!oprevi || oprevi == orig_prev) if (!oprevi || oprevi == orig_prev) {
oprevi = new Imagefloat (pW, pH); oprevi = new Imagefloat (pW, pH);
}
if (needstransform) if (needstransform)
ipf.transform (orig_prev, oprevi, 0, 0, 0, 0, pW, pH, fw, fh, imgsrc->getMetaData()->getFocalLen(), ipf.transform (orig_prev, oprevi, 0, 0, 0, 0, pW, pH, fw, fh,
imgsrc->getMetaData()->getFocalLen35mm(), imgsrc->getMetaData()->getFocusDist(), imgsrc->getMetaData()->getFNumber(), imgsrc->getRotateDegree(), false); imgsrc->getMetaData(), imgsrc->getRotateDegree(), false);
else else {
orig_prev->copyData(oprevi); orig_prev->copyData (oprevi);
}
} }
if ((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled) { if ((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled) {
const int W = oprevi->getWidth(); const int W = oprevi->getWidth();
const int H = oprevi->getHeight(); const int H = oprevi->getHeight();
LabImage labcbdl(W, H); LabImage labcbdl (W, H);
ipf.rgb2lab(*oprevi, labcbdl, params.icm.working); ipf.rgb2lab (*oprevi, labcbdl, params.icm.working);
ipf.dirpyrequalizer (&labcbdl, scale); ipf.dirpyrequalizer (&labcbdl, scale);
ipf.lab2rgb(labcbdl, *oprevi, params.icm.working); ipf.lab2rgb (labcbdl, *oprevi, params.icm.working);
} }
readyphase++; readyphase++;
progress ("Preparing shadow/highlight map...", 100 * readyphase / numofphases); progress ("Preparing shadow/highlight map...", 100 * readyphase / numofphases);
if ((todo & M_BLURMAP) && params.sh.enabled) { if ((todo & M_BLURMAP) && params.sh.enabled) {
double radius = sqrt (double(pW * pW + pH * pH)) / 2.0; double radius = sqrt (double (pW * pW + pH * pH)) / 2.0;
double shradius = params.sh.radius; double shradius = params.sh.radius;
if (!params.sh.hq) { if (!params.sh.hq) {
shradius *= radius / 1800.0; shradius *= radius / 1800.0;
} }
if(!shmap) { if (!shmap) {
shmap = new SHMap (pW, pH, true); shmap = new SHMap (pW, pH, true);
} }
@ -467,7 +471,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
opautili = false; opautili = false;
if(params.colorToning.enabled) { if (params.colorToning.enabled) {
TMatrix wprof = ICCStore::getInstance()->workingSpaceMatrix (params.icm.working); TMatrix wprof = ICCStore::getInstance()->workingSpaceMatrix (params.icm.working);
double wp[3][3] = { double wp[3][3] = {
{wprof[0][0], wprof[0][1], wprof[0][2]}, {wprof[0][0], wprof[0][1], wprof[0][2]},
@ -480,34 +484,34 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
{wiprof[1][0], wiprof[1][1], wiprof[1][2]}, {wiprof[1][0], wiprof[1][1], wiprof[1][2]},
{wiprof[2][0], wiprof[2][1], wiprof[2][2]} {wiprof[2][0], wiprof[2][1], wiprof[2][2]}
}; };
params.colorToning.getCurves(ctColorCurve, ctOpacityCurve, wp, wip, opautili); params.colorToning.getCurves (ctColorCurve, ctOpacityCurve, wp, wip, opautili);
CurveFactory::curveToning(params.colorToning.clcurve, clToningcurve, scale == 1 ? 1 : 16); CurveFactory::curveToning (params.colorToning.clcurve, clToningcurve, scale == 1 ? 1 : 16);
CurveFactory::curveToning(params.colorToning.cl2curve, cl2Toningcurve, scale == 1 ? 1 : 16); CurveFactory::curveToning (params.colorToning.cl2curve, cl2Toningcurve, scale == 1 ? 1 : 16);
} }
if(params.blackwhite.enabled) { if (params.blackwhite.enabled) {
CurveFactory::curveBW (params.blackwhite.beforeCurve, params.blackwhite.afterCurve, vhist16bw, histToneCurveBW, beforeToneCurveBW, afterToneCurveBW, 1); CurveFactory::curveBW (params.blackwhite.beforeCurve, params.blackwhite.afterCurve, vhist16bw, histToneCurveBW, beforeToneCurveBW, afterToneCurveBW, 1);
} }
colourToningSatLimit = float(params.colorToning.satProtectionThreshold) / 100.f * 0.7f + 0.3f; colourToningSatLimit = float (params.colorToning.satProtectionThreshold) / 100.f * 0.7f + 0.3f;
colourToningSatLimitOpacity = 1.f - (float(params.colorToning.saturatedOpacity) / 100.f); colourToningSatLimitOpacity = 1.f - (float (params.colorToning.saturatedOpacity) / 100.f);
int satTH = 80; int satTH = 80;
int satPR = 30; int satPR = 30;
int indi = 0; int indi = 0;
if(params.colorToning.enabled && params.colorToning.autosat) { //for colortoning evaluation of saturation settings if (params.colorToning.enabled && params.colorToning.autosat) { //for colortoning evaluation of saturation settings
float moyS = 0.f; float moyS = 0.f;
float eqty = 0.f; float eqty = 0.f;
ipf.moyeqt (oprevi, moyS, eqty);//return image : mean saturation and standard dev of saturation ipf.moyeqt (oprevi, moyS, eqty);//return image : mean saturation and standard dev of saturation
//printf("moy=%f ET=%f\n", moyS,eqty); //printf("moy=%f ET=%f\n", moyS,eqty);
float satp = ((moyS + 1.5f * eqty) - 0.3f) / 0.7f; //1.5 sigma ==> 93% pixels with high saturation -0.3 / 0.7 convert to Hombre scale float satp = ((moyS + 1.5f * eqty) - 0.3f) / 0.7f; //1.5 sigma ==> 93% pixels with high saturation -0.3 / 0.7 convert to Hombre scale
if(satp >= 0.92f) { if (satp >= 0.92f) {
satp = 0.92f; //avoid values too high (out of gamut) satp = 0.92f; //avoid values too high (out of gamut)
} }
if(satp <= 0.15f) { if (satp <= 0.15f) {
satp = 0.15f; //avoid too low values satp = 0.15f; //avoid too low values
} }
@ -520,22 +524,22 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
satPR = (int) 100.f * (moyS - 0.85f * eqty); satPR = (int) 100.f * (moyS - 0.85f * eqty);
} }
if(actListener) { if (actListener) {
//if(params.blackwhite.enabled) {actListener->autoColorTonChanged(0, satTH, satPR);} //if(params.blackwhite.enabled) {actListener->autoColorTonChanged(0, satTH, satPR);}
if(params.blackwhite.enabled && params.colorToning.autosat) { if (params.blackwhite.enabled && params.colorToning.autosat) {
actListener->autoColorTonChanged(0, satTH, satPR); //hide sliders only if autosat actListener->autoColorTonChanged (0, satTH, satPR); //hide sliders only if autosat
indi = 0; indi = 0;
} else { } else {
if(params.colorToning.autosat) { if (params.colorToning.autosat) {
if (params.colorToning.method == "Lab") { if (params.colorToning.method == "Lab") {
indi = 1; indi = 1;
} else if(params.colorToning.method == "RGBCurves") { } else if (params.colorToning.method == "RGBCurves") {
indi = 1; indi = 1;
} else if(params.colorToning.method == "RGBSliders") { } else if (params.colorToning.method == "RGBSliders") {
indi = 1; indi = 1;
} else if(params.colorToning.method == "Splico") { } else if (params.colorToning.method == "Splico") {
indi = 2; indi = 2;
} else if(params.colorToning.method == "Splitlr") { } else if (params.colorToning.method == "Splitlr") {
indi = 2; indi = 2;
} }
@ -552,25 +556,25 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
double bbm = 33.; double bbm = 33.;
DCPProfile::ApplyState as; DCPProfile::ApplyState as;
DCPProfile *dcpProf = imgsrc->getDCP(params.icm, currWB, as); DCPProfile *dcpProf = imgsrc->getDCP (params.icm, currWB, as);
ipf.rgbProc (oprevi, oprevl, nullptr, hltonecurve, shtonecurve, tonecurve, shmap, params.toneCurve.saturation, ipf.rgbProc (oprevi, oprevl, nullptr, hltonecurve, shtonecurve, tonecurve, shmap, params.toneCurve.saturation,
rCurve, gCurve, bCurve, colourToningSatLimit , colourToningSatLimitOpacity, ctColorCurve, ctOpacityCurve, opautili, clToningcurve, cl2Toningcurve, customToneCurve1, customToneCurve2, beforeToneCurveBW, afterToneCurveBW, rrm, ggm, bbm, bwAutoR, bwAutoG, bwAutoB, params.toneCurve.expcomp, params.toneCurve.hlcompr, params.toneCurve.hlcomprthresh, dcpProf, as, histToneCurve); rCurve, gCurve, bCurve, colourToningSatLimit, colourToningSatLimitOpacity, ctColorCurve, ctOpacityCurve, opautili, clToningcurve, cl2Toningcurve, customToneCurve1, customToneCurve2, beforeToneCurveBW, afterToneCurveBW, rrm, ggm, bbm, bwAutoR, bwAutoG, bwAutoB, params.toneCurve.expcomp, params.toneCurve.hlcompr, params.toneCurve.hlcomprthresh, dcpProf, as, histToneCurve);
if(params.blackwhite.enabled && params.blackwhite.autoc && abwListener) { if (params.blackwhite.enabled && params.blackwhite.autoc && abwListener) {
if (settings->verbose) { if (settings->verbose) {
printf("ImProcCoordinator / Auto B&W coefs: R=%.2f G=%.2f B=%.2f\n", bwAutoR, bwAutoG, bwAutoB); printf ("ImProcCoordinator / Auto B&W coefs: R=%.2f G=%.2f B=%.2f\n", bwAutoR, bwAutoG, bwAutoB);
} }
abwListener->BWChanged((float) rrm, (float) ggm, (float) bbm); abwListener->BWChanged ((float) rrm, (float) ggm, (float) bbm);
} }
if(params.colorToning.autosat && actListener) { if (params.colorToning.autosat && actListener) {
if (settings->verbose) { if (settings->verbose) {
printf("ImProcCoordinator / Auto CT: indi=%d satH=%d satPR=%d\n", indi, (int)colourToningSatLimit , (int) colourToningSatLimitOpacity); printf ("ImProcCoordinator / Auto CT: indi=%d satH=%d satPR=%d\n", indi, (int)colourToningSatLimit, (int) colourToningSatLimitOpacity);
} }
actListener->autoColorTonChanged(indi, (int) colourToningSatLimit, (int)colourToningSatLimitOpacity);//change sliders autosat actListener->autoColorTonChanged (indi, (int) colourToningSatLimit, (int)colourToningSatLimitOpacity); //change sliders autosat
} }
// correct GUI black and white with value // correct GUI black and white with value
@ -578,20 +582,20 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
// compute L channel histogram // compute L channel histogram
int x1, y1, x2, y2; int x1, y1, x2, y2;
params.crop.mapToResized(pW, pH, scale, x1, x2, y1, y2); params.crop.mapToResized (pW, pH, scale, x1, x2, y1, y2);
} }
readyphase++; readyphase++;
if (todo & (M_LUMACURVE | M_CROP)) { if (todo & (M_LUMACURVE | M_CROP)) {
LUTu lhist16(32768); LUTu lhist16 (32768);
lhist16.clear(); lhist16.clear();
#ifdef _OPENMP #ifdef _OPENMP
const int numThreads = min(max(pW * pH / (int)lhist16.getSize(), 1), omp_get_max_threads()); const int numThreads = min (max (pW * pH / (int)lhist16.getSize(), 1), omp_get_max_threads());
#pragma omp parallel num_threads(numThreads) if(numThreads>1) #pragma omp parallel num_threads(numThreads) if(numThreads>1)
#endif #endif
{ {
LUTu lhist16thr(lhist16.getSize()); LUTu lhist16thr (lhist16.getSize());
lhist16thr.clear(); lhist16thr.clear();
#ifdef _OPENMP #ifdef _OPENMP
#pragma omp for nowait #pragma omp for nowait
@ -599,7 +603,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
for (int x = 0; x < pH; x++) for (int x = 0; x < pH; x++)
for (int y = 0; y < pW; y++) { for (int y = 0; y < pW; y++) {
int pos = (int)(oprevl->L[x][y]); int pos = (int) (oprevl->L[x][y]);
lhist16thr[pos]++; lhist16thr[pos]++;
} }
@ -609,31 +613,31 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
lhist16 += lhist16thr; lhist16 += lhist16thr;
} }
#ifdef _OPENMP #ifdef _OPENMP
static_cast<void>(numThreads); // to silence cppcheck warning static_cast<void> (numThreads); // to silence cppcheck warning
#endif #endif
CurveFactory::complexLCurve (params.labCurve.brightness, params.labCurve.contrast, params.labCurve.lcurve, lhist16, lumacurve, histLCurve, scale == 1 ? 1 : 16, utili); CurveFactory::complexLCurve (params.labCurve.brightness, params.labCurve.contrast, params.labCurve.lcurve, lhist16, lumacurve, histLCurve, scale == 1 ? 1 : 16, utili);
} }
if (todo & M_LUMACURVE) { if (todo & M_LUMACURVE) {
CurveFactory::curveCL(clcutili, params.labCurve.clcurve, clcurve, scale == 1 ? 1 : 16); CurveFactory::curveCL (clcutili, params.labCurve.clcurve, clcurve, scale == 1 ? 1 : 16);
CurveFactory::complexsgnCurve (autili, butili, ccutili, cclutili, params.labCurve.acurve, params.labCurve.bcurve, params.labCurve.cccurve, CurveFactory::complexsgnCurve (autili, butili, ccutili, cclutili, params.labCurve.acurve, params.labCurve.bcurve, params.labCurve.cccurve,
params.labCurve.lccurve, chroma_acurve, chroma_bcurve, satcurve, lhskcurve, scale == 1 ? 1 : 16); params.labCurve.lccurve, chroma_acurve, chroma_bcurve, satcurve, lhskcurve, scale == 1 ? 1 : 16);
} }
if (todo & (M_LUMINANCE + M_COLOR) ) { if (todo & (M_LUMINANCE + M_COLOR) ) {
nprevl->CopyFrom(oprevl); nprevl->CopyFrom (oprevl);
progress ("Applying Color Boost...", 100 * readyphase / numofphases); progress ("Applying Color Boost...", 100 * readyphase / numofphases);
// ipf.MSR(nprevl, nprevl->W, nprevl->H, 1); // ipf.MSR(nprevl, nprevl->W, nprevl->H, 1);
histCCurve.clear(); histCCurve.clear();
histLCurve.clear(); histLCurve.clear();
ipf.chromiLuminanceCurve (nullptr, pW, nprevl, nprevl, chroma_acurve, chroma_bcurve, satcurve, lhskcurve, clcurve, lumacurve, utili, autili, butili, ccutili, cclutili, clcutili, histCCurve, histLCurve); ipf.chromiLuminanceCurve (nullptr, pW, nprevl, nprevl, chroma_acurve, chroma_bcurve, satcurve, lhskcurve, clcurve, lumacurve, utili, autili, butili, ccutili, cclutili, clcutili, histCCurve, histLCurve);
ipf.vibrance(nprevl); ipf.vibrance (nprevl);
if((params.colorappearance.enabled && !params.colorappearance.tonecie) || (!params.colorappearance.enabled)) { if ((params.colorappearance.enabled && !params.colorappearance.tonecie) || (!params.colorappearance.enabled)) {
ipf.EPDToneMap(nprevl, 5, scale); ipf.EPDToneMap (nprevl, 5, scale);
} }
// for all treatments Defringe, Sharpening, Contrast detail , Microcontrast they are activated if "CIECAM" function are disabled // for all treatments Defringe, Sharpening, Contrast detail , Microcontrast they are activated if "CIECAM" function are disabled
@ -679,8 +683,8 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} }
} }
*/ */
if(params.dirpyrequalizer.cbdlMethod == "aft") { if (params.dirpyrequalizer.cbdlMethod == "aft") {
if(((params.colorappearance.enabled && !settings->autocielab) || (!params.colorappearance.enabled)) ) { if (((params.colorappearance.enabled && !settings->autocielab) || (!params.colorappearance.enabled)) ) {
progress ("Pyramid wavelet...", 100 * readyphase / numofphases); progress ("Pyramid wavelet...", 100 * readyphase / numofphases);
ipf.dirpyrequalizer (nprevl, scale); ipf.dirpyrequalizer (nprevl, scale);
//ipf.Lanczoslab (ip_wavelet(LabImage * lab, LabImage * dst, const procparams::EqualizerParams & eqparams), nprevl, 1.f/scale); //ipf.Lanczoslab (ip_wavelet(LabImage * lab, LabImage * dst, const procparams::EqualizerParams & eqparams), nprevl, 1.f/scale);
@ -691,35 +695,35 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
wavcontlutili = false; wavcontlutili = false;
//CurveFactory::curveWavContL ( wavcontlutili,params.wavelet.lcurve, wavclCurve, LUTu & histogramwavcl, LUTu & outBeforeWavCLurveHistogram,int skip); //CurveFactory::curveWavContL ( wavcontlutili,params.wavelet.lcurve, wavclCurve, LUTu & histogramwavcl, LUTu & outBeforeWavCLurveHistogram,int skip);
CurveFactory::curveWavContL(wavcontlutili, params.wavelet.wavclCurve, wavclCurve, scale == 1 ? 1 : 16); CurveFactory::curveWavContL (wavcontlutili, params.wavelet.wavclCurve, wavclCurve, scale == 1 ? 1 : 16);
if((params.wavelet.enabled)) { if ((params.wavelet.enabled)) {
WaveletParams WaveParams = params.wavelet; WaveletParams WaveParams = params.wavelet;
// WaveParams.getCurves(wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY); // WaveParams.getCurves(wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY);
WaveParams.getCurves(wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY, waOpacityCurveW, waOpacityCurveWL); WaveParams.getCurves (wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY, waOpacityCurveW, waOpacityCurveWL);
int kall = 0; int kall = 0;
progress ("Wavelet...", 100 * readyphase / numofphases); progress ("Wavelet...", 100 * readyphase / numofphases);
// ipf.ip_wavelet(nprevl, nprevl, kall, WaveParams, wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY, scale); // ipf.ip_wavelet(nprevl, nprevl, kall, WaveParams, wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY, scale);
ipf.ip_wavelet(nprevl, nprevl, kall, WaveParams, wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY, waOpacityCurveW, waOpacityCurveWL, wavclCurve, wavcontlutili, scale); ipf.ip_wavelet (nprevl, nprevl, kall, WaveParams, wavCLVCurve, waOpacityCurveRG, waOpacityCurveBY, waOpacityCurveW, waOpacityCurveWL, wavclCurve, wavcontlutili, scale);
} }
if(params.colorappearance.enabled) { if (params.colorappearance.enabled) {
//L histo and Chroma histo for ciecam //L histo and Chroma histo for ciecam
// histogram well be for Lab (Lch) values, because very difficult to do with J,Q, M, s, C // histogram well be for Lab (Lch) values, because very difficult to do with J,Q, M, s, C
int x1, y1, x2, y2; int x1, y1, x2, y2;
params.crop.mapToResized(pW, pH, scale, x1, x2, y1, y2); params.crop.mapToResized (pW, pH, scale, x1, x2, y1, y2);
lhist16CAM.clear(); lhist16CAM.clear();
lhist16CCAM.clear(); lhist16CCAM.clear();
if(!params.colorappearance.datacie) { if (!params.colorappearance.datacie) {
for (int x = 0; x < pH; x++) for (int x = 0; x < pH; x++)
for (int y = 0; y < pW; y++) { for (int y = 0; y < pW; y++) {
int pos = CLIP((int)(nprevl->L[x][y])); int pos = CLIP ((int) (nprevl->L[x][y]));
int posc = CLIP((int)sqrt(nprevl->a[x][y] * nprevl->a[x][y] + nprevl->b[x][y] * nprevl->b[x][y])); int posc = CLIP ((int)sqrt (nprevl->a[x][y] * nprevl->a[x][y] + nprevl->b[x][y] * nprevl->b[x][y]));
lhist16CAM[pos]++; lhist16CAM[pos]++;
lhist16CCAM[posc]++; lhist16CCAM[posc]++;
} }
@ -734,31 +738,31 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
double fcomp = imgsrc->getMetaData()->getExpComp (); // Compensation +/- double fcomp = imgsrc->getMetaData()->getExpComp (); // Compensation +/-
double adap; double adap;
if(fnum < 0.3f || fiso < 5.f || fspeed < 0.00001f) { //if no exif data or wrong if (fnum < 0.3f || fiso < 5.f || fspeed < 0.00001f) { //if no exif data or wrong
adap = 2000.; adap = 2000.;
} else { } else {
double E_V = fcomp + log2 (double((fnum * fnum) / fspeed / (fiso / 100.f))); double E_V = fcomp + log2 (double ((fnum * fnum) / fspeed / (fiso / 100.f)));
E_V += params.toneCurve.expcomp;// exposure compensation in tonecurve ==> direct EV E_V += params.toneCurve.expcomp;// exposure compensation in tonecurve ==> direct EV
E_V += log2(params.raw.expos);// exposure raw white point ; log2 ==> linear to EV E_V += log2 (params.raw.expos); // exposure raw white point ; log2 ==> linear to EV
adap = powf(2.f, E_V - 3.f); // cd / m2 adap = powf (2.f, E_V - 3.f); // cd / m2
// end calculation adaptation scene luminosity // end calculation adaptation scene luminosity
} }
int begh = 0; int begh = 0;
int endh = pH; int endh = pH;
float d; float d, dj, yb;
bool execsharp = false; bool execsharp = false;
if(!ncie) { if (!ncie) {
ncie = new CieImage (pW, pH); ncie = new CieImage (pW, pH);
} }
if (!CAMBrightCurveJ && (params.colorappearance.algo == "JC" || params.colorappearance.algo == "JS" || params.colorappearance.algo == "ALL")) { if (!CAMBrightCurveJ && (params.colorappearance.algo == "JC" || params.colorappearance.algo == "JS" || params.colorappearance.algo == "ALL")) {
CAMBrightCurveJ(32768, 0); CAMBrightCurveJ (32768, 0);
} }
if (!CAMBrightCurveQ && (params.colorappearance.algo == "QM" || params.colorappearance.algo == "ALL")) { if (!CAMBrightCurveQ && (params.colorappearance.algo == "QM" || params.colorappearance.algo == "ALL")) {
CAMBrightCurveQ(32768, 0); CAMBrightCurveQ (32768, 0);
} }
// Issue 2785, only float version of ciecam02 for navigator and pan background // Issue 2785, only float version of ciecam02 for navigator and pan background
@ -766,14 +770,18 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
CAMBrightCurveJ.dirty = true; CAMBrightCurveJ.dirty = true;
CAMBrightCurveQ.dirty = true; CAMBrightCurveQ.dirty = true;
ipf.ciecam_02float (ncie, float(adap), begh, endh, pW, 2, nprevl, &params, customColCurve1, customColCurve2, customColCurve3, histLCAM, histCCAM, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, scale, execsharp, d, 1); ipf.ciecam_02float (ncie, float (adap), begh, endh, pW, 2, nprevl, &params, customColCurve1, customColCurve2, customColCurve3, histLCAM, histCCAM, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, scale, execsharp, d, dj, yb, 1);
if(params.colorappearance.autodegree && acListener && params.colorappearance.enabled) { if ((params.colorappearance.autodegree || params.colorappearance.autodegreeout) && acListener && params.colorappearance.enabled) {
acListener->autoCamChanged(100.*(double)d); acListener->autoCamChanged (100.* (double)d, 100.* (double)dj);
} }
if(params.colorappearance.autoadapscen && acListener && params.colorappearance.enabled) { if (params.colorappearance.autoadapscen && acListener && params.colorappearance.enabled) {
acListener->adapCamChanged(adap); //real value of adapt scene luminosity acListener->adapCamChanged (adap); //real value of adapt scene
}
if (params.colorappearance.autoybscen && acListener && params.colorappearance.enabled) {
acListener->ybCamChanged ((int) yb); //real value Yb scene
} }
readyphase++; readyphase++;
@ -796,11 +804,11 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
} }
// Update the monitor color transform if necessary // Update the monitor color transform if necessary
if ((todo & M_MONITOR) || (lastOutputProfile!=params.icm.output) || lastOutputIntent!=params.icm.outputIntent || lastOutputBPC!=params.icm.outputBPC) { if ((todo & M_MONITOR) || (lastOutputProfile != params.icm.output) || lastOutputIntent != params.icm.outputIntent || lastOutputBPC != params.icm.outputBPC) {
lastOutputProfile = params.icm.output; lastOutputProfile = params.icm.output;
lastOutputIntent = params.icm.outputIntent; lastOutputIntent = params.icm.outputIntent;
lastOutputBPC = params.icm.outputBPC; lastOutputBPC = params.icm.outputBPC;
ipf.updateColorProfiles(monitorProfile, monitorIntent, softProof, gamutCheck); ipf.updateColorProfiles (monitorProfile, monitorIntent, softProof, gamutCheck);
} }
// process crop, if needed // process crop, if needed
@ -812,7 +820,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
progress ("Conversion to RGB...", 100 * readyphase / numofphases); progress ("Conversion to RGB...", 100 * readyphase / numofphases);
if ((todo != CROP && todo != MINUPDATE) || (todo & M_MONITOR)) { if ((todo != CROP && todo != MINUPDATE) || (todo & M_MONITOR)) {
MyMutex::MyLock prevImgLock(previmg->getMutex()); MyMutex::MyLock prevImgLock (previmg->getMutex());
try { try {
// Computing the preview image, i.e. converting from WCS->Monitor color space (soft-proofing disabled) or WCS->Printer profile->Monitor color space (soft-proofing enabled) // Computing the preview image, i.e. converting from WCS->Monitor color space (soft-proofing disabled) or WCS->Printer profile->Monitor color space (soft-proofing enabled)
@ -821,7 +829,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall)
// Computing the internal image for analysis, i.e. conversion from WCS->Output profile // Computing the internal image for analysis, i.e. conversion from WCS->Output profile
delete workimg; delete workimg;
workimg = ipf.lab2rgb (nprevl, 0, 0, pW, pH, params.icm); workimg = ipf.lab2rgb (nprevl, 0, 0, pW, pH, params.icm);
} catch(char * str) { } catch (char * str) {
progress ("Error converting file...", 0); progress ("Error converting file...", 0);
return; return;
} }
@ -885,7 +893,7 @@ void ImProcCoordinator::freeAll ()
delete workimg; delete workimg;
if(shmap) { if (shmap) {
delete shmap; delete shmap;
} }
@ -909,7 +917,7 @@ void ImProcCoordinator::setScale (int prevscale)
printf ("setscale before lock\n"); printf ("setscale before lock\n");
} }
tr = getCoarseBitMask(params.coarse); tr = getCoarseBitMask (params.coarse);
int nW, nH; int nW, nH;
imgsrc->getFullSize (fw, fh, tr); imgsrc->getFullSize (fw, fh, tr);
@ -920,7 +928,7 @@ void ImProcCoordinator::setScale (int prevscale)
prevscale--; prevscale--;
PreviewProps pp (0, 0, fw, fh, prevscale); PreviewProps pp (0, 0, fw, fh, prevscale);
imgsrc->getSize (pp, nW, nH); imgsrc->getSize (pp, nW, nH);
} while(nH < 400 && prevscale > 1 && (nW * nH < 1000000) ); // sctually hardcoded values, perhaps a better choice is possible } while (nH < 400 && prevscale > 1 && (nW * nH < 1000000) ); // sctually hardcoded values, perhaps a better choice is possible
if (settings->verbose) { if (settings->verbose) {
printf ("setscale starts (%d, %d)\n", nW, nH); printf ("setscale starts (%d, %d)\n", nW, nH);
@ -941,7 +949,7 @@ void ImProcCoordinator::setScale (int prevscale)
previmg = new Image8 (pW, pH); previmg = new Image8 (pW, pH);
workimg = new Image8 (pW, pH); workimg = new Image8 (pW, pH);
if(params.sh.enabled) { if (params.sh.enabled) {
shmap = new SHMap (pW, pH, true); shmap = new SHMap (pW, pH, true);
} }
@ -973,7 +981,7 @@ void ImProcCoordinator::updateLRGBHistograms ()
{ {
int x1, y1, x2, y2; int x1, y1, x2, y2;
params.crop.mapToResized(pW, pH, scale, x1, x2, y1, y2); params.crop.mapToResized (pW, pH, scale, x1, x2, y1, y2);
#pragma omp parallel sections #pragma omp parallel sections
{ {
@ -984,7 +992,7 @@ void ImProcCoordinator::updateLRGBHistograms ()
for (int i = y1; i < y2; i++) for (int i = y1; i < y2; i++)
for (int j = x1; j < x2; j++) for (int j = x1; j < x2; j++)
{ {
histChroma[(int)(sqrtf(SQR(nprevl->a[i][j]) + SQR(nprevl->b[i][j])) / 188.f)]++; //188 = 48000/256 histChroma[ (int) (sqrtf (SQR (nprevl->a[i][j]) + SQR (nprevl->b[i][j])) / 188.f)]++; //188 = 48000/256
} }
} }
#pragma omp section #pragma omp section
@ -994,7 +1002,7 @@ void ImProcCoordinator::updateLRGBHistograms ()
for (int i = y1; i < y2; i++) for (int i = y1; i < y2; i++)
for (int j = x1; j < x2; j++) for (int j = x1; j < x2; j++)
{ {
histLuma[(int)(nprevl->L[i][j] / 128.f)]++; histLuma[ (int) (nprevl->L[i][j] / 128.f)]++;
} }
} }
#pragma omp section #pragma omp section
@ -1038,15 +1046,15 @@ bool ImProcCoordinator::getAutoWB (double& temp, double& green, double equal, do
if (lastAwbEqual != equal || lastAwbTempBias != tempBias) { if (lastAwbEqual != equal || lastAwbTempBias != tempBias) {
// Issue 2500 MyMutex::MyLock lock(minit); // Also used in crop window // Issue 2500 MyMutex::MyLock lock(minit); // Also used in crop window
double rm, gm, bm; double rm, gm, bm;
imgsrc->getAutoWBMultipliers(rm, gm, bm); imgsrc->getAutoWBMultipliers (rm, gm, bm);
if (rm != -1) { if (rm != -1) {
autoWB.update(rm, gm, bm, equal, tempBias); autoWB.update (rm, gm, bm, equal, tempBias);
lastAwbEqual = equal; lastAwbEqual = equal;
lastAwbTempBias = tempBias; lastAwbTempBias = tempBias;
} else { } else {
lastAwbEqual = -1.; lastAwbEqual = -1.;
autoWB.useDefaults(equal); autoWB.useDefaults (equal);
lastAwbTempBias = 0.0; lastAwbTempBias = 0.0;
} }
} }
@ -1077,7 +1085,7 @@ void ImProcCoordinator::getSpotWB (int x, int y, int rect, double& temp, double&
ColorTemp ret; ColorTemp ret;
{ {
MyMutex::MyLock lock(mProcessing); MyMutex::MyLock lock (mProcessing);
std::vector<Coord2D> points, red, green, blue; std::vector<Coord2D> points, red, green, blue;
for (int i = y - rect; i <= y + rect; i++) for (int i = y - rect; i <= y + rect; i++)
@ -1087,7 +1095,7 @@ void ImProcCoordinator::getSpotWB (int x, int y, int rect, double& temp, double&
ipf.transCoord (fw, fh, points, red, green, blue); ipf.transCoord (fw, fh, points, red, green, blue);
int tr = getCoarseBitMask(params.coarse); int tr = getCoarseBitMask (params.coarse);
ret = imgsrc->getSpotWB (red, green, blue, tr, params.wb.equal); ret = imgsrc->getSpotWB (red, green, blue, tr, params.wb.equal);
currWB = ColorTemp (params.wb.temperature, params.wb.green, params.wb.equal, params.wb.method); currWB = ColorTemp (params.wb.temperature, params.wb.green, params.wb.equal, params.wb.method);
@ -1108,15 +1116,15 @@ void ImProcCoordinator::getSpotWB (int x, int y, int rect, double& temp, double&
void ImProcCoordinator::getAutoCrop (double ratio, int &x, int &y, int &w, int &h) void ImProcCoordinator::getAutoCrop (double ratio, int &x, int &y, int &w, int &h)
{ {
MyMutex::MyLock lock(mProcessing); MyMutex::MyLock lock (mProcessing);
LCPMapper *pLCPMap = nullptr; LensCorrection *pLCPMap = nullptr;
if (params.lensProf.lcpFile.length() && imgsrc->getMetaData()->getFocalLen() > 0) { if (params.lensProf.useLcp() && imgsrc->getMetaData()->getFocalLen() > 0) {
LCPProfile *pLCPProf = lcpStore->getProfile(params.lensProf.lcpFile); const std::shared_ptr<LCPProfile> pLCPProf = LCPStore::getInstance()->getProfile (params.lensProf.lcpFile);
if (pLCPProf) pLCPMap = new LCPMapper(pLCPProf, imgsrc->getMetaData()->getFocalLen(), imgsrc->getMetaData()->getFocalLen35mm(), imgsrc->getMetaData()->getFocusDist(), if (pLCPProf) pLCPMap = new LCPMapper (pLCPProf, imgsrc->getMetaData()->getFocalLen(), imgsrc->getMetaData()->getFocalLen35mm(), imgsrc->getMetaData()->getFocusDist(),
0, false, params.lensProf.useDist, fullw, fullh, params.coarse, imgsrc->getRotateDegree()); 0, false, params.lensProf.useDist, fullw, fullh, params.coarse, imgsrc->getRotateDegree());
} }
double fillscale = ipf.getTransformAutoFill (fullw, fullh, pLCPMap); double fillscale = ipf.getTransformAutoFill (fullw, fullh, pLCPMap);
@ -1165,11 +1173,11 @@ void ImProcCoordinator::getSoftProofing (bool &softProof, bool &gamutCheck)
void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool apply_wb) void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool apply_wb)
{ {
MyMutex::MyLock lock(mProcessing); MyMutex::MyLock lock (mProcessing);
int fW, fH; int fW, fH;
int tr = getCoarseBitMask(params.coarse); int tr = getCoarseBitMask (params.coarse);
imgsrc->getFullSize (fW, fH, tr); imgsrc->getFullSize (fW, fH, tr);
PreviewProps pp (0, 0, fW, fH, 1); PreviewProps pp (0, 0, fW, fH, 1);
@ -1177,8 +1185,8 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
ppar.toneCurve.hrenabled = false; ppar.toneCurve.hrenabled = false;
ppar.icm.input = "(none)"; ppar.icm.input = "(none)";
Imagefloat* im = new Imagefloat (fW, fH); Imagefloat* im = new Imagefloat (fW, fH);
imgsrc->preprocess( ppar.raw, ppar.lensProf, ppar.coarse ); imgsrc->preprocess ( ppar.raw, ppar.lensProf, ppar.coarse );
imgsrc->demosaic(ppar.raw ); imgsrc->demosaic (ppar.raw );
ColorTemp currWB = ColorTemp (params.wb.temperature, params.wb.green, params.wb.equal, params.wb.method); ColorTemp currWB = ColorTemp (params.wb.temperature, params.wb.green, params.wb.equal, params.wb.method);
if (params.wb.method == "Camera") { if (params.wb.method == "Camera") {
@ -1186,16 +1194,16 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
} else if (params.wb.method == "Auto") { } else if (params.wb.method == "Auto") {
if (lastAwbEqual != params.wb.equal || lastAwbTempBias != params.wb.tempBias) { if (lastAwbEqual != params.wb.equal || lastAwbTempBias != params.wb.tempBias) {
double rm, gm, bm; double rm, gm, bm;
imgsrc->getAutoWBMultipliers(rm, gm, bm); imgsrc->getAutoWBMultipliers (rm, gm, bm);
if (rm != -1.) { if (rm != -1.) {
autoWB.update(rm, gm, bm, params.wb.equal, params.wb.tempBias); autoWB.update (rm, gm, bm, params.wb.equal, params.wb.tempBias);
lastAwbEqual = params.wb.equal; lastAwbEqual = params.wb.equal;
lastAwbTempBias = params.wb.tempBias; lastAwbTempBias = params.wb.tempBias;
} else { } else {
lastAwbEqual = -1.; lastAwbEqual = -1.;
lastAwbTempBias = 0.0; lastAwbTempBias = 0.0;
autoWB.useDefaults(params.wb.equal); autoWB.useDefaults (params.wb.equal);
} }
} }
@ -1211,8 +1219,8 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
if (ipf.needsTransform()) { if (ipf.needsTransform()) {
Imagefloat* trImg = new Imagefloat (fW, fH); Imagefloat* trImg = new Imagefloat (fW, fH);
ipf.transform (im, trImg, 0, 0, 0, 0, fW, fH, fW, fH, imgsrc->getMetaData()->getFocalLen(), imgsrc->getMetaData()->getFocalLen35mm(), ipf.transform (im, trImg, 0, 0, 0, 0, fW, fH, fW, fH,
imgsrc->getMetaData()->getFocusDist(), imgsrc->getMetaData()->getFNumber(), imgsrc->getRotateDegree(), true); imgsrc->getMetaData(), imgsrc->getRotateDegree(), true);
delete im; delete im;
im = trImg; im = trImg;
} }
@ -1227,9 +1235,9 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
for (int i = cy; i < cy + ch; i++) { for (int i = cy; i < cy + ch; i++) {
for (int j = cx; j < cx + cw; j++) { for (int j = cx; j < cx + cw; j++) {
tmpim->r(i - cy, j - cx) = im->r(i, j); tmpim->r (i - cy, j - cx) = im->r (i, j);
tmpim->g(i - cy, j - cx) = im->g(i, j); tmpim->g (i - cy, j - cx) = im->g (i, j);
tmpim->b(i - cy, j - cx) = im->b(i, j); tmpim->b (i - cy, j - cx) = im->b (i, j);
} }
} }
@ -1240,11 +1248,11 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
// image may contain out of range samples, clip them to avoid wrap-arounds // image may contain out of range samples, clip them to avoid wrap-arounds
#pragma omp parallel for #pragma omp parallel for
for(int i = 0; i < im->getHeight(); i++) { for (int i = 0; i < im->getHeight(); i++) {
for(int j = 0; j < im->getWidth(); j++) { for (int j = 0; j < im->getWidth(); j++) {
im->r(i, j) = CLIP(im->r(i, j)); im->r (i, j) = CLIP (im->r (i, j));
im->g(i, j) = CLIP(im->g(i, j)); im->g (i, j) = CLIP (im->g (i, j));
im->b(i, j) = CLIP(im->b(i, j)); im->b (i, j) = CLIP (im->b (i, j));
} }
} }
@ -1252,7 +1260,7 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
delete im; delete im;
int imw, imh; int imw, imh;
double tmpScale = ipf.resizeScale(&params, fW, fH, imw, imh); double tmpScale = ipf.resizeScale (&params, fW, fH, imw, imh);
if (tmpScale != 1.0) { if (tmpScale != 1.0) {
Image16* tempImage = new Image16 (imw, imh); Image16* tempImage = new Image16 (imw, imh);
@ -1298,13 +1306,13 @@ void ImProcCoordinator::startProcessing ()
//batchThread->yield(); //the running batch should wait other threads to avoid conflict //batchThread->yield(); //the running batch should wait other threads to avoid conflict
thread = Glib::Thread::create(sigc::mem_fun(*this, &ImProcCoordinator::process), 0, true, true, Glib::THREAD_PRIORITY_NORMAL); thread = Glib::Thread::create (sigc::mem_fun (*this, &ImProcCoordinator::process), 0, true, true, Glib::THREAD_PRIORITY_NORMAL);
} }
} }
} }
void ImProcCoordinator::startProcessing(int changeCode) void ImProcCoordinator::startProcessing (int changeCode)
{ {
paramsUpdateMutex.lock(); paramsUpdateMutex.lock();
changeSinceLast |= changeCode; changeSinceLast |= changeCode;
@ -1352,7 +1360,7 @@ ProcParams* ImProcCoordinator::beginUpdateParams ()
void ImProcCoordinator::endUpdateParams (ProcEvent change) void ImProcCoordinator::endUpdateParams (ProcEvent change)
{ {
endUpdateParams( refreshmap[(int)change] ); endUpdateParams ( refreshmap[ (int)change] );
} }
void ImProcCoordinator::endUpdateParams (int changeFlags) void ImProcCoordinator::endUpdateParams (int changeFlags)

View File

@ -223,7 +223,7 @@ public:
*dst = params; *dst = params;
} }
void startProcessing(int changeCode); void startProcessing (int changeCode);
ProcParams* beginUpdateParams (); ProcParams* beginUpdateParams ();
void endUpdateParams (ProcEvent change); // must be called after beginUpdateParams, triggers update void endUpdateParams (ProcEvent change); // must be called after beginUpdateParams, triggers update
void endUpdateParams (int changeFlags); void endUpdateParams (int changeFlags);
@ -304,7 +304,7 @@ public:
{ {
aeListener = ael; aeListener = ael;
} }
void setHistogramListener(HistogramListener *h) void setHistogramListener (HistogramListener *h)
{ {
hListener = h; hListener = h;
} }
@ -355,7 +355,7 @@ public:
} }
struct DenoiseInfoStore { struct DenoiseInfoStore {
DenoiseInfoStore () : chM(0), max_r{}, max_b{}, ch_M{}, valid(false) {} DenoiseInfoStore () : chM (0), max_r{}, max_b{}, ch_M{}, valid (false) {}
float chM; float chM;
float max_r[9]; float max_r[9];
float max_b[9]; float max_b[9];

View File

@ -210,7 +210,7 @@ void ImProcFunctions::firstAnalysis (const Imagefloat* const original, const Pro
// Copyright (c) 2012 Jacques Desmis <jdesmis@gmail.com> // Copyright (c) 2012 Jacques Desmis <jdesmis@gmail.com>
void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params,
const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve2, const ColorAppearance & customColCurve3, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve2, const ColorAppearance & customColCurve3,
LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, int rtt) LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, double &dj, double &yb, int rtt)
{ {
if (params->colorappearance.enabled) { if (params->colorappearance.enabled) {
//int lastskip; //int lastskip;
@ -264,9 +264,12 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
Yw = 1.0; Yw = 1.0;
double Xw, Zw; double Xw, Zw;
double Xwout, Zwout; double Xwout, Zwout;
double f, c, nc, yb = 0., la, xw, yw, zw, f2 = 0., c2 = 0., nc2 = 0., yb2 = 0., la2; double Xwsc, Zwsc;
double f = 0., c = 0., nc = 0., yb = 0., la, xw, yw, zw, f2 = 0., c2 = 0., nc2 = 0., yb2 = 0., la2;
double fl, n, nbb, ncb, aw; double fl, n, nbb, ncb, aw;
double xwd = 0., ywd, zwd = 0.; double xwd = 0., ywd, zwd = 0.;
double xws, yws, zws;
int alg = 0; int alg = 0;
bool algepd = false; bool algepd = false;
float sum = 0.f; float sum = 0.f;
@ -275,37 +278,53 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
ColorTemp::temp2mulxyz (params->wb.temperature, params->wb.green, params->wb.method, Xw, Zw); //compute white Xw Yw Zw : white current WB ColorTemp::temp2mulxyz (params->wb.temperature, params->wb.green, params->wb.method, Xw, Zw); //compute white Xw Yw Zw : white current WB
ColorTemp::temp2mulxyz (params->colorappearance.tempout, params->colorappearance.greenout, "Custom", Xwout, Zwout); ColorTemp::temp2mulxyz (params->colorappearance.tempout, params->colorappearance.greenout, "Custom", Xwout, Zwout);
ColorTemp::temp2mulxyz (params->colorappearance.tempsc, params->colorappearance.greensc, "Custom", Xwsc, Zwsc);
//viewing condition for surround //viewing condition for surrsrc
if (params->colorappearance.surround == "Average") { if (params->colorappearance.surrsrc == "Average") {
f = 1.00; f = 1.00;
c = 0.69; c = 0.69;
nc = 1.00; nc = 1.00;
} else if (params->colorappearance.surrsrc == "Dim") {
f = 0.9;
c = 0.59;
nc = 0.9;
} else if (params->colorappearance.surrsrc == "Dark") {
f = 0.8;
c = 0.525;
nc = 0.8;
} else if (params->colorappearance.surrsrc == "ExtremelyDark") {
f = 0.8;
c = 0.41;
nc = 0.8;
}
//viewing condition for surround
if (params->colorappearance.surround == "Average") {
f2 = 1.0, c2 = 0.69, nc2 = 1.0; f2 = 1.0, c2 = 0.69, nc2 = 1.0;
} else if (params->colorappearance.surround == "Dim") { } else if (params->colorappearance.surround == "Dim") {
f2 = 0.9; f2 = 0.9;
c2 = 0.59; c2 = 0.59;
nc2 = 0.9; nc2 = 0.9;
f = 1.0, c = 0.69, nc = 1.0;
} else if (params->colorappearance.surround == "Dark") { } else if (params->colorappearance.surround == "Dark") {
f2 = 0.8; f2 = 0.8;
c2 = 0.525; c2 = 0.525;
nc2 = 0.8; nc2 = 0.8;
f = 1.0, c = 0.69, nc = 1.0;
} else if (params->colorappearance.surround == "ExtremelyDark") { } else if (params->colorappearance.surround == "ExtremelyDark") {
f2 = 0.8; f2 = 0.8;
c2 = 0.41; c2 = 0.41;
nc2 = 0.8; nc2 = 0.8;
f = 1.0, c = 0.69, nc = 1.0;
}
//scene condition for surround
if (params->colorappearance.surrsource) {
f = 0.85; // if user => source image has surround very dark
c = 0.55;
nc = 0.85;
} }
/*
//scene condition for surround
if (params->colorappearance.surrsource) {
f = 0.85; // if user => source image has surround very dark
c = 0.55;
nc = 0.85;
}
*/
//with which algorithme //with which algorithme
if (params->colorappearance.algo == "JC") { if (params->colorappearance.algo == "JC") {
alg = 0; alg = 0;
@ -362,6 +381,10 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
zwd = 100. * Zwout; zwd = 100. * Zwout;
ywd = 100. / params->colorappearance.greenout;//approximation to simplify ywd = 100. / params->colorappearance.greenout;//approximation to simplify
xws = 100. * Xwsc;
zws = 100. * Zwsc;
yws = 100. / params->colorappearance.greensc;//approximation to simplify
/* /*
//settings mean Luminance Y of output device or viewing //settings mean Luminance Y of output device or viewing
if (settings->viewingdevicegrey == 0) { if (settings->viewingdevicegrey == 0) {
@ -397,6 +420,10 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
double deg = (params->colorappearance.degree) / 100.0; double deg = (params->colorappearance.degree) / 100.0;
double pilot = params->colorappearance.autodegree ? 2.0 : deg; double pilot = params->colorappearance.autodegree ? 2.0 : deg;
const float degout = (params->colorappearance.degreeout) / 100.0;
const float pilotout = params->colorappearance.autodegreeout ? 2.0 : degout;
//algoritm's params //algoritm's params
float jli = params->colorappearance.jlight; float jli = params->colorappearance.jlight;
float chr = params->colorappearance.chroma; float chr = params->colorappearance.chroma;
@ -501,7 +528,9 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
} }
} }
if (settings->viewinggreySc == 0) { //auto // if (settings->viewinggreySc == 0) { //auto
if (params->colorappearance.autoybscen && pwb == 2) {//auto
if (mean < 15.f) { if (mean < 15.f) {
yb = 3.0; yb = 3.0;
} else if (mean < 30.f) { } else if (mean < 30.f) {
@ -525,6 +554,8 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
} else { } else {
yb = 90.0; yb = 90.0;
} }
} else {
yb = params->colorappearance.ybscen;
} }
if (settings->viewinggreySc == 1) { if (settings->viewinggreySc == 1) {
@ -541,7 +572,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
xw = 100.0 * Xw; xw = 100.0 * Xw;
yw = 100.0 * Yw; yw = 100.0 * Yw;
zw = 100.0 * Zw; zw = 100.0 * Zw;
double xw1, yw1, zw1, xw2, yw2, zw2; double xw1 = 0., yw1 = 0., zw1 = 0., xw2 = 0., yw2 = 0., zw2 = 0.;
// settings of WB: scene and viewing // settings of WB: scene and viewing
if (params->colorappearance.wbmodel == "RawT") { if (params->colorappearance.wbmodel == "RawT") {
@ -551,19 +582,26 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
xw2 = xwd; xw2 = xwd;
yw2 = ywd; yw2 = ywd;
zw2 = zwd; zw2 = zwd;
} else { /*if(params->colorappearance.wbmodel == "RawTCAT02")*/ } else if (params->colorappearance.wbmodel == "RawTCAT02") {
xw1 = xw; // Settings RT WB are used for CAT02 => mix , CAT02 is use for output device (screen: D50 D65, projector: lamp, LED) see preferences xw1 = xw; // Settings RT WB are used for CAT02 => mix , CAT02 is use for output device (screen: D50 D65, projector: lamp, LED) see preferences
yw1 = yw; yw1 = yw;
zw1 = zw; zw1 = zw;
xw2 = xwd; xw2 = xwd;
yw2 = ywd; yw2 = ywd;
zw2 = zwd; zw2 = zwd;
} else if (params->colorappearance.wbmodel == "free") {
xw1 = xws; // free temp and green
yw1 = yws;
zw1 = zws;
xw2 = xwd;
yw2 = ywd;
zw2 = zwd;
} }
double cz, wh, pfl; double cz, wh, pfl;
Ciecam02::initcam1 (gamu, yb, pilot, f, la, xw, yw, zw, n, d, nbb, ncb, cz, aw, wh, pfl, fl, c); Ciecam02::initcam1 (gamu, yb, pilot, f, la, xw, yw, zw, n, d, nbb, ncb, cz, aw, wh, pfl, fl, c);
double nj, dj, nbbj, ncbj, czj, awj, flj; double nj, nbbj, ncbj, czj, awj, flj;
Ciecam02::initcam2 (gamu, yb2, f2, la2, xw2, yw2, zw2, nj, dj, nbbj, ncbj, czj, awj, flj); Ciecam02::initcam2 (gamu, yb2, pilotout, f2, la2, xw2, yw2, zw2, nj, dj, nbbj, ncbj, czj, awj, flj);
@ -808,6 +846,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
} else if (curveMode == ColorAppearanceParams::TC_MODE_BRIGHT) { } else if (curveMode == ColorAppearanceParams::TC_MODE_BRIGHT) {
//attention! Brightness curves are open - unlike Lightness or Lab or RGB==> rendering and algoritms will be different //attention! Brightness curves are open - unlike Lightness or Lab or RGB==> rendering and algoritms will be different
float coef = ((aw + 4.f) * (4.f / c)) / 100.f; float coef = ((aw + 4.f) * (4.f / c)) / 100.f;
float Qanc = Qpro;
float Qq = (float) Qpro * 327.68f * (1.f / coef); float Qq = (float) Qpro * 327.68f * (1.f / coef);
float Qold100 = (float) Qpro / coef; float Qold100 = (float) Qpro / coef;
@ -833,8 +872,15 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts
} }
Qpro = (double) (Qq * (coef) / 327.68f); if (Qold == 0.f) {
Jpro = 100.* (Qpro * Qpro) / ((4.0 / c) * (4.0 / c) * (aw + 4.0) * (aw + 4.0)); Qold = 0.001f;
}
Qpro = Qanc * (Qq / Qold);
Jpro = Jpro * SQR (Qq / Qold);
// Qpro = (double) (Qq * (coef) / 327.68f);
// Jpro = 100.* (Qpro * Qpro) / ((4.0 / c) * (4.0 / c) * (aw + 4.0) * (aw + 4.0));
t1B = true; t1B = true;
if (Jpro < 1.) { if (Jpro < 1.) {
@ -889,6 +935,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
} }
} else if (curveMode2 == ColorAppearanceParams::TC_MODE_BRIGHT) { // } else if (curveMode2 == ColorAppearanceParams::TC_MODE_BRIGHT) { //
float Qanc = Qpro;
float coef = ((aw + 4.f) * (4.f / c)) / 100.f; float coef = ((aw + 4.f) * (4.f / c)) / 100.f;
float Qq = (float) Qpro * 327.68f * (1.f / coef); float Qq = (float) Qpro * 327.68f * (1.f / coef);
float Qold100 = (float) Qpro / coef; float Qold100 = (float) Qpro / coef;
@ -915,8 +962,16 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts
} }
Qpro = (double) (Qq * (coef) / 327.68f); if (Qold == 0.f) {
Jpro = 100.* (Qpro * Qpro) / ((4.0 / c) * (4.0 / c) * (aw + 4.0) * (aw + 4.0)); Qold = 0.001f;
}
// Qpro = (float) (Qq * (coef) / 327.68f);
Qpro = Qanc * (Qq / Qold);
Jpro = Jpro * SQR (Qq / Qold);
// Qpro = (double) (Qq * (coef) / 327.68f);
// Jpro = 100.* (Qpro * Qpro) / ((4.0 / c) * (4.0 / c) * (aw + 4.0) * (aw + 4.0));
t2B = true; t2B = true;
if (t1L) { //to workaround the problem if we modify curve1-lightnees after curve2 brightness(the cat that bites its own tail!) in fact it's another type of curve only for this case if (t1L) { //to workaround the problem if we modify curve1-lightnees after curve2 brightness(the cat that bites its own tail!) in fact it's another type of curve only for this case
@ -1075,13 +1130,13 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
} }
if (curveMode3 == ColorAppearanceParams::TC_MODE_CHROMA) { if (curveMode3 == ColorAppearanceParams::TC_MODE_CHROMA) {
chsacol = 327.; chsacol = 400.;//327.;
colch = 0; colch = 0;
} else if (curveMode3 == ColorAppearanceParams::TC_MODE_SATUR) { } else if (curveMode3 == ColorAppearanceParams::TC_MODE_SATUR) {
chsacol = 450.0; chsacol = 450.0;
colch = 1; colch = 1;
} else if (curveMode3 == ColorAppearanceParams::TC_MODE_COLORF) { } else if (curveMode3 == ColorAppearanceParams::TC_MODE_COLORF) {
chsacol = 327.0; chsacol = 400.;//327.0;
colch = 2; colch = 2;
} }
@ -1344,13 +1399,13 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
} }
if (curveMode3 == ColorAppearanceParams::TC_MODE_CHROMA) { if (curveMode3 == ColorAppearanceParams::TC_MODE_CHROMA) {
chsacol = 327.; chsacol = 400.;//327.;
colch = 0; colch = 0;
} else if (curveMode3 == ColorAppearanceParams::TC_MODE_SATUR) { } else if (curveMode3 == ColorAppearanceParams::TC_MODE_SATUR) {
chsacol = 450.0; chsacol = 450.0;
colch = 1; colch = 1;
} else if (curveMode3 == ColorAppearanceParams::TC_MODE_COLORF) { } else if (curveMode3 == ColorAppearanceParams::TC_MODE_COLORF) {
chsacol = 327.0; chsacol = 400.;//327.0;
colch = 2; colch = 2;
} }
@ -1468,7 +1523,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh
// Copyright (c) 2012 Jacques Desmis <jdesmis@gmail.com> // Copyright (c) 2012 Jacques Desmis <jdesmis@gmail.com>
void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params,
const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve2, const ColorAppearance & customColCurve3, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve2, const ColorAppearance & customColCurve3,
LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, int rtt) LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, float &dj, float &yb, int rtt)
{ {
if (params->colorappearance.enabled) { if (params->colorappearance.enabled) {
@ -1495,12 +1550,13 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
float Yw; float Yw;
Yw = 1.0; Yw = 1.0;
double Xw, Zw; double Xw, Zw;
float f, nc, yb = 0.f, la, c, xw, yw, zw, f2 = 1.f, c2 = 1.f, nc2 = 1.f, yb2; float f = 0.f, nc = 0.f, la, c = 0.f, xw, yw, zw, f2 = 1.f, c2 = 1.f, nc2 = 1.f, yb2;
float fl, n, nbb, ncb, aw; //d float fl, n, nbb, ncb, aw; //d
float xwd, ywd, zwd; float xwd, ywd, zwd, xws, yws, zws;
int alg = 0; int alg = 0;
bool algepd = false; bool algepd = false;
double Xwout, Zwout; double Xwout, Zwout;
double Xwsc, Zwsc;
const bool epdEnabled = params->epd.enabled; const bool epdEnabled = params->epd.enabled;
bool ciedata = (params->colorappearance.datacie && pW != 1) && ! ((params->colorappearance.tonecie && (epdEnabled)) || (params->sharpening.enabled && settings->autocielab && execsharp) bool ciedata = (params->colorappearance.datacie && pW != 1) && ! ((params->colorappearance.tonecie && (epdEnabled)) || (params->sharpening.enabled && settings->autocielab && execsharp)
@ -1509,37 +1565,53 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
ColorTemp::temp2mulxyz (params->wb.temperature, params->wb.green, params->wb.method, Xw, Zw); //compute white Xw Yw Zw : white current WB ColorTemp::temp2mulxyz (params->wb.temperature, params->wb.green, params->wb.method, Xw, Zw); //compute white Xw Yw Zw : white current WB
ColorTemp::temp2mulxyz (params->colorappearance.tempout, params->colorappearance.greenout, "Custom", Xwout, Zwout); ColorTemp::temp2mulxyz (params->colorappearance.tempout, params->colorappearance.greenout, "Custom", Xwout, Zwout);
ColorTemp::temp2mulxyz (params->colorappearance.tempsc, params->colorappearance.greensc, "Custom", Xwsc, Zwsc);
//viewing condition for surround //viewing condition for surrsrc
if (params->colorappearance.surround == "Average") { if (params->colorappearance.surrsrc == "Average") {
f = 1.00f; f = 1.00f;
c = 0.69f; c = 0.69f;
nc = 1.00f; nc = 1.00f;
} else if (params->colorappearance.surrsrc == "Dim") {
f = 0.9f;
c = 0.59f;
nc = 0.9f;
} else if (params->colorappearance.surrsrc == "Dark") {
f = 0.8f;
c = 0.525f;
nc = 0.8f;
} else if (params->colorappearance.surrsrc == "ExtremelyDark") {
f = 0.8f;
c = 0.41f;
nc = 0.8f;
}
//viewing condition for surround
if (params->colorappearance.surround == "Average") {
f2 = 1.0f, c2 = 0.69f, nc2 = 1.0f; f2 = 1.0f, c2 = 0.69f, nc2 = 1.0f;
} else if (params->colorappearance.surround == "Dim") { } else if (params->colorappearance.surround == "Dim") {
f2 = 0.9f; f2 = 0.9f;
c2 = 0.59f; c2 = 0.59f;
nc2 = 0.9f; nc2 = 0.9f;
f = 1.0f, c = 0.69f, nc = 1.0f;
} else if (params->colorappearance.surround == "Dark") { } else if (params->colorappearance.surround == "Dark") {
f2 = 0.8f; f2 = 0.8f;
c2 = 0.525f; c2 = 0.525f;
nc2 = 0.8f; nc2 = 0.8f;
f = 1.0f, c = 0.69f, nc = 1.0f;
} else if (params->colorappearance.surround == "ExtremelyDark") { } else if (params->colorappearance.surround == "ExtremelyDark") {
f2 = 0.8f; f2 = 0.8f;
c2 = 0.41f; c2 = 0.41f;
nc2 = 0.8f; nc2 = 0.8f;
f = 1.0f, c = 0.69f, nc = 1.0f;
}
//scene condition for surround
if (params->colorappearance.surrsource) {
f = 0.85f; // if user => source image has surround very dark
c = 0.55f;
nc = 0.85f;
} }
/*
//scene condition for surround
if (params->colorappearance.surrsource) {
f = 0.85f; // if user => source image has surround very dark
c = 0.55f;
nc = 0.85f;
}
*/
//with which algorithm //with which algorithm
if (params->colorappearance.algo == "JC") { if (params->colorappearance.algo == "JC") {
alg = 0; alg = 0;
@ -1556,6 +1628,12 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
xwd = 100.f * Xwout; xwd = 100.f * Xwout;
zwd = 100.f * Zwout; zwd = 100.f * Zwout;
ywd = 100.f / params->colorappearance.greenout;//approximation to simplify ywd = 100.f / params->colorappearance.greenout;//approximation to simplify
xws = 100.f * Xwsc;
zws = 100.f * Zwsc;
yws = 100.f / params->colorappearance.greensc;//approximation to simplify
/* /*
//settings white point of output device - or illuminant viewing //settings white point of output device - or illuminant viewing
if (settings->viewingdevice == 0) { if (settings->viewingdevice == 0) {
@ -1620,16 +1698,20 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
} }
} }
if (alg >= 2 && la < 200.f) { /*
la = 200.f; if (alg >= 2 && la < 200.f) {
} la = 200.f;
}
*/
const float la2 = float (params->colorappearance.adaplum); const float la2 = float (params->colorappearance.adaplum);
// level of adaptation // level of adaptation
const float deg = (params->colorappearance.degree) / 100.0f; const float deg = (params->colorappearance.degree) / 100.0f;
const float pilot = params->colorappearance.autodegree ? 2.0f : deg; const float pilot = params->colorappearance.autodegree ? 2.0f : deg;
const float degout = (params->colorappearance.degreeout) / 100.0f;
const float pilotout = params->colorappearance.autodegreeout ? 2.0f : degout;
//algoritm's params //algoritm's params
float chr = 0.f; float chr = 0.f;
@ -1711,6 +1793,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
} }
float sum = 0.f; float sum = 0.f;
float sumQ = 0.f;
#ifdef _OPENMP #ifdef _OPENMP
const int numThreads = min (max (width * height / 65536, 1), omp_get_max_threads()); const int numThreads = min (max (width * height / 65536, 1), omp_get_max_threads());
@ -1730,7 +1813,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
hist16Qthr.clear(); hist16Qthr.clear();
} }
#pragma omp for reduction(+:sum) #pragma omp for reduction(+:sum,sumQ)
for (int i = 0; i < height; i++) for (int i = 0; i < height; i++)
for (int j = 0; j < width; j++) { //rough correspondence between L and J for (int j = 0; j < width; j++) { //rough correspondence between L and J
@ -1775,11 +1858,26 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
hist16Jthr[ (int) ((koef * lab->L[i][j]))]++; //evaluate histogram luminance L # J hist16Jthr[ (int) ((koef * lab->L[i][j]))]++; //evaluate histogram luminance L # J
} }
//estimation of wh only with La
float whestim = 500.f;
if (la < 200.f) {
whestim = 200.f;
} else if (la < 2500.f) {
whestim = 350.f;
} else {
whestim = 500.f;
}
if (needQ) { if (needQ) {
hist16Qthr[ (int) (sqrtf ((koef * (lab->L[i][j])) * 32768.f))]++; //for brightness Q : approximation for Q=wh*sqrt(J/100) J not equal L hist16Qthr[CLIP ((int) (32768.f * sqrt ((koef * (lab->L[i][j])) / 32768.f)))]++; //for brightness Q : approximation for Q=wh*sqrt(J/100) J not equal L
//perhaps needs to introduce whestim ??
// hist16Qthr[ (int) (sqrtf ((koef * (lab->L[i][j])) * 32768.f))]++; //for brightness Q : approximation for Q=wh*sqrt(J/100) J not equal L
} }
sum += koef * lab->L[i][j]; //evaluate mean J to calculate Yb sum += koef * lab->L[i][j]; //evaluate mean J to calculate Yb
sumQ += whestim * sqrt ((koef * (lab->L[i][j])) / 32768.f);
//can be used in case of...
} }
#pragma omp critical #pragma omp critical
@ -1793,18 +1891,24 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
} }
} }
float meanQ;
if (std::isnan (mean)) { if (std::isnan (mean)) {
mean = (sum / ((height) * width)) / 327.68f; //for Yb for all image...if one day "pipette" we can adapt Yb for each zone mean = (sum / ((height) * width)) / 327.68f; //for Yb for all image...if one day "pipette" we can adapt Yb for each zone
meanQ = (sumQ / ((height) * width));//in case of
} }
} }
//evaluate lightness, contrast //evaluate lightness, contrast
} }
if (settings->viewinggreySc == 0) { //auto
// if (settings->viewinggreySc == 0) { //auto
if (params->colorappearance.autoybscen && pwb == 2) {//auto
if (mean < 15.f) { if (mean < 15.f) {
yb = 3.0f; yb = 3.0f;
} else if (mean < 30.f) { } else if (mean < 30.f) {
@ -1828,8 +1932,10 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
} else { } else {
yb = 90.0f; yb = 90.0f;
} }
} else if (settings->viewinggreySc == 1) {
yb = 18.0f; //fixed // } else if (settings->viewinggreySc == 1) {
} else {
yb = (float) params->colorappearance.ybscen;
} }
const bool highlight = params->toneCurve.hrenabled; //Get the value if "highlight reconstruction" is activated const bool highlight = params->toneCurve.hrenabled; //Get the value if "highlight reconstruction" is activated
@ -1838,7 +1944,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
xw = 100.0f * Xw; xw = 100.0f * Xw;
yw = 100.0f * Yw; yw = 100.0f * Yw;
zw = 100.0f * Zw; zw = 100.0f * Zw;
float xw1, yw1, zw1, xw2, yw2, zw2; float xw1 = 0.f, yw1 = 0.f, zw1 = 0.f, xw2 = 0.f, yw2 = 0.f, zw2 = 0.f;
// settings of WB: scene and viewing // settings of WB: scene and viewing
if (params->colorappearance.wbmodel == "RawT") { if (params->colorappearance.wbmodel == "RawT") {
@ -1848,20 +1954,30 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
xw2 = xwd; xw2 = xwd;
yw2 = ywd; yw2 = ywd;
zw2 = zwd; zw2 = zwd;
} else { /*if(params->colorappearance.wbmodel == "RawTCAT02")*/ } else if (params->colorappearance.wbmodel == "RawTCAT02") {
xw1 = xw; // Settings RT WB are used for CAT02 => mix , CAT02 is use for output device (screen: D50 D65, projector: lamp, LED) see preferences xw1 = xw; // Settings RT WB are used for CAT02 => mix , CAT02 is use for output device (screen: D50 D65, projector: lamp, LED) see preferences
yw1 = yw; yw1 = yw;
zw1 = zw; zw1 = zw;
xw2 = xwd; xw2 = xwd;
yw2 = ywd; yw2 = ywd;
zw2 = zwd; zw2 = zwd;
} else if (params->colorappearance.wbmodel == "free") {
xw1 = xws; // free temp and green
yw1 = yws;
zw1 = zws;
xw2 = xwd;
yw2 = ywd;
zw2 = zwd;
} }
float cz, wh, pfl; float cz, wh, pfl;
Ciecam02::initcam1float (gamu, yb, pilot, f, la, xw, yw, zw, n, d, nbb, ncb, cz, aw, wh, pfl, fl, c); Ciecam02::initcam1float (gamu, yb, pilot, f, la, xw, yw, zw, n, d, nbb, ncb, cz, aw, wh, pfl, fl, c);
//printf ("wh=%f \n", wh);
const float pow1 = pow_F ( 1.64f - pow_F ( 0.29f, n ), 0.73f ); const float pow1 = pow_F ( 1.64f - pow_F ( 0.29f, n ), 0.73f );
float nj, dj, nbbj, ncbj, czj, awj, flj; float nj, nbbj, ncbj, czj, awj, flj;
Ciecam02::initcam2float (gamu, yb2, f2, la2, xw2, yw2, zw2, nj, dj, nbbj, ncbj, czj, awj, flj); Ciecam02::initcam2float (gamu, yb2, pilotout, f2, la2, xw2, yw2, zw2, nj, dj, nbbj, ncbj, czj, awj, flj);
const float reccmcz = 1.f / (c2 * czj); const float reccmcz = 1.f / (c2 * czj);
const float pow1n = pow_F ( 1.64f - pow_F ( 0.29f, nj ), 0.73f ); const float pow1n = pow_F ( 1.64f - pow_F ( 0.29f, nj ), 0.73f );
@ -1876,7 +1992,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
const bool LabPassOne = ! ((params->colorappearance.tonecie && (epdEnabled)) || (params->sharpening.enabled && settings->autocielab && execsharp) const bool LabPassOne = ! ((params->colorappearance.tonecie && (epdEnabled)) || (params->sharpening.enabled && settings->autocielab && execsharp)
|| (params->dirpyrequalizer.enabled && settings->autocielab) || (params->defringe.enabled && settings->autocielab) || (params->sharpenMicro.enabled && settings->autocielab) || (params->dirpyrequalizer.enabled && settings->autocielab) || (params->defringe.enabled && settings->autocielab) || (params->sharpenMicro.enabled && settings->autocielab)
|| (params->impulseDenoise.enabled && settings->autocielab) || (params->colorappearance.badpixsl > 0 && settings->autocielab)); || (params->impulseDenoise.enabled && settings->autocielab) || (params->colorappearance.badpixsl > 0 && settings->autocielab));
//printf("coQ=%f\n", coefQ);
if (needJ) { if (needJ) {
if (!CAMBrightCurveJ) { if (!CAMBrightCurveJ) {
@ -1897,7 +2013,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
if (CAMBrightCurveQ.dirty) { if (CAMBrightCurveQ.dirty) {
Ciecam02::curveJfloat (params->colorappearance.qbright, params->colorappearance.qcontrast, hist16Q, CAMBrightCurveQ);//brightness and contrast Q Ciecam02::curveJfloat (params->colorappearance.qbright, params->colorappearance.qcontrast, hist16Q, CAMBrightCurveQ);//brightness and contrast Q
CAMBrightCurveQ /= coefQ; // CAMBrightCurveQ /= coefQ;
CAMBrightCurveQ.dirty = false; CAMBrightCurveQ.dirty = false;
} }
} }
@ -2047,7 +2163,11 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
Qpro = QproFactor * sqrtf (Jpro); Qpro = QproFactor * sqrtf (Jpro);
Cpro = (spro * spro * Qpro) / (10000.0f); Cpro = (spro * spro * Qpro) / (10000.0f);
} else if (alg == 2) { } else if (alg == 2) {
Qpro = CAMBrightCurveQ[ (float) (Qpro * coefQ)]; //brightness and contrast //printf("Qp0=%f ", Qpro);
Qpro = CAMBrightCurveQ[ (float) (Qpro * coefQ)] / coefQ; //brightness and contrast
//printf("Qpaf=%f ", Qpro);
float Mp, sres; float Mp, sres;
Mp = Mpro / 100.0f; Mp = Mpro / 100.0f;
Ciecam02::curvecolorfloat (mchr, Mp, sres, 2.5f); Ciecam02::curvecolorfloat (mchr, Mp, sres, 2.5f);
@ -2061,7 +2181,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
Qpro = (Qpro == 0.f ? epsil : Qpro); // avoid division by zero Qpro = (Qpro == 0.f ? epsil : Qpro); // avoid division by zero
spro = 100.0f * sqrtf ( Mpro / Qpro ); spro = 100.0f * sqrtf ( Mpro / Qpro );
} else { /*if(alg == 3) */ } else { /*if(alg == 3) */
Qpro = CAMBrightCurveQ[ (float) (Qpro * coefQ)]; //brightness and contrast Qpro = CAMBrightCurveQ[ (float) (Qpro * coefQ)] / coefQ; //brightness and contrast
float Mp, sres; float Mp, sres;
Mp = Mpro / 100.0f; Mp = Mpro / 100.0f;
@ -2138,6 +2258,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
} else if (curveMode == ColorAppearanceParams::TC_MODE_BRIGHT) { } else if (curveMode == ColorAppearanceParams::TC_MODE_BRIGHT) {
//attention! Brightness curves are open - unlike Lightness or Lab or RGB==> rendering and algoritms will be different //attention! Brightness curves are open - unlike Lightness or Lab or RGB==> rendering and algoritms will be different
float coef = ((aw + 4.f) * (4.f / c)) / 100.f; float coef = ((aw + 4.f) * (4.f / c)) / 100.f;
float Qanc = Qpro;
float Qq = (float) Qpro * 327.68f * (1.f / coef); float Qq = (float) Qpro * 327.68f * (1.f / coef);
float Qold100 = (float) Qpro / coef; float Qold100 = (float) Qpro / coef;
@ -2163,8 +2284,13 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts
} }
Qpro = (float) (Qq * (coef) / 327.68f); if (Qold == 0.f) {
Jpro = 100.f * (Qpro * Qpro) / ((4.0f / c) * (4.0f / c) * (aw + 4.0f) * (aw + 4.0f)); Qold = 0.001f;
}
Qpro = Qanc * (Qq / Qold);
// Jpro = 100.f * (Qpro * Qpro) / ((4.0f / c) * (4.0f / c) * (aw + 4.0f) * (aw + 4.0f));
Jpro = Jpro * SQR (Qq / Qold);
if (Jpro < 1.f) { if (Jpro < 1.f) {
Jpro = 1.f; Jpro = 1.f;
@ -2212,6 +2338,8 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
} }
} else if (curveMode2 == ColorAppearanceParams::TC_MODE_BRIGHT) { // } else if (curveMode2 == ColorAppearanceParams::TC_MODE_BRIGHT) { //
float Qanc = Qpro;
float coef = ((aw + 4.f) * (4.f / c)) / 100.f; float coef = ((aw + 4.f) * (4.f / c)) / 100.f;
float Qq = (float) Qpro * 327.68f * (1.f / coef); float Qq = (float) Qpro * 327.68f * (1.f / coef);
float Qold100 = (float) Qpro / coef; float Qold100 = (float) Qpro / coef;
@ -2238,8 +2366,15 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts Qq = 0.7f * (Qq - Qold) + Qold; // not zero ==>artifacts
} }
Qpro = (float) (Qq * (coef) / 327.68f); if (Qold == 0.f) {
Jpro = 100.f * (Qpro * Qpro) / ((4.0f / c) * (4.0f / c) * (aw + 4.0f) * (aw + 4.0f)); Qold = 0.001f;
}
// Qpro = (float) (Qq * (coef) / 327.68f);
Qpro = Qanc * (Qq / Qold);
Jpro = Jpro * SQR (Qq / Qold);
// Jpro = 100.f * (Qpro * Qpro) / ((4.0f / c) * (4.0f / c) * (aw + 4.0f) * (aw + 4.0f));
if (t1L) { //to workaround the problem if we modify curve1-lightnees after curve2 brightness(the cat that bites its own tail!) in fact it's another type of curve only for this case if (t1L) { //to workaround the problem if we modify curve1-lightnees after curve2 brightness(the cat that bites its own tail!) in fact it's another type of curve only for this case
coef = 2.f; //adapt Q to J approximation coef = 2.f; //adapt Q to J approximation
@ -2734,13 +2869,13 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int
hist16JCAM[posl]++; hist16JCAM[posl]++;
if (curveMode3 == ColorAppearanceParams::TC_MODE_CHROMA) { if (curveMode3 == ColorAppearanceParams::TC_MODE_CHROMA) {
chsacol = 327.f; chsacol = 400.f;//327.f;
colch = ncie_C_p; colch = ncie_C_p;
} else if (curveMode3 == ColorAppearanceParams::TC_MODE_SATUR) { } else if (curveMode3 == ColorAppearanceParams::TC_MODE_SATUR) {
chsacol = 450.0f; chsacol = 450.0f;
colch = 100.f * sqrtf (ncie_C_p / ncie->Q_p[i][j]); colch = 100.f * sqrtf (ncie_C_p / ncie->Q_p[i][j]);
} else { /*if(curveMode3 == ColorAppearanceParams::TC_MODE_COLORF)*/ } else { /*if(curveMode3 == ColorAppearanceParams::TC_MODE_COLORF)*/
chsacol = 327.0f; chsacol = 400.f;//327.0f;
colch = ncie->M_p[i][j]; colch = ncie->M_p[i][j];
} }

View File

@ -52,11 +52,15 @@ class ImProcFunctions
double scale; double scale;
bool multiThread; bool multiThread;
void calcVignettingParams(int oW, int oH, const VignettingParams& vignetting, double &w2, double &h2, double& maxRadius, double &v, double &b, double &mul); void calcVignettingParams (int oW, int oH, const VignettingParams& vignetting, double &w2, double &h2, double& maxRadius, double &v, double &b, double &mul);
void transformPreview (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, const LCPMapper *pLCPMap); enum TransformMode {
TRANSFORM_PREVIEW,
TRANSFORM_HIGH_QUALITY,
TRANSFORM_HIGH_QUALITY_FULLIMAGE
};
void transformLuminanceOnly (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int oW, int oH, int fW, int fH); void transformLuminanceOnly (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int oW, int oH, int fW, int fH);
void transformHighQuality (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, const LCPMapper *pLCPMap, bool fullImage); void transformGeneral(TransformMode mode, Imagefloat *original, Imagefloat *transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, const LensCorrection *pLCPMap);
void sharpenHaloCtrl (float** luminance, float** blurmap, float** base, int W, int H, const SharpeningParams &sharpenParam); void sharpenHaloCtrl (float** luminance, float** blurmap, float** base, int W, int H, const SharpeningParams &sharpenParam);
void sharpenHaloCtrl (LabImage* lab, float** blurmap, float** base, int W, int H, SharpeningParams &sharpenParam); void sharpenHaloCtrl (LabImage* lab, float** blurmap, float** base, int W, int H, SharpeningParams &sharpenParam);
@ -70,6 +74,7 @@ class ImProcFunctions
bool needsGradient (); bool needsGradient ();
bool needsVignetting (); bool needsVignetting ();
bool needsLCP (); bool needsLCP ();
bool needsLensfun();
// static cmsUInt8Number* Mempro = NULL; // static cmsUInt8Number* Mempro = NULL;
inline void interpolateTransformCubic (Imagefloat* src, int xs, int ys, double Dx, double Dy, float *r, float *g, float *b, double mul) inline void interpolateTransformCubic (Imagefloat* src, int xs, int ys, double Dx, double Dy, float *r, float *g, float *b, double mul)
@ -95,9 +100,9 @@ class ImProcFunctions
rd = gd = bd = 0.0; rd = gd = bd = 0.0;
for (int i = xs, ix = 0; i < xs + 4; i++, ix++) { for (int i = xs, ix = 0; i < xs + 4; i++, ix++) {
rd += src->r(k, i) * w[ix]; rd += src->r (k, i) * w[ix];
gd += src->g(k, i) * w[ix]; gd += src->g (k, i) * w[ix];
bd += src->b(k, i) * w[ix]; bd += src->b (k, i) * w[ix];
} }
yr[kx] = rd; yr[kx] = rd;
@ -196,7 +201,7 @@ public:
double lumimul[3]; double lumimul[3];
ImProcFunctions (const ProcParams* iparams, bool imultiThread = true) ImProcFunctions (const ProcParams* iparams, bool imultiThread = true)
: monitorTransform(nullptr), lab2outputTransform(nullptr), output2monitorTransform(nullptr), params(iparams), scale(1), multiThread(imultiThread), lumimul{} {} : monitorTransform (nullptr), lab2outputTransform (nullptr), output2monitorTransform (nullptr), params (iparams), scale (1), multiThread (imultiThread), lumimul{} {}
~ImProcFunctions (); ~ImProcFunctions ();
void setScale (double iscale); void setScale (double iscale);
@ -207,10 +212,10 @@ public:
void firstAnalysis (const Imagefloat* const working, const ProcParams &params, LUTu & vhist16); void firstAnalysis (const Imagefloat* const working, const ProcParams &params, LUTu & vhist16);
void updateColorProfiles (const Glib::ustring& monitorProfile, RenderingIntent monitorIntent, bool softProof, bool gamutCheck); void updateColorProfiles (const Glib::ustring& monitorProfile, RenderingIntent monitorIntent, bool softProof, bool gamutCheck);
void rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer *pipetteBuffer, LUTf & hltonecurve, LUTf & shtonecurve, LUTf & tonecurve, void rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer *pipetteBuffer, LUTf & hltonecurve, LUTf & shtonecurve, LUTf & tonecurve,
SHMap* shmap, int sat, LUTf & rCurve, LUTf & gCurve, LUTf & bCurve, float satLimit , float satLimitOpacity, const ColorGradientCurve & ctColorCurve, const OpacityCurve & ctOpacityCurve, bool opautili, LUTf & clcurve, LUTf & cl2curve, const ToneCurve & customToneCurve1, const ToneCurve & customToneCurve2, SHMap* shmap, int sat, LUTf & rCurve, LUTf & gCurve, LUTf & bCurve, float satLimit, float satLimitOpacity, const ColorGradientCurve & ctColorCurve, const OpacityCurve & ctOpacityCurve, bool opautili, LUTf & clcurve, LUTf & cl2curve, const ToneCurve & customToneCurve1, const ToneCurve & customToneCurve2,
const ToneCurve & customToneCurvebw1, const ToneCurve & customToneCurvebw2, double &rrm, double &ggm, double &bbm, float &autor, float &autog, float &autob, DCPProfile *dcpProf, const DCPProfile::ApplyState &asIn, LUTu &histToneCurve ); const ToneCurve & customToneCurvebw1, const ToneCurve & customToneCurvebw2, double &rrm, double &ggm, double &bbm, float &autor, float &autog, float &autob, DCPProfile *dcpProf, const DCPProfile::ApplyState &asIn, LUTu &histToneCurve );
void rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer *pipetteBuffer, LUTf & hltonecurve, LUTf & shtonecurve, LUTf & tonecurve, void rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer *pipetteBuffer, LUTf & hltonecurve, LUTf & shtonecurve, LUTf & tonecurve,
SHMap* shmap, int sat, LUTf & rCurve, LUTf & gCurve, LUTf & bCurve, float satLimit , float satLimitOpacity, const ColorGradientCurve & ctColorCurve, const OpacityCurve & ctOpacityCurve, bool opautili, LUTf & clcurve, LUTf & cl2curve, const ToneCurve & customToneCurve1, const ToneCurve & customToneCurve2, SHMap* shmap, int sat, LUTf & rCurve, LUTf & gCurve, LUTf & bCurve, float satLimit, float satLimitOpacity, const ColorGradientCurve & ctColorCurve, const OpacityCurve & ctOpacityCurve, bool opautili, LUTf & clcurve, LUTf & cl2curve, const ToneCurve & customToneCurve1, const ToneCurve & customToneCurve2,
const ToneCurve & customToneCurvebw1, const ToneCurve & customToneCurvebw2, double &rrm, double &ggm, double &bbm, float &autor, float &autog, float &autob, const ToneCurve & customToneCurvebw1, const ToneCurve & customToneCurvebw2, double &rrm, double &ggm, double &bbm, float &autor, float &autog, float &autob,
double expcomp, int hlcompr, int hlcomprthresh, DCPProfile *dcpProf, const DCPProfile::ApplyState &asIn, LUTu &histToneCurve); double expcomp, int hlcompr, int hlcomprthresh, DCPProfile *dcpProf, const DCPProfile::ApplyState &asIn, LUTu &histToneCurve);
void labtoning (float r, float g, float b, float &ro, float &go, float &bo, int algm, int metchrom, int twoc, float satLimit, float satLimitOpacity, const ColorGradientCurve & ctColorCurve, const OpacityCurve & ctOpacityCurve, LUTf & clToningcurve, LUTf & cl2Toningcurve, float iplow, float iphigh, double wp[3][3], double wip[3][3] ); void labtoning (float r, float g, float b, float &ro, float &go, float &bo, int algm, int metchrom, int twoc, float satLimit, float satLimitOpacity, const ColorGradientCurve & ctColorCurve, const OpacityCurve & ctOpacityCurve, LUTf & clToningcurve, LUTf & cl2Toningcurve, float iplow, float iphigh, double wp[3][3], double wip[3][3] );
@ -226,17 +231,16 @@ public:
void luminanceCurve (LabImage* lold, LabImage* lnew, LUTf &curve); void luminanceCurve (LabImage* lold, LabImage* lnew, LUTf &curve);
void ciecam_02float (CieImage* ncie, float adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, void ciecam_02float (CieImage* ncie, float adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params,
const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve, const ColorAppearance & customColCurve3, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve, const ColorAppearance & customColCurve3,
LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, int rtt); LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, float &dj, float &yb, int rtt);
void ciecam_02 (CieImage* ncie, double adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, void ciecam_02 (CieImage* ncie, double adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params,
const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve, const ColorAppearance & customColCurve3, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve, const ColorAppearance & customColCurve3,
LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, int rtt); LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, double &dj, double &yb, int rtt);
void chromiLuminanceCurve (PipetteBuffer *pipetteBuffer, int pW, LabImage* lold, LabImage* lnew, LUTf &acurve, LUTf &bcurve, LUTf & satcurve, LUTf & satclcurve, LUTf &clcurve, LUTf &curve, bool utili, bool autili, bool butili, bool ccutili, bool cclutili, bool clcutili, LUTu &histCCurve, LUTu &histLurve); void chromiLuminanceCurve (PipetteBuffer *pipetteBuffer, int pW, LabImage* lold, LabImage* lnew, LUTf &acurve, LUTf &bcurve, LUTf & satcurve, LUTf & satclcurve, LUTf &clcurve, LUTf &curve, bool utili, bool autili, bool butili, bool ccutili, bool cclutili, bool clcutili, LUTu &histCCurve, LUTu &histLurve);
void vibrance (LabImage* lab);//Jacques' vibrance void vibrance (LabImage* lab);//Jacques' vibrance
void colorCurve (LabImage* lold, LabImage* lnew); void colorCurve (LabImage* lold, LabImage* lnew);
void sharpening (LabImage* lab, float** buffer, SharpeningParams &sharpenParam); void sharpening (LabImage* lab, float** buffer, SharpeningParams &sharpenParam);
void sharpeningcam (CieImage* ncie, float** buffer); void sharpeningcam (CieImage* ncie, float** buffer);
void transform (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, void transform (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, const FramesMetaData *metadata, int rawRotationDeg, bool fullImage);
double focalLen, double focalLen35mm, float focusDist, double fNumber, int rawRotationDeg, bool fullImage);
float resizeScale (const ProcParams* params, int fw, int fh, int &imw, int &imh); float resizeScale (const ProcParams* params, int fw, int fh, int &imw, int &imh);
void lab2monitorRgb (LabImage* lab, Image8* image); void lab2monitorRgb (LabImage* lab, Image8* image);
void resize (Image16* src, Image16* dst, float dScale); void resize (Image16* src, Image16* dst, float dScale);
@ -245,9 +249,9 @@ public:
void deconvsharpening (float** luminance, float** buffer, int W, int H, const SharpeningParams &sharpenParam); void deconvsharpening (float** luminance, float** buffer, int W, int H, const SharpeningParams &sharpenParam);
void MLsharpen (LabImage* lab);// Manuel's clarity / sharpening void MLsharpen (LabImage* lab);// Manuel's clarity / sharpening
void MLmicrocontrast(float** luminance, int W, int H ); //Manuel's microcontrast void MLmicrocontrast (float** luminance, int W, int H ); //Manuel's microcontrast
void MLmicrocontrast(LabImage* lab ); //Manuel's microcontrast void MLmicrocontrast (LabImage* lab ); //Manuel's microcontrast
void MLmicrocontrastcam(CieImage* ncie ); //Manuel's microcontrast void MLmicrocontrastcam (CieImage* ncie ); //Manuel's microcontrast
void impulsedenoise (LabImage* lab);//Emil's impulse denoise void impulsedenoise (LabImage* lab);//Emil's impulse denoise
void impulsedenoisecam (CieImage* ncie, float **buffers[3]); void impulsedenoisecam (CieImage* ncie, float **buffers[3]);
@ -258,13 +262,13 @@ public:
void dirpyrequalizer (LabImage* lab, int scale);//Emil's wavelet void dirpyrequalizer (LabImage* lab, int scale);//Emil's wavelet
void EPDToneMapResid(float * WavCoeffs_L0, unsigned int Iterates, int skip, struct cont_params& cp, int W_L, int H_L, float max0, float min0); void EPDToneMapResid (float * WavCoeffs_L0, unsigned int Iterates, int skip, struct cont_params& cp, int W_L, int H_L, float max0, float min0);
float *CompressDR(float *Source, int skip, struct cont_params &cp, int W_L, int H_L, float Compression, float DetailBoost, float max0, float min0, float ave, float ah, float bh, float al, float bl, float factorx, float *Compressed); float *CompressDR (float *Source, int skip, struct cont_params &cp, int W_L, int H_L, float Compression, float DetailBoost, float max0, float min0, float ave, float ah, float bh, float al, float bl, float factorx, float *Compressed);
void ContrastResid(float * WavCoeffs_L0, unsigned int Iterates, int skip, struct cont_params &cp, int W_L, int H_L, float max0, float min0, float ave, float ah, float bh, float al, float bl, float factorx); void ContrastResid (float * WavCoeffs_L0, unsigned int Iterates, int skip, struct cont_params &cp, int W_L, int H_L, float max0, float min0, float ave, float ah, float bh, float al, float bl, float factorx);
float *ContrastDR(float *Source, int skip, struct cont_params &cp, int W_L, int H_L, float Compression, float DetailBoost, float max0, float min0, float ave, float ah, float bh, float al, float bl, float factorx, float *Contrast = nullptr); float *ContrastDR (float *Source, int skip, struct cont_params &cp, int W_L, int H_L, float Compression, float DetailBoost, float max0, float min0, float ave, float ah, float bh, float al, float bl, float factorx, float *Contrast = nullptr);
void EPDToneMap(LabImage *lab, unsigned int Iterates = 0, int skip = 1); void EPDToneMap (LabImage *lab, unsigned int Iterates = 0, int skip = 1);
void EPDToneMapCIE(CieImage *ncie, float a_w, float c_, float w_h, int Wid, int Hei, int begh, int endh, float minQ, float maxQ, unsigned int Iterates = 0, int skip = 1); void EPDToneMapCIE (CieImage *ncie, float a_w, float c_, float w_h, int Wid, int Hei, int begh, int endh, float minQ, float maxQ, unsigned int Iterates = 0, int skip = 1);
// pyramid denoise // pyramid denoise
procparams::DirPyrDenoiseParams dnparams; procparams::DirPyrDenoiseParams dnparams;
@ -274,58 +278,58 @@ public:
int pitch, int scale, const int luma, const int chroma/*, LUTf & Lcurve, LUTf & abcurve*/ ); int pitch, int scale, const int luma, const int chroma/*, LUTf & Lcurve, LUTf & abcurve*/ );
void Tile_calc (int tilesize, int overlap, int kall, int imwidth, int imheight, int &numtiles_W, int &numtiles_H, int &tilewidth, int &tileheight, int &tileWskip, int &tileHskip); void Tile_calc (int tilesize, int overlap, int kall, int imwidth, int imheight, int &numtiles_W, int &numtiles_H, int &tilewidth, int &tileheight, int &tileWskip, int &tileHskip);
void ip_wavelet(LabImage * lab, LabImage * dst, int kall, const procparams::WaveletParams & waparams, const WavCurve & wavCLVCcurve, const WavOpacityCurveRG & waOpacityCurveRG, const WavOpacityCurveBY & waOpacityCurveBY, const WavOpacityCurveW & waOpacityCurveW, const WavOpacityCurveWL & waOpacityCurveWL, LUTf &wavclCurve, bool wavcontlutili, int skip); void ip_wavelet (LabImage * lab, LabImage * dst, int kall, const procparams::WaveletParams & waparams, const WavCurve & wavCLVCcurve, const WavOpacityCurveRG & waOpacityCurveRG, const WavOpacityCurveBY & waOpacityCurveBY, const WavOpacityCurveW & waOpacityCurveW, const WavOpacityCurveWL & waOpacityCurveWL, LUTf &wavclCurve, bool wavcontlutili, int skip);
void WaveletcontAllL(LabImage * lab, float **varhue, float **varchrom, wavelet_decomposition &WaveletCoeffs_L, void WaveletcontAllL (LabImage * lab, float **varhue, float **varchrom, wavelet_decomposition &WaveletCoeffs_L,
struct cont_params &cp, int skip, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, const WavCurve & wavCLVCcurve, const WavOpacityCurveW & waOpacityCurveW, const WavOpacityCurveWL & waOpacityCurveWL, FlatCurve* ChCurve, bool Chutili); struct cont_params &cp, int skip, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, const WavCurve & wavCLVCcurve, const WavOpacityCurveW & waOpacityCurveW, const WavOpacityCurveWL & waOpacityCurveWL, FlatCurve* ChCurve, bool Chutili);
void WaveletcontAllLfinal(wavelet_decomposition &WaveletCoeffs_L, struct cont_params &cp, float *mean, float *sigma, float *MaxP, const WavOpacityCurveWL & waOpacityCurveWL); void WaveletcontAllLfinal (wavelet_decomposition &WaveletCoeffs_L, struct cont_params &cp, float *mean, float *sigma, float *MaxP, const WavOpacityCurveWL & waOpacityCurveWL);
void WaveletcontAllAB(LabImage * lab, float **varhue, float **varchrom, wavelet_decomposition &WaveletCoeffs_a, const WavOpacityCurveW & waOpacityCurveW, void WaveletcontAllAB (LabImage * lab, float **varhue, float **varchrom, wavelet_decomposition &WaveletCoeffs_a, const WavOpacityCurveW & waOpacityCurveW,
struct cont_params &cp, const bool useChannelA); struct cont_params &cp, const bool useChannelA);
void WaveletAandBAllAB(LabImage * lab, float **varhue, float **varchrom, wavelet_decomposition &WaveletCoeffs_a, wavelet_decomposition &WaveletCoeffs_b, void WaveletAandBAllAB (LabImage * lab, float **varhue, float **varchrom, wavelet_decomposition &WaveletCoeffs_a, wavelet_decomposition &WaveletCoeffs_b,
struct cont_params &cp, const WavOpacityCurveW & waOpacityCurveW, FlatCurve* hhcurve, bool hhutili); struct cont_params &cp, const WavOpacityCurveW & waOpacityCurveW, FlatCurve* hhcurve, bool hhutili);
void ContAllL (float **koeLi, float *maxkoeLi, bool lipschitz, int maxlvl, LabImage * lab, float **varhue, float **varchrom, float ** WavCoeffs_L, float * WavCoeffs_L0, int level, int dir, struct cont_params &cp, void ContAllL (float **koeLi, float *maxkoeLi, bool lipschitz, int maxlvl, LabImage * lab, float **varhue, float **varchrom, float ** WavCoeffs_L, float * WavCoeffs_L0, int level, int dir, struct cont_params &cp,
int W_L, int H_L, int skip, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, const WavCurve & wavCLVCcurve, const WavOpacityCurveW & waOpacityCurveW, FlatCurve* ChCurve, bool Chutili); int W_L, int H_L, int skip, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, const WavCurve & wavCLVCcurve, const WavOpacityCurveW & waOpacityCurveW, FlatCurve* ChCurve, bool Chutili);
void finalContAllL (float ** WavCoeffs_L, float * WavCoeffs_L0, int level, int dir, struct cont_params &cp, void finalContAllL (float ** WavCoeffs_L, float * WavCoeffs_L0, int level, int dir, struct cont_params &cp,
int W_L, int H_L, float *mean, float *sigma, float *MaxP, const WavOpacityCurveWL & waOpacityCurveWL); int W_L, int H_L, float *mean, float *sigma, float *MaxP, const WavOpacityCurveWL & waOpacityCurveWL);
void ContAllAB (LabImage * lab, int maxlvl, float **varhue, float **varchrom, float ** WavCoeffs_a, float * WavCoeffs_a0, int level, int dir, const WavOpacityCurveW & waOpacityCurveW, struct cont_params &cp, void ContAllAB (LabImage * lab, int maxlvl, float **varhue, float **varchrom, float ** WavCoeffs_a, float * WavCoeffs_a0, int level, int dir, const WavOpacityCurveW & waOpacityCurveW, struct cont_params &cp,
int W_ab, int H_ab, const bool useChannelA); int W_ab, int H_ab, const bool useChannelA);
void Evaluate2(wavelet_decomposition &WaveletCoeffs_L, void Evaluate2 (wavelet_decomposition &WaveletCoeffs_L,
const struct cont_params& cp, int ind, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, float madL[8][3]); const struct cont_params& cp, int ind, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, float madL[8][3]);
void Eval2 (float ** WavCoeffs_L, int level, const struct cont_params& cp, void Eval2 (float ** WavCoeffs_L, int level, const struct cont_params& cp,
int W_L, int H_L, int skip_L, int ind, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, float *madL); int W_L, int H_L, int skip_L, int ind, float *mean, float *meanN, float *sigma, float *sigmaN, float *MaxP, float *MaxN, float *madL);
void Aver(float * HH_Coeffs, int datalen, float &averagePlus, float &averageNeg, float &max, float &min); void Aver (float * HH_Coeffs, int datalen, float &averagePlus, float &averageNeg, float &max, float &min);
void Sigma(float * HH_Coeffs, int datalen, float averagePlus, float averageNeg, float &sigmaPlus, float &sigmaNeg); void Sigma (float * HH_Coeffs, int datalen, float averagePlus, float averageNeg, float &sigmaPlus, float &sigmaNeg);
void calckoe(float ** WavCoeffs_LL, const struct cont_params& cp, float ** koeLi, int level, int dir, int W_L, int H_L, float edd, float *maxkoeLi, float **tmC = nullptr); void calckoe (float ** WavCoeffs_LL, const struct cont_params& cp, float ** koeLi, int level, int dir, int W_L, int H_L, float edd, float *maxkoeLi, float **tmC = nullptr);
void Median_Denoise( float **src, float **dst, int width, int height, Median medianType, int iterations, int numThreads, float **buffer = nullptr); void Median_Denoise ( float **src, float **dst, int width, int height, Median medianType, int iterations, int numThreads, float **buffer = nullptr);
void 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); void 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);
void RGB_denoise_infoGamCurve(const procparams::DirPyrDenoiseParams & dnparams, const bool isRAW, LUTf &gamcurve, float &gam, float &gamthresh, float &gamslope); void RGB_denoise_infoGamCurve (const procparams::DirPyrDenoiseParams & dnparams, const bool isRAW, LUTf &gamcurve, float &gam, float &gamthresh, float &gamslope);
void RGB_denoise_info(Imagefloat * src, Imagefloat * provicalc, bool isRAW, LUTf &gamcurve, float gam, float gamthresh, float gamslope, const procparams::DirPyrDenoiseParams & dnparams, const double expcomp, float &chaut, int &Nb, float &redaut, float &blueaut, float &maxredaut, float & maxblueaut, float &minredaut, float & minblueaut, float &chromina, float &sigma, float &lumema, float &sigma_L, float &redyel, float &skinc, float &nsknc, bool multiThread = false); void RGB_denoise_info (Imagefloat * src, Imagefloat * provicalc, bool isRAW, LUTf &gamcurve, float gam, float gamthresh, float gamslope, const procparams::DirPyrDenoiseParams & dnparams, const double expcomp, float &chaut, int &Nb, float &redaut, float &blueaut, float &maxredaut, float & maxblueaut, float &minredaut, float & minblueaut, float &chromina, float &sigma, float &lumema, float &sigma_L, float &redyel, float &skinc, float &nsknc, bool multiThread = false);
void RGBtile_denoise (float * fLblox, int hblproc, float noisevar_Ldetail, float * nbrwt, float * blurbuffer ); //for DCT void RGBtile_denoise (float * fLblox, int hblproc, float noisevar_Ldetail, float * nbrwt, float * blurbuffer ); //for DCT
void RGBoutput_tile_row (float *bloxrow_L, float ** Ldetail, float ** tilemask_out, int height, int width, int top ); void RGBoutput_tile_row (float *bloxrow_L, float ** Ldetail, float ** tilemask_out, int height, int width, int top );
bool WaveletDenoiseAllL(wavelet_decomposition &WaveletCoeffs_L, float *noisevarlum, float madL[8][3], float * vari, int edge); bool WaveletDenoiseAllL (wavelet_decomposition &WaveletCoeffs_L, float *noisevarlum, float madL[8][3], float * vari, int edge);
bool WaveletDenoiseAllAB(wavelet_decomposition &WaveletCoeffs_L, wavelet_decomposition &WaveletCoeffs_ab, float *noisevarchrom, float madL[8][3], float noisevar_ab, const bool useNoiseCCurve, bool autoch, bool denoiseMethodRgb); bool WaveletDenoiseAllAB (wavelet_decomposition &WaveletCoeffs_L, wavelet_decomposition &WaveletCoeffs_ab, float *noisevarchrom, float madL[8][3], float noisevar_ab, const bool useNoiseCCurve, bool autoch, bool denoiseMethodRgb);
void WaveletDenoiseAll_info(int levwav, wavelet_decomposition &WaveletCoeffs_a, void WaveletDenoiseAll_info (int levwav, wavelet_decomposition &WaveletCoeffs_a,
wavelet_decomposition &WaveletCoeffs_b, float **noisevarlum, float **noisevarchrom, float **noisevarhue, int width, int height, float noisevar_abr, float noisevar_abb, LabImage * noi, float &chaut, int &Nb, float &redaut, float &blueaut, float &maxredaut, float &maxblueaut, float &minredaut, float & minblueaut, int schoice, bool autoch, float &chromina, float &sigma, float &lumema, float &sigma_L, float &redyel, float &skinc, float &nsknc, wavelet_decomposition &WaveletCoeffs_b, float **noisevarlum, float **noisevarchrom, float **noisevarhue, int width, int height, float noisevar_abr, float noisevar_abb, LabImage * noi, float &chaut, int &Nb, float &redaut, float &blueaut, float &maxredaut, float &maxblueaut, float &minredaut, float & minblueaut, int schoice, bool autoch, float &chromina, float &sigma, float &lumema, float &sigma_L, float &redyel, float &skinc, float &nsknc,
float &maxchred, float &maxchblue, float &minchred, float &minchblue, int &nb, float &chau, float &chred, float &chblue, bool denoiseMethodRgb, bool multiThread); float &maxchred, float &maxchblue, float &minchred, float &minchblue, int &nb, float &chau, float &chred, float &chblue, bool denoiseMethodRgb, bool multiThread);
bool WaveletDenoiseAll_BiShrinkL(wavelet_decomposition &WaveletCoeffs_L, float *noisevarlum, float madL[8][3]); bool WaveletDenoiseAll_BiShrinkL (wavelet_decomposition &WaveletCoeffs_L, float *noisevarlum, float madL[8][3]);
bool WaveletDenoiseAll_BiShrinkAB(wavelet_decomposition &WaveletCoeffs_L, wavelet_decomposition &WaveletCoeffs_ab, float *noisevarchrom, float madL[8][3], float noisevar_ab, bool WaveletDenoiseAll_BiShrinkAB (wavelet_decomposition &WaveletCoeffs_L, wavelet_decomposition &WaveletCoeffs_ab, float *noisevarchrom, float madL[8][3], float noisevar_ab,
const bool useNoiseCCurve, bool autoch, bool denoiseMethodRgb); const bool useNoiseCCurve, bool autoch, bool denoiseMethodRgb);
void ShrinkAllL(wavelet_decomposition &WaveletCoeffs_L, float **buffer, int level, int dir, float *noisevarlum, float * madL, float * vari, int edge); void ShrinkAllL (wavelet_decomposition &WaveletCoeffs_L, float **buffer, int level, int dir, float *noisevarlum, float * madL, float * vari, int edge);
void ShrinkAllAB(wavelet_decomposition &WaveletCoeffs_L, wavelet_decomposition &WaveletCoeffs_ab, float **buffer, int level, int dir, void ShrinkAllAB (wavelet_decomposition &WaveletCoeffs_L, wavelet_decomposition &WaveletCoeffs_ab, float **buffer, int level, int dir,
float *noisevarchrom, float noisevar_ab, const bool useNoiseCCurve, bool autoch, bool denoiseMethodRgb, float * madL, float * madaab = nullptr, bool madCalculated = false); float *noisevarchrom, float noisevar_ab, const bool useNoiseCCurve, bool autoch, bool denoiseMethodRgb, float * madL, float * madaab = nullptr, bool madCalculated = false);
void ShrinkAll_info(float ** WavCoeffs_a, float ** WavCoeffs_b, int level, void ShrinkAll_info (float ** WavCoeffs_a, float ** WavCoeffs_b, int level,
int W_ab, int H_ab, int skip_ab, float **noisevarlum, float **noisevarchrom, float **noisevarhue, int width, int height, float noisevar_abr, float noisevar_abb, LabImage * noi, float &chaut, int &Nb, float &redaut, float &blueaut, float &maxredaut, float &maxblueaut, float &minredaut, float &minblueaut, bool autoch, int schoice, int lvl, float &chromina, float &sigma, float &lumema, float &sigma_L, float &redyel, float &skinc, float &nsknc, int W_ab, int H_ab, int skip_ab, float **noisevarlum, float **noisevarchrom, float **noisevarhue, int width, int height, float noisevar_abr, float noisevar_abb, LabImage * noi, float &chaut, int &Nb, float &redaut, float &blueaut, float &maxredaut, float &maxblueaut, float &minredaut, float &minblueaut, bool autoch, int schoice, int lvl, float &chromina, float &sigma, float &lumema, float &sigma_L, float &redyel, float &skinc, float &nsknc,
float &maxchred, float &maxchblue, float &minchred, float &minchblue, int &nb, float &chau, float &chred, float &chblue, bool denoiseMethodRgb, bool multiThread); float &maxchred, float &maxchblue, float &minchred, float &minchblue, int &nb, float &chau, float &chred, float &chblue, bool denoiseMethodRgb, bool multiThread);
void Noise_residualAB(wavelet_decomposition &WaveletCoeffs_ab, float &chresid, float &chmaxresid, bool denoiseMethodRgb); void Noise_residualAB (wavelet_decomposition &WaveletCoeffs_ab, float &chresid, float &chmaxresid, bool denoiseMethodRgb);
void 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); void 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);
float MadMax(float * DataList, int &max, int datalen); float MadMax (float * DataList, int &max, int datalen);
float Mad(float * DataList, const int datalen); float Mad (float * DataList, const int datalen);
float MadRgb(float * DataList, const int datalen); float MadRgb (float * DataList, const int datalen);
// pyramid wavelet // pyramid wavelet
void dirpyr_equalizer (float ** src, float ** dst, int srcwidth, int srcheight, float ** l_a, float ** l_b, float ** dest_a, float ** dest_b, const double * mult, const double dirpyrThreshold, const double skinprot, const bool gamutlab, float b_l, float t_l, float t_r, float b_r, int choice, int scale);//Emil's directional pyramid wavelet void dirpyr_equalizer (float ** src, float ** dst, int srcwidth, int srcheight, float ** l_a, float ** l_b, float ** dest_a, float ** dest_b, const double * mult, const double dirpyrThreshold, const double skinprot, const bool gamutlab, float b_l, float t_l, float t_r, float b_r, int choice, int scale);//Emil's directional pyramid wavelet
@ -340,20 +344,20 @@ public:
void PF_correct_RT (LabImage * src, LabImage * dst, double radius, int thresh); void PF_correct_RT (LabImage * src, LabImage * dst, double radius, int thresh);
void PF_correct_RTcam (CieImage * src, CieImage * dst, double radius, int thresh); void PF_correct_RTcam (CieImage * src, CieImage * dst, double radius, int thresh);
void Badpixelscam(CieImage * src, CieImage * dst, double radius, int thresh, int mode, float b_l, float t_l, float t_r, float b_r, float skinprot, float chrom, int hotbad); void Badpixelscam (CieImage * src, CieImage * dst, double radius, int thresh, int mode, float b_l, float t_l, float t_r, float b_r, float skinprot, float chrom, int hotbad);
void BadpixelsLab(LabImage * src, LabImage * dst, double radius, int thresh, int mode, float b_l, float t_l, float t_r, float b_r, float skinprot, float chrom); void BadpixelsLab (LabImage * src, LabImage * dst, double radius, int thresh, int mode, float b_l, float t_l, float t_r, float b_r, float skinprot, float chrom);
Image8* lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, const procparams::ColorManagementParams &icm); Image8* lab2rgb (LabImage* lab, int cx, int cy, int cw, int ch, const procparams::ColorManagementParams &icm);
Image16* lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int ch, const procparams::ColorManagementParams &icm, bool bw, GammaValues *ga=nullptr); Image16* lab2rgb16 (LabImage* lab, int cx, int cy, int cw, int ch, const procparams::ColorManagementParams &icm, bool bw, GammaValues *ga = nullptr);
// CieImage *ciec; // CieImage *ciec;
bool transCoord (int W, int H, int x, int y, int w, int h, int& xv, int& yv, int& wv, int& hv, double ascaleDef = -1, const LCPMapper *pLCPMap = nullptr); bool transCoord (int W, int H, int x, int y, int w, int h, int& xv, int& yv, int& wv, int& hv, double ascaleDef = -1, const LensCorrection *pLCPMap = nullptr);
bool transCoord (int W, int H, const std::vector<Coord2D> &src, std::vector<Coord2D> &red, std::vector<Coord2D> &green, std::vector<Coord2D> &blue, double ascaleDef = -1, const LCPMapper *pLCPMap = nullptr); bool transCoord (int W, int H, const std::vector<Coord2D> &src, std::vector<Coord2D> &red, std::vector<Coord2D> &green, std::vector<Coord2D> &blue, double ascaleDef = -1, const LensCorrection *pLCPMap = nullptr);
static void getAutoExp (const LUTu & histogram, int histcompr, double defgain, double clip, double& expcomp, int& bright, int& contr, int& black, int& hlcompr, int& hlcomprthresh); static void getAutoExp (const LUTu & histogram, int histcompr, double defgain, double clip, double& expcomp, int& bright, int& contr, int& black, int& hlcompr, int& hlcomprthresh);
static double getAutoDistor (const Glib::ustring& fname, int thumb_size); static double getAutoDistor (const Glib::ustring& fname, int thumb_size);
double getTransformAutoFill (int oW, int oH, const LCPMapper *pLCPMap = nullptr); double getTransformAutoFill (int oW, int oH, const LensCorrection *pLCPMap = nullptr);
void rgb2lab(const Imagefloat &src, LabImage &dst, const Glib::ustring &workingSpace); void rgb2lab (const Imagefloat &src, LabImage &dst, const Glib::ustring &workingSpace);
void lab2rgb(const LabImage &src, Imagefloat &dst, const Glib::ustring &workingSpace); void lab2rgb (const LabImage &src, Imagefloat &dst, const Glib::ustring &workingSpace);
}; };
} }
#endif #endif

View File

@ -30,6 +30,7 @@
#include "rtthumbnail.h" #include "rtthumbnail.h"
#include "profilestore.h" #include "profilestore.h"
#include "../rtgui/threadutils.h" #include "../rtgui/threadutils.h"
#include "rtlensfun.h"
namespace rtengine namespace rtengine
{ {
@ -50,6 +51,7 @@ int init (const Settings* s, Glib::ustring baseDir, Glib::ustring userSettingsDi
Color::init (); Color::init ();
PerceptualToneCurve::init (); PerceptualToneCurve::init ();
RawImageSource::init (); RawImageSource::init ();
LFDatabase::init(s->lensfunDbDirectory);
delete lcmsMutex; delete lcmsMutex;
lcmsMutex = new MyMutex; lcmsMutex = new MyMutex;
dfm.init( s->darkFramesPath ); dfm.init( s->darkFramesPath );

View File

@ -24,6 +24,7 @@
#include "mytime.h" #include "mytime.h"
#include "rt_math.h" #include "rt_math.h"
#include "sleef.c" #include "sleef.c"
#include "rtlensfun.h"
using namespace std; using namespace std;
@ -86,18 +87,6 @@ float normn (float a, float b, int n)
} }
void correct_distortion(const rtengine::LCPMapper *lcp, double &x, double &y,
int cx, int cy, double scale)
{
assert (lcp);
x += cx;
y += cy;
lcp->correctDistortion(x, y, scale);
x -= (cx * scale);
y -= (cy * scale);
}
} }
namespace rtengine namespace rtengine
@ -107,7 +96,7 @@ namespace rtengine
#define CLIPTOC(a,b,c,d) ((a)>=(b)?((a)<=(c)?(a):(d=true,(c))):(d=true,(b))) #define CLIPTOC(a,b,c,d) ((a)>=(b)?((a)<=(c)?(a):(d=true,(c))):(d=true,(b)))
bool ImProcFunctions::transCoord (int W, int H, const std::vector<Coord2D> &src, std::vector<Coord2D> &red, std::vector<Coord2D> &green, std::vector<Coord2D> &blue, double ascaleDef, bool ImProcFunctions::transCoord (int W, int H, const std::vector<Coord2D> &src, std::vector<Coord2D> &red, std::vector<Coord2D> &green, std::vector<Coord2D> &blue, double ascaleDef,
const LCPMapper *pLCPMap) const LensCorrection *pLCPMap)
{ {
bool clipped = false; bool clipped = false;
@ -157,7 +146,7 @@ bool ImProcFunctions::transCoord (int W, int H, const std::vector<Coord2D> &src,
double x_d = src[i].x, y_d = src[i].y; double x_d = src[i].x, y_d = src[i].y;
if (pLCPMap && params->lensProf.useDist) { if (pLCPMap && params->lensProf.useDist) {
correct_distortion (pLCPMap, x_d, y_d, 0, 0, ascale); pLCPMap->correctDistortion(x_d, y_d, 0, 0, ascale);
} else { } else {
x_d *= ascale; x_d *= ascale;
y_d *= ascale; y_d *= ascale;
@ -209,7 +198,7 @@ bool ImProcFunctions::transCoord (int W, int H, const std::vector<Coord2D> &src,
} }
// Transform all corners and critical sidelines of an image // Transform all corners and critical sidelines of an image
bool ImProcFunctions::transCoord (int W, int H, int x, int y, int w, int h, int& xv, int& yv, int& wv, int& hv, double ascaleDef, const LCPMapper *pLCPMap) bool ImProcFunctions::transCoord (int W, int H, int x, int y, int w, int h, int& xv, int& yv, int& wv, int& hv, double ascaleDef, const LensCorrection *pLCPMap)
{ {
const int DivisionsPerBorder = 32; const int DivisionsPerBorder = 32;
@ -307,32 +296,44 @@ bool ImProcFunctions::transCoord (int W, int H, int x, int y, int w, int h, int&
} }
void ImProcFunctions::transform (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, void ImProcFunctions::transform (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH,
double focalLen, double focalLen35mm, float focusDist, double fNumber, int rawRotationDeg, bool fullImage) const FramesMetaData *metadata,
int rawRotationDeg, bool fullImage)
{ {
double focalLen = metadata->getFocalLen();
double focalLen35mm = metadata->getFocalLen35mm();
float focusDist = metadata->getFocusDist();
double fNumber = metadata->getFNumber();
LCPMapper *pLCPMap = nullptr; std::unique_ptr<const LensCorrection> pLCPMap;
if (needsLCP()) { // don't check focal length to allow distortion correction for lenses without chip if (needsLensfun()) {
LCPProfile *pLCPProf = lcpStore->getProfile (params->lensProf.lcpFile); pLCPMap = std::move(LFDatabase::findModifier(params->lensProf, metadata, oW, oH, params->coarse, rawRotationDeg));
} else if (needsLCP()) { // don't check focal length to allow distortion correction for lenses without chip
const std::shared_ptr<LCPProfile> pLCPProf = LCPStore::getInstance()->getProfile (params->lensProf.lcpFile);
if (pLCPProf) { if (pLCPProf) {
pLCPMap = new LCPMapper (pLCPProf, focalLen, focalLen35mm, pLCPMap.reset(
focusDist, fNumber, false, new LCPMapper (pLCPProf, focalLen, focalLen35mm,
params->lensProf.useDist, focusDist, fNumber, false,
oW, oH, params->coarse, rawRotationDeg); params->lensProf.useDist,
oW, oH, params->coarse, rawRotationDeg
)
);
} }
} }
if (! (needsCA() || needsDistortion() || needsRotation() || needsPerspective() || needsLCP()) && (needsVignetting() || needsPCVignetting() || needsGradient())) { if (! (needsCA() || needsDistortion() || needsRotation() || needsPerspective() || needsLCP() || needsLensfun()) && (needsVignetting() || needsPCVignetting() || needsGradient())) {
transformLuminanceOnly (original, transformed, cx, cy, oW, oH, fW, fH); transformLuminanceOnly (original, transformed, cx, cy, oW, oH, fW, fH);
} else if (!needsCA() && scale != 1) {
transformPreview (original, transformed, cx, cy, sx, sy, oW, oH, fW, fH, pLCPMap);
} else { } else {
transformHighQuality (original, transformed, cx, cy, sx, sy, oW, oH, fW, fH, pLCPMap, fullImage); TransformMode mode;
} if (!needsCA() && scale != 1) {
mode = TRANSFORM_PREVIEW;
if (pLCPMap) { } else if (!fullImage) {
delete pLCPMap; mode = TRANSFORM_HIGH_QUALITY;
} else {
mode = TRANSFORM_HIGH_QUALITY_FULLIMAGE;
}
transformGeneral(mode, original, transformed, cx, cy, sx, sy, oW, oH, fW, fH, pLCPMap.get());
} }
} }
@ -721,9 +722,8 @@ void ImProcFunctions::transformLuminanceOnly (Imagefloat* original, Imagefloat*
} }
} }
// Transform WITH scaling (opt.) and CA, cubic interpolation
void ImProcFunctions::transformHighQuality (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, void ImProcFunctions::transformGeneral(ImProcFunctions::TransformMode mode, Imagefloat *original, Imagefloat *transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, const LensCorrection *pLCPMap)
const LCPMapper *pLCPMap, bool fullImage)
{ {
double w2 = (double) oW / 2.0 - 0.5; double w2 = (double) oW / 2.0 - 0.5;
double h2 = (double) oH / 2.0 - 0.5; double h2 = (double) oH / 2.0 - 0.5;
@ -781,17 +781,38 @@ void ImProcFunctions::transformHighQuality (Imagefloat* original, Imagefloat* tr
oH * tan (hpalpha) * sqrt (SQR (4 * maxRadius) + SQR (oH * tan (hpalpha)))) / (SQR (maxRadius) * 8))); oH * tan (hpalpha) * sqrt (SQR (4 * maxRadius) + SQR (oH * tan (hpalpha)))) / (SQR (maxRadius) * 8)));
double hpcospt = (hpdeg >= 0 ? 1.0 : -1.0) * cos (hpteta), hptanpt = tan (hpteta); double hpcospt = (hpdeg >= 0 ? 1.0 : -1.0) * cos (hpteta), hptanpt = tan (hpteta);
double ascale = params->commonTrans.autofill ? getTransformAutoFill (oW, oH, true /*fullImage*/ ? pLCPMap : nullptr) : 1.0; double ascale = params->commonTrans.autofill ? getTransformAutoFill (oW, oH, pLCPMap) : 1.0;
// smaller crop images are a problem, so only when processing fully // smaller crop images are a problem, so only when processing fully
bool enableLCPCA = pLCPMap && params->lensProf.useCA && fullImage && pLCPMap->enableCA; bool enableLCPCA = false;
bool enableLCPDist = pLCPMap && params->lensProf.useDist; // && fullImage; bool enableLCPDist = false;
bool enableCA = false;
if (enableLCPCA) { switch (mode) {
enableLCPDist = false; case ImProcFunctions::TRANSFORM_HIGH_QUALITY_FULLIMAGE: {
enableLCPCA = pLCPMap && params->lensProf.useCA && pLCPMap->isCACorrectionAvailable();
}
//no break on purpose
case ImProcFunctions::TRANSFORM_HIGH_QUALITY: {
enableLCPDist = pLCPMap && params->lensProf.useDist;
if (enableLCPCA) {
enableLCPDist = false;
}
enableCA = enableLCPCA || needsCA();
}
//no break on purpose
default:
case ImProcFunctions::TRANSFORM_PREVIEW: {
enableLCPDist = pLCPMap && params->lensProf.useDist;
break;
}
} }
bool enableCA = enableLCPCA || needsCA(); if (!enableCA) {
chDist[0] = 0.0;
}
// main cycle // main cycle
bool darkening = (params->vignetting.amount <= 0.0); bool darkening = (params->vignetting.amount <= 0.0);
@ -802,7 +823,7 @@ void ImProcFunctions::transformHighQuality (Imagefloat* original, Imagefloat* tr
double x_d = x, y_d = y; double x_d = x, y_d = y;
if (enableLCPDist) { if (enableLCPDist) {
correct_distortion(pLCPMap, x_d, y_d, cx, cy, ascale); // must be first transform pLCPMap->correctDistortion(x_d, y_d, cx, cy, ascale); // must be first transform
} else { } else {
x_d *= ascale; x_d *= ascale;
y_d *= ascale; y_d *= ascale;
@ -895,6 +916,10 @@ void ImProcFunctions::transformHighQuality (Imagefloat* original, Imagefloat* tr
// all interpolation pixels inside image // all interpolation pixels inside image
if (enableCA) { if (enableCA) {
interpolateTransformChannelsCubic (chOrig[c], xc - 1, yc - 1, Dx, Dy, & (chTrans[c][y][x]), vignmul); interpolateTransformChannelsCubic (chOrig[c], xc - 1, yc - 1, Dx, Dy, & (chTrans[c][y][x]), vignmul);
} else if (mode == ImProcFunctions::TRANSFORM_PREVIEW) {
transformed->r (y, x) = vignmul * (original->r (yc, xc) * (1.0 - Dx) * (1.0 - Dy) + original->r (yc, xc + 1) * Dx * (1.0 - Dy) + original->r (yc + 1, xc) * (1.0 - Dx) * Dy + original->r (yc + 1, xc + 1) * Dx * Dy);
transformed->g (y, x) = vignmul * (original->g (yc, xc) * (1.0 - Dx) * (1.0 - Dy) + original->g (yc, xc + 1) * Dx * (1.0 - Dy) + original->g (yc + 1, xc) * (1.0 - Dx) * Dy + original->g (yc + 1, xc + 1) * Dx * Dy);
transformed->b (y, x) = vignmul * (original->b (yc, xc) * (1.0 - Dx) * (1.0 - Dy) + original->b (yc, xc + 1) * Dx * (1.0 - Dy) + original->b (yc + 1, xc) * (1.0 - Dx) * Dy + original->b (yc + 1, xc + 1) * Dx * Dy);
} else { } else {
interpolateTransformCubic (original, xc - 1, yc - 1, Dx, Dy, & (transformed->r (y, x)), & (transformed->g (y, x)), & (transformed->b (y, x)), vignmul); interpolateTransformCubic (original, xc - 1, yc - 1, Dx, Dy, & (transformed->r (y, x)), & (transformed->g (y, x)), & (transformed->b (y, x)), vignmul);
} }
@ -928,168 +953,8 @@ void ImProcFunctions::transformHighQuality (Imagefloat* original, Imagefloat* tr
} }
} }
// Transform WITH scaling, WITHOUT CA, simple (and fast) interpolation. Used for preview
void ImProcFunctions::transformPreview (Imagefloat* original, Imagefloat* transformed, int cx, int cy, int sx, int sy, int oW, int oH, int fW, int fH, const LCPMapper *pLCPMap)
{
double w2 = (double) oW / 2.0 - 0.5; double ImProcFunctions::getTransformAutoFill (int oW, int oH, const LensCorrection *pLCPMap)
double h2 = (double) oH / 2.0 - 0.5;
double vig_w2, vig_h2, maxRadius, v, b, mul;
calcVignettingParams (oW, oH, params->vignetting, vig_w2, vig_h2, maxRadius, v, b, mul);
struct grad_params gp;
if (needsGradient()) {
calcGradientParams (oW, oH, params->gradient, gp);
}
struct pcv_params pcv;
if (needsPCVignetting()) {
calcPCVignetteParams (fW, fH, oW, oH, params->pcvignette, params->crop, pcv);
}
// auxiliary variables for distortion correction
bool needsDist = needsDistortion(); // for performance
double distAmount = params->distortion.amount;
// auxiliary variables for rotation
double cost = cos (params->rotate.degree * rtengine::RT_PI / 180.0);
double sint = sin (params->rotate.degree * rtengine::RT_PI / 180.0);
// auxiliary variables for vertical perspective correction
double vpdeg = params->perspective.vertical / 100.0 * 45.0;
double vpalpha = (90 - vpdeg) / 180.0 * rtengine::RT_PI;
double vpteta = fabs (vpalpha - rtengine::RT_PI / 2) < 3e-4 ? 0.0 : acos ((vpdeg > 0 ? 1.0 : -1.0) * sqrt ((-oW * oW * tan (vpalpha) * tan (vpalpha) + (vpdeg > 0 ? 1.0 : -1.0) * oW * tan (vpalpha) * sqrt (16 * maxRadius * maxRadius + oW * oW * tan (vpalpha) * tan (vpalpha))) / (maxRadius * maxRadius * 8)));
double vpcospt = (vpdeg >= 0 ? 1.0 : -1.0) * cos (vpteta), vptanpt = tan (vpteta);
// auxiliary variables for horizontal perspective correction
double hpdeg = params->perspective.horizontal / 100.0 * 45.0;
double hpalpha = (90 - hpdeg) / 180.0 * rtengine::RT_PI;
double hpteta = fabs (hpalpha - rtengine::RT_PI / 2) < 3e-4 ? 0.0 : acos ((hpdeg > 0 ? 1.0 : -1.0) * sqrt ((-oH * oH * tan (hpalpha) * tan (hpalpha) + (hpdeg > 0 ? 1.0 : -1.0) * oH * tan (hpalpha) * sqrt (16 * maxRadius * maxRadius + oH * oH * tan (hpalpha) * tan (hpalpha))) / (maxRadius * maxRadius * 8)));
double hpcospt = (hpdeg >= 0 ? 1.0 : -1.0) * cos (hpteta), hptanpt = tan (hpteta);
double ascale = params->commonTrans.autofill ? getTransformAutoFill (oW, oH, pLCPMap) : 1.0;
bool darkening = (params->vignetting.amount <= 0.0);
// main cycle
#pragma omp parallel for if (multiThread)
for (int y = 0; y < transformed->getHeight(); y++) {
for (int x = 0; x < transformed->getWidth(); x++) {
double x_d = x, y_d = y;
if (pLCPMap && params->lensProf.useDist) {
correct_distortion(pLCPMap, x_d, y_d, cx, cy, ascale); // must be first transform
} else {
x_d *= ascale;
y_d *= ascale;
}
x_d += ascale * (cx - w2); // centering x coord & scale
y_d += ascale * (cy - h2); // centering y coord & scale
double vig_x_d = 0., vig_y_d = 0.;
if (needsVignetting()) {
vig_x_d = ascale * (x + cx - vig_w2); // centering x coord & scale
vig_y_d = ascale * (y + cy - vig_h2); // centering y coord & scale
}
if (needsPerspective()) {
// horizontal perspective transformation
y_d *= maxRadius / (maxRadius + x_d * hptanpt);
x_d *= maxRadius * hpcospt / (maxRadius + x_d * hptanpt);
// vertical perspective transformation
x_d *= maxRadius / (maxRadius - y_d * vptanpt);
y_d *= maxRadius * vpcospt / (maxRadius - y_d * vptanpt);
}
// rotate
double Dx = x_d * cost - y_d * sint;
double Dy = x_d * sint + y_d * cost;
// distortion correction
double s = 1;
if (needsDist) {
double r = sqrt (Dx * Dx + Dy * Dy) / maxRadius; // sqrt is slow
s = 1.0 - distAmount + distAmount * r ;
Dx *= s;
Dy *= s;
}
double r2 = 0.;
if (needsVignetting()) {
double vig_Dx = vig_x_d * cost - vig_y_d * sint;
double vig_Dy = vig_x_d * sint + vig_y_d * cost;
r2 = sqrt (vig_Dx * vig_Dx + vig_Dy * vig_Dy);
}
// de-center
Dx += w2;
Dy += h2;
// Extract integer and fractions of source screen coordinates
int xc = (int)Dx;
Dx -= (double)xc;
xc -= sx;
int yc = (int)Dy;
Dy -= (double)yc;
yc -= sy;
// Convert only valid pixels
if (yc >= 0 && yc < original->getHeight() && xc >= 0 && xc < original->getWidth()) {
// multiplier for vignetting correction
double vignmul = 1.0;
if (needsVignetting()) {
if (darkening) {
vignmul /= std::max (v + mul * tanh (b * (maxRadius - s * r2) / maxRadius), 0.001);
} else {
vignmul = v + mul * tanh (b * (maxRadius - s * r2) / maxRadius);
}
}
if (needsGradient()) {
vignmul *= calcGradientFactor (gp, cx + x, cy + y);
}
if (needsPCVignetting()) {
vignmul *= calcPCVignetteFactor (pcv, cx + x, cy + y);
}
if (yc < original->getHeight() - 1 && xc < original->getWidth() - 1) {
// all interpolation pixels inside image
transformed->r (y, x) = vignmul * (original->r (yc, xc) * (1.0 - Dx) * (1.0 - Dy) + original->r (yc, xc + 1) * Dx * (1.0 - Dy) + original->r (yc + 1, xc) * (1.0 - Dx) * Dy + original->r (yc + 1, xc + 1) * Dx * Dy);
transformed->g (y, x) = vignmul * (original->g (yc, xc) * (1.0 - Dx) * (1.0 - Dy) + original->g (yc, xc + 1) * Dx * (1.0 - Dy) + original->g (yc + 1, xc) * (1.0 - Dx) * Dy + original->g (yc + 1, xc + 1) * Dx * Dy);
transformed->b (y, x) = vignmul * (original->b (yc, xc) * (1.0 - Dx) * (1.0 - Dy) + original->b (yc, xc + 1) * Dx * (1.0 - Dy) + original->b (yc + 1, xc) * (1.0 - Dx) * Dy + original->b (yc + 1, xc + 1) * Dx * Dy);
} else {
// edge pixels
int y1 = LIM (yc, 0, original->getHeight() - 1);
int y2 = LIM (yc + 1, 0, original->getHeight() - 1);
int x1 = LIM (xc, 0, original->getWidth() - 1);
int x2 = LIM (xc + 1, 0, original->getWidth() - 1);
transformed->r (y, x) = vignmul * (original->r (y1, x1) * (1.0 - Dx) * (1.0 - Dy) + original->r (y1, x2) * Dx * (1.0 - Dy) + original->r (y2, x1) * (1.0 - Dx) * Dy + original->r (y2, x2) * Dx * Dy);
transformed->g (y, x) = vignmul * (original->g (y1, x1) * (1.0 - Dx) * (1.0 - Dy) + original->g (y1, x2) * Dx * (1.0 - Dy) + original->g (y2, x1) * (1.0 - Dx) * Dy + original->g (y2, x2) * Dx * Dy);
transformed->b (y, x) = vignmul * (original->b (y1, x1) * (1.0 - Dx) * (1.0 - Dy) + original->b (y1, x2) * Dx * (1.0 - Dy) + original->b (y2, x1) * (1.0 - Dx) * Dy + original->b (y2, x2) * Dx * Dy);
}
} else {
// not valid (source pixel x,y not inside source image, etc.)
transformed->r (y, x) = 0;
transformed->g (y, x) = 0;
transformed->b (y, x) = 0;
}
}
}
}
double ImProcFunctions::getTransformAutoFill (int oW, int oH, const LCPMapper *pLCPMap)
{ {
if (!needsCA() && !needsDistortion() && !needsRotation() && !needsPerspective() && (!params->lensProf.useDist || pLCPMap == nullptr)) { if (!needsCA() && !needsDistortion() && !needsRotation() && !needsPerspective() && (!params->lensProf.useDist || pLCPMap == nullptr)) {
return 1; return 1;
@ -1150,12 +1015,17 @@ bool ImProcFunctions::needsVignetting ()
bool ImProcFunctions::needsLCP () bool ImProcFunctions::needsLCP ()
{ {
return params->lensProf.lcpFile.length() > 0; return params->lensProf.useLcp();
}
bool ImProcFunctions::needsLensfun()
{
return params->lensProf.useLensfun();
} }
bool ImProcFunctions::needsTransform () bool ImProcFunctions::needsTransform ()
{ {
return needsCA () || needsDistortion () || needsRotation () || needsPerspective () || needsGradient () || needsPCVignetting () || needsVignetting () || needsLCP(); return needsCA () || needsDistortion () || needsRotation () || needsPerspective () || needsGradient () || needsPCVignetting () || needsVignetting () || needsLCP() || needsLensfun();
} }

File diff suppressed because it is too large Load Diff

View File

@ -21,27 +21,45 @@
#include <array> #include <array>
#include <map> #include <map>
#include <memory>
#include <string> #include <string>
#include <sstream> #include <sstream>
#include <glibmm.h> #include <glibmm.h>
#include <expat.h> #include <expat.h>
#include "cache.h"
#include "imagefloat.h" #include "imagefloat.h"
#include "opthelper.h" #include "opthelper.h"
namespace rtengine namespace rtengine
{ {
enum class LCPCorrectionMode {
VIGNETTE,
DISTORTION,
CA
};
// Perspective model common data, also used for Vignette and Fisheye // Perspective model common data, also used for Vignette and Fisheye
class LCPModelCommon final class LCPModelCommon final
{ {
public: public:
LCPModelCommon(); LCPModelCommon();
bool empty() const; // is it empty bool empty() const; // is it empty
void print() const; // printf all values void print() const; // printf all values
void merge(const LCPModelCommon& a, const LCPModelCommon& b, float facA); void merge(const LCPModelCommon& a, const LCPModelCommon& b, float facA);
void prepareParams(int fullWidth, int fullHeight, float focalLength, float focalLength35mm, float sensorFormatFactor, bool swapXY, bool mirrorX, bool mirrorY); void prepareParams(
int fullWidth,
int fullHeight,
float focalLength,
float focalLength35mm,
float sensorFormatFactor,
bool swapXY,
bool mirrorX,
bool mirrorY
);
//private: //private:
using Param = std::array<float, 5>; using Param = std::array<float, 5>;
@ -66,97 +84,125 @@ public:
VignParam vign_param; VignParam vign_param;
}; };
class LCPPersModel
{
public:
float focLen, focDist, aperture; // this is what it refers to
LCPModelCommon base; // base perspective correction
LCPModelCommon chromRG, chromG, chromBG; // red/green, green, blue/green (may be empty)
LCPModelCommon vignette; // vignette (may be empty)
LCPPersModel();
bool hasModeData(int mode) const;
void print() const;
};
class LCPProfile class LCPProfile
{ {
// Temporary data for parsing
bool inCamProfiles, firstLIDone, inPerspect, inAlternateLensID, inAlternateLensNames;
char lastTag[256], inInvalidTag[256];
LCPPersModel* pCurPersModel;
LCPModelCommon* pCurCommon;
static void XMLCALL XmlStartHandler(void *pLCPProfile, const char *el, const char **attr);
static void XMLCALL XmlTextHandler (void *pLCPProfile, const XML_Char *s, int len);
static void XMLCALL XmlEndHandler (void *pLCPProfile, const char *el);
int filterBadFrames(double maxAvgDevFac, int minFramesLeft);
void handle_text(std::string text);
std::ostringstream textbuf;
public: public:
explicit LCPProfile(const Glib::ustring& fname);
~LCPProfile();
void calcParams(
LCPCorrectionMode mode,
float focalLength,
float focusDist,
float aperture,
LCPModelCommon* pCorr1,
LCPModelCommon* pCorr2,
LCPModelCommon *pCorr3
) const; // Interpolates between the persModels frames
void print() const;
//private:
// Common data // Common data
Glib::ustring profileName, lensPrettyName, cameraPrettyName, lens, camera; // lens/camera(=model) can be auto-matched with DNG Glib::ustring profileName;
bool isRaw, isFisheye; Glib::ustring lensPrettyName;
Glib::ustring cameraPrettyName;
Glib::ustring lens;
Glib::ustring camera; // lens/camera(=model) can be auto-matched with DNG
bool isRaw;
bool isFisheye;
float sensorFormatFactor; float sensorFormatFactor;
int persModelCount; int persModelCount;
private:
class LCPPersModel;
int filterBadFrames(LCPCorrectionMode mode, double maxAvgDevFac, int minFramesLeft);
void handle_text(const std::string& text);
static void XMLCALL XmlStartHandler(void* pLCPProfile, const char* el, const char** attr);
static void XMLCALL XmlTextHandler(void* pLCPProfile, const XML_Char* s, int len);
static void XMLCALL XmlEndHandler(void* pLCPProfile, const char* el);
// Temporary data for parsing
bool inCamProfiles;
bool firstLIDone;
bool inPerspect;
bool inAlternateLensID;
bool inAlternateLensNames;
char lastTag[256];
char inInvalidTag[256];
LCPPersModel* pCurPersModel;
LCPModelCommon* pCurCommon;
std::ostringstream textbuf;
// The correction frames // The correction frames
static const int MaxPersModelCount = 3000; static constexpr int MaxPersModelCount = 3000;
LCPPersModel* aPersModel[MaxPersModelCount]; // Do NOT use std::list or something, it's buggy in GCC! LCPPersModel* aPersModel[MaxPersModelCount]; // Do NOT use std::list or something, it's buggy in GCC!
explicit LCPProfile(const Glib::ustring &fname);
~LCPProfile();
void calcParams(int mode, float focalLength, float focusDist, float aperture, LCPModelCommon *pCorr1, LCPModelCommon *pCorr2, LCPModelCommon *pCorr3) const; // Interpolates between the persModels frames
void print() const;
}; };
class LCPStore class LCPStore
{ {
MyMutex mtx; public:
static LCPStore* getInstance();
bool isValidLCPFileName(const Glib::ustring& filename) const;
std::shared_ptr<LCPProfile> getProfile(const Glib::ustring& filename) const;
Glib::ustring getDefaultCommonDirectory() const;
private:
LCPStore(unsigned int _cache_size = 32);
// Maps file name to profile as cache // Maps file name to profile as cache
std::map<Glib::ustring, LCPProfile*> profileCache; mutable Cache<Glib::ustring, std::shared_ptr<LCPProfile>> cache;
public:
~LCPStore();
Glib::ustring getDefaultCommonDirectory() const;
bool isValidLCPFileName(Glib::ustring filename) const;
LCPProfile* getProfile(Glib::ustring filename);
static LCPStore* getInstance();
}; };
#define lcpStore LCPStore::getInstance() class LensCorrection {
public:
virtual ~LensCorrection() {}
virtual void correctDistortion(double &x, double &y, int cx, int cy, double scale) const = 0;
virtual bool isCACorrectionAvailable() const = 0;
virtual void correctCA(double &x, double &y, int channel) const = 0;
virtual void processVignetteLine(int width, int y, float *line) const = 0;
virtual void processVignetteLine3Channels(int width, int y, float *line) const = 0;
};
// Once precalculated class to correct a point // Once precalculated class to correct a point
class LCPMapper class LCPMapper: public LensCorrection
{ {
public:
// Precalculates the mapper
LCPMapper(
const std::shared_ptr<LCPProfile>& pProf,
float focalLength,
float focalLength35mm,
float focusDist,
float aperture,
bool vignette,
bool useCADistP,
int fullWidth,
int fullHeight,
const CoarseTransformParams& coarse,
int rawRotationDeg
);
void correctDistortion(double &x, double &y, int cx, int cy, double scale) const; // MUST be the first stage
bool isCACorrectionAvailable() const;
void correctCA(double& x, double& y, int channel) const;
void processVignetteLine(int width, int y, float* line) const;
void processVignetteLine3Channels(int width, int y, float* line) const;
private:
bool enableCA; // is the mapper capable if CA correction?
bool useCADist; // should the distortion in the CA info be used? bool useCADist; // should the distortion in the CA info be used?
bool swapXY; bool swapXY;
LCPModelCommon mc; LCPModelCommon mc;
LCPModelCommon chrom[3]; // in order RedGreen/Green/BlueGreen LCPModelCommon chrom[3]; // in order RedGreen/Green/BlueGreen
bool isFisheye; bool isFisheye;
public:
bool enableCA; // is the mapper capable if CA correction?
// precalculates the mapper.
LCPMapper(LCPProfile* pProf, float focalLength, float focalLength35mm, float focusDist, float aperture, bool vignette, bool useCADistP, int fullWidth, int fullHeight,
const CoarseTransformParams& coarse, int rawRotationDeg);
void correctDistortion(double& x, double& y, double scale) const; // MUST be the first stage
void correctCA(double& x, double& y, int channel) const;
void processVignetteLine(int width, int y, float *line) const;
void processVignetteLine3Channels(int width, int y, float *line) const;
}; };
} }

View File

@ -505,6 +505,16 @@ enum ProcEvent {
EvCATtempout = 475, EvCATtempout = 475,
EvCATgreenout = 476, EvCATgreenout = 476,
EvCATybout = 477, EvCATybout = 477,
EvCATDegreeout = 478,
EvCATAutoDegreeout = 479,
EvCATtempsc = 480,
EvCATgreensc = 481,
EvCATybscen = 482,
EvCATAutoyb = 483,
// profiled lens correction new events
EvLensCorrMode = 484,
EvLensCorrLensfunCamera = 485,
EvLensCorrLensfunLens = 486,
NUMOFEVENTS NUMOFEVENTS

View File

@ -52,6 +52,7 @@ const int br = (int) options.rtSettings.bot_right;
const int tl = (int) options.rtSettings.top_left; const int tl = (int) options.rtSettings.top_left;
const int bl = (int) options.rtSettings.bot_left; const int bl = (int) options.rtSettings.bot_left;
const char *LensProfParams::methodstring[static_cast<size_t>(LensProfParams::eLcMode::LC_LCP) + 1u] = {"none", "lfauto", "lfmanual", "lcp"};
const char *RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::numMethods] = {"amaze", "igv", "lmmse", "eahd", "hphd", "vng4", "dcb", "ahd", "fast", "mono", "none", "pixelshift" }; const char *RAWParams::BayerSensor::methodstring[RAWParams::BayerSensor::numMethods] = {"amaze", "igv", "lmmse", "eahd", "hphd", "vng4", "dcb", "ahd", "fast", "mono", "none", "pixelshift" };
const char *RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::numMethods] = {"3-pass (best)", "1-pass (medium)", "fast", "mono", "none" }; const char *RAWParams::XTransSensor::methodstring[RAWParams::XTransSensor::numMethods] = {"3-pass (best)", "1-pass (medium)", "fast", "mono", "none" };
@ -919,9 +920,13 @@ void ToneCurveParams::setDefaults()
void LensProfParams::setDefaults() void LensProfParams::setDefaults()
{ {
lcMode = eLcMode::LC_NOCORRECTION;
lcpFile = ""; lcpFile = "";
useDist = useVign = true; useDist = useVign = true;
useCA = false; useCA = false;
lfCameraMake = "";
lfCameraModel = "";
lfLens = "";
} }
void CoarseTransformParams::setDefaults() void CoarseTransformParams::setDefaults()
@ -1144,26 +1149,31 @@ void ProcParams::setDefaults ()
vibrance.skintonescurve.clear (); vibrance.skintonescurve.clear ();
vibrance.skintonescurve.push_back (DCT_Linear); vibrance.skintonescurve.push_back (DCT_Linear);
wb.method = "Camera"; wb.method = "Camera";
wb.temperature = 6504; wb.temperature = 6504;
wb.green = 1.0; wb.green = 1.0;
wb.equal = 1.0; wb.equal = 1.0;
wb.tempBias = 0.0; wb.tempBias = 0.0;
colorappearance.enabled = false; colorappearance.enabled = false;
colorappearance.degree = 90; colorappearance.degree = 90;
colorappearance.autodegree = true; colorappearance.autodegree = true;
colorappearance.surround = "Average"; colorappearance.degreeout = 90;
colorappearance.adaplum = 16; colorappearance.autodegreeout = true;
colorappearance.badpixsl = 0; colorappearance.surround = "Average";
colorappearance.adapscen = 2000.0; colorappearance.surrsrc = "Average";
colorappearance.autoadapscen = true; colorappearance.adaplum = 16;
colorappearance.algo = "No"; colorappearance.badpixsl = 0;
colorappearance.wbmodel = "RawT"; colorappearance.adapscen = 2000.0;
colorappearance.jlight = 0.0; colorappearance.autoadapscen = true;
colorappearance.qbright = 0.0; colorappearance.ybscen = 18;
colorappearance.chroma = 0.0; colorappearance.autoybscen = true;
colorappearance.schroma = 0.0; colorappearance.algo = "No";
colorappearance.mchroma = 0.0; colorappearance.wbmodel = "RawT";
colorappearance.jlight = 0.0;
colorappearance.qbright = 0.0;
colorappearance.chroma = 0.0;
colorappearance.schroma = 0.0;
colorappearance.mchroma = 0.0;
colorappearance.rstprotection = 0.0; colorappearance.rstprotection = 0.0;
colorappearance.contrast = 0.0; colorappearance.contrast = 0.0;
colorappearance.qcontrast = 0.0; colorappearance.qcontrast = 0.0;
@ -1182,10 +1192,12 @@ void ProcParams::setDefaults ()
colorappearance.curveMode2 = ColorAppearanceParams::TC_MODE_LIGHT; colorappearance.curveMode2 = ColorAppearanceParams::TC_MODE_LIGHT;
colorappearance.curve3.clear (); colorappearance.curve3.clear ();
colorappearance.curve3.push_back (DCT_Linear); colorappearance.curve3.push_back (DCT_Linear);
colorappearance.curveMode3 = ColorAppearanceParams::TC_MODE_CHROMA; colorappearance.curveMode3 = ColorAppearanceParams::TC_MODE_CHROMA;
colorappearance.tempout = 5000; colorappearance.tempout = 5000;
colorappearance.greenout = 1.0; colorappearance.greenout = 1.0;
colorappearance.ybout = 18; colorappearance.ybout = 18;
colorappearance.tempsc = 5000;
colorappearance.greensc = 1.0;
impulseDenoise.enabled = false; impulseDenoise.enabled = false;
impulseDenoise.thresh = 50; impulseDenoise.thresh = 50;
@ -2092,10 +2104,22 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b
keyFile.set_boolean ("Color appearance", "AutoDegree", colorappearance.autodegree); keyFile.set_boolean ("Color appearance", "AutoDegree", colorappearance.autodegree);
} }
if (!pedited || pedited->colorappearance.degreeout) {
keyFile.set_integer ("Color appearance", "Degreeout", colorappearance.degreeout);
}
if (!pedited || pedited->colorappearance.autodegreeout) {
keyFile.set_boolean ("Color appearance", "AutoDegreeout", colorappearance.autodegreeout);
}
if (!pedited || pedited->colorappearance.surround) { if (!pedited || pedited->colorappearance.surround) {
keyFile.set_string ("Color appearance", "Surround", colorappearance.surround); keyFile.set_string ("Color appearance", "Surround", colorappearance.surround);
} }
if (!pedited || pedited->colorappearance.surrsrc) {
keyFile.set_string ("Color appearance", "Surrsrc", colorappearance.surrsrc);
}
// if (!pedited || pedited->colorappearance.backgrd) keyFile.set_integer ("Color appearance", "Background", colorappearance.backgrd); // if (!pedited || pedited->colorappearance.backgrd) keyFile.set_integer ("Color appearance", "Background", colorappearance.backgrd);
if (!pedited || pedited->colorappearance.adaplum) { if (!pedited || pedited->colorappearance.adaplum) {
keyFile.set_double ("Color appearance", "AdaptLum", colorappearance.adaplum); keyFile.set_double ("Color appearance", "AdaptLum", colorappearance.adaplum);
@ -2157,6 +2181,14 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b
keyFile.set_boolean ("Color appearance", "AutoAdapscen", colorappearance.autoadapscen); keyFile.set_boolean ("Color appearance", "AutoAdapscen", colorappearance.autoadapscen);
} }
if (!pedited || pedited->colorappearance.ybscen) {
keyFile.set_integer ("Color appearance", "YbScene", colorappearance.ybscen);
}
if (!pedited || pedited->colorappearance.autoybscen) {
keyFile.set_boolean ("Color appearance", "Autoybscen", colorappearance.autoybscen);
}
if (!pedited || pedited->colorappearance.surrsource) { if (!pedited || pedited->colorappearance.surrsource) {
keyFile.set_boolean ("Color appearance", "SurrSource", colorappearance.surrsource); keyFile.set_boolean ("Color appearance", "SurrSource", colorappearance.surrsource);
} }
@ -2173,6 +2205,14 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b
keyFile.set_double ("Color appearance", "Greenout", colorappearance.greenout); keyFile.set_double ("Color appearance", "Greenout", colorappearance.greenout);
} }
if (!pedited || pedited->colorappearance.tempsc) {
keyFile.set_integer ("Color appearance", "Tempsc", colorappearance.tempsc);
}
if (!pedited || pedited->colorappearance.greensc) {
keyFile.set_double ("Color appearance", "Greensc", colorappearance.greensc);
}
if (!pedited || pedited->colorappearance.ybout) { if (!pedited || pedited->colorappearance.ybout) {
keyFile.set_integer ("Color appearance", "Ybout", colorappearance.ybout); keyFile.set_integer ("Color appearance", "Ybout", colorappearance.ybout);
} }
@ -2514,6 +2554,10 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b
} }
// lens profile // lens profile
if (!pedited || pedited->lensProf.lcMode) {
keyFile.set_string ("LensProfile", "LcMode", lensProf.getMethodString (lensProf.lcMode));
}
if (!pedited || pedited->lensProf.lcpFile) { if (!pedited || pedited->lensProf.lcpFile) {
keyFile.set_string ("LensProfile", "LCPFile", relativePathIfInside (fname, fnameAbsolute, lensProf.lcpFile)); keyFile.set_string ("LensProfile", "LCPFile", relativePathIfInside (fname, fnameAbsolute, lensProf.lcpFile));
} }
@ -2530,6 +2574,16 @@ int ProcParams::save (const Glib::ustring &fname, const Glib::ustring &fname2, b
keyFile.set_boolean ("LensProfile", "UseCA", lensProf.useCA); keyFile.set_boolean ("LensProfile", "UseCA", lensProf.useCA);
} }
if (!pedited || pedited->lensProf.lfCameraMake) {
keyFile.set_string("LensProfile", "LFCameraMake", lensProf.lfCameraMake);
}
if (!pedited || pedited->lensProf.lfCameraModel) {
keyFile.set_string("LensProfile", "LFCameraModel", lensProf.lfCameraModel);
}
if (!pedited || pedited->lensProf.lfLens) {
keyFile.set_string("LensProfile", "LFLens", lensProf.lfLens);
}
// save perspective correction // save perspective correction
if (!pedited || pedited->perspective.horizontal) { if (!pedited || pedited->perspective.horizontal) {
keyFile.set_double ("Perspective", "Horizontal", perspective.horizontal); keyFile.set_double ("Perspective", "Horizontal", perspective.horizontal);
@ -4971,6 +5025,22 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited)
} }
} }
if (keyFile.has_key ("Color appearance", "Degreeout")) {
colorappearance.degreeout = keyFile.get_integer ("Color appearance", "Degreeout");
if (pedited) {
pedited->colorappearance.degreeout = true;
}
}
if (keyFile.has_key ("Color appearance", "AutoDegreeout")) {
colorappearance.autodegreeout = keyFile.get_boolean ("Color appearance", "AutoDegreeout");
if (pedited) {
pedited->colorappearance.autodegreeout = true;
}
}
if (keyFile.has_key ("Color appearance", "Surround")) { if (keyFile.has_key ("Color appearance", "Surround")) {
colorappearance.surround = keyFile.get_string ("Color appearance", "Surround"); colorappearance.surround = keyFile.get_string ("Color appearance", "Surround");
@ -4979,6 +5049,14 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited)
} }
} }
if (keyFile.has_key ("Color appearance", "Surrsrc")) {
colorappearance.surrsrc = keyFile.get_string ("Color appearance", "Surrsrc");
if (pedited) {
pedited->colorappearance.surrsrc = true;
}
}
// if (keyFile.has_key ("Color appearance", "Background")) {colorappearance.backgrd = keyFile.get_integer ("Color appearance", "Background"); if (pedited) pedited->colorappearance.backgrd = true; } // if (keyFile.has_key ("Color appearance", "Background")) {colorappearance.backgrd = keyFile.get_integer ("Color appearance", "Background"); if (pedited) pedited->colorappearance.backgrd = true; }
if (keyFile.has_key ("Color appearance", "AdaptLum")) { if (keyFile.has_key ("Color appearance", "AdaptLum")) {
colorappearance.adaplum = keyFile.get_double ("Color appearance", "AdaptLum"); colorappearance.adaplum = keyFile.get_double ("Color appearance", "AdaptLum");
@ -5100,6 +5178,22 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited)
} }
} }
if (keyFile.has_key ("Color appearance", "YbScene")) {
colorappearance.ybscen = keyFile.get_integer ("Color appearance", "YbScene");
if (pedited) {
pedited->colorappearance.ybscen = true;
}
}
if (keyFile.has_key ("Color appearance", "Autoybscen")) {
colorappearance.autoybscen = keyFile.get_boolean ("Color appearance", "Autoybscen");
if (pedited) {
pedited->colorappearance.autoybscen = true;
}
}
if (keyFile.has_key ("Color appearance", "SurrSource")) { if (keyFile.has_key ("Color appearance", "SurrSource")) {
colorappearance.surrsource = keyFile.get_boolean ("Color appearance", "SurrSource"); colorappearance.surrsource = keyFile.get_boolean ("Color appearance", "SurrSource");
@ -5132,6 +5226,22 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited)
} }
} }
if (keyFile.has_key ("Color appearance", "Tempsc")) {
colorappearance.tempsc = keyFile.get_integer ("Color appearance", "Tempsc");
if (pedited) {
pedited->colorappearance.tempsc = true;
}
}
if (keyFile.has_key ("Color appearance", "Greensc")) {
colorappearance.greensc = keyFile.get_double ("Color appearance", "Greensc");
if (pedited) {
pedited->colorappearance.greensc = true;
}
}
if (keyFile.has_key ("Color appearance", "Ybout")) { if (keyFile.has_key ("Color appearance", "Ybout")) {
colorappearance.ybout = keyFile.get_integer ("Color appearance", "Ybout"); colorappearance.ybout = keyFile.get_integer ("Color appearance", "Ybout");
@ -5710,12 +5820,24 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited)
// lens profile // lens profile
if (keyFile.has_group ("LensProfile")) { if (keyFile.has_group ("LensProfile")) {
if (keyFile.has_key ("LensProfile", "LcMode")) {
lensProf.lcMode = lensProf.getMethodNumber (keyFile.get_string ("LensProfile", "LcMode"));
if (pedited) {
pedited->lensProf.lcMode = true;
}
}
if (keyFile.has_key ("LensProfile", "LCPFile")) { if (keyFile.has_key ("LensProfile", "LCPFile")) {
lensProf.lcpFile = expandRelativePath (fname, "", keyFile.get_string ("LensProfile", "LCPFile")); lensProf.lcpFile = expandRelativePath (fname, "", keyFile.get_string ("LensProfile", "LCPFile"));
if (pedited) { if (pedited) {
pedited->lensProf.lcpFile = true; pedited->lensProf.lcpFile = true;
} }
if(ppVersion < 327 && !lensProf.lcpFile.empty()) {
lensProf.lcMode = LensProfParams::eLcMode::LC_LCP;
}
} }
if (keyFile.has_key ("LensProfile", "UseDistortion")) { if (keyFile.has_key ("LensProfile", "UseDistortion")) {
@ -5741,6 +5863,27 @@ int ProcParams::load (const Glib::ustring &fname, ParamsEdited* pedited)
pedited->lensProf.useCA = true; pedited->lensProf.useCA = true;
} }
} }
if (keyFile.has_key("LensProfile", "LFCameraMake")) {
lensProf.lfCameraMake = keyFile.get_string("LensProfile", "LFCameraMake");
if (pedited) {
pedited->lensProf.lfCameraMake = true;
}
}
if (keyFile.has_key("LensProfile", "LFCameraModel")) {
lensProf.lfCameraModel = keyFile.get_string("LensProfile", "LFCameraModel");
if (pedited) {
pedited->lensProf.lfCameraModel = true;
}
}
if (keyFile.has_key("LensProfile", "LFLens")) {
lensProf.lfLens = keyFile.get_string("LensProfile", "LFLens");
if (pedited) {
pedited->lensProf.lfLens = true;
}
}
} }
// load perspective correction // load perspective correction
@ -8245,9 +8388,14 @@ bool ProcParams::operator== (const ProcParams& other)
&& colorappearance.enabled == other.colorappearance.enabled && colorappearance.enabled == other.colorappearance.enabled
&& colorappearance.degree == other.colorappearance.degree && colorappearance.degree == other.colorappearance.degree
&& colorappearance.autodegree == other.colorappearance.autodegree && colorappearance.autodegree == other.colorappearance.autodegree
&& colorappearance.degreeout == other.colorappearance.degreeout
&& colorappearance.autodegreeout == other.colorappearance.autodegreeout
&& colorappearance.surround == other.colorappearance.surround && colorappearance.surround == other.colorappearance.surround
&& colorappearance.surrsrc == other.colorappearance.surrsrc
&& colorappearance.adapscen == other.colorappearance.adapscen && colorappearance.adapscen == other.colorappearance.adapscen
&& colorappearance.autoadapscen == other.colorappearance.autoadapscen && colorappearance.autoadapscen == other.colorappearance.autoadapscen
&& colorappearance.ybscen == other.colorappearance.ybscen
&& colorappearance.autoybscen == other.colorappearance.autoybscen
&& colorappearance.adaplum == other.colorappearance.adaplum && colorappearance.adaplum == other.colorappearance.adaplum
&& colorappearance.badpixsl == other.colorappearance.badpixsl && colorappearance.badpixsl == other.colorappearance.badpixsl
&& colorappearance.wbmodel == other.colorappearance.wbmodel && colorappearance.wbmodel == other.colorappearance.wbmodel
@ -8266,6 +8414,8 @@ bool ProcParams::operator== (const ProcParams& other)
&& colorappearance.colorh == other.colorappearance.colorh && colorappearance.colorh == other.colorappearance.colorh
&& colorappearance.tempout == other.colorappearance.tempout && colorappearance.tempout == other.colorappearance.tempout
&& colorappearance.greenout == other.colorappearance.greenout && colorappearance.greenout == other.colorappearance.greenout
&& colorappearance.tempsc == other.colorappearance.tempsc
&& colorappearance.greensc == other.colorappearance.greensc
&& colorappearance.ybout == other.colorappearance.ybout && colorappearance.ybout == other.colorappearance.ybout
&& impulseDenoise.enabled == other.impulseDenoise.enabled && impulseDenoise.enabled == other.impulseDenoise.enabled
&& impulseDenoise.thresh == other.impulseDenoise.thresh && impulseDenoise.thresh == other.impulseDenoise.thresh
@ -8330,10 +8480,14 @@ bool ProcParams::operator== (const ProcParams& other)
&& rotate.degree == other.rotate.degree && rotate.degree == other.rotate.degree
&& commonTrans.autofill == other.commonTrans.autofill && commonTrans.autofill == other.commonTrans.autofill
&& distortion.amount == other.distortion.amount && distortion.amount == other.distortion.amount
&& lensProf.lcMode == other.lensProf.lcMode
&& lensProf.lcpFile == other.lensProf.lcpFile && lensProf.lcpFile == other.lensProf.lcpFile
&& lensProf.useDist == other.lensProf.useDist && lensProf.useDist == other.lensProf.useDist
&& lensProf.useVign == other.lensProf.useVign && lensProf.useVign == other.lensProf.useVign
&& lensProf.useCA == other.lensProf.useCA && lensProf.useCA == other.lensProf.useCA
&& lensProf.lfCameraMake == other.lensProf.lfCameraMake
&& lensProf.lfCameraModel == other.lensProf.lfCameraModel
&& lensProf.lfLens == other.lensProf.lfLens
&& perspective.horizontal == other.perspective.horizontal && perspective.horizontal == other.perspective.horizontal
&& perspective.vertical == other.perspective.vertical && perspective.vertical == other.perspective.vertical
&& gradient.enabled == other.gradient.enabled && gradient.enabled == other.gradient.enabled

View File

@ -585,6 +585,8 @@ public:
bool enabled; bool enabled;
int degree; int degree;
bool autodegree; bool autodegree;
int degreeout;
bool autodegreeout;
std::vector<double> curve; std::vector<double> curve;
std::vector<double> curve2; std::vector<double> curve2;
std::vector<double> curve3; std::vector<double> curve3;
@ -593,8 +595,11 @@ public:
eCTCModeId curveMode3; eCTCModeId curveMode3;
Glib::ustring surround; Glib::ustring surround;
Glib::ustring surrsrc;
double adapscen; double adapscen;
bool autoadapscen; bool autoadapscen;
int ybscen;
bool autoybscen;
double adaplum; double adaplum;
int badpixsl; int badpixsl;
@ -617,6 +622,8 @@ public:
int tempout; int tempout;
int ybout; int ybout;
double greenout; double greenout;
int tempsc;
double greensc;
// bool sharpcie; // bool sharpcie;
}; };
@ -822,16 +829,64 @@ class LensProfParams
{ {
public: public:
enum class eLcMode {
LC_NOCORRECTION, // No lens correction
LC_LENSFUNAUTOMATCH, // Lens correction using auto matched lensfun database entry
LC_LENSFUNMANUAL, // Lens correction using manually selected lensfun database entry
LC_LCP // Lens correction using lcp file
};
static const char *methodstring[static_cast<size_t>(eLcMode::LC_LCP) + 1u];
eLcMode lcMode;
Glib::ustring lcpFile; Glib::ustring lcpFile;
bool useDist, useVign, useCA; bool useDist, useVign, useCA;
Glib::ustring lfCameraMake;
Glib::ustring lfCameraModel;
Glib::ustring lfLens;
LensProfParams() LensProfParams()
{ {
setDefaults(); setDefaults();
} }
void setDefaults(); void setDefaults();
bool useLensfun() const
{
return lcMode == eLcMode::LC_LENSFUNAUTOMATCH || lcMode == eLcMode::LC_LENSFUNMANUAL;
}
bool lfAutoMatch() const
{
return lcMode == eLcMode::LC_LENSFUNAUTOMATCH;
}
bool useLcp() const
{
return lcMode == eLcMode::LC_LCP && lcpFile.length() > 0;
}
bool lfManual() const
{
return lcMode == eLcMode::LC_LENSFUNMANUAL;
}
Glib::ustring getMethodString(eLcMode mode) const
{
return methodstring[static_cast<size_t>(mode)];
}
eLcMode getMethodNumber(const Glib::ustring &mode) const
{
for(size_t i = 0; i < static_cast<size_t>(eLcMode::LC_LCP); ++i) {
if(methodstring[i] == mode) {
return static_cast<eLcMode>(i);
}
}
return eLcMode::LC_NOCORRECTION;
}
}; };
/** /**
* Parameters of the perspective correction * Parameters of the perspective correction
*/ */

View File

@ -20,6 +20,8 @@
#define __RAWIMAGE_H #define __RAWIMAGE_H
#include <ctime> #include <ctime>
#include <cmath>
#include <iostream>
#include "dcraw.h" #include "dcraw.h"
#include "imageformat.h" #include "imageformat.h"
@ -233,7 +235,13 @@ public:
} }
float get_pre_mul(int c )const float get_pre_mul(int c )const
{ {
return pre_mul[c]; if(std::isfinite(pre_mul[c])) {
return pre_mul[c];
} else {
std::cout << "Failure decoding '" << filename << "', please file a bug report including the raw file and the line below:" << std::endl;
std::cout << "rawimage.h get_pre_mul() : pre_mul[" << c << "] value " << pre_mul[c] << " automatically replaced by value 1.0" << std::endl;
return 1.f;
}
} }
float get_rgb_cam( int r, int c) const float get_rgb_cam( int r, int c) const
{ {

View File

@ -33,6 +33,7 @@
#include "dcp.h" #include "dcp.h"
#include "rt_math.h" #include "rt_math.h"
#include "improcfun.h" #include "improcfun.h"
#include "rtlensfun.h"
#ifdef _OPENMP #ifdef _OPENMP
#include <omp.h> #include <omp.h>
#endif #endif
@ -1853,11 +1854,19 @@ void RawImageSource::preprocess (const RAWParams &raw, const LensProfParams &le
// Correct vignetting of lens profile // Correct vignetting of lens profile
if (!hasFlatField && lensProf.useVign) { if (!hasFlatField && lensProf.useVign) {
LCPProfile *pLCPProf = lcpStore->getProfile(lensProf.lcpFile); std::unique_ptr<LensCorrection> pmap;
if (lensProf.useLensfun()) {
pmap = std::move(LFDatabase::findModifier(lensProf, idata, W, H, coarse, -1));
} else {
const std::shared_ptr<LCPProfile> pLCPProf = LCPStore::getInstance()->getProfile(lensProf.lcpFile);
if (pLCPProf) { // don't check focal length to allow distortion correction for lenses without chip, also pass dummy focal length 1 in case of 0 if (pLCPProf) { // don't check focal length to allow distortion correction for lenses without chip, also pass dummy focal length 1 in case of 0
LCPMapper map(pLCPProf, max(idata->getFocalLen(), 1.0), idata->getFocalLen35mm(), idata->getFocusDist(), idata->getFNumber(), true, false, W, H, coarse, -1); pmap.reset(new LCPMapper(pLCPProf, max(idata->getFocalLen(), 1.0), idata->getFocalLen35mm(), idata->getFocusDist(), idata->getFNumber(), true, false, W, H, coarse, -1));
}
}
if (pmap) {
LensCorrection &map = *pmap;
if (ri->getSensorType() == ST_BAYER || ri->getSensorType() == ST_FUJI_XTRANS || ri->get_colors() == 1) { if (ri->getSensorType() == ST_BAYER || ri->getSensorType() == ST_FUJI_XTRANS || ri->get_colors() == 1) {
if(numFrames == 4) { if(numFrames == 4) {
for(int i = 0; i < 4; ++i) { for(int i = 0; i < 4; ++i) {
@ -1911,42 +1920,16 @@ void RawImageSource::preprocess (const RAWParams &raw, const LensProfParams &le
} }
} }
// check if it is an olympus E camera, if yes, compute G channel pre-compensation factors // check if it is an olympus E camera or green equilibration is enabled. If yes, compute G channel pre-compensation factors
if ( ri->getSensorType() == ST_BAYER && (raw.bayersensor.greenthresh || (((idata->getMake().size() >= 7 && idata->getMake().substr(0, 7) == "OLYMPUS" && idata->getModel()[0] == 'E') || (idata->getMake().size() >= 9 && idata->getMake().substr(0, 9) == "Panasonic")) && raw.bayersensor.method != RAWParams::BayerSensor::methodstring[ RAWParams::BayerSensor::vng4])) ) { if ( ri->getSensorType() == ST_BAYER && (raw.bayersensor.greenthresh || (((idata->getMake().size() >= 7 && idata->getMake().substr(0, 7) == "OLYMPUS" && idata->getModel()[0] == 'E') || (idata->getMake().size() >= 9 && idata->getMake().substr(0, 9) == "Panasonic")) && raw.bayersensor.method != RAWParams::BayerSensor::methodstring[ RAWParams::BayerSensor::vng4])) ) {
// global correction // global correction
int ng1 = 0, ng2 = 0, i = 0; if(numFrames == 4) {
double avgg1 = 0., avgg2 = 0.; for(int i = 0; i < 4; ++i) {
green_equilibrate_global(*rawDataFrames[i]);
#ifdef _OPENMP }
#pragma omp parallel for default(shared) private(i) reduction(+: ng1, ng2, avgg1, avgg2) } else {
#endif green_equilibrate_global(rawData);
}
for (i = border; i < H - border; i++)
for (int j = border; j < W - border; j++)
if (ri->ISGREEN(i, j)) {
if (i & 1) {
avgg2 += rawData[i][j];
ng2++;
} else {
avgg1 += rawData[i][j];
ng1++;
}
}
double corrg1 = ((double)avgg1 / ng1 + (double)avgg2 / ng2) / 2.0 / ((double)avgg1 / ng1);
double corrg2 = ((double)avgg1 / ng1 + (double)avgg2 / ng2) / 2.0 / ((double)avgg2 / ng2);
#ifdef _OPENMP
#pragma omp parallel for default(shared)
#endif
for (int i = border; i < H - border; i++)
for (int j = border; j < W - border; j++)
if (ri->ISGREEN(i, j)) {
float currData;
currData = (float)(rawData[i][j] * ((i & 1) ? corrg2 : corrg1));
rawData[i][j] = (currData);
}
} }
if ( ri->getSensorType() == ST_BAYER && raw.bayersensor.greenthresh > 0) { if ( ri->getSensorType() == ST_BAYER && raw.bayersensor.greenthresh > 0) {
@ -1957,10 +1940,10 @@ void RawImageSource::preprocess (const RAWParams &raw, const LensProfParams &le
if(numFrames == 4) { if(numFrames == 4) {
for(int i = 0; i < 4; ++i) { for(int i = 0; i < 4; ++i) {
green_equilibrate(0.01 * (raw.bayersensor.greenthresh), *rawDataFrames[i]); green_equilibrate(0.01 * raw.bayersensor.greenthresh, *rawDataFrames[i]);
} }
} else { } else {
green_equilibrate(0.01 * (raw.bayersensor.greenthresh), rawData); green_equilibrate(0.01 * raw.bayersensor.greenthresh, rawData);
} }
} }

View File

@ -233,6 +233,7 @@ protected:
void cfa_linedn (float linenoiselevel);//Emil's line denoise void cfa_linedn (float linenoiselevel);//Emil's line denoise
void green_equilibrate_global (array2D<float> &rawData);
void green_equilibrate (float greenthresh, array2D<float> &rawData);//Emil's green equilibration void green_equilibrate (float greenthresh, array2D<float> &rawData);//Emil's green equilibration
void nodemosaic(bool bw); void nodemosaic(bool bw);

Some files were not shown because too many files have changed in this diff Show More