diff -Nru luminance-hdr-2.5.0/build/linux/find_demosaicing_gpl2.sh luminance-hdr-2.5.1/build/linux/find_demosaicing_gpl2.sh --- luminance-hdr-2.5.0/build/linux/find_demosaicing_gpl2.sh 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/linux/find_demosaicing_gpl2.sh 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -#!/bin/bash - -readelf -a $1 | grep lmms - diff -Nru luminance-hdr-2.5.0/build/linux/find_demosaicing_gpl3.sh luminance-hdr-2.5.1/build/linux/find_demosaicing_gpl3.sh --- luminance-hdr-2.5.0/build/linux/find_demosaicing_gpl3.sh 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/linux/find_demosaicing_gpl3.sh 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -#!/bin/bash - -readelf -a $1 | grep amaze - diff -Nru luminance-hdr-2.5.0/build/linux/sanitize_translations.sh luminance-hdr-2.5.1/build/linux/sanitize_translations.sh --- luminance-hdr-2.5.0/build/linux/sanitize_translations.sh 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/linux/sanitize_translations.sh 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -#!/bin/bash -echo `pwd` -sed -i '/\-I\/usr\/include/d' CMakeFiles/lang_* -sed -i '/\-I\/usr\/include/d' CMakeFiles/source_lst_file diff -Nru luminance-hdr-2.5.0/build/msvc/build.cmd luminance-hdr-2.5.1/build/msvc/build.cmd --- luminance-hdr-2.5.0/build/msvc/build.cmd 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/msvc/build.cmd 1970-01-01 00:00:00.000000000 +0000 @@ -1,806 +0,0 @@ -@echo off -SETLOCAL - -REM http://dev.exiv2.org/projects/exiv2/repository/ -SET EXIV2_COMMIT=4753 - -REM http://github.com/libjpeg-turbo/libjpeg-turbo -SET LIBJPEG_COMMIT_LONG=da2a27ef056a0179cbd80f9146e58b89403d9933 - -rem https://github.com/madler/zlib/commits -SET ZLIB_COMMIT_LONG=cacf7f1d4e3d44d871b605da3b647f07d718623f - -rem https://github.com/openexr/openexr -SET OPENEXR_COMMIT_LONG=20d043d017d4b752356bb76946ffdffaa9c15c72 -SET OPENEXR_CMAKE_VERSION=2.2 - -rem http://www.boost.org/ -SET BOOST_MINOR=63 - -REM ftp://ftp.fftw.org/pub/fftw/ -SET FFTW_VER=3.3.5 - -rem https://github.com/mm2/Little-CMS -SET LCMS_COMMIT_LONG=f9d75ccef0b54c9f4167d95088d4727985133c52 - -rem https://github.com/ampl/gsl -SET GSL_COMMIT_LONG=48e0194da0d8921aff57c293b4f5083877d3f55b - -rem https://github.com/LibRaw/LibRaw -SET LIBRAW_COMMIT_LONG=d7c3d2cb460be10a3ea7b32e9443a83c243b2251 -SET LIBRAW_DEMOS2_COMMIT_LONG=194f592e205990ea8fce72b6c571c14350aca716 -SET LIBRAW_DEMOS3_COMMIT_LONG=f0895891fdaa775255af02275fce426a5bf5c9fc - -rem ftp://sourceware.org/pub/pthreads-win32/ -SET PTHREADS_DIR=prebuilt-dll-2-9-1-release - -rem http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c -SET CFITSIO_VER=3360 -rem broken 3370 - -rem Internal version number for http://qtpfsgui.sourceforge.net/win/hugin-* -SET HUGIN_VER=201600 - -http://download.osgeo.org/libtiff/ -SET TIFF_VER=4.0.7 - -IF EXIST .settings\vsexpress.txt ( - SET VSCOMMAND=vcexpress -) ELSE IF EXIST .settings\devent.txt ( - SET VSCOMMAND=devenv -) ELSE ( - vcexpress XXXXXXXXXXXXX 2>NUL >NUL - IF ERRORLEVEL 1 ( - devenv /? 2>NUL >NUL - IF ERRORLEVEL 1 ( - wdexpress /? 2>NUL >NUL - IF ERRORLEVEL 1 ( - echo. - echo.ERROR: This file must be run inside a VS command prompt! - echo. - goto error_end - ) ELSE ( - SET VSCOMMAND=msbuild - ) - ) ELSE ( - SET VSCOMMAND=devenv - ) - ) ELSE ( - SET VSCOMMAND=vcexpress - ) - mkdir .settings 2>NUL >NUL - echo x>.settings\%VSCOMMAND%.txt -) - -IF EXIST ..\msvc ( - echo. - echo.ERROR: This file should NOT be executed within the LuminanceHDR source directory, - echo. but in a new empty folder! - echo. - goto error_end -) - -ml64.exe > NUL -IF ERRORLEVEL 1 ( - set Platform=Win32 - set RawPlatform=x86 - set CpuPlatform=ia32 -) ELSE ( - set Platform=x64 - set RawPlatform=x64 - set CpuPlatform=intel64 -) - -SET VISUAL_STUDIO_VC_REDIST=%VCINSTALLDIR%\redist\%RawPlatform% - -IF DEFINED VS140COMNTOOLS ( - REM Visual Studio 2015 - set VS_SHORT=vc14 - set VS_CMAKE=Visual Studio 14 - set VS_PROG_FILES=Microsoft Visual Studio 14.0 - set VS_LCMS=VC2013 -) ELSE IF DEFINED VS120COMNTOOLS ( - REM Visual Studio 2013 - set VS_SHORT=vc12 - set VS_CMAKE=Visual Studio 12 - set VS_PROG_FILES=Microsoft Visual Studio 12.0 - set VS_LCMS=VC2013 - -) ELSE IF DEFINED VS110COMNTOOLS ( - REM Visual Studio 2012 - set VS_SHORT=vc11 - set VS_CMAKE=Visual Studio 11 - set VS_PROG_FILES=Microsoft Visual Studio 11.0 - set VS_LCMS=VC2012 - -) ELSE IF DEFINED VS100COMNTOOLS ( - REM Visual Studio 2010 - set VS_SHORT=vc10 - set VS_CMAKE=Visual Studio 10 - set VS_PROG_FILES=Microsoft Visual Studio 10.0 - set VS_LCMS=VC2010 - -) ELSE ( - REM Visual Studio 2008 - set VS_SHORT=vc9 - set VS_CMAKE=Visual Studio 9 2008 - set VS_PROG_FILES=Microsoft Visual Studio 9.0 - set VS_LCMS=VC2008 -) -IF %Platform% EQU x64 ( - set VS_CMAKE=%VS_CMAKE% Win64 -) - -call setenv.cmd - -IF NOT EXIST %CMAKE_DIR%\bin\cmake.exe ( - echo. - echo.ERROR: CMake not found: %CMAKE_DIR%\bin\cmake.exe - echo. - goto error_end -) - -IF NOT EXIST %CYGWIN_DIR%\bin\cp.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\git.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\gzip.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\mv.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\nasm.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\sed.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\ssh.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\svn.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\tar.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\unzip.exe GOTO cygwin_error -IF NOT EXIST %CYGWIN_DIR%\bin\wget.exe GOTO cygwin_error -GOTO cygwin_ok - -:cygwin_error -echo ERROR: Cygwin with -echo cp -echo git -echo gzip -echo mv -echo nasm -echo sed -echo ssh -echo svn -echo tar -echo unzip -echo wget -echo is required -GOTO error_end - -:cygwin_ok - -SET INSTALL_DIR=dist -IF NOT EXIST %INSTALL_DIR% ( - mkdir %INSTALL_DIR% -) - -IF NOT DEFINED Configuration ( - set Configuration=Release -) -IF NOT DEFINED ConfigurationLuminance ( - set ConfigurationLuminance=RelWithDebInfo -) - -cls -echo. -echo.--- %VS_CMAKE% --- -echo.Configuration = %Configuration% -echo.ConfigurationLuminance = %ConfigurationLuminance% -echo.Platform = %Platform% (%RawPlatform%) -echo. - -IF NOT EXIST %TEMP_DIR% ( - mkdir %TEMP_DIR% -) - - -IF NOT EXIST vcDlls ( - mkdir vcDlls - robocopy "%vcinstalldir%redist\%RawPlatform%" vcDlls /MIR >nul -) - -IF NOT EXIST vcDlls\selected ( - mkdir vcDlls\selected - - %CYGWIN_DIR%\bin\cp.exe vcDlls/**/vcomp* vcDlls/selected - %CYGWIN_DIR%\bin\cp.exe vcDlls/**/msv* vcDlls/selected -) - -IF NOT EXIST %TEMP_DIR%\hugin-%HUGIN_VER%-%RawPlatform%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/hugin-%HUGIN_VER%-%RawPlatform%.zip qtpfsgui.sourceforge.net/win/hugin-%HUGIN_VER%-%RawPlatform%.zip -) -IF NOT EXIST hugin-%HUGIN_VER%-%RawPlatform% ( - %CYGWIN_DIR%\bin\unzip.exe -o -q -d hugin-%HUGIN_VER%-%RawPlatform% %TEMP_DIR%\hugin-%HUGIN_VER%-%RawPlatform%.zip -) - -SET ZLIB_COMMIT=%ZLIB_COMMIT_LONG:~0,7% -IF NOT EXIST %TEMP_DIR%\zlib-%ZLIB_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/zlib-%ZLIB_COMMIT%.zip https://github.com/madler/zlib/archive/%ZLIB_COMMIT_LONG%.zip -) - -IF NOT EXIST zlib-%ZLIB_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/zlib-%ZLIB_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe zlib-* zlib-%ZLIB_COMMIT% -) - -IF NOT EXIST zlib-%ZLIB_COMMIT%.build ( - mkdir zlib-%ZLIB_COMMIT%.build - - pushd zlib-%ZLIB_COMMIT%.build - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% ..\zlib-%ZLIB_COMMIT% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - - popd -) - - -IF NOT EXIST %TEMP_DIR%\lpng170b75.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/lpng170b75.zip http://sourceforge.net/projects/libpng/files/libpng17/1.7.0beta75/lp170b75.zip/download - IF errorlevel 1 goto error_end -) -IF NOT EXIST lp170b75 ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/lpng170b75.zip - pushd lp170b75 - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" . -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) - -IF NOT EXIST %TEMP_DIR%\expat-2.1.0.tar ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/expat-2.1.0.tar.gz http://sourceforge.net/projects/expat/files/expat/2.1.0/expat-2.1.0.tar.gz/download - %CYGWIN_DIR%\bin\gzip.exe -d %TEMP_DIR%/expat-2.1.0.tar.gz -) -IF NOT EXIST expat-2.1.0 ( - %CYGWIN_DIR%\bin\tar.exe -xf %TEMP_DIR%/expat-2.1.0.tar -) - -IF NOT EXIST expat-2.1.0.build ( - mkdir expat-2.1.0.build - - pushd expat-2.1.0.build - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% ..\expat-2.1.0 - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) - -IF NOT EXIST exiv2-%EXIV2_COMMIT% ( - %CYGWIN_DIR%\bin\svn.exe co -r %EXIV2_COMMIT% svn://dev.exiv2.org/svn/trunk exiv2-%EXIV2_COMMIT% -) - -IF NOT EXIST exiv2-%EXIV2_COMMIT%.build ( - mkdir exiv2-%EXIV2_COMMIT%.build - - pushd exiv2-%EXIV2_COMMIT% - SET EXIV2_CMAKE= - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_PROGRAM_PATH=%SVN_DIR% -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% -DEXIV2_ENABLE_BUILD_SAMPLES=OFF -DEXIV2_ENABLE_CURL=OFF -DEXIV2_ENABLE_SSH=OFF - - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) - - -SET LIBJPEG_COMMIT=%LIBJPEG_COMMIT_LONG:~0,7% -IF NOT EXIST %TEMP_DIR%\libjpeg-%LIBJPEG_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/libjpeg-%LIBJPEG_COMMIT%.zip https://github.com/libjpeg-turbo/libjpeg-turbo/archive/%LIBJPEG_COMMIT_LONG%.zip -) - -IF NOT EXIST libjpeg-turbo-%LIBJPEG_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/libjpeg-%LIBJPEG_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe libjpeg-* libjpeg-turbo-%LIBJPEG_COMMIT% -) - - -IF NOT EXIST libjpeg-turbo-%LIBJPEG_COMMIT%.build ( - mkdir libjpeg-turbo-%LIBJPEG_COMMIT%.build - - - pushd libjpeg-turbo-%LIBJPEG_COMMIT%.build - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% -DCMAKE_BUILD_TYPE=%Configuration% -DNASM="%CYGWIN_DIR%\bin\nasm.exe" -DWITH_JPEG8=TRUE ..\libjpeg-turbo-%LIBJPEG_COMMIT% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - copy jconfig.h ..\libjpeg-turbo-%LIBJPEG_COMMIT% - popd -) - -SET LCMS_COMMIT=%LCMS_COMMIT_LONG:~0,7% -IF NOT EXIST %TEMP_DIR%\lcms2-%LCMS_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/lcms2-%LCMS_COMMIT%.zip https://github.com/mm2/Little-CMS/archive/%LCMS_COMMIT_LONG%.zip -) - - -IF NOT EXIST lcms2-%LCMS_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/lcms2-%LCMS_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe Little-CMS-* lcms2-%LCMS_COMMIT% - - pushd lcms2-%LCMS_COMMIT% - REM %VSCOMMAND% Projects\%VS_LCMS%\lcms2.sln /Upgrade - rem devenv Projects\VC2013\lcms2.sln /build Release /project lcms2_DLL - %VSCOMMAND% Projects\%VS_LCMS%\lcms2.sln /Rebuild "%Configuration%|%Platform%" /project lcms2_DLL - IF errorlevel 1 goto error_end - popd -) - -IF NOT EXIST %TEMP_DIR%\tiff-%TIFF_VER%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/tiff-%TIFF_VER%.zip http://download.osgeo.org/libtiff/tiff-%TIFF_VER%.zip -) - - -IF NOT EXIST tiff-%TIFF_VER% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/tiff-%TIFF_VER%.zip - - pushd tiff-%TIFF_VER% - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% -DCMAKE_BUILD_TYPE=%Configuration% . - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) - -SET LIBRAW_COMMIT=%LIBRAW_COMMIT_LONG:~0,7% -SET LIBRAW_DEMOS2_COMMIT=%LIBRAW_DEMOS2_COMMIT_LONG:~0,7% -SET LIBRAW_DEMOS3_COMMIT=%LIBRAW_DEMOS3_COMMIT_LONG:~0,7% - -IF NOT EXIST %TEMP_DIR%\LibRaw-%LIBRAW_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/LibRaw-%LIBRAW_COMMIT%.zip https://github.com/LibRaw/LibRaw/archive/%LIBRAW_COMMIT_LONG%.zip -) - -IF NOT EXIST %TEMP_DIR%\LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%.zip https://github.com/LibRaw/LibRaw-demosaic-pack-GPL2/archive/%LIBRAW_DEMOS2_COMMIT_LONG%.zip -) - -IF NOT EXIST LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%* LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT% -) - -IF NOT EXIST %TEMP_DIR%\LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%.zip https://github.com/LibRaw/LibRaw-demosaic-pack-GPL3/archive/%LIBRAW_DEMOS3_COMMIT_LONG%.zip -) - -IF NOT EXIST LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%* LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT% -) - -IF NOT EXIST LibRaw-%LIBRAW_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/LibRaw-%LIBRAW_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe LibRaw-%LIBRAW_COMMIT%* LibRaw-%LIBRAW_COMMIT% - - - pushd LibRaw-%LIBRAW_COMMIT% - - rem /openmp - echo.COPT_OPT="/arch:SSE2"> qtpfsgui_commands.in - echo.CFLAGS_DP2=/I..\LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%>> qtpfsgui_commands.in - echo.CFLAGSG2=/DLIBRAW_DEMOSAIC_PACK_GPL2>> qtpfsgui_commands.in - echo.CFLAGS_DP3=/I..\LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%>> qtpfsgui_commands.in - echo.CFLAGSG3=/DLIBRAW_DEMOSAIC_PACK_GPL3>> qtpfsgui_commands.in - echo.LCMS_DEF="/DUSE_LCMS2 /DCMS_DLL /I..\lcms2-%LCMS_COMMIT%\include">> qtpfsgui_commands.in - echo.LCMS_LIB="..\lcms2-%LCMS_COMMIT%\bin\lcms2.lib">> qtpfsgui_commands.in - echo.JPEG_DEF="/DUSE_JPEG8 /DUSE_JPEG /I..\libjpeg-turbo-%LIBJPEG_COMMIT%">> qtpfsgui_commands.in - echo.JPEG_LIB="..\libjpeg-turbo-%LIBJPEG_COMMIT%.build\sharedlib\%Configuration%\jpeg.lib">> qtpfsgui_commands.in - - nmake /f Makefile.msvc @qtpfsgui_commands.in clean > nul - nmake /f Makefile.msvc @qtpfsgui_commands.in bin\libraw.dll - popd -) - -SET PTHREADS_CURRENT_DIR=pthreads_%PTHREADS_DIR%_%RawPlatform% -IF NOT EXIST %TEMP_DIR%\%PTHREADS_CURRENT_DIR% ( - mkdir %TEMP_DIR%\%PTHREADS_CURRENT_DIR% - pushd %TEMP_DIR%\%PTHREADS_CURRENT_DIR% - %CYGWIN_DIR%\bin\wget.exe -O pthread.h --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/include/pthread.h - %CYGWIN_DIR%\bin\wget.exe -O sched.h --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/include/sched.h - %CYGWIN_DIR%\bin\wget.exe -O semaphore.h --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/include/semaphore.h - %CYGWIN_DIR%\bin\wget.exe -O pthreadVC2.dll --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/dll/%RawPlatform%/pthreadVC2.dll - %CYGWIN_DIR%\bin\wget.exe -O pthreadVC2.lib --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/lib/%RawPlatform%/pthreadVC2.lib - popd -) -IF NOT EXIST %PTHREADS_CURRENT_DIR% ( - mkdir %PTHREADS_CURRENT_DIR% - robocopy %TEMP_DIR%\%PTHREADS_CURRENT_DIR% %PTHREADS_CURRENT_DIR% >nul -) - -IF NOT EXIST %TEMP_DIR%\cfit%CFITSIO_VER%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/cfit%CFITSIO_VER%.zip ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfit%CFITSIO_VER%.zip -) - -IF NOT EXIST cfit%CFITSIO_VER% ( - %CYGWIN_DIR%\bin\unzip.exe -o -q -d cfit%CFITSIO_VER% %TEMP_DIR%/cfit%CFITSIO_VER%.zip -) - -IF NOT EXIST cfit%CFITSIO_VER%.build ( - mkdir cfit%CFITSIO_VER%.build - pushd cfit%CFITSIO_VER%.build - - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" ..\cfit%CFITSIO_VER% -DUSE_PTHREADS=0 -DCMAKE_INCLUDE_PATH=..\%PTHREADS_CURRENT_DIR% -DCMAKE_LIBRARY_PATH=..\%PTHREADS_CURRENT_DIR% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target cfitsio - IF errorlevel 1 goto error_end - popd -) - - -pushd cfit%CFITSIO_VER% -SET CFITSIO=%CD% -popd -pushd cfit%CFITSIO_VER%.build\%Configuration% -SET CFITSIO=%CFITSIO%;%CD% -popd - -rem IF NOT EXIST %TEMP_DIR%\CCfits-2.4.tar ( -rem %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/CCfits-2.4.tar.gz http://heasarc.gsfc.nasa.gov/docs/software/fitsio/CCfits/CCfits-2.4.tar.gz -rem %CYGWIN_DIR%\bin\gzip.exe -d %TEMP_DIR%/CCfits-2.4.tar.gz -rem %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/CCfits2.4patch.zip http://qtpfsgui.sourceforge.net/win/CCfits2.4patch.zip -rem ) -rem IF NOT EXIST CCfits2.4 ( -rem %CYGWIN_DIR%\bin\tar.exe -xf %TEMP_DIR%/CCfits-2.4.tar -rem ren CCfits CCfits2.4 -rem %CYGWIN_DIR%\bin\unzip.exe -o -q -d CCfits2.4 %TEMP_DIR%/CCfits2.4patch.zip -rem ) -rem IF NOT EXIST CCfits2.4.build ( -rem mkdir CCfits2.4.build -rem -rem pushd CCfits2.4.build -rem %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" ..\CCfits2.4 -DCMAKE_INCLUDE_PATH=..\cfit%CFITSIO_VER% -DCMAKE_LIBRARY_PATH=..\cfit%CFITSIO_VER%.build\%Configuration% -rem IF errorlevel 1 goto error_end -rem %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target CCfits -rem IF errorlevel 1 goto error_end -rem popd -rem ) -rem pushd CCfits2.4.build\%Configuration% -rem SET CCFITS_ROOT_DIR=%CD% -rem popd - -SET GSL_COMMIT=%GSL_COMMIT_LONG:~0,7% -IF NOT EXIST %TEMP_DIR%\gsl-ampl-%GSL_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/gsl-ampl-%GSL_COMMIT%.zip https://github.com/ampl/gsl/archive/%GSL_COMMIT_LONG%.zip -) - -IF NOT EXIST gsl-1.16 ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/gsl-ampl-%GSL_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe gsl-* gsl-1.16 -) -IF NOT EXIST gsl-1.16.build ( - mkdir gsl-1.16.build - pushd gsl-1.16.build - - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_BUILD_TYPE=%Configuration% -DCMAKE_INSTALL_PREFIX=..\dist ..\gsl-1.16 - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) - - -SET OPENEXR_COMMIT=%OPENEXR_COMMIT_LONG:~0,7% -IF NOT EXIST %TEMP_DIR%\OpenEXR-dk-%OPENEXR_COMMIT%.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/OpenEXR-dk-%OPENEXR_COMMIT%.zip https://github.com/openexr/openexr/archive/%OPENEXR_COMMIT_LONG%.zip -) - -IF NOT EXIST OpenEXR-dk-%OPENEXR_COMMIT% ( - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/OpenEXR-dk-%OPENEXR_COMMIT%.zip - %CYGWIN_DIR%\bin\mv.exe openexr-* OpenEXR-dk-%OPENEXR_COMMIT% -) -IF NOT EXIST OpenEXR-dk-%OPENEXR_COMMIT%\IlmBase.build ( - mkdir OpenEXR-dk-%OPENEXR_COMMIT%\IlmBase.build - pushd OpenEXR-dk-%OPENEXR_COMMIT%\IlmBase.build - - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_BUILD_TYPE=%Configuration% -DCMAKE_INSTALL_PREFIX=..\..\dist -DBUILD_SHARED_LIBS=OFF ../IlmBase - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) -IF NOT EXIST OpenEXR-dk-%OPENEXR_COMMIT%\OpenEXR.build ( - mkdir OpenEXR-dk-%OPENEXR_COMMIT%\OpenEXR.build - pushd OpenEXR-dk-%OPENEXR_COMMIT%\OpenEXR.build - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" -DCMAKE_BUILD_TYPE=%Configuration% ^ - -DILMBASE_PACKAGE_PREFIX=%CD%\dist -DBUILD_SHARED_LIBS=OFF ^ - -DCMAKE_INSTALL_PREFIX=..\..\dist ^ - ../OpenEXR - IF errorlevel 1 goto error_end - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% --target install - IF errorlevel 1 goto error_end - popd -) - -IF %Platform% EQU Win32 ( - IF NOT EXIST %TEMP_DIR%\fftw-%FFTW_VER%-dll32.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/fftw-%FFTW_VER%-dll32.zip ftp://ftp.fftw.org/pub/fftw/fftw-%FFTW_VER%-dll32.zip - ) -) ELSE ( - IF NOT EXIST %TEMP_DIR%\fftw-%FFTW_VER%-dll64.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/fftw-%FFTW_VER%-dll64.zip ftp://ftp.fftw.org/pub/fftw/fftw-%FFTW_VER%-dll64.zip - ) -) - -IF NOT EXIST fftw-%FFTW_VER%-dll ( - IF %Platform% EQU Win32 ( - %CYGWIN_DIR%\bin\unzip.exe -q -d fftw-%FFTW_VER%-dll %TEMP_DIR%/fftw-%FFTW_VER%-dll32.zip - ) ELSE ( - %CYGWIN_DIR%\bin\unzip.exe -q -d fftw-%FFTW_VER%-dll %TEMP_DIR%/fftw-%FFTW_VER%-dll64.zip - ) - - pushd fftw-%FFTW_VER%-dll - lib /def:libfftw3-3.def /machine:%RawPlatform% - lib /def:libfftw3f-3.def /machine:%RawPlatform% - lib /def:libfftw3l-3.def /machine:%RawPlatform% - popd -) - -REM IF NOT EXIST %TEMP_DIR%\tbb40_20120613oss_win.zip ( -REM %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/tbb40_20120613oss_win.zip "http://threadingbuildingblocks.org/uploads/77/187/4.0 update 5/tbb40_20120613oss_win.zip" -REM ) -REM -REM IF NOT EXIST tbb40_20120613oss ( -REM %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/tbb40_20120613oss_win.zip -REM REM Everthing is already compiled, nothing to do! -REM ) - -REM IF NOT EXIST %TEMP_DIR%\gtest-1.6.0.zip ( -SET GTEST_DIR=gtest-r680 -IF NOT EXIST %GTEST_DIR% ( - REM %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/gtest-1.6.0.zip http://googletest.googlecode.com/files/gtest-1.6.0.zip - %CYGWIN_DIR%\bin\svn.exe co -r 680 http://googletest.googlecode.com/svn/trunk/ %GTEST_DIR% - - pushd %GTEST_DIR% - %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" . -DBUILD_SHARED_LIBS=1 - %CMAKE_DIR%\bin\cmake.exe --build . --config %Configuration% - REN Release lib - popd -) -SET GTEST_ROOT=%CD%\%GTEST_DIR% - -REM IF NOT EXIST %GTEST_DIR%.build ( -REM mkdir %GTEST_DIR%.build -REM pushd %GTEST_DIR%.build -REM %CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" ..\%GTEST_DIR% -DBUILD_SHARED_LIBS=1 -REM %VSCOMMAND% gtest.sln /t:Build /projectconfig=%Configuration%;Platform=%Platform% -REM popd -REM ) -REM IF NOT EXIST gtest-1.6.0 ( -REM %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/gtest-1.6.0.zip -REM ) - -IF NOT DEFINED L_BOOST_DIR ( - set L_BOOST_DIR=. -) - -IF NOT EXIST %TEMP_DIR%\boost_1_%BOOST_MINOR%_0.zip ( - %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/boost_1_%BOOST_MINOR%_0.zip http://sourceforge.net/projects/boost/files/boost/1.%BOOST_MINOR%.0/boost_1_%BOOST_MINOR%_0.zip/download -) - -IF NOT EXIST %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 ( - echo.Extracting boost. Be patient! - - pushd %L_BOOST_DIR% - %CYGWIN_DIR%\bin\unzip.exe -q %TEMP_DIR%/boost_1_%BOOST_MINOR%_0.zip - popd - - - pushd %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 - bootstrap.bat - popd - - pushd %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 - IF %Platform% EQU Win32 ( - IF %Configuration% EQU Release ( - cmd.exe /C b2.exe toolset=msvc variant=release - ) ELSE ( - cmd.exe /C b2.exe toolset=msvc variant=debug - ) - ) ELSE ( - IF %Configuration% EQU Release ( - cmd.exe /C b2.exe toolset=msvc variant=release address-model=64 - ) ELSE ( - cmd.exe /C b2.exe toolset=msvc variant=debug address-model=64 - ) - ) - popd -) - -REM Set Boost-directory as ENV variable (needed for CMake) -pushd %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 -rem SET Boost_DIR=%CD% -REM SET BOOST_ROOT=%CD% -popd - - -IF NOT EXIST LuminanceHdrStuff ( - mkdir LuminanceHdrStuff -) -IF NOT EXIST LuminanceHdrStuff\qtpfsgui ( - pushd LuminanceHdrStuff - git clone https://github.com/LuminanceHDR/LuminanceHDR.git qtpfsgui - popd -) ELSE ( - pushd LuminanceHdrStuff\qtpfsgui - IF %UPDATE_REPO_LUMINANCE% EQU 1 ( - git pull - ) - popd -) - - -IF NOT EXIST LuminanceHdrStuff\DEPs ( - pushd LuminanceHdrStuff - mkdir DEPs - cd DEPs - mkdir include - mkdir lib - mkdir bin - popd - - for %%v in ("libpng", "lcms2", "libraw", "fftw3", "gsl", "CCfits") do ( - mkdir LuminanceHdrStuff\DEPs\include\%%v - mkdir LuminanceHdrStuff\DEPs\lib\%%v - mkdir LuminanceHdrStuff\DEPs\bin\%%v - ) - - mkdir LuminanceHdrStuff\DEPs\include\libraw\libraw - - rem mkdir LuminanceHdrStuff\DEPs\include\gsl\gsl - rem copy gsl-1.15\gsl\*.h LuminanceHdrStuff\DEPs\include\gsl\gsl - rem copy gsl-1.15\build.vc10\lib\%Platform%\%Configuration%\*.lib LuminanceHdrStuff\DEPs\lib\gsl - rem copy gsl-1.15\build.vc10\dll\*.dll LuminanceHdrStuff\DEPs\bin\gsl -) - -robocopy fftw-%FFTW_VER%-dll LuminanceHdrStuff\DEPs\include\fftw3 *.h /MIR >nul -robocopy fftw-%FFTW_VER%-dll LuminanceHdrStuff\DEPs\lib\fftw3 *.lib /MIR /NJS >nul -robocopy fftw-%FFTW_VER%-dll LuminanceHdrStuff\DEPs\bin\fftw3 *.dll /MIR /NJS >nul - - -robocopy LibRaw-%LIBRAW_COMMIT%\libraw LuminanceHdrStuff\DEPs\include\libraw\libraw /MIR >nul -robocopy LibRaw-%LIBRAW_COMMIT%\lib LuminanceHdrStuff\DEPs\lib\libraw *.lib /MIR >nul -robocopy LibRaw-%LIBRAW_COMMIT%\bin LuminanceHdrStuff\DEPs\bin\libraw *.dll /MIR >nul - -robocopy lcms2-%LCMS_COMMIT%\include LuminanceHdrStuff\DEPs\include\lcms2 *.h /MIR >nul -robocopy lcms2-%LCMS_COMMIT%\bin LuminanceHdrStuff\DEPs\lib\lcms2 *.lib /MIR /NJS >nul -rem robocopy lcms2-%LCMS_COMMIT%\bin LuminanceHdrStuff\DEPs\bin\lcms2 *.dll /MIR /NJS >nul - -REM robocopy tbb40_20120613oss\include LuminanceHdrStuff\DEPs\include\tbb /MIR >nul -REM robocopy tbb40_20120613oss\lib\%CpuPlatform%\%VS_SHORT% LuminanceHdrStuff\DEPs\lib\tbb /MIR >nul -REM robocopy tbb40_20120613oss\bin\%CpuPlatform%\%VS_SHORT% LuminanceHdrStuff\DEPs\bin\tbb /MIR >nul - -robocopy CCfits2.4 LuminanceHdrStuff\DEPs\include\CCfits *.h CCfits /MIR >nul -pushd LuminanceHdrStuff\DEPs\include -SET CCFITS_ROOT_DIR=%CCFITS_ROOT_DIR%;%CD% -popd - -IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build ( - mkdir LuminanceHdrStuff\qtpfsgui.build -) -pushd LuminanceHdrStuff\qtpfsgui.build - - -IF %OPTION_LUMINANCE_UPDATE_TRANSLATIONS% EQU 1 ( - set CMAKE_OPTIONS=-DUPDATE_TRANSLATIONS=1 -) ELSE ( - set CMAKE_OPTIONS=-UUPDATE_TRANSLATIONS -) -IF %OPTION_LUPDATE_NOOBSOLETE% EQU 1 ( - set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLUPDATE_NOOBSOLETE=1 -) ELSE ( - set CMAKE_OPTIONS=%CMAKE_OPTIONS% -ULUPDATE_NOOBSOLETE -) - -set L_CMAKE_INCLUDE=..\..\boost_1_%BOOST_MINOR%_0 -set L_CMAKE_LIB=..\..\boost_1_%BOOST_MINOR%_0\stage\lib -set L_CMAKE_PROGRAM_PATH=%CYGWIN_DIR%\bin -set L_CMAKE_PREFIX_PATH=%QTDIR% -set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INCLUDE_PATH=%L_CMAKE_INCLUDE% -DCMAKE_LIBRARY_PATH=%L_CMAKE_LIB% -DCMAKE_PROGRAM_PATH=%L_CMAKE_PROGRAM_PATH% -DCMAKE_INSTALL_PREFIX=..\..\dist -DCMAKE_PREFIX_PATH=%L_CMAKE_PREFIX_PATH% -DPNG_NAMES=libpng16;libpng17 -DOPENEXR_VERSION=%OPENEXR_CMAKE_VERSION% - -echo CMake command line options ------------------------------------ -echo %CMAKE_OPTIONS% -echo --------------------------------------------------------------- - -REM Eclipse CDT4 - NMake Makefiles - -%CMAKE_DIR%\bin\cmake.exe -G "%VS_CMAKE%" ..\qtpfsgui %CMAKE_OPTIONS% -REM %CMAKE_DIR%\bin\cmake.exe -G "Eclipse CDT4 - NMake Makefiles" ..\qtpfsgui %CMAKE_OPTIONS% -REM goto end -IF errorlevel 1 goto error_end -popd - -IF EXIST LuminanceHdrStuff\qtpfsgui.build\Luminance HDR.sln ( - pushd LuminanceHdrStuff\qtpfsgui.build - rem %VSCOMMAND% luminance-hdr.sln /Upgrade - %CMAKE_DIR%\bin\cmake.exe --build . --config %ConfigurationLuminance% %LuminanceTarget% - - IF errorlevel 1 goto error_end - popd -) - -IF EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\luminance-hdr.exe ( - IF EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% ( - - robocopy LuminanceHdrStuff\qtpfsgui LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% LICENSE >nul - - IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\align_image_stack.exe ( - copy vcDlls\selected\* LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\ - ) - - pushd LuminanceHdrStuff\DEPs\bin - robocopy exiv2 ..\..\qtpfsgui.build\%ConfigurationLuminance% expat.dll >nul - robocopy libraw ..\..\qtpfsgui.build\%ConfigurationLuminance% libraw.dll >nul - robocopy fftw3 ..\..\qtpfsgui.build\%ConfigurationLuminance% libfftw3f-3.dll >nul - popd - - pushd %INSTALL_DIR% - robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% exiv2.dll >nul - robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% jpeg8.dll >nul - robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% libpng17.dll >nul - robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% zlib.dll >nul - robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% expat.dll >nul - robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% tiff.dll >nul - popd - - robocopy cfit%CFITSIO_VER%.build\%Configuration% LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% cfitsio.dll >nul - robocopy %PTHREADS_CURRENT_DIR% LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% pthreadVC2.dll >nul - - robocopy lcms2-%LCMS_COMMIT%\bin LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% lcms2.dll >nul - - IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\i18n\ ( - mkdir LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\i18n - ) - robocopy LuminanceHdrStuff\qtpfsgui.build LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\i18n lang_*.qm >nul - - for %%v in ("help", "hdrhtml", "icons") do ( - IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\%%v\ ( - mkdir LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\%%v - ) - ) - robocopy LuminanceHdrStuff\qtpfsgui\help LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\help /MIR >nul - robocopy LuminanceHdrStuff\qtpfsgui\hdrhtml LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\hdrhtml /MIR >nul - robocopy LuminanceHdrStuff\qtpfsgui\icons LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\icons /MIR >nul - - - REM ----- QT Stuff (Dlls, translations) -------------------------------------------- - pushd LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% - - for %%v in ( "Qt5Concurrent.dll", "Qt5Core.dll", "Qt5Gui.dll", "Qt5Multimedia.dll", "Qt5MultimediaWidgets.dll", "Qt5Network.dll", "Qt5Positioning.dll", "Qt5WinExtras.dll", "Qt5OpenGL.dll", "Qt5PrintSupport.dll", "Qt5Qml.dll", "Qt5Quick.dll", "Qt5Sensors.dll", "Qt5Sql.dll", "Qt5V8.dll", "Qt5WebEngine.dll", "Qt5WebEngineCore.dll", "Qt5WebEngineWidgets.dll", "Qt5Svg.dll", "Qt5WebKitWidgets.dll", "Qt5Widgets.dll", "Qt5Xml.dll", "Qt5WebChannel.dll", "Qt5QuickWidgets.dll", "icudt53.dll", "icuin53.dll", "icuuc53.dll" ) do ( - robocopy %QTDIR%\bin . %%v >nul - ) - for %%v in ("imageformats", "sqldrivers", "platforms") do ( - IF NOT EXIST %%v ( - mkdir %%v - ) - ) - robocopy %QTDIR%\plugins\imageformats imageformats qjpeg.dll >nul - robocopy %QTDIR%\plugins\imageformats imageformats qsvg.dll >nul - robocopy %QTDIR%\plugins\sqldrivers sqldrivers qsqlite.dll >nul - robocopy %QTDIR%\plugins\platforms platforms qwindows.dll >nul - robocopy %QTDIR%\translations i18n qt_??.qm >nul - robocopy %QTDIR%\translations i18n qt_??_*.qm >nul - popd - - robocopy hugin-%HUGIN_VER%-%RawPlatform% LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\hugin /MIR >nul - ) -) - -goto end - -:error_end -pause - -:end - -endlocal \ No newline at end of file diff -Nru luminance-hdr-2.5.0/build/msvc/README.txt luminance-hdr-2.5.1/build/msvc/README.txt --- luminance-hdr-2.5.0/build/msvc/README.txt 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/msvc/README.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,89 +0,0 @@ -This is the README file for Luminance -------------------------------------------------------------------- -Webpage: http://qtpfsgui.sourceforge.net -Sourceforge: http://sourceforge.net/projects/qtpfsgui - -Contents ---------- -1. Requirements -2. Compilation -3. Output - - -1. Requirements ---------------------------------------------------------------------- -This build process works for 32 and 64 bit compilation. - -This build process requires: -* Windows -* MS Visual Studio 2010 or higher, ExpressEditions should work (currently testing with VS2012) -* Qt for MSVC installed - - either official 32 bit Qt from: http://qt-project.org/downloads - - or Qt self compiled - ATTENTION: Do not mix the compilation with different versions of MSVC. If you - compile Luminance with VC2012 you should also have Qt compiled - with VC2010. If you don't find any precompiled Qt with a - specific MSVC or platform version, you can just download the - latest version of a precompiled Qt with any VC compiler (or just the Qt source version), - open the VC command prompt in the Qt main directory and then: - - First open this solution and build all projects for your configuration (ex. Release/x64) - > icu\source\allinone\allinone.sln - - And then run: (change your paths to match the installation - > set include=%include%;C:\Data\Develop\Qt\icu\include - > set lib=%lib%;C:\Data\Develop\Qt\icu\lib64 - (Change lib64 to lib for the x32 build) - - > set path=%path%;C:\Data\Programs\ruby-1.9.3-p385-i386-mingw32\bin - > configure -release -opengl desktop -no-compile-examples -mp -nomake tests -nomake examples -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-avx -no-avx2 - > nmake - > cd qtwebkit - > nmake - > cd .. - > nmake install_subtargets - > nmake -f Makefile confclean - > del /S /Q *.obj - This recompiles the whole Qt and takes from 30 minutes to several hours... - This reconfiguration can also be applied for generating x64 Qt versions! - ATTENTION: If you move the Qt folder AFTER the compilation you have to redo the - > configure ... step - (without doing the actual compilation with nmake) - Moreover you need to manually adapt the paths in qtbase\lib\cmake\Qt5LinguistTools\Qt5LinguistToolsConfig.cmake - - Afterwards copy the icu-dlls into the qtbase/bin folder, along with the platforms folder from the plugins directory. - Don't forget the d3dcompiler_46.dll from the local VS-folder! - At the end programs like linguist.exe, designer.exe must be able to run!!! - - -* CMake -* Cygwin installed with: cvs, git, gzip, sed, ssh, svn, tar, unzip, wget - - -2. Compilation ---------------------------------------------------------------------- -Copy the .cmd files into a new EMPTY folder. Open the Visual Studio -command prompt (x64 or Win32) and change (cd) to that directory. If -there are some problems the batch script should tell you! - -Open the setenv.cmd file and adjust the variables paths and options for your needs. - -Start the compilation with -> build.cmd - -Wait, wait, wait.... - - -3. Output ---------------------------------------------------------------------- -The build process should download and build all the required libraries. - -In 'LuminanceHdrStuff\DEPs' you should find all the compilated DLLs, -librarys and include header files. - -In 'LuminanceHdrStuff\qtpfsgui.build' you should find all the binary -related files. - -In 'LuminanceHdrStuff\qtpfsgui' you find the LuminanceHdr SVN directory. - - diff -Nru luminance-hdr-2.5.0/build/msvc/setenv.cmd luminance-hdr-2.5.1/build/msvc/setenv.cmd --- luminance-hdr-2.5.0/build/msvc/setenv.cmd 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/msvc/setenv.cmd 1970-01-01 00:00:00.000000000 +0000 @@ -1,29 +0,0 @@ -@echo off -SET CYGWIN_DIR=C:\cygwin64 -SET TEMP_DIR=.downloaddir -rem SET CMAKE_DIR=C:\Data\Programs\cmake-2.8.12.1-win32-x86 -SET CMAKE_DIR=C:\Data\Programs\cmake-3.4.1-win32-x86 - -SET VISUAL_STUDIO_VC_REDIST=C:\Program Files (x86)\%VS_PROG_FILES%\VC\redist\%RawPlatform% -rem SET QTDIR=C:\Data\Develop\Qt\5.0.1-x64\qtbase -SET QTDIR=C:\Data\Dev\Qt5.8.0\5.8\msvc2015_64 -SET SVN_DIR=C:\Data\Programs\Apache-Subversion-1.8.13\bin - -REM Options: ------------------------------------------- - -REM enable another configuration (defaulting to Release, RelWithDebInfo) -REM SET Configuration=Debug -REM SET ConfigurationLuminance=Release - -SET LuminanceTarget= -rem --target luminance-hdr - -REM updates/overwrites the original .ts files doing a Qt lupdate -SET OPTION_LUMINANCE_UPDATE_TRANSLATIONS=0 -SET OPTION_LUPDATE_NOOBSOLETE=0 - -REM Optional variables -REM SET L_BOOST_DIR=C:\Data\Develop\libhdrStuff - -REM should the Luminance git repo be updated (defaulting to true for read-only git download) -SET UPDATE_REPO_LUMINANCE=0 \ No newline at end of file diff -Nru luminance-hdr-2.5.0/build/PackagingApple.cmake luminance-hdr-2.5.1/build/PackagingApple.cmake --- luminance-hdr-2.5.0/build/PackagingApple.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/PackagingApple.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,60 +0,0 @@ -set(CPACK_PACKAGE_CONTACT "Davide Anastasia ") -# set(CPACK_GENERATOR "DragNDrop") -# set(CPACK_DMG_FORMAT "UDBZ") -# set(CPACK_DMG_VOLUME_NAME "${LHDR_NAME} ${LHDR_VERSION}") -# set(CPACK_SYSTEM_NAME "OSX") -# set(CPACK_PACKAGE_FILE_NAME "${LHDR_NAME}-${LHDR_VERSION}") -# set(CPACK_PACKAGE_ICON "${ICONS_DIR}/DMG.icns") -# set(CPACK_DMG_DS_STORE "${ICONS_DIR}/DMGDSStore") -# set(CPACK_DMG_BACKGROUND_IMAGE "${ICONS_DIR}/DMGBackground.png") - -SET(plugin_dest_dir ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/PlugIns) -SET(qtconf_dest_dir ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) -SET(APPS "\${CMAKE_INSTALL_PREFIX}/${LHDR_OSX_EXECUTABLE_NAME}.app") - -#-------------------------------------------------------------------------------- -# Install needed Qt plugins by copying directories from the qt installation -# One can cull what gets copied by using 'REGEX "..." EXCLUDE' -#install(DIRECTORY "${QT_PLUGINS_DIR}/sqldrivers" -# DESTINATION ${plugin_dest_dir} COMPONENT Runtime) -#install(FILES ${LIBS} -# DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/MacOS) - -# install align_image_stack -install(FILES ${CMAKE_SOURCE_DIR}/build/macosx/align_image_stack - DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/MacOS) - -# install help -install(DIRECTORY ${CMAKE_SOURCE_DIR}/help - DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) -install(DIRECTORY ${CMAKE_SOURCE_DIR}/html - DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) - -# install a qt.conf file -install(FILES ${CMAKE_SOURCE_DIR}/build/macosx/qt.conf - DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) - -# install README and other files -install(FILES - ${CMAKE_SOURCE_DIR}/AUTHORS - ${CMAKE_SOURCE_DIR}/README.md - ${CMAKE_SOURCE_DIR}/LICENSE - ${CMAKE_SOURCE_DIR}/Changelog -# ${CMAKE_SOURCE_DIR}/BUGS -# ${CMAKE_SOURCE_DIR}/INSTALL -# ${CMAKE_SOURCE_DIR}/TODO - DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app) - -# directories to look for dependencies -set(DIRS ${QT_LIBRARY_DIRS}) - -#INSTALL(CODE " -# file(GLOB_RECURSE QTPLUGINS -# \"\${CMAKE_INSTALL_PREFIX}/${plugin_dest_dir}/*${CMAKE_SHARED_LIBRARY_SUFFIX}\") -# include(BundleUtilities) -# fixup_bundle(\"${APPS}\" \"\${QTPLUGINS}\" \"${DIRS}\") -# " COMPONENT Runtime) - -# create drag and drop installer -#set(CPACK_BINARY_DRAGNDROP ON) -#include(CPack) diff -Nru luminance-hdr-2.5.0/build/Packaging.cmake luminance-hdr-2.5.1/build/Packaging.cmake --- luminance-hdr-2.5.0/build/Packaging.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/build/Packaging.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,18 +0,0 @@ -MESSAGE(STATUS "Installation of ${LHDR_NAME} ${LHDR_VERSION} in ${CMAKE_INSTALL_PREFIX}") - -# Shared CPack Variables -set(CPACK_PACKAGE_NAME "${LHDR_NAME}") -set(CPACK_PACKAGE_DESCRIPTION "${LHDR_NAME} ${LHDR_VERSION}") -set(CPACK_PACKAGE_VERSION_MAJOR "${LHDR_VERSION_MAJOR}") -set(CPACK_PACKAGE_VERSION_MINOR "${LHDR_VERSION_MINOR}") -set(CPACK_PACKAGE_VERSION_PATCH "${LHDR_VERSION_PATCH}") -set(CPACK_PACKAGE_VERSION "${LHDR_VERSION}") -set(CPACK_PACKAGE_VENDOR "${LHDR_VENDOR}") - -set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE") -set(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README.md") -set(CPACK_RESOURCE_FILE_WELCOME "${CMAKE_SOURCE_DIR}/README.md") - -if(APPLE) -include(${CMAKE_SOURCE_DIR}/build/PackagingApple.cmake) -endif() diff -Nru luminance-hdr-2.5.0/build_files/Modules/CompilerSettings.cmake luminance-hdr-2.5.1/build_files/Modules/CompilerSettings.cmake --- luminance-hdr-2.5.0/build_files/Modules/CompilerSettings.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/CompilerSettings.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,60 @@ +IF(UNIX) +ADD_DEFINITIONS(-Wall -Wno-unknown-pragmas) +ADD_DEFINITIONS(-ffast-math) + +IF(APPLE) +# optimize for 64-bit core 2 architecture on Apple +ADD_DEFINITIONS(-march=core2) +ENDIF() +ENDIF() + +#Activate C++11 support, when available +if("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU") + add_definitions(-DBRANCH_PREDICTION) + execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) + if (GCC_VERSION VERSION_GREATER 4.7 OR GCC_VERSION VERSION_EQUAL 4.7) + message(STATUS "C++11 activated for GCC ${GCC_VERSION}") + set(CMAKE_CXX_STANDARD 11) + #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") # add_definitions("-std=gnu++11") + add_definitions(-DLHDR_CXX11_ENABLED) + elseif(GCC_VERSION VERSION_GREATER 4.3 OR GCC_VERSION VERSION_EQUAL 4.3) + message(WARNING "C++0x activated for GCC ${GCC_VERSION}. If you get any errors update to a compiler that fully supports C++11") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x") # add_definitions("-std=gnu++0x") + add_definitions(-DLHDR_CXX11_ENABLED) + else() + message(WARNING "C++11 NOT available. GCC >= 4.3 is needed.") + endif() +elseif("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") + message(STATUS "C++11 activated for Clang") + set(CMAKE_CXX_STANDARD 11) + if (APPLE) + set(CMAKE_EXE_LINKER_FLAGS "-lc++abi -stdlib=libc++") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + endif() + # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") + add_definitions(-DLHDR_CXX11_ENABLED) + add_definitions(-DBRANCH_PREDICTION) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnull-dereference -Wdelete-non-virtual-dtor -Wsign-compare -Wswitch") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wreturn-type -Wself-assign -Wunused-argument -Wunused-function -Wtautological-compare") + # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wshorten-64-to-32 -Wconversion -Wsystem-headers") +elseif(MSVC) + message(STATUS "C++11 is active by default on Microsoft Visual Studio") + # add_definitions("-std=c++0x") + add_definitions(-DLHDR_CXX11_ENABLED) +else() + message(WARNING "Your C++ compiler does not support C++11.") +endif() +#OpenMP Support under Linux, Windows with MSVC & MacOS X with GCC >= 4.3 +IF(MSVC) + FIND_PACKAGE(OpenMP REQUIRED) + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") +ELSEIF(CMAKE_COMPILER_IS_GNUCC AND UNIX) + EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) + IF(GCC_VERSION VERSION_GREATER 4.3 OR GCC_VERSION VERSION_EQUAL 4.3) + MESSAGE(STATUS "GCC >= 4.3") + FIND_PACKAGE(OpenMP REQUIRED) + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") + ENDIF() +ENDIF() diff -Nru luminance-hdr-2.5.0/build_files/Modules/FindCFITSIO.cmake luminance-hdr-2.5.1/build_files/Modules/FindCFITSIO.cmake --- luminance-hdr-2.5.0/build_files/Modules/FindCFITSIO.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/FindCFITSIO.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,44 @@ +# - Try to find CFITSIO +# Once done this will define +# +# CFITSIO_FOUND - system has CFITSIO +# CFITSIO_INCLUDE_DIR - the CFITSIO include directory +# CFITSIO_LIBRARIES - Link these to use CFITSIO +# CFITSIO_VERSION_STRING - Human readable version number of cfitsio +# CFITSIO_VERSION_MAJOR - Major version number of cfitsio +# CFITSIO_VERSION_MINOR - Minor version number of cfitsio +# +# Redistribution and use is allowed according to the terms of the BSD license. + +find_path(CFITSIO_INCLUDE_DIR fitsio.h + PATH_SUFFIXES libcfitsio3 libcfitsio0 cfitsio + PATHS + $ENV{CFITSIO} + ${_obIncDir} + ${GNUWIN32_DIR}/include + /opt/local/include +) + +find_library(CFITSIO_LIBRARIES NAMES cfitsio + PATHS + $ENV{CFITSIO} + ${_obLinkDir} + ${GNUWIN32_DIR}/lib + /opt/local/lib +) + +if(CFITSIO_INCLUDE_DIR AND CFITSIO_LIBRARIES) + # Find the version of the cfitsio header + FILE(READ "${CFITSIO_INCLUDE_DIR}/fitsio.h" FITSIO_H) + STRING(REGEX REPLACE ".*#define CFITSIO_VERSION[^0-9]*([0-9]+)\\.([0-9]+).*" "\\1.\\2" CFITSIO_VERSION_STRING "${FITSIO_H}") + STRING(REGEX REPLACE "^([0-9]+)[.]([0-9]+)" "\\1" CFITSIO_VERSION_MAJOR ${CFITSIO_VERSION_STRING}) + STRING(REGEX REPLACE "^([0-9]+)[.]([0-9]+)" "\\2" CFITSIO_VERSION_MINOR ${CFITSIO_VERSION_STRING}) + + SET(CFITSIO_VERSION_STRING "${CFITSIO_VERSION_MAJOR}.${CFITSIO_VERSION_MINOR}") +endif() + +include(FindPackageHandleStandardArgs) + +find_package_handle_standard_args(CFITSIO + REQUIRED_VARS CFITSIO_LIBRARIES CFITSIO_INCLUDE_DIR CFITSIO_VERSION_STRING) +mark_as_advanced(CFITSIO_INCLUDE_DIR CFITSIO_LIBRARIES) diff -Nru luminance-hdr-2.5.0/build_files/Modules/Findexiv2.cmake luminance-hdr-2.5.1/build_files/Modules/Findexiv2.cmake --- luminance-hdr-2.5.0/build_files/Modules/Findexiv2.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/Findexiv2.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,82 @@ +# - Try to find the Exiv2 library +# +# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need +# before doing FIND_PACKAGE(Exiv2). The default is 0.12. +# +# Once done this will define +# +# EXIV2_FOUND - system has libexiv2 +# EXIV2_INCLUDE_DIR - the libexiv2 include directory +# EXIV2_LIBRARIES - Link these to use libexiv2 +# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 +# +# The minimum required version of Exiv2 can be specified using the +# standard syntax, e.g. find_package(Exiv2 0.17) +# +# For compatiblity, also the variable EXIV2_MIN_VERSION can be set to the minimum version +# you need before doing FIND_PACKAGE(Exiv2). The default is 0.12. + +# Copyright (c) 2010, Alexander Neundorf, +# Copyright (c) 2008, Gilles Caulier, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +# Support EXIV2_MIN_VERSION for compatibility: +if(NOT Exiv2_FIND_VERSION) + set(Exiv2_FIND_VERSION "${EXIV2_MIN_VERSION}") +endif(NOT Exiv2_FIND_VERSION) + +# the minimum version of exiv2 we require +if(NOT Exiv2_FIND_VERSION) + set(Exiv2_FIND_VERSION "0.21") +endif(NOT Exiv2_FIND_VERSION) + + +if (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + find_package(PkgConfig) + pkg_check_modules(PC_EXIV2 exiv2) + set(EXIV2_DEFINITIONS ${PC_EXIV2_CFLAGS_OTHER}) +endif (NOT WIN32) + + +find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp + HINTS + ${PC_EXIV2_INCLUDEDIR} + ${PC_EXIV2_INCLUDE_DIRS} + ) + +find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2 + HINTS + ${PC_EXIV2_LIBDIR} + ${PC_EXIV2_LIBRARY_DIRS} + ) + + +# Get the version number from exiv2/version.hpp and store it in the cache: +if(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) + file(READ ${EXIV2_INCLUDE_DIR}/exiv2/version.hpp EXIV2_VERSION_CONTENT) + string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") + set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") + set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}") + + string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") + set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}") + + set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}" CACHE STRING "Version number of Exiv2" FORCE) +endif(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) + +set(EXIV2_LIBRARIES "${EXIV2_LIBRARY}") + +include(FindPackageHandleStandardArgs) +#find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR +# VERSION_VAR EXIV2_VERSION) + +find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR + EXIV2_VERSION) +mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARY) + diff -Nru luminance-hdr-2.5.0/build_files/Modules/Findfftwf.cmake luminance-hdr-2.5.1/build_files/Modules/Findfftwf.cmake --- luminance-hdr-2.5.0/build_files/Modules/Findfftwf.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/Findfftwf.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,51 @@ +# FFTWF_INCLUDE_DIR = fftw3.h +# FFTWF_LIBRARIES = libfftw3.a +# FFTWF_FOUND = true if FFTW3 is found + +IF(FFTWF_INCLUDE_DIRS) + FIND_PATH(FFTWF_INCLUDE_DIR fftw3.h ${FFTWF_INCLUDE_DIRS}) + FIND_LIBRARY(FFTWF_LIBRARY fftw3f ${FFTWF_LIBRARY_DIRS}) + FIND_LIBRARY(FFTWF_THREADS_LIBRARY fftw3f_threads ${FFTWF_LIBRARY_DIRS}) +ELSE(FFTWF_INCLUDE_DIRS) + SET(TRIAL_PATHS + $ENV{FFTWF_HOME}/include + /usr/include + /usr/local/include + /opt/include + /usr/apps/include + ) + + SET(TRIAL_LIBRARY_PATHS + $ENV{FFTWF_HOME}/lib + /usr/lib + /usr/local/lib + /opt/lib + /sw/lib + ) + + FIND_PATH(FFTWF_INCLUDE_DIR fftw3.h ${TRIAL_PATHS}) + FIND_LIBRARY(FFTWF_LIBRARIES fftw3f ${TRIAL_LIBRARY_PATHS}) + FIND_LIBRARY(FFTWF_THREADS_LIBRARIES fftw3f_threads ${TRIAL_LIBRARY_PATHS}) +ENDIF(FFTWF_INCLUDE_DIRS) + + +IF(FFTWF_INCLUDE_DIR AND FFTWF_LIBRARIES AND FFTWF_THREADS_LIBRARIES) + SET(FFTWF_FOUND TRUE) +ELSE() + SET(FFTWF_FOUND FALSE) +ENDIF() + +IF(FFTWF_FOUND) + SET(FFTWF_LIBRARIES ${FFTWF_LIBRARIES} ${FFTWF_THREADS_LIBRARIES}) + + MESSAGE(STATUS "Found FFTW3F (FFTWF_INCLUDE_DIR = ${FFTWF_INCLUDE_DIR})") + MESSAGE(STATUS "Found FFTW3F (FFTWF_LIBRARIES = ${FFTWF_LIBRARIES})") +ELSE() + MESSAGE(FATAL_ERROR "Could not find FFTW3F") +ENDIF() + +MARK_AS_ADVANCED( + FFTWF_INCLUDE_DIR + FFTWF_LIBRARIES + FFTWF_FOUND +) diff -Nru luminance-hdr-2.5.0/build_files/Modules/FindGSL.cmake luminance-hdr-2.5.1/build_files/Modules/FindGSL.cmake --- luminance-hdr-2.5.0/build_files/Modules/FindGSL.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/FindGSL.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,64 @@ +# - Find GSL +# Find the GNU Scientific Library (GSL) includes and library +# +# This module defines +# GSL_FOUND +# GSL_LIBRARIES for GSL only +# GSLCBLAS_LIBRARIES for GSL CBLAS +# GSL_INCLUDE_DIR +# GSLCBLAS_INCLUDE_DIR (not yet defined) +# + +FIND_PATH(GSL_INCLUDE_DIR gsl/gsl_rng.h + /usr/local/include + /usr/include + /opt/local/include +) + +FIND_PATH(GSLCBLAS_INCLUDE_DIR gsl/gsl_cblas.h + /usr/local/include + /usr/include + /opt/local/include +) + +IF(GSL_USE_STATIC_LIBS) + SET( _GSL_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) + IF(WIN32) + SET(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) + ELSE(WIN32) + SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) + ENDIF(WIN32) +ENDIF(GSL_USE_STATIC_LIBS) + +FIND_LIBRARY(GSL_LIBRARY NAMES gsl) +FIND_LIBRARY(GSL_CBLAS_LIBRARY NAMES gslcblas) + +IF(GSL_USE_STATIC_LIBS) + SET(CMAKE_FIND_LIBRARY_SUFFIXES ${_GSL_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +ENDIF(GSL_USE_STATIC_LIBS) + +IF(GSL_LIBRARY AND GSL_CBLAS_LIBRARY AND GSL_INCLUDE_DIR AND GSLCBLAS_INCLUDE_DIR) + SET(GSL_LIBRARIES ${GSL_LIBRARY}) + SET(GSLCBLAS_LIBRARIES ${GSL_CBLAS_LIBRARY}) + SET(GSL_FOUND "YES") +ELSE() + SET(GSL_FOUND "NO") +ENDIF() + +IF(GSL_FOUND) + IF(NOT GSL_FIND_QUIETLY) + MESSAGE(STATUS "Found GNU Scientific Library (GSL_LIBRARY = ${GSL_LIBRARY})") + MESSAGE(STATUS "Found GNU Scientific Library: (GSL_CBLAS_LIBRARY = ${GSL_CBLAS_LIBRARY})") + MESSAGE(STATUS "Found GNU Scientific Library: (GSL_INCLUDE_DIR = ${GSL_INCLUDE_DIR})") + ENDIF(NOT GSL_FIND_QUIETLY) +ELSE(GSL_FOUND) + IF(GSL_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find GNU Scientific Library") + ENDIF(GSL_FIND_REQUIRED) +ENDIF(GSL_FOUND) + +MARK_AS_ADVANCED( + GSL_LIBRARY + GSL_CBLAS_LIBRARY + GSL_INCLUDE_DIR +) diff -Nru luminance-hdr-2.5.0/build_files/Modules/Findlcms2.cmake luminance-hdr-2.5.1/build_files/Modules/Findlcms2.cmake --- luminance-hdr-2.5.0/build_files/Modules/Findlcms2.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/Findlcms2.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,27 @@ +FIND_PATH(LCMS2_INCLUDE_DIR lcms2.h + /usr/local/include + /usr/include + /opt/local/include +) + +SET(LCMS2_NAMES ${LCMS2_NAMES} lcms2) +FIND_LIBRARY(LCMS2_LIBRARY NAMES ${LCMS2_NAMES} ) + +# handle the QUIETLY and REQUIRED arguments and set LCMS2_FOUND to TRUE if +# all listed variables are TRUE +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LCMS2 DEFAULT_MSG LCMS2_LIBRARY LCMS2_INCLUDE_DIR) + +IF(LCMS2_FOUND) + SET( LCMS2_LIBRARIES ${LCMS2_LIBRARY} ) + IF(NOT LCMS2_FIND_QUIETLY) + MESSAGE(STATUS "Found LCMS2 (LCMS2_LIBRARIES = ${LCMS2_LIBRARIES})") + MESSAGE(STATUS "Found LCMS2 (LCMS2_INCLUDE_DIR = ${LCMS2_INCLUDE_DIR})") + ENDIF(NOT LCMS2_FIND_QUIETLY) +ELSE(LCMS2_FOUND) + IF(LCMS2_FIND_REQUIRED) + MESSAGE(FATAL_ERROR "Could not find LCMS2") + ENDIF(LCMS2_FIND_REQUIRED) +ENDIF(LCMS2_FOUND) + +MARK_AS_ADVANCED(LCMS2_INCLUDE_DIR LCMS2_LIBRARY) diff -Nru luminance-hdr-2.5.0/build_files/Modules/FindLibRAW.cmake luminance-hdr-2.5.1/build_files/Modules/FindLibRAW.cmake --- luminance-hdr-2.5.0/build_files/Modules/FindLibRAW.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/FindLibRAW.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,61 @@ +# - Find LibRAW library +# Find the native LibRAW includes and library +# This module defines +# LIBRAW_INCLUDE_DIR, where to find libraw.h, etc. +# LIBRAW_LIBRARIES, libraries to link against to use LibRAW. +# LIBRAW_FOUND, If false, do not try to use LibRAW. +# also defined, but not for general use are +# LIBRAW_LIBRARY, where to find the LibRAW library. + +FIND_PATH(LIBRAW_INCLUDE_DIR libraw/libraw.h) + +SET(LIBRAW_NAMES ${LIBRAW_NAMES} raw_r) +FIND_LIBRARY(LIBRAW_LIBRARY NAMES ${LIBRAW_NAMES} ) + +# handle the QUIETLY and REQUIRED arguments and set LIBRAW_FOUND to TRUE if +# all listed variables are TRUE +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBRAW DEFAULT_MSG LIBRAW_LIBRARY LIBRAW_INCLUDE_DIR) + +IF(LIBRAW_FOUND) + SET( LIBRAW_LIBRARIES ${LIBRAW_LIBRARY} ) + MESSAGE(STATUS "Found LibRAW (LIBRAW_INCLUDE_DIR = ${LIBRAW_INCLUDE_DIR})") + MESSAGE(STATUS "Found LibRAW (LIBRAW_LIBRARIES = ${LIBRAW_LIBRARIES})") + IF(UNIX) + IF(APPLE) + EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build_files/platforms/macosx/find_demosaicing_gpl2.sh + ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) + ELSE() + EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build_files/platforms/linux/find_demosaicing_gpl2.sh + ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) + ENDIF() + IF(_output) + MESSAGE(STATUS "Found demosaicing pack GPL2") + ADD_DEFINITIONS("-DDEMOSAICING_GPL2") + ELSE(_output) + MESSAGE(STATUS "Demosaicing pack GPL2 not found") + ENDIF(_output) + + IF(APPLE) + EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build_files/platforms/macosx/find_demosaicing_gpl3.sh + ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) + ELSE() + EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build_files/platforms/linux/find_demosaicing_gpl3.sh + ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) + ENDIF() + IF(_output) + MESSAGE(STATUS "Found demosaicing pack GPL3") + ADD_DEFINITIONS("-DDEMOSAICING_GPL3") + ELSE(_output) + MESSAGE(STATUS "Demosaicing pack GPL3 not found") + ENDIF(_output) + ENDIF(UNIX) +ELSE(LIBRAW_FOUND) + MESSAGE(FATAL_ERROR "Could not find LibRAW") +ENDIF(LIBRAW_FOUND) + +MARK_AS_ADVANCED(LIBRAW_INCLUDE_DIR LIBRAW_LIBRARIES) diff -Nru luminance-hdr-2.5.0/build_files/Modules/FindOpenEXR.cmake luminance-hdr-2.5.1/build_files/Modules/FindOpenEXR.cmake --- luminance-hdr-2.5.0/build_files/Modules/FindOpenEXR.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/FindOpenEXR.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,108 @@ +# - Find OpenEXR library +# Find the native OpenEXR includes and library +# This module defines +# OPENEXR_INCLUDE_DIRS, where to find ImfXdr.h, etc. Set when +# OPENEXR_INCLUDE_DIR is found. +# OPENEXR_LIBRARIES, libraries to link against to use OpenEXR. +# OPENEXR_ROOT_DIR, The base directory to search for OpenEXR. +# This can also be an environment variable. +# OPENEXR_FOUND, If false, do not try to use OpenEXR. +# +# For individual library access these advanced settings are available +# OPENEXR_HALF_LIBRARY, Path to Half library +# OPENEXR_IEX_LIBRARY, Path to Half library +# OPENEXR_ILMIMF_LIBRARY, Path to Ilmimf library +# OPENEXR_ILMTHREAD_LIBRARY, Path to IlmThread library +# OPENEXR_IMATH_LIBRARY, Path to Imath library +# +# also defined, but not for general use are +# OPENEXR_LIBRARY, where to find the OpenEXR library. + +#============================================================================= +# Copyright 2011 Blender Foundation. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= + +# If OPENEXR_ROOT_DIR was defined in the environment, use it. +IF(NOT OPENEXR_ROOT_DIR AND NOT $ENV{OPENEXR_ROOT_DIR} STREQUAL "") + SET(OPENEXR_ROOT_DIR $ENV{OPENEXR_ROOT_DIR}) +ENDIF() + +if (NOT OPENEXR_VERSION) + SET(OPENEXR_VERSION "2.0.1") +endif() +if (${OPENEXR_VERSION} VERSION_LESS "2.1") + SET(_openexr_FIND_COMPONENTS + Half + Iex + IlmImf + IlmThread + Imath + ) +else () + string(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _openexr_libs_ver ${OPENEXR_VERSION}) + SET(_openexr_FIND_COMPONENTS + Half + Iex-${_openexr_libs_ver} + IlmImf-${_openexr_libs_ver} + IlmThread-${_openexr_libs_ver} + Imath-${_openexr_libs_ver} + ) +endif () + +SET(_openexr_SEARCH_DIRS + ${OPENEXR_ROOT_DIR} + /usr/local + /sw # Fink + /opt/local # DarwinPorts + /opt/csw # Blastwave +) + +FIND_PATH(OPENEXR_INCLUDE_DIR + NAMES + OpenEXR/ImfXdr.h + HINTS + ${_openexr_SEARCH_DIRS} + PATH_SUFFIXES + include +) + +SET(_openexr_LIBRARIES) +FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS}) + STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT) + + FIND_LIBRARY(OPENEXR_${UPPERCOMPONENT}_LIBRARY + NAMES + ${COMPONENT} + HINTS + ${_openexr_SEARCH_DIRS} + PATH_SUFFIXES + lib64 lib + ) + LIST(APPEND _openexr_LIBRARIES "${OPENEXR_${UPPERCOMPONENT}_LIBRARY}") +ENDFOREACH() + +# handle the QUIETLY and REQUIRED arguments and set OPENEXR_FOUND to TRUE if +# all listed variables are TRUE +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR DEFAULT_MSG + _openexr_LIBRARIES OPENEXR_INCLUDE_DIR) + +IF(OPENEXR_FOUND) + SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES}) + # Both include paths are needed because of dummy OSL headers mixing #include and #include :( + SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR) + message(STATUS "OpenEXR found") +ENDIF() + +MARK_AS_ADVANCED(OPENEXR_INCLUDE_DIR) +FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS}) + STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT) + MARK_AS_ADVANCED(OPENEXR_${UPPERCOMPONENT}_LIBRARY) +ENDFOREACH() diff -Nru luminance-hdr-2.5.0/build_files/Modules/GetGitRevisionDescription.cmake luminance-hdr-2.5.1/build_files/Modules/GetGitRevisionDescription.cmake --- luminance-hdr-2.5.0/build_files/Modules/GetGitRevisionDescription.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/GetGitRevisionDescription.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,104 @@ +# - Returns a version string from Git +# +# These functions force a re-configure on each git commit so that you can +# trust the values of the variables in your build system. +# +# get_git_head_revision( [ ...]) +# +# Returns the refspec and sha hash of the current head revision +# +# git_describe( [ ...]) +# +# Returns the results of git describe on the source tree, and adjusting +# the output so that it tests false if an error occurs. +# +# git_get_exact_tag( [ ...]) +# +# Returns the results of git describe --exact-match on the source tree, +# and adjusting the output so that it tests false if there was no exact +# matching tag. +# +# Requires CMake 2.6 or newer (uses the 'function' command) +# +# Original Author: +# 2009-2010 Ryan Pavlik +# http://academic.cleardefinition.com +# Iowa State University HCI Graduate Program/VRAC +# +# Copyright Iowa State University 2009-2010. +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or copy at +# http://www.boost.org/LICENSE_1_0.txt) + +if(__get_git_revision_description) + return() +endif() +set(__get_git_revision_description YES) + +# We must run the following at "include" time, not at function call time, +# to find the path to this module rather than the path to a calling list file +get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH) + +function(get_git_head_revision _refspecvar _hashvar) + set(GIT_DIR "${CMAKE_SOURCE_DIR}/.git") + if(NOT EXISTS "${GIT_DIR}") + # not in git + set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE) + set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE) + return() + endif() + set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data") + if(NOT EXISTS "${GIT_DATA}") + file(MAKE_DIRECTORY "${GIT_DATA}") + endif() + set(HEAD_FILE "${GIT_DATA}/HEAD") + configure_file("${GIT_DIR}/HEAD" "${HEAD_FILE}" COPYONLY) + + configure_file("${_gitdescmoddir}/GetGitRevisionDescription.cmake.in" "${GIT_DATA}/grabRef.cmake" @ONLY) + include("${GIT_DATA}/grabRef.cmake") + + set(${_refspecvar} "${HEAD_REF}" PARENT_SCOPE) + set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE) +endfunction() + +function(git_describe _var) + if(NOT GIT_FOUND) + find_package(Git QUIET) + endif() + get_git_head_revision(refspec hash) + if(NOT GIT_FOUND) + set(${_var} "GIT-NOTFOUND" PARENT_SCOPE) + return() + endif() + if(NOT hash) + set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE) + return() + endif() + + # TODO sanitize + #if((${ARGN}" MATCHES "&&") OR + # (ARGN MATCHES "||") OR + # (ARGN MATCHES "\\;")) + # message("Please report the following error to the project!") + # message(FATAL_ERROR "Looks like someone's doing something nefarious with git_describe! Passed arguments ${ARGN}") + #endif() + + #message(STATUS "Arguments to execute_process: ${ARGN}") + + execute_process(COMMAND "${GIT_EXECUTABLE}" describe ${hash} ${ARGN} + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + RESULT_VARIABLE res + OUTPUT_VARIABLE out + ERROR_QUIET + OUTPUT_STRIP_TRAILING_WHITESPACE) + if(NOT res EQUAL 0) + set(out "${out}-${res}-NOTFOUND") + endif() + + set(${_var} "${out}" PARENT_SCOPE) +endfunction() + +function(git_get_exact_tag _var) + git_describe(out --exact-match ${ARGN}) + set(${_var} "${out}" PARENT_SCOPE) +endfunction() diff -Nru luminance-hdr-2.5.0/build_files/Modules/GetGitRevisionDescription.cmake.in luminance-hdr-2.5.1/build_files/Modules/GetGitRevisionDescription.cmake.in --- luminance-hdr-2.5.0/build_files/Modules/GetGitRevisionDescription.cmake.in 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/GetGitRevisionDescription.cmake.in 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,38 @@ +# +# Internal file for GetGitRevisionDescription.cmake +# +# Requires CMake 2.6 or newer (uses the 'function' command) +# +# Original Author: +# 2009-2010 Ryan Pavlik +# http://academic.cleardefinition.com +# Iowa State University HCI Graduate Program/VRAC +# +# Copyright Iowa State University 2009-2010. +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or copy at +# http://www.boost.org/LICENSE_1_0.txt) + +set(HEAD_HASH) + +file(READ "@HEAD_FILE@" HEAD_CONTENTS LIMIT 1024) + +string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS) +if(HEAD_CONTENTS MATCHES "ref") + # named branch + string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}") + if(EXISTS "@GIT_DIR@/${HEAD_REF}") + configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY) + elseif(EXISTS "@GIT_DIR@/logs/${HEAD_REF}") + configure_file("@GIT_DIR@/logs/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY) + set(HEAD_HASH "${HEAD_REF}") + endif() +else() + # detached HEAD + configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY) +endif() + +if(NOT HEAD_HASH) +file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024) +string(STRIP "${HEAD_HASH}" HEAD_HASH) +endif() diff -Nru luminance-hdr-2.5.0/build_files/Modules/GlobalSettings.cmake luminance-hdr-2.5.1/build_files/Modules/GlobalSettings.cmake --- luminance-hdr-2.5.0/build_files/Modules/GlobalSettings.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/GlobalSettings.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ +IF(NOT CMAKE_BUILD_TYPE) +SET(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "" FORCE) +ENDIF() + +# MESSAGE(${CMAKE_BUILD_TYPE}) + +IF(${CMAKE_BUILD_TYPE} STREQUAL "Release" OR ${CMAKE_BUILD_TYPE} STREQUAL "MinSizeRel") +ADD_DEFINITIONS("-DQT_NO_DEBUG_OUTPUT") +ENDIF() + +SET(LUMINANCE_MODULES_CLI ) +SET(LUMINANCE_MODULES_GUI ) + + diff -Nru luminance-hdr-2.5.0/build_files/Modules/Internationalization.cmake luminance-hdr-2.5.1/build_files/Modules/Internationalization.cmake --- luminance-hdr-2.5.0/build_files/Modules/Internationalization.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/Internationalization.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,26 @@ +IF(APPLE) +# ADD_DEFINITIONS(-DI18NDIR=QCoreApplication::applicationDirPath\(\)+"/../Resources/i18n") +SET(I18NDIR QCoreApplication::applicationDirPath\(\)+"/../Resources/i18n") +SET(HELPDIR QCoreApplication::applicationDirPath\(\)+"/../Resources/help") +SET(HDRHTMLDIR QCoreApplication::applicationDirPath\(\)+"/../Resources/hdrhtml") +ELSEIF(UNIX) +# ADD_DEFINITIONS(-DPREFIX=${CMAKE_INSTALL_PREFIX}) +# ADD_DEFINITIONS(-DI18NDIR="${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/i18n") +SET(BASEDIR "\"${CMAKE_INSTALL_PREFIX}\"") +SET(I18NDIR "\"${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/i18n\"") +SET(HELPDIR "\"${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/help\"") +SET(HDRHTMLDIR "\"${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/hdrhtml\"") +ELSEIF(WIN32) +# ADD_DEFINITIONS(-DI18NDIR=QCoreApplication::applicationDirPath\(\)+"/i18n") +SET(I18NDIR QCoreApplication::applicationDirPath\(\)+"/i18n") +SET(HELPDIR QCoreApplication::applicationDirPath\(\)+"/help") +SET(HDRHTMLDIR QCoreApplication::applicationDirPath\(\)+"/hdrhtml") +ENDIF() + +OPTION(UPDATE_TRANSLATIONS "Update source translation translations/*.ts files (WARNING: make clean will delete the source .ts files! Danger!)") +OPTION(LUPDATE_NOOBSOLETE "While doing an lupdate, remove obsolete entries.") + +# Holds al the file that will be translated +SET(FILES_TO_TRANSLATE ) + +# add a function here that creates the translation when necessary diff -Nru luminance-hdr-2.5.0/build_files/Modules/Version.cmake luminance-hdr-2.5.1/build_files/Modules/Version.cmake --- luminance-hdr-2.5.0/build_files/Modules/Version.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Modules/Version.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,18 @@ +SET(LHDR_NAME "Luminance HDR") + +# Numeric version values +SET(LHDR_VERSION_MAJOR "2") +SET(LHDR_VERSION_MINOR "5") +SET(LHDR_VERSION_PATCH "1") +SET(LHDR_VERSION_STR_SUFFIX "") + +SET(LHDR_VERSION "${LHDR_VERSION_MAJOR}.${LHDR_VERSION_MINOR}.${LHDR_VERSION_PATCH}${LHDR_VERSION_STR_SUFFIX}") +SET(LHDR_VENDOR "Luminance HDR Development Team") +SET(LHDR_COPYRIGHT_YEAR "2006-2017") + +SET(LHDR_OSX_EXECUTABLE_NAME "${LHDR_NAME} ${LHDR_VERSION}") +SET(LHDR_OSX_EXECUTABLE_TARGET "Luminance_HDR_${LHDR_VERSION}") + +SET(LHDR_DOMAIN_FIRST "luminance-hdr") +SET(LHDR_DOMAIN_SECOND "com") +SET(LHDR_DOMAIN "${LHDR_DOMAIN_FIRST}.${LHDR_DOMAIN_SECOND}") diff -Nru luminance-hdr-2.5.0/build_files/PackagingApple.cmake luminance-hdr-2.5.1/build_files/PackagingApple.cmake --- luminance-hdr-2.5.0/build_files/PackagingApple.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/PackagingApple.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,68 @@ +set(CPACK_PACKAGE_CONTACT "Davide Anastasia ") +# set(CPACK_GENERATOR "DragNDrop") +# set(CPACK_DMG_FORMAT "UDBZ") +# set(CPACK_DMG_VOLUME_NAME "${LHDR_NAME} ${LHDR_VERSION}") +# set(CPACK_SYSTEM_NAME "OSX") +# set(CPACK_PACKAGE_FILE_NAME "${LHDR_NAME}-${LHDR_VERSION}") +# set(CPACK_PACKAGE_ICON "${ICONS_DIR}/DMG.icns") +# set(CPACK_DMG_DS_STORE "${ICONS_DIR}/DMGDSStore") +# set(CPACK_DMG_BACKGROUND_IMAGE "${ICONS_DIR}/DMGBackground.png") + +SET(plugin_dest_dir ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/PlugIns) +SET(qtconf_dest_dir ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) +SET(APPS "\${CMAKE_INSTALL_PREFIX}/${LHDR_OSX_EXECUTABLE_NAME}.app") + +#-------------------------------------------------------------------------------- +# Install needed Qt plugins by copying directories from the qt installation +# One can cull what gets copied by using 'REGEX "..." EXCLUDE' +#install(DIRECTORY "${QT_PLUGINS_DIR}/sqldrivers" +# DESTINATION ${plugin_dest_dir} COMPONENT Runtime) +#install(FILES ${LIBS} +# DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/MacOS) + +# install align_image_stack +install(FILES ${CMAKE_SOURCE_DIR}/build_files/platforms/macosx/align_image_stack + DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/MacOS) + +# install help +install(DIRECTORY ${CMAKE_SOURCE_DIR}/help + DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) +#install(DIRECTORY ${CMAKE_SOURCE_DIR}/html +# DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) + +#install icons theme +install(DIRECTORY ${CMAKE_SOURCE_DIR}/icons + DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) + +#install HdrHTML stuff +install(DIRECTORY ${CMAKE_SOURCE_DIR}/hdrhtml + DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) + +# install a qt.conf file +install(FILES ${CMAKE_SOURCE_DIR}/build_files/platforms/macosx/qt.conf + DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources) + +# install README and other files +install(FILES + ${CMAKE_SOURCE_DIR}/AUTHORS + ${CMAKE_SOURCE_DIR}/README.md + ${CMAKE_SOURCE_DIR}/LICENSE + ${CMAKE_SOURCE_DIR}/Changelog +# ${CMAKE_SOURCE_DIR}/BUGS +# ${CMAKE_SOURCE_DIR}/INSTALL +# ${CMAKE_SOURCE_DIR}/TODO + DESTINATION ${LHDR_OSX_EXECUTABLE_NAME}.app) + +# directories to look for dependencies +set(DIRS ${QT_LIBRARY_DIRS}) + +#INSTALL(CODE " +# file(GLOB_RECURSE QTPLUGINS +# \"\${CMAKE_INSTALL_PREFIX}/${plugin_dest_dir}/*${CMAKE_SHARED_LIBRARY_SUFFIX}\") +# include(BundleUtilities) +# fixup_bundle(\"${APPS}\" \"\${QTPLUGINS}\" \"${DIRS}\") +# " COMPONENT Runtime) + +# create drag and drop installer +#set(CPACK_BINARY_DRAGNDROP ON) +#include(CPack) diff -Nru luminance-hdr-2.5.0/build_files/Packaging.cmake luminance-hdr-2.5.1/build_files/Packaging.cmake --- luminance-hdr-2.5.0/build_files/Packaging.cmake 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/Packaging.cmake 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,18 @@ +MESSAGE(STATUS "Installation of ${LHDR_NAME} ${LHDR_VERSION} in ${CMAKE_INSTALL_PREFIX}") + +# Shared CPack Variables +set(CPACK_PACKAGE_NAME "${LHDR_NAME}") +set(CPACK_PACKAGE_DESCRIPTION "${LHDR_NAME} ${LHDR_VERSION}") +set(CPACK_PACKAGE_VERSION_MAJOR "${LHDR_VERSION_MAJOR}") +set(CPACK_PACKAGE_VERSION_MINOR "${LHDR_VERSION_MINOR}") +set(CPACK_PACKAGE_VERSION_PATCH "${LHDR_VERSION_PATCH}") +set(CPACK_PACKAGE_VERSION "${LHDR_VERSION}") +set(CPACK_PACKAGE_VENDOR "${LHDR_VENDOR}") + +set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE") +set(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README.md") +set(CPACK_RESOURCE_FILE_WELCOME "${CMAKE_SOURCE_DIR}/README.md") + +if(APPLE) +include(${CMAKE_SOURCE_DIR}/build_files/PackagingApple.cmake) +endif() diff -Nru luminance-hdr-2.5.0/build_files/platforms/linux/find_demosaicing_gpl2.sh luminance-hdr-2.5.1/build_files/platforms/linux/find_demosaicing_gpl2.sh --- luminance-hdr-2.5.0/build_files/platforms/linux/find_demosaicing_gpl2.sh 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/linux/find_demosaicing_gpl2.sh 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,4 @@ +#!/bin/bash + +readelf -a $1 | grep lmms + diff -Nru luminance-hdr-2.5.0/build_files/platforms/linux/find_demosaicing_gpl3.sh luminance-hdr-2.5.1/build_files/platforms/linux/find_demosaicing_gpl3.sh --- luminance-hdr-2.5.0/build_files/platforms/linux/find_demosaicing_gpl3.sh 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/linux/find_demosaicing_gpl3.sh 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,4 @@ +#!/bin/bash + +readelf -a $1 | grep amaze + diff -Nru luminance-hdr-2.5.0/build_files/platforms/linux/sanitize_translations.sh luminance-hdr-2.5.1/build_files/platforms/linux/sanitize_translations.sh --- luminance-hdr-2.5.0/build_files/platforms/linux/sanitize_translations.sh 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/linux/sanitize_translations.sh 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,4 @@ +#!/bin/bash +echo `pwd` +sed -i '/\-I\/usr\/include/d' CMakeFiles/lang_* +sed -i '/\-I\/usr\/include/d' CMakeFiles/source_lst_file diff -Nru luminance-hdr-2.5.0/build_files/platforms/msvc/build.cmd luminance-hdr-2.5.1/build_files/platforms/msvc/build.cmd --- luminance-hdr-2.5.0/build_files/platforms/msvc/build.cmd 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/msvc/build.cmd 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,851 @@ +@echo off +SETLOCAL + +REM SANITY CHECKS + +where /Q cmake +IF %ERRORLEVEL% NEQ 0 ( + echo Error: "cmake" command not in the PATH. + echo You must have CMake installed and added to your PATH, aborting! + goto error_end +) + +where /Q svn +IF %ERRORLEVEL% NEQ 0 ( + echo Error: "svn" command not in the PATH. + echo You must have SVN installed and added to your PATH, aborting! + goto error_end +) + +REM where /Q git +REM IF %ERRORLEVEL% NEQ 0 ( +REM echo Error: "git" command not in the PATH. +REM echo You must have GIT installed and added to your PATH, aborting! +REM goto error_end +REM ) + +call setenv.cmd + +IF NOT EXIST %CYGWIN_DIR%\bin\nasm.exe GOTO cygwin_error +IF NOT EXIST %CYGWIN_DIR%\bin\ssh.exe GOTO cygwin_error +IF NOT EXIST %CYGWIN_DIR%\bin\wget.exe GOTO cygwin_error + +IF EXIST ..\msvc ( + echo. + echo.ERROR: This file should NOT be executed within the LuminanceHDR source directory, + echo. but in a new empty folder! + echo. + goto error_end +) + +REM End SANITY CHECKS + +REM Start Lib Versions + +REM http://dev.exiv2.org/projects/exiv2/repository/ +SET EXIV2_COMMIT=4753 + +REM http://github.com/libjpeg-turbo/libjpeg-turbo +SET LIBJPEG_COMMIT_LONG=da2a27ef056a0179cbd80f9146e58b89403d9933 + +REM https://github.com/madler/zlib/commits +SET ZLIB_COMMIT_LONG=cacf7f1d4e3d44d871b605da3b647f07d718623f + +REM https://github.com/openexr/openexr +SET OPENEXR_COMMIT_LONG=20d043d017d4b752356bb76946ffdffaa9c15c72 +SET OPENEXR_CMAKE_VERSION=2.2 + +REM http://www.boost.org/ +SET BOOST_MINOR=63 + +REM ftp://ftp.fftw.org/pub/fftw/ +SET FFTW_VER=3.3.5 + +REM https://github.com/mm2/Little-CMS +SET LCMS_COMMIT_LONG=f9d75ccef0b54c9f4167d95088d4727985133c52 + +REM https://github.com/ampl/gsl +SET GSL_COMMIT_LONG=48e0194da0d8921aff57c293b4f5083877d3f55b + +REM https://github.com/LibRaw/LibRaw +SET LIBRAW_COMMIT_LONG=d7c3d2cb460be10a3ea7b32e9443a83c243b2251 +SET LIBRAW_DEMOS2_COMMIT_LONG=194f592e205990ea8fce72b6c571c14350aca716 +SET LIBRAW_DEMOS3_COMMIT_LONG=f0895891fdaa775255af02275fce426a5bf5c9fc + +REM ftp://sourceware.org/pub/pthreads-win32/ +SET PTHREADS_DIR=prebuilt-dll-2-9-1-release + +REM http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c +SET CFITSIO_VER=3360 +REM broken 3370 + +REM Internal version number for http://qtpfsgui.sourceforge.net/win/hugin-* +SET HUGIN_VER=201600 + +REM http://download.osgeo.org/libtiff/ +SET TIFF_VER=4.0.7 + +REM End Lib Versions + +IF EXIST .settings\vsexpress.txt ( + SET VSCOMMAND=vcexpress +) ELSE IF EXIST .settings\devent.txt ( + SET VSCOMMAND=devenv +) ELSE ( + vcexpress XXXXXXXXXXXXX 2>NUL >NUL + IF ERRORLEVEL 1 ( + devenv /? 2>NUL >NUL + IF ERRORLEVEL 1 ( + wdexpress /? 2>NUL >NUL + IF ERRORLEVEL 1 ( + echo. + echo.ERROR: This file must be run inside a VS command prompt! + echo. + goto error_end + ) ELSE ( + SET VSCOMMAND=msbuild + ) + ) ELSE ( + SET VSCOMMAND=devenv + ) + ) ELSE ( + SET VSCOMMAND=vcexpress + ) + mkdir .settings 2>NUL >NUL + echo x>.settings\%VSCOMMAND%.txt +) + +ml64.exe > NUL +IF ERRORLEVEL 1 ( + set Platform=Win32 + set RawPlatform=x86 + set CpuPlatform=ia32 +) ELSE ( + set Platform=x64 + set RawPlatform=x64 + set CpuPlatform=intel64 +) + +SET VISUAL_STUDIO_VC_REDIST=%VCINSTALLDIR%\redist\%RawPlatform% + +IF DEFINED VS140COMNTOOLS ( + REM Visual Studio 2015 + set VS_SHORT=vc14 + set VS_CMAKE=Visual Studio 14 + set VS_PROG_FILES=Microsoft Visual Studio 14.0 + set VS_LCMS=VC2015 + +) ELSE IF DEFINED VS120COMNTOOLS ( + REM Visual Studio 2013 + set VS_SHORT=vc12 + set VS_CMAKE=Visual Studio 12 + set VS_PROG_FILES=Microsoft Visual Studio 12.0 + set VS_LCMS=VC2013 + +) ELSE IF DEFINED VS110COMNTOOLS ( + REM Visual Studio 2012 + set VS_SHORT=vc11 + set VS_CMAKE=Visual Studio 11 + set VS_PROG_FILES=Microsoft Visual Studio 11.0 + set VS_LCMS=VC2012 + +) ELSE IF DEFINED VS100COMNTOOLS ( + REM Visual Studio 2010 + set VS_SHORT=vc10 + set VS_CMAKE=Visual Studio 10 + set VS_PROG_FILES=Microsoft Visual Studio 10.0 + set VS_LCMS=VC2010 + +) ELSE ( + REM Visual Studio 2008 + set VS_SHORT=vc9 + set VS_CMAKE=Visual Studio 9 2008 + set VS_PROG_FILES=Microsoft Visual Studio 9.0 + set VS_LCMS=VC2008 +) +IF %Platform% EQU x64 ( + set VS_CMAKE=%VS_CMAKE% Win64 +) + +SET INSTALL_DIR=dist +IF NOT EXIST %INSTALL_DIR% ( + mkdir %INSTALL_DIR% +) + +IF NOT DEFINED Configuration ( + set Configuration=Release +) +IF NOT DEFINED ConfigurationLuminance ( + set ConfigurationLuminance=RelWithDebInfo +) + +cls +echo. +echo.--- %VS_CMAKE% --- +echo.Configuration = %Configuration% +echo.ConfigurationLuminance = %ConfigurationLuminance% +echo.Platform = %Platform% (%RawPlatform%) +echo. + +IF NOT EXIST %TEMP_DIR% ( + mkdir %TEMP_DIR% +) + + +IF NOT EXIST vcDlls ( + mkdir vcDlls + robocopy "%vcinstalldir%redist\%RawPlatform%" vcDlls /MIR >nul +) + +IF NOT EXIST vcDlls\selected ( + mkdir vcDlls\selected + + copy vcDlls\**\vcomp* vcDlls\selected + copy vcDlls\**\msv* vcDlls\selected +) + +IF NOT EXIST %TEMP_DIR%\hugin-%HUGIN_VER%-%RawPlatform%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/hugin-%HUGIN_VER%-%RawPlatform%.zip ^ + qtpfsgui.sourceforge.net/win/hugin-%HUGIN_VER%-%RawPlatform%.zip +) +IF NOT EXIST hugin-%HUGIN_VER%-%RawPlatform% ( + mkdir hugin-%HUGIN_VER%-%RawPlatform% + pushd hugin-%HUGIN_VER%-%RawPlatform% + cmake -E tar x ..\%TEMP_DIR%\hugin-%HUGIN_VER%-%RawPlatform%.zip + popd +) + +SET ZLIB_COMMIT=%ZLIB_COMMIT_LONG:~0,7% +IF NOT EXIST %TEMP_DIR%\zlib-%ZLIB_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/zlib-%ZLIB_COMMIT%.zip ^ + https://github.com/madler/zlib/archive/%ZLIB_COMMIT_LONG%.zip +) + +IF NOT EXIST zlib-%ZLIB_COMMIT% ( + cmake -E tar x %TEMP_DIR%/zlib-%ZLIB_COMMIT%.zip + move zlib-* zlib-%ZLIB_COMMIT% +) + +IF NOT EXIST zlib-%ZLIB_COMMIT%.build ( + mkdir zlib-%ZLIB_COMMIT%.build + + pushd zlib-%ZLIB_COMMIT%.build + cmake -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% ..\zlib-%ZLIB_COMMIT% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + + popd +) + + +IF NOT EXIST %TEMP_DIR%\lpng170b75.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/lpng170b75.zip ^ + https://sourceforge.net/projects/libpng/files/libpng17/1.7.0beta87/lp170b87.zip/download + IF errorlevel 1 goto error_end +) +IF NOT EXIST lp170b75 ( + cmake -E tar x %TEMP_DIR%/lpng170b75.zip + pushd lp170b75 + cmake -G "%VS_CMAKE%" . -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) + +IF NOT EXIST %TEMP_DIR%\expat-2.1.0.tar ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/expat-2.1.0.tar.gz ^ + http://sourceforge.net/projects/expat/files/expat/2.1.0/expat-2.1.0.tar.gz/download + cmake -E tar x %TEMP_DIR%/expat-2.1.0.tar.gz +) +IF NOT EXIST expat-2.1.0 ( + cmake -E tar x %TEMP_DIR%/expat-2.1.0.tar +) + +IF NOT EXIST expat-2.1.0.build ( + mkdir expat-2.1.0.build + + pushd expat-2.1.0.build + cmake -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% ..\expat-2.1.0 + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) + +IF NOT EXIST exiv2-%EXIV2_COMMIT% ( + svn co -r %EXIV2_COMMIT% svn://dev.exiv2.org/svn/trunk exiv2-%EXIV2_COMMIT% +) + +IF NOT EXIST exiv2-%EXIV2_COMMIT%.build ( + mkdir exiv2-%EXIV2_COMMIT%.build + + pushd exiv2-%EXIV2_COMMIT% + SET EXIV2_CMAKE= + cmake -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% ^ + -DEXIV2_ENABLE_BUILD_SAMPLES=OFF -DEXIV2_ENABLE_CURL=OFF -DEXIV2_ENABLE_SSH=OFF + + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) + + +SET LIBJPEG_COMMIT=%LIBJPEG_COMMIT_LONG:~0,7% +IF NOT EXIST %TEMP_DIR%\libjpeg-%LIBJPEG_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/libjpeg-%LIBJPEG_COMMIT%.zip ^ + https://github.com/libjpeg-turbo/libjpeg-turbo/archive/%LIBJPEG_COMMIT_LONG%.zip +) + +IF NOT EXIST libjpeg-turbo-%LIBJPEG_COMMIT% ( + cmake -E tar x %TEMP_DIR%/libjpeg-%LIBJPEG_COMMIT%.zip + move libjpeg-* libjpeg-turbo-%LIBJPEG_COMMIT% +) + + +IF NOT EXIST libjpeg-turbo-%LIBJPEG_COMMIT%.build ( + mkdir libjpeg-turbo-%LIBJPEG_COMMIT%.build + + + pushd libjpeg-turbo-%LIBJPEG_COMMIT%.build + cmake -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% ^ + -DCMAKE_BUILD_TYPE=%Configuration% ^ + -DNASM="%CYGWIN_DIR%\bin\nasm.exe" ^ + -DWITH_JPEG8=TRUE ..\libjpeg-turbo-%LIBJPEG_COMMIT% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + copy jconfig.h ..\libjpeg-turbo-%LIBJPEG_COMMIT% + popd +) + +SET LCMS_COMMIT=%LCMS_COMMIT_LONG:~0,7% +IF NOT EXIST %TEMP_DIR%\lcms2-%LCMS_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/lcms2-%LCMS_COMMIT%.zip ^ + https://github.com/mm2/Little-CMS/archive/%LCMS_COMMIT_LONG%.zip +) + + +IF NOT EXIST lcms2-%LCMS_COMMIT% ( + cmake -E tar x %TEMP_DIR%/lcms2-%LCMS_COMMIT%.zip + move Little-CMS-* lcms2-%LCMS_COMMIT% + + pushd lcms2-%LCMS_COMMIT% + REM %VSCOMMAND% Projects\%VS_LCMS%\lcms2.sln /Upgrade + REM devenv Projects\VC2013\lcms2.sln /build Release /project lcms2_DLL + %VSCOMMAND% Projects\%VS_LCMS%\lcms2.sln /Rebuild "%Configuration%|%Platform%" /project lcms2_DLL + IF errorlevel 1 goto error_end + popd +) + +IF NOT EXIST %TEMP_DIR%\tiff-%TIFF_VER%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/tiff-%TIFF_VER%.zip http://download.osgeo.org/libtiff/tiff-%TIFF_VER%.zip +) + + +IF NOT EXIST tiff-%TIFF_VER% ( + cmake -E tar x %TEMP_DIR%/tiff-%TIFF_VER%.zip + + pushd tiff-%TIFF_VER% + cmake -G "%VS_CMAKE%" -DCMAKE_INSTALL_PREFIX=..\%INSTALL_DIR% -DCMAKE_BUILD_TYPE=%Configuration% . + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) + +SET LIBRAW_COMMIT=%LIBRAW_COMMIT_LONG:~0,7% +SET LIBRAW_DEMOS2_COMMIT=%LIBRAW_DEMOS2_COMMIT_LONG:~0,7% +SET LIBRAW_DEMOS3_COMMIT=%LIBRAW_DEMOS3_COMMIT_LONG:~0,7% + +IF NOT EXIST %TEMP_DIR%\LibRaw-%LIBRAW_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/LibRaw-%LIBRAW_COMMIT%.zip ^ + https://github.com/LibRaw/LibRaw/archive/%LIBRAW_COMMIT_LONG%.zip +) + +IF NOT EXIST %TEMP_DIR%\LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%.zip ^ + https://github.com/LibRaw/LibRaw-demosaic-pack-GPL2/archive/%LIBRAW_DEMOS2_COMMIT_LONG%.zip +) + +IF NOT EXIST LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT% ( + cmake -E tar x %TEMP_DIR%/LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%.zip + move LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%* LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT% +) + +IF NOT EXIST %TEMP_DIR%\LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%.zip ^ + https://github.com/LibRaw/LibRaw-demosaic-pack-GPL3/archive/%LIBRAW_DEMOS3_COMMIT_LONG%.zip +) + +IF NOT EXIST LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT% ( + cmake -E tar x %TEMP_DIR%/LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%.zip + move LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%* LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT% +) + +IF NOT EXIST LibRaw-%LIBRAW_COMMIT% ( + cmake -E tar x %TEMP_DIR%/LibRaw-%LIBRAW_COMMIT%.zip + move LibRaw-%LIBRAW_COMMIT%* LibRaw-%LIBRAW_COMMIT% + + + pushd LibRaw-%LIBRAW_COMMIT% + + REM /openmp + echo.COPT_OPT="/arch:SSE2"> qtpfsgui_commands.in + echo.CFLAGS_DP2=/I..\LibRaw-demosaic-pack-GPL2-%LIBRAW_DEMOS2_COMMIT%>> qtpfsgui_commands.in + echo.CFLAGSG2=/DLIBRAW_DEMOSAIC_PACK_GPL2>> qtpfsgui_commands.in + echo.CFLAGS_DP3=/I..\LibRaw-demosaic-pack-GPL3-%LIBRAW_DEMOS3_COMMIT%>> qtpfsgui_commands.in + echo.CFLAGSG3=/DLIBRAW_DEMOSAIC_PACK_GPL3>> qtpfsgui_commands.in + echo.LCMS_DEF="/DUSE_LCMS2 /DCMS_DLL /I..\lcms2-%LCMS_COMMIT%\include">> qtpfsgui_commands.in + echo.LCMS_LIB="..\lcms2-%LCMS_COMMIT%\bin\lcms2.lib">> qtpfsgui_commands.in + echo.JPEG_DEF="/DUSE_JPEG8 /DUSE_JPEG /I..\libjpeg-turbo-%LIBJPEG_COMMIT%">> qtpfsgui_commands.in + echo.JPEG_LIB="..\libjpeg-turbo-%LIBJPEG_COMMIT%.build\sharedlib\%Configuration%\jpeg.lib">> qtpfsgui_commands.in + + nmake /f Makefile.msvc @qtpfsgui_commands.in clean > nul + nmake /f Makefile.msvc @qtpfsgui_commands.in bin\libraw.dll + popd +) + +SET PTHREADS_CURRENT_DIR=pthreads_%PTHREADS_DIR%_%RawPlatform% +IF NOT EXIST %TEMP_DIR%\%PTHREADS_CURRENT_DIR% ( + mkdir %TEMP_DIR%\%PTHREADS_CURRENT_DIR% + pushd %TEMP_DIR%\%PTHREADS_CURRENT_DIR% + %CYGWIN_DIR%\bin\wget.exe -O pthread.h --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/include/pthread.h + %CYGWIN_DIR%\bin\wget.exe -O sched.h --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/include/sched.h + %CYGWIN_DIR%\bin\wget.exe -O semaphore.h --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/include/semaphore.h + %CYGWIN_DIR%\bin\wget.exe -O pthreadVC2.dll --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/dll/%RawPlatform%/pthreadVC2.dll + %CYGWIN_DIR%\bin\wget.exe -O pthreadVC2.lib --retry-connrefused --tries=5 ftp://sourceware.org/pub/pthreads-win32/%PTHREADS_DIR%/lib/%RawPlatform%/pthreadVC2.lib + popd +) +IF NOT EXIST %PTHREADS_CURRENT_DIR% ( + mkdir %PTHREADS_CURRENT_DIR% + robocopy %TEMP_DIR%\%PTHREADS_CURRENT_DIR% %PTHREADS_CURRENT_DIR% >nul +) + +IF NOT EXIST %TEMP_DIR%\cfit%CFITSIO_VER%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/cfit%CFITSIO_VER%.zip ^ + ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfit%CFITSIO_VER%.zip +) + +IF NOT EXIST cfit%CFITSIO_VER% ( + mkdir cfit%CFITSIO_VER% + pushd cfit%CFITSIO_VER% + cmake -E tar x ../%TEMP_DIR%/cfit%CFITSIO_VER%.zip + popd +) + +IF NOT EXIST cfit%CFITSIO_VER%.build ( + mkdir cfit%CFITSIO_VER%.build + pushd cfit%CFITSIO_VER%.build + + cmake -G "%VS_CMAKE%" ..\cfit%CFITSIO_VER% -DUSE_PTHREADS=0 ^ + -DCMAKE_INCLUDE_PATH=..\%PTHREADS_CURRENT_DIR% ^ + -DCMAKE_LIBRARY_PATH=..\%PTHREADS_CURRENT_DIR% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target cfitsio + IF errorlevel 1 goto error_end + popd +) + + +pushd cfit%CFITSIO_VER% +SET CFITSIO=%CD% +popd +pushd cfit%CFITSIO_VER%.build\%Configuration% +SET CFITSIO=%CFITSIO%;%CD% +popd + +REM IF NOT EXIST %TEMP_DIR%\CCfits-2.4.tar ( +REM %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/CCfits-2.4.tar.gz ^ +REM http://heasarc.gsfc.nasa.gov/docs/software/fitsio/CCfits/CCfits-2.4.tar.gz +REM %CYGWIN_DIR%\bin\cmake -E tar.exe -d %TEMP_DIR%/CCfits-2.4.tar.gz +REM %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/CCfits2.4patch.zip ^ +REM http://qtpfsgui.sourceforge.net/win/CCfits2.4patch.zip +REM ) +REM IF NOT EXIST CCfits2.4 ( +REM cmake -E tar %TEMP_DIR%/CCfits-2.4.tar +REM ren CCfits CCfits2.4 +REM cmake -E tar CCfits2.4 %TEMP_DIR%/CCfits2.4patch.zip +REM ) +REM IF NOT EXIST CCfits2.4.build ( +REM mkdir CCfits2.4.build +REM +REM pushd CCfits2.4.build +REM cmake -G "%VS_CMAKE%" ..\CCfits2.4 -DCMAKE_INCLUDE_PATH=..\cfit%CFITSIO_VER% ^ +REM -DCMAKE_LIBRARY_PATH=..\cfit%CFITSIO_VER%.build\%Configuration% +REM IF errorlevel 1 goto error_end +REM cmake --build . --config %Configuration% --target CCfits +REM IF errorlevel 1 goto error_end +REM popd +REM ) +REM pushd CCfits2.4.build\%Configuration% +REM SET CCFITS_ROOT_DIR=%CD% +REM popd + +SET GSL_COMMIT=%GSL_COMMIT_LONG:~0,7% +IF NOT EXIST %TEMP_DIR%\gsl-ampl-%GSL_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/gsl-ampl-%GSL_COMMIT%.zip ^ + https://github.com/ampl/gsl/archive/%GSL_COMMIT_LONG%.zip +) + +IF NOT EXIST gsl-1.16 ( + cmake -E tar x %TEMP_DIR%/gsl-ampl-%GSL_COMMIT%.zip + move gsl-* gsl-1.16 +) +IF NOT EXIST gsl-1.16.build ( + mkdir gsl-1.16.build + pushd gsl-1.16.build + + cmake -G "%VS_CMAKE%" -DCMAKE_BUILD_TYPE=%Configuration% -DCMAKE_INSTALL_PREFIX=..\dist ..\gsl-1.16 + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) + + +SET OPENEXR_COMMIT=%OPENEXR_COMMIT_LONG:~0,7% +IF NOT EXIST %TEMP_DIR%\OpenEXR-dk-%OPENEXR_COMMIT%.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/OpenEXR-dk-%OPENEXR_COMMIT%.zip ^ + https://github.com/openexr/openexr/archive/%OPENEXR_COMMIT_LONG%.zip +) + +IF NOT EXIST OpenEXR-dk-%OPENEXR_COMMIT% ( + cmake -E tar x %TEMP_DIR%/OpenEXR-dk-%OPENEXR_COMMIT%.zip + move openexr-* OpenEXR-dk-%OPENEXR_COMMIT% +) +IF NOT EXIST OpenEXR-dk-%OPENEXR_COMMIT%\IlmBase.build ( + mkdir OpenEXR-dk-%OPENEXR_COMMIT%\IlmBase.build + pushd OpenEXR-dk-%OPENEXR_COMMIT%\IlmBase.build + + cmake -G "%VS_CMAKE%" -DCMAKE_BUILD_TYPE=%Configuration% ^ + -DCMAKE_INSTALL_PREFIX=..\..\dist -DBUILD_SHARED_LIBS=OFF ../IlmBase + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) +IF NOT EXIST OpenEXR-dk-%OPENEXR_COMMIT%\OpenEXR.build ( + mkdir OpenEXR-dk-%OPENEXR_COMMIT%\OpenEXR.build + pushd OpenEXR-dk-%OPENEXR_COMMIT%\OpenEXR.build + cmake -G "%VS_CMAKE%" -DCMAKE_BUILD_TYPE=%Configuration% ^ + -DILMBASE_PACKAGE_PREFIX=%CD%\dist -DBUILD_SHARED_LIBS=OFF ^ + -DCMAKE_INSTALL_PREFIX=..\..\dist ^ + ../OpenEXR + IF errorlevel 1 goto error_end + cmake --build . --config %Configuration% --target install + IF errorlevel 1 goto error_end + popd +) + +IF %Platform% EQU Win32 ( + IF NOT EXIST %TEMP_DIR%\fftw-%FFTW_VER%-dll32.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/fftw-%FFTW_VER%-dll32.zip ^ + ftp://ftp.fftw.org/pub/fftw/fftw-%FFTW_VER%-dll32.zip + ) +) ELSE ( + IF NOT EXIST %TEMP_DIR%\fftw-%FFTW_VER%-dll64.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/fftw-%FFTW_VER%-dll64.zip ^ + ftp://ftp.fftw.org/pub/fftw/fftw-%FFTW_VER%-dll64.zip + ) +) + +IF NOT EXIST fftw-%FFTW_VER%-dll ( + mkdir fftw-%FFTW_VER%-dll + pushd fftw-%FFTW_VER%-dll + + IF %Platform% EQU Win32 ( + cmake -E tar x ../%TEMP_DIR%/fftw-%FFTW_VER%-dll32.zip + ) ELSE ( + cmake -E tar x ../%TEMP_DIR%/fftw-%FFTW_VER%-dll64.zip + ) + + lib /def:libfftw3-3.def /machine:%RawPlatform% + lib /def:libfftw3f-3.def /machine:%RawPlatform% + lib /def:libfftw3l-3.def /machine:%RawPlatform% + popd +) + +REM IF NOT EXIST %TEMP_DIR%\tbb40_20120613oss_win.zip ( +REM %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/tbb40_20120613oss_win.zip ^ +REM "http://threadingbuildingblocks.org/uploads/77/187/4.0 update 5/tbb40_20120613oss_win.zip" +REM ) +REM +REM IF NOT EXIST tbb40_20120613oss ( +REM cmake -E tar %TEMP_DIR%/tbb40_20120613oss_win.zip +REM REM Everthing is already compiled, nothing to do! +REM ) + +REM IF NOT EXIST %TEMP_DIR%\gtest-1.6.0.zip ( +SET GTEST_DIR=gtest-r680 +IF NOT EXIST %GTEST_DIR% ( + REM %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/gtest-1.6.0.zip http://googletest.googlecode.com/files/gtest-1.6.0.zip + svn co -r 680 http://googletest.googlecode.com/svn/trunk/ %GTEST_DIR% + + pushd %GTEST_DIR% + cmake -G "%VS_CMAKE%" . -DBUILD_SHARED_LIBS=1 + cmake --build . --config %Configuration% + REN Release lib + popd +) +SET GTEST_ROOT=%CD%\%GTEST_DIR% + +REM IF NOT EXIST %GTEST_DIR%.build ( +REM mkdir %GTEST_DIR%.build +REM pushd %GTEST_DIR%.build +REM cmake -G "%VS_CMAKE%" ..\%GTEST_DIR% -DBUILD_SHARED_LIBS=1 +REM %VSCOMMAND% gtest.sln /t:Build /projectconfig=%Configuration%;Platform=%Platform% +REM popd +REM ) +REM IF NOT EXIST gtest-1.6.0 ( +REM cmake -E tar %TEMP_DIR%/gtest-1.6.0.zip +REM ) + +IF NOT DEFINED L_BOOST_DIR ( + set L_BOOST_DIR=. +) + +IF NOT EXIST %TEMP_DIR%\boost_1_%BOOST_MINOR%_0.zip ( + %CYGWIN_DIR%\bin\wget.exe -O %TEMP_DIR%/boost_1_%BOOST_MINOR%_0.zip ^ + http://sourceforge.net/projects/boost/files/boost/1.%BOOST_MINOR%.0/boost_1_%BOOST_MINOR%_0.zip/download +) + +IF NOT EXIST %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 ( + echo.Extracting boost. Be patient! + + pushd %L_BOOST_DIR% + cmake -E tar x %TEMP_DIR%/boost_1_%BOOST_MINOR%_0.zip + popd + + + pushd %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 + bootstrap.bat + popd + + pushd %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 + IF %Platform% EQU Win32 ( + IF %Configuration% EQU Release ( + cmd.exe /C b2.exe toolset=msvc variant=release + ) ELSE ( + cmd.exe /C b2.exe toolset=msvc variant=debug + ) + ) ELSE ( + IF %Configuration% EQU Release ( + cmd.exe /C b2.exe toolset=msvc variant=release address-model=64 + ) ELSE ( + cmd.exe /C b2.exe toolset=msvc variant=debug address-model=64 + ) + ) + popd +) + +REM Set Boost-directory as ENV variable (needed for CMake) +pushd %L_BOOST_DIR%\boost_1_%BOOST_MINOR%_0 +REM SET Boost_DIR=%CD% +REM SET BOOST_ROOT=%CD% +popd + + +IF NOT EXIST LuminanceHdrStuff ( + mkdir LuminanceHdrStuff +) +IF NOT EXIST LuminanceHdrStuff\qtpfsgui ( + pushd LuminanceHdrStuff + git clone https://github.com/LuminanceHDR/LuminanceHDR.git qtpfsgui + popd +) ELSE ( + pushd LuminanceHdrStuff\qtpfsgui + IF %UPDATE_REPO_LUMINANCE% EQU 1 ( + git pull + ) + popd +) + + +IF NOT EXIST LuminanceHdrStuff\DEPs ( + pushd LuminanceHdrStuff + mkdir DEPs + cd DEPs + mkdir include + mkdir lib + mkdir bin + popd + + for %%v in ("libpng", "lcms2", "libraw", "fftw3", "gsl", "CCfits") do ( + mkdir LuminanceHdrStuff\DEPs\include\%%v + mkdir LuminanceHdrStuff\DEPs\lib\%%v + mkdir LuminanceHdrStuff\DEPs\bin\%%v + ) + + mkdir LuminanceHdrStuff\DEPs\include\libraw\libraw + + REM mkdir LuminanceHdrStuff\DEPs\include\gsl\gsl + REM copy gsl-1.15\gsl\*.h LuminanceHdrStuff\DEPs\include\gsl\gsl + REM copy gsl-1.15\build.vc10\lib\%Platform%\%Configuration%\*.lib LuminanceHdrStuff\DEPs\lib\gsl + REM copy gsl-1.15\build.vc10\dll\*.dll LuminanceHdrStuff\DEPs\bin\gsl +) + +robocopy fftw-%FFTW_VER%-dll LuminanceHdrStuff\DEPs\include\fftw3 *.h /MIR >nul +robocopy fftw-%FFTW_VER%-dll LuminanceHdrStuff\DEPs\lib\fftw3 *.lib /MIR /NJS >nul +robocopy fftw-%FFTW_VER%-dll LuminanceHdrStuff\DEPs\bin\fftw3 *.dll /MIR /NJS >nul + + +robocopy LibRaw-%LIBRAW_COMMIT%\libraw LuminanceHdrStuff\DEPs\include\libraw\libraw /MIR >nul +robocopy LibRaw-%LIBRAW_COMMIT%\lib LuminanceHdrStuff\DEPs\lib\libraw *.lib /MIR >nul +robocopy LibRaw-%LIBRAW_COMMIT%\bin LuminanceHdrStuff\DEPs\bin\libraw *.dll /MIR >nul + +robocopy lcms2-%LCMS_COMMIT%\include LuminanceHdrStuff\DEPs\include\lcms2 *.h /MIR >nul +robocopy lcms2-%LCMS_COMMIT%\bin LuminanceHdrStuff\DEPs\lib\lcms2 *.lib /MIR /NJS >nul +REM robocopy lcms2-%LCMS_COMMIT%\bin LuminanceHdrStuff\DEPs\bin\lcms2 *.dll /MIR /NJS >nul + +REM robocopy tbb40_20120613oss\include LuminanceHdrStuff\DEPs\include\tbb /MIR >nul +REM robocopy tbb40_20120613oss\lib\%CpuPlatform%\%VS_SHORT% LuminanceHdrStuff\DEPs\lib\tbb /MIR >nul +REM robocopy tbb40_20120613oss\bin\%CpuPlatform%\%VS_SHORT% LuminanceHdrStuff\DEPs\bin\tbb /MIR >nul + +robocopy CCfits2.4 LuminanceHdrStuff\DEPs\include\CCfits *.h CCfits /MIR >nul +pushd LuminanceHdrStuff\DEPs\include +SET CCFITS_ROOT_DIR=%CCFITS_ROOT_DIR%;%CD% +popd + +IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build ( + mkdir LuminanceHdrStuff\qtpfsgui.build +) +pushd LuminanceHdrStuff\qtpfsgui.build + + +IF %OPTION_LUMINANCE_UPDATE_TRANSLATIONS% EQU 1 ( + set CMAKE_OPTIONS=-DUPDATE_TRANSLATIONS=1 +) ELSE ( + set CMAKE_OPTIONS=-UUPDATE_TRANSLATIONS +) +IF %OPTION_LUPDATE_NOOBSOLETE% EQU 1 ( + set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLUPDATE_NOOBSOLETE=1 +) ELSE ( + set CMAKE_OPTIONS=%CMAKE_OPTIONS% -ULUPDATE_NOOBSOLETE +) + +set L_CMAKE_INCLUDE=..\..\boost_1_%BOOST_MINOR%_0 +set L_CMAKE_LIB=..\..\boost_1_%BOOST_MINOR%_0\stage\lib +set L_CMAKE_PROGRAM_PATH=%CYGWIN_DIR%\bin +set L_CMAKE_PREFIX_PATH=%QTDIR% +set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INCLUDE_PATH=%L_CMAKE_INCLUDE% ^ + -DCMAKE_LIBRARY_PATH=%L_CMAKE_LIB% -DCMAKE_PROGRAM_PATH=%L_CMAKE_PROGRAM_PATH% ^ + -DCMAKE_INSTALL_PREFIX=..\..\dist -DCMAKE_PREFIX_PATH=%L_CMAKE_PREFIX_PATH% ^ + -DPNG_NAMES=libpng16;libpng17 -DOPENEXR_VERSION=%OPENEXR_CMAKE_VERSION% + +echo CMake command line options ------------------------------------ +echo %CMAKE_OPTIONS% +echo --------------------------------------------------------------- + +REM Eclipse CDT4 - NMake Makefiles + +cmake -G "%VS_CMAKE%" ..\qtpfsgui %CMAKE_OPTIONS% +REM cmake -G "Eclipse CDT4 - NMake Makefiles" ..\qtpfsgui %CMAKE_OPTIONS% +REM goto end +IF errorlevel 1 goto error_end +popd + +IF EXIST LuminanceHdrStuff\qtpfsgui.build\Luminance HDR.sln ( + pushd LuminanceHdrStuff\qtpfsgui.build + REM %VSCOMMAND% luminance-hdr.sln /Upgrade + cmake --build . --config %ConfigurationLuminance% %LuminanceTarget% + + IF errorlevel 1 goto error_end + popd +) + +IF EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\luminance-hdr.exe ( + IF EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% ( + + robocopy LuminanceHdrStuff\qtpfsgui LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% LICENSE >nul + + IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\align_image_stack.exe ( + copy vcDlls\selected\* LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\ + ) + + pushd LuminanceHdrStuff\DEPs\bin + robocopy exiv2 ..\..\qtpfsgui.build\%ConfigurationLuminance% expat.dll >nul + robocopy libraw ..\..\qtpfsgui.build\%ConfigurationLuminance% libraw.dll >nul + robocopy fftw3 ..\..\qtpfsgui.build\%ConfigurationLuminance% libfftw3f-3.dll >nul + popd + + pushd %INSTALL_DIR% + robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% exiv2.dll >nul + robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% jpeg8.dll >nul + robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% libpng17.dll >nul + robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% zlib.dll >nul + robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% expat.dll >nul + robocopy bin ..\LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% tiff.dll >nul + popd + + robocopy cfit%CFITSIO_VER%.build\%Configuration% LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% cfitsio.dll >nul + robocopy %PTHREADS_CURRENT_DIR% LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% pthreadVC2.dll >nul + + robocopy lcms2-%LCMS_COMMIT%\bin LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% lcms2.dll >nul + + IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\i18n\ ( + mkdir LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\i18n + ) + robocopy LuminanceHdrStuff\qtpfsgui.build LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\i18n lang_*.qm >nul + + for %%v in ("help", "hdrhtml", "icons") do ( + IF NOT EXIST LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\%%v\ ( + mkdir LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\%%v + ) + ) + robocopy LuminanceHdrStuff\qtpfsgui\help LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\help /MIR >nul + robocopy LuminanceHdrStuff\qtpfsgui\hdrhtml LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\hdrhtml /MIR >nul + robocopy LuminanceHdrStuff\qtpfsgui\icons LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\icons /MIR >nul + + + REM ----- QT Stuff (Dlls, translations) -------------------------------------------- + pushd LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance% + + for %%v in ( "Qt5Concurrent.dll", "Qt5Core.dll", "Qt5Gui.dll", "Qt5Multimedia.dll", ^ + "Qt5MultimediaWidgets.dll", "Qt5Network.dll", "Qt5Positioning.dll", "Qt5WinExtras.dll", ^ + "Qt5OpenGL.dll", "Qt5PrintSupport.dll", "Qt5Qml.dll", "Qt5Quick.dll", "Qt5Sensors.dll", ^ + "Qt5Sql.dll", "Qt5V8.dll", "Qt5WebEngine.dll", "Qt5WebEngineCore.dll", "Qt5WebEngineWidgets.dll", ^ + "Qt5Svg.dll", "Qt5WebKitWidgets.dll", "Qt5Widgets.dll", "Qt5Xml.dll", "Qt5WebChannel.dll", ^ + "Qt5QuickWidgets.dll", "icudt53.dll", "icuin53.dll", "icuuc53.dll" ) do ( + robocopy %QTDIR%\bin . %%v >nul + ) + for %%v in ("imageformats", "sqldrivers", "platforms") do ( + IF NOT EXIST %%v ( + mkdir %%v + ) + ) + robocopy %QTDIR%\plugins\imageformats imageformats qjpeg.dll >nul + robocopy %QTDIR%\plugins\imageformats imageformats qsvg.dll >nul + robocopy %QTDIR%\plugins\sqldrivers sqldrivers qsqlite.dll >nul + robocopy %QTDIR%\plugins\platforms platforms qwindows.dll >nul + robocopy %QTDIR%\translations i18n qt_??.qm >nul + robocopy %QTDIR%\translations i18n qt_??_*.qm >nul + popd + + robocopy hugin-%HUGIN_VER%-%RawPlatform% LuminanceHdrStuff\qtpfsgui.build\%ConfigurationLuminance%\hugin /MIR >nul + ) +) + +goto end + +:cygwin_error +echo ERROR: Cygwin with +echo nasm +echo ssh +echo wget +echo is required + +:error_end +pause + +:end + +endlocal \ No newline at end of file diff -Nru luminance-hdr-2.5.0/build_files/platforms/msvc/README.txt luminance-hdr-2.5.1/build_files/platforms/msvc/README.txt --- luminance-hdr-2.5.0/build_files/platforms/msvc/README.txt 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/msvc/README.txt 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,89 @@ +This is the README file for Luminance +------------------------------------------------------------------- +Webpage: http://qtpfsgui.sourceforge.net +Sourceforge: http://sourceforge.net/projects/qtpfsgui + +Contents +--------- +1. Requirements +2. Compilation +3. Output + + +1. Requirements +--------------------------------------------------------------------- +This build process works for 32 and 64 bit compilation. + +This build process requires: +* Windows +* MS Visual Studio 2010 or higher, ExpressEditions should work (currently testing with VS2012) +* Qt for MSVC installed + - either official 32 bit Qt from: http://qt-project.org/downloads + - or Qt self compiled + ATTENTION: Do not mix the compilation with different versions of MSVC. If you + compile Luminance with VC2012 you should also have Qt compiled + with VC2010. If you don't find any precompiled Qt with a + specific MSVC or platform version, you can just download the + latest version of a precompiled Qt with any VC compiler (or just the Qt source version), + open the VC command prompt in the Qt main directory and then: + + First open this solution and build all projects for your configuration (ex. Release/x64) + > icu\source\allinone\allinone.sln + + And then run: (change your paths to match the installation + > set include=%include%;C:\Data\Develop\Qt\icu\include + > set lib=%lib%;C:\Data\Develop\Qt\icu\lib64 + (Change lib64 to lib for the x32 build) + + > set path=%path%;C:\Data\Programs\ruby-1.9.3-p385-i386-mingw32\bin + > configure -release -opengl desktop -no-compile-examples -mp -nomake tests -nomake examples -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-avx -no-avx2 + > nmake + > cd qtwebkit + > nmake + > cd .. + > nmake install_subtargets + > nmake -f Makefile confclean + > del /S /Q *.obj + This recompiles the whole Qt and takes from 30 minutes to several hours... + This reconfiguration can also be applied for generating x64 Qt versions! + ATTENTION: If you move the Qt folder AFTER the compilation you have to redo the + > configure ... step + (without doing the actual compilation with nmake) + Moreover you need to manually adapt the paths in qtbase\lib\cmake\Qt5LinguistTools\Qt5LinguistToolsConfig.cmake + + Afterwards copy the icu-dlls into the qtbase/bin folder, along with the platforms folder from the plugins directory. + Don't forget the d3dcompiler_46.dll from the local VS-folder! + At the end programs like linguist.exe, designer.exe must be able to run!!! + + +* CMake +* Cygwin installed with: cvs, git, gzip, sed, ssh, svn, tar, unzip, wget + + +2. Compilation +--------------------------------------------------------------------- +Copy the .cmd files into a new EMPTY folder. Open the Visual Studio +command prompt (x64 or Win32) and change (cd) to that directory. If +there are some problems the batch script should tell you! + +Open the setenv.cmd file and adjust the variables paths and options for your needs. + +Start the compilation with +> build.cmd + +Wait, wait, wait.... + + +3. Output +--------------------------------------------------------------------- +The build process should download and build all the required libraries. + +In 'LuminanceHdrStuff\DEPs' you should find all the compilated DLLs, +librarys and include header files. + +In 'LuminanceHdrStuff\qtpfsgui.build' you should find all the binary +related files. + +In 'LuminanceHdrStuff\qtpfsgui' you find the LuminanceHdr SVN directory. + + diff -Nru luminance-hdr-2.5.0/build_files/platforms/msvc/setenv.cmd luminance-hdr-2.5.1/build_files/platforms/msvc/setenv.cmd --- luminance-hdr-2.5.0/build_files/platforms/msvc/setenv.cmd 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/msvc/setenv.cmd 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,26 @@ +@echo off +SET CYGWIN_DIR=C:\cygwin64 +SET TEMP_DIR=.downloaddir + +SET VISUAL_STUDIO_VC_REDIST=C:\Program Files (x86)\%VS_PROG_FILES%\VC\redist\%RawPlatform% +rem SET QTDIR=C:\Data\Develop\Qt\5.0.1-x64\qtbase +SET QTDIR=C:\Data\Dev\Qt5.8.0\5.8\msvc2015_64 + +REM Options: ------------------------------------------- + +REM enable another configuration (defaulting to Release, RelWithDebInfo) +REM SET Configuration=Debug +REM SET ConfigurationLuminance=Release + +SET LuminanceTarget= +rem --target luminance-hdr + +REM updates/overwrites the original .ts files doing a Qt lupdate +SET OPTION_LUMINANCE_UPDATE_TRANSLATIONS=0 +SET OPTION_LUPDATE_NOOBSOLETE=0 + +REM Optional variables +REM SET L_BOOST_DIR=C:\Data\Develop\libhdrStuff + +REM should the Luminance git repo be updated (defaulting to true for read-only git download) +SET UPDATE_REPO_LUMINANCE=0 diff -Nru luminance-hdr-2.5.0/build_files/platforms/msvc/.settings/.txt luminance-hdr-2.5.1/build_files/platforms/msvc/.settings/.txt --- luminance-hdr-2.5.0/build_files/platforms/msvc/.settings/.txt 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/build_files/platforms/msvc/.settings/.txt 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1 @@ +x diff -Nru luminance-hdr-2.5.0/Changelog luminance-hdr-2.5.1/Changelog --- luminance-hdr-2.5.0/Changelog 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/Changelog 2017-05-10 19:14:06.000000000 +0000 @@ -1,3 +1,12 @@ +Changes 2.5.1 +NEW: Selectable threshold for adjusting levels +NEW: Optional Lanczos interpolation +NEW: Antialiased display of images +NEW: Navigation of images in fullscreen +NEW: Online documentation +* many fixes in HDR creation for all profiles +* minor cosmetic fixes to the UI + Changes 2.5.0 NEW: New tonemapping operator ferradans11 NEW: New tonemapping operator mai11 diff -Nru luminance-hdr-2.5.0/cmake/CompilerSettings.cmake luminance-hdr-2.5.1/cmake/CompilerSettings.cmake --- luminance-hdr-2.5.0/cmake/CompilerSettings.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/CompilerSettings.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,57 +0,0 @@ -IF(UNIX) -ADD_DEFINITIONS(-Wall -Wno-unknown-pragmas) -ADD_DEFINITIONS(-ffast-math) - -IF(APPLE) -# optimize for 64-bit core 2 architecture on Apple -ADD_DEFINITIONS(-march=core2) -ENDIF() -ENDIF() - -#Activate C++11 support, when available -if("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU") - add_definitions(-DBRANCH_PREDICTION) - execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) - if (GCC_VERSION VERSION_GREATER 4.7 OR GCC_VERSION VERSION_EQUAL 4.7) - message(STATUS "C++11 activated for GCC ${GCC_VERSION}") - set(CMAKE_CXX_STANDARD 11) - #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") # add_definitions("-std=gnu++11") - add_definitions(-DLHDR_CXX11_ENABLED) - elseif(GCC_VERSION VERSION_GREATER 4.3 OR GCC_VERSION VERSION_EQUAL 4.3) - message(WARNING "C++0x activated for GCC ${GCC_VERSION}. If you get any errors update to a compiler that fully supports C++11") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x") # add_definitions("-std=gnu++0x") - add_definitions(-DLHDR_CXX11_ENABLED) - else() - message(WARNING "C++11 NOT available. GCC >= 4.3 is needed.") - endif() -elseif("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") - message(STATUS "C++11 activated for Clang") - set(CMAKE_CXX_STANDARD 11) - #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") - add_definitions(-DLHDR_CXX11_ENABLED) - add_definitions(-DBRANCH_PREDICTION) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnull-dereference -Wdelete-non-virtual-dtor -Wsign-compare -Wswitch") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wreturn-type -Wself-assign -Wunused-argument -Wunused-function -Wtautological-compare") - # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wshorten-64-to-32 -Wconversion -Wsystem-headers") -elseif(MSVC) - message(STATUS "C++11 is active by default on Microsoft Visual Studio") - # add_definitions("-std=c++0x") - add_definitions(-DLHDR_CXX11_ENABLED) -else() - message(WARNING "Your C++ compiler does not support C++11.") -endif() -#OpenMP Support under Linux, Windows with MSVC & MacOS X with GCC >= 4.3 -IF(MSVC) - FIND_PACKAGE(OpenMP REQUIRED) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") -ELSEIF(CMAKE_COMPILER_IS_GNUCC AND UNIX) - EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) - IF(GCC_VERSION VERSION_GREATER 4.3 OR GCC_VERSION VERSION_EQUAL 4.3) - MESSAGE(STATUS "GCC >= 4.3") - FIND_PACKAGE(OpenMP REQUIRED) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") - ENDIF() -ENDIF() diff -Nru luminance-hdr-2.5.0/cmake/FindCFITSIO.cmake luminance-hdr-2.5.1/cmake/FindCFITSIO.cmake --- luminance-hdr-2.5.0/cmake/FindCFITSIO.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/FindCFITSIO.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,44 +0,0 @@ -# - Try to find CFITSIO -# Once done this will define -# -# CFITSIO_FOUND - system has CFITSIO -# CFITSIO_INCLUDE_DIR - the CFITSIO include directory -# CFITSIO_LIBRARIES - Link these to use CFITSIO -# CFITSIO_VERSION_STRING - Human readable version number of cfitsio -# CFITSIO_VERSION_MAJOR - Major version number of cfitsio -# CFITSIO_VERSION_MINOR - Minor version number of cfitsio -# -# Redistribution and use is allowed according to the terms of the BSD license. - -find_path(CFITSIO_INCLUDE_DIR fitsio.h - PATH_SUFFIXES libcfitsio3 libcfitsio0 cfitsio - PATHS - $ENV{CFITSIO} - ${_obIncDir} - ${GNUWIN32_DIR}/include - /opt/local/include -) - -find_library(CFITSIO_LIBRARIES NAMES cfitsio - PATHS - $ENV{CFITSIO} - ${_obLinkDir} - ${GNUWIN32_DIR}/lib - /opt/local/lib -) - -if(CFITSIO_INCLUDE_DIR AND CFITSIO_LIBRARIES) - # Find the version of the cfitsio header - FILE(READ "${CFITSIO_INCLUDE_DIR}/fitsio.h" FITSIO_H) - STRING(REGEX REPLACE ".*#define CFITSIO_VERSION[^0-9]*([0-9]+)\\.([0-9]+).*" "\\1.\\2" CFITSIO_VERSION_STRING "${FITSIO_H}") - STRING(REGEX REPLACE "^([0-9]+)[.]([0-9]+)" "\\1" CFITSIO_VERSION_MAJOR ${CFITSIO_VERSION_STRING}) - STRING(REGEX REPLACE "^([0-9]+)[.]([0-9]+)" "\\2" CFITSIO_VERSION_MINOR ${CFITSIO_VERSION_STRING}) - - SET(CFITSIO_VERSION_STRING "${CFITSIO_VERSION_MAJOR}.${CFITSIO_VERSION_MINOR}") -endif() - -include(FindPackageHandleStandardArgs) - -find_package_handle_standard_args(CFITSIO - REQUIRED_VARS CFITSIO_LIBRARIES CFITSIO_INCLUDE_DIR CFITSIO_VERSION_STRING) -mark_as_advanced(CFITSIO_INCLUDE_DIR CFITSIO_LIBRARIES) diff -Nru luminance-hdr-2.5.0/cmake/Findexiv2.cmake luminance-hdr-2.5.1/cmake/Findexiv2.cmake --- luminance-hdr-2.5.0/cmake/Findexiv2.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/Findexiv2.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,82 +0,0 @@ -# - Try to find the Exiv2 library -# -# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need -# before doing FIND_PACKAGE(Exiv2). The default is 0.12. -# -# Once done this will define -# -# EXIV2_FOUND - system has libexiv2 -# EXIV2_INCLUDE_DIR - the libexiv2 include directory -# EXIV2_LIBRARIES - Link these to use libexiv2 -# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 -# -# The minimum required version of Exiv2 can be specified using the -# standard syntax, e.g. find_package(Exiv2 0.17) -# -# For compatiblity, also the variable EXIV2_MIN_VERSION can be set to the minimum version -# you need before doing FIND_PACKAGE(Exiv2). The default is 0.12. - -# Copyright (c) 2010, Alexander Neundorf, -# Copyright (c) 2008, Gilles Caulier, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -# Support EXIV2_MIN_VERSION for compatibility: -if(NOT Exiv2_FIND_VERSION) - set(Exiv2_FIND_VERSION "${EXIV2_MIN_VERSION}") -endif(NOT Exiv2_FIND_VERSION) - -# the minimum version of exiv2 we require -if(NOT Exiv2_FIND_VERSION) - set(Exiv2_FIND_VERSION "0.21") -endif(NOT Exiv2_FIND_VERSION) - - -if (NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - pkg_check_modules(PC_EXIV2 exiv2) - set(EXIV2_DEFINITIONS ${PC_EXIV2_CFLAGS_OTHER}) -endif (NOT WIN32) - - -find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp - HINTS - ${PC_EXIV2_INCLUDEDIR} - ${PC_EXIV2_INCLUDE_DIRS} - ) - -find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2 - HINTS - ${PC_EXIV2_LIBDIR} - ${PC_EXIV2_LIBRARY_DIRS} - ) - - -# Get the version number from exiv2/version.hpp and store it in the cache: -if(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) - file(READ ${EXIV2_INCLUDE_DIR}/exiv2/version.hpp EXIV2_VERSION_CONTENT) - string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") - set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}") - - string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") - set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}") - - string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") - set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}") - - set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}" CACHE STRING "Version number of Exiv2" FORCE) -endif(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) - -set(EXIV2_LIBRARIES "${EXIV2_LIBRARY}") - -include(FindPackageHandleStandardArgs) -#find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR -# VERSION_VAR EXIV2_VERSION) - -find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR - EXIV2_VERSION) -mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARY) - diff -Nru luminance-hdr-2.5.0/cmake/Findfftwf.cmake luminance-hdr-2.5.1/cmake/Findfftwf.cmake --- luminance-hdr-2.5.0/cmake/Findfftwf.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/Findfftwf.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,51 +0,0 @@ -# FFTWF_INCLUDE_DIR = fftw3.h -# FFTWF_LIBRARIES = libfftw3.a -# FFTWF_FOUND = true if FFTW3 is found - -IF(FFTWF_INCLUDE_DIRS) - FIND_PATH(FFTWF_INCLUDE_DIR fftw3.h ${FFTWF_INCLUDE_DIRS}) - FIND_LIBRARY(FFTWF_LIBRARY fftw3f ${FFTWF_LIBRARY_DIRS}) - FIND_LIBRARY(FFTWF_THREADS_LIBRARY fftw3f_threads ${FFTWF_LIBRARY_DIRS}) -ELSE(FFTWF_INCLUDE_DIRS) - SET(TRIAL_PATHS - $ENV{FFTWF_HOME}/include - /usr/include - /usr/local/include - /opt/include - /usr/apps/include - ) - - SET(TRIAL_LIBRARY_PATHS - $ENV{FFTWF_HOME}/lib - /usr/lib - /usr/local/lib - /opt/lib - /sw/lib - ) - - FIND_PATH(FFTWF_INCLUDE_DIR fftw3.h ${TRIAL_PATHS}) - FIND_LIBRARY(FFTWF_LIBRARIES fftw3f ${TRIAL_LIBRARY_PATHS}) - FIND_LIBRARY(FFTWF_THREADS_LIBRARIES fftw3f_threads ${TRIAL_LIBRARY_PATHS}) -ENDIF(FFTWF_INCLUDE_DIRS) - - -IF(FFTWF_INCLUDE_DIR AND FFTWF_LIBRARIES AND FFTWF_THREADS_LIBRARIES) - SET(FFTWF_FOUND TRUE) -ELSE() - SET(FFTWF_FOUND FALSE) -ENDIF() - -IF(FFTWF_FOUND) - SET(FFTWF_LIBRARIES ${FFTWF_LIBRARIES} ${FFTWF_THREADS_LIBRARIES}) - - MESSAGE(STATUS "Found FFTW3F (FFTWF_INCLUDE_DIR = ${FFTWF_INCLUDE_DIR})") - MESSAGE(STATUS "Found FFTW3F (FFTWF_LIBRARIES = ${FFTWF_LIBRARIES})") -ELSE() - MESSAGE(FATAL_ERROR "Could not find FFTW3F") -ENDIF() - -MARK_AS_ADVANCED( - FFTWF_INCLUDE_DIR - FFTWF_LIBRARIES - FFTWF_FOUND -) diff -Nru luminance-hdr-2.5.0/cmake/FindGSL.cmake luminance-hdr-2.5.1/cmake/FindGSL.cmake --- luminance-hdr-2.5.0/cmake/FindGSL.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/FindGSL.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,64 +0,0 @@ -# - Find GSL -# Find the GNU Scientific Library (GSL) includes and library -# -# This module defines -# GSL_FOUND -# GSL_LIBRARIES for GSL only -# GSLCBLAS_LIBRARIES for GSL CBLAS -# GSL_INCLUDE_DIR -# GSLCBLAS_INCLUDE_DIR (not yet defined) -# - -FIND_PATH(GSL_INCLUDE_DIR gsl/gsl_rng.h - /usr/local/include - /usr/include - /opt/local/include -) - -FIND_PATH(GSLCBLAS_INCLUDE_DIR gsl/gsl_cblas.h - /usr/local/include - /usr/include - /opt/local/include -) - -IF(GSL_USE_STATIC_LIBS) - SET( _GSL_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) - IF(WIN32) - SET(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) - ELSE(WIN32) - SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) - ENDIF(WIN32) -ENDIF(GSL_USE_STATIC_LIBS) - -FIND_LIBRARY(GSL_LIBRARY NAMES gsl) -FIND_LIBRARY(GSL_CBLAS_LIBRARY NAMES gslcblas) - -IF(GSL_USE_STATIC_LIBS) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ${_GSL_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) -ENDIF(GSL_USE_STATIC_LIBS) - -IF(GSL_LIBRARY AND GSL_CBLAS_LIBRARY AND GSL_INCLUDE_DIR AND GSLCBLAS_INCLUDE_DIR) - SET(GSL_LIBRARIES ${GSL_LIBRARY}) - SET(GSLCBLAS_LIBRARIES ${GSL_CBLAS_LIBRARY}) - SET(GSL_FOUND "YES") -ELSE() - SET(GSL_FOUND "NO") -ENDIF() - -IF(GSL_FOUND) - IF(NOT GSL_FIND_QUIETLY) - MESSAGE(STATUS "Found GNU Scientific Library (GSL_LIBRARY = ${GSL_LIBRARY})") - MESSAGE(STATUS "Found GNU Scientific Library: (GSL_CBLAS_LIBRARY = ${GSL_CBLAS_LIBRARY})") - MESSAGE(STATUS "Found GNU Scientific Library: (GSL_INCLUDE_DIR = ${GSL_INCLUDE_DIR})") - ENDIF(NOT GSL_FIND_QUIETLY) -ELSE(GSL_FOUND) - IF(GSL_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find GNU Scientific Library") - ENDIF(GSL_FIND_REQUIRED) -ENDIF(GSL_FOUND) - -MARK_AS_ADVANCED( - GSL_LIBRARY - GSL_CBLAS_LIBRARY - GSL_INCLUDE_DIR -) diff -Nru luminance-hdr-2.5.0/cmake/Findlcms2.cmake luminance-hdr-2.5.1/cmake/Findlcms2.cmake --- luminance-hdr-2.5.0/cmake/Findlcms2.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/Findlcms2.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ -FIND_PATH(LCMS2_INCLUDE_DIR lcms2.h - /usr/local/include - /usr/include - /opt/local/include -) - -SET(LCMS2_NAMES ${LCMS2_NAMES} lcms2) -FIND_LIBRARY(LCMS2_LIBRARY NAMES ${LCMS2_NAMES} ) - -# handle the QUIETLY and REQUIRED arguments and set LCMS2_FOUND to TRUE if -# all listed variables are TRUE -INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(LCMS2 DEFAULT_MSG LCMS2_LIBRARY LCMS2_INCLUDE_DIR) - -IF(LCMS2_FOUND) - SET( LCMS2_LIBRARIES ${LCMS2_LIBRARY} ) - IF(NOT LCMS2_FIND_QUIETLY) - MESSAGE(STATUS "Found LCMS2 (LCMS2_LIBRARIES = ${LCMS2_LIBRARIES})") - MESSAGE(STATUS "Found LCMS2 (LCMS2_INCLUDE_DIR = ${LCMS2_INCLUDE_DIR})") - ENDIF(NOT LCMS2_FIND_QUIETLY) -ELSE(LCMS2_FOUND) - IF(LCMS2_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Could not find LCMS2") - ENDIF(LCMS2_FIND_REQUIRED) -ENDIF(LCMS2_FOUND) - -MARK_AS_ADVANCED(LCMS2_INCLUDE_DIR LCMS2_LIBRARY) diff -Nru luminance-hdr-2.5.0/cmake/FindLibRAW.cmake luminance-hdr-2.5.1/cmake/FindLibRAW.cmake --- luminance-hdr-2.5.0/cmake/FindLibRAW.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/FindLibRAW.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,61 +0,0 @@ -# - Find LibRAW library -# Find the native LibRAW includes and library -# This module defines -# LIBRAW_INCLUDE_DIR, where to find libraw.h, etc. -# LIBRAW_LIBRARIES, libraries to link against to use LibRAW. -# LIBRAW_FOUND, If false, do not try to use LibRAW. -# also defined, but not for general use are -# LIBRAW_LIBRARY, where to find the LibRAW library. - -FIND_PATH(LIBRAW_INCLUDE_DIR libraw/libraw.h) - -SET(LIBRAW_NAMES ${LIBRAW_NAMES} raw_r) -FIND_LIBRARY(LIBRAW_LIBRARY NAMES ${LIBRAW_NAMES} ) - -# handle the QUIETLY and REQUIRED arguments and set LIBRAW_FOUND to TRUE if -# all listed variables are TRUE -INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBRAW DEFAULT_MSG LIBRAW_LIBRARY LIBRAW_INCLUDE_DIR) - -IF(LIBRAW_FOUND) - SET( LIBRAW_LIBRARIES ${LIBRAW_LIBRARY} ) - MESSAGE(STATUS "Found LibRAW (LIBRAW_INCLUDE_DIR = ${LIBRAW_INCLUDE_DIR})") - MESSAGE(STATUS "Found LibRAW (LIBRAW_LIBRARIES = ${LIBRAW_LIBRARIES})") - IF(UNIX) - IF(APPLE) - EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build/macosx/find_demosaicing_gpl2.sh - ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) - ELSE() - EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build/linux/find_demosaicing_gpl2.sh - ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) - ENDIF() - IF(_output) - MESSAGE(STATUS "Found demosaicing pack GPL2") - ADD_DEFINITIONS("-DDEMOSAICING_GPL2") - ELSE(_output) - MESSAGE(STATUS "Demosaicing pack GPL2 not found") - ENDIF(_output) - - IF(APPLE) - EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build/macosx/find_demosaicing_gpl3.sh - ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) - ELSE() - EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build/linux//find_demosaicing_gpl3.sh - ${LIBRAW_LIBRARY} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - OUTPUT_VARIABLE _output OUTPUT_STRIP_TRAILING_WHITESPACE) - ENDIF() - IF(_output) - MESSAGE(STATUS "Found demosaicing pack GPL3") - ADD_DEFINITIONS("-DDEMOSAICING_GPL3") - ELSE(_output) - MESSAGE(STATUS "Demosaicing pack GPL3 not found") - ENDIF(_output) - ENDIF(UNIX) -ELSE(LIBRAW_FOUND) - MESSAGE(FATAL_ERROR "Could not find LibRAW") -ENDIF(LIBRAW_FOUND) - -MARK_AS_ADVANCED(LIBRAW_INCLUDE_DIR LIBRAW_LIBRARIES) diff -Nru luminance-hdr-2.5.0/cmake/FindOpenEXR.cmake luminance-hdr-2.5.1/cmake/FindOpenEXR.cmake --- luminance-hdr-2.5.0/cmake/FindOpenEXR.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/FindOpenEXR.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,108 +0,0 @@ -# - Find OpenEXR library -# Find the native OpenEXR includes and library -# This module defines -# OPENEXR_INCLUDE_DIRS, where to find ImfXdr.h, etc. Set when -# OPENEXR_INCLUDE_DIR is found. -# OPENEXR_LIBRARIES, libraries to link against to use OpenEXR. -# OPENEXR_ROOT_DIR, The base directory to search for OpenEXR. -# This can also be an environment variable. -# OPENEXR_FOUND, If false, do not try to use OpenEXR. -# -# For individual library access these advanced settings are available -# OPENEXR_HALF_LIBRARY, Path to Half library -# OPENEXR_IEX_LIBRARY, Path to Half library -# OPENEXR_ILMIMF_LIBRARY, Path to Ilmimf library -# OPENEXR_ILMTHREAD_LIBRARY, Path to IlmThread library -# OPENEXR_IMATH_LIBRARY, Path to Imath library -# -# also defined, but not for general use are -# OPENEXR_LIBRARY, where to find the OpenEXR library. - -#============================================================================= -# Copyright 2011 Blender Foundation. -# -# Distributed under the OSI-approved BSD License (the "License"); -# see accompanying file Copyright.txt for details. -# -# This software is distributed WITHOUT ANY WARRANTY; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the License for more information. -#============================================================================= - -# If OPENEXR_ROOT_DIR was defined in the environment, use it. -IF(NOT OPENEXR_ROOT_DIR AND NOT $ENV{OPENEXR_ROOT_DIR} STREQUAL "") - SET(OPENEXR_ROOT_DIR $ENV{OPENEXR_ROOT_DIR}) -ENDIF() - -if (NOT OPENEXR_VERSION) - SET(OPENEXR_VERSION "2.0.1") -endif() -if (${OPENEXR_VERSION} VERSION_LESS "2.1") - SET(_openexr_FIND_COMPONENTS - Half - Iex - IlmImf - IlmThread - Imath - ) -else () - string(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _openexr_libs_ver ${OPENEXR_VERSION}) - SET(_openexr_FIND_COMPONENTS - Half - Iex-${_openexr_libs_ver} - IlmImf-${_openexr_libs_ver} - IlmThread-${_openexr_libs_ver} - Imath-${_openexr_libs_ver} - ) -endif () - -SET(_openexr_SEARCH_DIRS - ${OPENEXR_ROOT_DIR} - /usr/local - /sw # Fink - /opt/local # DarwinPorts - /opt/csw # Blastwave -) - -FIND_PATH(OPENEXR_INCLUDE_DIR - NAMES - OpenEXR/ImfXdr.h - HINTS - ${_openexr_SEARCH_DIRS} - PATH_SUFFIXES - include -) - -SET(_openexr_LIBRARIES) -FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS}) - STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT) - - FIND_LIBRARY(OPENEXR_${UPPERCOMPONENT}_LIBRARY - NAMES - ${COMPONENT} - HINTS - ${_openexr_SEARCH_DIRS} - PATH_SUFFIXES - lib64 lib - ) - LIST(APPEND _openexr_LIBRARIES "${OPENEXR_${UPPERCOMPONENT}_LIBRARY}") -ENDFOREACH() - -# handle the QUIETLY and REQUIRED arguments and set OPENEXR_FOUND to TRUE if -# all listed variables are TRUE -INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR DEFAULT_MSG - _openexr_LIBRARIES OPENEXR_INCLUDE_DIR) - -IF(OPENEXR_FOUND) - SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES}) - # Both include paths are needed because of dummy OSL headers mixing #include and #include :( - SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR) - message(STATUS "OpenEXR found") -ENDIF() - -MARK_AS_ADVANCED(OPENEXR_INCLUDE_DIR) -FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS}) - STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT) - MARK_AS_ADVANCED(OPENEXR_${UPPERCOMPONENT}_LIBRARY) -ENDFOREACH() diff -Nru luminance-hdr-2.5.0/cmake/GetGitRevisionDescription.cmake luminance-hdr-2.5.1/cmake/GetGitRevisionDescription.cmake --- luminance-hdr-2.5.0/cmake/GetGitRevisionDescription.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/GetGitRevisionDescription.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,104 +0,0 @@ -# - Returns a version string from Git -# -# These functions force a re-configure on each git commit so that you can -# trust the values of the variables in your build system. -# -# get_git_head_revision( [ ...]) -# -# Returns the refspec and sha hash of the current head revision -# -# git_describe( [ ...]) -# -# Returns the results of git describe on the source tree, and adjusting -# the output so that it tests false if an error occurs. -# -# git_get_exact_tag( [ ...]) -# -# Returns the results of git describe --exact-match on the source tree, -# and adjusting the output so that it tests false if there was no exact -# matching tag. -# -# Requires CMake 2.6 or newer (uses the 'function' command) -# -# Original Author: -# 2009-2010 Ryan Pavlik -# http://academic.cleardefinition.com -# Iowa State University HCI Graduate Program/VRAC -# -# Copyright Iowa State University 2009-2010. -# Distributed under the Boost Software License, Version 1.0. -# (See accompanying file LICENSE_1_0.txt or copy at -# http://www.boost.org/LICENSE_1_0.txt) - -if(__get_git_revision_description) - return() -endif() -set(__get_git_revision_description YES) - -# We must run the following at "include" time, not at function call time, -# to find the path to this module rather than the path to a calling list file -get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH) - -function(get_git_head_revision _refspecvar _hashvar) - set(GIT_DIR "${CMAKE_SOURCE_DIR}/.git") - if(NOT EXISTS "${GIT_DIR}") - # not in git - set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE) - set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE) - return() - endif() - set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data") - if(NOT EXISTS "${GIT_DATA}") - file(MAKE_DIRECTORY "${GIT_DATA}") - endif() - set(HEAD_FILE "${GIT_DATA}/HEAD") - configure_file("${GIT_DIR}/HEAD" "${HEAD_FILE}" COPYONLY) - - configure_file("${_gitdescmoddir}/GetGitRevisionDescription.cmake.in" "${GIT_DATA}/grabRef.cmake" @ONLY) - include("${GIT_DATA}/grabRef.cmake") - - set(${_refspecvar} "${HEAD_REF}" PARENT_SCOPE) - set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE) -endfunction() - -function(git_describe _var) - if(NOT GIT_FOUND) - find_package(Git QUIET) - endif() - get_git_head_revision(refspec hash) - if(NOT GIT_FOUND) - set(${_var} "GIT-NOTFOUND" PARENT_SCOPE) - return() - endif() - if(NOT hash) - set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE) - return() - endif() - - # TODO sanitize - #if((${ARGN}" MATCHES "&&") OR - # (ARGN MATCHES "||") OR - # (ARGN MATCHES "\\;")) - # message("Please report the following error to the project!") - # message(FATAL_ERROR "Looks like someone's doing something nefarious with git_describe! Passed arguments ${ARGN}") - #endif() - - #message(STATUS "Arguments to execute_process: ${ARGN}") - - execute_process(COMMAND "${GIT_EXECUTABLE}" describe ${hash} ${ARGN} - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" - RESULT_VARIABLE res - OUTPUT_VARIABLE out - ERROR_QUIET - OUTPUT_STRIP_TRAILING_WHITESPACE) - if(NOT res EQUAL 0) - set(out "${out}-${res}-NOTFOUND") - endif() - - set(${_var} "${out}" PARENT_SCOPE) -endfunction() - -function(git_get_exact_tag _var) - git_describe(out --exact-match ${ARGN}) - set(${_var} "${out}" PARENT_SCOPE) -endfunction() diff -Nru luminance-hdr-2.5.0/cmake/GetGitRevisionDescription.cmake.in luminance-hdr-2.5.1/cmake/GetGitRevisionDescription.cmake.in --- luminance-hdr-2.5.0/cmake/GetGitRevisionDescription.cmake.in 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/GetGitRevisionDescription.cmake.in 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ -# -# Internal file for GetGitRevisionDescription.cmake -# -# Requires CMake 2.6 or newer (uses the 'function' command) -# -# Original Author: -# 2009-2010 Ryan Pavlik -# http://academic.cleardefinition.com -# Iowa State University HCI Graduate Program/VRAC -# -# Copyright Iowa State University 2009-2010. -# Distributed under the Boost Software License, Version 1.0. -# (See accompanying file LICENSE_1_0.txt or copy at -# http://www.boost.org/LICENSE_1_0.txt) - -set(HEAD_HASH) - -file(READ "@HEAD_FILE@" HEAD_CONTENTS LIMIT 1024) - -string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS) -if(HEAD_CONTENTS MATCHES "ref") - # named branch - string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}") - if(EXISTS "@GIT_DIR@/${HEAD_REF}") - configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY) - elseif(EXISTS "@GIT_DIR@/logs/${HEAD_REF}") - configure_file("@GIT_DIR@/logs/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY) - set(HEAD_HASH "${HEAD_REF}") - endif() -else() - # detached HEAD - configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY) -endif() - -if(NOT HEAD_HASH) -file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024) -string(STRIP "${HEAD_HASH}" HEAD_HASH) -endif() diff -Nru luminance-hdr-2.5.0/cmake/GlobalSettings.cmake luminance-hdr-2.5.1/cmake/GlobalSettings.cmake --- luminance-hdr-2.5.0/cmake/GlobalSettings.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/GlobalSettings.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ -IF(NOT CMAKE_BUILD_TYPE) -SET(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "" FORCE) -ENDIF() - -# MESSAGE(${CMAKE_BUILD_TYPE}) - -IF(${CMAKE_BUILD_TYPE} STREQUAL "Release" OR ${CMAKE_BUILD_TYPE} STREQUAL "MinSizeRel") -ADD_DEFINITIONS("-DQT_NO_DEBUG_OUTPUT") -ENDIF() - -SET(LUMINANCE_MODULES_CLI ) -SET(LUMINANCE_MODULES_GUI ) - - diff -Nru luminance-hdr-2.5.0/cmake/Internationalization.cmake luminance-hdr-2.5.1/cmake/Internationalization.cmake --- luminance-hdr-2.5.0/cmake/Internationalization.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/Internationalization.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -IF(APPLE) -# ADD_DEFINITIONS(-DI18NDIR=QCoreApplication::applicationDirPath\(\)+"/../Resources/i18n") -SET(I18NDIR QCoreApplication::applicationDirPath\(\)+"/../Resources/i18n") -SET(HELPDIR QCoreApplication::applicationDirPath\(\)+"/../Resources/help") -SET(HDRHTMLDIR QCoreApplication::applicationDirPath\(\)+"/../Resources/hdrhtml") -ELSEIF(UNIX) -# ADD_DEFINITIONS(-DPREFIX=${CMAKE_INSTALL_PREFIX}) -# ADD_DEFINITIONS(-DI18NDIR="${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/i18n") -SET(BASEDIR "\"${CMAKE_INSTALL_PREFIX}\"") -SET(I18NDIR "\"${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/i18n\"") -SET(HELPDIR "\"${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/help\"") -SET(HDRHTMLDIR "\"${CMAKE_INSTALL_PREFIX}/share/luminance-hdr/hdrhtml\"") -ELSEIF(WIN32) -# ADD_DEFINITIONS(-DI18NDIR=QCoreApplication::applicationDirPath\(\)+"/i18n") -SET(I18NDIR QCoreApplication::applicationDirPath\(\)+"/i18n") -SET(HELPDIR QCoreApplication::applicationDirPath\(\)+"/help") -SET(HDRHTMLDIR QCoreApplication::applicationDirPath\(\)+"/hdrhtml") -ENDIF() - -OPTION(UPDATE_TRANSLATIONS "Update source translation translations/*.ts files (WARNING: make clean will delete the source .ts files! Danger!)") -OPTION(LUPDATE_NOOBSOLETE "While doing an lupdate, remove obsolete entries.") - -# Holds al the file that will be translated -SET(FILES_TO_TRANSLATE ) - -# add a function here that creates the translation when necessary diff -Nru luminance-hdr-2.5.0/cmake/Version.cmake luminance-hdr-2.5.1/cmake/Version.cmake --- luminance-hdr-2.5.0/cmake/Version.cmake 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/cmake/Version.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,18 +0,0 @@ -SET(LHDR_NAME "Luminance HDR") - -# Numeric version values -SET(LHDR_VERSION_MAJOR "2") -SET(LHDR_VERSION_MINOR "5") -SET(LHDR_VERSION_PATCH "0") -SET(LHDR_VERSION_STR_SUFFIX "") - -SET(LHDR_VERSION "${LHDR_VERSION_MAJOR}.${LHDR_VERSION_MINOR}.${LHDR_VERSION_PATCH}${LHDR_VERSION_STR_SUFFIX}") -SET(LHDR_VENDOR "Luminance HDR Development Team") -SET(LHDR_COPYRIGHT_YEAR "2006-2017") - -SET(LHDR_OSX_EXECUTABLE_NAME "${LHDR_NAME} ${LHDR_VERSION}") -SET(LHDR_OSX_EXECUTABLE_TARGET "Luminance_HDR_${LHDR_VERSION}") - -SET(LHDR_DOMAIN_FIRST "luminance-hdr") -SET(LHDR_DOMAIN_SECOND "com") -SET(LHDR_DOMAIN "${LHDR_DOMAIN_FIRST}.${LHDR_DOMAIN_SECOND}") diff -Nru luminance-hdr-2.5.0/CMakeLists.txt luminance-hdr-2.5.1/CMakeLists.txt --- luminance-hdr-2.5.0/CMakeLists.txt 2017-04-18 18:27:46.000000000 +0000 +++ luminance-hdr-2.5.1/CMakeLists.txt 2017-05-10 19:14:06.000000000 +0000 @@ -3,18 +3,22 @@ CMAKE_POLICY(SET CMP0043 OLD) # set include path for FindXXX.cmake files -set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/") +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/build_files/Modules") # Global variables for CMake -include(cmake/Version.cmake) -include(cmake/GlobalSettings.cmake) -include(cmake/CompilerSettings.cmake) -include(cmake/Internationalization.cmake) +include(build_files/Modules/Version.cmake) +include(build_files/Modules/GlobalSettings.cmake) +include(build_files/Modules/CompilerSettings.cmake) +include(build_files/Modules/Internationalization.cmake) + +IF(TIMER_PROFILING) + ADD_DEFINITIONS(-DTIMER_PROFILING) +ENDIF() # ======== Has branch prediction ======= include( CheckCXXSourceCompiles ) -check_cxx_source_compiles( "int main() { int x = 0; if( __builtin_expect((x),0) ) x = 1; return 0; }" HAS_BRANCH_PEDICTION ) +check_cxx_source_compiles( "int main() { int x = 0; if( __builtin_expect((x),0) ) x = 1; return 0; }" HAS_BRANCH_PREDICTION ) if( HAS_BRANCH_PREDICTION ) set( BRANCH_PREDICTION 1 ) @@ -34,8 +38,8 @@ find_package(Qt5Concurrent REQUIRED) find_package(Qt5Widgets REQUIRED) find_package(Qt5Gui REQUIRED) -find_package(Qt5WebKit REQUIRED) -find_package(Qt5WebKitWidgets REQUIRED) +find_package(Qt5WebEngineCore REQUIRED) +find_package(Qt5WebEngineWidgets REQUIRED) find_package(Qt5Xml REQUIRED) find_package(Qt5Sql REQUIRED) find_package(Qt5Svg REQUIRED) @@ -53,7 +57,7 @@ set(LIBS ${LIBS} ${QT_QTCORE_LIBRARIES} ${QT_QTGUI_LIBRARIES} ${QT_QTNETWORK_LIBRARIES} - ${QT_QTWEBKIT_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_QTSQL_LIBRARIES}) + ${QT_QTWEBENGINE_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_QTSQL_LIBRARIES}) FIND_PACKAGE(Git) IF(GIT_FOUND) @@ -190,7 +194,7 @@ ENDIF() IF(UNIX) IF(NOT APPLE) # Sadly on Linux Qt5 add global include paths in list of translation files, let's get rid of them - EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build/linux/sanitize_translations.sh + EXECUTE_PROCESS(COMMAND ${CMAKE_SOURCE_DIR}/build_files/platforms/linux/sanitize_translations.sh WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) ENDIF(NOT APPLE) ENDIF(UNIX) @@ -216,22 +220,19 @@ set(MACOSX_BUNDLE_LONG_VERSION_STRING "${LHDR_NAME} ${LHDR_VERSION}") set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${LHDR_VERSION}") set(MACOSX_BUNDLE_VERSION "${LHDR_VERSION}") - set(MACOSX_BUNDLE_ICON_FILE "${CMAKE_SOURCE_DIR}/images/luminance.icns") - set(MACOSX_BUNDLE_ICON "${CMAKE_SOURCE_DIR}/images/luminance.icns") + set(MACOSX_BUNDLE_ICON_FILE "${CMAKE_SOURCE_DIR}/program-icons/luminance.icns") + set(MACOSX_BUNDLE_ICON "${CMAKE_SOURCE_DIR}/program-icons/luminance.icns") set(MACOSX_BUNDLE_RESOURCES "${CMAKE_CURRENT_BINARY_DIR}/${LHDR_OSX_EXECUTABLE_NAME}.app/Contents/Resources") set(MACOSX_BUNDLE_GUI_IDENTIFIER "${LHDR_DOMAIN_SECOND}.${LHDR_DOMAIN_FIRST}") set(MACOSX_BUNDLE_BUNDLE_NAME "${LHDR_NAME}") - configure_file( ${CMAKE_SOURCE_DIR}/build/macosx/Info.plist.in + configure_file( ${CMAKE_SOURCE_DIR}/build_files/platforms/macosx/Info.plist.in ${CMAKE_BINARY_DIR}/Info.plist ) - configure_file( ${CMAKE_SOURCE_DIR}/build/macosx/create-dmg.sh.in + configure_file( ${CMAKE_SOURCE_DIR}/build_files/platforms/macosx/create-dmg.sh.in ${CMAKE_BINARY_DIR}/create-dmg.sh ) - FILE(GLOB LUMINANCE_QT_QM i18n-qt/*.qm) # ${QT_TRANSLATIONS_DIR}/qt_*.qm) - SET(LUMINANCE_FILES ${LUMINANCE_FILES} ${LUMINANCE_QT_QM}) - # icon files to copy in the bundle - SET(OSX_ICON_FILES "${CMAKE_SOURCE_DIR}/images/luminance.icns") + SET(OSX_ICON_FILES "${CMAKE_SOURCE_DIR}/program-icons/luminance.icns") # include the icns files in the target SET(LUMINANCE_FILES ${LUMINANCE_FILES} ${OSX_ICON_FILES}) @@ -263,8 +264,6 @@ TARGET_LINK_LIBRARIES(luminance-hdr-cli ${LUMINANCE_MODULES_CLI} ${LIBS}) # Unix ELSEIF(UNIX) - #FILE(GLOB LUMINANCE_QT_QM i18n-qt/*.qm) Qt5 translations now shipped by upstream - #SET(LUMINANCE_FILES ${LUMINANCE_FILES} ${LUMINANCE_QT_QM}) SET(LUMINANCE_FILES ${LUMINANCE_FILES}) ADD_EXECUTABLE(luminance-hdr ${LUMINANCE_FILES}) @@ -315,4 +314,4 @@ ENDIF() # Packaging must go at the bottom -include(${CMAKE_SOURCE_DIR}/build/Packaging.cmake) +include(${CMAKE_SOURCE_DIR}/build_files/Packaging.cmake) diff -Nru luminance-hdr-2.5.0/debian/changelog luminance-hdr-2.5.1/debian/changelog --- luminance-hdr-2.5.0/debian/changelog 2017-04-24 04:30:37.000000000 +0000 +++ luminance-hdr-2.5.1/debian/changelog 2017-05-12 06:35:24.000000000 +0000 @@ -1,3 +1,15 @@ +luminance-hdr (2.5.1-1dhor~zesty) zesty; urgency=medium + + * NEW: Selectable threshold for adjusting levels + * NEW: Optional Lanczos interpolation + * NEW: Antialiased display of images + * NEW: Navigation of images in fullscreen + * NEW: Online documentation + * many fixes in HDR creation for all profiles + * minor cosmetic fixes to the UI + + -- Dariusz Duma Wed, 10 May 2017 18:00:49 +0200 + luminance-hdr (2.5.0-1dhor~zesty) zesty; urgency=medium * NEW: New tonemapping operator ferradans11 diff -Nru luminance-hdr-2.5.0/debian/patches/hdpi_off luminance-hdr-2.5.1/debian/patches/hdpi_off --- luminance-hdr-2.5.0/debian/patches/hdpi_off 2017-04-23 22:09:20.000000000 +0000 +++ luminance-hdr-2.5.1/debian/patches/hdpi_off 1970-01-01 00:00:00.000000000 +0000 @@ -1,19 +0,0 @@ ---- luminance-hdr-2.5.0.orig/src/MainGui/main.cpp -+++ luminance-hdr-2.5.0/src/MainGui/main.cpp -@@ -90,9 +90,13 @@ int main( int argc, char ** argv ) - QCoreApplication::setApplicationName(LUMINANCEAPPLICATION); - QCoreApplication::setOrganizationName(LUMINANCEORGANIZATION); - -- QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); -- QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); -- -+// QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); -+// QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); -+#ifdef WIN32 //TODO: there are problems with HiDPI on X11, let's enable this only on Windows by now -+ QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); -+ QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); -+#endif -+ - Q_INIT_RESOURCE(icons); - QApplication application( argc, argv ); - diff -Nru luminance-hdr-2.5.0/debian/patches/luminance-qtwebkit.patch luminance-hdr-2.5.1/debian/patches/luminance-qtwebkit.patch --- luminance-hdr-2.5.0/debian/patches/luminance-qtwebkit.patch 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/debian/patches/luminance-qtwebkit.patch 2017-05-12 05:56:03.000000000 +0000 @@ -0,0 +1,332 @@ +--- luminance-hdr-2.5.1.orig/CMakeLists.txt ++++ luminance-hdr-2.5.1/CMakeLists.txt +@@ -38,8 +38,8 @@ find_package(Qt5Core REQUIRED) + find_package(Qt5Concurrent REQUIRED) + find_package(Qt5Widgets REQUIRED) + find_package(Qt5Gui REQUIRED) +-find_package(Qt5WebEngineCore REQUIRED) +-find_package(Qt5WebEngineWidgets REQUIRED) ++find_package(Qt5WebKit REQUIRED) ++find_package(Qt5WebKitWidgets REQUIRED) + find_package(Qt5Xml REQUIRED) + find_package(Qt5Sql REQUIRED) + find_package(Qt5Svg REQUIRED) +@@ -57,7 +57,7 @@ ENDIF(WIN32) + + set(LIBS ${LIBS} + ${QT_QTCORE_LIBRARIES} ${QT_QTGUI_LIBRARIES} ${QT_QTNETWORK_LIBRARIES} +- ${QT_QTWEBENGINE_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_QTSQL_LIBRARIES}) ++ ${QT_QTWEBKIT_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_QTSQL_LIBRARIES}) + + FIND_PACKAGE(Git) + IF(GIT_FOUND) +--- /dev/null ++++ luminance-hdr-2.5.1/luminance-hdr-2.5.0-qtwebkit.patch +@@ -0,0 +1,171 @@ ++diff -rupN luminance-hdr-2.5.0/CMakeLists.txt luminance-hdr-2.5.0-new/CMakeLists.txt ++--- luminance-hdr-2.5.0/CMakeLists.txt 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/CMakeLists.txt 2017-04-09 12:45:59.162231357 +0200 ++@@ -34,8 +34,8 @@ find_package(Qt5Core REQUIRED) ++ find_package(Qt5Concurrent REQUIRED) ++ find_package(Qt5Widgets REQUIRED) ++ find_package(Qt5Gui REQUIRED) ++-find_package(Qt5WebEngineCore REQUIRED) ++-find_package(Qt5WebEngineWidgets REQUIRED) +++find_package(Qt5WebKit REQUIRED) +++find_package(Qt5WebKitWidgets REQUIRED) ++ find_package(Qt5Xml REQUIRED) ++ find_package(Qt5Sql REQUIRED) ++ find_package(Qt5Svg REQUIRED) ++@@ -53,7 +53,7 @@ ENDIF(WIN32) ++ ++ set(LIBS ${LIBS} ++ ${QT_QTCORE_LIBRARIES} ${QT_QTGUI_LIBRARIES} ${QT_QTNETWORK_LIBRARIES} ++- ${QT_QTWEBENGINE_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_QTSQL_LIBRARIES}) +++ ${QT_QTWEBKIT_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_QTSQL_LIBRARIES}) ++ ++ FIND_PACKAGE(Git) ++ IF(GIT_FOUND) ++I file binari luminance-hdr-2.5.0/.git/index e luminance-hdr-2.5.0-new/.git/index sono diversi ++diff -rupN luminance-hdr-2.5.0/src/HelpBrowser/CMakeLists.txt luminance-hdr-2.5.0-new/src/HelpBrowser/CMakeLists.txt ++--- luminance-hdr-2.5.0/src/HelpBrowser/CMakeLists.txt 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/src/HelpBrowser/CMakeLists.txt 2017-04-09 12:45:59.181231204 +0200 ++@@ -28,7 +28,7 @@ QT5_WRAP_CPP(FILES_MOC ${FILES_H}) ++ QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) ++ ++ ADD_LIBRARY(helpbrowser ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H} ${FILES_HXX}) ++-qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebEngineCore WebEngineWidgets PrintSupport) +++qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebKit WebKitWidgets PrintSupport) ++ ++ SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} ${FILES_HXX} PARENT_SCOPE) ++ SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} helpbrowser PARENT_SCOPE) ++diff -rupN luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.cpp luminance-hdr-2.5.0-new/src/HelpBrowser/helpbrowser.cpp ++--- luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.cpp 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/src/HelpBrowser/helpbrowser.cpp 2017-04-09 12:57:33.073960371 +0200 ++@@ -166,8 +166,6 @@ HelpBrowser::HelpBrowser(QWidget* parent ++ HelpBrowser::HelpBrowser( QWidget* parent, const QString& /*caption*/, const QString& guiLanguage, const QString& jumpToSection, const QString& jumpToFile): ++ QMainWindow( parent ), ++ zoomFactor(1.0), ++- //m_textBrowser(new QTextDocument), ++- m_textBrowser(new QTextBrowser), ++ m_Ui(new Ui::HelpBrowser) ++ { ++ m_Ui->setupUi(this); ++@@ -347,13 +345,6 @@ void HelpBrowser::languageChange() ++ ++ void HelpBrowser::print() ++ { ++- /* TODO With this method images aren't loaded so I'm passing the html page to a QTextBrowser ++- m_Ui->htmlPage->page()->toHtml([this](const QString &result){ ++- this->m_textBrowser->setHtml(result); ++- this->printAvailable(); ++- }); ++- */ ++- m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); ++ this->printAvailable(); ++ } ++ ++@@ -365,19 +356,12 @@ void HelpBrowser::printAvailable() ++ if (dialog.exec()) ++ { ++ ++- m_textBrowser->print(&printer); +++ m_Ui->htmlPage->print(&printer); ++ } ++ } ++ ++ void HelpBrowser::printPreview() ++ { ++- /* TODO With this method images aren't loaded so I'm passing the html page to a QTextBrowser ++- m_Ui->htmlPage->page()->toHtml([this](const QString &result){ ++- this->m_textBrowser->setHtml(result); ++- this->printPreviewAvailable(); ++- }); ++- */ ++- m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); ++ this->printPreviewAvailable(); ++ } ++ ++@@ -392,7 +376,7 @@ void HelpBrowser::printPreviewAvailable( ++ ++ void HelpBrowser::paintRequested(QPrinter *printer) ++ { ++- m_textBrowser->print(printer); +++ m_Ui->htmlPage->print(printer); ++ } ++ ++ void HelpBrowser::searchingButton_clicked() ++@@ -789,6 +773,6 @@ void HelpBrowser::loadFinished(bool) { ++ statusBar()->showMessage(""); ++ } ++ ++-void HelpBrowser::linkHovered (const QString &url) { +++void HelpBrowser::linkHovered (const QString &url, const QString &, const QString &) { ++ statusBar()->showMessage(url); ++ } ++diff -rupN luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.h luminance-hdr-2.5.0-new/src/HelpBrowser/helpbrowser.h ++--- luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.h 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/src/HelpBrowser/helpbrowser.h 2017-04-09 12:55:41.611767473 +0200 ++@@ -64,8 +64,6 @@ ++ #include ++ #include ++ #include ++-//#include ++-#include ++ ++ class ScHelpTreeModel; ++ class QPrinter; ++@@ -132,10 +130,6 @@ protected: ++ QMap quickHelpIndex; ++ QMap > bookmarkIndex; ++ ++- // I need to keep this around because page()->toHtml( ) is asynchronous ++- //QSharedPointer m_textDocument; ++- QSharedPointer m_textBrowser; ++- ++ protected slots: ++ virtual void languageChange(); ++ void histChosen(QAction* i); ++@@ -215,7 +209,7 @@ protected slots: ++ ++ /*! \brief Restore Default Cursor */ ++ void loadFinished(bool); ++- void linkHovered (const QString &); +++ void linkHovered (const QString &, const QString &, const QString &); ++ signals: ++ void closed(); ++ ++diff -rupN luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.cpp luminance-hdr-2.5.0-new/src/HelpBrowser/sctextbrowser.cpp ++--- luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.cpp 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/src/HelpBrowser/sctextbrowser.cpp 2017-04-09 12:45:59.183231188 +0200 ++@@ -57,7 +57,7 @@ for which a new license (GPL+exception) ++ #include "sctextbrowser.h" ++ ++ ScTextBrowser::ScTextBrowser( QWidget * parent ) ++- : QWebEngineView(parent) +++ : QWebView(parent) ++ { ++ } ++ ++diff -rupN luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.h luminance-hdr-2.5.0-new/src/HelpBrowser/sctextbrowser.h ++--- luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.h 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/src/HelpBrowser/sctextbrowser.h 2017-04-09 12:45:59.184231179 +0200 ++@@ -45,9 +45,9 @@ for which a new license (GPL+exception) ++ #define SCTEXTBROWSER_H ++ ++ #include ++-#include +++#include ++ ++-class ScTextBrowser : public QWebEngineView +++class ScTextBrowser : public QWebView ++ { ++ Q_OBJECT ++ QUrl m_home; ++diff -rupN luminance-hdr-2.5.0/src/UI/CMakeLists.txt luminance-hdr-2.5.0-new/src/UI/CMakeLists.txt ++--- luminance-hdr-2.5.0/src/UI/CMakeLists.txt 2017-04-09 12:25:01.000000000 +0200 +++++ luminance-hdr-2.5.0-new/src/UI/CMakeLists.txt 2017-04-09 12:45:59.184231179 +0200 ++@@ -41,7 +41,7 @@ QT5_WRAP_CPP(FILES_MOC ${FILES_H}) ++ QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) ++ ++ ADD_LIBRARY(ui ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H}) ++-qt5_use_modules(ui Core Concurrent Gui Widgets WebEngineWidgets) +++qt5_use_modules(ui Core Concurrent Gui Widgets WebKitWidgets) ++ ++ SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} PARENT_SCOPE) ++ SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} ui PARENT_SCOPE) +--- luminance-hdr-2.5.1.orig/src/HelpBrowser/CMakeLists.txt ++++ luminance-hdr-2.5.1/src/HelpBrowser/CMakeLists.txt +@@ -28,7 +28,7 @@ QT5_WRAP_CPP(FILES_MOC ${FILES_H}) + QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) + + ADD_LIBRARY(helpbrowser ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H} ${FILES_HXX}) +-qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebEngineCore WebEngineWidgets PrintSupport) ++qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebKit WebKitWidgets PrintSupport) + + SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} ${FILES_HXX} PARENT_SCOPE) + SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} helpbrowser PARENT_SCOPE) +--- luminance-hdr-2.5.1.orig/src/HelpBrowser/helpbrowser.cpp ++++ luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.cpp +@@ -167,7 +167,7 @@ HelpBrowser::HelpBrowser( QWidget* paren + QMainWindow( parent ), + zoomFactor(1.0), + //m_textBrowser(new QTextDocument), +- m_textBrowser(new QTextBrowser), ++// m_textBrowser(new QTextBrowser), + m_Ui(new Ui::HelpBrowser) + { + m_Ui->setupUi(this); +@@ -347,13 +347,7 @@ void HelpBrowser::languageChange() + + void HelpBrowser::print() + { +- /* TODO With this method images aren't loaded so I'm passing the html page to a QTextBrowser +- m_Ui->htmlPage->page()->toHtml([this](const QString &result){ +- this->m_textBrowser->setHtml(result); +- this->printAvailable(); +- }); +- */ +- m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); ++// m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); + this->printAvailable(); + } + +@@ -365,19 +359,14 @@ void HelpBrowser::printAvailable() + if (dialog.exec()) + { + +- m_textBrowser->print(&printer); ++ // m_textBrowser->print(&printer); ++ m_Ui->htmlPage->print(&printer); + } + } + + void HelpBrowser::printPreview() + { +- /* TODO With this method images aren't loaded so I'm passing the html page to a QTextBrowser +- m_Ui->htmlPage->page()->toHtml([this](const QString &result){ +- this->m_textBrowser->setHtml(result); +- this->printPreviewAvailable(); +- }); +- */ +- m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); ++// m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); + this->printPreviewAvailable(); + } + +@@ -789,6 +778,7 @@ void HelpBrowser::loadFinished(bool) { + statusBar()->showMessage(""); + } + +-void HelpBrowser::linkHovered (const QString &url) { ++// void HelpBrowser::linkHovered (const QString &url) { ++void HelpBrowser::linkHovered (const QString &url, const QString &, const QString &) { + statusBar()->showMessage(url); + } +--- luminance-hdr-2.5.1.orig/src/HelpBrowser/helpbrowser.h ++++ luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.h +@@ -64,8 +64,6 @@ + #include + #include + #include +-//#include +-#include + + class ScHelpTreeModel; + class QPrinter; +@@ -134,7 +132,7 @@ protected: + + // I need to keep this around because page()->toHtml( ) is asynchronous + //QSharedPointer m_textDocument; +- QSharedPointer m_textBrowser; ++// QSharedPointer m_textBrowser; + + protected slots: + virtual void languageChange(); +@@ -215,7 +213,8 @@ protected slots: + + /*! \brief Restore Default Cursor */ + void loadFinished(bool); +- void linkHovered (const QString &); ++// void linkHovered (const QString &); ++ void linkHovered (const QString &, const QString &, const QString &); + signals: + void closed(); + +--- luminance-hdr-2.5.1.orig/src/HelpBrowser/sctextbrowser.cpp ++++ luminance-hdr-2.5.1/src/HelpBrowser/sctextbrowser.cpp +@@ -57,7 +57,8 @@ for which a new license (GPL+exception) + #include "sctextbrowser.h" + + ScTextBrowser::ScTextBrowser( QWidget * parent ) +- : QWebEngineView(parent) ++// : QWebEngineView(parent) ++ : QWebView(parent) + { + } + +--- luminance-hdr-2.5.1.orig/src/HelpBrowser/sctextbrowser.h ++++ luminance-hdr-2.5.1/src/HelpBrowser/sctextbrowser.h +@@ -45,9 +45,9 @@ for which a new license (GPL+exception) + #define SCTEXTBROWSER_H + + #include +-#include ++#include + +-class ScTextBrowser : public QWebEngineView ++class ScTextBrowser : public QWebView + { + Q_OBJECT + QUrl m_home; +--- luminance-hdr-2.5.1.orig/src/UI/CMakeLists.txt ++++ luminance-hdr-2.5.1/src/UI/CMakeLists.txt +@@ -47,7 +47,7 @@ QT5_WRAP_CPP(FILES_MOC ${FILES_H}) + QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) + + ADD_LIBRARY(ui ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H}) +-qt5_use_modules(ui Core Concurrent Gui Widgets WebEngineWidgets) ++qt5_use_modules(ui Core Concurrent Gui Widgets WebKitWidgets) + + SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} PARENT_SCOPE) + SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} ui PARENT_SCOPE) diff -Nru luminance-hdr-2.5.0/debian/patches/qtwebkit2 luminance-hdr-2.5.1/debian/patches/qtwebkit2 --- luminance-hdr-2.5.0/debian/patches/qtwebkit2 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/debian/patches/qtwebkit2 2017-05-12 06:19:07.000000000 +0000 @@ -0,0 +1,12 @@ +--- luminance-hdr-2.5.1.orig/src/HelpBrowser/helpbrowser.cpp ++++ luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.cpp +@@ -381,7 +381,8 @@ void HelpBrowser::printPreviewAvailable( + + void HelpBrowser::paintRequested(QPrinter *printer) + { +- m_textBrowser->print(printer); ++ // m_textBrowser->print(printer); ++ m_Ui->htmlPage->print(printer); + } + + void HelpBrowser::searchingButton_clicked() diff -Nru luminance-hdr-2.5.0/debian/patches/series luminance-hdr-2.5.1/debian/patches/series --- luminance-hdr-2.5.0/debian/patches/series 2017-04-23 22:09:12.000000000 +0000 +++ luminance-hdr-2.5.1/debian/patches/series 2017-05-12 06:19:02.000000000 +0000 @@ -1 +1,2 @@ -hdpi_off +luminance-qtwebkit.patch +qtwebkit2 diff -Nru luminance-hdr-2.5.0/html/dcraw.html luminance-hdr-2.5.1/html/dcraw.html --- luminance-hdr-2.5.0/html/dcraw.html 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/html/dcraw.html 1970-01-01 00:00:00.000000000 +0000 @@ -1,133 +0,0 @@ - - - - - Raw convertion parameters - - - -

Raw convertion parameters

-This page gives some details about the raw image format conversion process that takes place in LuminanceHDR. -
    -
  1. Introduction
  2. -
  3. Tweaking the conversion process
  4. -
  5. Dcraw manual page excerpt
  6. -
  7. Links
  8. -
- -

Introduction

-

-Each time the user: -

    -
  • loads a single raw file in the main workspace
  • -
  • specifies a set of raw files in the "File -> New Hdr..." wizard
  • -
-a RAW->TIFF conversion transparently takes place by calling the dcraw [1] executable (by Dave Coffin).
-LuminanceHDR calls dcraw to convert a raw file [2] to a (either 8 bit or 16 bit) TIFF file.
- -

Tweaking the conversion process

-You can tweak the way dcraw operates by setting specific command line switches (aka options or parameters) in the Tools -> Preferences... -> Raw Import section (here's a screenshot).
-
-The -T switch (TIFF output, see below) is the only required parameter.
-In this particular case we have also specified the optional -4 parameter to ask dcraw to obtain a 16 bit (TIFF) file.
-Starting with LuminanceHDR 1.9.3 the default options for calling dcraw are -T -4 -q 3.
-The dcraw's manual page lists all the available options.
-An excerpt is available below, for the latest manual page follow this reference [3].
- - -

Dcraw manual page excerpt

-Here's an excerpt from dcraw's man page (Retrieved: October 30, 2007).

-
-OPTIONS
--v
-    Print verbose messages, not just warnings and errors. 
--c
-    Write decoded images or thumbnails to standard output. 
--e
-    Extract the camera-generated thumbnail, not the raw image. You'll get either a JPEG or a PPM file, depending on the camera. 
--z
-    Change the access and modification times of an AVI, JPEG, TIFF or raw file to when the photo was taken, assuming that the camera clock was set to Universal Time. 
--i
-    Identify files but don't decode them. Exit status is 0 if dcraw can decode the last file, 1 if it can't. -i -v shows metadata. 
-    dcraw cannot decode JPEG files!! 
--d
-    Show the raw data as a grayscale image with no interpolation. Good for photographing black-and-white documents. 
--D
-    Same as -d, but totally raw (no color scaling). 
--h
-    Output a half-size color image. Twice as fast as -q 0. 
--q 0
-    Use high-speed, low-quality bilinear interpolation. 
--q 1
-    Use Variable Number of Gradients (VNG) interpolation. 
--q 2
-    Use Patterned Pixel Grouping (PPG) interpolation. 
--q 3
-    Use Adaptive Homogeneity-Directed (AHD) interpolation. 
--f
-    Interpolate RGB as four colors. Use this if the output shows false 2x2 meshes with VNG or mazes with AHD. 
--m number_of_passes
-    After interpolation, clean up color artifacts by repeatedly applying a 3x3 median filter to the R-G and B-G channels. 
--n noise_threshold
-    Use wavelets to erase noise while preserving real detail. The best threshold should be somewhere between 100 and 1000. 
--b brightness
-    By default, dcraw writes 8-bit PGM/PPM/PAM with a BT.709 gamma curve and a 99th-percentile white point. If the result is too light or too dark, -b lets you adjust it. Default is 1.0. 
--4
-    Write 16-bit linear pseudo-PGM/PPM/PAM with no gamma curve, no white point, and no -b option. 
--T
-    Write TIFF output (with metadata) instead of PGM/PPM/PAM. 
--k black
-    Set the black point. Default depends on the camera. 
--K darkframe.pgm
-    Subtract a dark frame from the raw data. To generate a dark frame, shoot a raw photo with no light and do dcraw -D -4 -j -t 0. 
--w
-    Use the white balance specified by the camera. If this is not found, print a warning and use another method. 
--a
-    Calculate the white balance by averaging the entire image. 
--A left top width height
-    Calculate the white balance by averaging a rectangular area. First do dcraw -j -t 0 and select an area of neutral grey color. 
--r mul0 mul1 mul2 mul3
-    Specify your own raw white balance. These multipliers can be cut and pasted from the output of dcraw -v. 
-no white balance option
-    Use a fixed white balance based on a color chart illuminated with a standard D65 lamp. 
-+M or -M
-    Use (or don't use) any color matrix from the camera metadata. The default is +M if -w is set, -M otherwise. This option only affects Olympus, Leaf, and Phase One cameras. 
--C red_mag blue_mag
-    Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration. 
--H 0
-    Clip all highlights to solid white (default). 
--H 1
-    Leave highlights unclipped in various shades of pink. 
--H 2
-    Blend clipped and unclipped values together for a gradual fade to white. 
--H 3-9
-    Reconstruct highlights. Low numbers favor whites; high numbers favor colors. Try -H 5 as a compromise. If that's not good enough, do -H 9, cut out the non-white highlights, and paste them into an image generated with -H 3. 
--o [0-5]
-    Select the output colorspace when the -p option is not used:
-    0   Raw color (unique to each camera)
-    1   sRGB D65 (default)
-    2   Adobe RGB (1998) D65
-    3   Wide Gamut RGB D65
-    4   Kodak ProPhoto RGB D65
-    5   XYZ 
--p camera.icm [ -o output.icm ]
-    Use ICC profiles to define the camera's raw colorspace and the desired output colorspace (sRGB by default). 
--p embed
-    Use the ICC profile embedded in the raw photo. 
--t [0-7,90,180,270]
-    Flip the output image. By default, dcraw applies the flip specified by the camera. -t 0 disables all flipping. 
--s [0..N-1] or -s all
-    If a file contains N raw images, choose one or "all" to decode. For example, Fuji Super CCD SR cameras generate a second image underexposed four stops to show detail in the highlights. 
--j
-    For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one raw pixel. 
-
- -

Links

-
-[1]http://cybercom.net/~dcoffin/dcraw/
-[2]http://en.wikipedia.org/wiki/Raw_image_format
-[3]http://cybercom.net/~dcoffin/dcraw/dcraw.1.html
-
- - - diff -Nru luminance-hdr-2.5.0/html/faq.html luminance-hdr-2.5.1/html/faq.html --- luminance-hdr-2.5.0/html/faq.html 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/html/faq.html 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - LuminanceHDR FAQ - - - -

FAQ for LuminanceHDR

- - -
-
Q: What is the meaning of the name LuminanceHDR?
-
A: The name can be decomposed in 3 parts: Qt-pfs-gui. -
    -
  1. Qt: the program uses Qt4 (www.trolltech.com) to show its graphical widgets.
  2. -
  3. pfs: the main backend library and original sourcecode base.
  4. -
  5. gui: this stands simply for graphical user interface.
  6. -
-
- -
Q: What is the meaning of the various settings for tone mapping operator X?
-
A: To answer precisely this question one would have to explain the inner workings of the tone mapping operator X, in terms of the original research paper.
-At the end of the day all that matters (to some people, at least) is to fiddle with the settings until you obtain a nice result. -
- -
-
Q: Why can't LuminanceHDR transfer the exif tags to TIFF files?
-
A: Because the library LuminanceHDR uses to perform this task (exiv2) doesn't support writing to tiff files yet. It's in the working, though.
- -
-
Q: Should I store JPEG or RAW files for HDR?
-
A: Both give the same result, provided you capture all the dynamic range in the scene. This means that with RAW files you may need to capture less files than with JPEGs. On the other hand creating an HDR with JPEG files is more "lightweight" process (reduced memory footprint).
- -
-
Q: Where can I get information about all the various HDR formats?
-
A: An overview (rather technical) can be found at http://www.anyhere.com/gward/hdrenc/hdr_encodings.html. -
    -
  • OpenEXR: Industrial Light and Magic format, widespread use, best compression ratios. www.openexr.com
  • -
  • LogLuv TIFF: see http://en.wikipedia.org/wiki/Logluv_TIFF and http://www.anyhere.com/gward/pixformat/tiffluv.html
  • -
  • Radiance RGBE: see http://en.wikipedia.org/wiki/Radiance_%28software%29#HDR_image_format
  • -
  • PFS: This format stores the binary internal (float) representation of images. It is very size demanding, and it supported only by pfstools/pfscalibration/pfstmo, LuminanceHDR and a few other applications. On the other hand it is a lossless format and supports metadata (tags).
  • -
  • Float TIFF (aka 32 bit TIFF): very size demanding (similar to pfs above).
  • -
-
- -
-
Q: Can we have the tonemapping dialog apply its settings as soon as the user changes a value? In other words, can we avoid having an "apply" button?
-
A: Given how the tone mapping panel is implemented right now, this possibility has been discarded.
- -
- - diff -Nru luminance-hdr-2.5.0/html/hints.html luminance-hdr-2.5.1/html/hints.html --- luminance-hdr-2.5.0/html/hints.html 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/html/hints.html 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ - - - - - Hints & Tips for LuminanceHDR - - - -

Hints & Tips for LuminanceHDR

-
    -
  1. Single Raw file workflow
  2. -
  3. Post-processing of the LDR
  4. -
  5. Align_image_stack
  6. -
- -

Single Raw file workflow

-

You can load directly a raw file in LuminanceHDR via the "File->Load Hdr..." menu item. Doing so you will be able to tone map directly this single raw file. This means that there is no need to create different exposures in Ufraw from your raw file.

-

When the user wants to load a single raw file in the main workspace a RAW->TIFF conversion takes place by calling the dcraw executable.
-For more information please read the page about Raw Conversion. -

-

If you still don't like what LuminanceHDR does with your raw file and you want to process you raw file directly before loading it in LuminanceHDR (white balance, color profile, and so on), you can use Ufraw to tweak the color settings of your raw file, and then save the result as a 16-bits tiff file.
-Just remember to save the result as a 16-bits file, or you'll lose some dynamic range in the process.

- -

Post-processing of the LDR

-

-

    -
  1. If you don't like the result of a specific tone mapping operator, please keep in mind that after the tone mapping step you can still use tools like GIMP to post process the resulting image. For example, you can still fix the brightness, change the gamma or the levels, and so on.
  2. -
  3. Some users have reported [1] pleasant results combining in GIMP 2 LDRs: one obtained with Fattal and the other one with Drago. Drago for the first layer and Fattal for the second in overlay mode (70% can be a good starting point). This is not a silver bullet technique, these values can be thought as a starting point, you can then go on tweaking the opacity value and the tone mapping parameters, your mileage may vary.
  4. -
  5. You can also put the Fattal image down as the master and then layer the Drago image on top in overlay mode with c.50% opacity [1].
    -[1] http://www.flickr.com/groups/luminance/discuss/72157600715644855/
  6. -
-

- -

Align_image_stack

-

align_image_stack is a tool that can be found in the hugin project (http://hugin.sf.net). It is a standalone tool (an exe in windows) that can perform various functions, we use it in LuminanceHDR to do what it says, i.e. to align a stack of (LDR) images.
-Linux
-As of today (23 Nov 2007) the hugin project has not published a release with align_image_stack in it yet (they are working hard for their next release). Linux users have to checkout the project's subversion repository and compile the sources. On this page ( http://luminance.wiki.sourceforge.net/align_image_stack ) you can find how to do that.
-Mac OS X
-The align_image_stack executable has already been included in the dmg file you downloaded.
-Windows
-In windows the align_image_stack.exe file has to stay in the same directory of the luminance.exe file (or, as an alternative, in one of the directories listed in the PATH environment variable). -

- - - Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/batch-1.jpg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/batch-1.jpg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/copy_exif.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/copy_exif.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/mainwin.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/mainwin.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/projectiveTransformationDialog.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/projectiveTransformationDialog.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/raw_conversion.jpg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/raw_conversion.jpg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/resize.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/resize.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/snap-qt4_4.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/snap-qt4_4.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/snap-qt4_5.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/snap-qt4_5.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/snap-qt4_6.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/snap-qt4_6.jpeg differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/html/images/tonemapdialog.jpeg and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/html/images/tonemapdialog.jpeg differ diff -Nru luminance-hdr-2.5.0/html/index.html luminance-hdr-2.5.1/html/index.html --- luminance-hdr-2.5.0/html/index.html 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/html/index.html 1970-01-01 00:00:00.000000000 +0000 @@ -1,21 +0,0 @@ - - - - - Qtfspgui Help, Main Index Page - - - -

LuminanceHDR Documentation

- - - - - - diff -Nru luminance-hdr-2.5.0/html/manual.html luminance-hdr-2.5.1/html/manual.html --- luminance-hdr-2.5.0/html/manual.html 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/html/manual.html 1970-01-01 00:00:00.000000000 +0000 @@ -1,291 +0,0 @@ - - - - - LuminanceHDR Manual - - - -

LuminanceHDR Manual

-
    -
  1. Introduction
  2. -
      -
    1. Terminology
    2. -
    3. Summary of features
    4. -
    -
  3. Using LuminanceHDR
  4. -
      -
    1. The main window
    2. -
        -
      1. The menubar
      2. -
      3. The toolbar
      4. -
      5. The workspace
      6. -
      7. Visualization of an HDR
      8. -
      9. Operations on an HDR
      10. -
      -
    3. The Creation of an HDR
    4. -
    5. Projective transformations
    6. -
    7. The Resize tool
    8. -
    9. Interactive Tone mapping
    10. -
        -
      1. The tone mapping operators and their parameters
      2. -
      3. The tone mapping settings file
      4. -
      -
    11. Batch Tone Mapping
    12. -
    13. Preferences
    14. -
        -
      1. RAW Import
      2. -
      3. HDR Visualization
      4. -
      5. Tone mapping
      6. -
      7. Tiff Options
      8. -
      -
    15. Copy Exif Data
    16. -
    -
  5. The menu reference
  6. -
- -

Introduction

-LuminanceHDR is an open source graphical user interface application that provides a workflow for HDR imaging. - -

Terminology

-
-
HDR
-
Stands for "High Dynamic Range". An HDR image is an image which presents more than 8 bit per color channel. Most CRTs, LCDs and printers only have a limited dynamic range, and can display only LDR images (see below). Thus various methods of "converting" HDR images into a viewable format have been developed, generally called "tone mapping".
-
LDR
-
Stands for "Low Dynamic Range". The most common image formats, such as JPEG, PNG, GIF, ... have 8 bits per color channel, LDR is just another umbrella definition.
-
Tone map
-
Tone mapping is the method of converting an HDR into a LDR. Various algorithms exist for this purpose, and in this context they are also known as "tone mapping operators", or in this manual simply as "operator". Each operator is represented in the interactive tone mapping window as a "tab".
-
TMO
-
Shorthand for "Tone Mapping Operator".
-
RAW
-
Another umbrella definition for several (minimally processed) image formats. Raw files can have 12 or 14 bits per color channel, but noise usually cuts down the available dynamic range to something like 1000:1, roughly 10 bits. For all intents and purposes they are HDR files.
-
Anti-ghosting
-
The HDR creation process involves merging a stack of images. An object changing position in the image set creates a strange effect in which the object is partially visible (like a ghost) in the final HDR. This problem can be corrected by automatic or manual procedures.
-
- -

Summary of features

-Current supported features include: -
    -
  1. Create an HDR from a set of files.
  2. -
  3. Tone map an HDR image to get a LDR image.
  4. -
  5. Save and load HDR images.
  6. -
  7. Rotate and resize HDR images.
  8. -
  9. Apply projective transformations to HDR images.
  10. -
  11. Copy exif data between sets of images.
  12. -
-The first feature is accessible via the "File -> New Hdr..." wizard: in order to create an HDR the user can either load a set of JPEG files, a set of RAW files, or a set of TIFF files (8bit or 16bit).
-Raw files are processed with dcraw in order to obtain a (8 or 16 bit) tiff file. For more information read this page.
-The pictures must have been taken at the same scene, with different exposure settings (change the exposure time and/or aperture, and use a tripod if you have one). The newly created HDR will be available in the workspace as soon as the HDR creation wizard has ended.
-The input files can be aligned via two alignment engines: align_image_stack and MTB.
-The set of images can contain moving objects. This can result in an (unwanted) effect called ghosting. LuminanceHDR provides an interactive anti-ghosting tool that can help avoid such artifacts.
-Read the chapter about the creation of an hdr for more information about the alignment engines and the interactive anti-ghosting tool.
-To tone map an HDR file to get an LDR image (second feature) you can press the "Tonemap the HDR" button.
-Via the "File -> Open Hdr..." wizard you can choose to load in the workspace an HDR image image file, and the "File->Save Hdr as..." item lets you save the currently selected hdr image to a HDR image file format (third feature).
-Users can also rotate and resize (fourth feature) the currently selected hdr image via the "Image" menu item, see below.
-It is also possible to apply panoramic (projective) transformation to a Hdr image via the "Image" menu item (fifth feature).
-In order to create an HDR image LuminanceHDR requires to have a set of images with exif data in it. LuminanceHDR requires this information to get the exposure settings for an image in the set. When LuminanceHDR doesn't find this information in an image it warns the user and aborts the hdr creation process. To cope with this requirement LuminanceHDR provides a panel that performs a one-to-one copy of the exif data between two sets of files (sixth feature). - - -

Using LuminanceHDR

-This chapter describes the most important elements of LuminanceHDR: the Main window, the "New Hdr..." wizard procedure, the Resize tool, the interactive tone mapping window, the batch tone mapping , the copy exif data tool and the Preferences panel. - -

The main window

-Here's the main window that you can see once the program has launched.
- - -
-

The menubar

-At the very top you can see the menubar which, as its name implies, contains the various menus. When an item in a menu is "grayed out" it means that you cannot use (because it doesn't make sense) that particular function at that time. For example you cannot tone map an HDR unless you have at least one HDR image loaded in the workspace. -In case the text describing an item in a menu is not clear enough, below you can find a complete reference of all the items contained in all the menus. - -

The toolbar

-Below the menubar you can see the toolbar. It simply contains some of the most frequently used functions listed in the menus: "New HDR...", "Open HDR...", "Save HDR as...", "Tonemap the HDR" and "Exit". Again, if an item is "grayed out" it means that you cannot use (because it doesn't make sense) that particular function at that time. - -

The workspace

-The main gray area is the workspace. Here you can see all the HDR images which you can work on. As soon as the program is launched the workspace is empty. To have an HDR in the workspace you can either load an existing one (File->Open Hdr...) or create a new one (File->New Hdr...). - -

Visualization of an HDR

-All of the visualization options do not modify the current HDR, they are only a visualization tool.
-In the picture above you can see what an HDR image looks like once it is loaded in the workspace. -From left to right, in an HDR image titlebar you can see: -
    -
  1. A gamma combobox, which changes the visualization brightness.
  2. -
  3. The green histogram with its blue "histogram selection" (you can use the mouse to drag it and/or move its boundaries).
  4. -
-In the View menu you can find the visualization options, which fall in 2 categories: -
    -
  1. Zoom options: (These are: View->Fit to window, Normal size, Zoom in, Zoom out).
  2. -
  3. Histogram options: (all under: View->HDR Histogram->...)
  4. -
-The zoom options are self explanatory, they deal with the fitting of the HDR in its containing window. -
-

The histogram options require more explanation: we somehow have to visualize an HDR image on a CRT or LCD, even if they can only show a normal LDR with 8 bit per color channel. So a simple "luminosity compression" algorithm is performed.
-The problem is that when an HDR has a "wide" histogram, (a high gamut of dynamic range) its not possible, even with this (simple) "luminosity compression" algorithm, to show correctly at the same time all the regions of different luminosity in the image (this indeed would be the tone mapping's job).
-So you may ask: "Why do we need this tool?"
-The answer is that, for example, you may want to visualize correctly all the regions of luminosity of your HDR image by:

-
    -
  1. narrowing down the range of the visible histogram (View->HDR Histogram->Low Dynamic Range)
  2. -
  3. dragging repeatedly the blue rectangle over the different areas of the green histogram.
  4. -

- - -

Operations on an HDR

-As soon as at least one HDR image has been loaded in the workspace you can: -
    -
  • Rotate it (Image->Rotate CounterClockWise or Image->Rotate ClockWise): Rotating an HDR modifies the HDR itself.
  • -
  • Resize it, i.e. scale it (Image -> Resize the Hdr...): Resizing an HDR modifies the HDR itself.
  • -
  • Save it (File->Save Hdr as...): This is useful when you have just created an HDR from a set of JPEGs (or RAWs or TIFFs) via the "File->New Hdr..." wizard.
  • -
  • Apply projective transformations (Image->Projective Transformation...): This operation modifies the current HDR.
  • -
  • Tone map it (Image->Tonemap the Hdr...): Tone mapping an HDR involves showing another window, called "Interactive Tone Mapping window" which uses the HDR as a source to create an LDR.
  • -

- - -

The Creation of an HDR

-You can access the wizard that will guide you through the process of creating a new HDR image via the "File -> New Hdr..." menu item.
-On the first page the wizard will ask you to select the set of images (of the same scene, but taken at different exposures) that are going to contribute to the final hdr (supported input: jpeg, raw and tiff -8 and 16 bit-).
-Even if LuminanceHDR doesn't find the required exif data (Shutter Speed & Aperture) in your image set you can still proceed creating an HDR. To do so you have to insert manually the EV (exposure values) or stop difference values for the images in your the set.
-The first page of the wizard enables the user to apply an automatic alignment step to the images in the set. It is possible to use one of two alignment options (or "engines"): align_image_stack and MTB.
-The first option is usually a good choice (MTB works only on LDR images and has a simpler model that does not take into account rotation).
-If your image set consists of LDR images (JPEG, 8 bit TIFF, or RAW files converted to tiff without the -4 switch) the second step of the wizard will show you a window that can be used to perform some "pre merging" editing activities.
-The first feature will enable the user to add to each image in the set additional horizontal/vertical offsets.
-The user is able to shift each image in set by one pixel by first selecting an image in the left (editable) list and then clicking one of the arrow buttons in the bottom-left panel. The same effect can also be obtained by using one of the WSAD or IKJL key combinations. Pressing Shift will shift by ten pixels, pressing control will shift by 50 pixels and pressing both Shift and Control will shift by 100 pixels.
-By dragging a rectangle with the mouse, the user can also select a crop area for all the images in the set. Clicking the "Crop All Images" button will effectively crop the images in the set.
-This window contains also the interactive anti-ghosting feature.
-The user switches to anti-ghosting mode by pressing the "Anti-Ghosting" button. It is then possible to draw a mask over the regions of the images that contain moving objects.
-The user can select the size of the brush, its strength and whether the brush is adding or removing the mask.
-The same window contains a button that enables the user to save the set of images after all the cropping has taken place and with all the anti-ghosting masks and shifts applied. The images will be saved in TIFF format, and the mask is saved as a 0-valued alpha channel in the image set.
-The following page of the wizard will also ask you which kind of configuration you want to use to create the hdr from the source images: usually the first choice leads to good results, so feel free to accept the default "Config 1" option by pressing next.
-If you think that the results can be improved you can try one of the other predefined configurations.
-If you want to fiddle with settings you can check the "custom" option and another page of the wizard will show up with a complete set of configurations. It is worth mentioning that you should use the custom option as a last resort because the predefined configurations (which are a sub-set of the all possible configurations you can have in the custom configuration panel) are known to yield good results.
- - - -

Projective Transformations

-You can access this feature via the "Image -> Projective Transformation..." menu item.
-With this tool the user is able to apply projective transformations to a Hdr image. This is useful if you shoot mirrorball Hdrs and you want to unwrap them, for example.
-The Angular projection accepts an Angle parameter which defines how many degrees from the viewing direction the projection should cover.
- - -

The Resize tool

-You can access this feature via the "Image -> Resize the Hdr..." menu item.
- - -
-

Interactive Tone Mapping

-With this tool the user is able to get an LDR from an HDR.
-
-The most important item in the Tone mapping window is the "Tone mapping Panel" (shown on the left). You can toggle its visibility via the first button in the toolbar. The "Tone mapping Panel" is actually a dockbar, so you can make it float or dock it in the left or right areas of the window.
-At the top you can change (via a combobox) the size of the resulting image. It is usually a good idea to work on a smaller scale image while trying out the TMOs, because some of them can be very cpu-intensive.
-Operators may behave differently depending on the chosen size.
-The tone mapping step first applies to the HDR the gamma value specified by the pregamma value, then the tone mapping operator is applied.
-
    -
  • Pregamma changes the gamma in the HDR before the tone mapping: depending on the chosen tone mapping operator this can yield unexpected effects, like color saturation.
  • -
  • The tone mapping operator transforms an HDR into a LDR.
  • -
-NOTE: the post-gamma operation (typical of previous versions of LuminanceHDR) can be performed via the "Correct Histogram" button.
-With the "Correct Histogram" button you can tweak the histogram of the current LDR image, the tool has been designed to be similar to the one in GIMP: you can drag the triangular handles to set the new value. - -

The tone mapping operators and their parameters

-This section aims to be a reference for all the tone mapping operators and related options.
-Have a look at http://osp.wikidot.com/parameters-for-photographers in the meanwhile.
- -

The tone mapping settings file

-Via the "Save..." button it is also possible to save in a text file (the filename extension is "txt"): -
    -
  • the currently selected tone mapping operator and its related settings.
  • -
  • the values of the pregamma settings.
  • -
-NOTE: LuminanceHDR 1.8.4 uses a new file format (the postgamma option has been removed).
-This is useful if you find that are often using some specific operator (and pregamma and postgamma settings) and don't want to manually set the values each time.
-The "Load..." button lets you specify the file tone mapping settings filename that you want to load.
-The "Apply settings" button applies the settings contained in the tone mapping settings file that has been loaded. This is useful when, after playing around with the values, you want to get back to the file's values.

- -

Batch Tone Mapping

-This window lets you tone map a batch of M hdr files using N tone mapping setting files. After the process you'll get M*N LDR results.
-The top-left list contains the input hdrs, the top-right list contains the input tone mapping setting files.
-You have to specify an output directory where the output LDR files will be saved to.
-You can also always see what's happening in the Log panel at the bottom. You can filter the visualization of the log messages using the drop-down menu on the bottom-left and the text-field at the bottom-right of the window.
- - - -

Preferences

-This window lets you configure the global behavior of LuminanceHDR. You can access this tool via the "Tools -> Preferences..." menu item.

- -

RAW Import

-LuminanceHDR uses dcraw to convert RAW files. For more information please refer to the specific page.

- -

HDR Visualization

-Click on the buttons to pop-up a window that lets you choose which color to use for the nan/inf and for the negative values.
-
- -
-

Tone mapping

-LuminanceHDR needs a directory path where it will save some intermediate temporary files. Here you can specify this path.
-You can also specify how many threads you want to use for the Batch Tone Mapping feature (and the file format you want to save the images to). Each thread gets allocated to a different CPU.
-
- -
-

Tiff Options

-Here you can choose which TIFF-HDR format LuminanceHDR will use to save an HDR image.
-
-LogLuv TIFF is the appropriate format for most cases because it stores the hdr data in a reasonable amount of space (i.e. file size). Even if it is a 16 bit format, it can store floating point data.
-The Float TIFF format has to be used only if you want to load your tiff in another application that cannot open the LogLuv format.

- - - - -

Copy Exif Data

-You can access this window via the "Tools -> Copy Exif Data..." menu item.
-
-With this window you will be able to copy the exif data contained in a set of files (the sources) into another set of files (the destinations).
-This is a one-to-one data copy, i.e. the first file in the destination list gets the exif data from the first file in the sources list and so on.
-This is useful if you lost your original exif data after processing your images. - -

The Menu reference

-In this section you can find a complete reference describing what all the items in the menu do. -
-
File -> New Hdr...
-
launches a wizard that enables you to create an HDR starting from either a set of JPEGs or a set of RAWs, or a set of 8 or 16 bit TIFF files.
-
File -> Open Hdr...
-
launches a window that lets you load in the workspace either an existing HDR image file format (OpenEXR, Radiance RGBE, PFS stream) or a RAW file or also a TIFF file.
-
File -> Save Hdr as...
-
launches a window that lets you save the HDR image currently selected in the workspace to a HDR image file format (OpenEXR, Radiance RGBE, PFS stream, or 32bit or LogLuv TIFF).
-
File -> Exit
-
Exits the program
-
-
Image -> Rotate CounterClockWise
-
modifies the HDR image currently selected in the workspace by rotating it counterclockwise.
-
Image -> Rotate ClockWise
-
modifies the HDR image currently selected in the workspace by rotating it clockwise.
-
Image -> Projective Transformation...
-
launches a window that lets you apply a projective (aka panoramic) transformation to the HDR image currently selected in the workspace.
-
Image -> Resize the Hdr...
-
launches a window that lets you resize the HDR image currently selected in the workspace.
-
Image -> Tonemap the Hdr...
-
launches a window that lets you tone map the HDR image currently selected in the workspace.
-
-
View -> HDR Histogram -> Fit to dynamic range
-
sets the boundaries of the blue "histogram selection" rectangle to the leftmost and rightmost values of the histogram.
-
View -> HDR Histogram -> Low dynamic range
-
sets the boundaries of the blue "histogram selection" rectangle to values which enable a correct representation of the image on a LCD/CRT. The "histogram selection" rectangle can later be dragged.
-
View -> HDR Histogram -> Shrink dynamic range
-
sets the boundaries of the blue "histogram selection" rectangle closer to each other.
-
View -> HDR Histogram -> Extend dynamic range
-
sets the boundaries of the blue "histogram selection" rectangle away to each other.
-
View -> HDR Histogram -> Decrease Expos
-
moves the boundaries of the blue "histogram selection" rectangle left
-
View -> HDR Histogram -> Increase Exposure
-
moves the boundaries of the blue "histogram selection" rectangle right.
-
-
Tools -> Preferences...
-
launches a window that lets you configure the global behaviour of LuminanceHDR.
-
Tools -> Copy Exif Data...
-
launches a window that lets you copy (a one-to-one copy) the exif tags in a set of images into another set.
-
-
Help -> Documentation...
-
Launches the help window containing this documentation.
-
- - - - diff -Nru luminance-hdr-2.5.0/i18n/lang_cs.ts luminance-hdr-2.5.1/i18n/lang_cs.ts --- luminance-hdr-2.5.0/i18n/lang_cs.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_cs.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - O Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ A&utoři - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &Poděkování - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement &Licenční ujednání - + &OK &OK @@ -110,290 +103,290 @@ BatchHDRDialog - Batch HDR Dialog - + Batch HDR + - + Number of bracketed images: - + - - + + Select the number of bracketed pictures used to create the HDRs - + - + Output Výstup - + + Choose an HDR output file format + + + + Predefined profile: - + - - Choose an HDR output file format - + + Output format: + - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - - - - + Alignment Zarovnání - + Auto align the bracketed pictures - + - + Auto-align images - + - + Use MTB (Median Threshold Bitmap) engine - + - - MTB - + + &MTB + - + Use Hugin's align_image_stack engine - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - - Progress - - - - + &Cancel &Storno - + &Start - + - + &Close &Zavřít - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + - - Auto anti-ghosting - + + Output folder: + - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - + + Artifact-free High Dynamic Range Imaging + - - - Select... - + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - + + O. Gallo and others + - - Output folder: - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory - + - + Choose a output directory - + - - - + + + Warning - + - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? - + - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... - + - + Loading files... - + - + Completed with errors - + - + Completed without errors - + - + Error: missing EXIF data - + - + Aligning... Zarovnávám... - + Creating HDR... - + - + Doing auto anti-ghosting... - + - + Written - + - + Error: - + - + Aborting... Přerušuji... @@ -408,7 +401,7 @@ HDR Images to Convert - + @@ -418,77 +411,77 @@ Add Directory (Alt+D) - + Alt+D - + Add Files (Alt+F) - + Alt+F - + Remove Files (Alt+R) - + Alt+R - + Tone Mapping Settings - + Add Directory (Alt+I) - + Alt+I - + Add Files (Alt+L) - + Alt+L - + Add from Database (Alt+B) - + Alt+B - + Remove Settings (Alt+M) - + Alt+M - + @@ -496,11 +489,6 @@ Seznam souborů nastavení pro použití k přemapování každého HDR - - Specify output folder for the tone mapped files - Vybrat výstupní adresář pro přemapované soubory - - Output Výstup @@ -508,156 +496,174 @@ Output Image Width: - + + + + + Output Folder: + + + + + + Specify output folder for the tone mapped files + Vybrat výstupní adresář pro přemapované soubory + + + + Selec&t... + - + + + Width of tonemapped image in percent of original image + + + + % - + - + Output Format: - + - - Output Folder: - + + Image format of tonemapped images + - - Selec&t... - + + Image format options + - + Conversion Log - + - + Batch operations report Zpráva hromadného zpracování - - &Show only: - &Ukaž jen: + + Show onl&y: + - + Filter messages based on severity Filtrovat zprávy podle vážnosti - + All messages Všechny zprávy - + Errors only Jen chyby - + Success messages Zprávy o úspěchu - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text Smazat text filtru - + Overall completion progress Celkové zpracování dokončeno - + &Cancel &Storno - + Start batch tone mapping Začít hromadné přemapování - + &Start - + - + Using %n thread(s) - - - - - + - - - + + + Choose a directory Vybrat adresář - + All HDR images - + - + Select input images - + - + Load tone mapping settings text files... - + - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... Zpracovávám... - + Start processing... - + - + Close - + - + &Done &Hotovo - + All tasks completed. Všechny úkoly hotovy. - + Aborting... Přerušuji... @@ -667,525 +673,632 @@ [T%1] Start processing %2 - + [T%1] Successfully load %2 - + [T%1] Successfully saved LDR file: %2 - + [T%1] ERROR: Cannot save to file: %2 - + [T%1] ERROR: Loading of %2 failed - + CommandLineInterfaceManager - - Error: Alignment engine not recognized. - CHYBA: Nástroj zarovnání nerozpoznán. - - - - Error: Unknown weight function specified. - Chyba: Určena neznámá váhová funkce. - - - - Error: Unknown response curve specified. - CHYBA: Určena neznámá křivka odezvy. - - - - Error: Unknown HDR creation model specified. - CHYBA: Určen neznámý model tvorby HDR. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + - - Error: Unknown tone mapping operator specified. - CHYBA: Určen neznámý operátor přemapování. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + CHYBA: Nástroj zarovnání nerozpoznán. + + + + Error: Unknown weight function specified. + Chyba: Určena neznámá váhová funkce. + + + + Error: Unknown response curve specified. + CHYBA: Určena neznámá křivka odezvy. + + + + Error: Unknown HDR creation model specified. + CHYBA: Určen neznámý model tvorby HDR. + + + + Error: Unknown tone mapping operator specified. + CHYBA: Určen neznámý operátor přemapování. - - + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - CHYBA: Počet zadaných hodnot kroků EV se neshoduje s počtem vstupních souborů. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + CHYBA: Počet zadaných hodnot kroků EV se neshoduje s počtem vstupních souborů. - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Chyba: V obrázcích chybí exif data a ani v příkazové řádce nejsou určeny hodnoty EV. - + EV values have been assigned. - + + + + + + Starting aligning... + - + Failed executing align_image_stack - + - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + + + + + ERROR: directory %1 must exist + - + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - CHYBA: Nemohu uložit do souboru: %1 + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - + Choose action + <b>What would you like to do with the file(s)?</b> - + &Open - + Open an existing HDR image - + &New - + Create a new HDR image from one or more images - + @@ -1195,85 +1308,81 @@ Cancel the drag and drop process and return to the main window - + DonationDialog - + Luminance HDR - Make a Donation - + - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! - + - + Ask me again later - + - + No, Stop bothering me! - + EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable Edi&tovatelný - + R&eference R&eferenční - + Select the previous image in both lists Vyberte předchozí obrázek z obou seznamů - + Select the next image in both lists Vyberte následující obrázek z obou seznamech - + Choose a directory and a prefix Vyverte adresář a prefix @@ -1281,340 +1390,328 @@ EditingToolsDialog - + Editing Tools Editační nástroje - - Visualization and Navigation - Vizualizace a navigace + + Images List + Seznam obrázků - - Fit to window - Vyplnit okno + + Ed&itable + Edi&tovatelný - - &Fit to Window - &Vyplnit okno + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Vybraný obrázek lze posunovat nebo na něho lze aplikovat masku proti duchům.</p></body></html> - - Fill the window - + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + Pomocí ovladačů níže lze právě vybraným obrázkem ze seznamu pohybovat nahoru, dolů, vlevo i vpravo. +Histogram tohoto obrázku je zobrazen výše. - - Fill &window - + + Select the previous image in both lists + Vyberte předchozí obrázek z obou seznamů - - Original size - Původní velikost - - - - Origina&l Size - Původní ve&likost - - - - &Mode: - + + Use this button to move the selection to the previous image in both lists. + Použijte toto tlačítko pro posunutí výběru v obou seznamech na předchozí obrázek. - - Difference (E-P) - Rozdíl (E-P) + + Select the next image in both lists + Vyberte následující obrázek z obou seznamech - - Overlay (E+P) - Překrytí (E+P) + + Use this button to move the selection to the next image in both lists. + Použijte toto tlačítko pro posunutí výběru v obou seznamech na následující obrázek. - - Editable Only (E) - Editovatelný (E) + + Referen&ce + - - Pivot Only (P) - Pouze pivot (P) + + The reference image is the one currently selected + Právě vybraný obrázek je referenční - - Antighosting Mask - Maska potlačení duchů + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Označený obrázek v tomto seznamu udává základní polohu pro editovatelné obrázky</p></body></html> - - - Brush - + + Crop the stack of images after a selection with the left mouse button has been made + Ořízni obrázky na velikost vybranou levým myšítkem - - - Lasso - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Kliknutí na toto tlačítko ořízne všechny obrázky na rozměr, který je vybrán pomocí levého tlačítka myše (kliknout a táhnout pro výběr požadovaného rozměru, pak kliknout na toto tlačítko). - - Images List - Seznam obrázků + + &Crop All Images + &Ořízni všechny obrázky - - Ed&itable - Edi&tovatelný + + Ctrl+X + Ctrl+X - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Vybraný obrázek lze posunovat nebo na něho lze aplikovat masku proti duchům.</p></body></html> + + &Anti-Ghosting + - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - Pomocí ovladačů níže lze právě vybraným obrázkem ze seznamu pohybovat nahoru, dolů, vlevo i vpravo. -Histogram tohoto obrázku je zobrazen výše. + + &Save Images + &Ulož obrázky - - Select the previous image in both lists - Vyberte předchozí obrázek z obou seznamů + + Ctrl+S + Ctrl+S - - Use this button to move the selection to the previous image in both lists. - Použijte toto tlačítko pro posunutí výběru v obou seznamech na předchozí obrázek. + + Visualization and Navigation + Vizualizace a navigace - - Select the next image in both lists - Vyberte následující obrázek z obou seznamech + + Fit to window + Vyplnit okno - - Use this button to move the selection to the next image in both lists. - Použijte toto tlačítko pro posunutí výběru v obou seznamech na následující obrázek. + + &Fit to Window + &Vyplnit okno - - R&eference - R&eferenční + + Fill the window + - - The reference image is the one currently selected - Právě vybraný obrázek je referenční + + Fill &window + - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Označený obrázek v tomto seznamu udává základní polohu pro editovatelné obrázky</p></body></html> + + Original size + Původní velikost - - Tools - Nástroje + + Origina&l Size + Původní ve&likost - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + &Mode: + - - O. Gallo and others - + + Difference (E-P) + Rozdíl (E-P) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Overlay (E+P) + Překrytí (E+P) - - Auto anti-ghosting - + + Editable Only (E) + Editovatelný (E) - - Artifact-free HDR Imaging - + + Pivot Only (P) + Pouze pivot (P) - - Total Patches: - + + Antighosting Mask + Maska potlačení duchů - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Brush + - - Threshold - + + Lasso + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + Anti Ghosting + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + O. Gallo and others + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Recompute - + + Auto anti-ghosting + - - Crop the stack of images after a selection with the left mouse button has been made - Ořízni obrázky na velikost vybranou levým myšítkem + + Artifact-free HDR Imaging + - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Kliknutí na toto tlačítko ořízne všechny obrázky na rozměr, který je vybrán pomocí levého tlačítka myše (kliknout a táhnout pro výběr požadovaného rozměru, pak kliknout na toto tlačítko). + + Total Patches: + - - &Crop All Images - &Ořízni všechny obrázky + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + - - Ctrl+X - Ctrl+X + + Threshold + - - &Anti-Ghosting - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + - - &Save Images - &Ulož obrázky + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Ctrl+S - Ctrl+S + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Recompute + - + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Rozměr: - - - + + + px px - - &Strength: - &Síla: + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1626,10 +1723,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Oblast výřezu lze vybrat kliknutím a tažením levým myšítkem.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1637,10 +1734,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Hodnoty posunutí vybraného editovatelného obrázku</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1648,295 +1745,390 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Zde můžete vidět i vložit hodnoty posunutí vybraného editovatelného obrázku</p></body></html> - + Shift values for editable image Hodnoty posunutí editovatelného obrázku - + Reset the shift values for the currently selected movable image Vynulovat hodnoty posunutí pro vybraný pohyblivý obrázek - + &Reset &Vynulovat - + Reset the shift values for all the images Vynulovat hodnoty posunutí pro všechny obrázky - + Reset &All Vynulovat vš&e - - &Horizontal: - &Horizontální: + + Hori&zontal: + - - &Vertical: - &Vertikální: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Volžit hodnotu horizontálního posunutí pro vybraný pohyblivý obrázek - + Insert a vertical shift value for the currently selected movable image Volžit hodnotu vertikálního posunutí pro vybraný pohyblivý obrázek - + Move up of 1 pixel the currently selected movable image Posunout vybraný pohyblivý obrázek o 1 pixel nahoru - + Move down of 1 pixel the currently selected movable image Posunout vybraný pohyblivý obrázek o 1 pixel dolů - + Move right of 1 pixel the currently selected movable image Posunout vybraný pohyblivý obrázek o 1 pixel doprava - + + > + + + + Move left of 1 pixel the currently selected movable image Posunout vybraný pohyblivý obrázek o 1 pixel doleva - + + < + + + + Histogram - + - + Get information about the graphical elements Získat informace o grafických položkách - + &What's this? &Co je toto? - + Shift+F1 Shift+F1 - + &Next > &Vpřed > - + &Cancel &Storno + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + + + + + Open web browser + + + + + Size: + Rozměr: + + + + % + + + + + Quality: + + + + + Images folder: + + + + + Select... + + + + + Cancel + + + + + Export + + + + + Choose a directory + Vybrat adresář + + + + + Error: + + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... - + Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctrl+Z - + Shows a larger preview of selected image - + - - - + + + Preview - + - + Previews - + - - + + Alignment Zarovnání - + Auto-crop - + - - MTB - + + &MTB + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + &Autoalign images - + - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green - + - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region - + HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -1944,7 +2136,7 @@ &Mapping: - + @@ -1987,7 +2179,7 @@ HDR Creation Wizard - + @@ -1996,269 +2188,269 @@ - Currently Loaded &Files - + &Currently Loaded Files + - + Add Images - + - + Remove Selected Image - + - + Clear List - + - + Preview - + - + Selected Image &Exposure - + - + EV: - + - + Alignment Zarovnání - - MTB - + + &MTB + - + &Autoalign images - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> - + - + [2/2] Choose Settings for HDR Creation - + - + Profile - + - - Use Custom Configuration - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + - - HDR Creation Model - + + Profile 1 + Profil 1 - - Robertson (Simple) - + + Profile 2 + Profil 2 - - Robertson (Response Recovery) - + + Profile 3 + Profil 3 - - Weighting Function - + + Profile 4 + Profil 4 - - Flat - + + Profile 5 + Profil 5 - - Response Curve - + + Profile 6 + Profil 6 - - sRGB - + + Use this only if the default profiles above do not yield good results + - - Custom - + + Use Custom Configuration + - - Response Curve Input File - + + HDR Creation Model + - - Response Curve Output File - + + Debevec + - - Use this only if the default profiles above do not yield good results - + + Robertson (Simple) + - - Linear - Lineárně + + Robertson (Response Recovery) + - - Debevec - + + Weighting Function + - + Triangular Trojúhelníková - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - + + Gaussian + Gausovská - - Profile 1 - Profil 1 + + Plateau + Rovina - - Profile 2 - Profil 2 + + Flat + - - Profile 3 - Profil 3 + + Response Curve + - - Profile 4 - Profil 4 + + Linear + Lineárně - - Profile 5 - Profil 5 + + Gamma + Gamma - - Profile 6 - Profil 6 + + Log + Log - - Gaussian - Gausovská + + sRGB + - - Plateau - Rovina + + Custom + - - Gamma - Gamma + + Response Curve Input File + - - Log - Log + + Response Curve Output File + - + Save As... Uložit jako... - + Save Settings - + - + &Next > &Vpřed > @@ -2268,399 +2460,495 @@ &Storno - + Image Filename Jméno souboru - + Exposure Expozice - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Vyber vstupní obrázky - + Unknown - + - + Loading... - + - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found EXIF data nenalezena - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Obrázky načteny.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Pro pokračování musíte manuálně vyplnit hodnoty expozice.<br><font color="#FF0000">%1</font> hodnoty jsou stále požadovány.</b></h3></center> - + Loading Error: - + - + Start loading a set of images with different exposure - + - - - - + + + Error... Chyba... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + - + The external application "<em>align_image_stack</em>" crashed... Externí aplikace "<em>align_image_stack</em>" havarovala... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Při spouštění aplikace"<em>align_image_stack</em>" se vyskytla neznámá chyba... - + Now click on next button - + + + + + Aligning... + Zarovnávám... - - + + &Finish &Proveď - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - + - - Aligning... - Zarovnávám... - - - + Weights: Váha: - + - Response curve: - Křivka odezvy: - + - Model: - Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> - + HelpBrowser - + Luminance HDR Help - + - + + + &File + &Soubor + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Nápověda Luminance - - + + &Print... - + + + + + Ctrl+P + - + &Exit &Konec - - + + &Find... - + + + + + Ctrl+F + - + Find &Next... - + + + + + F3 + - + Find &Previous... - + - - &Add - + + Shift+F3 + - + - &Delete - + &Add Bookmark + - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All - + - - Help SideBar - + + goHome + - - LuminanceHDR Online Help - + + goBack + - - &File - &Soubor + + goFwd + - - &Edit - + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+U + + + + View &Bookmarks + + + + + Ctrl+B + + + + + P&rint Preview + + + + + Help SideBar + + + + + LuminanceHDR Online Help + + &Edit + + + + &View &Pohled - - + + &Bookmarks - + - + &Quit - + - + Find &Next - + - + Find &Previous - + - + &Contents - + - + &Search - + - - &Add Bookmark - + + &Delete + - + Find - + - + Search Term: - + - + New Bookmark - + - + New Bookmark's Title: - + - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show - + - + LuminanceHDR - Help Browser - + - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? - + HelpSideBar - - Contents - - - - + + &Contents - + - + Se&arch - + - + Searching is case insensitive - + - + &Search - + - - + + 1 - + - + Book&marks - + - + &Add - + &Remove - + - + R&emove All - + @@ -2668,22 +2956,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2691,7 +2979,7 @@ Unknown - + @@ -2699,32 +2987,32 @@ Save as - + Saved File Quality - + Quality: - + File size: - + Unknown - + Ca&lculate - + @@ -2734,30 +3022,31 @@ &Save - + LdrViewer - - - LDR image [%1 x %2] - + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Úrovně a gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2765,10 +3054,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Nastavit úrovně barev</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2776,25 +3065,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Vstupní úrovně</span></p></body></html> - + Clip black Podpal (Clip black) - + Gamma Gamma - + Clip White Přepal (Clip White) - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2802,17 +3091,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Výstupní úrovně</span></p></body></html> - + &Reset &Zrušit - + &Cancel &Storno - + &OK &OK @@ -2821,9 +3110,9 @@ MainWindow - + Luminance HDR - + @@ -2831,1400 +3120,1536 @@ Nás&troje - + &Help Nápově&da - + + Luminance &HDR Online + + + + &Windows O&kna - + &View &Pohled - + HDR &Histogram - + - + &Toolbars Liš&ty nástrojů - - Preview Panel - + + &Preview Panel + - + &File &Soubor - + &Edit - + - + Main Toolbar - + - + &New HDR image... - + - + New HDR image - + - - + + Create a new HDR image from a set of LDR or Raw images - + - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files - + - + Ctrl+N - + - + &Open HDR image... - + - + Open HDR image - + - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + - + Ctrl+O - + - + &Save as... Uložit &jako... - + Save as... Uložit jako... - - - + + + Save image (HDR or LDR) - + - + Ctrl+S Ctrl+U - + &Quit - + - - + + Quit Luminance HDR - + - + Exit Konec - + Ctrl+Q Ctrl+K - + Rotate c&ounter-clockwise - + - + Rotate counter-clockwise - + - - - + + + Rotate counter-clockwise the HDR image - + - + < - + - - Rotate c&lockwise - + + Rotat&e clockwise + - + Rotate clockwise - + - - - + + + Rotate clockwise the HDR image - + - + > - + - - Low Dynamic Range - Nízký dynamický rozsah + + &Low Dynamic Range + - - + L - + - - Fit to Dynamic Range - Přizpůsobit dynamickému rozsahu + + &Fit to Dynamic Range + - + Fit to dynamic range - + - + \ - + - - Shrink Dynamic Range - Snížit dynamický rozrah + + &Shrink Dynamic Range + - + [ - + - - Extend Dynamic Range - Rozšířit dynamický rozrah + + &Extend Dynamic Range + - + ] - + - - Decrease Exposure - Snížit expozici + + &Decrease Exposure + - + 0 - + - + &Increase Exposure Z&výšit expozici - + 9 - + - + &Contents... - + - + About... O... - - - + + + Open user manual for Luminance HDR - + - + F1 - + - + &Normal Size &Původní velikost - + Normal size - + - - - + + + View HDR image at its normal size - + - + O - + - + Zoom &In Při&blížit - - - + + + Zoom in - + - + + - + - + Zoom &Out Od&dálit - - - + + + Zoom out - + - + - - + - + &Fit in Window - + - - + + Fit in Window - + - - + + Make the HDR image fit its window - + - + W - + - + &Preferences... &Předvolby... - + Luminance Options Volby Luminance - - - + + + Set various options of Luminance - + - + Ctrl+P - + - + &Resize... - + - + Resize the HDR image - + - - - + + + Change size of the HDR image - + - + Ctrl+R Ctrl+Z - + Copy &Exif Data... Kopírovat &Exif Data... - + Copy Exif Data Kopírovat Exif Data - - - + + + Copy Exif data between two sets of files - + - + Ctrl+E - + - + &About Qt &O Qt - + Show information about Qt - + - - + + Show information about Qt library that is used by Luminance - + - + Text &under Icons - + - + &Icons Only Jen &ikony - + &Text Only Jen &text - + Text &Alongside Icons Text &vedle ikon - + &Batch Tone Mapping... Hromadné přemapování (&Batch Tone Mapping)... - + Convert multiple HDR images to LDR - + - - + + Convert multiple HDR images to LDR using existing settings files - + - + Ctrl+B - + - + &What's This? &Co je toto? - - + + Get verbose information about user interface elements - + - + Shift+F1 Shift+F1 - + About &Luminance HDR - + - + Show information about Luminance HDR - + - - + + Show information about Luminance HDR, its authors and contributors - + + + + + Ctrl+I + - + Save HDR image &preview... - + - - - + + + Save the current HDR Preview to an LDR file - + - + &Projective Transformation... - + - - - + + + Apply projective transformation to the current HDR image - + + + + + Ctrl+J + - + &Crop to Selection - + - + Crop to Selection - + - - + + Crop the image to selection rectangle - + - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image - + + + + + Ctrl+X + Ctrl+X - + Remove &Selection - + - + Remove selection rectangle - + - - + + Remove selection rectangle from image area - + + + + + Ctrl+Z + - + Make a &Donation - + - + Ctrl+D Ctrl+D - - Lock Viewers - + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view - + - - Minimize - + + S + - - Maximize - + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - + + &Bring All to Front + - - Show Preview Panel - + + &Show Preview Panel + - + Show/Hide Preview Panel - + - + Ctrl+V - + - + Adjust &Levels - + - - + + Adjust Levels - + - - + + Tune the histogram for the current LDR Doladit histogram aktuálního LDR - + + Ctrl+L Ctrl+L - + Save All - + - - + + Save All LDR files - + - - Remove Tab - + + &Remove Tab + - + Ctrl+W - + - - Fill Window - + + Fill &Window + - + Fill window with the current viewer - + - - Batch HDR... - + + F + - + + Batch &HDR... + + + + Ctrl+H - + - + Soft Proofing - + - + Gamut Check - + - - Show on the right - + + &Show on the right + - - Show on the bottom - + + Show &on the bottom + - - Realtime Previews - + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + - + Ctrl+F - + - + White Balance - + - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! - + - + All HDR formats - + - + Load one or more HDR images... - + - + Save files in - + - - Failed to save - + + + Failed to save %1 + - + Done! - + - + Aborting... Přerušuji... - + + + Untitled + + + + Cropped Image - + - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Neuložené změny... - + This HDR image has unsaved changes.<br>Do you want to save it? - + - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - - - - - - Untitled - + - + Untitled %1 - + - + Error: %1 - + - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences - - - - - External Tools - + - + Tone Mapping Tone Mapping - + RAW Conversion - + - + + Color Management + + + + + External Tools + + + + Interface - + - - Color Management - + + Fast export + - + Language - + - + Default Previews Width - + - + px - + - + Always show Preview Panel - + - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + - - + + Amount of threads to use on multicore/SMP machines - + - + Batch Tonemapping Number of Threads - + - + General - + - + Quality: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear - + - + VNG - + - + PPG - + - + AHD - - - - - - - - - - - - - - - - - - ... - + - + Median: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + - + Do not stretch or rotate pixels - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + - + Interpolate RGB using 4 colours - + - + Color correction - + - + White Balance - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + - + Predefined D65 - + - + Camera - + - + Auto - + - + Manual - + - + Temperature (Kelvin) - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + - + Green - + - + Set here the green component to set magenta color cast removal level - + - + Highlights - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Unclip</span>: leave highlights unclipped in various shades of pink</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blend</span>: Blend clipped and unclipped values together for a gradual fade to white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + - + Solid White - + - + Do not transform - + - + Blend - + - + Reconstruct - + - + Level - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + - + Correct false colors in highlights - + - + Auto Brightness - + - + Brightness Jas<br>(Brightness) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + - + Black - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - - - - + NR and CA Correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + - + Enable noise reduction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + - + Threshold: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + - + Enable Chromatic Aberration correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + - + Red Component - + - + Blue Component - - - - - Monitor Profile - + - - - + + + Browse... - + - + Camera profile - + + + + + Monitor Profile + - + Printer profile - + - + align_image_stack command line arguments - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> - + - + &Cancel &Storno - + &OK &OK - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Vybrat adresář - + Open ICC Profile - + - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4232,105 +4657,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation - + - + Projections - + - + Source Projection: - + - - + + Polar - + - - + + Angular - + - - + + Cylindrical - + - - + + Mirror Ball - + - + Destination Projection: - + - + Angles: - + - - - - + + + + ° - + - + Bilinear Interpolation - + - + Oversample factor: - + - + Rotation (degrees) - + - + Yaw: - + - + Pitch: - + - + Roll: - + - + &Cancel &Storno - + &OK &OK @@ -4338,17 +4763,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: CHYBA: nemohu otevřít soubor nastavení přemapování: - + ERROR: File too old, cannot parse Tone Mapping Setting file: CHYBA: Příliš starý soubor, nemohu použít soubor nastavení přemapování: - + ERROR: cannot parse Tone Mapping Setting file: CHYBA: nemohu použít soubor nastavení přemapování: @@ -4356,400 +4781,433 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + Warning - + I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - + + Triangular + Trojúhelníková - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Rovina + + + + Gaussian + Gausovská + + + + Flat + + + + + Linear + Lineárně + + + + Gamma + Gamma + + + + Logarithmic + Logaritmicky + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + + + + + Robertson + - + + Robertson Response Calculation + + + + PreGamma=%1 - + - + Contrast Equalization Varovnání kontrastu (Contrast Equalization) - + Contrast - + - - + + Saturation - + - + Detail - + - + Luminance Level - + - + Luminance Level=Auto - + - + Color Saturation Saturace barev<br>(Color Saturation) - + Contrast Enhancement - + - + Alpha - + - + Beta - + - + NoiseRedux - + - + FFTSolver - + + + + + Rho + + + + + InvAlpha + - + simple - + - + Equation 2 - + - + Equation 4 - + - - + + Local - + - + Bias Síla<br>(Bias) - + Spatial - + - - + + Range Rozsah<br>(Range) - + Base - + - + Multiplier Násobitel<br>(Multiplier) - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi - + - + Scales: - + - + Lower - + - + Upper - + - + Brightness Jas<br>(Brightness) - + Chromatic Adaptation Adaptace barev<br>(Chromatic Adaptation) - + Light Adaptation Adaptace světel<br>(Light Adaptation) - + + Option -v -a... + + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float Nemohu konvertovat %1 do plovoucí rádové čárky - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 - + - + Using %n threads. - - - - - + - + Loading file %1 - + - + Successfully loaded file %1. - + - + All LDR formats - + - + Save the LDR image as... - + - + Save the HDR image as... - + - + Save as... - Uložit jako... - - - - Triangular - Trojúhelníková - - - - Plateau - Rovina - - - - Gaussian - Gausovská - - - - Flat - - - - - Linear - Lineárně - - - - Gamma - Gamma - - - - Logarithmic - Logaritmicky - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - - - - - Robertson - - - - - Robertson Response Calculation - + Uložit jako... ResizeDialog - + Scale Image Změnit rozlišení obrázku - + Hdr Image Size Rozlišení HDR obrázku - - Width: - Šířka: + + Restore original size + Obnovit původní velikost + + + + &Reset + &Obnovit - + Switch between pixels or percentage Vyberte pixely nebo procenta - + Pixels Pixely - + Percent Procenta - - Height: - Výška: - - - + Result size Výsledné rozlišení - - Restore original size - Obnovit původní velikost + + Height: + Výška: - - &Reset - &Obnovit + + Width: + Šířka: - + &Cancel &Storno - + &Scale &Změň @@ -4759,202 +5217,250 @@ Saved Parameters - + - - + + Comment - + - + TM Operator - + - + Simple Jednoduchý - + Equation 2 - + - + Local Contrast Threshold Práh lokálního kontrastu<br>(Local Contrast Threshold) - + Bias Síla<br>(Bias) - + Spatial Kernel Sigma Prostorové zrno<br>(Spatial Kernel Sigma) - + Range Kernel Sigma Rádius<br>(Range Kernel Sigma) - + Base Contrast Základní kontrast<br>(Base Contrast) - + Alpha - + - + Beta - + - - + + Color Saturation Saturace barev<br>(Color Saturation) - + Noise Reduction Redukce šumu<br>(Noise Reduction) - + Old Fattal - + - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Varovnání kontrastu (Contrast Equalization) - + Contrast Factor Koeficient kontrastu<br>(Contrast Factor) - + Saturation Factor Koeficient saturace<br>(Saturation Factor) - + Detail Factor - + - + Contrast Enhancement - + - + Luminance Level - + - + Manual Luminance Level - + - + Cone and Rod based on Luminance Cone a Rod podle jasu (Cone and Rod based on Luminance) - + Local Tonemapping - + - + Cone Level Úroveň Cone<br>(Cone Level) - + Rod Level Úroveň Rod<br>(Rod Level) - + Multiplier Násobitel<br>(Multiplier) - + Use Scales Použít stupnice (Use Scales) - + Key Value Klíčová hodnota<br>(Key Value) - + Phi Value - + - + Range Rozsah<br>(Range) - + Lower Scale Nižší stupnice<br>(Lower Scale) - + Upper Scale Vyšší stupnice<br>(Upper Scale) - + Brightness Jas<br>(Brightness) - + Chromatic Adaptation Adaptace barev<br>(Chromatic Adaptation) - + Light Adaptation Adaptace světel<br>(Light Adaptation) - + Pre-gamma - + SavingParameters - + Saving Parameters - + - + Enter a short comment for the saved parameters: - + + + + + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + @@ -4962,7 +5468,20 @@ Abort computation - + + + + + ThresholdWidget + + + Frame + + + + + Threshold + @@ -4970,504 +5489,538 @@ Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Zde můžete nahrát a uložit soubor nastavení přemapování.<br>Taky můžete použít obsah právě nahraného souboru nastavení. + + + + Tone Mapping Settings + + + + + Save current parameters to a text file + Uložit parametry do souboru + + + + Save current parameters (pregamma and TMO) to a text file. + Uložit parametry (pregamma a TMO) do souboru. + + + + Load an existing text file containing pregamma and TMO settings + Nahrát soubor s parametry pregamma a TMO + + + + Load an existing text file containing pregamma and TMO settings. + Nahrát soubor s parametry pregamma a TMO. + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Zde můžete opravit hodnotu gamma pro HDR.<br>Korekce gamma bude použita před přemapováním HDR. + + + + Process + + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Obnovit původní hodnotu pregamma (1) + + + + Size of the resulting LDR image + + + + + Here you can choose the size of the resulting LDR image. + Zde můžete vybrat velikost výsledného LDR obrázku. + + + + Set Custom Output Size + + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Kliknutím na toto tlačítko můžete vložit novou hodnotu <i>šířky</i> výsledného LDR obrázku. Enter dopočítá hodnotu výšky a uloží nový rozměr do seznamu. - + Start tonemapping (CTRL+T) - + - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - + - + &Update preview - + - + Ctrl+T Ctrl+M - + Update current LDR - + + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + - + Tonemap - + - + Mantiuk '06 - + - + Mantiuk '08 - + - + Fattal - + - + + Ferradans + + + + Drago - + - + Durand - + - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin - + - + Pattanaik - + + + + + Mai + - + Operator - + - + Contrast Factor Koeficient kontrastu<br>(Contrast Factor) - + Saturation Factor Koeficient saturace<br>(Saturation Factor) - + Detail Factor - + - + Contrast Equalization Varovnání kontrastu (Contrast Equalization) - + Predefined Display - + - + Lcd Office - + - + Lcd - + - + Lcd Bright - + - + CRT - + - - + + Color Saturation Saturace barev<br>(Color Saturation) - + Contrast Enhancement - + - + Enable Luminace Level - + - + Luminance Level - + - + Alpha - + - + Beta - + - + Noise Reduction Redukce šumu<br>(Noise Reduction) - + Version 2.3.0 - + + + + + Inverse Alpha + + + + + Rho + - + Bias Síla<br>(Bias) - + Spatial Kernel Sigma Prostorové zrno<br>(Spatial Kernel Sigma) - + Range Kernel Sigma Rádius<br>(Range Kernel Sigma) - + Base Contrast Základní kontrast<br>(Base Contrast) - + Key Value Klíčová hodnota<br>(Key Value) - + Phi - + - + Use Scales Použít stupnice (Use Scales) - + Range Rozsah<br>(Range) - + Lower Scale Nižší stupnice<br>(Lower Scale) - + Upper Scale Vyšší stupnice<br>(Upper Scale) - + Brightness Jas<br>(Brightness) - + Chromatic Adaptation Adaptace barev<br>(Chromatic Adaptation) - + Light Adaptation Adaptace světel<br>(Light Adaptation) - + Local Contrast Threshold Práh lokálního kontrastu<br>(Local Contrast Threshold) - + Simple Jednoduchý - + Equation Number Číslo rovnice (Equation Number) - - Eqn 2 - + + Eqn &2 + - - Eqn 4 - + + Eqn &4 + - + Multiplier Násobitel<br>(Multiplier) - + Local Tone Mapping Lokální přemapování (Local Tone Mapping) - + Auto Cone/Rod - + - + Cone Level Úroveň Cone<br>(Cone Level) - + Rod Level Úroveň Rod<br>(Rod Level) - + + This operator has no options + + + + Restore operator's default values Obnovit původní hodnoty operátoru - + Restore - + - + Previous applied settings - + - + Previous - + - + Next applied settings - + - + Next - - - - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Zde můžete nahrát a uložit soubor nastavení přemapování.<br>Taky můžete použít obsah právě nahraného souboru nastavení. - - - - Tone Mapping Settings - - - - - Save current parameters to a text file - Uložit parametry do souboru - - - - Save current parameters (pregamma and TMO) to a text file. - Uložit parametry (pregamma a TMO) do souboru. - - - - &Save to File - - - - - Load an existing text file containing pregamma and TMO settings - Nahrát soubor s parametry pregamma a TMO - - - - Load an existing text file containing pregamma and TMO settings. - Nahrát soubor s parametry pregamma a TMO. - - - - &Load from File - - - - - Save current parameters - - - - - - ... - - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Zde můžete opravit hodnotu gamma pro HDR.<br>Korekce gamma bude použita před přemapováním HDR. - - - - Process - - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - - - - - Restore pregamma's default value (1) - Obnovit původní hodnotu pregamma (1) - - - - Size of the resulting LDR image - - - - - Here you can choose the size of the resulting LDR image. - Zde můžete vybrat velikost výsledného LDR obrázku. - - - - Set Custom Output Size - + - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Kliknutím na toto tlačítko můžete vložit novou hodnotu <i>šířky</i> výsledného LDR obrázku. Enter dopočítá hodnotu výšky a uloží nový rozměr do seznamu. + + Queue size: %1 + - + TM Database Problem - + - + The database used for saving TM parameters cannot be opened. Error: %1 - + - + Load a tonemapping settings text file... Nahrát soubor nastavení přemapování... - - + + LuminanceHDR tonemapping settings text file (*.txt) - + - - - - + + + + Aborting... Přerušuji... - + File is not readable (check existence, permissions,...) Soubor není čitelný (zkontrolujte zda existuje, práva,...) - + Save tonemapping settings text file to... Uložit soubor nastavení přemapování jako... - + File is not writable (check permissions, path...) Soubor nelze zapsat (zkontrolujte práva, cestu...) - + File is not readable (check permissions, path...) Soubor není čitelný (zkontrolujte práva, cestu...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size Volitelná velikost LDR - + Enter the width of the new size: - + @@ -5475,47 +6028,47 @@ Load Custom Settings - + Sort by - + Comments: - + Comment - + Operator - + Most Useful Operators - + Tonemap - + Load - + Cancel - + @@ -5526,108 +6079,108 @@ Kopírovat Exif data - + From - + - - + + Append files to the list Přidat soubory do seznamu - - + + Remove selected file(s) from the list Odstranit vybrané soubory ze seznamu - - + + Move up selected file(s) Vybrané soubory přesunout nahoru - - + + Move down selected file(s) Vybrané soubory přesunout dolů - + To - + - + Log Log - + Exif operations report Zpráva o Exif operaci - - &Show only: - &Ukaž jen: + + Show onl&y: + - + Filter messages based on severity Filtrovat zprávy podle vážnosti - + All messages Všechny zprávy - + Errors only Jen chyby - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text Smazat text filtru - + Keep existing Exif tags in destination file - + - + &Cancel &Storno - + &Start - + - - + + All Supported formats - + - - + + Select the input images Vyber vstupní obrázky - + &Done &Hotovo @@ -5641,29 +6194,35 @@ %1Dokument licence nenaezen, můžete jej najít: %2zde%3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation - + - + Would you like to donate? - + - + Yes, I'd love to! - + - + Stop Bothering Me - + - + Remind me later - + @@ -5671,18 +6230,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_da.ts luminance-hdr-2.5.1/i18n/lang_da.ts --- luminance-hdr-2.5.0/i18n/lang_da.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_da.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,25 +1,19 @@ - - - + AboutLuminance - About Luminance - Om Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -31,15 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR billed-workflow-program<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -47,70 +36,65 @@ &Forfattere - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + + + + + &Thanks To + &Tak til - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - - - - - &Thanks To - &Tak til +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog Ændringer - - http://qtpfsgui.sourceforge.net/updater/Changelog - http://qtpfsgui.sourceforge.net/updater/Changelog - - - + &License Agreement &Licensaftale - + &OK &OK @@ -119,228 +103,228 @@ BatchHDRDialog - Batch HDR Dialog - HDR-jobliste + Batch HDR + - + Number of bracketed images: Antal grupperede billeder: - - + + Select the number of bracketed pictures used to create the HDRs Vælg antallet af grupperede billeder, der bruges for at skabe HDR'er - + Output Output - + + Choose an HDR output file format + Vælg et HDR-output-filformat + + + Predefined profile: Prædefineret profil: - - Choose an HDR output file format - Vælg et HDR-output-filformat + + Output format: + Outputformat: - + Choose one of the creation predefined profiles. See documentation for more information. Vælg en af de prædefinerede profiler. Se dokunmentationen for mere information. - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - Outputformat: - - - + Alignment Justering - + Auto align the bracketed pictures Autojustér de grupperede billeder - + Auto-align images Autojustér billeder - + Use MTB (Median Threshold Bitmap) engine Brug MTB (Median Threshold Bitmap) programmet - - MTB - MTB + + &MTB + - + Use Hugin's align_image_stack engine Brug Hugins align_image_stack program - - Hugin's align_image_stack - Hugins align_image_stack + + Hugin's align_&image_stack + - + Auto-crop Autobeskær - - Progress - Fremgang - - - + &Cancel &Annuller - + &Start &Start - + &Close &Luk - + + Progress + Fremgang + + + + Input/Output + Input/Output + + + + Folder where created HDRs are saved + Mappe, hvor oprettede HDR'er gemmes + + + + + Select... + Vælg… + + + + Folder where bracketed pictures are located (in alphabetical order) + Mappe, hvor grupperede billeder befinder sig (i alfabetisk rækkefælge) + + + + Input folder: + Inputmappe: + + + + Output folder: + Outputmappe: + + + Anti-ghosting Anti-ghosting - + Artifact-free High Dynamic Range Imaging High Dynamic Range billedbehandling uden artifakter - + Threshold Grænseværdi - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Grænseværdi, der bruges af algoritmen til auto-anti-ghosting. En lavere grænseværdi betyder mere aggressive beregninger, men det kan gøre den endelige dynamic range lavere. Brug &quot;Genberegn&quot;-knappen for at se dækningen og justér grænseværdien tilsvarende</p></body></html> - + O. Gallo and others O. Gallo og andre - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Slå auto-anti-ghosting-algoritmen til</p></body></html> - + Auto anti-ghosting Auto-anti-ghosting - - Input/Output - Input/Output - - - - Folder where created HDRs are saved - Mappe, hvor oprettede HDR'er gemmes - - - - - Select... - Vælg … - - - - Folder where bracketed pictures are located (in alphabetical order) - Mappe, hvor grupperede billeder befinder sig (i alfabetisk rækkefælge) - - - - Input folder: - Inputmappe: - - - - Output folder: - Outputmappe: - - - + Custom config %1 Brugerdefineret konfiguration %1 - + Choose a source directory Vælg en kildemappe - + Choose a output directory Vælg en outputmappe - - - + + + Warning Advarsel - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? @@ -349,65 +333,65 @@ Fortsæt? - - + + Total number of pictures must be a multiple of number of bracketed images. Total antal billeder skal være et multiplum af antallet af grupperede billeder. - + Started processing... - Beregning startet … + Beregning startet… - + Loading files... - Indlæser filer … + Indlæser filer… - + Completed with errors Gennemført med fejl - + Completed without errors Gennemført uden fejl - + Error: missing EXIF data Fejl: Manglende EXIF-data - + Aligning... - Justerer … + Justerer… - + Creating HDR... - Opretter HDR … + Opretter HDR… - + Doing auto anti-ghosting... - Udfører auto-anti-ghosting … + Udfører auto-anti-ghosting… - + Written Skrevet - + Error: Fejl: - + Aborting... - Afbryder … + Afbryder… @@ -508,11 +492,6 @@ Liste over tone mapping-indstillingsfiler, som skal bruges til at tone mappe hvert HDR - - Specify output folder for the tone mapped files - Specificér outputmappe til de tone mappede filer - - Output Output @@ -523,154 +502,173 @@ Bredde på outputbillede: - + + Output Folder: + Outputmappe: + + + + + Specify output folder for the tone mapped files + Specificér outputmappe til de tone mappede filer + + + + Selec&t... + &Vælg… + + + + + Width of tonemapped image in percent of original image + + + + % % - + Output Format: Outputformat: - - Output Folder: - Outputmappe: + + Image format of tonemapped images + - - Selec&t... - &Vælg … + + Image format options + - + Conversion Log Konverteringslog - + Batch operations report Jobliste-udførselslog - - &Show only: - Vi&s kun: + + Show onl&y: + - + Filter messages based on severity Filtrér beskeder baseret på alvorlighed - + All messages Alle beskeder - + Errors only Kun fejl - + Success messages Succesbeskeder - - &Filter log messages: - &Filtrér logbeskeder: + + Filter &log messages: + - + Clear filter text Nulstil filtertekst - + Overall completion progress Overordnet fremgang - + &Cancel &Annuller - + Start batch tone mapping Start jobliste-tone mapping - + &Start &Start - + Using %n thread(s) - - - - + - - - + + + Choose a directory Vælg en mappe - + All HDR images Alle HDR-billeder - + Select input images Vælg inputbilleder - + Load tone mapping settings text files... - Indlæs tone mapping-indstillingstekstfiler … + Indlæs tone mapping-indstillingstekstfiler… - + Luminance HDR tone mapping settings text file (*.txt) Luminance HDR tone mapping-indstillingstekstfil (*.txt) - + Processing... - Beregner … + Beregner… - + Start processing... - Start beregning … + Start beregning… - + Close Luk - + &Done &Færdig - + All tasks completed. Alle jobs gennemført. - + Aborting... - Afbryder … + Afbryder… @@ -704,464 +702,571 @@ CommandLineInterfaceManager - + Usage: %1 [OPTIONS]... [INPUTFILES]... Anvendelse: %1 [OPTIONS]… [INPUTFILER]… - + Display this help. Vis denne hjælp. - + + Display program version. + + + + Print more messages during execution. Udskriv flere beskeder under udførelse. - + + Print a list of all supported cameras. + + + + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). [AISIMTB] Justeringsprogram der bruges under HDR-oprettelse (standard: ingen justering). - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). EV1,EV2,… Specificér numeriske EV-værdier (så mange som INPUTFILES). - + prefix Save aligned images to files which names start with prefix prefix Gem justerede billeder til filer hvor navnene starter med præfiks - + HDR_FILE Load an HDR instead of creating a new one. HDR_FILE Indlæs et HDR i stedet for at oprette et nyt. - + HDR_FILE Save to a HDR file format. (default: don't save) HDR_FILE Gem til et HDR-filformat. (standard: gem ikke) - + VALUE Gamma value to use during tone mapping. (default: 1) VALUE Gamma-værdi der skal bruges under tone mapping. (standard: 1) - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) VALUE Bredde som dit HDR skal ændres til (størrelsen ændres før gamma og tone mapping) - + LDR_FILE File name you want to save your tone mapped LDR to. LDR_FILE Filnavn som dit tone mappede LDR skal gemmes til. - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) THRESHOLD Aktivér automatisk anti-ghosting med given grænseværdi. (0.0-1.0) - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR HDR-oprettelsesparametre - du skal enten indlæse en eksisterende HDR-fil (via -l-tilvalget) eller angive INPUTFILES for at oprette et nyt HDR - + weight = triangular|gaussian|plateau|flat (Default is triangular) weight = triangular|gaussian|plateau|flat (Standard er triangular) - + response curve = from_file|linear|gamma|log|srgb (Default is linear) response curve = from_file|linear|gamma|log|srgb (Standard er linear) - + model: robertson|robertsonauto|debevec (Default is debevec) model: robertson|robertsonauto|debevec (Standard er debevec) - + curve filename = your_file_here.m curve filename = din_fil_her.m - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - VALUE Kvalitet på den gemte tone mappede fil (0-100). {1-100)?} + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified Tone mapping parametre - ingen tone mapping udføres med mindre -o angives - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - Tone mapping operator. Gyldige værdier er: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Standard er mantiuk06) + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal Fattal - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 Mantiuk 06 - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 Mantiuk 08 - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand Durand - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago Drago - + bias FLOAT - + - + Reinhard 02 Reinhard 02 - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 Reinhard 05 - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin Ashikmin - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik Pattanaik - + multiplier FLOAT - + - + Local tone mapping true|false Lokal tone mapping true|false - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + - + Error: Alignment engine not recognized. Fejl: Positionerings-applikation ikke genkendt. - + Error: Unknown weight function specified. Fejl: Ukendt vægtfunktion specificeret. - + Error: Unknown response curve specified. Fejl: Ukendt responskurve specificeret. - + Error: Unknown HDR creation model specified. Fejl: Ukendt HDR-oprettelsesmodel specificeret. - + Error: Unknown tone mapping operator specified. Fejl: Ukendt tone mapping-operator specificeret. - - + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - Fejl: Kvalitet skal være i intervalet [0-100]. {1-100]?} + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: Threshold must be in the range [0-1]. - Fejl: Grænseværdi skal være indenfor [0-1]. + + Error: Threshold must be in the range [0..1]. + - + Error: The number of EV values specified is different from the number of input files. Fejl: Antallet af specificerede EV-værdier er forskelligt fra antallet af inputfiler. - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - - - - + Load file %1 failed Indlæsning af fil %1 mislykkedes - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Fejl: EXIF-data mangler i billeder, og EV-værdier er ikke specificeret på kommandolinien, bakker ud. - + EV values have been assigned. EV-værdier er tildelt. - + + + Starting aligning... + + + + Failed executing align_image_stack Kørsel af align_image_stack mislykkedes - + Failed aligning images. Positionering af billeder mislykkedes. - + Creating (in memory) the HDR. Opretter HDR-billedet (i hukommelsen). - + Saving to file %1. Gemmer til fil %1. - - + Image %1 saved successfully Billede %1 gemt succesfuldt - + Could not save %1 Kunne ikke gemme %1 - + NOT Saving HDR image to file. %1 Gemmer IKKE HDR-billede til fil. %1 - + + Exporting to HTML + + + + + ERROR: directory %1 must exist + + + + Tonemapping requested, saving to file %1. Tone mapping efterspurgt, gemmer til fil %1. - - ERROR: Cannot save to file: %1 - FEJL: Kan ikke gemme til fil: %1 + + Resizing to width %1. + + + + + Applying gamma %1. + + + + + +Image %1 successfully saved + - + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + Failed loading images Indlæsning af billeder mislykkedes @@ -1170,8 +1275,8 @@ DnDOption - Drag and Drop - Træk og slip + Choose action + @@ -1212,35 +1317,27 @@ DonationDialog - + Luminance HDR - Make a Donation Luminance HDR - Gør en donering - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> er open-source software, og udviklingen har taget hundredevis af arbejdstimer.<br /><br />Hvis du kan lide det, hvis du bruger det i dit arbejde, og du kunne tænke dig at se det gradvist forbedret,<br />så støt venligst forfatterne ved at gøre en donering.<br /><br />Kunne du tænke dig at gøre en donering til Luminance HDR nu?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! Ja, det vil jeg gerne! - + Ask me again later Spørg mig igen senere - + No, Stop bothering me! Nej, stor med at forstyrre mig! @@ -1248,47 +1345,47 @@ EditingTools - + Maskable Maskérbart - + Good image Godt billede - + Add good image Tilføj godt billede - + Remove good image Fjern godt billede - + Ed&itable Red&igerbart - + R&eference R&eference - + Select the previous image in both lists Vælg det forrige billede i begge lister - + Select the next image in both lists Vælg det næste billede i begge lister - + Choose a directory and a prefix Vælg en mappe og et præfiks @@ -1296,340 +1393,328 @@ EditingToolsDialog - + Editing Tools Redigeringsværktøjer - - Visualization and Navigation - Visualisering og navigering - - - - Fit to window - Tilpas til vindue + + Images List + Billedliste - - &Fit to Window - &Tilpas til vindue + + Ed&itable + Red&igerbart - - Fill the window - Udfyld vinduet + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Det valgte billede er det, du kan forskyde og tegne antighosting-maske på.</p></body></html> - - Fill &window - Udfyld &vindue + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + Det valgte billede i denne liste kan translateres op, ned, til venstre og højre ved at bruger kontrollerne herunder. +Dette billedes histogram vises herover. - - Original size - Original størrelse + + Select the previous image in both lists + Vælg det forrige billede i begge lister - - Origina&l Size - Origina&l størrelse + + Use this button to move the selection to the previous image in both lists. + Brug denne knap for at vælge det forrige billede i begge lister. - - &Mode: - Til&stand: + + Select the next image in both lists + Vælg det næste billede i begge lister - - Difference (E-P) - Forskel (E-P) + + Use this button to move the selection to the next image in both lists. + Brug denne knap for at vælge det næste billede i begge lister. - - Overlay (E+P) - Overlapning (E+P) + + Referen&ce + - - Editable Only (E) - Kun redigerbart (E) + + The reference image is the one currently selected + Referencebilledet er det, der i øjeblikket er valgt - - Pivot Only (P) - Kun pivot (P) + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Det valgte billede i denne liste fungerer som referenceposition for det redigerbare billede</p></body></html> - - Antighosting Mask - Antighosting-maske + + Crop the stack of images after a selection with the left mouse button has been made + Beskær billedstakken efter en markering er lavet med venstre musetast - - - Brush - Pensel + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Ved at klikke på denne knap kan du beskære alle billederne til den størrelse, du tidligere har markeret med venstre musetast (klik og hold venstre musetast og flyt musemarkøren for at markere et beskæringsområde, og klik derefter denne knap). - - - Lasso - Lasso + + &Crop All Images + &Beskær alle billeder - - Images List - Billedliste + + Ctrl+X + Ctrl+X - - Ed&itable - Red&igerbart + + &Anti-Ghosting + &Anti-ghosting - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Det valgte billede er det, du kan forskyde og tegne antighosting-maske på.</p></body></html> + + &Save Images + &Gem billeder - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - Det valgte billede i denne liste kan translateres op, ned, til venstre og højre ved at bruger kontrollerne herunder. -Dette billedes histogram vises herover. + + Ctrl+S + Ctrl+S - - Select the previous image in both lists - Vælg det forrige billede i begge lister + + Visualization and Navigation + Visualisering og navigering - - Use this button to move the selection to the previous image in both lists. - Brug denne knap for at vælge det forrige billede i begge lister. + + Fit to window + Tilpas til vindue - - Select the next image in both lists - Vælg det næste billede i begge lister + + &Fit to Window + &Tilpas til vindue - - Use this button to move the selection to the next image in both lists. - Brug denne knap for at vælge det næste billede i begge lister. + + Fill the window + Udfyld vinduet - - R&eference - R&eference + + Fill &window + Udfyld &vindue - - The reference image is the one currently selected - Referencebilledet er det, der i øjeblikket er valgt + + Original size + Original størrelse - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Det valgte billede i denne liste fungerer som referenceposition for det redigerbare billede</p></body></html> + + Origina&l Size + Origina&l størrelse + + + + &Mode: + Til&stand: + + + + Difference (E-P) + Forskel (E-P) + + + + Overlay (E+P) + Overlapning (E+P) + + + + Editable Only (E) + Kun redigerbart (E) + + + + Pivot Only (P) + Kun pivot (P) + + + + Antighosting Mask + Antighosting-maske + + + + Brush + Pensel - - Tools - Værktøjer + + Lasso + Lasso - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - <html><head/><body><p>Her kan du aktivere algoritmen for auto-anti-ghosting, sætte grænsevædi og genberegne lapper</p></body></html> + + Anti Ghosting + - + O. Gallo and others O. Gallo og andre - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Slå algoritme for auto-anti-ghosting til</p></body></html> - + Auto anti-ghosting Auto-anti-ghosting - + Artifact-free HDR Imaging HDR-billedbehandling uden artifakter - + Total Patches: Totalt antal lapper: - + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Viser mængden af lapper procentvis beregnet af algoritmen for auto-anti-ghosting</p></body></html> - + Threshold Grænseværdi - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> <html><head/><body><p>Grænseværdi, der bruges af algoritmen til auto-anti-ghosting. En lavere grænseværdi betyder mere aggressive beregninger, men det kan gøre den endelige dynamic range lavere. Brug &quot;Genberegn&quot;-knappen for at se dækningen og justér grænseværdien tilsvarende.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Grænseværdi, der bruges af algoritmen til auto-anti-ghosting. En lavere grænseværdi betyder mere aggressive beregninger, men det kan gøre den endelige dynamic range lavere. Brug &quot;Genberegn&quot;-knappen for at se dækningen og justér grænseværdien tilsvarende</p></body></html> - + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> <html><head/><body><p>Klik her for at genberegne lapper baseret på valgt grænseværdi</p></body></html> - + Recompute Genberegn - - Crop the stack of images after a selection with the left mouse button has been made - Beskær billedstakken efter en markering er lavet med venstre musetast - - - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Ved at klikke på denne knap kan du beskære alle billederne til den størrelse, du tidligere har markeret med venstre musetast (klik og hold venstre musetast og flyt musemarkøren for at markere et beskæringsområde, og klik derefter denne knap). - - - - &Crop All Images - &Beskær alle billeder - - - - Ctrl+X - Ctrl+X - - - - &Anti-Ghosting - &Anti-ghosting - - - - &Save Images - &Gem billeder - - - - Ctrl+S - Ctrl+S - - - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - <html><head/><body><p>Her kan du vælge den metode, der bruges til at tegne en maske, penselstørrelse og maskestyrke, gemme og anvende en gemt maske</p></body></html> - - - + Mask Maske - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> <html><head/><body><p>Tilføj en maske ved hjælp af lasso eller pensel</p></body></html> - - A&dd + + &Add &Tilføj - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> <html><head/><body><p>Fjern maske ved hjælp af lasso eller pensel</p></body></html> - - &Remove - &Fjern + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> <html><head/><body><p>Størrelsen på penselen</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> <html><head/><body><p>Styrken på masken (semitransparent)</p></body></html> - + Size: Størrelse: - - - + + + px px - - &Strength: - &Styrke: + + S&trength: + - + Lasso - Draw a free hand selection area Lasso - frihåndstegn markeringsområde - + Brush - Paint the mask using the brush Pensel - tegn masken ved hjælp af penslen - + Save mask Gem maske - + Apply saved mask Anvend gemt maske - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1641,10 +1726,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Ved at klikke og holde venstre musetast kan du vælge et beskæringsområde.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1652,10 +1737,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Forskydningsværdier for det valgte redigerbare billede</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1663,102 +1748,191 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Her kan brugeren se og sætte forskydningsværdierne for det valgte redigerbare billede</p></body></html> - + Shift values for editable image Forskydningsværdier for redigerbart billede - + Reset the shift values for the currently selected movable image Nulstil forskydningsværdierne for det valgte flytbare billede - + &Reset &Nulstil - + Reset the shift values for all the images Nulstil forskydningsværdierne for alle billederne - + Reset &All Nulstil &alle - - &Horizontal: - &Vandret: + + Hori&zontal: + - - &Vertical: - &Lodret: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Indsæt en vandret forskydningsværdi for det valgte flytbare billede - + Insert a vertical shift value for the currently selected movable image Indsæt en lodret forskydningsværdi for det valgte flytbare billede - + Move up of 1 pixel the currently selected movable image Flyt det valgte flytbare billede 1 pixel op - + Move down of 1 pixel the currently selected movable image Flyt det valgte flytbare billede 1 pixel ned - + Move right of 1 pixel the currently selected movable image Flyt det valgte flytbare billede 1 pixel til højre - + + > + > + + + Move left of 1 pixel the currently selected movable image Flyt det valgte flytbare billede 1 pixel til venstre - + + < + < + + + Histogram Histogram - + Get information about the graphical elements Få information om de grafiske elementer - + &What's this? &Hvad er dette? - + Shift+F1 Shift+F1 - + &Next > &Næste > - + &Cancel &Annuller + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + Outputmappe: + + + + Open web browser + + + + + Size: + Størrelse: + + + + % + + + + + Quality: + Kvalitet: + + + + Images folder: + + + + + Select... + Vælg… + + + + Cancel + Annuller + + + + Export + + + + + Choose a directory + Vælg en mappe + + + + + Error: + Fejl: + + + + must be a directory. + + + + FitsImporter @@ -1785,9 +1959,9 @@ - + Select... - Vælg … + Vælg… @@ -1810,130 +1984,131 @@ Kanal 3 (blå) - + <html><head/><body><p>Rotate selected image 180°</p></body></html> <html><head/><body><p>Rotér valgt billede 180°</p></body></html> - + Rotate Rotér - + Reset Nulstil - + Load Previews Indlæs forhåndsvisninger - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image Viser en større forhåndsvisning af valgt billede - - - + + + Preview Forhåndsvisning - + Previews Forhåndsvisninger - - + + Alignment Positionering - + Auto-crop Autobeskær - - MTB - MTB + + &MTB + - - Hugin's align_image_stack - Hugins align_image_stack + + Hugin's align_&image_stack + - + &Autoalign images &Autopositionér billeder - + The alignment of the input files is in progress. Please be patient! Positionering af inputfilerne er i gang. Vær venligst tålmodig! - + Progress: Fremgang: - + Messages Beskeder - + Please fine-tune the color part of the channels. Finjustér venligst farvedelen af kanalerne. - + Blue Blå - + Green Grøn - + Red Rød - + Load one FITS image... - Indlæs ét FITS-billede … + Indlæs ét FITS-billede… - - Cannot load FITS image %1 - Kan ikke indlæse FITS-billede %1 + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size FITS-billeder har forskellige størrelser - + align_image_stack exited with exit code %1 align_image_stack afsluttede med kode %1 - + align_image_stack failed with error align_image_stack afsluttede med fejl @@ -1941,7 +2116,7 @@ GenericViewer - + Pan the image to a region Panorér billedet to en region @@ -1949,7 +2124,12 @@ HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. HdrCreationManager::loadFilesDone(): Billederne har forskellige størrelser. @@ -2011,111 +2191,111 @@ - Currently Loaded &Files - Indlæste &filer + &Currently Loaded Files + - + Add Images Tilføj billeder - + Remove Selected Image Fjern valgt billede - + Clear List Ryd liste - + Preview Preview - + Selected Image &Exposure Valgt billedes &eksponering - + EV: EV: - + Alignment Positionering - - MTB - MTB + + &MTB + - + &Autoalign images &Autopositionér billeder - - Hugin's align_image_stack - Hugins align_image_stack + + Hugin's align_&image_stack + - + Auto-crop Autobeskær - + Anti-ghosting Anti-ghosting - + Threshold Grænseværdi - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> <html><head/><body><p>Grænseværdi, der bruges af algoritmen til auto-anti-ghosting. En lavere grænseværdi betyder mere aggressive beregninger, men det kan gøre den endelige dynamic range lavere.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Grænseværdi, der bruges af algoritmen til auto-anti-ghosting. En lavere grænseværdi betyder mere aggressive beregninger, men det kan gøre den endelige dynamic range lavere. Brug &quot;Genberegn&quot;-knappen for at se dækningen og justér grænseværdien tilsvarende</p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) Slå algoritmen for auto-anti-ghosting til (af O. Gallo og andre) - + Auto anti-ghosting Auto-anti-ghosting - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! Slå dette tilvalg til for manuel positionering eller manuel anti-ghosting. Det er beregnet til brugere med en stærk viden om de forskellige trin i oprettelse af HDR! - + Advanced Editing Tools Avancerede regigeringsværktøjer - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2124,21 +2304,21 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start indlæsning en mængde billeder med forskellig eksponering</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Vælg indstillinger for HDR-oprettelse - + Profile Profil - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2147,142 +2327,142 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Den første prædefinerede profil i listen leder for det meste til de bedste resultater. Ændr den kun, hvis det resulterende HDR-billede ikke er godt nok.</span></p></body></html> - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - + Use this only if the default profiles above do not yield good results Brug kun dette, hvis standardprofilerne herover ikke giver gode resultater - + Use Custom Configuration Brug tilpasset opsætning - + HDR Creation Model HDR-oprettelsesmodel - + Debevec Debevec - + Robertson (Simple) Robertson (simpel) - + Robertson (Response Recovery) Robertson (response recovery) - + Weighting Function Vægtet funktion - + Triangular Triangulær - + Gaussian Gaussian - + Plateau Plateau - + Flat Flad - + Response Curve Responskurve - + Linear Lineær - + Gamma Gamma - + Log Log - + sRGB sRGB - + Custom Tilpasset - + Response Curve Input File Inputfil for responskurve - + Response Curve Output File Outputfil for responskurve - + Save As... - Gem som … + Gem som… - + Save Settings Gem indstillinger - + &Next > &Næste > @@ -2292,187 +2472,181 @@ &Annuller - + Image Filename Billedfilnavn - + Exposure Eksponering - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Alle formater (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; TIFF-billeder (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw RAW-billeder (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Vælg inputbillederne - + Unknown Ukendt - + Loading... - Indlæser … + Indlæser… - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> <font color="#FF0000"><h3><b>ADVARSEL:</b></h3></font> Luminance HDR kunne ikke finde de relevante <b>EXIF</b>-mærker for følgende billeder:<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. </ul><hr>Du kan stadig fortsætte med at oprette en HDR. For at gøre dette skal du <b>manuelt</b> indsætte EV (eksponeringsværdier) eller værdier for stop-forskel.<hr>Hvis du vil have Luminance HDR til at gøre dette <b>automatisk</b>, skal du indlæse billeder, som har mindst følgende exif-data: <ul><li>Eksponeringsbias</li></ul><hr><b>TIP:</b> At miste EXIF-data sker ofte når du forbehandler dine billeder.<br>Du kan udføre en <b>én-til-én-kopiering af exif-data</b> mellem to mængder billeder via menupunktet <b>Værktøjer->Kopiér exif-data…</b> menu item. - + EXIF data not found EXIF-data ikke fundet - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Billeder idlæst.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>For at fortsætte skal du manuelt angive eksponeringsværdierne.<br><font color="#FF0000">%1</font> værdier stadig påkrævet.</b></h3></center> - + Loading Error: Indlæsningsfejl: - + Start loading a set of images with different exposure Start indlæsning af en mængde billeder med forskellig eksponering - - - - + + + Error... - Fejl … - - - - align_image_stack failed to align images. - align_image_stack kunne ikke positionere billeder. + Fejl… - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - Fejl under opstart af ekstern applikation "<em>align_image_stack</em>".<br>Læs venligst "Hjælp -> Indhold … -> Opsætning -> Eksterne værktøjer" for mere information. + Fejl under opstart af ekstern applikation "<em>align_image_stack</em>".<br>Læs venligst "Hjælp -> Indhold… -> Opsætning -> Eksterne værktøjer" for mere information. - + The external application "<em>align_image_stack</em>" crashed... - Den eksterne applikation "<em>align_image_stack</em>" fejlede … + Den eksterne applikation "<em>align_image_stack</em>" fejlede… - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... En ukendt fejl opstod under kørsel af "<em>align_image_stack</em>"-applikationen... - + Now click on next button Klik nu på næste-knappen - + Aligning... Positionerer... - - + + &Finish &Færdig - + Load camera response curve file Indlæs responskurvefil for kamera - + Camera response curve (*.m);;All Files (*) Kameraresponskurve (*.m);;Alle filer (*) - + Invalid Response Curve File Ugyldig responskurvefil - + Invalid Response Curve File: please try a different file Ugyldig responskurvefil: Prøv venligst en anden fil - + Save a camera response curve file Gem en responskurvefil for kamera - + Camera response curve (*.m) Kameraresponskurve (*.m) - + Weights: Vægte: - + - Response curve: - Responskurve: - + - Model: - Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Alle EV-værdierne er angivet.<br>Klik nu på næste-knappen.</b></h3></font></center> @@ -2480,153 +2654,259 @@ HelpBrowser - + Luminance HDR Help Luminance HDR hjælp - - Luminance Help - Luminance hjælp + + + &File + &Fil - - - &Print... - &Udskriv … + + E&dit + - - &Exit + + V&iew + + + + + Boo&kmarks + + + + + Luminance Help + Luminance hjælp + + + + + &Print... + &Udskriv… + + + + Ctrl+P + Ctrl+P + + + + &Exit &Afslut - - + + &Find... - &Find … + &Find… + + + + Ctrl+F + Ctrl+F - + Find &Next... - Find &næste … + Find &næste… + + + + F3 + - + Find &Previous... - Find &forrige … + Find &forrige… - - &Add - &Tilføj + + Shift+F3 + - + - &Delete - &Slet + &Add Bookmark + &Tilføj bogmærke - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All S&let alle - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + Help SideBar Hjælp sidebar - + LuminanceHDR Online Help Luminance HDR online hjælp - - &File - &Fil - - - + &Edit &Redigér - + &View &Vis - - + + &Bookmarks &Bogmærker - + &Quit &Afslut - + Find &Next Find &næste - + Find &Previous Find &forrige - + &Contents &Indhold - + &Search &Søg - - &Add Bookmark - &Tilføj bogmærke + + &Delete + &Slet - + Find Find - + Search Term: Søgeord: - + New Bookmark Nyt bogmærke - + New Bookmark's Title: Nyt bogmærkes titel: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Desværre, ingen manual er installeret!</p><p>Kontakt venligst din pakkeudbyder eller Luminance HDR-teamet, hvis du har bygget applikationen selv</p></h2> - + LuminanceHDR - Help Browser Luminance HDR - hjælpebrowser - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2638,43 +2918,39 @@ HelpSideBar - - Contents - Indhold - - - + + &Contents &Indhold - + Se&arch S&øg - + Searching is case insensitive Søgning er ikke versalfølsom - + &Search &Søg - - + + 1 1 - + Book&marks Bog&mærker - + &Add &Tilføj @@ -2684,7 +2960,7 @@ &Fjern - + R&emove All F&jern alle @@ -2735,12 +3011,12 @@ Quality: - Kvalitet: + Kvalitet: File size: - + @@ -2766,24 +3042,25 @@ LdrViewer - - - LDR image [%1 x %2] - LDR-billede [%1 × %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Niveauer og gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2791,10 +3068,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Justér farveniveauer</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2802,25 +3079,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Inputniveauer</span></p></body></html> - + Clip black Beskær sort - + Gamma Gamma - + Clip White Beskær hvid - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2828,17 +3105,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output-niveauer</span></p></body></html> - + &Reset &Nulstil - + &Cancel &Annuller - + &OK &Ok @@ -2847,7 +3124,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2857,802 +3134,944 @@ Værk&tøjer - + &Help &Hjælp - + + Luminance &HDR Online + + + + &Windows &Vinduer - + &View V&is - + HDR &Histogram HDR &Histogram - + &Toolbars &Værktøjslinier - - Preview Panel - Preview-panel + + &Preview Panel + - + &File &Fil - + &Edit &Redigér - + Main Toolbar Hoved-værktøjslinie - + &New HDR image... - &Nyt HDR-billede … + &Nyt HDR-billede… - + New HDR image Nyt HDR-billede - - + + Create a new HDR image from a set of LDR or Raw images Opret et nyt HDR-billede fra en mængde LDR- eller RAW-billeder - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Opret et nyt HDR-billede fra en mængde JPEG-, RAW eller 8/16-bpc TIFF-filer - + Ctrl+N Ctrl+N - + &Open HDR image... - &Åbn HDR-billede … + &Åbn HDR-billede… - + Open HDR image Åbn HDR-billede - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Indlæs n eksisterende HDR-billedfil (OpenEXR, Radiance RGBE, PFS-strøm, RAW eller TIFF) - + Ctrl+O Ctrl+O - + &Save as... - &Gem som … + &Gem som… - + Save as... - Gem som … + Gem som… - - - + + + Save image (HDR or LDR) Gem billede (HDR eller LDR) - + Ctrl+S Ctrl+S - + &Quit &Afslut - - + + Quit Luminance HDR Afslut Luminance HDR - + Exit Afslut - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Rotér m&od uret - + Rotate counter-clockwise Rotér mod uret - - - + + + Rotate counter-clockwise the HDR image Rotér HDR-billedet mod uret - + < < - - Rotate c&lockwise - Rotér m&ed uret + + Rotat&e clockwise + - + Rotate clockwise Rotér med uret - - - + + + Rotate clockwise the HDR image Rotér HDR-billedet med uret - + > > - - Low Dynamic Range - Low Dynamic Range + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Tilpas til dynamic range + + &Fit to Dynamic Range + - + Fit to dynamic range Tilpas til dynamic range - + \ \ - - Shrink Dynamic Range - Indskrænk dynamic range + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Udvid til dynamic range + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Formindsk eksponering + + &Decrease Exposure + - + 0 0 - + &Increase Exposure &Forøg eksponering - + 9 9 - + &Contents... - &Indhold … + &Indhold… - + About... - Om … + Om… - - - + + + Open user manual for Luminance HDR Åbn brugermanual for Luminance HDR - + F1 F1 - + &Normal Size &Normal størrelse - + Normal size Normal størrelse - - - + + + View HDR image at its normal size Vis HDR-billede i sit normale størrelse - + O O - + Zoom &In Zoom &ind - - - + + + Zoom in Zoom ind - + + + - + Zoom &Out Zoom &ud - - - + + + Zoom out Zoom ud - + - - - + &Fit in Window &Tilpas til vindue - - + + Fit in Window Tilpas til vindue - - + + Make the HDR image fit its window Vis HDR-billedet så det passer til vinduet - + W W - + &Preferences... - &Indstillinger … + &Indstillinger… - + Luminance Options Luminance indstillinger - - - + + + Set various options of Luminance Sæt diverse indstillinger for Luminance - + Ctrl+P Ctrl+P - + &Resize... - &Skalér … + &Skalér… - + Resize the HDR image Skalér HDR-billedet - - - + + + Change size of the HDR image Ændr størrelsen på HDR-billedet - + Ctrl+R Ctrl+R - + Copy &Exif Data... - Kopiér &EXIF-data … + Kopiér &EXIF-data… - + Copy Exif Data Kopiér EXIF-data - - - + + + Copy Exif data between two sets of files Kopiér EXIF-data mellem to mængder af filer - + Ctrl+E Ctrl+E - + &About Qt &Om Qt - + Show information about Qt Vis information om Qt - - + + Show information about Qt library that is used by Luminance Vis information om Qt-biblioteket, som bruges af Luminance - + Text &under Icons Tekst &under ikoner - + &Icons Only Kun &ikoner - + &Text Only Kun &tekst - + Text &Alongside Icons Tekst ved &siden af ikoner - + &Batch Tone Mapping... - Tone mapping &jobliste … + Tone mapping &jobliste… - + Convert multiple HDR images to LDR Konvertér flere HDR-billeder til LDR - - + + Convert multiple HDR images to LDR using existing settings files Konvertér flere HDR-billeder til LDR ved hjælp af eksisterende indstillingsfiler - + Ctrl+B Ctrl+B - + &What's This? &Hvad er dette? - - + + Get verbose information about user interface elements Få uddybet information om brugerfladeelementer - + Shift+F1 Shift+F1 - + About &Luminance HDR Om &Luminance HDR - + Show information about Luminance HDR Vis information om Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Vis information om Luminance HDR, dets forfattere og bidragsydere - + + Ctrl+I + + + + Save HDR image &preview... - Gem HDR-billede &preview … + Gem HDR-billede &preview… - - - + + + Save the current HDR Preview to an LDR file Gem det aktuelle HDR-preview som en LDR-fil - + &Projective Transformation... - &Projektiv transformering … + &Projektiv transformering… - - - + + + Apply projective transformation to the current HDR image Anvend projektiv transformering til det aktuelle HDR-billede - + + Ctrl+J + + + + &Crop to Selection &Beskær til markering - + Crop to Selection Beskær til markering - - + + Crop the image to selection rectangle Beskær billedet til det markerede rektangel - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Klik og træk i billedeområdet for at lave en markering, og brug derefter denne knap til at beskære til et nye HDR-billede - + + Ctrl+X + Ctrl+X + + + Remove &Selection Fjern &markering - + Remove selection rectangle Fjern det markerede rektangel - - + + Remove selection rectangle from image area Fjern det markerede rektangel fra billedområdet - + + Ctrl+Z + + + + Make a &Donation Gør en &donering - + Ctrl+D Ctrl+D - - Lock Viewers - Lås viewers + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). Synkronisér viewers-tilstand (tilpas, udfyld eller 1:1). - + Lock the images for sync view Lås billederne for synk view - - Minimize - Minimér + + S + - - Maximize - Maksimér + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - Bring alt til forgrunden + + &Bring All to Front + - - Show Preview Panel - Vis preview-panel + + &Show Preview Panel + - + Show/Hide Preview Panel Vis/gem preview-panel - + Ctrl+V Ctrl+V - + Adjust &Levels Justér &niveauer - - + + Adjust Levels Justér niveauer - - + + Tune the histogram for the current LDR Finjustér histogrammet efter det aktive LDR - + + Ctrl+L Ctrl+L - + Save All Gem alle - - + + Save All LDR files Gem alle LDR-filer - - Remove Tab - Fjern faneblad + + &Remove Tab + - + Ctrl+W Ctrl+W - - Fill Window - Udfyld vindue + + Fill &Window + - + Fill window with the current viewer Udfyld vindue med den aktive viewer - - Batch HDR... - HDR jobliste … + + F + + + + + Batch &HDR... + - + Ctrl+H Ctrl+H - + Soft Proofing Soft proofing - + Gamut Check Gamut-check - - Show on the right - Vis til højre + + &Show on the right + - - Show on the bottom - Vis i bunden + + Show &on the bottom + - - Realtime Previews - Realtids-previews + + &Realtime Previews + - - Update - Opdatér + + &Update + - - FITS Importer... - FITS-import … + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels Importér fire FITS-filer, der repræsenterer lysstyrke, rød, grøn og blå kanaler - + Ctrl+F Ctrl+F - + White Balance Hvidbalance - + Fix color cast, can be slow Ret farveskygge; kan være langsom - + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + + + + Ready. Now open an existing HDR image or create a new one! Klar. Åbn nu et eksisterende HDR-billede for at oprette et nyt! - + All HDR formats Alle HDR-formater - + Load one or more HDR images... - Indlæs et eller flere HDR-billeder … + Indlæs et eller flere HDR-billeder… - + Save files in Gem filer i - - Failed to save - Fejl under gemning + + + Failed to save %1 + - + Done! Færdig! - + Aborting... - Afbryder … + Afbryder… + + + + + Untitled + Ikke-navngivet - + Cropped Image Beskåret billede - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! Det ser ud til, at du kører 32-bit-versionen af <strong>Luminance HDR</strong> på et 64-bit-system. <br>Hent venligst <strong>64-bit</strong>-versionen fra <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> for at få den bedste oplevelse med Luminance HDR! - + Unsaved changes... - Ikke-gemte ændringer … + Ikke-gemte ændringer… - + This HDR image has unsaved changes.<br>Do you want to save it? Dette HDR-billede har ikke-gemte ændringer.<br>Vil du gemme det? - + Fattal Warning Fattal advarsel - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -3661,28 +4080,22 @@ Vil du fortsætte? - - - Untitled - Ikke-navngivet - - - + Untitled %1 Ikke-navngivet %1 - + Error: %1 Fejl: %1 - + Untitled HDR - + - + FITS Image FITS-billede @@ -3690,128 +4103,146 @@ PreferencesDialog - + Preferences Indstillinger - - Color Management - Farvehåndtering + + Tone Mapping + Tone mapping - + RAW Conversion RAW-konvertering - - Tone Mapping - Tone mapping + + Color Management + Farvehåndtering - + External Tools Eksterne værktøjer - + Interface Grænseflade - - Export queue - + + Fast export + - + Language Sprog - + Default Previews Width Standard-preview-bredde - + px px - + Always show Preview Panel Vis altid preview-panel - + Saves the settings along the program files, to be portable Gemmer indstillinger sammen med programfiler, for at være portabelt - + Portable mode Portabel tilstand - + Dark mode (beta) - + - + Theme - + - + Format - + - + Export directory - + - - Temporary Working Folder - Midlertidig arbejdsmappe + + + + + + + + + + + + + + + ... + - - + + &Browse... - &Gennemse … + &Gennemse… - - + + Temporary Working Folder + Midlertidig arbejdsmappe + + + + Amount of threads to use on multicore/SMP machines Antal tråde, der skal bruges på multikerne-/SMP-maskiner - + Batch Tonemapping Number of Threads Antal tråde for tone mapping-jobliste - + General Generelt - + Quality: Kvalitet: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> @@ -3830,54 +4261,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: brug Adaptive Homogeneity-Directed interpolering. Denne metode vælger retningen for interpolering, sådan at den maksimerer en homogen måling, og dermed typisk minimerer farveartifakter.</p></body></html> - + Bilinear Bilineær - + VNG VNG - + PPG PPG - + AHD AHD - - - - - - - - - - - - - - - ... - - - - + Median: Median: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3888,11 +4301,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Indstil her antal bearbejdninger med medianfilter, udført efter interpolering til rød-grøn- og blå-grøn-kanaler.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3903,16 +4316,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD-kameraer, vil billedet roteret 45°. For kameraer med ikke-kvadratiske pixels, stræk ikke billedet til dets korrekte højde/breddeforhold. Uanset, - + Do not stretch or rotate pixels Stræk og rotér ikke pixels - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> @@ -3925,26 +4338,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Gentagne gange slører denne indstilling billedet en smule, men den eliminerer falske 2×2 netmønstre med VNG-kvalitetsmetode eller mazes med AHD-kvalitetsmetode.</p></body></html> - + Interpolate RGB using 4 colours Interpolér RGB ved brug af 4 farver - + Color correction - + - + White Balance Hvidbalance - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> @@ -3963,36 +4376,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manuelt</span>: Sæt en brugerdefineret temperatur og grøn-level-værdi</p></body></html> - + Predefined D65 Prædefineret D65 - + Camera Kamera - + Auto Auto - + Manual Manuelt - + Temperature (Kelvin) Temperatur (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4003,26 +4416,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sæt her farvetemperaturen i Kelvin.</p></body></html> - + Green Grøn - + Set here the green component to set magenta color cast removal level Sæt her den grønne komponent for at sætte fjernelsesniveau for magenta farveskygge - + Highlights Højlys - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> @@ -4041,36 +4454,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Genopbyg</span>: Rekonstruér højlys ved hjælp af niveauværdi</p></body></html> - + Solid White Solid hvid - + Do not transform Transformér ikke - + Blend Bland - + Reconstruct Rekonstruér - + Level Niveau - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4081,26 +4494,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sæt højlys-genopbygnings-niveau. Lave værdier favoriserer hvide nuancer, og høje værdier favoriserer farver.</p></body></html> - + Correct false colors in highlights Ret falske farver i højlys - + Auto Brightness Auto-lysstyrke - + Brightness Lysstyrke - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4111,11 +4524,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sæt lysstyrkeniveauet for output-billedet. Standardværdien er 1,0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4126,16 +4539,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Brug en specifik sortpunkt-værdi under RAW-dekodning af billeder. Hvis du slår denne indstilling fra, vil sortpunkt-værdien blive automatisk udregnet.</p></body></html> - + Black Sort - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4146,41 +4559,41 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Angiv specifik sortpunkt-værdi for output-billedet.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + Farvemætning - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - - - - - Saturation - Farvemætning + - + NR and CA Correction NR og CA rettelse - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4191,16 +4604,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Brug wavelets for at fjerne støj men samtidigt beholde rigtige detaljer.</p></body></html> - + Enable noise reduction Slå støjreduktion til - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4211,16 +4624,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sæt her grænseværdi til brug for støjreduktion.</p></body></html> - + Threshold: Grænseværdi: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4231,16 +4644,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Forstør RAW rød og blå lag med de givne faktorer, typisk 0,999 til 1,001, for at rette kromatisk aberration.</p></body></html> - + Enable Chromatic Aberration correction Slå kromatisk aberrationsrettelse til - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4251,11 +4664,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sæt her forstørrelsesfaktoren for det røde lag</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4266,48 +4679,48 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sæt her forstørrelsesfaktoren for det blå lag</p></body></html> - + Red Component Rød komponent - + Blue Component Blå komponent - - Monitor Profile - Skærmprofil - - - - - + + + Browse... - Gennemse … + Gennemse… - + Camera profile Kameraprofil - + + Monitor Profile + Skærmprofil + + + Printer profile Printerprofil - + align_image_stack command line arguments align_image_stack kommandolinie-argumenter - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -4316,38 +4729,38 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Læs </span><span style=" font-family:'Sans Serif'; font-style:italic;">Hjælp &gt; Indhold &gt; Indstilling af Luminance &gt; Eksterne værktøjer</span><span style=" font-family:'Sans Serif';"> for at finde ud af mere om align_image_stack kommandolinie-argumenter</span></p></body></html> - + &Cancel &Annuller - + &OK &Ok - + Restart Genstart - + For the settings to take effect, please restart the application! Genstart applikationen for at ændringerne træder i kraft! - - + + Choose a directory Vælg en mappe - + Open ICC Profile Indlæs ICC-profil - + Color profile (*.icc *.ICC *.icm *.ICM) Farveprofil (*.icc *.ICC *.icm *.ICM) @@ -4363,99 +4776,99 @@ ProjectionsDialog - + Projective Transformation Projektiv transformation - + Projections Projekteringer - + Source Projection: Kildeprojektering: - - + + Polar Polbaseret - - + + Angular Vinklet - - + + Cylindrical Cylindrisk - - + + Mirror Ball Spejlbold - + Destination Projection: Destinationsprojektering: - + Angles: Vinkler: - - - - + + + + ° ° - + Bilinear Interpolation Bilineær interpolering - + Oversample factor: Oversamplings-faktor: - + Rotation (degrees) Rotering (grader) - + Yaw: Yaw: - + Pitch: Pitch: - + Roll: Roll: - + &Cancel &Annuller - + &OK &Ok @@ -4463,17 +4876,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: FEJL: Kunne ikke indlæse tone mapping-indstillingsfil: - + ERROR: File too old, cannot parse Tone Mapping Setting file: FEJL: Filen er for gammel; kan ikke parse tone mapping-indstillingsfil: - + ERROR: cannot parse Tone Mapping Setting file: FEJL: Kan ikke parse tone mapping-indstillingsfil: @@ -4481,8 +4894,35 @@ QObject - - + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + + + Warning @@ -4509,308 +4949,315 @@ Kan ikke udføre farvetransformeringen. Vælg venligst en anden skærmprofil. - + Triangular Triangulær - + Plateau Plateau - + Gaussian Gaussian - + Flat Flad - + Linear Lineær - + Gamma Gamma - + Logarithmic Logaritmisk - + sRGB sRGB - + From Calibration/Input File Fra kalibrerings-/inputfil - + Debevec Debevec - + Robertson Robertson - + Robertson Response Calculation Robertson responsberegning - + PreGamma=%1 PræGamma=%1 - + Contrast Equalization Kontrast-equalisering - + Contrast Kontrast - - + + Saturation Farvemætning - + Detail Detaljer - + Luminance Level Luminansniveau - + Luminance Level=Auto Luminansniveau=Auto - + Color Saturation Farvemætning - + Contrast Enhancement Kontrastforbedring - + Alpha Alfa - + Beta Beta - + NoiseRedux StøjRedux - + FFTSolver FFTSolver - + + Rho + + + + + InvAlpha + + + + simple simpel - + Equation 2 Ligning 2 - + Equation 4 Ligning 4 - - + + Local Lokal - + Bias Bias - + Spatial Rumlig - - + + Range Interval - + Base Base - + Multiplier Multiplikator - + AutoLuminance AutoLuminans - + Cone Kegle - + Rod Rod - + Key Nøgle - + Phi Phi - + Scales: Skalaer: - + Lower Lav - + Upper Høj - + Brightness Lysstyrke - + Chromatic Adaptation Kromatisk adaptering - + Light Adaptation Lysadaptering - + Option -v -a... Option -v -a… - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. LuminanceHDR kræver, at align_image_stack køres med tilvalget "-v" og uden tilvalget "-a". Kommandolinjetilvalg er rettet til. - + Cannot convert %1 to a float Kan ikke konvertere %1 til en float - + Loading TMO settings from file: %1 - + - + Input file %1 Inputfil %1 - + Running in HDR-creation mode. Kører i HDR-oprettelsestilstand. - + Running in Load-HDR mode. Kører i indlæs-HDR-tilstand. - + Temporary directory: %1 Midlertidig mappe: %1 - + Using %n threads. - - - - + - + Loading file %1 Indlæser til %1 - + Successfully loaded file %1. Indlæste succesfult fil %1. - + All LDR formats Alle LDR-formater - + Save the LDR image as... - Gem LDR-billedet som … + Gem LDR-billedet som… - + Save the HDR image as... - Gem HDR-billedet som … + Gem HDR-billedet som… - + Save as... Gem som... @@ -4818,62 +5265,62 @@ ResizeDialog - + Scale Image Skalér billede - + Hdr Image Size HDR-billede-størrelse - - Width: - Bredde: + + Restore original size + Genopret original størrelse + + + + &Reset + &Nulstil - + Switch between pixels or percentage Skift mellem pixels og procent - + Pixels Pixels - + Percent Procent - - Height: - Højde: - - - + Result size Resulterende størrelse - - Restore original size - Genopret original størrelse + + Height: + Højde: - - &Reset - &Nulstil + + Width: + Bredde: - + &Cancel &Annuller - + &Scale &Skalér @@ -4886,184 +5333,194 @@ Gemte parametre - - + + Comment Kommentar - + TM Operator TM-operator - + Simple Simpel - + Equation 2 Ligning 2 - + Local Contrast Threshold Lokal kontrast-grænseværdi - + Bias Bias - + Spatial Kernel Sigma Spatial kernel sigma - + Range Kernel Sigma Range kernel sigma - + Base Contrast Base kontrast - + Alpha Alfa - + Beta Beta - - + + Color Saturation Farvemætning - + Noise Reduction Støjreduktion - + Old Fattal Gammel Fattal - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Kontrast-equalisering - + Contrast Factor Kontrastfaktor - + Saturation Factor Farvemætningsfaktor - + Detail Factor Detaljefaktor - + Contrast Enhancement Kontrastforbedring - + Luminance Level Luminansniveu - + Manual Luminance Level Manuel luminansniveau - + Cone and Rod based on Luminance Cone og Rod baseret på luminans - + Local Tonemapping Lokal tone mapping - + Cone Level Cone-niveau - + Rod Level Rod-niveau - + Multiplier Multiplikator - + Use Scales Brug skalaer - + Key Value Nøgleværdi - + Phi Value Phi-værdi - + Range Interval - + Lower Scale Lav skala - + Upper Scale Høj skala - + Brightness Lysstyrke - + Chromatic Adaptation Kromatisk adaptering - + Light Adaptation Lysadaptering - + Pre-gamma Præ-gamma @@ -5071,17 +5528,55 @@ SavingParameters - + Saving Parameters Gemmer parametre - + Enter a short comment for the saved parameters: Skriv en kort kommentar for de gemte parametre: + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + + + + TMOProgressIndicator @@ -5090,6 +5585,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Grænseværdi + + + TiffModeDialog @@ -5100,497 +5608,531 @@ TonemappingPanel - - Tone mapping operators and their options - Tone mapping operatorer og deres indstillinger + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Her kan du indlæse og gemme en tone mapping-indstillingsfil.<br>Du kan også anvende indholdet af den aktuelt indlæste indstillingsfil. + + + + Tone Mapping Settings + Tone mapping-indstillinger + + + + Save current parameters to a text file + Gem aktuelle parametre til en tekstfil + + + + Save current parameters (pregamma and TMO) to a text file. + Gem aktuelle parametre (præ-gamma og TMO) til en tekstfil. + + + + Load an existing text file containing pregamma and TMO settings + Indlæs en eksisterende tekstfil med prægamma- og TMO-indstillinger + + + + Load an existing text file containing pregamma and TMO settings. + Indlæs en eksisterende tekstfil med prægamma- og TMO-indstillinger. - + + Save current parameters + Gem aktuelle parametre + + + + Load saved parameters + Indlæs gemte parametre + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Her kan du anvende gamma-rettelse på HDR'et.<br>Gamma-rettelse vil anvendes før tone mapping. + + + + Process + Fremgang + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + Gamma anvendt før tone mapping + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Genopret standardværdi for præ-gamma (1) + + + + Size of the resulting LDR image + Størrelse af den resulterende LDR-fil + + + + Here you can choose the size of the resulting LDR image. + Her kan du vælge størrelsen af den resulterende LDR-billede. + + + + Set Custom Output Size + Sæt brugerdefineret outputstørrelse + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Ved at klikke på denne knap kan du indsætte en <i>bredde</i>værdi for størrelsen på det resulterende LDR-billede.<br>Efter du har tastet Enter (eller Return) vil en højdeværdi automatisk blive beregnet, og den nye størrelse tilføjet til listen. + + + Start tonemapping (CTRL+T) Start tone mapping (Ctrl+T) - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image Brug aktuelle parametre herover (præ-gamma og tone mapping operator) for at beregne et LDR-billede - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR Opdatér aktuel LDR - + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Tone map - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator Operator - + Contrast Factor Kontrastfaktor - + Saturation Factor Farvemærningsfaktor - + Detail Factor Detaljefaktor - + Contrast Equalization Kontrast-equalisering - + Predefined Display Prædefineret skærm - + Lcd Office LCD kontor - + Lcd LCD - + Lcd Bright LCD lys - + CRT CRT - - + + Color Saturation Farvemætning - + Contrast Enhancement Kontrastforbedring - + Enable Luminace Level Slå luminansniveau til - + Luminance Level Luminansniveau - + Alpha Alfa - + Beta Beta - + Noise Reduction Støjreduktion - + Version 2.3.0 Version 2.3.0 - + + Inverse Alpha + + + + + Rho + + + + Bias Bias - + Spatial Kernel Sigma Spatial kernel sigma - + Range Kernel Sigma Range kernel sigma - + Base Contrast Base kontrast - + Key Value Nøgleværdi - + Phi Phi - + Use Scales Brug skalaer - + Range Interval - + Lower Scale Lav skala - + Upper Scale Høj skala - + Brightness Lysstyrke - + Chromatic Adaptation Kromatisk adaptering - + Light Adaptation Lysadaptering - + Local Contrast Threshold Lokal kontrast-grænseværdi - + Simple Simpel - + Equation Number Ligning nummer - - Eqn 2 - Lign 2 + + Eqn &2 + - - Eqn 4 - Lign 4 + + Eqn &4 + - + Multiplier Multiplikator - + Local Tone Mapping Lokal tone mapping - + Auto Cone/Rod Auto Cone/Rod - + Cone Level Cone-niveau - + Rod Level Rod-niveau - + + This operator has no options + + + + Restore operator's default values Genopret operators standardværdier - + Restore Genopret - + Previous applied settings Forrige anvendte indstillinger - + Previous Forrige - + Next applied settings Næste anvendte indstillinger - + Next Næste - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Her kan du indlæse og gemme en tone mapping-indstillingsfil.<br>Du kan også anvende indholdet af den aktuelt indlæste indstillingsfil. - - - - Tone Mapping Settings - Tone mapping-indstillinger - - - - Save current parameters to a text file - Gem aktuelle parametre til en tekstfil - - - - Save current parameters (pregamma and TMO) to a text file. - Gem aktuelle parametre (præ-gamma og TMO) til en tekstfil. - - - - &Save to File - &Gem til fil - - - - Load an existing text file containing pregamma and TMO settings - Indlæs en eksisterende tekstfil med prægamma- og TMO-indstillinger - - - - Load an existing text file containing pregamma and TMO settings. - Indlæs en eksisterende tekstfil med prægamma- og TMO-indstillinger. - - - - &Load from File - &Indlæs fra fil - - - - Save current parameters - Gem aktuelle parametre - - - - - ... - ... - - - - Load saved parameters - Indlæs gemte parametre - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Her kan du anvende gamma-rettelse på HDR'et.<br>Gamma-rettelse vil anvendes før tone mapping. - - - - Process - Fremgang + + Queue size: %1 + - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - Gamma anvendt før tone mapping - - - - Restore pregamma's default value (1) - Genopret standardværdi for præ-gamma (1) - - - - Size of the resulting LDR image - Størrelse af den resulterende LDR-fil - - - - Here you can choose the size of the resulting LDR image. - Her kan du vælge størrelsen af den resulterende LDR-billede. - - - - Set Custom Output Size - Sæt brugerdefineret outputstørrelse - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Ved at klikke på denne knap kan du indsætte en <i>bredde</i>værdi for størrelsen på det resulterende LDR-billede.<br>Efter du har tastet Enter (eller Return) vil en højdeværdi automatisk blive beregnet, og den nye størrelse tilføjet til listen. - - - + TM Database Problem TM databaseproblem - + The database used for saving TM parameters cannot be opened. Error: %1 Databasen, der bruges til at gemme TM-parametre, kan ikke indlæses. Fejl: %1 - + Load a tonemapping settings text file... - Indlæs en tone mapping indstillingstekstfil … + Indlæs en tone mapping indstillingstekstfil… - - + + LuminanceHDR tonemapping settings text file (*.txt) Luminance HDR tone mapping indstillingstekstfil (*.txt) - - - - + + + + Aborting... Afbryder... - + File is not readable (check existence, permissions,...) Fil er ikke læsbar (check eksistens, rettigheder, ...) - + Save tonemapping settings text file to... Gem tone mapping indstillingstekstfil til... - + File is not writable (check permissions, path...) Fil er ikke skrivbar (check rettigheder, sti, ...) - + File is not readable (check permissions, path...) Fil er ikke læsbar (check rettigheder, sti, ...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Fejl: Formatet for tone mapping indstillingsfil er ændret. Denne (gamle) fil kan ikke bruges med denne version af Luminance HDR. Opret en ny. - + Custom LDR size Brugerdefineret LDR-størrelse - + Enter the width of the new size: Indtast bredden for den nye størrelse: @@ -5651,108 +6193,108 @@ Kopiér EXIF-data - + From Fra - - + + Append files to the list Tilføj filer til listen - - + + Remove selected file(s) from the list Fjern valgt(e) fil(er) fra listen - - + + Move up selected file(s) Flyt valgt(e) fil(er) op - - + + Move down selected file(s) Flyt valgt(e) fil(er) ned - + To Til - + Log Log - + Exif operations report EXIF-operationsrapport - - &Show only: - &Vis kun: + + Show onl&y: + - + Filter messages based on severity Filtrér beskeder baseret på alvorlighed - + All messages Alle beskeder - + Errors only Kun fejl - - &Filter log messages: - &Filtrér logbeskeder: + + Filter &log messages: + - + Clear filter text Nulstil filtertekst - + Keep existing Exif tags in destination file Behold eksisterende EXIF-tags i destinationsfil - + &Cancel &Annuller - + &Start &Start - - + + All Supported formats Alle understøttede formater - - + + Select the input images Vælg inputbilleder - + &Done &Færdig @@ -5766,27 +6308,33 @@ %1 Licensdokument ikke fundet - du kan finde det online: %2her%3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation Donering - + Would you like to donate? Kunne du tænke dig at donere? - + Yes, I'd love to! Ja, det vil jeg gerne! - + Stop Bothering Me Stop med at genere mig - + Remind me later Påmind mig senere @@ -5810,4 +6358,4 @@ Klik for at downloade, eller vælg Hjælp->Opdatér! - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_de.ts luminance-hdr-2.5.1/i18n/lang_de.ts --- luminance-hdr-2.5.0/i18n/lang_de.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_de.ts 2017-05-10 19:14:06.000000000 +0000 @@ -3,8 +3,8 @@ AboutLuminance - About Luminance - Über Luminance HDR + About Luminance HDR + @@ -12,12 +12,8 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -30,45 +26,55 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + + A&uthors + &Autoren + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + + &Thanks To + &Dank an + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> @@ -78,16 +84,6 @@ - - A&uthors - &Autoren - - - - &Thanks To - &Dank an - - Changelog Änderungshistorie @@ -98,7 +94,7 @@ &Lizenzvereinbarung - + &OK &OK @@ -107,8 +103,8 @@ BatchHDRDialog - Batch HDR Dialog - HDR-Stapelverarbeitung + Batch HDR + @@ -210,7 +206,7 @@ - &Hugin's align_image_stack + Hugin's align_&image_stack @@ -224,84 +220,84 @@ &Abbrechen - + &Start &Starten - + &Close &Schließen - + Progress Fortschritt - + Input/Output Quelle/Ausgabe - + Folder where created HDRs are saved Ordner zum Speichern der erzeugten HDR-Bilder - - + + Select... Wählen ... - + Folder where bracketed pictures are located (in alphabetical order) Ordner mit Aufnahmen der Belichtungsreihe (alphabetisch sortiert) - + Input folder: Quellordner: - + Output folder: Ausgabeordner: - + Anti-ghosting Anti-Ghosting - + Artifact-free High Dynamic Range Imaging Artefaktfreie HDR-Bilderzeugung - + Threshold Schwellenwert - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Vom automatischen Anti-Ghosting-Algorithmus verwendeter Schwellenwert. Ein niedrigerer Schwellenwert sorgt für eine aggressivere Verarbeitung, kann aber den erzielten Dynamikumfang verringern. Verwende die &quot;Recompute&quot;-Schaltfläche, um die tatsächliche Fleckenbildung zu sehen und den Schwellenwert entsprechend anzupassen.</p></body></html> - + O. Gallo and others O. Gallo und andere - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Automatischen Anti-Ghosting-Algorithmus aktivieren</p></body></html> - + Auto anti-ghosting Autom. Anti-Ghosting @@ -512,7 +508,7 @@ - + Specify output folder for the tone mapped files Ausgabeordner für dynamikkomprimierte Dateien angeben @@ -522,93 +518,93 @@ &Wählen ... - - + + Width of tonemapped image in percent of original image - + % % - + Output Format: Ausgabeformat: - + Image format of tonemapped images - + Image format options - + Conversion Log Konvertierungsprotokoll - + Batch operations report Bericht zur Stapelverarbeitung - - S&how only: + + Show onl&y: - + Filter messages based on severity Meldungen abhängig vom Typ filtern - + All messages Alle Meldungen - + Errors only Nur Fehler - + Success messages Nur Erfolgsmeldungen - - &Filter log messages: - &Protokolleinträge filtern: + + Filter &log messages: + - + Clear filter text Filter löschen - + Overall completion progress Gesamter Fortschritt - + &Cancel Abbre&chen - + Start batch tone mapping Stapel-Farbabbildung starten - + &Start &Starten @@ -1116,44 +1112,6 @@ - - Error: Quality must be in the range [1..100]. - - - - - Error: Threshold must be in the range [0..1]. - - - - - - Starting aligning... - Richte aus ... - - - - Resizing to width %1. - - - - - Applying gamma %1. - - - - - -Image %1 successfully saved - - - - - -ERROR: Cannot save to file: %1 - - - Error: Alignment engine not recognized. Fehler: Ausrichtungsmethode wurde nicht erkannt. @@ -1190,11 +1148,21 @@ Fehler: Die angegebene Datei mit TMO-Einstellungen konnte nicht analysiert werden!: %1 + + Error: Quality must be in the range [1..100]. + + + Error: Unknown tiff format. Fehler: Unbekanntes tiff-Format. + + Error: Threshold must be in the range [0..1]. + + + Error: The number of EV values specified is different from the number of input files. Fehler: Die Anzahl der angegebenen EV-Werte unterscheidet sich von der Anzahl der Quelldateien. @@ -1215,6 +1183,12 @@ EV-Werte wurden zugewiesen. + + + Starting aligning... + Richte aus ... + + Failed executing align_image_stack Ausführung von align_image_stack fehlgeschlagen @@ -1230,47 +1204,69 @@ Erzeuge HDR (im Speicher). - + Saving to file %1. Speichere in Datei %1. - + Image %1 saved successfully Bild %1 erfolgreich gespeichert - + Could not save %1 Konnte %1 nicht speichern - + NOT Saving HDR image to file. %1 Speichere HDR-Bild NICHT in Datei. %1 - + Exporting to HTML - + ERROR: directory %1 must exist - + Tonemapping requested, saving to file %1. Dynamikkompression angefordert, speichere in Datei %1. - + + Resizing to width %1. + + + + + Applying gamma %1. + + + + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + Tonemapping NOT requested. - + Failed loading images Bilder konnten nicht geladen werden @@ -1293,27 +1289,27 @@ &Öffnen - + Open an existing HDR image Ein vorhandenes HDR-Bild öffnen - + &New &Neu - + Create a new HDR image from one or more images Ein neues HDR-Bild aus einem oder mehreren Bildern erzeugen - + &Cancel Abbre&chen - + Cancel the drag and drop process and return to the main window Die Drag-and-Drop-Aktion abbrechen und zum Hauptfenster zurückkehren @@ -1402,320 +1398,320 @@ Bearbeitungswerkzeuge + + Images List + Bilderliste + + + + Ed&itable + Editier&bar + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Das derzeit ausgewählte Bild ist jenes, auf dem eine Anti-Ghosting Maske gezeichnet und verschoben werden kann.</p></body></html> + + + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + Das derzeit in der Liste ausgewählte Bild kann nach oben, unten, links und rechts mit den Pfeiltasten verschoben werden. +Das Histogramm des Bildes wird im oberen Feld angezeigt. + + + + Select the previous image in both lists + Vorheriges Bild in beiden Listen wählen + + + + Use this button to move the selection to the previous image in both lists. + Mit dieser Schaltfläche wird die Auswahl in beiden Listen auf die vorherigen Bilder verschoben. + + + + Select the next image in both lists + Nächstes Bild in beiden Listen wählen + + + + Use this button to move the selection to the next image in both lists. + Mit dieser Schaltfläche wird die Auswahl in beiden Listen auf die nächsten Bilder verschoben. + + - Refere&nce + Referen&ce + + The reference image is the one currently selected + Das Referenzbild ist das derzeit ausgewählte + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Das derzeit in der Liste ausgewählte Bild dient als Referenz für das editierbare Bild</p></body></html> + + + + Crop the stack of images after a selection with the left mouse button has been made + Schneidet die Bilder zu, nachdem eine Auswahl mit der linken Maustaste festgelegt wurde + + + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Mit dieser Schaltfläche können alle Bilder auf die Größe zugeschnitten werden, die vorher mit der linken Maustaste ausgewählt wurde (linke Maustaste drücken und halten, um durch Mausbewegung eine Fläche auszuwählen). + + + + &Crop All Images + Alle Bilder &zuschneiden + + + + Ctrl+X + Strg+X + + + + &Anti-Ghosting + &Anti-Ghosting + + + + &Save Images + Bilder &speichern + + + + Ctrl+S + Strg+S + + Visualization and Navigation Visualisierung und Navigation - + Fit to window An Fenster anpassen - + &Fit to Window An &Fenster anpassen - + Fill the window Fenster füllen - + Fill &window Fenster f&üllen - + Original size Originalgröße - + Origina&l Size Origina&lgröße - + &Mode: &Modus: - + Difference (E-P) Differenz (E-P) - + Overlay (E+P) Überlagerung (E+P) - + Editable Only (E) Nur editierbare (E) - + Pivot Only (P) Nur Pivot (P) - + Antighosting Mask Anti-Ghosting-Maske - + Brush Pinsel - + Lasso Lasso - - Images List - Bilderliste - - - - Ed&itable - Editier&bar - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Das derzeit ausgewählte Bild ist jenes, auf dem eine Anti-Ghosting Maske gezeichnet und verschoben werden kann.</p></body></html> - - - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - Das derzeit in der Liste ausgewählte Bild kann nach oben, unten, links und rechts mit den Pfeiltasten verschoben werden. -Das Histogramm des Bildes wird im oberen Feld angezeigt. - - - - Select the previous image in both lists - Vorheriges Bild in beiden Listen wählen - - - - Use this button to move the selection to the previous image in both lists. - Mit dieser Schaltfläche wird die Auswahl in beiden Listen auf die vorherigen Bilder verschoben. - - - - Select the next image in both lists - Nächstes Bild in beiden Listen wählen - - - - Use this button to move the selection to the next image in both lists. - Mit dieser Schaltfläche wird die Auswahl in beiden Listen auf die nächsten Bilder verschoben. - - - - The reference image is the one currently selected - Das Referenzbild ist das derzeit ausgewählte - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Das derzeit in der Liste ausgewählte Bild dient als Referenz für das editierbare Bild</p></body></html> + + Anti Ghosting + - + O. Gallo and others O. Gallo und andere - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Automatischen Anti-Ghosting-Algorithmus aktivieren</p></body></html> - + Auto anti-ghosting Autom. Anti-Ghosting - + Artifact-free HDR Imaging Artefaktfreie HDR-Bilderzeugung - + Total Patches: Korrekturen insgesamt: - + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Zeigt die prozentuale Anzahl der durch den autom. Anti-Ghosting Algorithmus berechneten Korrekturen</p></body></html> - + Threshold Schwellenwert - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> <html><head/><body><p>Vom automatischen Anti-Ghosting-Algorithmus verwendeter Schwellenwert. Ein niedrigerer Schwellenwert sorgt für eine aggressivere Verarbeitung, kann aber den erzielten Dynamikumfang verringern. Verwende die &quot;Recompute&quot;-Schaltfläche, um die tatsächliche Fleckenbildung zu sehen und den Schwellenwert entsprechend anzupassen.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Vom automatischen Anti-Ghosting-Algorithmus verwendeter Schwellenwert. Ein niedrigerer Schwellenwert sorgt für eine aggressivere Verarbeitung, kann aber den erzielten Dynamikumfang verringern. Verwende die &quot;Recompute&quot;-Schaltfläche, um die tatsächliche Fleckenbildung zu sehen und den Schwellenwert entsprechend anzupassen.</p></body></html> - + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> <html><head/><body><p>Hier klicken, um Korrekturen basierend auf dem gewählten Schwellenwert neu zu berechnen</p></body></html> - + Recompute Neu berechnen - - Crop the stack of images after a selection with the left mouse button has been made - Schneidet die Bilder zu, nachdem eine Auswahl mit der linken Maustaste festgelegt wurde - - - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Mit dieser Schaltfläche können alle Bilder auf die Größe zugeschnitten werden, die vorher mit der linken Maustaste ausgewählt wurde (linke Maustaste drücken und halten, um durch Mausbewegung eine Fläche auszuwählen). - - - - &Crop All Images - Alle Bilder &zuschneiden - - - - Ctrl+X - Strg+X - - - - &Anti-Ghosting - &Anti-Ghosting - - - - &Save Images - Bilder &speichern - - - - Ctrl+S - Strg+S - - - + Mask Maske - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> <html><head/><body><p>Eine Maske mittels Lasso oder Pinsel hinzufügen</p></body></html> - - <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - <html><head/><body><p>Maske mittels Lasso oder Pinsel entfernen</p></body></html> - - - - Anti Ghosting - - - - + &Add &Hinzufügen - + + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> + <html><head/><body><p>Maske mittels Lasso oder Pinsel entfernen</p></body></html> + + + R&emove - - + + <html><head/><body><p>Size of the brush</p></body></html> <html><head/><body><p>Größe des Pinsels</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> <html><head/><body><p>Stärke der Maske (halbtransparent)</p></body></html> - + Size: Größe: - - - + + + px px - + S&trength: - + Lasso - Draw a free hand selection area Lasso - Einen Bereich freihändig auswählen - + Brush - Paint the mask using the brush Pinsel - Die Maske mit dem Pinsel malen - + Save mask Maske speichern - + Apply saved mask Gespeicherte Maske anwenden - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1730,7 +1726,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Durch Klicken und Halten der linken Maustaste kann eine Fläche zum Zuschneiden festgelegt werden.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1741,7 +1737,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Ausrichtungswerte für das derzeit ausgewählte editierbare Bild</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1752,107 +1748,107 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Hier kann der Benutzer Ausrichtungswerte für das derzeit ausgewählte Bild betrachten und setzen</p></body></html> - + Shift values for editable image Ausrichtungswerte für das editierbare Bild - + Reset the shift values for the currently selected movable image Ausrichtungswerte für das derzeit ausgewählte Bild zurücksetzen - + &Reset Z&urücksetzen - + Reset the shift values for all the images Ausrichtungswerte für alle Bilder zurücksetzen - + Reset &All Alle zur&ücksetzen - + Hori&zontal: - + Vertica&l: - + Insert an horizontal shift value for the currently selected movable image Einen horizontalen Ausrichtungswert für das derzeit ausgewählte verschiebbare Bild einfügen - + Insert a vertical shift value for the currently selected movable image Einen vertikalen Ausrichtungswert für das derzeit ausgewählte verschiebbare Bild einfügen - + Move up of 1 pixel the currently selected movable image Das derzeit ausgewählte Bild um 1 Pixel nach oben verschieben - + Move down of 1 pixel the currently selected movable image Das derzeit ausgewählte Bild um 1 Pixel nach unten verschieben - + Move right of 1 pixel the currently selected movable image Das derzeit ausgewählte Bild um 1 Pixel nach rechts verschieben - + > > - + Move left of 1 pixel the currently selected movable image Das derzeit ausgewählte Bild um 1 Pixel nach links verschieben - + < < - + Histogram Histogramm - + Get information about the graphical elements Informationen zu den grafischen Elementen abrufen - + &What's this? &Was ist das? - + Shift+F1 Shift+F1 - + &Next > W&eiter > - + &Cancel Abbre&chen @@ -1860,78 +1856,78 @@ ExportToHtmlDialog - + Export HDR to HTML - + Export to HTML - + Web page: - + Output folder: Ausgabeordner: - + Open web browser - + Size: Größe: - + % - + Quality: Qualität: - + Images folder: - + Select... Wählen ... - + Cancel Abbrechen - + Export - + Choose a directory Verzeichnis auswählen - - + + Error: Fehler: - + must be a directory. @@ -2120,7 +2116,7 @@ GenericViewer - + Pan the image to a region Bild auf einen Ausschnitt ausrichten @@ -2128,7 +2124,7 @@ HdrCreationManager - + HdrCreationManager::loadFilesDone(): Error loading a file. @@ -2141,42 +2137,42 @@ HdrViewer - + &Mapping: Da&rstellung: - + Histogram: Histogramm: - + Linear Linear - + Gamma 1.4 Gamma 1,4 - + Gamma 1.8 Gamma 1,8 - + Gamma 2.2 Gamma 2,2 - + Gamma 2.6 Gamma 2,6 - + Logarithmic Logarithmisch @@ -2214,87 +2210,87 @@ Liste leeren - + Preview Vorschau - + Selected Image &Exposure Bildb&elichtung - + EV: EV: - + Alignment Ausrichtung - + &MTB - + &Autoalign images Bilder &automatisch ausrichten - + Hugin's align_&image_stack - + Auto-crop Bilder automatisch zuschneiden - + Anti-ghosting Anti-Ghosting - + Threshold Schwellenwert - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> <html><head/><body><p>Vom automatischen Anti-Ghosting-Algorithmus verwendeter Schwellenwert. Ein niedrigerer Schwellenwert sorgt für eine aggressivere Verarbeitung, kann aber den erzielten Dynamikumfang verringern.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Vom automatischen Anti-Ghosting-Algorithmus verwendeter Schwellenwert. Ein niedrigerer Schwellenwert sorgt für eine aggressivere Verarbeitung, kann aber den erzielten Dynamikumfang verringern. Verwende die &quot;Recompute&quot;-Schaltfläche, um die tatsächliche Fleckenbildung zu sehen und den Schwellenwert entsprechend anzupassen.</p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) Autom. Anti-Ghosting-Algorithmus (von O. Gallo und anderen) aktivieren - + Auto anti-ghosting Autom. Anti-Ghosting - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! Aktivier diese Option für manuelle Ausrichtung und manuelles Anti-Ghosting. Sie ist nur für Nutzer mit fundierten Kenntnissen der verschiedenen Schritte der HDR-Erzeugung gedacht! - + Advanced Editing Tools Fortgeschrittene Bearbeitungswerkzeuge - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2307,17 +2303,17 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Zuerst muss eine Reihe von Bildern mit unterschiedlicher Belichtung geladen werden</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Einstellungen für HDR-Erzeugung wählen - + Profile Profil - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2330,332 +2326,326 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Das erste vordefinierte Profil in der Liste liefert normalerweise das beste Ergebnis. Es sollte nur dann ein anderes gewählt werden, wenn das resultierende HDR-Bild nicht gut genug ist.</span></p></body></html> - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - + Use this only if the default profiles above do not yield good results Sollte nur verwendet werden, falls die vordefinierten Profile keine guten Ergebnisse liefern - + Use Custom Configuration Eigene Einstellungen nutzen - + HDR Creation Model Modell zur HDR-Erzeugung - + Debevec Debevec - + Robertson (Simple) Robertson (Einfach) - + Robertson (Response Recovery) Robertson (Wiederherstellung anfordern) - + Weighting Function Gewichtungsfunktion - + Triangular Dreieckig - + Gaussian Gauß - + Plateau Plateau - + Flat Kontrastarm - + Response Curve Verlaufskurve - + Linear Linear - + Gamma Gamma - + Log Protokoll - + sRGB sRGB - + Custom Benutzerdefiniert - + Response Curve Input File Eingabedatei für Verlaufskurve - + Response Curve Output File Ausgabedatei für Verlaufskurve - + Save As... Speichern als ... - + Save Settings Einstellungen speichern - + &Next > &Weiter > - + &Cancel Abbre&chen - + Image Filename Dateiname des Bildes - + Exposure Belichtung - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Alle Formate (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; TIFF-Bilder (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw RAW-Bilder (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Quellbilder wählen - + Unknown Unbekannt - + Loading... Lade ... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> <font color="#FF0000"><h3><b>WARNUNG:</b></h3></font> Luminance HDR konnte die relevanten <b>EXIF</b>-Tags in den folgenden Bildern nicht finden<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. </ul><hr>Es kann dennoch ein HDR-Bild erzeugt werden. Dazu müssen die Belichtungswerte (EV) oder die Blendenstufenabstände <b>manuell</b> festgelegt werden<hr>Falls dies <b>automatisch</b> geschehen soll, müssen in den Bilddateien zumindest die folgenden EXIF-Daten vorhanden sein: <ul><li>Belichtungskorrektur</li></ul><hr><b>HINWEIS:</b> EXIF-Daten gehen meist bei der Vorverarbeitung der Bilder verloren.<br>Zum <b>Kopieren der EXIF-Daten</b> zwischen zwei Gruppen von Dateien steht der Menüpunkt <b>"Extras -> EXIF-Daten kopieren ..."</b> zur Verfügung. - + EXIF data not found EXIF-Daten nicht gefunden - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Bilder geladen.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Um fortzufahren, müssen die Belichtungswerte manuell festgelegt werden.<br><font color="#FF0000">%1</font> Werte sind noch erforderlich.</b></h3></center> - + Loading Error: Fehler beim Laden: - + Start loading a set of images with different exposure Zuerst muss eine Reihe von Bildern mit unterschiedlicher Belichtung geladen werden - - - - + + + Error... Fehler ... - - align_image_stack failed to align images. - align_image_stack konnte die Bilder nicht ausrichten. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Konnte externes Programm "<em>align_image_stack</em>" nicht starten.<br>Bitte lies unter "Hilfe -> Inhalt ..." den Abschnitt "Setting up -> External Tools" für weitere Informationen. - + The external application "<em>align_image_stack</em>" crashed... Das externe Programm "<em>align_image_stack</em>" ist abgestürzt ... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Ein unbekannter Fehler trat während der Ausführung des Programms "<em>align_image_stack</em>" auf ... - + Now click on next button Jetzt auf "Weiter" klicken - + Aligning... Richte aus ... - - + + &Finish &Fertigstellen - + Load camera response curve file Verlaufskurve der Kamera laden - + Camera response curve (*.m);;All Files (*) Verlaufskurve der Kamera (*.m);;alle Dateien (*) - + Invalid Response Curve File Ungültige Verlaufskurvendatei - + Invalid Response Curve File: please try a different file Ungültige Datei mit Verlaufskurve: bitte eine andere Datei probieren - + Save a camera response curve file Verlaufskurve der Kamera in Datei speichern - + Camera response curve (*.m) Verlaufskurve der Kamera (*.m) - + Weights: Gewichte: - + - Response curve: - Verlaufskurve: - + - Model: - Modell: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Alle Belichtungswerte (EV) wurden festgelegt.<br>Jetzt auf "Weiter" klicken.</b></h3></font></center> @@ -2669,7 +2659,7 @@ - + &File &Datei @@ -2695,7 +2685,7 @@ - + &Print... Dr&ucken ... @@ -2711,7 +2701,7 @@ - + &Find... &Suchen ... @@ -2742,7 +2732,7 @@ - + &Add Bookmark Lesezeichen hinzuf&ügen @@ -2758,7 +2748,7 @@ - + D&elete All Alle l&öschen @@ -2828,94 +2818,94 @@ - + Help SideBar Hilfe-Seitenleiste - + LuminanceHDR Online Help Online-Hilfe zu Luminance HDR - + &Edit Bearbei&ten - + &View &Ansicht - - + + &Bookmarks &Lesezeichen - + &Quit &Beenden - + Find &Next &Weitersuchen - + Find &Previous &Rückwärts suchen - + &Contents &Inhalt - + &Search &Suchen - + &Delete Lösche&n - + Find Suchen - + Search Term: Suchbegriff: - + New Bookmark Neues Lesezeichen - + New Bookmark's Title: Titel des neuen Lesezeichens: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Entschuldige, es ist kein Handbuch installiert!</p><p>Bitte kontaktier deinen Paket-Anbieter oder, falls du die Anwendung selbst kompiliert hast, das Luminance-HDR-Team.</p></h2> - + LuminanceHDR - Help Browser Luminance HDR - Hilfe-Browser - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -3051,10 +3041,11 @@ LdrViewer - - - LDR image [%1 x %2] - LDR-Bild [%1 x %2] + + + + LDR image [%1 x %2]: %3 + @@ -3132,7 +3123,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -3142,858 +3133,944 @@ &Extras - + &Help &Hilfe - + + Luminance &HDR Online + + + + &Windows &Fenster - + &View &Ansicht - + HDR &Histogram HDR-&Histogramm - + &Toolbars &Symbolleisten - + &Preview Panel - + &File &Datei - + &Edit &Bearbeiten - + Main Toolbar Hauptsymbolleiste - + &New HDR image... &Neues HDR-Bild ... - + New HDR image Neues HDR-Bild - - + + Create a new HDR image from a set of LDR or Raw images Erstellt ein neues HDR-Bild aus einer Menge von LDR- oder RAW-Bildern - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Erstellt ein neues HDR-Bild aus einer Menge von JPEG-, RAW- oder 8/16-Bit-TIFF-Dateien - + Ctrl+N Strg+N - + &Open HDR image... HDR-Bild &öffnen ... - + Open HDR image HDR-Bild öffnen - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Lädt ein bestehendes HDR-Bild (OpenEXR, Radiance RGBE, PFS stream, RAW oder TIFF) - + Ctrl+O Strg+O - + &Save as... &Speichern als ... - + Save as... Speichern als ... - - - + + + Save image (HDR or LDR) Bild speichern (HDR oder LDR) - + Ctrl+S Strg+S - + &Quit &Beenden - - + + Quit Luminance HDR Beendet Luminance HDR - + Exit Beenden - + Ctrl+Q Strg+Q - + Rotate c&ounter-clockwise &Entgegen dem Uhrzeigersinn drehen - + Rotate counter-clockwise Entgegen dem Uhrzeigersinn drehen - - - + + + Rotate counter-clockwise the HDR image Dreht das HDR-Bild entgegen dem Uhrzeigersinn - + < < - + Rotat&e clockwise - + Rotate clockwise Im Uhrzeigersinn drehen - - - + + + Rotate clockwise the HDR image Dreht das HDR-Bild im Uhrzeigersinn - + > > - + &Low Dynamic Range - + L L - + &Fit to Dynamic Range - + Fit to dynamic range Dem Dynamikumfang anpassen - + \ \ - + &Shrink Dynamic Range - + [ [ - + &Extend Dynamic Range - + ] ] - + &Decrease Exposure - + 0 0 - + &Increase Exposure &Belichtung erhöhen - + 9 9 - + &Contents... &Inhalt ... - + About... Über ... - - - + + + Open user manual for Luminance HDR Nutzerhandbuch für Luminance HDR öffnen - + F1 F1 - + &Normal Size &Normale Größe - + Normal size Normale Größe - - - + + + View HDR image at its normal size Zeigt das HDR-Bild in seiner normalen Größe - + O O - + Zoom &In Ver&größern - - - + + + Zoom in Vergrößern - + + + - + Zoom &Out Ver&kleinern - - - + + + Zoom out Verkleinern - + - - - + &Fit in Window An &Fenster anpassen - - + + Fit in Window An Fenster anpassen - - + + Make the HDR image fit its window Passt das HDR-Bild an sein Fenster an - + W W - + &Preferences... &Einstellungen ... - + Luminance Options Optionen - - - + + + Set various options of Luminance Verschiedene Optionen von Luminance HDR festlegen - + Ctrl+P Strg+P - + &Resize... &Größe ändern ... - + Resize the HDR image Größe des HDR-Bildes ändern - - - + + + Change size of the HDR image Ändert die Größe des HDR-Bildes - + Ctrl+R Strg+R - + Copy &Exif Data... E&XIF-Daten kopieren ... - + Copy Exif Data EXIF-Daten kopieren - - - + + + Copy Exif data between two sets of files EXIF-Daten zwischen zwei Gruppen von Dateien kopieren - + Ctrl+E Strg+E - + &About Qt Über &Qt - + Show information about Qt Informationen über Qt anzeigen - - + + Show information about Qt library that is used by Luminance Zeigt Informationen über die von Luminance HDR verwendete Qt-Bibliothek - + Text &under Icons Text &unter Symbolen - + &Icons Only Nur &Symbole - + &Text Only Nur &Text - + Text &Alongside Icons Text && Symbole &nebeneinander - + &Batch Tone Mapping... &Stapel-Dynamikkompression ... - + Convert multiple HDR images to LDR Mehrere HDR- in LDR-Bilder konvertieren - - + + Convert multiple HDR images to LDR using existing settings files Mehrere HDR-Bilder mittels vorhandener Einstellungsdateien in LDR-Bilder konvertieren - + Ctrl+B Strg+B - + &What's This? &Was ist das? - - + + Get verbose information about user interface elements Weitere Informationen über Elemente der Programmoberfläche erhalten - + Shift+F1 Shift+F1 - + About &Luminance HDR Über &Luminance HDR - + Show information about Luminance HDR Informationen über Luminance HDR anzeigen - - + + Show information about Luminance HDR, its authors and contributors Informationen über Luminance HDR, dessen Autoren und Mitwirkende anzeigen - + + Ctrl+I + + + + Save HDR image &preview... HDR-Vorschaubild s&peichern ... - - - + + + Save the current HDR Preview to an LDR file Speichert die aktuelle HDR-Vorschau als LDR-Datei - + &Projective Transformation... &Projektive Transformation ... - - - + + + Apply projective transformation to the current HDR image Projektive Transformation auf aktuelles HDR-Bild anwenden - + + Ctrl+J + + + + &Crop to Selection &Auf Auswahl zuschneiden - + Crop to Selection Auf Auswahl zuschneiden - - + + Crop the image to selection rectangle Bild auf Auswahlrechteck zuschneiden - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Zuerst durch Klicken und Ziehen einen Bildbereich festlegen, dann mit dieser Schaltfläche das HDR-Bild zuschneiden - + + Ctrl+X + Strg+X + + + Remove &Selection Aus&wahl aufheben - + Remove selection rectangle Auswahlrechteck aufheben - - + + Remove selection rectangle from image area Hebt die Auswahl des Rechtecks im Bildbereich auf - + + Ctrl+Z + + + + Make a &Donation &Spenden - + Ctrl+D Strg+D - + &Lock Viewers - + Synchronize viewers mode (fit, fill or 1:1). Ansicht synchronisieren (anpassen, füllen, 1:1). - + Lock the images for sync view Ansicht aller Bilder an Ausrichtung angleichen - + S - + &Minimize - + Ma&ximize - + &Bring All to Front - + &Show Preview Panel - + Show/Hide Preview Panel Vorschaubereich anzeigen bzw. verstecken - + Ctrl+V Strg+V - + Adjust &Levels &Werte anpassen - - + + Adjust Levels Werte anpassen - - + + Tune the histogram for the current LDR Histogramm für das aktuelle LDR-Bild anpassen - + + Ctrl+L Strg+L - + Save All Alle speichern - - + + Save All LDR files Alle LDR-Dateien speichern - + &Remove Tab - + Ctrl+W Strg+W - + Fill &Window Fenster f&üllen - + Fill window with the current viewer Fenster mit aktueller Ansicht füllen - + F - + Batch &HDR... - + Ctrl+H Strg+H - + Soft Proofing Softproofing - + Gamut Check Farbumfang-Prüfung - + &Show on the right - + Show &on the bottom - + &Realtime Previews Echtzeit-Vorschau - + &Update - + &FITS Importer... - + Import four FITS files representing luminosity, red, green and blue channels Importiere vier FITS-Dateien, die Leuchtkraft, Rot-, Grün- und Blaukanal bilden - + Ctrl+F Strg+F - + White Balance Weißabgleich - + Fix color cast, can be slow Farbstich korrigieren, kann langsam sein - + E&xport to HTML - + Export to web page with embedded HDR viewer - + &Show Full Screen - + F11 F11 - + Show &Image Full Screen - + F10 F10 - - &Supported RAW Cameras + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site - - Lists all cameras supported by the program + + Open Main Web Site with the System Browser - + Ready. Now open an existing HDR image or create a new one! Fertig. Öffne jetzt ein bestehendes HDR-Bild oder erstell ein neues! - + All HDR formats Alle HDR-Formate - + Load one or more HDR images... Ein oder mehrere HDR-Bilder laden ... - + Save files in Dateien speichern in - - + + Failed to save %1 - + Done! Fertig! - + Aborting... Abbrechen ... - - + + Untitled Unbenannt - + Cropped Image Zugeschnittenes Bild - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! Anscheinend verwendest du die 32-Bit-Version von <strong>Luminance HDR</strong> auf einem 64-Bit-System. <br>Für das beste Luminance-HDR-Erlebnis lad bitte die<strong>64-Bit</strong>-Version von <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> herunter! - + Unsaved changes... Nicht gespeicherte Änderungen ... - + This HDR image has unsaved changes.<br>Do you want to save it? Für dieses Bild gibt es nicht gespeicherte Änderungen.<br>Sollen sie gespeichert werden? - + Fattal Warning Fattal-Warnung - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -4002,22 +4079,22 @@ Möchten Sie ihn dennoch anwenden? - + Untitled %1 Unbenannt %1 - + Error: %1 Fehler: %1 - + Untitled HDR Unbenanntes HDR - + FITS Image FITS-Bild @@ -4114,16 +4191,16 @@ - - - - - - - - - - + + + + + + + + + + ... ... @@ -4318,12 +4395,12 @@ Manuell - + Temperature (Kelvin) Temperatur (in Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4338,22 +4415,22 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Angabe der Farbtemperatur in Kelvin.</p></body></html> - + Green Grün - + Set here the green component to set magenta color cast removal level Grün-Komponente für die Magenta-Farbstichentfernung angeben - + Highlights Glanzlichter - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4376,32 +4453,32 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rekonstruieren</span>: Glanzlichter mit einem Stärkewert rekonstruieren</p></body></html> - + Solid White Klares Weiß - + Do not transform Nicht transformieren - + Blend Vermischen - + Reconstruct Rekonstruieren - + Level Stärke - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4416,22 +4493,22 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Stärke der Glanzlichtrekonstruktion festlegen. Niedrige Werte bevorzugen weiß, hohe Werte bevorzugen Farben.</p></body></html> - + Correct false colors in highlights Farbverfälschung in Glanzlichtern korrigieren - + Auto Brightness Automatische Helligkeit - + Brightness Helligkeit - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4446,7 +4523,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Angabe des Helligkeitswertes des Ausgabebildes. Der Standardwert ist 1,0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4461,12 +4538,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Einen bestimmten Schwarz-Punkt-Wert zum Dekodieren von RAW-Bildern benutzen. Falls deaktiviert, wird der Schwarz-Punkt-Wert automatisch berechnet.</p></body></html> - + Black Schwarz - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4481,7 +4558,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Bestimmten Wert für Schwarz-Punkt des Ausgabebildes festlegen.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4491,12 +4568,12 @@ - + Saturation Sättigung - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4506,12 +4583,12 @@ - + NR and CA Correction Rauschunterdrückung und CA-Korrektur - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4526,12 +4603,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Wavelets zur Rauschentfernung (mit Erhalt der Details) benutzen.</p></body></html> - + Enable noise reduction Rauschunterdrückung aktivieren - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4546,12 +4623,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Angabe des zu verwendenden Schwellenwertes für die Rauschunterdrückung.</p></body></html> - + Threshold: Schwellenwert: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4566,12 +4643,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Rote und blaue RAW-Ebene durch angegebenen Faktor (üblicherweise 0,999 bis 1,001) vergrößern, um chromatische Aberration zu korrigieren.</p></body></html> - + Enable Chromatic Aberration correction Chromatische Aberrationskorrektur aktivieren - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4586,7 +4663,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Festlegen des Vergrößerungsfaktors der roten Ebene</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4601,44 +4678,44 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Festlegen des Vergrößerungsfaktors der blauen Ebene</p></body></html> - + Red Component Rotanteil - + Blue Component Blauanteil - - - + + + Browse... Durchsuchen ... - + Camera profile Kameraprofil - + Monitor Profile Bildschirmprofil - + Printer profile Druckerprofil - + align_image_stack command line arguments Argumente des Befehls align_image_stack - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4651,12 +4728,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Für weitere Informationen zu den Argumenten des Befehls align_image_stack siehe </span><span style=" font-family:'Sans Serif'; font-style:italic;">Hilfe &gt; Inhalt ... &gt; Setting up &gt; External tools</span><span style=" font-family:'Sans Serif';"></span></p></body></html> - + &Cancel Abbre&chen - + &OK &OK @@ -4671,18 +4748,18 @@ Um die Änderungen zu übernehmen, muss die Anwendung neu gestartet werden! - - + + Choose a directory Verzeichnis auswählen - + Open ICC Profile ICC-Profil öffnen - + Color profile (*.icc *.ICC *.icm *.ICM) Farbprofil (*.icc *.ICC *.icm *.ICM) @@ -4790,7 +4867,7 @@ Abbre&chen - + &OK &OK @@ -4836,9 +4913,9 @@ - - - + + + Writing: @@ -4871,62 +4948,62 @@ Farbraumkonvertierung konnte nicht durchgeführt werden. Bitte anderes Bildschirmprofil wählen. - + Triangular Dreieckig - + Plateau Plateau - + Gaussian Gauß - + Flat Kontrastarm - + Linear Linear - + Gamma Gamma - + Logarithmic Logarithmisch - + sRGB sRGB - + From Calibration/Input File Von der Kalibrierung/Eingabedatei - + Debevec Debevec - + Robertson Robertson - + Robertson Response Calculation Robertson Response Berechnung @@ -5109,12 +5186,12 @@ Lichtanpassung - + Option -v -a... Option -v -a ... - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. Luminance HDR erfordert, dass align_image_stack mit der Option "-v" und ohne "-a" ausgeführt wird. Die Kommandozeilenoptionen wurden angepasst. @@ -5179,7 +5256,7 @@ HDR-Bild speichern als ... - + Save as... Speichern als ... @@ -5242,7 +5319,7 @@ Abbre&chen - + &Scale &Skalieren @@ -5463,37 +5540,37 @@ SupportedCamerasDialog - + List of supported cameras - + TextLabel - - <b>Luminance HDR</b> + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> - + With LibRaw version - + models listed - + search... - + OK @@ -5507,6 +5584,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Schwellenwert + + + TiffModeDialog @@ -5517,541 +5607,530 @@ TonemappingPanel - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Hier kann eine Datei mit Dynamikkompressionsvorgaben geladen bzw. gespeichert werden.<br>Es kann auch der Inhalt der derzeit geladenen Vorgabendatei angewendet werden. + + + + Tone Mapping Settings + Dynamikkompressionsvorgaben + + + + Save current parameters to a text file + Speichert die derzeitigen Parameter in eine Textdatei + + + + Save current parameters (pregamma and TMO) to a text file. + Speichert die derzeitigen Parameter (zu Pre-Gamma und Dynamikkompression) in eine Textdatei. + + + + Load an existing text file containing pregamma and TMO settings + Eine vorhandene Textdatei mit Vorgaben zu Pre-Gamma und Dynamikkompression laden + + + + Load an existing text file containing pregamma and TMO settings. + Eine vorhandene Textdatei mit Vorgaben zu Pre-Gamma und Dynamikkompression laden. + + + + Save current parameters + Derzeitige Parameter speichern + + + + Load saved parameters + Gespeicherte Parameter laden + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + Öffnet das aktuelle Exportverzeichnis. Dies kann in den Einstellungen geändert werden! + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Öffnen</span></a></p></body></html> + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Hier kann eine Gammakorrektur auf das HDR-Bild angewendet werden.<br>Die Gammakorrektur wird vor der Dynamikkompression durchgeführt. + + + + Process + Vorgang + + + + Result Si&ze + Ausgabeg&röße + + + + + Gamma applied before tonemapping + Vor Dynamikkompression angewandte Gammakorrektur + + + + Pre-&gamma + Pre-&Gamma + + + + Restore pregamma's default value (1) + Standardwert für Pre-Gamma setzen (1) + + + + Size of the resulting LDR image + Größe des resultierenden LDR-Bildes + + + + Here you can choose the size of the resulting LDR image. + Hier kann die Größe des resultierenden LDR-Bildes ausgewählt werden. + + + + Set Custom Output Size + Benutzerdefinierte Ausgabegröße festlegen + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Durch Klick kann die <i>Breite</i> des resultierenden LDR-Bildes manuell festgelegt werden.<br>Nach Bestätigung durch Enter (oder Return) wird die Höhe automatisch berechnet und die neue Größe der Liste hinzugefügt. + + + + Start tonemapping (CTRL+T) + Dynamikkompression starten (Strg+T) + + + + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image + LDR-Bild mithilfe der festgelegten Parameter (Pre-Gamma und Operator) berechnen + + + + &Update preview + Vorschau akt&ualisieren + + + + Ctrl+T + Strg+T + + + + Update current LDR + Aktuelles LDR-Bild aktualisieren + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Dynamikkompression - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + Ferradans - + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + Mai - + Operator Operator - + Contrast Factor Kontrastfaktor - + Saturation Factor Sättigungsfaktor - + Detail Factor Detailfaktor - + Contrast Equalization Kontrastausgleich - + Predefined Display Vordefinierte Anzeige - + Lcd Office LCD Büro - + Lcd LCD - + Lcd Bright LCD hell - + CRT CRT - - + + Color Saturation Farbsättigung - + Contrast Enhancement Kontrasterhöhung - + Enable Luminace Level Helligkeit manuell festlegen - + Luminance Level Helligkeit - + Alpha Alpha - + Beta Beta - + Noise Reduction Rauschunterdrückung - + Version 2.3.0 Version 2.3.0 - + Inverse Alpha - + Rho - + Bias Bias - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Basiskontrast - + Key Value Hauptwert - + Phi Phi - + Use Scales Skalen verwenden - + Range Bereich - + Lower Scale Untere Skala - + Upper Scale Obere Skala - + Brightness Helligkeit - + Chromatic Adaptation Chromatische Anpassung - + Light Adaptation Lichtanpassung - + Local Contrast Threshold Schwellenwert für lokalen Kontrast - + Simple Einfach - + Equation Number Ausgleichszahl - + Eqn &2 - + Eqn &4 - + Multiplier Multiplikator - + Local Tone Mapping Lokale Dynamikkompression - + Auto Cone/Rod Zapfen/Stäbchen-Automatik - + Cone Level Zapfen-Level - + Rod Level Stäbchen-Level - + This operator has no options - + Restore operator's default values Setzt die Parameter des Operators auf Standardwerte zurück - + Restore Zurücksetzen - + Previous applied settings Zuvor angewandte Werte - + Previous Vorherige - + Next applied settings Nächste angewandte Werte - + Next Nächste - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Hier kann eine Datei mit Dynamikkompressionsvorgaben geladen bzw. gespeichert werden.<br>Es kann auch der Inhalt der derzeit geladenen Vorgabendatei angewendet werden. - - - - Tone Mapping Settings - Dynamikkompressionsvorgaben - - - - Save current parameters to a text file - Speichert die derzeitigen Parameter in eine Textdatei - - - - Save current parameters (pregamma and TMO) to a text file. - Speichert die derzeitigen Parameter (zu Pre-Gamma und Dynamikkompression) in eine Textdatei. - - - - &Save to File - In Datei &speichern - - - - Load an existing text file containing pregamma and TMO settings - Eine vorhandene Textdatei mit Vorgaben zu Pre-Gamma und Dynamikkompression laden - - - - Load an existing text file containing pregamma and TMO settings. - Eine vorhandene Textdatei mit Vorgaben zu Pre-Gamma und Dynamikkompression laden. - - - - &Load from File - Aus Datei &laden - - - - Save current parameters - Derzeitige Parameter speichern - - - - - ... - ... - - - - Load saved parameters - Gespeicherte Parameter laden - - - - Export - - - - - Fast export - - - - - Opens the current export direcotory. This can be changed in the preferences! - Öffnet das aktuelle Exportverzeichnis. Dies kann in den Einstellungen geändert werden! - - - - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Öffnen</span></a></p></body></html> - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Hier kann eine Gammakorrektur auf das HDR-Bild angewendet werden.<br>Die Gammakorrektur wird vor der Dynamikkompression durchgeführt. - - - - Process - Vorgang - - - - Result Si&ze - Ausgabeg&röße - - - - - Gamma applied before tonemapping - Vor Dynamikkompression angewandte Gammakorrektur - - - - Pre-&gamma - Pre-&Gamma - - - - Restore pregamma's default value (1) - Standardwert für Pre-Gamma setzen (1) - - - - Size of the resulting LDR image - Größe des resultierenden LDR-Bildes - - - - Here you can choose the size of the resulting LDR image. - Hier kann die Größe des resultierenden LDR-Bildes ausgewählt werden. - - - - Set Custom Output Size - Benutzerdefinierte Ausgabegröße festlegen - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Durch Klick kann die <i>Breite</i> des resultierenden LDR-Bildes manuell festgelegt werden.<br>Nach Bestätigung durch Enter (oder Return) wird die Höhe automatisch berechnet und die neue Größe der Liste hinzugefügt. - - - - Start tonemapping (CTRL+T) - Dynamikkompression starten (Strg+T) - - - - Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - LDR-Bild mithilfe der festgelegten Parameter (Pre-Gamma und Operator) berechnen - - - - &Update preview - Vorschau akt&ualisieren - - - - Ctrl+T - Strg+T - - - - Update current LDR - Aktuelles LDR-Bild aktualisieren - - - - Auto Levels - - - - + Queue size: %1 Warteschlangengröße: %1 - + TM Database Problem Datenbank-Problem - + The database used for saving TM parameters cannot be opened. Error: %1 Die Datenbank zum Speichern von Dynamikkompressionsparametern konnte nicht geöffnet werden. Fehler: %1 - + Load a tonemapping settings text file... Lade Datei mit Dynamikkompressionsvorgaben ... - - + + LuminanceHDR tonemapping settings text file (*.txt) Datei mit Dynamikkompressionsvorgaben für Luminance HDR (*.txt) - - - - + + + + Aborting... Abbrechen ... - + File is not readable (check existence, permissions,...) Datei ist nicht lesbar (prüf deren Existenz, Zugriffsrechte, ...) - + Save tonemapping settings text file to... Datei mit Dynamikkompressionsvorgaben speichern als ... - + File is not writable (check permissions, path...) Datei ist nicht beschreibbar (prüf deren Zugriffsrechte, Pfad, ...) - + File is not readable (check permissions, path...) Datei ist nicht lesbar (prüf deren Zugriffsrechte, Pfad, ...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Fehler: Das Dateiformat für Dynamikkompressionsvorgaben hat sich geändert. Diese (alte) Datei kann mit dieser Version von Luminance HDR nicht verwendet werden. Erstell eine neue. - + Custom LDR size Benutzerdefinierte LDR-Größe - + Enter the width of the new size: Die Breite der neuen Größe eingeben: @@ -6196,7 +6275,7 @@ Abbre&chen - + &Start &Starten diff -Nru luminance-hdr-2.5.0/i18n/lang_es.ts luminance-hdr-2.5.1/i18n/lang_es.ts --- luminance-hdr-2.5.0/i18n/lang_es.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_es.ts 2017-05-10 19:14:06.000000000 +0000 @@ -3,8 +3,8 @@ AboutLuminance - About Luminance - Acerca de Luminance + About Luminance HDR + @@ -12,12 +12,8 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -30,45 +26,55 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + + A&uthors + A&utores + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + + &Thanks To + &Gracias a + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> @@ -78,16 +84,6 @@ - - A&uthors - A&utores - - - - &Thanks To - &Gracias a - - Changelog Registro de cambios @@ -98,7 +94,7 @@ &Licencia de conformidad - + &OK &OK @@ -107,8 +103,8 @@ BatchHDRDialog - Batch HDR Dialog - HDR por lotes + Batch HDR + @@ -210,8 +206,8 @@ - &Hugin's align_image_stack - + Hugin's align_&image_stack + Pila de &imágenes para alineación Hugin @@ -224,84 +220,84 @@ &Cancelar - + &Start &Inicio - + &Close &Cerrar - + Progress Progreso - + Input/Output Entrada/Salida - + Folder where created HDRs are saved Carpeta donde se guardan los HDRs creados - - + + Select... Seleccione... - + Folder where bracketed pictures are located (in alphabetical order) Carpeta donde se localzan las imagenes horquilladas (en orden alfabético) - + Input folder: Carpeta de entrada: - + Output folder: Carpeta de salida: - + Anti-ghosting Eliminar imagenes fantasma - + Artifact-free High Dynamic Range Imaging Alto Rango Dinámico libre de artefactos - + Threshold Umbral - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Umbral usado por el algoritmo de reduccion de imágenes fantasma. Un umbral mas bajo implica un procesado más agresivo pero puede reducir el Rango Dinámico final . Utilice el botón &quot;Recalcular&quot;para ver el resultado y ajustar el umbral </p></body></html> - + O. Gallo and others O. Gallo y otros - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Activar el algoritmo de eliminación de imágenes fantasma</p></body></html> - + Auto anti-ghosting Auto-eliminar imágenes fantasma @@ -511,7 +507,7 @@ - + Specify output folder for the tone mapped files Indica la carpeta de destino para los archivos de toneado @@ -521,93 +517,93 @@ Seleccionar - - + + Width of tonemapped image in percent of original image - + % % - + Output Format: Formato de Salida - + Image format of tonemapped images - + Image format options - + Conversion Log Log de la conversión - + Batch operations report Informe de operaciones en serie - - S&how only: + + Show onl&y: - + Filter messages based on severity Filtrar mensajes basados en su importancia - + All messages Todos los mensajes - + Errors only Solo errores - + Success messages Mensaje emitido - - &Filter log messages: - &Filtrar mensajes de log + + Filter &log messages: + - + Clear filter text Limpiar filtrado de texto - + Overall completion progress Progreso global de realización - + &Cancel &Cancelar - + Start batch tone mapping Iniciar toneado en serie - + &Start &Inicio @@ -1115,44 +1111,6 @@ - - Error: Quality must be in the range [1..100]. - - - - - Error: Threshold must be in the range [0..1]. - - - - - - Starting aligning... - - - - - Resizing to width %1. - - - - - Applying gamma %1. - - - - - -Image %1 successfully saved - - - - - -ERROR: Cannot save to file: %1 - - - Error: Alignment engine not recognized. Error: Motor de alineado no reconocido. @@ -1189,11 +1147,21 @@ El archivo especificado con configuración TMO no puede ser analizado.%1 + + Error: Quality must be in the range [1..100]. + + + Error: Unknown tiff format. Error: formato TIFF desconocido + + Error: Threshold must be in the range [0..1]. + + + Error: The number of EV values specified is different from the number of input files. Error: El valor numérico indicado en EV es diferente al número de archivos de entrada. @@ -1214,6 +1182,12 @@ Los valores de EV han sido asignados. + + + Starting aligning... + + + Failed executing align_image_stack Fallo ejecutando la alineación de la pila de imágenes @@ -1229,47 +1203,69 @@ Creando (en memoria) el HDR - + Saving to file %1. Guardando al fichero %1 - + Image %1 saved successfully Imagen %1 guardada - + Could not save %1 No se pudo guardar %1 - + NOT Saving HDR image to file. %1 NO guardada la imagen HDR al archivo %1 - + Exporting to HTML - + ERROR: directory %1 must exist - + Tonemapping requested, saving to file %1. Solicitado ajuste tonal, guardado al archivo %1 - + + Resizing to width %1. + + + + + Applying gamma %1. + + + + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + Tonemapping NOT requested. - + Failed loading images Fallo al cargar las imágenes @@ -1292,27 +1288,27 @@ &Abrir - + Open an existing HDR image Abrir una imagen HDR existente - + &New &Nuevo - + Create a new HDR image from one or more images Crear una nueva imagen HDR a partir de uno o mas archivos - + &Cancel &Cancelar - + Cancel the drag and drop process and return to the main window Cancelar el proceso de arrastrar y soltar y volver a la ventana principal @@ -1401,9 +1397,108 @@ Herramientas de edición + + Images List + Lista de imágenes + + + + Ed&itable + E&ditables + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">La imagen actualmente seleccionada es una de las que usted puede modificar y pintar una máscar de anti-ghosting.</p></body></html> + + + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + La imagen actualmente seleccionada in esta lista puede ser desplazada arriba, abajo, izquierda y derecha usando los controles inferiores. +El histiograma de esta imagen es mostrado en el recuadro superior. + + + + Select the previous image in both lists + Seleccione la imagen previa en ambas listas + + + + Use this button to move the selection to the previous image in both lists. + Use este botón para moverse a la imagen anterior en ambas listas. + + + + Select the next image in both lists + Seleccione la siguiente imagen en ambas listas + + + + Use this button to move the selection to the next image in both lists. + Use este botón para moverse en ambas listas a la siguiente imagen. + + - Refere&nce - Referencia + Referen&ce + + + + + The reference image is the one currently selected + La imagen de referencia es la actualmente seleccionada + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">La imagen actualmente seleccionada en la lista es utilizada como referencia de posición en la imagen editable</p></body></html> + + + + Crop the stack of images after a selection with the left mouse button has been made + Recorte la lista de imágenes despues de seleccionar con el botón izquierdo del ratón + + + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Pulsando este botón usted dispone de la posiblidad de recortar todas las imágenes al tamaño que previamente ha seleccionado con el botón izquierdo del ratón (pulse y mantega presionado el botón izquierdo del ratón y moviendo el puntero seleccione el area a conservar, despues presione este botón). + + + + &Crop All Images + &Recortar todas las imágenes + + + + Ctrl+X + Ctrl+X + + + + &Anti-Ghosting + Eliminar imágenes f&antasma + + + + &Save Images + &Guardar imágenes + + + + Ctrl+S + Ctrl+S @@ -1411,310 +1506,211 @@ Visualización y Navegación - + Fit to window Ajustar a la ventana - + &Fit to Window &Ajusta a la ventana - + Fill the window Llenar la ventana - + Fill &window Llenar &ventana - + Original size Tamaño original - + Origina&l Size Tamaño &Original - + &Mode: &Modo: - + Difference (E-P) Diferencia (E-P) - + Overlay (E+P) Sobreponer (E+P) - + Editable Only (E) Solo editables (E) - + Pivot Only (P) Solo puntos de anclaje (P) - + Antighosting Mask Mascara Antighosting - + Brush Brocha - + Lasso Lazo - - Images List - Lista de imágenes - - - - Ed&itable - E&ditables - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">La imagen actualmente seleccionada es una de las que usted puede modificar y pintar una máscar de anti-ghosting.</p></body></html> - - - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - La imagen actualmente seleccionada in esta lista puede ser desplazada arriba, abajo, izquierda y derecha usando los controles inferiores. -El histiograma de esta imagen es mostrado en el recuadro superior. - - - - Select the previous image in both lists - Seleccione la imagen previa en ambas listas - - - - Use this button to move the selection to the previous image in both lists. - Use este botón para moverse a la imagen anterior en ambas listas. - - - - Select the next image in both lists - Seleccione la siguiente imagen en ambas listas - - - - Use this button to move the selection to the next image in both lists. - Use este botón para moverse en ambas listas a la siguiente imagen. - - - - The reference image is the one currently selected - La imagen de referencia es la actualmente seleccionada - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">La imagen actualmente seleccionada en la lista es utilizada como referencia de posición en la imagen editable</p></body></html> + + Anti Ghosting + - + O. Gallo and others O. Gallo y otros - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Activar el algoritmo de eliminación de imágenes fantasma</p></body></html> - + Auto anti-ghosting Auto-eliminar imágenes fantasma - + Artifact-free HDR Imaging Generación de HDR sin artefactos. - + Total Patches: Grado de coincidencia - + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Muestra el grado de coincidencia en porcentaje calculado a partir del algoritmo de eliminación de imágenes fantasma</p></body></html> - + Threshold Umbral - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> <html><head/><body><p>Valor umbral usado en el algoritmo de eliminación de imágenes fantasma. Un valor umbral mas bajo implica un procesado mas agresivo pero puede reducir el rango dinamico final. Utilice el botón &quot;Recalcular&quot; para ver la actual cobertura de ajustes y fijar el umbral de forma adecuada.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Umbral usado por el algoritmo de reduccion de imágenes fantasma. Un umbral mas bajo implica un procesado más agresivo pero puede reducir el Rango Dinámico final . Utilice el botón &quot;Recalcular&quot;para ver el grado de coincidencia y ajustar el umbral </p></body></html> - + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> <html><head/><body><p>Haga Click aquí para recalcular las superposiciones en función del umbral</p></body></html> - + Recompute Recalcular - - Crop the stack of images after a selection with the left mouse button has been made - Recorte la lista de imágenes despues de seleccionar con el botón izquierdo del ratón - - - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Pulsando este botón usted dispone de la posiblidad de recortar todas las imágenes al tamaño que previamente ha seleccionado con el botón izquierdo del ratón (pulse y mantega presionado el botón izquierdo del ratón y moviendo el puntero seleccione el area a conservar, despues presione este botón). - - - - &Crop All Images - &Recortar todas las imágenes - - - - Ctrl+X - Ctrl+X - - - - &Anti-Ghosting - Eliminar imágenes f&antasma - - - - &Save Images - &Guardar imágenes - - - - Ctrl+S - Ctrl+S - - - + Mask Máscara - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> <html><head/><body><p>Añadir una máscara utilizando un lazo o brocha</p></body></html> - - <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - <html><head/><body><p>Eliminar una mascara utilizando un lazo o una brocha</p></body></html> - - - - Anti Ghosting - - - - + &Add &Añadir - + + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> + <html><head/><body><p>Eliminar una mascara utilizando un lazo o una brocha</p></body></html> + + + R&emove E&liminar - - + + <html><head/><body><p>Size of the brush</p></body></html> <html><head/><body><p>Tamaño de la brocha</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> <html><head/><body><p>Intensidad de la máscara (semi transparente)</p></body></html> - + Size: Tamaño: - - - + + + px px - + S&trength: eS&fuerzo: - + Lasso - Draw a free hand selection area Lazo - Dibujar a mano un área de selección - + Brush - Paint the mask using the brush Brocha - Dibujar la máscara utilizando la brocha - + Save mask Guardar la máscara - + Apply saved mask Aplicar la máscara guardada - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1729,7 +1725,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Pulsando y manteniendo pulsado el botón izquierdo del ratón usted habilita el area de recorte.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1740,7 +1736,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Valores de desplazamiento para la imagen actualmente seleccionada</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1751,107 +1747,107 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aqui el usuario puede ver y ajustar los valores de desplazamiento de la imagen actualmente seleccionada</p></body></html> - + Shift values for editable image Valores de desplazamiento para la imagen editable - + Reset the shift values for the currently selected movable image Restaura los valores modificados para la imagen seleccionada - + &Reset &Restaurar - + Reset the shift values for all the images Restaura los valores modificados en todas las imágenes - + Reset &All Restaurar &todas - + Hori&zontal: Hori&zontal: - + Vertica&l: Vertica&l: - + Insert an horizontal shift value for the currently selected movable image Inserta una desplazamiento horizontal para la actual imagen - + Insert a vertical shift value for the currently selected movable image Inserta un desplazamiento vertical para la imagen actual - + Move up of 1 pixel the currently selected movable image Eleva un (1) pixel la imagen actual - + Move down of 1 pixel the currently selected movable image Desciendo un (1) pixel la imagen actual - + Move right of 1 pixel the currently selected movable image Desplaza un (1) pixel a la derecha la imagen actual - + > > - + Move left of 1 pixel the currently selected movable image Desplaza un (1) pixel a la izquierda la imagen actual - + < < - + Histogram Histograma - + Get information about the graphical elements Obtiene información acerca de los elementos gráficos - + &What's this? ¿&Que es esto? - + Shift+F1 Shift+F1 - + &Next > &Siguiente > - + &Cancel &Cancelar @@ -1859,78 +1855,78 @@ ExportToHtmlDialog - + Export HDR to HTML Exportar HDR a HTML - + Export to HTML Exportar a HTML - + Web page: Página Web - + Output folder: Carpeta de salida: - + Open web browser Abrir navegador - + Size: Tamaño: - + % % - + Quality: Calidad: - + Images folder: Carpeta de las imágenes: - + Select... Seleccione... - + Cancel Cancelar - + Export Exportar - + Choose a directory Seleccione un directorio - - + + Error: Error: - + must be a directory. debe ser un directorio. @@ -2119,7 +2115,7 @@ GenericViewer - + Pan the image to a region Mover la imagen a una región @@ -2127,7 +2123,7 @@ HdrCreationManager - + HdrCreationManager::loadFilesDone(): Error loading a file. @@ -2140,42 +2136,42 @@ HdrViewer - + &Mapping: &Mapping: - + Histogram: Histograma: - + Linear Lineal - + Gamma 1.4 Gamma 1.4 - + Gamma 1.8 Gamma 1.8 - + Gamma 2.2 Gamma 2.2 - + Gamma 2.6 Gamma 2.6 - + Logarithmic Logaritmica @@ -2213,87 +2209,87 @@ Limpiar la lista - + Preview Previsualizar - + Selected Image &Exposure &Exposición de la imagen seleccionada - + EV: EV: - + Alignment Alinear - + &MTB &MTB - + &Autoalign images &Auto-alinear imágenes - + Hugin's align_&image_stack Pila de &imágenes para alineación Hugin - + Auto-crop Auto-recortar - + Anti-ghosting Eliminar imagenes fantasma - + Threshold Umbral - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> <html><head/><body><p>Valor umbral usado en el algoritmo de eliminación de imágenes fantasma. Un valor umbral mas bajo implica un procesado mas agresivo pero puede reducir el rango dinamico final. </p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Umbral usado por el algoritmo de reduccion de imágenes fantasma. Un umbral mas bajo implica un procesado más agresivo pero puede reducir el Rango Dinámico final . Utilice el botón &quot;Recalcular&quot;para ver el resultado y ajustar el umbral </p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) Activa el algoritmo de eliminación de imágenes fantasma (O. Gallo et al.) - + Auto anti-ghosting Auto-eliminar imágenes fantasma - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! Active esta opción para la alineación manual o la eliminación manual de imágenes fantasma. Solo se recomienda para usuarios con elevados conocimientos en los pasos de creación de imágenes HDR. - + Advanced Editing Tools Herramientas avancadas de edición - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2306,17 +2302,17 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Comience cargando un conjunto de imágenes con diferente exposición</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Seleccione los parámetros para la creación del HDR - + Profile Perfil - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2329,332 +2325,326 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">El primer perfil predefinido en la lista generalmente producirá los mejores resultados. Cámbielo solo si las imágenes HDR resultantes no son suficientemente buenas.</span></p></body></html> - + Profile 1 Perfil 1 - + Profile 2 Perfil 2 - + Profile 3 Perfil 3 - + Profile 4 Perfil 4 - + Profile 5 Perfil 5 - + Profile 6 Perfil 6 - + Use this only if the default profiles above do not yield good results Utilice este solo si los perfiles por defecto no proporcionan buenos resultados - + Use Custom Configuration Seleccione una configuración personalizada - + HDR Creation Model Modelo de creción de HDR - + Debevec Debevec - + Robertson (Simple) Robertson (Simple) - + Robertson (Response Recovery) Robertson (Recuperación de respuesta) - + Weighting Function Función de ponderación - + Triangular Triangular - + Gaussian Gaussian - + Plateau Plateau - + Flat Plano - + Response Curve Curva de respuesta - + Linear Lineal - + Gamma Gamma - + Log Log - + sRGB sRGB - + Custom Personalizado - + Response Curve Input File Fichero de entrada de Curva de Respuesta - + Response Curve Output File Fichero de salida de Curva de Respuesta - + Save As... Guardar como... - + Save Settings Guardar ajustes - + &Next > &Siguiente > - + &Cancel &Cancelar - + Image Filename Nombre del archivo de imagen - + Exposure Exposición - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Todos los formatos (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; Imágenes TIFF (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Imágenes RAW (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Seleccionar las imágenes iniciales - + Unknown Desconocido - + Loading... Cargando... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR no consiguió encontrar las etiquetas <b>EXIF</b> para las siguientes imágenes:<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. </ul><hr>Puede proceder a crear un HDR. Para ello debe insertar <b>manually</b>el valor de exposición EV o los valores de paso.<hr>Si quiere que Luminance HDR lo haga <b>automaticamente</b>, tiene que cargar imagenes que tengan al menos el siguiente dato EXIF: <ul><li>Valor de exposición</li></ul><hr><b>Comentario:</b>La perdida de datos EXIF se produce cuando se realiza un preproceso de las imagenes.<br>Puede realizar una copia de los dtos exif</b> entre dos grupos de imagenes con <b>Herramientas->Copiar Datos Exif... - + EXIF data not found Datos EXIF no encontrados - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Imágenes cargadas.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Para continuar usted necesita introuducir manualmente los valores de exposición.<br><font color="#FF0000">%1</font> valores son necesarios.</b></h3></center> - + Loading Error: Error en la carga: - + Start loading a set of images with different exposure Comience cargando un conjunto de imágenes con diferente exposición - - - - + + + Error... Error... - - align_image_stack failed to align images. - align_image_stack falló al alinear las imágenes. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Falló al iniciar una aplicación externa "<em>align_image_stack</em>".<br>Por favor, lea "Ayuda -> Contenidos.....-> Ajustes -> Herramientas externas" para obtener mas información. - + The external application "<em>align_image_stack</em>" crashed... La aplicación externa "<em>pila_alineación_imagen</em>" falló... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Ha ocurrido un error desconocido cuando se ejecutaba la aplicación "<em>pila_alineación_imagen</em>"... - + Now click on next button Ahora haga clic en el siguiente botón - + Aligning... Alineando... - - + + &Finish &Finalizar - + Load camera response curve file Cargar el fichero de la curva de respuesta de la cámara - + Camera response curve (*.m);;All Files (*) Curva de respuesta de la cámara (*.m);;Todos los ficheros (*) - + Invalid Response Curve File Fichero Inválido de curva de respuesta de la cámara - + Invalid Response Curve File: please try a different file Fichero Inválido de curva de respuesta de la cámara: Por favor, pruebe con uno diferente - + Save a camera response curve file Guardar un fichero de curva de respuesta de la camara - + Camera response curve (*.m) Curva de respuesta de la cámara (*.m) - + Weights: Peso: - + - Response curve: - Curva de respuesta: - + - Model: - Modelo: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Todos los valores de EV (Exposición) han sido establecidos.<br>Haga clic en el botón Siguiente.</b></h3></font></center> @@ -2668,7 +2658,7 @@ - + &File &Archivo @@ -2694,7 +2684,7 @@ - + &Print... im&Primir @@ -2710,7 +2700,7 @@ - + &Find... &Encontrar @@ -2741,7 +2731,7 @@ - + &Add Bookmark &Añadir marcador @@ -2757,7 +2747,7 @@ - + D&elete All Borrar &Todo @@ -2827,94 +2817,94 @@ - + Help SideBar Barra lateral de ayuda - + LuminanceHDR Online Help LuminanceHDR Ayuda en línea - + &Edit &Editar - + &View &Ver - - + + &Bookmarks &Marcadores - + &Quit &Quitar - + Find &Next Encontrar &Siguiente - + Find &Previous Encontrar &Previo - + &Contents &Contenidos - + &Search &Buscar - + &Delete &Borrar - + Find Buscar - + Search Term: Palabra a buscar: - + New Bookmark Nuevo marcador - + New Bookmark's Title: Título del nuevo marcador: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Perdone, no se ha instalado el manua.</p><p>Por favor, contacte con el proveedor de su paquete o con el equipo de Luminance HDR si usted quiere montar la aplicación usted mismo</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR - Lector de la ayuda - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -3050,10 +3040,11 @@ LdrViewer - - - LDR image [%1 x %2] - Imagen LDR [%1 x %2] + + + + LDR image [%1 x %2]: %3 + @@ -3131,7 +3122,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -3141,858 +3132,944 @@ &Herramientas - + &Help A&yuda - + + Luminance &HDR Online + + + + &Windows V&entanas - + &View &Ver - + HDR &Histogram &Histograma del HDR - + &Toolbars &Barra de Herramientas - + &Preview Panel - + &File &Archivo - + &Edit &Editar - + Main Toolbar Barra de herramientas principal - + &New HDR image... &Nueva imagen HDR - + New HDR image Nueva imagen HDR - - + + Create a new HDR image from a set of LDR or Raw images Crear una nueva imagen HDR a partir de un conjunto de LDR o imágenes RAW - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Crear una nueva imagen HDR a partir de un conjunto de ficheros JPEG, Raw, or 8/16 bpc TIFF - + Ctrl+N Ctrl+N - + &Open HDR image... &Abrir imagen HDR - + Open HDR image Abrir una imagen HDR - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Cargar un ficherio de imagen HDR existente (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + Ctrl+O Ctrl+O - + &Save as... &Guardar como ... - + Save as... Guardar como... - - - + + + Save image (HDR or LDR) Guardar imagen (HDR o LDR) - + Ctrl+S Ctrl+S - + &Quit &Quitar - - + + Quit Luminance HDR Salir de Luminance HDR - + Exit Abandona el programa - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Rotar a la izquierda - + Rotate counter-clockwise Rotar a la izquierda - - - + + + Rotate counter-clockwise the HDR image Rotar a la izquierda la imagen HDR - + < < - + Rotat&e clockwise - + Rotate clockwise Rotar a la derecha - - - + + + Rotate clockwise the HDR image Rotar a la derecha la imagen HDR - + > > - + &Low Dynamic Range - + L L - + &Fit to Dynamic Range - + Fit to dynamic range Ajusta al rango dinámico - + \ \ - + &Shrink Dynamic Range - + [ [ - + &Extend Dynamic Range - + ] ] - + &Decrease Exposure - + 0 0 - + &Increase Exposure &Aumentar exposición - + 9 9 - + &Contents... &Contenidos... - + About... Acerca de... - - - + + + Open user manual for Luminance HDR Abrir el manual de usuario de Luminance HDR - + F1 F1 - + &Normal Size &Restaurar zoom - + Normal size Tamaño normal - - - + + + View HDR image at its normal size Ver la imagen HDR a su tamaño normal - + O O - + Zoom &In A&umentar zoom - - - + + + Zoom in Zum acercar - + + + - + Zoom &Out R&educir zoom - - - + + + Zoom out Zum alejar - + - - - + &Fit in Window &Ajustar en la ventana - - + + Fit in Window Ajustar a la ventana - - + + Make the HDR image fit its window Ajustar la imagen HDR a la ventana - + W W - + &Preferences... &Preferencias... - + Luminance Options Opciones Luminance - - - + + + Set various options of Luminance Ajustar varios parámetros de Luminance - + Ctrl+P Ctrl+P - + &Resize... Modifica&R Tamaño... - + Resize the HDR image Modificar tamaño de la la imagen HDR - - - + + + Change size of the HDR image Cambiar el tamaño de la imagen HDR - + Ctrl+R Ctrl+R - + Copy &Exif Data... &Copiar info EXIF... - + Copy Exif Data Copiar datos EXIF - - - + + + Copy Exif data between two sets of files Copiar datos EXIF entre dos grupos de imágenes - + Ctrl+E Ctrl+E - + &About Qt Ac&erca de Qt - + Show information about Qt Mostrar información sobre Qt - - + + Show information about Qt library that is used by Luminance Mostrar información sobre la librería Qt que es utilizada por Luminance - + Text &under Icons Texto &bajo los Iconos - + &Icons Only Solo &Iconos - + &Text Only Solo &Texto - + Text &Alongside Icons Texto &Junto a los Iconos - + &Batch Tone Mapping... &Toneado en Serie... - + Convert multiple HDR images to LDR Convertir múltiples imágenes HDR a LDR - - + + Convert multiple HDR images to LDR using existing settings files Convertir múltiples imágenes HDR a LDR utilizando ficheros de ajustes existentes - + Ctrl+B Ctrl+B - + &What's This? &Que es esto? - - + + Get verbose information about user interface elements Obtener información sobre los elementos del interfaz de usuario - + Shift+F1 Shift+F1 - + About &Luminance HDR Sobre &Luminance HDR - + Show information about Luminance HDR Mostrar información sobre Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Mostrar información sobre Luminance HDR, sus autores y sus colaboradores - + + Ctrl+I + + + + Save HDR image &preview... Guardar&previsualización de imagen HDR... - - - + + + Save the current HDR Preview to an LDR file Guardar la previsualización actual del HDR a un fichero LDR - + &Projective Transformation... Transformación &Proyectiva - - - + + + Apply projective transformation to the current HDR image Aplicar una transfromación proyectiva a la imagen HDR actual - + + Ctrl+J + + + + &Crop to Selection Re&cortar a la selección - + Crop to Selection Recortar a la selección - - + + Crop the image to selection rectangle Recortar la imagen al rectangulo de selección - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Haz clic y arrastraa sobre la imagen para crear una selección, entonces usa este botón para recortar una nueva imagen HDR - + + Ctrl+X + Ctrl+X + + + Remove &Selection Eliminar &Selección - + Remove selection rectangle Eliminar rectángulo de selección - - + + Remove selection rectangle from image area Eliminar el rectángulo de selección del area de la imagen - + + Ctrl+Z + + + + Make a &Donation Hacer una &Donación - + Ctrl+D Ctlr+D - + &Lock Viewers - + Synchronize viewers mode (fit, fill or 1:1). Modo de sincronización de visores (ajustar, llenar o 1:1) - + Lock the images for sync view Bloquear las imágenes para vistas sincronizadas - + S - + &Minimize - + Ma&ximize - + &Bring All to Front - + &Show Preview Panel - + Show/Hide Preview Panel Mostrar/ocultar panel de previsualización - + Ctrl+V Ctrl+V - + Adjust &Levels Ajustar nive&Les - - + + Adjust Levels Ajustar niveles - - + + Tune the histogram for the current LDR Tonear el histograma del actual LDR - + + Ctrl+L Ctlr+L - + Save All Guardar todo - - + + Save All LDR files Guardar todas las imágenes LDR - + &Remove Tab - + Ctrl+W Ctrl+W - + Fill &Window - + Fill window with the current viewer Llenar ventana con el visor activo - + F - + Batch &HDR... - + Ctrl+H Ctrl+H - + Soft Proofing Prueba inicial - + Gamut Check Prueba de gama - + &Show on the right - + Show &on the bottom - + &Realtime Previews - + &Update - + &FITS Importer... - + Import four FITS files representing luminosity, red, green and blue channels Importar cuatro ficheros FITS para los canales de luminosidad, rojo, verde y azul - + Ctrl+F Ctrl+F - + White Balance Balance de blancos - + Fix color cast, can be slow Ajustar la dominante de color puede ser lento - + E&xport to HTML - + Export to web page with embedded HDR viewer - + &Show Full Screen - + F11 - + Show &Image Full Screen - + F10 - - &Supported RAW Cameras + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site - - Lists all cameras supported by the program + + Open Main Web Site with the System Browser - + Ready. Now open an existing HDR image or create a new one! ¡Listo!. Ahora abra una imagen HDR existente o cree una nueva. - + All HDR formats Todos los formatos HDR - + Load one or more HDR images... Cargar una o mas imágenes HDR - + Save files in Guardar archivos en - - + + Failed to save %1 - + Done! Hecho! - + Aborting... Cancelando tarea... - - + + Untitled Sin título - + Cropped Image Imagen recortada - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! Parece que está ejecutando una versión de 32 bit de <strong>Luminance HDR</strong> en un sistema de 64 bit. <br>Por favor, descargue la versión de <strong>64 bit</strong> de <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> para conseguir la mejor experiencia con Luminance HDR. - + Unsaved changes... Modificaciones no guardadas... - + This HDR image has unsaved changes.<br>Do you want to save it? Esta imagen HDR tiene modificaciones sin guardar.<br> Quiere guardarlas? - + Fattal Warning Error fatal - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -4001,22 +4078,22 @@ ¿Quiere continuar? - + Untitled %1 Sin titulo %1 - + Error: %1 Error: %1 - + Untitled HDR HDR sin título - + FITS Image Imagen FITS @@ -4113,16 +4190,16 @@ - - - - - - - - - - + + + + + + + + + + ... ... @@ -4292,12 +4369,12 @@ Manual - + Temperature (Kelvin) Temperatura (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4307,22 +4384,22 @@ - + Green Verde - + Set here the green component to set magenta color cast removal level Fije aquí la componente verde para reducir el nivel de dominante magenta - + Highlights Destacados - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4336,32 +4413,32 @@ - + Solid White Blanco sólido - + Do not transform No transformar - + Blend Mezclar - + Reconstruct Reconstruir - + Level Nivel - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4371,22 +4448,22 @@ - + Correct false colors in highlights Corregir el falso color en destacados - + Auto Brightness Auto Brillo - + Brightness Brillo - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4401,7 +4478,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Especifique el nivel de brillo de la imagen final. El valor por defecto es 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4411,12 +4488,12 @@ - + Black Negro - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4426,7 +4503,7 @@ - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4441,12 +4518,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Si las luces se ven rosa, necesita disminuir el nivel de saturación. El valor por defecto es normalmente correcto.</span></p></body></html> - + Saturation Saturación - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4461,12 +4538,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Especifique el nivel de saturación. Si las luces se ven rosa, necesita disminuirlo.</span></p></body></html> - + NR and CA Correction - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4476,12 +4553,12 @@ - + Enable noise reduction Activar la reducción de ruido - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4491,12 +4568,12 @@ - + Threshold: Umbral: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4511,12 +4588,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Agranda las capas raw roja y azul según los factores determinados (normalmente, de 0.999 a 1.001) para corregir aberraciones cromáticas.</p></body></html> - + Enable Chromatic Aberration correction Activar la corrección de aberración cromática - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4526,7 +4603,7 @@ - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4536,44 +4613,44 @@ - + Red Component Componente roja - + Blue Component Componente azul - - - + + + Browse... Explorar... - + Camera profile Perfil de cámara - + Monitor Profile Perfil del monitor - + Printer profile Perfil de impresora - + align_image_stack command line arguments Argumentos del comando align_image_stack - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4586,12 +4663,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Ayuda &gt; Contenidos &gt; Configurando Luminance &gt; Herramientas externas</span><span style=" font-family:'Sans Serif';"> para saber más acerca de los argumentos de de línea de comandos de align_image_stack</span></p></body></html> - + &Cancel &Cancelar - + &OK &OK @@ -4606,18 +4683,18 @@ ¡Para que los ajusten tengán efecto, por favor reinicie la aplicación! - - + + Choose a directory Seleccione un directorio - + Open ICC Profile Abrir perfil ICC - + Color profile (*.icc *.ICC *.icm *.ICM) Perfil de color (*.icc *.ICC *.icm *.ICM) @@ -4725,7 +4802,7 @@ &Cancelar - + &OK &OK @@ -4771,9 +4848,9 @@ - - - + + + Writing: @@ -4806,62 +4883,62 @@ No se ha podido realizar la transformación de color. Por favor, seleccione un perfil de monitor diferente. - + Triangular Triangular - + Plateau Plateau - + Gaussian Gaussian - + Flat Plano - + Linear Lineal - + Gamma Gamma - + Logarithmic Logaritmica - + sRGB sRGB - + From Calibration/Input File Desde el fichero de calibración/entrada - + Debevec Debevec - + Robertson Robertson - + Robertson Response Calculation Calculo de la respuesta Robertson @@ -5044,12 +5121,12 @@ Adaptación lumínicia - + Option -v -a... Opción -v -a... - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. LuminanceHDR requiere ejecutar una alineación de la pila de imágenes con el parámetro "-v" y sin el parámetro "-a". Las opciones de la linea de comendos han sido corregidas. @@ -5114,7 +5191,7 @@ Guardar imagen HDR como... - + Save as... Guardar como... @@ -5177,7 +5254,7 @@ &Cancelar - + &Scale R&eescalar @@ -5398,37 +5475,37 @@ SupportedCamerasDialog - + List of supported cameras - + TextLabel - - <b>Luminance HDR</b> + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> - + With LibRaw version - + models listed - + search... - + OK @@ -5442,6 +5519,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Umbral + + + TiffModeDialog @@ -5452,543 +5542,532 @@ TonemappingPanel - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Aqui usted puede cargar y guardar archivos de configuración de toneado.<br>Usted puede aplicar los parámetros actualmente cargados en el archivo de configuración. + + + + Tone Mapping Settings + Opciones de Ajuste Tonal + + + + Save current parameters to a text file + Guardar parámetros actuales a un archivo de texto + + + + Save current parameters (pregamma and TMO) to a text file. + Guardar parámetros actuales (pregamma y TMO) a un archivo de texto. + + + + Load an existing text file containing pregamma and TMO settings + Cargar un archivo de texto conteniendo configuración de pregamma y TMO + + + + Load an existing text file containing pregamma and TMO settings. + Carga un archivo existente conteniendo configuración de pregamma y TMO. + + + + Save current parameters + Guardar parámetros activos + + + + Load saved parameters + Cargar parámetros guardados + + + + Export + Exportar + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + Abre el directorio de exportación actual. Este puede ser cambiado en preferencias. + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Aqui usted puede aplicar una correción de gamma al archivo HDR.<br>La correción de gamma será aplicada antes del toneado. + + + + Process + Procesar + + + + Result Si&ze + Tamaño del &Resultado + + + + + Gamma applied before tonemapping + Gamma aplicada antes del mapeo tonal + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Restaurar valores gamma por defecto (1) + + + + Size of the resulting LDR image + Tamaño de la imagen LDR resultante + + + + Here you can choose the size of the resulting LDR image. + Aquí usted puede escoger el tamaño de la imagen LDR de salida. + + + + Set Custom Output Size + Ajustar tamaño de salida personalizado + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Pulsando este botón usted dispone de la posibilidad de insertar un valor de <i>ancho</i> para la imagen LDR de salida.<br>Despues de pulsar ENTER (o RETURN) se calculará automáticamente la altura y los nuevos valores serán añadidos a la lista. + + + + Start tonemapping (CTRL+T) + Iniciar ajuste tonal (CTRL+T) + + + + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image + Utilizar los parámetros activos indicados arriba (pregamma y operador de ajuste tonal) para generar la imagen LDR + + + + &Update preview + Actualizar vista previa + + + + Ctrl+T + Ctrl+T + + + + Update current LDR + Actualizar LDR activo + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Ajuste tonal - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + Ferradans - + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + Mai - + Operator Operador - + Contrast Factor Facto de Constraste - + Saturation Factor Factor de Saturacion - + Detail Factor Factor de detalle - + Contrast Equalization Equalización de Contraste - + Predefined Display Visor predeterminado - + Lcd Office Lcd Office - + Lcd Lcd - + Lcd Bright Brillo del Lcd - + CRT CRT - - + + Color Saturation Saturación de color - + Contrast Enhancement Realce del contraste - + Enable Luminace Level Activar Nivel de Luminancia - + Luminance Level Nivel de luminancia - + Alpha Alpha - + Beta Beta - + Noise Reduction Reducción de ruido - + Version 2.3.0 Versión 2.3.0 - + Inverse Alpha - + Rho - + Bias Bias - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Contraste - + Key Value Valor clave - + Phi Phi - + Use Scales Usar escalas - + Range Rango - + Lower Scale Escala baja - + Upper Scale Escala alta - + Brightness Brillo - + Chromatic Adaptation Adaptación cromática - + Light Adaptation Adaptación lumínicia - + Local Contrast Threshold Umbral de contraste local - + Simple Simple - + Equation Number Número de ecuación - + Eqn &2 - + Eqn &4 - + Multiplier Multiplicador - + Local Tone Mapping Toneado local - + Auto Cone/Rod - + Cone Level Nivel de cono - + Rod Level Nivel de cono - + This operator has no options - + Restore operator's default values Restaurar valores por defecto del operador - + Restore Restaurar - + Previous applied settings Ajustes aplicados previamente - + Previous Previo - + Next applied settings Ajustes aplicados a continuación - + Next Siguiente - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Aqui usted puede cargar y guardar archivos de configuración de toneado.<br>Usted puede aplicar los parámetros actualmente cargados en el archivo de configuración. - - - - Tone Mapping Settings - Opciones de Ajuste Tonal - - - - Save current parameters to a text file - Guardar parámetros actuales a un archivo de texto - - - - Save current parameters (pregamma and TMO) to a text file. - Guardar parámetros actuales (pregamma y TMO) a un archivo de texto. - - - - &Save to File - &Guardar en archivo - - - - Load an existing text file containing pregamma and TMO settings - Cargar un archivo de texto conteniendo configuración de pregamma y TMO - - - - Load an existing text file containing pregamma and TMO settings. - Carga un archivo existente conteniendo configuración de pregamma y TMO. - - - - &Load from File - &Cargar desde archivo - - - - Save current parameters - Guardar parámetros activos - - - - - ... - ... - - - - Load saved parameters - Cargar parámetros guardados - - - - Export - Exportar - - - - Fast export - - - - - Opens the current export direcotory. This can be changed in the preferences! - Abre el directorio de exportación actual. Este puede ser cambiado en preferencias. - - - - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Aqui usted puede aplicar una correción de gamma al archivo HDR.<br>La correción de gamma será aplicada antes del toneado. - - - - Process - Procesar - - - - Result Si&ze - Tamaño del &Resultado - - - - - Gamma applied before tonemapping - Gamma aplicada antes del mapeo tonal - - - - Pre-&gamma - - - - - Restore pregamma's default value (1) - Restaurar valores gamma por defecto (1) - - - - Size of the resulting LDR image - Tamaño de la imagen LDR resultante - - - - Here you can choose the size of the resulting LDR image. - Aquí usted puede escoger el tamaño de la imagen LDR de salida. - - - - Set Custom Output Size - Ajustar tamaño de salida personalizado - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Pulsando este botón usted dispone de la posibilidad de insertar un valor de <i>ancho</i> para la imagen LDR de salida.<br>Despues de pulsar ENTER (o RETURN) se calculará automáticamente la altura y los nuevos valores serán añadidos a la lista. - - - - Start tonemapping (CTRL+T) - Iniciar ajuste tonal (CTRL+T) - - - - Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - Utilizar los parámetros activos indicados arriba (pregamma y operador de ajuste tonal) para generar la imagen LDR - - - - &Update preview - Actualizar vista previa - - - - Ctrl+T - Ctrl+T - - - - Update current LDR - Actualizar LDR activo - - - - Auto Levels - - - - + Queue size: %1 - + TM Database Problem Problema de base de datos TM - + The database used for saving TM parameters cannot be opened. Error: %1 La base de datos usada para grabar los parámetros TM no se puede abrir. Error: %1 - + Load a tonemapping settings text file... Cargar configuración de mapa de Tonos desde archivo... - - + + LuminanceHDR tonemapping settings text file (*.txt) Archivos de configuración de ajuste tonal en formato texto para Luminance HDR (*.txt) - - - - + + + + Aborting... Cancelando... - + File is not readable (check existence, permissions,...) El archivo no es legible (compruebe su existencia, permisos,...) - + Save tonemapping settings text file to... Guardar configuración de toneado a un archivo... - + File is not writable (check permissions, path...) El archivo no es escribible (compruebe sus permisos, ruta....) - + File is not readable (check permissions, path...) El archivo no es legible (compruebe sus permisos, ruta...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Error: El formato del archivo de configuración de ajuste tonal ha cambiado. Este (viejo) fichero no puede ser utilizado con esta versión de LuminanceHDR. Crear uno nuevo. - + Custom LDR size Personalizar tamaño LDR - + Enter the width of the new size: Introduzca la anchura del nuevo tamaño: @@ -6133,7 +6212,7 @@ &Cancelar - + &Start &Inicio diff -Nru luminance-hdr-2.5.0/i18n/lang_fi.ts luminance-hdr-2.5.1/i18n/lang_fi.ts --- luminance-hdr-2.5.0/i18n/lang_fi.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_fi.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - Tietoja + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ T&ekijät - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &Kiitokset - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement &Lisenssisopimus - + &OK &OK @@ -110,227 +103,227 @@ BatchHDRDialog - Batch HDR Dialog - + Batch HDR + - + Number of bracketed images: - + - - + + Select the number of bracketed pictures used to create the HDRs - + - + Output Lopputulos - + + Choose an HDR output file format + + + + Predefined profile: - + - - Choose an HDR output file format - + + Output format: + - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 Profiili 1 - + Profile 2 Profiili 2 - + Profile 3 Profiili 3 - + Profile 4 Profiili 4 - + Profile 5 Profiili 5 - + Profile 6 Profiili 6 - - Output format: - - - - + Alignment Kohdistus - + Auto align the bracketed pictures - + - + Auto-align images - + - + Use MTB (Median Threshold Bitmap) engine - + - - MTB - MTB + + &MTB + - + Use Hugin's align_image_stack engine - + - - Hugin's align_image_stack - Huginin align_image_stack + + Hugin's align_&image_stack + - + Auto-crop - + - - Progress - - - - + &Cancel &Peruuta - + &Start &Aloita - + &Close &Sulje - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - Kynnysarvo + + Folder where created HDRs are saved + - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + Valitse... - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + Syötekansio: - - Auto anti-ghosting - + + Output folder: + Tulostekansio: - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - + + Artifact-free High Dynamic Range Imaging + - - - Select... - Valitse... + + Threshold + Kynnysarvo - - Folder where bracketed pictures are located (in alphabetical order) - + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - Syötekansio: + + O. Gallo and others + - - Output folder: - Tulostekansio: + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory Valitse lähdekoodihakemisto - + Choose a output directory Valitse tulostushakemisto - - - + + + Warning Varoitus - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? @@ -339,63 +332,63 @@ Jatketaanko? - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... - + - + Loading files... Ladataan tiedostoja... - + Completed with errors - + - + Completed without errors - + - + Error: missing EXIF data - + - + Aligning... Kohdistetaan... - + Creating HDR... Luodaan HDR... - + Doing auto anti-ghosting... - + - + Written - + - + Error: Virhe: - + Aborting... Keskeytetään... @@ -499,11 +492,6 @@ Lista HDR-kuvien tonemappaukseen käytettävistä asetustiedostoista - - Specify output folder for the tone mapped files - Määritä kohdekansio tonemapatuille tiedostoille - - Output Lopputulos @@ -511,17 +499,7 @@ Output Image Width: - - - - - % - - - - - Output Format: - + @@ -530,136 +508,165 @@ + + Specify output folder for the tone mapped files + Määritä kohdekansio tonemapatuille tiedostoille + + + Selec&t... Vali&tse... - + + + Width of tonemapped image in percent of original image + + + + + % + + + + + Output Format: + + + + + Image format of tonemapped images + + + + + Image format options + + + + Conversion Log Muuntoloki - + Batch operations report Kuvaerän toimintojen raportti - - &Show only: - &Näytä ainoastaan: + + Show onl&y: + - + Filter messages based on severity Suodata viestit vakavuuden mukaan - + All messages Kaikki viestit - + Errors only Vain virheet - + Success messages Onnistunut-viestit - - &Filter log messages: - &Suodata lokin viestit: + + Filter &log messages: + - + Clear filter text Tyhjennä suodatinteksti - + Overall completion progress Valmistumisen eteneminen - + &Cancel &Peruuta - + Start batch tone mapping Aloita kuvaerän tonemappaus - + &Start &Aloita - + Using %n thread(s) - - - - + - - - + + + Choose a directory Valitse hakemisto - + All HDR images Kaikki HDR-kuvat - + Select input images Valitse syötettävät kuvat - + Load tone mapping settings text files... Lataa tonemappauksen asetusten tekstitiedostot... - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... Prosessoidaan... - + Start processing... Aloita prosessointi... - + Close Sulje - + &Done &Valmis - + All tasks completed. Kaikki tehtävät suoritettu. - + Aborting... Keskeytetään... @@ -669,500 +676,607 @@ [T%1] Start processing %2 - + [T%1] Successfully load %2 - + [T%1] Successfully saved LDR file: %2 - + [T%1] ERROR: Cannot save to file: %2 - + [T%1] ERROR: Loading of %2 failed - + CommandLineInterfaceManager - - Error: Alignment engine not recognized. - Virhe: Kohdistusmoottoria ei tunnistettu. - - - - Error: Unknown weight function specified. - Virhe: Tuntematon painofunktio määritetty. - - - - Error: Unknown response curve specified. - Virhe: Tuntematon vastekäyrä määritetty. - - - - Error: Unknown HDR creation model specified. - Virhe: Tuntematon HDR-luontimalla määritetty. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + Käyttö: %1 [OPTIONS]... [INPUTFILES]... - - Error: Unknown tone mapping operator specified. - Virhe: Tuntematon tonemappausoperaattori määritetty. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + Virhe: Kohdistusmoottoria ei tunnistettu. + + + + Error: Unknown weight function specified. + Virhe: Tuntematon painofunktio määritetty. + + + + Error: Unknown response curve specified. + Virhe: Tuntematon vastekäyrä määritetty. + + + + Error: Unknown HDR creation model specified. + Virhe: Tuntematon HDR-luontimalla määritetty. + + + + Error: Unknown tone mapping operator specified. + Virhe: Tuntematon tonemappausoperaattori määritetty. - - + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - Virhe: EV-arvojen annettu määrä poikkeaa syötettyjen tiedostojen määrästä. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + Virhe: EV-arvojen annettu määrä poikkeaa syötettyjen tiedostojen määrästä. - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Virhe: Exif-tiedot puuttuvat kuvista ja EV-arvoja ei ole määrittety komentorivillä, poistutaan. - + EV values have been assigned. - + - + + + Starting aligning... + + + + Failed executing align_image_stack Align_image_stack käynnistäminen epäonnistui - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + - + + ERROR: directory %1 must exist + + + + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - VIRHE: Ei voida tallentaa tiedostoon: %1 + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - Käyttö: %1 [OPTIONS]... [INPUTFILES]... + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - Raahaa ja pudota + Choose action + @@ -1203,35 +1317,27 @@ DonationDialog - + Luminance HDR - Make a Donation Luminance HDr - Tee lahjoitus - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> on avoimen lähdekoodin ohjelma ja sen kehittäminen on vaatinut satoja tunteja työtä.<br /><br />Jos pidät siitä, käytät sitä työssäsi ja haluasit nähdä sen edelleen kehittyvän,<br />ole hyvä ja tue sen tekijöitä tekemällä lahjoitus.<br /><br />Haluasitko tehdä lahjoituksen Luminance HDR:lle nyt?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! Kyllä! - + Ask me again later Kysy myöhemmin uudelleen - + No, Stop bothering me! Ei, älä häiritse minua enää! @@ -1239,47 +1345,47 @@ EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable &Muokattava - + R&eference Ve&rtaus - + Select the previous image in both lists Valitse edellinen kuva molemmista listoista - + Select the next image in both lists Valitse seuraava kuva molemmissa listoissa - + Choose a directory and a prefix Valitse hakemisto ja etuliite @@ -1287,102 +1393,25 @@ EditingToolsDialog - + Editing Tools Muokkaustyökalut - - Visualization and Navigation - Visualisointi ja navigaatio + + Images List + Kuvalista - - Fit to window - Sovita ikkunaan + + Ed&itable + &Muokattava - - &Fit to Window - So&vita ikkunaan - - - - Fill the window - - - - - Fill &window - - - - - Original size - Alkuperäinen koko - - - - Origina&l Size - Alk&uperäinen koko - - - - &Mode: - - - - - Difference (E-P) - Ero (E-P) - - - - Overlay (E+P) - Peitto (E+P) - - - - Editable Only (E) - Ainoastaan muokattava (E) - - - - Pivot Only (P) - Ainoastaan pivot (P) - - - - Antighosting Mask - Haamukuvamaski - - - - - Brush - - - - - - Lasso - Lasso - - - - Images List - Kuvalista - - - - Ed&itable - &Muokattava - - - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1390,47 +1419,47 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Nyt valittu kuva on se kuva, jota voit liikuttaa ja johon voi maalata haamukuvamaskin.</p></body></html> - + The image currently selected in this list can be translated up,down,left and right using the controls below. This image's histogram is diplayed in the widget above. Listassa nyt valittua kuvaa voi siirtää ylös, alas, vasemmalle ja oikealle käyttäen alapuolella olevia nappeja. Kuvan histogrammi näytetään yllä olevassa widgetissä. - + Select the previous image in both lists Valitse edellinen kuva molemmista listoista - + Use this button to move the selection to the previous image in both lists. Käytä tätä nappia siirtääksesi valinnan edelliseen kuvaan molemmissa listoissa. - + Select the next image in both lists Valitse seuraava kuva molemmissa listoissa - + Use this button to move the selection to the next image in both lists. Käytä tätä nappia siirtääksesi valinnan seuraavaan kuvaan molemmissa listoissa. - - R&eference - Ve&rtaus + + Referen&ce + - + The reference image is the one currently selected Verrattava kuva on se kuva, joka on valittu nyt - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1438,189 +1467,254 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Listassa nyt valittu kuva toimii vertailusijaintina muokattavalle kuvalle</p></body></html> - - Tools - Työkalut + + Crop the stack of images after a selection with the left mouse button has been made + Rajaa pino kuvia kun valinta hiiren vasemmalle napilla on tehty - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Klikkaamalla tätä nappia voit rajata kaikki kuvat kokoon, jonka olet aikaisemmin valinnut hiiren vasemmalla napilla (paina ja pidä pohjassa hiiren vasenta nappia ja liikuta kursoria valitaksesi rajattavan alueen, paina sitten tätä nappia). - - O. Gallo and others - + + &Crop All Images + &Rajaa kaikki kuvat - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Ctrl+X + Ctrl+X - - Auto anti-ghosting - + + &Anti-Ghosting + - - Artifact-free HDR Imaging - + + &Save Images + &Tallenna kuvat - - Total Patches: - + + Ctrl+S + Ctrl+S - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Visualization and Navigation + Visualisointi ja navigaatio - - Threshold - Kynnysarvo + + Fit to window + Sovita ikkunaan - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + &Fit to Window + So&vita ikkunaan - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + Fill the window + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + Fill &window + - - Recompute - + + Original size + Alkuperäinen koko - - Crop the stack of images after a selection with the left mouse button has been made - Rajaa pino kuvia kun valinta hiiren vasemmalle napilla on tehty + + Origina&l Size + Alk&uperäinen koko - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Klikkaamalla tätä nappia voit rajata kaikki kuvat kokoon, jonka olet aikaisemmin valinnut hiiren vasemmalla napilla (paina ja pidä pohjassa hiiren vasenta nappia ja liikuta kursoria valitaksesi rajattavan alueen, paina sitten tätä nappia). + + &Mode: + - - &Crop All Images - &Rajaa kaikki kuvat + + Difference (E-P) + Ero (E-P) + + + + Overlay (E+P) + Peitto (E+P) + + + + Editable Only (E) + Ainoastaan muokattava (E) + + + + Pivot Only (P) + Ainoastaan pivot (P) + + + + Antighosting Mask + Haamukuvamaski + + + + Brush + + + + + Lasso + Lasso - Ctrl+X - Ctrl+X + Anti Ghosting + - - &Anti-Ghosting - + + O. Gallo and others + - - &Save Images - &Tallenna kuvat + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Ctrl+S - Ctrl+S + + Auto anti-ghosting + + + + + Artifact-free HDR Imaging + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Total Patches: + - + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + + + + + Threshold + Kynnysarvo + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + + + + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + + + + + Recompute + + + + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - L&isää + + &Add + &Lisää - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - &Poista + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Koko: - - - + + + px px - - &Strength: - &Voimakkuus: + + S&trength: + - + Lasso - Draw a free hand selection area Lasso - Piirrä valinta-alue vapaalla kädellä - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1632,10 +1726,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Klikkaamalla ja pitämällä pohjassa hiiren vasenta nappia näet rajattavan alueen.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1643,10 +1737,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Vaihda valitun muokattavan kuvan arvoja</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1654,102 +1748,191 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Täällä käyttäjä voi katsoa ja vaihtaa valitun muokattavan kuvan arvoja</p></body></html> - + Shift values for editable image Vaihda muokattavan kuvan arvot - + Reset the shift values for the currently selected movable image Nollaa valitun kuvan siirtoarvot - + &Reset &Nollaa - + Reset the shift values for all the images Nollaa kaikkien kuvien siirtoarvot - + Reset &All Nollaa &kaikki - - &Horizontal: - &Vaakasuora: + + Hori&zontal: + - - &Vertical: - &Pystysuora: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Syötä vaakasuora siirtoarvo valitulle liikutettavalle kuvalle - + Insert a vertical shift value for the currently selected movable image Syötä pystysuora siirtoarvo valitulle liikuteltavalle kuvalle - + Move up of 1 pixel the currently selected movable image Liikuta valittua liikuteltavaa kuvaa 1 pikseli ylös - + Move down of 1 pixel the currently selected movable image Liikuta valittua liikuteltavaa kuvaa 1 pikseli alas - + Move right of 1 pixel the currently selected movable image Liikuta valittua liikuteltavaa kuvaa 1 pikseli oikealle - + + > + > + + + Move left of 1 pixel the currently selected movable image Liikuta valittua liikuteltavaa kuvaa 1 pikseli vasemmalle - + + < + < + + + Histogram Histogrammi - + Get information about the graphical elements Hae tietoa graafisista elementeistä - + &What's this? &Mikä tämä on? - + Shift+F1 Shift+F1 - + &Next > &Seuraava > - + &Cancel &Peruuta + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + Tulostekansio: + + + + Open web browser + + + + + Size: + Koko: + + + + % + + + + + Quality: + Laatu: + + + + Images folder: + + + + + Select... + Valitse... + + + + Cancel + Peruuta + + + + Export + + + + + Choose a directory + Valitse hakemisto + + + + + Error: + Virhe: + + + + must be a directory. + + + + FitsImporter @@ -1764,19 +1947,19 @@ Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... Valitse... @@ -1788,7 +1971,7 @@ Luminosity (optional) - + @@ -1801,138 +1984,139 @@ Kanava 3 (sininen) - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews Lataa esikatselut - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + - - - + + + Preview Esikatselu - + Previews Esikatselut - - + + Alignment Kohdistus - + Auto-crop - + - - MTB - MTB + + &MTB + - - Hugin's align_image_stack - Huginin align_image_stack + + Hugin's align_&image_stack + - + &Autoalign images &Kohdista kuvat automaattisesti - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages Viestit - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green Vihreä - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region Panoroi kuva alueelle @@ -1940,9 +2124,14 @@ HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -2002,110 +2191,110 @@ - Currently Loaded &Files - Tällä hetkellä ladatut &tiedostot + &Currently Loaded Files + - + Add Images Lisää kuvat - + Remove Selected Image Poista valittu kuva - + Clear List - + - + Preview Esikatselu - + Selected Image &Exposure V&alitun kuvan valotus - + EV: EV: - + Alignment Kohdistus - - MTB - MTB + + &MTB + - + &Autoalign images &Kohdista kuvat automaattisesti - - Hugin's align_image_stack - Huginin align_image_stack + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold Kynnysarvo - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2114,165 +2303,165 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Aloita eri valotuksilla olevien kuvien lataaminen</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Valitse asetukset HDR:n luomiselle - + Profile - + - - Use Custom Configuration - - - - - HDR Creation Model - - - - - Robertson (Simple) - - - - - Robertson (Response Recovery) - - - - - Weighting Function - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Ensimmäinen ennalta määritetty profiili johtaa usein parhaaseen tulokseen. Vaihda sitä ainoastaan, jos HDR-kuva ei ole hyvä.</span></p></body></html> - - Flat - + + Profile 1 + Profiili 1 - - Response Curve - + + Profile 2 + Profiili 2 - - sRGB - + + Profile 3 + Profiili 3 - - Custom - + + Profile 4 + Profiili 4 - - Response Curve Input File - + + Profile 5 + Profiili 5 - - Response Curve Output File - + + Profile 6 + Profiili 6 - + Use this only if the default profiles above do not yield good results Käytä tätä ainoastaan kun oletusarvo yllä ei johda hyviin tuloksiin - - Linear - Lineaarinen - - - - Debevec - Debevec - - - - Triangular - Triangulaarinen - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Ensimmäinen ennalta määritetty profiili johtaa usein parhaaseen tulokseen. Vaihda sitä ainoastaan, jos HDR-kuva ei ole hyvä.</span></p></body></html> + + Use Custom Configuration + - - Profile 1 - Profiili 1 + + HDR Creation Model + - - - Profile 2 - Profiili 2 + + + Debevec + Debevec - - Profile 3 - Profiili 3 + + Robertson (Simple) + - - Profile 4 - Profiili 4 + + Robertson (Response Recovery) + - - Profile 5 - Profiili 5 + + Weighting Function + - - Profile 6 - Profiili 6 + + Triangular + Triangulaarinen - + Gaussian Gaussian - + Plateau Plateau - + + Flat + + + + + Response Curve + + + + + Linear + Lineaarinen + + + Gamma Gamma - + Log Loki - + + sRGB + + + + + Custom + + + + + Response Curve Input File + + + + + Response Curve Output File + + + + Save As... Tallenna nimellä... - + Save Settings - + - + &Next > &Seuraava > @@ -2282,187 +2471,181 @@ &Peruuta - + Image Filename Kuvan tiedostonimi - + Exposure Valotus - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Valitse kuvat - + Unknown Tuntematon - + Loading... Ladataan... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found EXIF-tietoja ei löytynyt - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Kuvat ladattu.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Jatkaaksesi sinun täytyy asetaa valotusarvot manuaalisesti<br><font color="#FF0000">%1</font> arvoa puuttuu.</b></h3></center> - + Loading Error: - + - + Start loading a set of images with different exposure Aloita eri valotuksella olevien kuvien sarjan lataaminen - - - - + + + Error... Virhe... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + - + The external application "<em>align_image_stack</em>" crashed... Ulkonen sovellusi "<em>align_image_stack</em>" kaatui... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Tuntematon virhe suoritettaessa "<em>align_image_stack</em>" -sovellusta... - + Now click on next button Klikkaa nyt seuraava-nappia - - + + Aligning... + Kohdistetaan... + + + + &Finish &Viimeistele - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - - - - - Aligning... - Kohdistetaan... + - + Weights: Painoarvot: - + - Response curve: - Vastekäyrä: - + - Model: - Malli: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Kaikki EV-arvot on asetettu.<br>Klikkaa seuraava-nappia.</b></h3></font></center> @@ -2470,153 +2653,259 @@ HelpBrowser - + Luminance HDR Help Luminance HDR-ohje - + + + &File + Tie&dosto + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Luminance ohje - - + + &Print... &Tulosta... - + + Ctrl+P + Ctrl+P + + + &Exit &Poistu - - + + &Find... &Etsi... - + + Ctrl+F + Ctrl+F + + + Find &Next... Etsi &seuraava... - + + F3 + + + + Find &Previous... Etsi ede&llinen... - - &Add - &Lisää + + Shift+F3 + - + - &Delete - P&oista + &Add Bookmark + L&isää kirjanmerkki - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All Po&ista kaikki - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + Help SideBar Ohjeen sivupalkki - + LuminanceHDR Online Help LuminanceHDR Online-ohje - - &File - Tie&dosto - - - + &Edit &Muokkaa - + &View &Näytä - - + + &Bookmarks &Kirjanmerkit - + &Quit &Lopeta - + Find &Next Etsi seur&aava - + Find &Previous Etsi e&dellinen - + &Contents &Sisältö - + &Search &Etsi - - &Add Bookmark - L&isää kirjanmerkki + + &Delete + P&oista - + Find Etsi - + Search Term: Hakusana: - + New Bookmark Uusi kirjanmerkki - + New Bookmark's Title: Uuden kirjanmerkin otsikko: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Anteeksi, mutta ohjetta ei ole asennettu!</p><p>Ole hyvä ja ota yhteyttä paketin tarjoajaan tai LuminanceHDR:n tiimiin jos teit sovelluksen itse</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR - Ohjeen selain - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2628,43 +2917,39 @@ HelpSideBar - - Contents - Sisältö - - - + + &Contents &Sisältö - + Se&arch Ha&e - + Searching is case insensitive Haun kirjainkoko on merkityksetön - + &Search &Hae - - + + 1 1 - + Book&marks &Kirjanmerkit - + &Add &Lisää @@ -2674,7 +2959,7 @@ &Poista - + R&emove All Poista &kaikki @@ -2684,22 +2969,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2725,12 +3010,12 @@ Quality: - Laatu: + Laatu: File size: - + @@ -2756,24 +3041,25 @@ LdrViewer - - - LDR image [%1 x %2] - LDR-kuva [%1 x %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Tasot ja Gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2781,10 +3067,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Säädä väritasoja</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2792,25 +3078,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Syöttötasot</span></p></body></html> - + Clip black Leikkaa mustaa - + Gamma Gamma - + Clip White Leikkaa valkoista - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2818,17 +3104,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Antotasot</span></p></body></html> - + &Reset &Nollaa - + &Cancel &Peruuta - + &OK &OK @@ -2837,7 +3123,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2847,830 +3133,966 @@ &Työkalut - + &Help &Apua - + + Luminance &HDR Online + + + + &Windows &Ikkunat - + &View &Näytä - + HDR &Histogram HDR Histo&grammi - + &Toolbars T&yökaluvalikot - - Preview Panel - + + &Preview Panel + - + &File Tie&dosto - + &Edit &Muokkaa - + Main Toolbar - + - + &New HDR image... &Uusi HDR-kuva... - + New HDR image Uusi HDR-kuva - - + + Create a new HDR image from a set of LDR or Raw images Luo uusi HDR-kuva sarjasta LDR- tai Raw-kuvia - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Luo uusi HDR-kuva sarjasta JPEG- tai Raw-kuvia tai sarjasta 8/16-bittisiä TIFF-tiedostoja - + Ctrl+N Ctrl+N - + &Open HDR image... &Avaa HDR-kuva... - + Open HDR image Avaa HDR-kuva - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Lataa olemassa oleva HDR-kuvatiedosto (OpenEXR, Radiance RGBE, PFS stream, RAW tai TIFF) - + Ctrl+O Ctrl+O - + &Save as... T&allenna nimellä... - + Save as... Tallenna nimellä... - - - + + + Save image (HDR or LDR) Tallenna kuva (HDR tai LDR) - + Ctrl+S Ctrl+S - + &Quit &Lopeta - - + + Quit Luminance HDR Lopeta Luminance HDR - + Exit Poistu - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Käännä vastap&äivään - + Rotate counter-clockwise Käännä vastapäivään - - - + + + Rotate counter-clockwise the HDR image Käännä HDR-kuvaa vastapäivään - + < < - - Rotate c&lockwise - Käännä m&yötäpäivään + + Rotat&e clockwise + - + Rotate clockwise Käännä myötäpäivään - - - + + + Rotate clockwise the HDR image Käännä HDR-kuvaa myötäpäivään - + > > - - Low Dynamic Range - Low Dynamic Range + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Sovita dynaamiselle vaihtuvälille + + &Fit to Dynamic Range + - + Fit to dynamic range Sovita dynaamiselle vaihteluvälille - + \ \ - - Shrink Dynamic Range - Kutista dynaaminen vaihteluväli + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Laajenna dynaamista vaihteluväliä + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Vähennä valotusta + + &Decrease Exposure + - + 0 0 - + &Increase Exposure &Lisää valotusta - + 9 9 - + &Contents... &Sisältö... - + About... Tietoja... - - - + + + Open user manual for Luminance HDR Avaa Luminance HDR:n ohje - + F1 F1 - + &Normal Size &Normaali koko - + Normal size Normaali koko - - - + + + View HDR image at its normal size Näytä HDR-kuva normaalissa koossa - + O O - + Zoom &In Lä&hennä - - - + + + Zoom in Lähennä - + + + - + Zoom &Out L&oitonna - - - + + + Zoom out Loitonna - + - - - + &Fit in Window Sovita i&kkunaan - - + + Fit in Window Sovita ikkunaan - - + + Make the HDR image fit its window Sovittaa HDR-kuvan ikkunaan jossa se on - + W W - + &Preferences... &Asetukset... - + Luminance Options Luminance Asetukset - - - + + + Set various options of Luminance Muuta monia Luminancen asetuksia - + Ctrl+P Ctrl+P - + &Resize... &Muuta kokoa... - + Resize the HDR image Muuta HDR-kuvan kokoa - - - + + + Change size of the HDR image Muuttaa HDR-kuvan kokoa - + Ctrl+R Ctrl+R - + Copy &Exif Data... Kopioi &Exif-tiedot... - + Copy Exif Data Kopioi Exif-tiedot - - - + + + Copy Exif data between two sets of files Kopioi Exif-tiedot kahden tiedostosarjan välillä - + Ctrl+E Ctrl+E - + &About Qt &Tietoja Qt:sta - + Show information about Qt Näyttää tietoa Qt:sta - - + + Show information about Qt library that is used by Luminance Näyttää tietoa Qt-kirjastosta jota Luminance käyttää - + Text &under Icons Teksti ikonien &alla - + &Icons Only Vain &ikonit - + &Text Only &Vain teksti - + Text &Alongside Icons T&eksti ja ikonit - + &Batch Tone Mapping... &Kuvasarjan tonemappaus... - + Convert multiple HDR images to LDR Muuta monta HDR-kuvaa LDR:ksi - - + + Convert multiple HDR images to LDR using existing settings files Muuta monta HDR-kuvaa LDR:ksi käyttäen olemassa olevia asetustiedostoja - + Ctrl+B Ctrl+B - + &What's This? &Mikä tämä on? - - + + Get verbose information about user interface elements Näytä enemmän tietoa käyttöliittymän elementeistä - + Shift+F1 Shift+F1 - + About &Luminance HDR Tietoja &Luminance HDR:stä - + Show information about Luminance HDR Näyttää tietoja Luminance HDR:stä - - + + Show information about Luminance HDR, its authors and contributors Näytä tietoa Luminance HDR:stä, sen kehittäjistä ja avustajista - + + Ctrl+I + + + + Save HDR image &preview... Tallenna HDR-kuvan &esikatselu... - - - + + + Save the current HDR Preview to an LDR file Tallenna nykyinen HDR-kuvan esikatselu LDR-tiedostoksi - + &Projective Transformation... &Projektiivinen muunnos... - - - + + + Apply projective transformation to the current HDR image Hyväksy projektiivinen muunnos nykyiseen HDR-kuvaan - + + Ctrl+J + + + + &Crop to Selection &Rajaa valintaan - + Crop to Selection Rajaa valintaan - - + + Crop the image to selection rectangle Rajaa kuva valinnan mukaiseksi suorakulmioksi - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Klikkaa ja vedä kuvan sisällä luodaksesi valinnan, käytä sitten tätä nappia rajataksesi uuden HDR-kuvan - + + Ctrl+X + Ctrl+X + + + Remove &Selection Poista &valinta - + Remove selection rectangle Poista valinnan suorakulmio - - + + Remove selection rectangle from image area Poista valinnan suorakulmio kuvan alueelta - + + Ctrl+Z + + + + Make a &Donation Te&e lahjoitus - + Ctrl+D Ctrl+D - - Lock Viewers - + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view - + + + + + S + + + + + &Minimize + + + + + Ma&ximize + + + + + &Bring All to Front + + + + + &Show Preview Panel + + + + + Show/Hide Preview Panel + + + + + Ctrl+V + + + + + Adjust &Levels + Säädä &tasoja + + + + + Adjust Levels + Säädä tasoja + + + + + Tune the histogram for the current LDR + Säädä nykyisen LDR:n histogrammia + + + + + Ctrl+L + Ctrl+L + + + + Save All + Tallenna kaikki + + + + + Save All LDR files + Tallenna kaikki LDR-tiedostot + + + + &Remove Tab + + + + + Ctrl+W + Ctrl+W + + + + Fill &Window + + + + + Fill window with the current viewer + + + + + F + + + + + Batch &HDR... + + + + + Ctrl+H + + + + + Soft Proofing + + + + + Gamut Check + - - Minimize - + + &Show on the right + - - Maximize - + + Show &on the bottom + - - Bring All to Front - + + &Realtime Previews + - - Show Preview Panel - + + &Update + - - Show/Hide Preview Panel - + + &FITS Importer... + - - Ctrl+V - + + Import four FITS files representing luminosity, red, green and blue channels + - - Adjust &Levels - Säädä &tasoja + + Ctrl+F + Ctrl+F - - - Adjust Levels - Säädä tasoja + + White Balance + Valkotasapaino - - - Tune the histogram for the current LDR - Säädä nykyisen LDR:n histogrammia + + Fix color cast, can be slow + - - Ctrl+L - Ctrl+L + + E&xport to HTML + - - Save All - Tallenna kaikki + + Export to web page with embedded HDR viewer + - - - Save All LDR files - Tallenna kaikki LDR-tiedostot + + &Show Full Screen + - - Remove Tab - Poista välilehti + + F11 + - - Ctrl+W - Ctrl+W + + Show &Image Full Screen + - - Fill Window - + + F10 + - - Fill window with the current viewer - + + &Supported RAW Cameras + - - Batch HDR... - + + Lists all cameras supported by the program + - - Ctrl+H - + + Ctrl+M + - - Soft Proofing - + + &Lanczos/Bilinear interpolation + - - Gamut Check - + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + - - Show on the right - + + Ctrl+K + - - Show on the bottom - + + &Online Documentation + - - Realtime Previews - + + &Developers Web Site + - - Update - Päivitä + + &Luminance HDR Web Site + - - FITS Importer... - + + Open Online Documentation Web Site with the System Browser + - - Import four FITS files representing luminosity, red, green and blue channels - + + Developers Web Site + - - Ctrl+F - Ctrl+F + + Open Developers Web Site with the System Browser + - - White Balance - Valkotasapaino + + Luminance HDR Web Site + - - Fix color cast, can be slow - + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! Valmis. Avaa nyt olemassa oleva HDR-kuva tai luo uusi! - + All HDR formats Kaikki HDR-formaatit - + Load one or more HDR images... Lataa yksi tai useampi HDR-kuva... - + Save files in Tallenna tiedostot - - Failed to save - Tallennus epäonnistui + + + Failed to save %1 + - + Done! Valmis! - + Aborting... Keskeytetään... - + + + Untitled + Nimetön + + + Cropped Image Rajattu kuva - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Tallentamattomia muutoksia... - + This HDR image has unsaved changes.<br>Do you want to save it? - + - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - + - - - Untitled - Nimetön - - - + Untitled %1 - + - + Error: %1 Virhe: %1 - + Untitled HDR - + - + FITS Image FITS-kuva @@ -3678,128 +4100,146 @@ PreferencesDialog - + Preferences Asetukset - - External Tools - Lisätyökalut - - - + Tone Mapping Tonemappaus - + RAW Conversion - + - + + Color Management + Värihallinta + + + + External Tools + Lisätyökalut + + + Interface Käyttöliittymä - - Color Management - Värihallinta + + Fast export + - + Language Kieli - + Default Previews Width - + - + px - + - + Always show Preview Panel - + - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + ... - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + - - + + Amount of threads to use on multicore/SMP machines Käytettävien säikeiden määrä moniydin/SMP-koneissa - + Batch Tonemapping Number of Threads - + - + General - + - + Quality: Laatu: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> @@ -3818,54 +4258,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: Käytä Adaptive Homogeneity-Directed interpolointia. Tämä menetelmä interpoloinnin suunnan niin, että homogeenisyys on maksimaalinen, jolloin väriartifaktien määrä on myös minimoitu.</p></body></html> - + Bilinear Bilineaarinen - + VNG VNG - + PPG PPG - + AHD AHD - - - - - - - - - - - - - - - ... - ... - - - + Median: Mediaani: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3876,11 +4298,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aseta tähän mediaanisuodattimen käyttämät ohitukset, jotka käytetään interpoloinnin jälkeen puna-vihreille ja sini-vihreille kanaville.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3891,16 +4313,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Fuji Super CCD kameroille: näytä kuva 45 astetta kallistettuna. Kameroille, jossa on ei-neliö -pikselit: älä venytä kuvaa oikeaan kuvasuhteeseen. Tämä asetus takaa, että jokainen antopikseli vastaa yhtä RAW-pikseliä.</p></body></html> - + Do not stretch or rotate pixels Älä venytä tai käännä pikseleitä - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> @@ -3913,26 +4335,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Tämä asetus sumentaa kuvaa hiukan, mutta eliminoi väärät 2x2 verkkokuviot VNG-tason menetelmällä tai sokkelot AHD-tason menetelmällä.</p></body></html> - + Interpolate RGB using 4 colours Interpoloi RGB käyttäen neljää väriä - + Color correction - + - + White Balance Valkotasapaino - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> @@ -3951,36 +4373,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manuaalinen</span>: Aseta kustomoitu lämpötila ja vihreän tason arvot</p></body></html> - + Predefined D65 Ennalta määrätty D65 - + Camera Kamera - + Auto Automaattinen - + Manual Manuaalinen - + Temperature (Kelvin) - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3991,26 +4413,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aseta tähän värilämpötila Kelvineinä.</p></body></html> - + Green Vihreä - + Set here the green component to set magenta color cast removal level Aseta tähän vihreä komponetti asettaaksesi magentan värivirheen poistotason - + Highlights - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> @@ -4029,36 +4451,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Uudelleenrakenna</span>: Uudelleenrakentaa huippukohdat käyttäen tasoarvoa</p></body></html> - + Solid White Yhtenäinen valkoinen - + Do not transform Älä muuta - + Blend Sekoita - + Reconstruct Uudelleenrakenna - + Level - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4069,26 +4491,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Anna uudelleenrakentamisen huippukohtien taso. Pienet arvot suosivat valkoisia, suuret värejä..</p></body></html> - + Correct false colors in highlights Korjaa väärät värit huippukohdissa - + Auto Brightness Automaattinen kirkkaus - + Brightness Kirkkaus - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4099,11 +4521,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Anna kirkkaus, jota käytetään lopullisessa kuvassa. Oletus on 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4114,16 +4536,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Käytä tiettyä mustan pisteen arvoa muuntaaksesi RAW-kuvia. Jos valitset off, mustan pisteen arvo lasketaan automaattisesti.</p></body></html> - + Black Musta - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4134,41 +4556,41 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Määritä mustan pisteen arvo lopulliselle kuvalle.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - - - - + NR and CA Correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4179,16 +4601,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">käytä waveletteja kohinan poistoon säilyttäen samalla oikeat yksityiskohdat.</p></body></html> - + Enable noise reduction Ota käyttöön kohinanpoisto - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4199,16 +4621,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Määritä kohinanpoiston kynnysarvo.</p></body></html> - + Threshold: Kynnysarvo: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4219,16 +4641,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Laajentaa raakoja punaisia ja sinisiä tasoja annetuilla arvoilla, normaalisti 0,999-1.001 kromaattisen aberraation korjaukseen.</p></body></html> - + Enable Chromatic Aberration correction Ota käyttöön kromaattisen aberraation korjaus - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4239,11 +4661,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aseta punaisen tason suurennuskerroin.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4254,48 +4676,48 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aseta sinisen tason suurennuskerroin.</p></body></html> - + Red Component Punainen komponentti - + Blue Component Sininen komponentti - - Monitor Profile - - - - - - + + + Browse... Selaa... - + Camera profile Kameraprofiili - + + Monitor Profile + + + + Printer profile Tulostinprofiili - + align_image_stack command line arguments - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -4304,38 +4726,38 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Lue </span><span style=" font-family:'Sans Serif'; font-style:italic;">Apua &gt; Sisätö &gt; Luminancen valmistelu &gt; Lisätyökalut</span><span style=" font-family:'Sans Serif';"> löytääksesi lisää tietoa align_image_stack komentoriviargumenteista</span></p></body></html> - + &Cancel &Peruuta - + &OK &OK - + Restart Käynnistä uudelleen - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Valitse hakemisto - + Open ICC Profile Avaa ICC-profiili - + Color profile (*.icc *.ICC *.icm *.ICM) Väriprofiili (*.icc *.ICC *.icm *.ICM) @@ -4351,99 +4773,99 @@ ProjectionsDialog - + Projective Transformation Projektiivinen muunnos - + Projections Projektiot - + Source Projection: Lähdeprojektio: - - + + Polar Polaarinen - - + + Angular Angulaarinen - - + + Cylindrical Sylinterimäinen - - + + Mirror Ball Peilipallo - + Destination Projection: Kohdeprojektio: - + Angles: Kulmat: - - - - + + + + ° * - + Bilinear Interpolation Bilineaarinen interpolaatio - + Oversample factor: Ylinäytteistyskerroin: - + Rotation (degrees) Kääntö (astetta) - + Yaw: Kääntymä (yaw): - + Pitch: Kallistuma (pitch): - + Roll: Kiertymä (roll): - + &Cancel &Peruuta - + &OK &OK @@ -4451,17 +4873,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: VIRHE: ei voida ladata tonemappauksen asetustiedostoa: - + ERROR: File too old, cannot parse Tone Mapping Setting file: VIRHE Tiedosto liian vanha, ei voida jäsentää tonemappauksen asetustiedostoa: - + ERROR: cannot parse Tone Mapping Setting file: VIRHE: ei voida jäsentää tonemappauksen asetustiedostoa: @@ -4469,6 +4891,33 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + @@ -4479,389 +4928,396 @@ I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - + + Triangular + Triangulaarinen - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Plateau - + + Gaussian + Gaussian + + + + Flat + + + + + Linear + Lineaarinen + + + + Gamma + Gamma + + + + Logarithmic + Logaritminen + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + + + + PreGamma=%1 - + - + Contrast Equalization Kontrastin tasoitus - + Contrast - + - - + + Saturation - + - + Detail - + - + Luminance Level Luminanssin taso - + Luminance Level=Auto - + - + Color Saturation Värin saturaatio - + Contrast Enhancement Kontrastin parannus - + Alpha Alpha - + Beta Beta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + + + + + InvAlpha + - + simple - + - + Equation 2 - + - + Equation 4 - + - - + + Local - + - + Bias Bias - + Spatial - + - - + + Range Range - + Base - + - + Multiplier Kerroin - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Kirkkaus - + Chromatic Adaptation Kromaattinen adaptaatio - + Light Adaptation Valon adaptaatio - + + Option -v -a... + + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float Ei voida muuntaa %1 liukuluvuksi - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 Tilapäinen hakemisto: %1 - + Using %n threads. - - - - + - + Loading file %1 Ladataan tiedosto %1 - + Successfully loaded file %1. - + - + All LDR formats Kaikki LDR-formaatit - + Save the LDR image as... Tallenna LDR-kuva nimellä... - + Save the HDR image as... Tallenna HDR-kuva nimellä... - + Save as... Tallenna nimellä... - - - Triangular - Triangulaarinen - - - - Plateau - Plateau - - - - Gaussian - Gaussian - - - - Flat - - - - - Linear - Lineaarinen - - - - Gamma - Gamma - - - - Logarithmic - Logaritminen - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - - ResizeDialog - + Scale Image Muuta kuvan kokoa - + Hdr Image Size HDR-kuvan koko - - Width: - Leveys: + + Restore original size + Palauta alkuperäinen koko + + + + &Reset + &Nollaa - + Switch between pixels or percentage Vaihda pikseleiden ja prosenttien välillä - + Pixels Pikselit - - - Percent - Prosentti - - - - Height: - Korkeus: + + + Percent + Prosentti - + Result size Valmiin kuvan koko - - Restore original size - Palauta alkuperäinen koko + + Height: + Korkeus: - - &Reset - &Nollaa + + Width: + Leveys: - + &Cancel &Peruuta - + &Scale &Muuta kuvan kokoa @@ -4874,202 +5330,250 @@ Tallennetut parametrit - - + + Comment Kommentti - + TM Operator - + - + Simple Yksinkertainen - + Equation 2 - + - + Local Contrast Threshold Paikallisen kontrastin kynnysarvo - + Bias Bias - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Base Contrast - + Alpha Alpha - + Beta Beta - - + + Color Saturation Värin saturaatio - + Noise Reduction Kohinanpoisto - + Old Fattal - + + + + + Rho + + + + + InvAlpha + - + Contrast Equalization Kontrastin tasoitus - + Contrast Factor Kontrastin kerroin - + Saturation Factor Värikylläisyyden kerroin - + Detail Factor Yksityiskohtien kerroin - + Contrast Enhancement Kontrastin parannus - + Luminance Level Luminanssin taso - + Manual Luminance Level - + - + Cone and Rod based on Luminance Cone and Rod based on Luminance - + Local Tonemapping - + - + Cone Level Cone Level - + Rod Level Rod Level - + Multiplier Kerroin - + Use Scales Use Sclaes - + Key Value Key Value - + Phi Value - + - + Range Range - + Lower Scale Lower Scale - + Upper Scale Upper Scale - + Brightness Kirkkaus - + Chromatic Adaptation Kromaattinen adaptaatio - + Light Adaptation Valon adaptaatio - + Pre-gamma - + SavingParameters - + Saving Parameters Tallennetaan parametreja - + Enter a short comment for the saved parameters: Kirjoita lyhyt kommentti tallennetuista parametreista: + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + + + + TMOProgressIndicator @@ -5078,506 +5582,553 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Kynnysarvo + + + TiffModeDialog Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - Tonemappausoperaattorit ja niiden asetukset + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Voit ladata ja tallentaa tässä tonemappauksen asetustiedoston.<br>Voit myös hyväksyä tällä hetkellä ladatun asetustiedoston sisällön. + + + + Tone Mapping Settings + Tonemappauksen asetukset + + + + Save current parameters to a text file + Tallenna nykyiset parametrit tekstitiedostoon + + + + Save current parameters (pregamma and TMO) to a text file. + Tallenna nykyiset parametrit (pregamma ja TMO) tekstitiedostoon. + + + + Load an existing text file containing pregamma and TMO settings + Lataa pregamma- ja TMO-asetukset sisältävä tekstitiedosto + + + + Load an existing text file containing pregamma and TMO settings. + Lataa pregamma- ja TMO-asetukset sisältävä tekstitiedosto. + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Voit lisätä tässä HDr-kuvaan gammakorjauksen.<br>Gammakorjaus tehdään ennen tonemappausta. + + + + Process + Käsittele + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + Gamma lisätään ennen tonemappausta + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Palauta pregamman oletusarvo (1) + + + + Size of the resulting LDR image + LDR-kuvan koko + + + + Here you can choose the size of the resulting LDR image. + Voit valita tässä LDR-kuvan lopullisen koon. + + + + Set Custom Output Size + + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Tätä nappia klikkaamalla voit asettaa <i>leveyden</i>lopulliselle LDR-kuvalle.<br>Kun olet painanut Enteriä (eli Palaa (Return)-nappia) korkeuden arvo lasketaan automaattisesti ja uusi koko listätään listaan. - + Start tonemapping (CTRL+T) Aloita tonemappaus (CTRL+T) - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image Käytä nykyisiä yllä olevia parametrejä (pregamma ja tonemappausoperaattori) LDR-kuvan luomiseen - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR - + + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + - + Tonemap - + - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator Operaattori - + Contrast Factor Kontrastin kerroin - + Saturation Factor Värikylläisyyden kerroin - + Detail Factor Yksityiskohtien kerroin - + Contrast Equalization Kontrastin tasoitus - + Predefined Display Ennalta määritelty näyttö - + Lcd Office Lcd toimisto - + Lcd Lcd - + Lcd Bright Lcd kirkas - + CRT CRT - - + + Color Saturation Värin saturaatio - + Contrast Enhancement Kontrastin parannus - + Enable Luminace Level - + - + Luminance Level Luminanssin taso - + Alpha Alpha - + Beta Beta - + Noise Reduction Kohinanpoisto - + Version 2.3.0 - + - + + Inverse Alpha + + + + + Rho + + + + Bias Bias - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Base Contrast - + Key Value Key Value - + Phi Phi - + Use Scales Use Sclaes - + Range Range - + Lower Scale Lower Scale - + Upper Scale Upper Scale - + Brightness Kirkkaus - + Chromatic Adaptation Kromaattinen adaptaatio - + Light Adaptation Valon adaptaatio - + Local Contrast Threshold Paikallisen kontrastin kynnysarvo - + Simple Yksinkertainen - + Equation Number Equation Number - - Eqn 2 - Eqn 2 + + Eqn &2 + - - Eqn 4 - Eqn 4 + + Eqn &4 + - + Multiplier Kerroin - + Local Tone Mapping Local Tone Mapping - + Auto Cone/Rod - + - + Cone Level Kartiotaso - + Rod Level Rod Level - + + This operator has no options + + + + Restore operator's default values Palauta operaattorin oletusarvot - + Restore Palauta - + Previous applied settings Aikaisemmat hyväksytyt asetukset - + Previous - + - + Next applied settings Seuraavat hyväksytyt asetukset - + Next - - - - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Voit ladata ja tallentaa tässä tonemappauksen asetustiedoston.<br>Voit myös hyväksyä tällä hetkellä ladatun asetustiedoston sisällön. - - - - Tone Mapping Settings - Tonemappauksen asetukset - - - - Save current parameters to a text file - Tallenna nykyiset parametrit tekstitiedostoon - - - - Save current parameters (pregamma and TMO) to a text file. - Tallenna nykyiset parametrit (pregamma ja TMO) tekstitiedostoon. - - - - &Save to File - - - - - Load an existing text file containing pregamma and TMO settings - Lataa pregamma- ja TMO-asetukset sisältävä tekstitiedosto - - - - Load an existing text file containing pregamma and TMO settings. - Lataa pregamma- ja TMO-asetukset sisältävä tekstitiedosto. - - - - &Load from File - - - - - Save current parameters - - - - - - ... - ... - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Voit lisätä tässä HDr-kuvaan gammakorjauksen.<br>Gammakorjaus tehdään ennen tonemappausta. - - - - Process - Käsittele - - - - Result Si&ze - + - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - Gamma lisätään ennen tonemappausta - - - - Restore pregamma's default value (1) - Palauta pregamman oletusarvo (1) - - - - Size of the resulting LDR image - LDR-kuvan koko + + Queue size: %1 + - - Here you can choose the size of the resulting LDR image. - Voit valita tässä LDR-kuvan lopullisen koon. - - - - Set Custom Output Size - - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Tätä nappia klikkaamalla voit asettaa <i>leveyden</i>lopulliselle LDR-kuvalle.<br>Kun olet painanut Enteriä (eli Palaa (Return)-nappia) korkeuden arvo lasketaan automaattisesti ja uusi koko listätään listaan. - - - + TM Database Problem - + - + The database used for saving TM parameters cannot be opened. Error: %1 - + - + Load a tonemapping settings text file... Lataa tonemappauksen asetusten tekstitiedosto... - - + + LuminanceHDR tonemapping settings text file (*.txt) LuminanceHDR tonemappauksen asetusten tekstitiedosto (*.txt) - - - - + + + + Aborting... Keskeytetään... - + File is not readable (check existence, permissions,...) Tiedosto ei ole luettavissa (tarkasta olemassaolo, oikeudet,...) - + Save tonemapping settings text file to... Tallenna tonemappauksen asetusten tekstitiedosto... - + File is not writable (check permissions, path...) Tiedosto ei ole kirjoitettava (tarkista oikeudet, polku...) - + File is not readable (check permissions, path...) Tiedostoa ei voida lukea (tarkista oikeudet, polku...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size Kustomoitu LDR koko - + Enter the width of the new size: Sytö uuden koon leveys: @@ -5587,12 +6138,12 @@ Load Custom Settings - + Sort by - + @@ -5612,12 +6163,12 @@ Most Useful Operators - + Tonemap - + @@ -5638,108 +6189,108 @@ Kopioi Exif-tiedot - + From - + - - + + Append files to the list Lisää tiedostot listalle - - + + Remove selected file(s) from the list Poista valittu tiedosto(t) listalta - - + + Move up selected file(s) Siirrä ylös valittu tiedosto(t) - - + + Move down selected file(s) Siirrä alas valittu tiedosto(t) - + To - + - + Log Loki - + Exif operations report Exif-toimintojen raportti - - &Show only: - &Näytä ainoastaan: + + Show onl&y: + - + Filter messages based on severity Suodata viestit tärkeyden mukaan - + All messages Kaikki viestit - + Errors only Vain virheet - - &Filter log messages: - &Suodata virheviestit: + + Filter &log messages: + - + Clear filter text Nollaa suodatinteksti - + Keep existing Exif tags in destination file Pidä olemassa olevat Exif-tagit kohdetiedostossa - + &Cancel &Peruuta - + &Start &Käynnistä - - + + All Supported formats Kaikki tuetut formaatit - - + + Select the input images Valitse syötettävät kuvat - + &Done &Valmis @@ -5753,27 +6304,33 @@ %1 Lisenssidokumenttia ei löydy, löydät sen online: %2täältä%3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation Lahjoitus - + Would you like to donate? Haluaisitko lahjoittaa? - + Yes, I'd love to! Kyllä! - + Stop Bothering Me Älä häiritse minua enää - + Remind me later Muistuta minua myöhemmin @@ -5794,7 +6351,7 @@ Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_fr.ts luminance-hdr-2.5.1/i18n/lang_fr.ts --- luminance-hdr-2.5.0/i18n/lang_fr.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_fr.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - À propos de Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ A&uteurs - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &Remerciements - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - http://qtpfsgui.sourceforge.net/updater/Changelog + - + &License Agreement Termes de &Licence - + &OK &OK @@ -110,227 +103,227 @@ BatchHDRDialog - Batch HDR Dialog - Dialogue de HDR par lot + Batch HDR + - + Number of bracketed images: Nombre d'images: - - + + Select the number of bracketed pictures used to create the HDRs Sélectionner le nombre d'images en fourchette pour la création des HDR - + Output Sortie - + + Choose an HDR output file format + Choisir un format pour le fichier HDR + + + Predefined profile: Profil prédéfini: - - Choose an HDR output file format - Choisir un format pour le fichier HDR + + Output format: + Format de sortie: - + Choose one of the creation predefined profiles. See documentation for more information. Choisir un des profils de création prédéfinis. Voir la documentation pour plus d'information. - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - Format de sortie: - - - + Alignment Alignement - + Auto align the bracketed pictures Alignement automatique des images en fourchette - + Auto-align images Alignement automatique des images - + Use MTB (Median Threshold Bitmap) engine Utiliser MTB (Median Threshold Bitmap) - - MTB - + + &MTB + - + Use Hugin's align_image_stack engine Utiliser align_image_stack de Hugin - - Hugin's align_image_stack - align_image_stack de Hugin + + Hugin's align_&image_stack + - + Auto-crop Rognage automatique - - Progress - Avancement - - - + &Cancel &Annuler - + &Start &Lancer - + &Close &Fermer - - Anti-ghosting - + + Progress + Avancement - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - Seuil + + Folder where created HDRs are saved + Dossier où les images HDR sont sauvergardées - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + Sélectionner... - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + Dossier où les images prises en fourchette sont situées (par ordre alphabétique) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + Dossier source: - - Auto anti-ghosting - + + Output folder: + Dossier de sortie: - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - Dossier où les images HDR sont sauvergardées + + Artifact-free High Dynamic Range Imaging + - - - Select... - Sélectionner... + + Threshold + Seuil - - Folder where bracketed pictures are located (in alphabetical order) - Dossier où les images prises en fourchette sont situées (par ordre alphabétique) + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - Dossier source: + + O. Gallo and others + - - Output folder: - Dossier de sortie: + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory Choisir un dossier source - + Choose a output directory Choisir un dossier de sortie - - - + + + Warning Attention - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? @@ -339,63 +332,63 @@ Continuer? - - + + Total number of pictures must be a multiple of number of bracketed images. Le nombre total d'images doit être un multiple du nombre d'images prises en fourchette. - + Started processing... Processus initié... - + Loading files... - + - + Completed with errors Achevé avec des erreurs - + Completed without errors Achevé sans erreurs - + Error: missing EXIF data - + - + Aligning... Alignement en cours... - + Creating HDR... Création du HDR... - + Doing auto anti-ghosting... - + - + Written Écrit - + Error: Erreur: - + Aborting... Abandon... @@ -425,7 +418,7 @@ Alt+D - + @@ -435,7 +428,7 @@ Alt+F - + @@ -445,7 +438,7 @@ Alt+R - + @@ -460,7 +453,7 @@ Alt+I - + @@ -470,7 +463,7 @@ Alt+L - + @@ -480,7 +473,7 @@ Alt+B - + @@ -490,7 +483,7 @@ Alt+M - + @@ -498,11 +491,6 @@ Liste des fichiers de paramètres tone mapping qui seront utilisés pour tone mapper chaque HDR - - Specify output folder for the tone mapped files - Indiquer le répertoire de sortie pour les fichiers tone mappés - - Output Sortie @@ -510,17 +498,7 @@ Output Image Width: - - - - - % - - - - - Output Format: - + @@ -529,136 +507,165 @@ + + Specify output folder for the tone mapped files + Indiquer le répertoire de sortie pour les fichiers tone mappés + + + Selec&t... Sélec&tionner... - + + + Width of tonemapped image in percent of original image + + + + + % + + + + + Output Format: + + + + + Image format of tonemapped images + + + + + Image format options + + + + Conversion Log Journal de Conversion - + Batch operations report Rapport du traitement groupée - - &Show only: - Montrer &seulement : + + Show onl&y: + - + Filter messages based on severity Trier les messages en fonction de la gravité - + All messages Tous les messages - + Errors only Seulement les erreurs - + Success messages Messages de réussite - - &Filter log messages: - &Filtre du journal: + + Filter &log messages: + - + Clear filter text Effacer le filtre - + Overall completion progress Achèvement global - + &Cancel &Annuler - + Start batch tone mapping Lancer le tone mapping groupé - + &Start &Lancer - + Using %n thread(s) - - - - + - - - + + + Choose a directory Choisir un dossier - + All HDR images Toutes les images HDR - + Select input images Sélection des images à traiter - + Load tone mapping settings text files... Charger les fichiers de configuation pour le tone mapping... - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... En cours... - + Start processing... Initier le processus... - + Close Fermer - + &Done &Fini - + All tasks completed. Toutes les tâches sont accomplies. - + Aborting... Abandon... @@ -694,474 +701,581 @@ CommandLineInterfaceManager - - Error: Alignment engine not recognized. - Erreur : Opérateur d'alignement non reconnu. - - - - Error: Unknown weight function specified. - Erreur : la fonction de poids spécifiée est inconnue. - - - - Error: Unknown response curve specified. - Erreur : la courbe de réponse spécifiée est inconnue. - - - - Error: Unknown HDR creation model specified. - Erreur : le modèle de création HDR spécifié est inconnu. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + Utilisation: %1 [OPTIONS]... [IMAGES D'ENTRÉE]... - - Error: Unknown tone mapping operator specified. - Erreur : l'opérateur de tone mapping spécifié est inconnu. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + Erreur : Opérateur d'alignement non reconnu. + + + + Error: Unknown weight function specified. + Erreur : la fonction de poids spécifiée est inconnue. + + + + Error: Unknown response curve specified. + Erreur : la courbe de réponse spécifiée est inconnue. + + + + Error: Unknown HDR creation model specified. + Erreur : le modèle de création HDR spécifié est inconnu. - - + + Error: Unknown tone mapping operator specified. + Erreur : l'opérateur de tone mapping spécifié est inconnu. + + + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - Erreur: La qualité doit être dans l'intervalle [0-100]. {1-100]?} + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - Erreur : le nombre de valeurs d'exposition est différent du nombre de fichiers en entrée. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + Erreur : le nombre de valeurs d'exposition est différent du nombre de fichiers en entrée. - + Load file %1 failed Échec du chargement du fichier %1 - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Erreur: données Exif manquantes dans les images et valeurs EV non spécifiées en argument. - + EV values have been assigned. Les valeurs EV ont été renseignées. - + + + Starting aligning... + + + + Failed executing align_image_stack Échec de l'opération align_image_stack - + Failed aligning images. Échec de l'alignement des images. - + Creating (in memory) the HDR. Création (en mémoire) du HDR. - + Saving to file %1. Enregistrer dans le fichier %1. - - + Image %1 saved successfully Image %1 enregistrée avec succès - + Could not save %1 Échec de l'enregistrement de %1 - + NOT Saving HDR image to file. %1 NE PAS enregistrer l'image HDR dans le fichier %1 - + + Exporting to HTML + + + + + ERROR: directory %1 must exist + + + + Tonemapping requested, saving to file %1. Tonemapping requis, enregistrement dans %1. - - ERROR: Cannot save to file: %1 - Erreur : impossible d'enregistrer dans le fichier %1 + + Resizing to width %1. + - - Failed loading images - Échec du chargement des images + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - Utilisation: %1 [OPTIONS]... [IMAGES D'ENTRÉE]... + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + Échec du chargement des images DnDOption - Drag and Drop - Glisser et Déposer + Choose action + @@ -1202,35 +1316,27 @@ DonationDialog - + Luminance HDR - Make a Donation Luminance HDR - Faire un don - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> est un logiciel open source dont le développement a nécessité des centaines d'heures de travail.<br /><br />Si vous l'appréciez, si vous l'utilisez professionnellement et que vous souhaitez le voir amélioré graduellement,<br />vous êtes priés de soutenir les auteurs par vos dons.<br /><br />Voulez-vous effectuer un don pour Luminance HDR maintenant?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! Oui, avec plaisir! - + Ask me again later Redemander plus tard - + No, Stop bothering me! Non. Ne parlons plus de ça! @@ -1238,47 +1344,47 @@ EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable Mod&ifiable - + R&eference Référ&ence - + Select the previous image in both lists Sélectionner l'image précédente dans chaque liste - + Select the next image in both lists Sélectionner l'image suivante dans chaque liste - + Choose a directory and a prefix Choisir un dossier et un préfixe @@ -1286,102 +1392,25 @@ EditingToolsDialog - + Editing Tools Outils d'édition - - Visualization and Navigation - Visualisation et Navigation - - - - Fit to window - Adapter à la Fenêtre - - - - &Fit to Window - Adapter à la &Fenêtre - - - - Fill the window - - - - - Fill &window - - - - - Original size - Taille originale - - - - Origina&l Size - Taille origin&ale - - - - &Mode: - - - - - Difference (E-P) - Différence (E-P) - - - - Overlay (E+P) - Superposition (E+P) - - - - Editable Only (E) - Modifiable Uniquement (E) - - - - Pivot Only (P) - Pivoter uniquement (P) - - - - Antighosting Mask - Masque Anti-"image fantôme" - - - - - Brush - - - - - - Lasso - - - - + Images List Liste d'images - + Ed&itable Mod&ifiable - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1389,47 +1418,47 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">L'image sélectionnée est cette que vous pouvez bouger et y ajouter un masque anti "images-fantômes.</p></body></html> - + The image currently selected in this list can be translated up,down,left and right using the controls below. This image's histogram is diplayed in the widget above. L'image actuellement sélectionnée dans cette liste peut être bougée en utilisant les contrôles ci-dessous. L'histogramme de l'image est affiché dans le widget ci-dessus. - + Select the previous image in both lists Sélectionner l'image précédente dans chaque liste - + Use this button to move the selection to the previous image in both lists. Utiliser ce bouton pour passer à la sélection de l'image précédente dans chaque liste. - + Select the next image in both lists Sélectionner l'image suivante dans chaque liste - + Use this button to move the selection to the next image in both lists. Utiliser ce bouton pour passer à la sélection de l'image suivante dans chaque liste. - - R&eference - Référ&ence + + Referen&ce + - + The reference image is the one currently selected L'image de référence est celle seléctionée - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1437,189 +1466,254 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">L'image sélectionnées sert de position de référence pour les images modifiables</p></body></html> - - Tools - Outils + + Crop the stack of images after a selection with the left mouse button has been made + Modifier la pile d'image après une sélection avec le bouton gauche de la souris - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + En cliquant sur ce bouton, vous pourrez couper toutes les images à la taille précédement sélectionnée avec le bouton gauche de la souris (appuyez et maintenez le pointeur pour sélectionner la zone de coupe, ensuite appuyez sur ce bouton). - - O. Gallo and others - + + &Crop All Images + &Couper toutes les images - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Ctrl+X + Ctrl+X - - Auto anti-ghosting - + + &Anti-Ghosting + - - Artifact-free HDR Imaging - + + &Save Images + Enregi&strer les images - - Total Patches: - + + Ctrl+S + Ctrl+S - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Visualization and Navigation + Visualisation et Navigation - - Threshold - Seuil + + Fit to window + Adapter à la Fenêtre - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + &Fit to Window + Adapter à la &Fenêtre - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + Fill the window + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + Fill &window + - - Recompute - + + Original size + Taille originale - - Crop the stack of images after a selection with the left mouse button has been made - Modifier la pile d'image après une sélection avec le bouton gauche de la souris + + Origina&l Size + Taille origin&ale - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - En cliquant sur ce bouton, vous pourrez couper toutes les images à la taille précédement sélectionnée avec le bouton gauche de la souris (appuyez et maintenez le pointeur pour sélectionner la zone de coupe, ensuite appuyez sur ce bouton). + + &Mode: + - - &Crop All Images - &Couper toutes les images + + Difference (E-P) + Différence (E-P) + + + + Overlay (E+P) + Superposition (E+P) + + + + Editable Only (E) + Modifiable Uniquement (E) + + + + Pivot Only (P) + Pivoter uniquement (P) + + + + Antighosting Mask + Masque Anti-"image fantôme" + + + + Brush + + + + + Lasso + - Ctrl+X - Ctrl+X + Anti Ghosting + - - &Anti-Ghosting - + + O. Gallo and others + - - &Save Images - Enregi&strer les images + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Ctrl+S - Ctrl+S + + Auto anti-ghosting + + + + + Artifact-free HDR Imaging + + + + + Total Patches: + + + + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + + + + + Threshold + Seuil - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + + + + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + + + + + Recompute + - + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - A&jouter + + &Add + &Ajouter - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - &Retirer + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Taille : - - - + + + px px - - &Strength: - &Force : + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask Sauvegarder le masque - + Apply saved mask Appliquer le masque sauvegardé - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1631,10 +1725,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">En cliquant et en maintenant le bouton gauche de la souris, vous pourrez sélectionner une zone de découpe.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1642,10 +1736,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Valeurs de déplacement pour l'image modifiable sélectionnée</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1653,295 +1747,390 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Ici, l'utilisateur peut voir et modifier les valeurs de dépalcement pour l'image modifiable sélectionnée</p></body></html> - + Shift values for editable image Valeurs de déplacement pour l'image modifiable - + Reset the shift values for the currently selected movable image Réinitialiser les valeurs de déplacement pour l'image sélectionnée - + &Reset &Réinitialiser - + Reset the shift values for all the images Réinitialiser les valeurs de déplacement pour toutes les images - + Reset &All Tout réiniti&aliser - - &Horizontal: - &Horizontal : + + Hori&zontal: + - - &Vertical: - &Vertical : + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Insérer une valeur de déplacement horizontal pour l'image sélectionnée - + Insert a vertical shift value for the currently selected movable image Insérer une valeur de déplacement vertical pour l'image sélectionnée - + Move up of 1 pixel the currently selected movable image Bouger l'image sélectionnée d'un pixel vers le haut - + Move down of 1 pixel the currently selected movable image Bouger l'image sélectionnée d'un pixel vers le bas - + Move right of 1 pixel the currently selected movable image Bouger l'image sélectionnée d'un pixel vers la droite - + + > + > + + + Move left of 1 pixel the currently selected movable image Bouger l'image sélectionnée d'un pixel vers la gauche - + + < + < + + + Histogram Histogramme - + Get information about the graphical elements Avoir de l'information à propos des éléments graphiques - + &What's this? &Qu'est-ce ? - + Shift+F1 Shift+F1 - + &Next > &Suivant > - + &Cancel &Annuler + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + Dossier de sortie: + + + + Open web browser + + + + + Size: + Taille : + + + + % + + + + + Quality: + Qualité: + + + + Images folder: + + + + + Select... + Sélectionner... + + + + Cancel + Annuler + + + + Export + + + + + Choose a directory + Choisir un dossier + + + + + Error: + Erreur: + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... Sélectionner... Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews Charger les aperçus - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image Affiche un aperçu plus grand de l'image sélectionnée - - - + + + Preview Prévisualisation - + Previews Aperçus - - + + Alignment Alignement - + Auto-crop Rognage automatique - - MTB - + + &MTB + - - Hugin's align_image_stack - Utiliser align_image_stack de Hugin + + Hugin's align_&image_stack + - + &Autoalign images &Alignement automatique - + The alignment of the input files is in progress. Please be patient! - + - + Progress: Progression: - + Messages Messages - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green Vert - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region - + HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -2001,110 +2190,110 @@ - Currently Loaded &Files - &Fichiers Actuellement Chargés + &Currently Loaded Files + - + Add Images Ajouter des Images - + Remove Selected Image Retirer les images sélectionnées - + Clear List Effacer la liste - + Preview Prévisualisation - + Selected Image &Exposure Sélectionner l'&Exposition de l'Image - + EV: - + - + Alignment Alignement - - MTB - + + &MTB + - + &Autoalign images &Alignement automatique - - Hugin's align_image_stack - Utiliser align_image_stack de Hugin + + Hugin's align_&image_stack + - + Auto-crop Rognage automatique - + Anti-ghosting - + - + Threshold Seuil - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools Outils d'édition avancés - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2113,165 +2302,165 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Charger des images avec des expositions différentes</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Choisir les paramètres pour la création du HDR - + Profile - - - - - Use Custom Configuration - - - - - HDR Creation Model - - - - - Robertson (Simple) - - - - - Robertson (Response Recovery) - + - - Weighting Function - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Le premier profil de la liste produit généralement les meilleurs résultats. Changez donc seulement de profil si le HDR produit n'est pas satisfaisant.</span></p></body></html> - - Flat - + + Profile 1 + Profil 1 - - Response Curve - + + Profile 2 + Profil 2 - - sRGB - + + Profile 3 + Profil 3 - - Custom - + + Profile 4 + Profil 4 - - Response Curve Input File - + + Profile 5 + Profil 5 - - Response Curve Output File - + + Profile 6 + Profil 6 - + Use this only if the default profiles above do not yield good results À utiliser uniquement si les résultats par défaut sont insatisfaisants - - Linear - Linéaire - - - - Debevec - Debevec - - - - Triangular - Triangulaire - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Le premier profil de la liste produit généralement les meilleurs résultats. Changez donc seulement de profil si le HDR produit n'est pas satisfaisant.</span></p></body></html> + + Use Custom Configuration + - - Profile 1 - Profil 1 + + HDR Creation Model + - - Profile 2 - Profil 2 + + Debevec + Debevec - - Profile 3 - Profil 3 + + Robertson (Simple) + - - Profile 4 - Profil 4 + + Robertson (Response Recovery) + - - Profile 5 - Profil 5 + + Weighting Function + - - Profile 6 - Profil 6 + + Triangular + Triangulaire - + Gaussian Gaussien - + Plateau Plateau - + + Flat + + + + + Response Curve + + + + + Linear + Linéaire + + + Gamma Gamma - + Log Log - + + sRGB + + + + + Custom + + + + + Response Curve Input File + + + + + Response Curve Output File + + + + Save As... Enregistrer sous... - + Save Settings Enregistrer les paramètres - + &Next > &Suivant > @@ -2281,187 +2470,181 @@ &Annuler - + Image Filename Nom du fichier Image - + Exposure Exposition - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Tous les formats(*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; Images TIFF (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Images RAW (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Selectionnez les images d'entrée - + Unknown Inconnu - + Loading... Chargement... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found Données EXIF introuvables - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Images Chargées.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Pour continuer, vous devez renseigner les valeurs d'exposition.<br><font color="#FF0000">%1</font> valeurs toujours requises.</b></h3></center> - + Loading Error: Erreur de chargement: - + Start loading a set of images with different exposure Initier le chargement d'un ensemble d'images à différentes expositions - - - - + + + Error... Erreur... - - align_image_stack failed to align images. - échec de l'alignement par align_image_stack. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Le lancement de l'application externe "<em>align_image_stack</em>" a échoué.<br>Veuillez lire "Aide -> Contenu... -> Outils Externes" pour plus d'informations. - + The external application "<em>align_image_stack</em>" crashed... L'application externe "<em>align_image_stack</em>" est tombée en panne... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Une erreur iconnue est survenue pendant l'exécution de "<em>align_image_stack</em>"... - + Now click on next button Appuyez sur Suivant - - + + Aligning... + Alignement en cours... + + + + &Finish &Terminer - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - - - - - Aligning... - Alignement en cours... + - + Weights: Poids: - + - Response curve: - Courbe de réponse : - + - Model: - Modèle : - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Toutes les valeurs EV sont déterminées.<br>Appuyez sur Suivant.</b></h3></font></center> @@ -2469,153 +2652,259 @@ HelpBrowser - + Luminance HDR Help Aide de Luminance HDR - + + + &File + &Fichier + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Aide - - + + &Print... &Imprimer... - + + Ctrl+P + Ctrl+P + + + &Exit &Quitter - - + + &Find... &Chercher... - + + Ctrl+F + Ctrl+F + + + Find &Next... Chercher &Suivant... - + + F3 + + + + Find &Previous... Chercher &Précédent... - - &Add - &Ajouter + + Shift+F3 + - + - &Delete - &Effacer + &Add Bookmark + &Ajouter Signet - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All Effacer &Tout - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + Help SideBar Panneau d'Aide - + LuminanceHDR Online Help Aide de Luminance HDR en ligne - - &File - &Fichier - - - + &Edit &Modifier - + &View &Affichage - - + + &Bookmarks Si&gnets - + &Quit &Quitter - + Find &Next Chercher &Suivant - + Find &Previous Chercher &Précédent - + &Contents &Contenus - + &Search &Chercher - - &Add Bookmark - &Ajouter Signet + + &Delete + &Effacer - + Find Chercher - + Search Term: Chercher: - + New Bookmark Nouveau Signet - + New Bookmark's Title: Titre du Nouveau Signet: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Désolé, le manuel n'est pas installé</p><p>Contactez le packager ou l'équipe de LuminanceHDR si vous compilez l'application vous-mêmes</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR - Documentation d'Aide - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2627,43 +2916,39 @@ HelpSideBar - - Contents - Contenus - - - + + &Contents &Contenus - + Se&arch C&hercher - + Searching is case insensitive La recherche est insensible à la casse - + &Search &Chercher - - + + 1 - 1 + - + Book&marks Si&gnets - + &Add &Ajouter @@ -2673,7 +2958,7 @@ &Retirer - + R&emove All Retirer &Tout @@ -2683,22 +2968,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2724,12 +3009,12 @@ Quality: - Qualité: + Qualité: File size: - + @@ -2755,24 +3040,25 @@ LdrViewer - - - LDR image [%1 x %2] - Image LDR [%1 x %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Niveaux et Gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2780,10 +3066,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Ajustement des niveaux de couleur</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2791,25 +3077,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Niveaux d'entrée</span></p></body></html> - + Clip black Clip Black - + Gamma Gamma - + Clip White Clip White - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2817,17 +3103,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Niveaux de sortie</span></p></body></html> - + &Reset &Réinitialiser - + &Cancel &Annuler - + &OK &OK @@ -2836,7 +3122,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2846,959 +3132,1113 @@ &Outils - + &Help &Aide - + + Luminance &HDR Online + + + + &Windows &Fenêtres - + &View &Affichage - + HDR &Histogram &Histogramme du HDR - + &Toolbars &Barres d'outils - - Preview Panel - Panneau de prévisualisation + + &Preview Panel + - + &File &Fichier - + &Edit &Modifier - + Main Toolbar Barre d'outils principale - + &New HDR image... &Nouveau HDR... - + New HDR image Nouveau HDR - - + + Create a new HDR image from a set of LDR or Raw images Générer un nouvel HDR à partir d'un ensemble d'images LDR ou RAW - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Générer un nouvel HDR à partir d'un ensemble de fichiers JPEG, Raw ou Tiff 8/16-bits - + Ctrl+N Ctrl+N - + &Open HDR image... &Ouvrir une image HDR... - + Open HDR image Ouvrir une image HDR - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Charger un HDR existant (OpenEXR, Radiance RGBE, PFS stream, RAW ou TIFF) - + Ctrl+O Ctrl+O - + &Save as... &Enregistrer sous... - + Save as... Enregistrer sous... - - - + + + Save image (HDR or LDR) Enregistrer l'image (HDR ou LDR) - + Ctrl+S Ctrl+S - + &Quit &Quitter - - + + Quit Luminance HDR Quitter Luminance HDR - + Exit Quitter - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Tourner dans le sens &anti-horaire - + Rotate counter-clockwise Tourner dans le sens anti-horaire - - - + + + Rotate counter-clockwise the HDR image Tourner le HDR dans le sens anti-horaire - + < < - - Rotate c&lockwise - Tourner dans le sens &horaire + + Rotat&e clockwise + - + Rotate clockwise Tourner dans le sens horaire - - - + + + Rotate clockwise the HDR image Tourner le HDR dans le sens horaire - + > > - - Low Dynamic Range - Basse Gamme Dynamique + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Ajuster à la Gamme Dynamique + + &Fit to Dynamic Range + - + Fit to dynamic range Adapter à la gamme dynamique - + \ \ - - Shrink Dynamic Range - Rétrécir la Gamme Dynamique + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Étendre la Gamme Dynamique + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Diminuer l'exposition + + &Decrease Exposure + - + 0 0 - + &Increase Exposure Augmenter l'expos&ition - + 9 9 - + &Contents... &Contenus... - + About... A propos... - - - + + + Open user manual for Luminance HDR Ouvrir le manuel utilisateur de Luminance HDR - + F1 F1 - + &Normal Size Taille &normale - + Normal size Échelle normale - - - + + + View HDR image at its normal size Afficher le HDR à l'échelle normale - + O O - + Zoom &In Zoom &+ - - - + + + Zoom in Agrandir - + + + - + Zoom &Out Zoom &- - - - + + + Zoom out Rétrécir - + - - - + &Fit in Window Adapter à la &fenêtre - - + + Fit in Window Adapter à la fenêtre - - + + Make the HDR image fit its window Adapter les dimensions du HDR à sa fenêtre - + W W - + &Preferences... &Préférences... - + Luminance Options Options de Luminance - - - + + + Set various options of Luminance Paramétrer Luminance - + Ctrl+P Ctrl+P - + &Resize... &Redimensionner... - + Resize the HDR image Redimensionner le HDR - - - + + + Change size of the HDR image Modifier les dimensions du HDR - + Ctrl+R Ctrl+R - + Copy &Exif Data... Copier données &Exif... - + Copy Exif Data Copier données Exif - - - + + + Copy Exif data between two sets of files Copie des données Exif entre deux ensembles de fichiers - + Ctrl+E Ctrl+E - + &About Qt &A propos de Qt - + Show information about Qt Afficher les informations sur Qt - - + + Show information about Qt library that is used by Luminance Afficher les informations sur la librairie Qt utilisée par Luminance - + Text &under Icons Texte &sous les icônes - + &Icons Only &Icônes Uniquement - + &Text Only &Texte Uniquement - + Text &Alongside Icons Texte &à côté des Icones - + &Batch Tone Mapping... &Tone Mapping groupé... - + Convert multiple HDR images to LDR Convertir plusieurs images HDR en LDR - - + + Convert multiple HDR images to LDR using existing settings files Convertir plusieurs images HDR en LDR avec des fichiers de paramètres - + Ctrl+B Ctrl+B - + &What's This? &Qu'est-ce ? - - + + Get verbose information about user interface elements Obtenir des informations détaillées sur les éléments de l'interface graphique - + Shift+F1 Shift+F1 - + About &Luminance HDR À propos de &Luminance HDR - + Show information about Luminance HDR Afficher les informations à propos de Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Afficher les informations à propos de Luminance HDR, ses auteurs et contributeurs - + + Ctrl+I + + + + Save HDR image &preview... Enregistrer la &prévisualisation du HDR... - - - + + + Save the current HDR Preview to an LDR file Enregistrer le HDR actuel en image LDR - + &Projective Transformation... &Projection... - - - + + + Apply projective transformation to the current HDR image Appliquer une projection au HDR actuel - + + Ctrl+J + + + + &Crop to Selection &Découper suivant la Sélection - + Crop to Selection Découper la Sélection - - + + Crop the image to selection rectangle Découper l'image suivant sélection - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Cliquer et déplacer dans l'image pour effectuer une sélection, puis utiliser ce bouton pour découper le HDR - + + Ctrl+X + Ctrl+X + + + Remove &Selection &Désélectionner - + Remove selection rectangle Retirer le rectangle de sélection - - + + Remove selection rectangle from image area Retirer le rectangle de sélection de l'image - + + Ctrl+Z + + + + Make a &Donation Effectuer un &don - + Ctrl+D Ctrl+D - - Lock Viewers - Verrouiller les visualisations + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). Mode visualisations synchronizées (fit, fill ou 1:1). - + Lock the images for sync view Verrouiller les images pour la visualisation synchronisée - - Minimize - Minimiser + + S + - - Maximize - Maximiser + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - Mettre tous au premier plan + + &Bring All to Front + - - Show Preview Panel - Montrer le panneau de prévisualisation + + &Show Preview Panel + - + Show/Hide Preview Panel Montrer/Cacher le panneau de prévisualisation - + Ctrl+V Ctrl+V - + Adjust &Levels Ajuster les &Niveaux - - + + Adjust Levels Ajuster les Niveaux - - + + Tune the histogram for the current LDR Accorder l'histogramme pour le LDR courant - - Ctrl+L - Ctrl+L + + + Ctrl+L + Ctrl+L + + + + Save All + Enregistrer Tout + + + + + Save All LDR files + Enregistrer tous les fichiers LDR + + + + &Remove Tab + + + + + Ctrl+W + Ctrl+W + + + + Fill &Window + + + + + Fill window with the current viewer + Remplir fenêtre avec la visualisation courante + + + + F + + + + + Batch &HDR... + + + + + Ctrl+H + Ctrl+H + + + + Soft Proofing + Épreuve sur écran + + + + Gamut Check + Vérification Gamut + + + + &Show on the right + + + + + Show &on the bottom + + + + + &Realtime Previews + + + + + &Update + + + + + &FITS Importer... + + + + + Import four FITS files representing luminosity, red, green and blue channels + + + + + Ctrl+F + Ctrl+F + + + + White Balance + Balance des Blancs + + + + Fix color cast, can be slow + Corrige les dérives de teinte, peut être lent + + + + E&xport to HTML + - - Save All - Enregistrer Tout + + Export to web page with embedded HDR viewer + - - - Save All LDR files - Enregistrer tous les fichiers LDR + + &Show Full Screen + - - Remove Tab - Retirer l'onglet + + F11 + - - Ctrl+W - Ctrl+W + + Show &Image Full Screen + - - Fill Window - Remplir fenêtre + + F10 + - - Fill window with the current viewer - Remplir fenêtre avec la visualisation courante + + &Supported RAW Cameras + - - Batch HDR... - HDR par lot... + + Lists all cameras supported by the program + - - Ctrl+H - Ctrl+H + + Ctrl+M + - - Soft Proofing - Épreuve sur écran + + &Lanczos/Bilinear interpolation + - - Gamut Check - Vérification Gamut + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + - - Show on the right - Afficher à droite + + Ctrl+K + - - Show on the bottom - Afficher en bas + + &Online Documentation + - - Realtime Previews - Aperçu temps-réel + + &Developers Web Site + - - Update - Mettre à jour + + &Luminance HDR Web Site + - - FITS Importer... - + + Open Online Documentation Web Site with the System Browser + - - Import four FITS files representing luminosity, red, green and blue channels - + + Developers Web Site + - - Ctrl+F - Ctrl+F + + Open Developers Web Site with the System Browser + - - White Balance - Balance des Blancs + + Luminance HDR Web Site + - - Fix color cast, can be slow - Corrige les dérives de teinte, peut être lent + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! Prêt. Ouvrez un HDR existant ou créez-en un nouveau! - + All HDR formats Tous les formats HDR - + Load one or more HDR images... Charger un ou plusieurs HDR... - + Save files in Enregistrer les fichiers sous - - Failed to save - Echec de l'enregistrement + + + Failed to save %1 + - + Done! Fait! - + Aborting... Abandon... - + + + Untitled + Sans Titre + + + Cropped Image Image Rognée - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Changements non sauvegardés... - + This HDR image has unsaved changes.<br>Do you want to save it? Cette image HDR a subi des modifications.<br>Voulez-vous les sauvegarder? - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - - - - - - Untitled - Sans Titre + - + Untitled %1 Sans Titre %1 - + Error: %1 Erreur: %1 - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences Préférences - - External Tools - Outils Externes - - - + Tone Mapping Tone Mapping - + RAW Conversion Conversion de RAW - + + Color Management + Gestion de la Couleur + + + + External Tools + Outils Externes + + + Interface Interface - - Color Management - Gestion de la Couleur + + Fast export + - + Language Langue - + Default Previews Width Largeur par défautpour la prévisualisation - + px px - + Always show Preview Panel Toujours montrer un panneau de prévisualisation - + Saves the settings along the program files, to be portable Sauvegarder les préférences avec les exécutables, afin d'être portable - + Portable mode Mode portable - - Temporary Working Folder - Dossier de travail temporaire + + Dark mode (beta) + - - - &Browse... - &Naviguer... + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + ... - - Format - + + + &Browse... + &Naviguer... - - Export directory - + + Temporary Working Folder + Dossier de travail temporaire - - + + Amount of threads to use on multicore/SMP machines Nombre de tâches à utiliser pour une machine multicoeurs/SMP - + Batch Tonemapping Number of Threads Nombre de threads pour le tonemapping par lot - + General Général - + Quality: Qualité: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> @@ -3817,54 +4257,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: utiliser l'interpolation Adaptive Homogeneity-Directed (AHD). Cette méthode selectionne la direction d'interpolation de manière à maximiser une mesure d'homogeneïté et typiquement minimiser les défauts de couleur.</p></body></html> - + Bilinear Bilinéaire - + VNG VNG - + PPG PPG - + AHD AHD - - - - - - - - - - - - - - - ... - ... - - - + Median: Médian: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3875,11 +4297,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Indiquer ici les passes du filtre médian appliquées après interpolation des canaux Rouge-Vert et Bleu-Vert.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3890,16 +4312,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Pour les boitiers Fuji Super CCD, afficher l'image inclinée à 45 degrés. Pour les appareils à pixels non-carrés, ne pas étirer l'image à ses proportions naturelles. Dans tous les cas, cette option garanti que chaque pixel de sortie correspond à un pixel du RAW.</p></body></html> - + Do not stretch or rotate pixels Ne pas étirer ou tourner les pixels - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> @@ -3912,26 +4334,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Pour résumer, cette méthode floute très légèrement l'image, mais évite les effets indésirables de grille ou de labyrinthe obtenus avec la méthode VNG ou respectivement AHD.</p></body></html> - + Interpolate RGB using 4 colours Interpoler RVB avec 4 couleurs - + Color correction - + - + White Balance Balance des Blancs - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> @@ -3950,36 +4372,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manuel</span>: Indiquer une température et les valeurs de vert</p></body></html> - + Predefined D65 Défault D65 - + Camera Boîtier - + Auto Auto - + Manual Manuel - + Temperature (Kelvin) Température (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3990,26 +4412,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Choisir ici la température de couleur en Kelvins.</p></body></html> - + Green Vert - + Set here the green component to set magenta color cast removal level Indiquer ici la composante de vert - + Highlights Hautes lumières - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> @@ -4028,36 +4450,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Reconstruction</span>: reconstruire les hautes lumières à partir d'un seuil</p></body></html> - + Solid White Blanc - + Do not transform Ne pas transformer - + Blend Assembler - + Reconstruct Reconstruire - + Level Niveau - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4068,26 +4490,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sélectionner un niveau de reconstruction de hautes lumières. Les petites valeurs favorisent le blanc tandis que les valeurs élevées favorisent les couleurs.</p></body></html> - + Correct false colors in highlights Corriger les fausses couleurs dans les hautes lumières - + Auto Brightness Luminosité Automatique - + Brightness Luminosité - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4098,11 +4520,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sélectionner le niveau de luminosité de l'image de sortie. Valeur par défaut: 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4113,16 +4535,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Utiliser une valeur spécifique pour le noir au cours du décodage des RAW. Si l'option n'est pas sélectionnée, le niveau de noir sera ajusté automatiquement.</p></body></html> - + Black Noir - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4133,41 +4555,41 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Utiliser une valeur spécifique pour le noir dans l'image de sortie.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + Saturation - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - - - - - Saturation - Saturation + - + NR and CA Correction Correction NR et CA - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4178,16 +4600,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Utiliser des ondelettes pour réduire le bruit tout en préservant les détails.</p></body></html> - + Enable noise reduction Réduction de bruit - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4198,16 +4620,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Indiquer ici un seuil pour la réduction de bruit.</p></body></html> - + Threshold: Seuil: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4218,16 +4640,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Multiplier les canaux rouge et bleu du RAW, typiquement par des facteurs de 0.999 à 1.001, pour compenser les aberration chromatiques.</p></body></html> - + Enable Chromatic Aberration correction Correction des Aberrations Chromatiques - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4238,11 +4660,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Indiquer ici le facteur multiplicatif pour le canal rouge</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4253,48 +4675,48 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Indiquer ici le facteur multiplicatif pour le canal bleu</p></body></html> - + Red Component Composante Rouge - + Blue Component Composante Bleue - - Monitor Profile - Profil du moniteur - - - - - + + + Browse... Naviguer... - + Camera profile Profil d'appareil - + + Monitor Profile + Profil du moniteur + + + Printer profile Profil d'imprimante - + align_image_stack command line arguments Arguments pour align_image_stack - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -4303,38 +4725,38 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Lire </span><span style=" font-family:'Sans Serif'; font-style:italic;">Aide &gt; Contenus &gt; Configuration de Luminance &gt; Outils Externes</span><span style=" font-family:'Sans Serif';"> en savoir plus sur les options de align_image_stack</span></p></body></html> - + &Cancel &Annuler - + &OK &OK - + Restart Redémarrer - + For the settings to take effect, please restart the application! Redémarrer l'application pour appliquer les paramètres! - - + + Choose a directory Choisir un dossier - + Open ICC Profile Ouvrir profil ICC - + Color profile (*.icc *.ICC *.icm *.ICM) Profil de couleur (*.icc *.ICC *.icm *.ICM) @@ -4350,99 +4772,99 @@ ProjectionsDialog - + Projective Transformation Projection - + Projections Projections - + Source Projection: Projection d'Origine: - - + + Polar Polaire - - + + Angular Angulaire - - + + Cylindrical Cylindrique - - + + Mirror Ball Miroir sphérique - + Destination Projection: Projection de Rendu: - + Angles: Angles: - - - - + + + + ° - + - + Bilinear Interpolation Interpolation bilinéaire - + Oversample factor: Facteur de sur-échantillonnage: - + Rotation (degrees) Rotation (degrés) - + Yaw: Lacet: - + Pitch: Tangage: - + Roll: Roulis: - + &Cancel &Annuler - + &OK &OK @@ -4450,17 +4872,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: ERREUR : Impossible de charger le fichier de configuration Tone Mapping : - + ERROR: File too old, cannot parse Tone Mapping Setting file: ERREUR : Fichier trop ancien, impossible d'analyser le fichier de configuration Tone Mapping : - + ERROR: cannot parse Tone Mapping Setting file: ERREUR : Impossible d'analyser le fichier de configuration Tone Mapping : @@ -4468,6 +4890,33 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + @@ -4496,371 +4945,378 @@ Transformation couleur impossible. Veuillez sélectionner un autre profil de moniteur. - - Option -v -a... - Option -v -a... + + Triangular + Triangulaire - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Plateau + + + + Gaussian + Gaussien + + + + Flat + + + + + Linear + Linéaire + + + + Gamma + Gamma + + + + Logarithmic + Logarithmique + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + - + PreGamma=%1 - + - + Contrast Equalization Égalisation du contraste - + Contrast Contraste - - + + Saturation Saturation - + Detail Détail - + Luminance Level Niveau de luminance - + Luminance Level=Auto - + - + Color Saturation Saturation de couleur - + Contrast Enhancement Amélioration de contraste - + Alpha Alpha - + Beta Bêta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + - + + InvAlpha + + + + simple simple - + Equation 2 Équation 2 - + Equation 4 Eq. 4 - - + + Local - + - + Bias Bais - + Spatial - + - - + + Range Étendue - + Base - + - + Multiplier Facteur - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Luminosité - + Chromatic Adaptation Adaptation Chromatique - + Light Adaptation Adaptation de lumière - + + Option -v -a... + Option -v -a... + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float Impossible de convertir %1 en nombre à virgule flottante - + Loading TMO settings from file: %1 - + - + Input file %1 Fichier source %1 - + Running in HDR-creation mode. Fonctionnement en mode création-HDR. - + Running in Load-HDR mode. Fonctionnement en mode chargement-HDR. - + Temporary directory: %1 Dossier temporaire: %1 - + Using %n threads. - - - - + - + Loading file %1 Chargement du fichier %1 - + Successfully loaded file %1. Fichier %1 chargé avec succès. - + All LDR formats Tous les formats LDR - + Save the LDR image as... Enregistrer l'image LDR sous... - + Save the HDR image as... Enregistrer le HDR sous... - + Save as... Enregistrer sous... - - - Triangular - Triangulaire - - - - Plateau - Plateau - - - - Gaussian - Gaussien - - - - Flat - - - - - Linear - Linéaire - - - - Gamma - Gamma - - - - Logarithmic - Logarithmique - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - - ResizeDialog - + Scale Image Redimensionner l'image - + Hdr Image Size Taille de l'image Hdr - - Width: - Largeur : + + Restore original size + Rétablir la taille originale + + + + &Reset + &Remise à zéro - + Switch between pixels or percentage Échanger entre pixels et poucentage - + Pixels Pixels - + Percent Pourcents - - Height: - Hauteur : - - - + Result size Dimensions finales - - Restore original size - Rétablir la taille originale + + Height: + Hauteur : - - &Reset - &Remise à zéro + + Width: + Largeur : - + &Cancel &Annuler - + &Scale &Redimensionner @@ -4873,184 +5329,194 @@ Paramètres sauvegardés - - + + Comment Commentaire - + TM Operator Opérateur de TM - + Simple Simple - + Equation 2 Équation 2 - + Local Contrast Threshold Seuil de contraste local - + Bias Bais - + Spatial Kernel Sigma Sigma du Noyau Spatial - + Range Kernel Sigma Sigma du Noyau d'étendue - + Base Contrast Contraste de base - + Alpha Alpha - + Beta Bêta - - + + Color Saturation Saturation de couleur - + Noise Reduction Réduction du bruit - + Old Fattal Ancien Fattal - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Égalisation du contraste - + Contrast Factor Facteur de contraste - + Saturation Factor Facteur de saturation - + Detail Factor Facteur de détail - + Contrast Enhancement Amélioration de contraste - + Luminance Level Niveau de luminance - + Manual Luminance Level Niveau de luminance manuel - + Cone and Rod based on Luminance Cône et bâtonnets basés sur la luminance - + Local Tonemapping Tonemapping local - + Cone Level Quantité de cônes - + Rod Level Quantité de bâtonnets - + Multiplier Facteur - + Use Scales Utiliser des échelles - + Key Value Valeur clé - + Phi Value Valeur Phi - + Range Étendue - + Lower Scale Échelle la plus basse - + Upper Scale Échelle la plus haute - + Brightness Luminosité - + Chromatic Adaptation Adaptation Chromatique - + Light Adaptation Adaptation de lumière - + Pre-gamma Précorrection gamma @@ -5058,17 +5524,55 @@ SavingParameters - + Saving Parameters Enregistrer les paramètres - + Enter a short comment for the saved parameters: Entrer un commentaire court pour les paramètres sauvés: + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + + + + TMOProgressIndicator @@ -5077,6 +5581,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Seuil + + + TiffModeDialog @@ -5087,498 +5604,532 @@ TonemappingPanel - - Tone mapping operators and their options - Opérateurs de tonemapping et leurs options + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Ici vous pouvez charger et enregistrer un fichier de paramètres tone mapping.<br>Vous pouvez aussi appliquer le contenu du fichier chargé. + + + + Tone Mapping Settings + Paramètres de tone mapping + + + + Save current parameters to a text file + Enregistrer les paramètres actuels dans un fichier texte + + + + Save current parameters (pregamma and TMO) to a text file. + Enregistrer les paramètres actuels (gamma et opérateur) dans un fichier texte. + + + + Load an existing text file containing pregamma and TMO settings + Charger un fichier texte contenant les paramètres pregamma et tonemapping + + + + Load an existing text file containing pregamma and TMO settings. + Charger un fichier texte contenant les paramètres gamma et opérateur. + + + + Save current parameters + Enregistrer les paramètres courants + + + + Load saved parameters + Charger des paramètres enregistrés + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Ici vous pouvez appliquer une correction gamma sur le HDR.<br>La correction sera appliquée avant le tone mapping. + + + + Process + Traiter + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + Correction gamma appliquée avant le tonemapping + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Restaurer le gamma par défaut (1) + + + + Size of the resulting LDR image + Dimensions du HDR final + + + + Here you can choose the size of the resulting LDR image. + Ici vous pouvez choisir la taille du LDR final. + + + + Set Custom Output Size + Fixer dimensions de sortie personnalisées + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + En cliquant sur ce bouton, vous pourrez insérer une valeur de <i>largeur</i> pour l'image LDR finale.<br>Après avoir pressé la touche Entrée, la hauteur sera calculée et la nouvelle taille ajoutée à la liste. - + Start tonemapping (CTRL+T) Initier le tonemapping (CTRL+T) - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image Utiliser les paramètres ci-dessus (gamma et opérateur de tonemapping) pour générer l'image LDR - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR Mettre à jour le LDR courant - + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Tonemapper - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator Opérateur - + Contrast Factor Facteur de contraste - + Saturation Factor Facteur de saturation - + Detail Factor Facteur de détail - + Contrast Equalization Égalisation du contraste - + Predefined Display Écran prédéfini - + Lcd Office Cristaux liq. de bureau - + Lcd Cristaux liquides - + Lcd Bright Cristaux liq. lumineux - + CRT Cathodique - - + + Color Saturation Saturation de couleur - + Contrast Enhancement Amélioration de contraste - + Enable Luminace Level Activer Niveau de luminance - + Luminance Level Niveau de luminance - + Alpha Alpha - + Beta Bêta - + Noise Reduction Réduction du bruit - + Version 2.3.0 Version 2.3.0 - + + Inverse Alpha + + + + + Rho + + + + Bias Bais - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Contraste de base - + Key Value Valeur clé - + Phi Phi - + Use Scales Utiliser des échelles - + Range Étendue - + Lower Scale Échelle la plus basse - + Upper Scale Échelle la plus haute - + Brightness Luminosité - + Chromatic Adaptation Adaptation Chromatique - + Light Adaptation Adaptation de lumière - + Local Contrast Threshold Seuil de contraste local - + Simple Simple - + Equation Number Numéro d'équation - - Eqn 2 - Eq. 2 + + Eqn &2 + - - Eqn 4 - Eq. 4 + + Eqn &4 + - + Multiplier Facteur - + Local Tone Mapping Tone Mapping local - + Auto Cone/Rod Auto Cône/Bâtonnets - + Cone Level Quantité de cônes - + Rod Level Quantité de bâtonnets - + + This operator has no options + + + + Restore operator's default values Restaurer les valeurs par défaut de l'opérateur - + Restore Restaurer - + Previous applied settings Paramètres utilisés précédemment - + Previous Précédent - + Next applied settings Derniers paramètres utilisés - + Next Suivant - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Ici vous pouvez charger et enregistrer un fichier de paramètres tone mapping.<br>Vous pouvez aussi appliquer le contenu du fichier chargé. - - - - Tone Mapping Settings - Paramètres de tone mapping - - - - Save current parameters to a text file - Enregistrer les paramètres actuels dans un fichier texte - - - - Save current parameters (pregamma and TMO) to a text file. - Enregistrer les paramètres actuels (gamma et opérateur) dans un fichier texte. - - - - &Save to File - &Enregistrer dans le fichier - - - - Load an existing text file containing pregamma and TMO settings - Charger un fichier texte contenant les paramètres pregamma et tonemapping - - - - Load an existing text file containing pregamma and TMO settings. - Charger un fichier texte contenant les paramètres gamma et opérateur. - - - - &Load from File - &Charger à partir du fichier - - - - Save current parameters - Enregistrer les paramètres courants - - - - - ... - ... - - - - Load saved parameters - Charger des paramètres enregistrés - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Ici vous pouvez appliquer une correction gamma sur le HDR.<br>La correction sera appliquée avant le tone mapping. - - - - Process - Traiter - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - Correction gamma appliquée avant le tonemapping - - - - Restore pregamma's default value (1) - Restaurer le gamma par défaut (1) - - - - Size of the resulting LDR image - Dimensions du HDR final - - - - Here you can choose the size of the resulting LDR image. - Ici vous pouvez choisir la taille du LDR final. - - - - Set Custom Output Size - Fixer dimensions de sortie personnalisées - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - En cliquant sur ce bouton, vous pourrez insérer une valeur de <i>largeur</i> pour l'image LDR finale.<br>Après avoir pressé la touche Entrée, la hauteur sera calculée et la nouvelle taille ajoutée à la liste. + + Queue size: %1 + - + TM Database Problem Problème de base de données de TM - + The database used for saving TM parameters cannot be opened. Error: %1 La base de données de paramètres de TM ne peut être ouverte. Erreur: %1 - + Load a tonemapping settings text file... Charger un fichier texte de paramètres tonemapping... - - + + LuminanceHDR tonemapping settings text file (*.txt) Fichier texte de paramètre tonemapping de LuminanceHDR - - - - + + + + Aborting... Abandon... - + File is not readable (check existence, permissions,...) Fichier illisible (vérifier son existance, permissions,...) - + Save tonemapping settings text file to... Enregistrer le fichier texte des paramètres tonemapping vers... - + File is not writable (check permissions, path...) Fichier non inscriptible (vérifier les permissions, le chemin...) - + File is not readable (check permissions, path...) Fichier illisible (vérifier les permissions, le chemin...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Erreur: le format du fichier de paramètres de tonemapping a changé. Cet (ancien) format ne peut être utilisé avec les versions récentes de LuminanceHDR. Créez-en un nouveau. - + Custom LDR size Nouvelle taille du LDR - + Enter the width of the new size: Indiquer la nouvelle largeur: @@ -5639,108 +6190,108 @@ Copier données Exif - + From Depuis - - + + Append files to the list Ajouter des fichiers à la liste - - + + Remove selected file(s) from the list Retirer le(s) fichier(s) selectionné(s) de la liste - - + + Move up selected file(s) Relever le(s) fichier(s) sélectionné(s) - - + + Move down selected file(s) Abaisser le(s) fichier(s) sélectionné(s) - + To Vers - + Log Journal - + Exif operations report Rapport des opérations Exif - - &Show only: - Montrer &seulement: + + Show onl&y: + - + Filter messages based on severity Trier les messages en fonction de la gravité - + All messages Tous les messages - + Errors only Seulement les erreurs - - &Filter log messages: - &Filtre du journal: + + Filter &log messages: + - + Clear filter text Effacer le filtre - + Keep existing Exif tags in destination file Converser les champs Exif de la destination - + &Cancel &Annuler - + &Start &Lancer - - + + All Supported formats Tous les formats supportés - - + + Select the input images Selectionnez les images d'entrée - + &Done &Fait @@ -5754,27 +6305,33 @@ Document de licence %1 introuvable, vous pouvez le trouver en ligne : %2ici%3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation Don - + Would you like to donate? Voulez-vous effectuer un don? - + Yes, I'd love to! Oui, avec plaisir! - + Stop Bothering Me Ne m'embêtez plus avec ça - + Remind me later Rappeler-le moi plus tard @@ -5790,7 +6347,7 @@ Do you want to open the webpage for download now? - + @@ -5798,4 +6355,4 @@ Appuyez pour télécharger, ou sélectionnez Aide->Mettre à jour! - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_hu.ts luminance-hdr-2.5.1/i18n/lang_hu.ts --- luminance-hdr-2.5.0/i18n/lang_hu.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_hu.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - Luminance névjegye + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ &Szerzők - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &Köszönet - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement &Engedély - + &OK &OK @@ -110,290 +103,290 @@ BatchHDRDialog - Batch HDR Dialog - + Batch HDR + - + Number of bracketed images: - + - - + + Select the number of bracketed pictures used to create the HDRs - + - + Output Eredmény - + + Choose an HDR output file format + + + + Predefined profile: - + - - Choose an HDR output file format - + + Output format: + - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - - - - + Alignment Igazítás - + Auto align the bracketed pictures - + - + Auto-align images - + - + Use MTB (Median Threshold Bitmap) engine - + - - MTB - + + &MTB + - + Use Hugin's align_image_stack engine - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - - Progress - - - - + &Cancel Mé&gsem - + &Start - + - + &Close Ki&lépés - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + - - Auto anti-ghosting - + + Output folder: + - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - + + Artifact-free High Dynamic Range Imaging + - - - Select... - + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - + + O. Gallo and others + - - Output folder: - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory - + - + Choose a output directory - + - - - + + + Warning - + - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? - + - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... - + - + Loading files... - + - + Completed with errors - + - + Completed without errors - + - + Error: missing EXIF data - + - + Aligning... Igazítás... - + Creating HDR... - + - + Doing auto anti-ghosting... - + - + Written - + - + Error: - + - + Aborting... Megszakítás... @@ -408,7 +401,7 @@ HDR Images to Convert - + @@ -418,77 +411,77 @@ Add Directory (Alt+D) - + Alt+D - + Add Files (Alt+F) - + Alt+F - + Remove Files (Alt+R) - + Alt+R - + Tone Mapping Settings - + Add Directory (Alt+I) - + Alt+I - + Add Files (Alt+L) - + Alt+L - + Add from Database (Alt+B) - + Alt+B - + Remove Settings (Alt+M) - + Alt+M - + @@ -496,11 +489,6 @@ A felhasználandó árnyalatnövelési jellemző fájlok listája - - Specify output folder for the tone mapped files - Adja meg az eredmények mappáját - - Output Eredmény @@ -508,154 +496,174 @@ Output Image Width: - + + + + + Output Folder: + + + + + + Specify output folder for the tone mapped files + Adja meg az eredmények mappáját + + + + Selec&t... + - + + + Width of tonemapped image in percent of original image + + + + % - + - + Output Format: - + - - Output Folder: - + + Image format of tonemapped images + - - Selec&t... - + + Image format options + - + Conversion Log - + - + Batch operations report A köteges árnyalatnövelés jelentése - - &Show only: - &Csak ez látsszon: + + Show onl&y: + - + Filter messages based on severity Üzeneteket fontosság szerint szűrni - + All messages minden üzenet - + Errors only csak hibaüzenetek - + Success messages sikerüzenetek - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text Meghatározót törölni - + Overall completion progress Haladás - + &Cancel Mé&gsem - + Start batch tone mapping Köteges árnyalatnövelést elindítani - + &Start - + - + Using %n thread(s) - - - + - - - + + + Choose a directory Válasszon egy mappát - + All HDR images - + - + Select input images - + - + Load tone mapping settings text files... - + - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... Feldolgozás... - + Start processing... - + - + Close - + - + &Done &Kész - + All tasks completed. Minden feladat elvágezve. - + Aborting... Megszakítás... @@ -665,500 +673,607 @@ [T%1] Start processing %2 - + [T%1] Successfully load %2 - + [T%1] Successfully saved LDR file: %2 - + [T%1] ERROR: Cannot save to file: %2 - + [T%1] ERROR: Loading of %2 failed - + CommandLineInterfaceManager - - Error: Alignment engine not recognized. - Hiba: Ismeretlen igazítómű. - - - - Error: Unknown weight function specified. - Hiba: Ismeretlen súlyfüggvény. - - - - Error: Unknown response curve specified. - Hiba: Ismeretlen válaszgörbe. - - - - Error: Unknown HDR creation model specified. - Hiba: Ismeretlen HDR előállítási típus. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + Használat: %1 [lehetőségek]... [bemeneti fájl]... - - Error: Unknown tone mapping operator specified. - Hiba: Ismeretlen árnyalatnövelési művelet. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + Hiba: Ismeretlen igazítómű. + + + + Error: Unknown weight function specified. + Hiba: Ismeretlen súlyfüggvény. + + + + Error: Unknown response curve specified. + Hiba: Ismeretlen válaszgörbe. + + + + Error: Unknown HDR creation model specified. + Hiba: Ismeretlen HDR előállítási típus. + + + + Error: Unknown tone mapping operator specified. + Hiba: Ismeretlen árnyalatnövelési művelet. - - + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - Hiba: A megvilágítási értékek száma különbözik a feldolgozandó képek számától. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + Hiba: A megvilágítási értékek száma különbözik a feldolgozandó képek számától. - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Hiba: Az EXIF adatok hiányoznak a képekből és nincs megadva megvilágítási érték a parancssorban, ezért megszakítva. - + EV values have been assigned. - + - + + + Starting aligning... + + + + Failed executing align_image_stack Nem sikerült elvégezni hugin align_image_stack-jét - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + - + + ERROR: directory %1 must exist + + + + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - HIBA: Nem lehet menteni: %1 + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - Használat: %1 [lehetőségek]... [bemeneti fájl]... + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - + Choose action + @@ -1168,22 +1283,22 @@ &Open - + Open an existing HDR image - + &New - + Create a new HDR image from one or more images - + @@ -1193,85 +1308,81 @@ Cancel the drag and drop process and return to the main window - + DonationDialog - + Luminance HDR - Make a Donation - + - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! - + - + Ask me again later - + - + No, Stop bothering me! - + EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable &Szerkeszthető - + R&eference Mo&zdulatlan - + Select the previous image in both lists Válassza ki az előző képet mind a két listán - + Select the next image in both lists Válassza ki a következő képet mind a két listán - + Choose a directory and a prefix Válasszon egy mappát és egy kezdetet @@ -1279,340 +1390,328 @@ EditingToolsDialog - + Editing Tools Szerkesztőeszközök - - Visualization and Navigation - Nézet és tájékozódás + + Images List + Képlista - - Fit to window - Ablakhoz igazítás + + Ed&itable + &Szerkeszthető - - &Fit to Window - &Ablakhoz igazítás + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A kijelölt képet el lehet tolni és rá lehet festeni egy szellemképcsökkentő maszkot.</p></body></html> - - Fill the window - + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + A itt kijelölt képet a lenti gombokkal el lehet mozdítani felfelé, lefelé, balra és jobbra. +Ennek a képnek a fenti ablakocskában lehet látni a hisztogrammját. - - Fill &window - + + Select the previous image in both lists + Válassza ki az előző képet mind a két listán - - Original size - Eredeti méret - - - - Origina&l Size - &Eredeti méret - - - - &Mode: - + + Use this button to move the selection to the previous image in both lists. + Ezzel a gombbal lehet megváltoztatni mindkét listán az előző kép kijelölését. - - Difference (E-P) - Különbség (Sz-F) + + Select the next image in both lists + Válassza ki a következő képet mind a két listán - - Overlay (E+P) - Átfedés (Sz+P) + + Use this button to move the selection to the next image in both lists. + Ezzel a gombbal lehet megváltoztatni mind a két listán a következő kép kijelölését. - - Editable Only (E) - Csak szerkesztés (Sz) + + Referen&ce + - - Pivot Only (P) - Csak forgatás (F) + + The reference image is the one currently selected + A mozdulatlan kép az, amelyik éppen ki van jelölve - - Antighosting Mask - Szellemképcsökkentő maszk + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Az itt kijelölt kép a szerkesztett kép origójául szolgál</p></body></html> - - - Brush - + + Crop the stack of images after a selection with the left mouse button has been made + Az egér bal gombjával megtörtént kijelölés után kiszabni a képeket - - - Lasso - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Ezzel a gombbal ki lehet szabni a képeket az egérrel való kijelölés után (ami a nyomva tartott bal gombbal működik). - - Images List - Képlista + + &Crop All Images + Minden képet ki&szabni - - Ed&itable - &Szerkeszthető + + Ctrl+X + Ctrl+X - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A kijelölt képet el lehet tolni és rá lehet festeni egy szellemképcsökkentő maszkot.</p></body></html> + + &Anti-Ghosting + - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - A itt kijelölt képet a lenti gombokkal el lehet mozdítani felfelé, lefelé, balra és jobbra. -Ennek a képnek a fenti ablakocskában lehet látni a hisztogrammját. + + &Save Images + Képeket &menteni - - Select the previous image in both lists - Válassza ki az előző képet mind a két listán + + Ctrl+S + Ctrl+S - - Use this button to move the selection to the previous image in both lists. - Ezzel a gombbal lehet megváltoztatni mindkét listán az előző kép kijelölését. + + Visualization and Navigation + Nézet és tájékozódás - - Select the next image in both lists - Válassza ki a következő képet mind a két listán + + Fit to window + Ablakhoz igazítás - - Use this button to move the selection to the next image in both lists. - Ezzel a gombbal lehet megváltoztatni mind a két listán a következő kép kijelölését. + + &Fit to Window + &Ablakhoz igazítás - - R&eference - Mo&zdulatlan + + Fill the window + - - The reference image is the one currently selected - A mozdulatlan kép az, amelyik éppen ki van jelölve + + Fill &window + - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Az itt kijelölt kép a szerkesztett kép origójául szolgál</p></body></html> + + Original size + Eredeti méret - - Tools - Eszközök + + Origina&l Size + &Eredeti méret - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + &Mode: + - - O. Gallo and others - + + Difference (E-P) + Különbség (Sz-F) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Overlay (E+P) + Átfedés (Sz+P) - - Auto anti-ghosting - + + Editable Only (E) + Csak szerkesztés (Sz) - - Artifact-free HDR Imaging - + + Pivot Only (P) + Csak forgatás (F) - - Total Patches: - + + Antighosting Mask + Szellemképcsökkentő maszk - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Brush + - - Threshold - + + Lasso + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + Anti Ghosting + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + O. Gallo and others + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Recompute - + + Auto anti-ghosting + - - Crop the stack of images after a selection with the left mouse button has been made - Az egér bal gombjával megtörtént kijelölés után kiszabni a képeket + + Artifact-free HDR Imaging + - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Ezzel a gombbal ki lehet szabni a képeket az egérrel való kijelölés után (ami a nyomva tartott bal gombbal működik). + + Total Patches: + - - &Crop All Images - Minden képet ki&szabni + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + - - Ctrl+X - Ctrl+X + + Threshold + - - &Anti-Ghosting - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + - - &Save Images - Képeket &menteni + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Ctrl+S - Ctrl+S + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Recompute + - + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Méret: - - - + + + px kp - - &Strength: - &Vastagság: + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1624,10 +1723,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A bal egérgomb nyomvatartásával ki lehet szabni a képet.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1635,10 +1734,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A szerkesztésre kijelölt kép eltolási értékei</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1646,295 +1745,390 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Itt lehet beállítani a szerkesztésre kijelölt kép eltolási értékeit</p></body></html> - + Shift values for editable image A szerkesztett kép eltolási értékei - + Reset the shift values for the currently selected movable image A kijelölt mozgó kép eltolási értékeit nullázni - + &Reset &Nullázás - + Reset the shift values for all the images Minden kép eltolási értékét nullázni - + Reset &All &Mindet nulláz - - &Horizontal: - &Vízszintesen: + + Hori&zontal: + - - &Vertical: - &Függőlegesen: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image A mozgó képet egy adott értékkel vízszintesen eltolni - + Insert a vertical shift value for the currently selected movable image A mozgó képet egy adott értékkel függőlegesen eltolni - + Move up of 1 pixel the currently selected movable image A mozgó képet egy képponttal felfelé tolni - + Move down of 1 pixel the currently selected movable image A mozgó képet egy képponttal lefelé tolni - + Move right of 1 pixel the currently selected movable image A mozgó képet egy képponttal jobbra tolni - + + > + > + + + Move left of 1 pixel the currently selected movable image A mozgó képet egy képponttal balra tolni - + + < + < + + + Histogram - + - + Get information about the graphical elements Rákérdezni, mi micsoda - + &What's this? Ez &mi? - + Shift+F1 Shift+F1 - + &Next > &Előre > - + &Cancel Mé&gsem + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + + + + + Open web browser + + + + + Size: + Méret: + + + + % + + + + + Quality: + + + + + Images folder: + + + + + Select... + + + + + Cancel + + + + + Export + + + + + Choose a directory + Válasszon egy mappát + + + + + Error: + + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... - + Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + - - - + + + Preview - + - + Previews - + - - + + Alignment Igazítás - + Auto-crop - + - - MTB - + + &MTB + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + &Autoalign images - + - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green - + - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region - + HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -1942,7 +2136,7 @@ &Mapping: - + @@ -1985,7 +2179,7 @@ HDR Creation Wizard - + @@ -1994,269 +2188,269 @@ - Currently Loaded &Files - + &Currently Loaded Files + - + Add Images - + - + Remove Selected Image - + - + Clear List - + - + Preview - + - + Selected Image &Exposure - + - + EV: - + - + Alignment Igazítás - - MTB - + + &MTB + - + &Autoalign images - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> - + - + [2/2] Choose Settings for HDR Creation - + - + Profile - + - - Use Custom Configuration - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + - - HDR Creation Model - + + Profile 1 + Profil 1 - - Robertson (Simple) - + + Profile 2 + Profil 2 - - Robertson (Response Recovery) - + + Profile 3 + Profil 3 - - Weighting Function - + + Profile 4 + Profil 4 - - Flat - + + Profile 5 + Profil 5 - - Response Curve - + + Profile 6 + Profil 6 - - sRGB - + + Use this only if the default profiles above do not yield good results + - - Custom - + + Use Custom Configuration + - - Response Curve Input File - + + HDR Creation Model + - - Response Curve Output File - + + Debevec + Debevec - - Use this only if the default profiles above do not yield good results - + + Robertson (Simple) + - - Linear - Egyenes arányú + + Robertson (Response Recovery) + - - Debevec - Debevec + + Weighting Function + - + Triangular Háromszögelő - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - + + Gaussian + Gauß - - Profile 1 - Profil 1 + + Plateau + Fennsík - - Profile 2 - Profil 2 + + Flat + - - Profile 3 - Profil 3 + + Response Curve + - - Profile 4 - Profil 4 + + Linear + Egyenes arányú - - Profile 5 - Profil 5 + + Gamma + Gammabeállítás - - Profile 6 - Profil 6 + + Log + Logaritmikus - - Gaussian - Gauß + + sRGB + - - Plateau - Fennsík + + Custom + - - Gamma - Gammabeállítás + + Response Curve Input File + - - Log - Logaritmikus + + Response Curve Output File + - + Save As... Mentés másként... - + Save Settings - + - + &Next > &Előre > @@ -2266,399 +2460,495 @@ Mé&gsem - + Image Filename Képfájl neve - + Exposure Megvilágítás - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Feldolgozandó képek kiválasztása - + Unknown - + - + Loading... - + - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found Nincsenek EXIF adatok - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Betöltött képek.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>A továbbiakhoz kézzel meg kell adni a megvilágítási értékeket.<br>Ebből kell még <font color="#FF0000">%1</font> darab.</b></h3></center> - + Loading Error: - + - + Start loading a set of images with different exposure - + - - - - + + + Error... Hiba... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + - + The external application "<em>align_image_stack</em>" crashed... Az "align_image_stack" külső folyamat bedöglött... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Ismeretlen hiba történt a "<em>align_image_stack</em>" folyamatban... - + Now click on next button - + - - + + Aligning... + Igazítás... + + + + &Finish &Befejezés - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - + - - Aligning... - Igazítás... - - - + Weights: Súlyok: - + - Response curve: - Válaszgörbe: - + - Model: - Típus: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> - + HelpBrowser - + Luminance HDR Help - + - + + + &File + &Fájl + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Luminance súgó - - + + &Print... - + + + + + Ctrl+P + Ctrl+P - + &Exit Ki&lépés - - + + &Find... - + - + + Ctrl+F + + + + Find &Next... - + + + + + F3 + - + Find &Previous... - + - - &Add - + + Shift+F3 + - + - &Delete - + &Add Bookmark + - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All - + - - Help SideBar - + + goHome + - - LuminanceHDR Online Help - + + goBack + - - &File - &Fájl + + goFwd + - - &Edit - + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + + Help SideBar + + + + + LuminanceHDR Online Help + + &Edit + + + + &View &Nézet - - + + &Bookmarks - + - + &Quit - + - + Find &Next - + - + Find &Previous - + - + &Contents - + - + &Search - + - - &Add Bookmark - + + &Delete + - + Find - + - + Search Term: - + - + New Bookmark - + - + New Bookmark's Title: - + - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show - + - + LuminanceHDR - Help Browser - + - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? - + HelpSideBar - - Contents - - - - + + &Contents - + - + Se&arch - + - + Searching is case insensitive - + - + &Search - + - - + + 1 1 - + Book&marks - + - + &Add - + &Remove - + - + R&emove All - + @@ -2666,22 +2956,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2689,7 +2979,7 @@ Unknown - + @@ -2697,32 +2987,32 @@ Save as - + Saved File Quality - + Quality: - + File size: - + Unknown - + Ca&lculate - + @@ -2732,30 +3022,31 @@ &Save - + LdrViewer - - - LDR image [%1 x %2] - + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Gammakorrektúra és különböző szintek - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2763,10 +3054,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Színek beállítása</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2774,25 +3065,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bemeneti szintek</span></p></body></html> - + Clip black Fekete szint - + Gamma Gammabeállítás - + Clip White Fehér szint - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2800,17 +3091,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Kimeneti szintek</span></p></body></html> - + &Reset &Nullázás - + &Cancel Mé&gsem - + &OK &OK @@ -2819,9 +3110,9 @@ MainWindow - + Luminance HDR - + @@ -2829,1400 +3120,1536 @@ &Eszközök - + &Help &Súgó - + + Luminance &HDR Online + + + + &Windows &Ablakok - + &View &Nézet - + HDR &Histogram - + - + &Toolbars &Eszköztárak - - Preview Panel - + + &Preview Panel + - + &File &Fájl - + &Edit - + - + Main Toolbar - + - + &New HDR image... - + - + New HDR image - + - - + + Create a new HDR image from a set of LDR or Raw images - + - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files - + - + Ctrl+N Ctrl+N - + &Open HDR image... - + - + Open HDR image - + - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + - + Ctrl+O Ctrl+O - + &Save as... Men&tés másként... - + Save as... Mentés másként... - - - + + + Save image (HDR or LDR) - + - + Ctrl+S Ctrl+S - + &Quit - + - - + + Quit Luminance HDR - + - + Exit Kilépés - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise - + - + Rotate counter-clockwise - + - - - + + + Rotate counter-clockwise the HDR image - + - + < < - - Rotate c&lockwise - + + Rotat&e clockwise + - + Rotate clockwise - + - - - + + + Rotate clockwise the HDR image - + - + > > - - Low Dynamic Range - Normális megvilágítástartomány (low) + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Megvilágítástartományhoz igazítani + + &Fit to Dynamic Range + - + Fit to dynamic range - + - + \ \ - - Shrink Dynamic Range - Megvilágítástartományt szűkíteni + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Megvilágítástartományt bővíteni + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Megvilágítást csökkenteni + + &Decrease Exposure + - + 0 0 - + &Increase Exposure Megvilágítást nö&velni - + 9 9 - + &Contents... - + - + About... Névjegy... - - - + + + Open user manual for Luminance HDR - + - + F1 - + - + &Normal Size &Eredeti méret - + Normal size - + - - - + + + View HDR image at its normal size - + - + O O - + Zoom &In &Nagyítás - - - + + + Zoom in - + - + + + - + Zoom &Out &Kicsinyítés - - - + + + Zoom out - + - + - - - + &Fit in Window - + - - + + Fit in Window - + - - + + Make the HDR image fit its window - + - + W W - + &Preferences... &Beállítások... - + Luminance Options Luminance beállítások - - - + + + Set various options of Luminance - + - + Ctrl+P Ctrl+P - + &Resize... - + - + Resize the HDR image - + - - - + + + Change size of the HDR image - + - + Ctrl+R Ctrl+R - + Copy &Exif Data... E&XIF adatok másolása... - + Copy Exif Data EXIF adatok másolása - - - + + + Copy Exif data between two sets of files - + - + Ctrl+E Ctrl+E - + &About Qt Qt &névjegye - + Show information about Qt - + - - + + Show information about Qt library that is used by Luminance - + - + Text &under Icons - + - + &Icons Only Csak &ikonok - + &Text Only Csak &szöveg - + Text &Alongside Icons Szöveg az ikonok &mellett - + &Batch Tone Mapping... &Köteges árnyalatnövelés... - + Convert multiple HDR images to LDR - + - - + + Convert multiple HDR images to LDR using existing settings files - + - + Ctrl+B Ctrl+B - + &What's This? Ez &mi? - - + + Get verbose information about user interface elements - + - + Shift+F1 Shift+F1 - + About &Luminance HDR - + - + Show information about Luminance HDR - + - - + + Show information about Luminance HDR, its authors and contributors - + + + + + Ctrl+I + - + Save HDR image &preview... - + - - - + + + Save the current HDR Preview to an LDR file - + - + &Projective Transformation... Át&vetítés... - - - + + + Apply projective transformation to the current HDR image - + + + + + Ctrl+J + - + &Crop to Selection - + - + Crop to Selection - + - - + + Crop the image to selection rectangle - + - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image - + + + + + Ctrl+X + Ctrl+X - + Remove &Selection - + - + Remove selection rectangle - + - - + + Remove selection rectangle from image area - + + + + + Ctrl+Z + - + Make a &Donation - + - + Ctrl+D Ctrl+D - - Lock Viewers - + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view - + - - Minimize - + + S + - - Maximize - + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - + + &Bring All to Front + - - Show Preview Panel - + + &Show Preview Panel + - + Show/Hide Preview Panel - + - + Ctrl+V - + - + Adjust &Levels - + - - + + Adjust Levels - + - - + + Tune the histogram for the current LDR A jelenlegi LDR hisztogrammját megváltoztatni - + + Ctrl+L Ctrl+L - + Save All Mentés egyszerre - - + + Save All LDR files - + - - Remove Tab - + + &Remove Tab + - + Ctrl+W - + - - Fill Window - + + Fill &Window + - + Fill window with the current viewer - + - - Batch HDR... - + + F + - + + Batch &HDR... + + + + Ctrl+H Ctrl+H - + Soft Proofing - + - + Gamut Check - + - - Show on the right - + + &Show on the right + - - Show on the bottom - + + Show &on the bottom + - - Realtime Previews - + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + - + Ctrl+F - + - + White Balance - + - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! - + - + All HDR formats - + - + Load one or more HDR images... - + - + Save files in Képeket menteni itt - - Failed to save - + + + Failed to save %1 + - + Done! - + - + Aborting... Megszakítás... - + + + Untitled + Névtelen + + + Cropped Image - + - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Fennálló változtatások... - + This HDR image has unsaved changes.<br>Do you want to save it? - + - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - - - - - - Untitled - Névtelen + - + Untitled %1 - + - + Error: %1 - + - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences - - - - - External Tools - Programok + - + Tone Mapping LDR - + RAW Conversion - + + + + + Color Management + + + + + External Tools + Programok - + Interface - + - - Color Management - + + Fast export + - + Language Nyelv - + Default Previews Width - + - + px - + - + Always show Preview Panel - + - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + - - + + Amount of threads to use on multicore/SMP machines - + - + Batch Tonemapping Number of Threads - + - + General - + - + Quality: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear - + - + VNG - + - + PPG - + - + AHD - - - - - - - - - - - - - - - - - - ... - + - + Median: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + - + Do not stretch or rotate pixels - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + - + Interpolate RGB using 4 colours - + - + Color correction - + - + White Balance - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + - + Predefined D65 - + - + Camera - + - + Auto - + - + Manual - + - + Temperature (Kelvin) - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + - + Green - + - + Set here the green component to set magenta color cast removal level - + - + Highlights - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Unclip</span>: leave highlights unclipped in various shades of pink</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blend</span>: Blend clipped and unclipped values together for a gradual fade to white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + - + Solid White - + - + Do not transform - + - + Blend - + - + Reconstruct - + - + Level - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + - + Correct false colors in highlights - + - + Auto Brightness - + - + Brightness Fényesség - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + - + Black - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - - - - + NR and CA Correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + - + Enable noise reduction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + - + Threshold: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + - + Enable Chromatic Aberration correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + - + Red Component - + - + Blue Component - - - - - Monitor Profile - + - - - + + + Browse... - + - + Camera profile - + + + + + Monitor Profile + - + Printer profile - + - + align_image_stack command line arguments - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> - + - + &Cancel Mé&gsem - + &OK &OK - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Válasszon egy mappát - + Open ICC Profile - + - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4230,105 +4657,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation Átvetítés - + Projections Vetítések - + Source Projection: Az eredeti képen: - - + + Polar sarki - - + + Angular szöges - - + + Cylindrical hengeres - - + + Mirror Ball tükörgömbös - + Destination Projection: Az eredő képen: - + Angles: Szögek: - - - - + + + + ° ° - + Bilinear Interpolation bilineáris interpoláció - + Oversample factor: Mintavételi tényező: - + Rotation (degrees) Fordítás (fokban) - + Yaw: Elfordulás (x): - + Pitch: Emelkedés (y): - + Roll: Forgás (z): - + &Cancel Mé&gsem - + &OK &OK @@ -4336,17 +4763,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: HIBA: Árnyalatnövelési beállításokat tartalmazó fájl nem tölthető: - + ERROR: File too old, cannot parse Tone Mapping Setting file: HIBA: Túl régi fájl; árnyalatnövelési beállítások nem értelmezhetőek: - + ERROR: cannot parse Tone Mapping Setting file: HIBA: Árnyalatnövelési beállítások nem értelmezhetőek: @@ -4354,398 +4781,433 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + Warning - + I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - + + Triangular + Háromszögelő - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Fennsík + + + + Gaussian + Gauß + + + + Flat + + + + + Linear + Egyenes arányú + + + + Gamma + Gammabeállítás + + + + Logarithmic + Logaritmikus + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + - + PreGamma=%1 - + - + Contrast Equalization Kontraszt kiegyenlítés - + Contrast - + - - + + Saturation - + - + Detail - + - + Luminance Level - + - + Luminance Level=Auto - + - + Color Saturation Színtelítettség - + Contrast Enhancement - + - + Alpha Alfa - + Beta Béta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + - + + InvAlpha + + + + simple - + - + Equation 2 - + - + Equation 4 - + - - + + Local - + - + Bias Eltolás (bias) - + Spatial - + - - + + Range Tartomány - + Base - + - + Multiplier Szorzó - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Fi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Fényesség - + Chromatic Adaptation Színmódosítás - + Light Adaptation Fénymódosítás - + + Option -v -a... + + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float Nem lehet %1-t floattá változtatni - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 - + - + Using %n threads. - - - + - + Loading file %1 - + - + Successfully loaded file %1. - + - + All LDR formats - + - + Save the LDR image as... - + - + Save the HDR image as... - + - + Save as... Mentés másként... - - - Triangular - Háromszögelő - - - - Plateau - Fennsík - - - - Gaussian - Gauß - - - - Flat - - - - - Linear - Egyenes arányú - - - - Gamma - Gammabeállítás - - - - Logarithmic - Logaritmikus - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - - ResizeDialog - + Scale Image Kép átméretezése - + Hdr Image Size HDR kép mérete - - Width: - Szélesség: + + Restore original size + Eredeti méret visszaállítása + + + + &Reset + &Visszaállítás - + Switch between pixels or percentage Képpontok és százalék között átkapcsolni - + Pixels képpont - + Percent százalék - - Height: - Magasság: - - - + Result size Keletkező kép mérete - - Restore original size - Eredeti méret visszaállítása + + Height: + Magasság: - - &Reset - &Visszaállítás + + Width: + Szélesség: - + &Cancel Mé&gsem - + &Scale Átmére&tezés @@ -4755,202 +5217,250 @@ Saved Parameters - + - - + + Comment - + - + TM Operator - + - + Simple Egyszerű - + Equation 2 - + - + Local Contrast Threshold Heli kontraszt küszöb - + Bias Eltolás (bias) - + Spatial Kernel Sigma Térbeli szigma mag - + Range Kernel Sigma Tartományi szigma mag - + Base Contrast Alapkontraszt - + Alpha Alfa - + Beta Béta - - + + Color Saturation Színtelítettség - + Noise Reduction Zajcsökkentés - + Old Fattal - + + + + + Rho + + + + + InvAlpha + - + Contrast Equalization Kontraszt kiegyenlítés - + Contrast Factor Kontraszt tényező - + Saturation Factor Telítettségi tényező - + Detail Factor Részlettényező - + Contrast Enhancement - + - + Luminance Level - + - + Manual Luminance Level - + - + Cone and Rod based on Luminance Fényességen alapuló kúp és rúd - + Local Tonemapping - + - + Cone Level Kúp szintje - + Rod Level Rúd szintje - + Multiplier Szorzó - + Use Scales Fokozatokat használni - + Key Value Kulcsérték - + Phi Value - + - + Range Tartomány - + Lower Scale Alsó fokozat - + Upper Scale Felső fokozat - + Brightness Fényesség - + Chromatic Adaptation Színmódosítás - + Light Adaptation Fénymódosítás - + Pre-gamma - + SavingParameters - + Saving Parameters - + - + Enter a short comment for the saved parameters: - + + + + + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + @@ -4958,7 +5468,20 @@ Abort computation - + + + + + ThresholdWidget + + + Frame + + + + + Threshold + @@ -4966,502 +5489,536 @@ Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Itt lehet az árnyalatnövelési jellemzőket megnyitni vagy menteni.<br>A jelenlegi beállításokat is itt lehet alkalmazni. + + + + Tone Mapping Settings + + + + + Save current parameters to a text file + Beállításokat szövegfájlba menteni + + + + Save current parameters (pregamma and TMO) to a text file. + Jelenlegi beállításokat (gamma előtti és átnyalatnövelési műveletek) szövegfájlba menteni. + + + + Load an existing text file containing pregamma and TMO settings + Meglévő gammakorrektúra előtti és árnyalatnövelési beállitások megnyitása + + + + Load an existing text file containing pregamma and TMO settings. + Gamma előtti és átnyalatnövelési műveletek beállítását tartalmazó fájlt megnyitni. + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Itt lehet elvégezni a HDR kép gammakorrektúráját.<br>A gammakorrektúra az árnyalatnövelés előtt lesz alkalmazva. + + + + Process + Feldolgozás + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Visszaállítani a gammakorektúra előtti alapértelmezést (1) + + + + Size of the resulting LDR image + + + + + Here you can choose the size of the resulting LDR image. + Itt lehet beállítani az LDR kép méretét. + + + + Set Custom Output Size + + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Ezzel a gombbal meg lehet adni egy <i>szélességi</i> értéket az LDR eredmény részére.<br>Az "enter" gomb megnyomásával a magasság értékét a program magától kiszámítja és az új méretet megjeleníti a listán. - + Start tonemapping (CTRL+T) - + - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - + - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR - + + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + - + Tonemap - + - + Mantiuk '06 - + - + Mantiuk '08 - + - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator - + - + Contrast Factor Kontraszt tényező - + Saturation Factor Telítettségi tényező - + Detail Factor Részlettényező - + Contrast Equalization Kontraszt kiegyenlítés - + Predefined Display - + - + Lcd Office - + - + Lcd - + - + Lcd Bright - + - + CRT - + - - + + Color Saturation Színtelítettség - + Contrast Enhancement - + - + Enable Luminace Level - + - + Luminance Level - + - + Alpha Alfa - + Beta Béta - + Noise Reduction Zajcsökkentés - + Version 2.3.0 - + + + + + Inverse Alpha + + + + + Rho + - + Bias Eltolás (bias) - + Spatial Kernel Sigma Térbeli szigma mag - + Range Kernel Sigma Tartományi szigma mag - + Base Contrast Alapkontraszt - + Key Value Kulcsérték - + Phi Fi - + Use Scales Fokozatokat használni - + Range Tartomány - + Lower Scale Alsó fokozat - + Upper Scale Felső fokozat - + Brightness Fényesség - + Chromatic Adaptation Színmódosítás - + Light Adaptation Fénymódosítás - + Local Contrast Threshold Heli kontraszt küszöb - + Simple Egyszerű - + Equation Number Egyenlet száma - - Eqn 2 - 2. egyenlet + + Eqn &2 + - - Eqn 4 - 4. egyenlet + + Eqn &4 + - + Multiplier Szorzó - + Local Tone Mapping Helyi árnyalatnövelés - + Auto Cone/Rod - + - + Cone Level Kúp szintje - + Rod Level Rúd szintje - + + This operator has no options + + + + Restore operator's default values Visszaállítani a művelet alapértelmezését - + Restore - + - + Previous applied settings - + - + Previous - + - + Next applied settings - + - + Next - - - - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Itt lehet az árnyalatnövelési jellemzőket megnyitni vagy menteni.<br>A jelenlegi beállításokat is itt lehet alkalmazni. - - - - Tone Mapping Settings - - - - - Save current parameters to a text file - Beállításokat szövegfájlba menteni - - - - Save current parameters (pregamma and TMO) to a text file. - Jelenlegi beállításokat (gamma előtti és átnyalatnövelési műveletek) szövegfájlba menteni. - - - - &Save to File - - - - - Load an existing text file containing pregamma and TMO settings - Meglévő gammakorrektúra előtti és árnyalatnövelési beállitások megnyitása - - - - Load an existing text file containing pregamma and TMO settings. - Gamma előtti és átnyalatnövelési műveletek beállítását tartalmazó fájlt megnyitni. - - - - &Load from File - - - - - Save current parameters - - - - - - ... - - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Itt lehet elvégezni a HDR kép gammakorrektúráját.<br>A gammakorrektúra az árnyalatnövelés előtt lesz alkalmazva. - - - - Process - Feldolgozás - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - - - - - Restore pregamma's default value (1) - Visszaállítani a gammakorektúra előtti alapértelmezést (1) - - - - Size of the resulting LDR image - - - - - Here you can choose the size of the resulting LDR image. - Itt lehet beállítani az LDR kép méretét. - - - - Set Custom Output Size - + - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Ezzel a gombbal meg lehet adni egy <i>szélességi</i> értéket az LDR eredmény részére.<br>Az "enter" gomb megnyomásával a magasság értékét a program magától kiszámítja és az új méretet megjeleníti a listán. + + Queue size: %1 + - + TM Database Problem - + - + The database used for saving TM parameters cannot be opened. Error: %1 - + - + Load a tonemapping settings text file... Árnyalatnövelési jellemzők betöltése... - - + + LuminanceHDR tonemapping settings text file (*.txt) - + - - - - + + + + Aborting... Megszakítás... - + File is not readable (check existence, permissions,...) A fájl olvashatatlan (ellenőrizze, hogy van-e ilyen fájl, ill. hogy a jogai engedélyezik-e) - + Save tonemapping settings text file to... Árnyalatnövelési jellemzők mentése... - + File is not writable (check permissions, path...) A fájl nem írható (ellenőrizze a jogait, az útvonalat, stb.) - + File is not readable (check permissions, path...) A fájl olvashatatlan (ellenőrizze a jogait, az útvonalat, stb.) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size Egyéni LDR méret - + Enter the width of the new size: Adja meg az új méret szélességét: @@ -5471,47 +6028,47 @@ Load Custom Settings - + Sort by - + Comments: - + Comment - + Operator - + Most Useful Operators - + Tonemap - + Load - + Cancel - + @@ -5522,108 +6079,108 @@ EXIF adatok másolása - + From - + - - + + Append files to the list Hozzáadni - - + + Remove selected file(s) from the list Kijelöltet törölni a listáról - - + + Move up selected file(s) Kijelöltet felfelé - - + + Move down selected file(s) Kijelöltet lefelé - + To - + - + Log Logaritmikus - + Exif operations report Jelentés az EXIF műveletekről - - &Show only: - &Csak ez látsszon: + + Show onl&y: + - + Filter messages based on severity Üzeneteket fontosság szerint szűrni - + All messages minden üzenet - + Errors only csak hibaüzenetek - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text Meghatározót törölni - + Keep existing Exif tags in destination file - + - + &Cancel Mé&gsem - + &Start - + - - + + All Supported formats Minden felismert fájltípus - - + + Select the input images Feldolgozandó képek kiválasztása - + &Done &Kész @@ -5637,29 +6194,35 @@ %1 Az engedély dokumentuma nincs meg. Itt található a weben: %2here%3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation - + - + Would you like to donate? - + - + Yes, I'd love to! - + - + Stop Bothering Me - + - + Remind me later - + @@ -5667,18 +6230,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_id.ts luminance-hdr-2.5.1/i18n/lang_id.ts --- luminance-hdr-2.5.0/i18n/lang_id.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_id.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - Tentang Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ Peng&arang - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &Terimakasih Kepada - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement &License Agreement - + &OK &OK @@ -110,290 +103,290 @@ BatchHDRDialog - Batch HDR Dialog - + Batch HDR + - + Number of bracketed images: - + - - + + Select the number of bracketed pictures used to create the HDRs - + - + Output Output - + + Choose an HDR output file format + + + + Predefined profile: - + - - Choose an HDR output file format - + + Output format: + - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - - - - + Alignment Alignment - + Auto align the bracketed pictures - + - + Auto-align images - + - + Use MTB (Median Threshold Bitmap) engine - + - - MTB - + + &MTB + - + Use Hugin's align_image_stack engine - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - - Progress - - - - + &Cancel &Batal - + &Start - + - + &Close &Tutup - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + - - Auto anti-ghosting - + + Output folder: + - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - + + Artifact-free High Dynamic Range Imaging + - - - Select... - + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - + + O. Gallo and others + - - Output folder: - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory - + - + Choose a output directory - + - - - + + + Warning - + - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? - + - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... - + - + Loading files... - + - + Completed with errors - + - + Completed without errors - + - + Error: missing EXIF data - + - + Aligning... Aligning... - + Creating HDR... - + - + Doing auto anti-ghosting... - + - + Written - + - + Error: - + - + Aborting... Membatalkan... @@ -408,7 +401,7 @@ HDR Images to Convert - + @@ -418,77 +411,77 @@ Add Directory (Alt+D) - + Alt+D - + Add Files (Alt+F) - + Alt+F - + Remove Files (Alt+R) - + Alt+R - + Tone Mapping Settings - + Add Directory (Alt+I) - + Alt+I - + Add Files (Alt+L) - + Alt+L - + Add from Database (Alt+B) - + Alt+B - + Remove Settings (Alt+M) - + Alt+M - + @@ -496,11 +489,6 @@ Daftar file Tone Mapping Setting yang akan digunakan untuk tone map setiap HDR - - Specify output folder for the tone mapped files - Tentukan output folder untuk file tone mapped - - Output Output @@ -508,154 +496,174 @@ Output Image Width: - + + + + + Output Folder: + + + + + + Specify output folder for the tone mapped files + Tentukan output folder untuk file tone mapped + + + + Selec&t... + - + + + Width of tonemapped image in percent of original image + + + + % - + - + Output Format: - + - - Output Folder: - + + Image format of tonemapped images + - - Selec&t... - + + Image format options + - + Conversion Log - + - + Batch operations report Laporan operasi Batch - - &Show only: - &Hanya Tampilkan: + + Show onl&y: + - + Filter messages based on severity Filter messages based on severity - + All messages Semua pesan - + Errors only Hanya error-error - + Success messages Pesan Sukses - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text Bersihkan text penyaring - + Overall completion progress Keseluruhan progress yang telah selesai - + &Cancel &Batal - + Start batch tone mapping Mulai batch tone mapping - + &Start - + - + Using %n thread(s) - - - + - - - + + + Choose a directory Pilih direktori - + All HDR images - + - + Select input images - + - + Load tone mapping settings text files... - + - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... Memroses... - + Start processing... - + - + Close - + - + &Done &Selesai - + All tasks completed. Seluruh task telah komplet. - + Aborting... Membatalkan... @@ -665,525 +673,632 @@ [T%1] Start processing %2 - + [T%1] Successfully load %2 - + [T%1] Successfully saved LDR file: %2 - + [T%1] ERROR: Cannot save to file: %2 - + [T%1] ERROR: Loading of %2 failed - + CommandLineInterfaceManager - - Error: Alignment engine not recognized. - Error: Alignment engine not recognized. - - - - Error: Unknown weight function specified. - Error: Tidak diketahui spesifik weight function. - - - - Error: Unknown response curve specified. - Error: Tidak diketahui spesifik response curve. - - - - Error: Unknown HDR creation model specified. - Error: Tidak diketahui spesifik HDR creation model. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + - - Error: Unknown tone mapping operator specified. - Error: Tidak diketahui spesifik operator tone mapping. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + Error: Alignment engine not recognized. + + + + Error: Unknown weight function specified. + Error: Tidak diketahui spesifik weight function. + + + + Error: Unknown response curve specified. + Error: Tidak diketahui spesifik response curve. + + + + Error: Unknown HDR creation model specified. + Error: Tidak diketahui spesifik HDR creation model. + + + + Error: Unknown tone mapping operator specified. + Error: Tidak diketahui spesifik operator tone mapping. - - + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - Error: Jumlah spesifik nilai EV berbeda dengan file masukan. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + Error: Jumlah spesifik nilai EV berbeda dengan file masukan. - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Error: kehilangan Exif data pada image dan nilai EV tidak spesifik pada commandline, bailing out. - + EV values have been assigned. - + + + + + + Starting aligning... + - + Failed executing align_image_stack - + - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + + + + + ERROR: directory %1 must exist + - + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - Error: Tidak dapat menyimpan ke file: %1 + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - + Choose action + <b>What would you like to do with the file(s)?</b> - + &Open - + Open an existing HDR image - + &New - + Create a new HDR image from one or more images - + @@ -1193,85 +1308,81 @@ Cancel the drag and drop process and return to the main window - + DonationDialog - + Luminance HDR - Make a Donation - + - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! - + - + Ask me again later - + - + No, Stop bothering me! - + EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable Ed&itable - + R&eference R&eferensi - + Select the previous image in both lists Select image sebelumnya dalam kedua daftar - + Select the next image in both lists Select image berikutnya dalam kedua daftar - + Choose a directory and a prefix Pilih sebuah direktori dan sebuah prefix @@ -1279,350 +1390,338 @@ EditingToolsDialog - + Editing Tools Editing Tools - - Visualization and Navigation - Visualisasi dan Navigasi + + Images List + Daftar Image - - Fit to window - Fit to window + + Ed&itable + Ed&itable - - &Fit to Window - &Fit to Window + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - - Fill the window - + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. - - Fill &window - + + Select the previous image in both lists + Select image sebelumnya dalam kedua daftar - - Original size - Original size - - - - Origina&l Size - Origina&l Size - - - - &Mode: - + + Use this button to move the selection to the previous image in both lists. + Gunakan tombol ini untuk memindah seleksi image sebelumnya dalam kedua daftar. - - Difference (E-P) - Difference (E-P) + + Select the next image in both lists + Select image berikutnya dalam kedua daftar - - Overlay (E+P) - Overlay (E+P) + + Use this button to move the selection to the next image in both lists. + Gunakan tombol ini untuk memindah seleksi ke image berikutnya dalam kedua daftar. - - Editable Only (E) - Editable Only (E) + + Referen&ce + - - Pivot Only (P) - Pivot Only (P) + + The reference image is the one currently selected + The reference image is the one currently selected - - Antighosting Mask - Antighosting Mask + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - - - Brush - + + Crop the stack of images after a selection with the left mouse button has been made + Crop the stack of images after a selection with the left mouse button has been made - - - Lasso - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - - Images List - Daftar Image + + &Crop All Images + &Crop Semua Images - - Ed&itable - Ed&itable + + Ctrl+X + Ctrl+X - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + + &Anti-Ghosting + - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. + + &Save Images + &Simpan Images - - Select the previous image in both lists - Select image sebelumnya dalam kedua daftar + + Ctrl+S + Ctrl+S - - Use this button to move the selection to the previous image in both lists. - Gunakan tombol ini untuk memindah seleksi image sebelumnya dalam kedua daftar. + + Visualization and Navigation + Visualisasi dan Navigasi - - Select the next image in both lists - Select image berikutnya dalam kedua daftar + + Fit to window + Fit to window - - Use this button to move the selection to the next image in both lists. - Gunakan tombol ini untuk memindah seleksi ke image berikutnya dalam kedua daftar. + + &Fit to Window + &Fit to Window - - R&eference - R&eferensi + + Fill the window + - - The reference image is the one currently selected - The reference image is the one currently selected + + Fill &window + - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + + Original size + Original size - - Tools - Peralatan + + Origina&l Size + Origina&l Size - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + &Mode: + - - O. Gallo and others - + + Difference (E-P) + Difference (E-P) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Overlay (E+P) + Overlay (E+P) - - Auto anti-ghosting - + + Editable Only (E) + Editable Only (E) - - Artifact-free HDR Imaging - + + Pivot Only (P) + Pivot Only (P) - - Total Patches: - + + Antighosting Mask + Antighosting Mask - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Brush + - - Threshold - + + Lasso + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + Anti Ghosting + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + O. Gallo and others + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Recompute - + + Auto anti-ghosting + - - Crop the stack of images after a selection with the left mouse button has been made - Crop the stack of images after a selection with the left mouse button has been made + + Artifact-free HDR Imaging + - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + + Total Patches: + - - &Crop All Images - &Crop Semua Images + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + - - Ctrl+X - Ctrl+X + + Threshold + - - &Anti-Ghosting - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + - - &Save Images - &Simpan Images + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Ctrl+S - Ctrl+S + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Recompute + - + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Size: - - - + + + px px - - &Strength: - &Strength: + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1630,10 +1729,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1641,295 +1740,390 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> - + Shift values for editable image Shift values for editable image - + Reset the shift values for the currently selected movable image Reset the shift values for the currently selected movable image - + &Reset &Reset - + Reset the shift values for all the images Reset nilai shift untuk semua image - + Reset &All Reset &All - - &Horizontal: - &Horisontal: + + Hori&zontal: + - - &Vertical: - &Vertikal: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Insert an horizontal shift value for the currently selected movable image - + Insert a vertical shift value for the currently selected movable image Insert a vertical shift value for the currently selected movable image - + Move up of 1 pixel the currently selected movable image Move up of 1 pixel the currently selected movable image - + Move down of 1 pixel the currently selected movable image Move down of 1 pixel the currently selected movable image - + Move right of 1 pixel the currently selected movable image Move right of 1 pixel the currently selected movable image - + + > + > + + + Move left of 1 pixel the currently selected movable image Move left of 1 pixel the currently selected movable image - + + < + < + + + Histogram - + - + Get information about the graphical elements Dapatkan informasi tentang graphical elements - + &What's this? &Apa ini? - + Shift+F1 Shift+F1 - + &Next > &Berikutnya > - + &Cancel &Batal + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + + + + + Open web browser + + + + + Size: + Size: + + + + % + + + + + Quality: + + + + + Images folder: + + + + + Select... + + + + + Cancel + + + + + Export + + + + + Choose a directory + Pilih direktori + + + + + Error: + + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... - + Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + - - - + + + Preview - + - + Previews - + - - + + Alignment Alignment - + Auto-crop - + - - MTB - + + &MTB + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + &Autoalign images - + - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green - + - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region - + HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -1937,7 +2131,7 @@ &Mapping: - + @@ -1980,7 +2174,7 @@ HDR Creation Wizard - + @@ -1989,269 +2183,269 @@ - Currently Loaded &Files - + &Currently Loaded Files + - + Add Images - + - + Remove Selected Image - + - + Clear List - + - + Preview - + - + Selected Image &Exposure - + - + EV: - + - + Alignment Alignment - - MTB - + + &MTB + - + &Autoalign images - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> - + - + [2/2] Choose Settings for HDR Creation - + - + Profile - + - - Use Custom Configuration - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + - - HDR Creation Model - + + Profile 1 + Profil 1 - - Robertson (Simple) - + + Profile 2 + Profil 2 - - Robertson (Response Recovery) - + + Profile 3 + Profil 3 - - Weighting Function - + + Profile 4 + Profil 4 - - Flat - + + Profile 5 + Profil 5 - - Response Curve - + + Profile 6 + Profil 6 - - sRGB - + + Use this only if the default profiles above do not yield good results + - - Custom - + + Use Custom Configuration + - - Response Curve Input File - + + HDR Creation Model + - - Response Curve Output File - + + Debevec + Debevec - - Use this only if the default profiles above do not yield good results - + + Robertson (Simple) + - - Linear - Linear + + Robertson (Response Recovery) + - - Debevec - Debevec + + Weighting Function + - + Triangular Triangular - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - + + Gaussian + Gaussian - - Profile 1 - Profil 1 + + Plateau + Plateau - - Profile 2 - Profil 2 + + Flat + - - Profile 3 - Profil 3 + + Response Curve + - - Profile 4 - Profil 4 + + Linear + Linear - - Profile 5 - Profil 5 + + Gamma + Gamma - - Profile 6 - Profil 6 + + Log + Log - - Gaussian - Gaussian + + sRGB + - - Plateau - Plateau + + Custom + - - Gamma - Gamma + + Response Curve Input File + - - Log - Log + + Response Curve Output File + - + Save As... Simpan sebagai... - + Save Settings - + - + &Next > &Berikutnya > @@ -2261,399 +2455,495 @@ &Batal - + Image Filename Image Filename - + Exposure Exposure - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Pilih gambar inputan - + Unknown - + - + Loading... - + - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found Data EXIF tidak ditemukan - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Untuk memprosesnya anda membutuhkan set secara manual nilai exposure.<br><font color="#FF0000">%1</font> Nilai masih dibutuhkan.</b></h3></center> - + Loading Error: - + - + Start loading a set of images with different exposure - + - - - - + + + Error... Error... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + - + The external application "<em>align_image_stack</em>" crashed... Aplikasi external "<em>align_image_stack</em>" crash... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Terjadi error yang tidak diketahui ketika mengeksekusi aplikasi "<em>align_image_stack</em>"... - + Now click on next button - + + + + + Aligning... + Aligning... - - + + &Finish &Selesai - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - - - - - Aligning... - Aligning... + - + Weights: - + - + - Response curve: - Response curve: - + - Model: Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> - + HelpBrowser - + Luminance HDR Help - + - + + + &File + &File + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Bantuan Luminance - - + + &Print... - + + + + + Ctrl+P + Ctrl+P - + &Exit &Keluar - - + + &Find... - + - + + Ctrl+F + + + + Find &Next... - + + + + + F3 + - + Find &Previous... - + - - &Add - + + Shift+F3 + - + - &Delete - + &Add Bookmark + - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All - + - - Help SideBar - + + goHome + - - LuminanceHDR Online Help - + + goBack + - - &File - &File + + goFwd + - - &Edit - + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + + Help SideBar + + + + + LuminanceHDR Online Help + + &Edit + + + + &View &Melihat - - + + &Bookmarks - + - + &Quit - + - + Find &Next - + - + Find &Previous - + - + &Contents - + - + &Search - + - - &Add Bookmark - + + &Delete + - + Find - + - + Search Term: - + - + New Bookmark - + - + New Bookmark's Title: - + - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show - + - + LuminanceHDR - Help Browser - + - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? - + HelpSideBar - - Contents - - - - + + &Contents - + - + Se&arch - + - + Searching is case insensitive - + - + &Search - + - - + + 1 1 - + Book&marks - + - + &Add - + &Remove - + - + R&emove All - + @@ -2661,22 +2951,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2684,7 +2974,7 @@ Unknown - + @@ -2692,32 +2982,32 @@ Save as - + Saved File Quality - + Quality: - + File size: - + Unknown - + Ca&lculate - + @@ -2727,30 +3017,31 @@ &Save - + LdrViewer - - - LDR image [%1 x %2] - + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Levels dan Gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2758,10 +3049,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2769,25 +3060,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> - + Clip black Klip hitam - + Gamma Gamma - + Clip White Klip Putih - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2795,17 +3086,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> - + &Reset &Reset - + &Cancel &Batal - + &OK &OK @@ -2814,9 +3105,9 @@ MainWindow - + Luminance HDR - + @@ -2824,1400 +3115,1536 @@ Perala&tan - + &Help &Bantuan - + + Luminance &HDR Online + + + + &Windows &Jendela - + &View &Melihat - + HDR &Histogram - + - + &Toolbars &Toolbars - - Preview Panel - + + &Preview Panel + - + &File &File - + &Edit - + - + Main Toolbar - + - + &New HDR image... - + - + New HDR image - + - - + + Create a new HDR image from a set of LDR or Raw images - + - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files - + - + Ctrl+N Ctrl+N - + &Open HDR image... - + - + Open HDR image - + - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + - + Ctrl+O Ctrl+O - + &Save as... &Simpan sebagai... - + Save as... Simpan sebagai... - - - + + + Save image (HDR or LDR) - + - + Ctrl+S Ctrl+S - + &Quit - + - - + + Quit Luminance HDR - + - + Exit Keluar - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise - + - + Rotate counter-clockwise - + - - - + + + Rotate counter-clockwise the HDR image - + - + < < - - Rotate c&lockwise - + + Rotat&e clockwise + - + Rotate clockwise - + - - - + + + Rotate clockwise the HDR image - + - + > > - - Low Dynamic Range - Low Dynamic Range + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Fit to Dynamic Range + + &Fit to Dynamic Range + - + Fit to dynamic range - + - + \ \ - - Shrink Dynamic Range - Shrink Dynamic Range + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Extend Dynamic Range + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Decrease Exposure + + &Decrease Exposure + - + 0 0 - + &Increase Exposure &Increase Exposure - + 9 9 - + &Contents... - + - + About... Tentang... - - - + + + Open user manual for Luminance HDR - + - + F1 - + - + &Normal Size Ukuran &Normal - + Normal size - + - - - + + + View HDR image at its normal size - + - + O O - + Zoom &In Zoom &In - - - + + + Zoom in - + - + + + - + Zoom &Out Zoom &Out - - - + + + Zoom out - + - + - - - + &Fit in Window - + - - + + Fit in Window - + - - + + Make the HDR image fit its window - + - + W W - + &Preferences... &Preferences... - + Luminance Options Opsi-opsi Luminance - - - + + + Set various options of Luminance - + - + Ctrl+P Ctrl+P - + &Resize... - + - + Resize the HDR image - + - - - + + + Change size of the HDR image - + - + Ctrl+R Ctrl+R - + Copy &Exif Data... Copy Data &Exif... - + Copy Exif Data Copy Data Exif - - - + + + Copy Exif data between two sets of files - + - + Ctrl+E Ctrl+E - + &About Qt &Tentang Qt - + Show information about Qt - + - - + + Show information about Qt library that is used by Luminance - + - + Text &under Icons - + - + &Icons Only Hanya &Icon - + &Text Only Hanya &Text - + Text &Alongside Icons Text &Alongside Icons - + &Batch Tone Mapping... &Batch Tone Mapping... - + Convert multiple HDR images to LDR - + - - + + Convert multiple HDR images to LDR using existing settings files - + - + Ctrl+B Ctrl+B - + &What's This? &Apa ini? - - + + Get verbose information about user interface elements - + - + Shift+F1 Shift+F1 - + About &Luminance HDR - + - + Show information about Luminance HDR - + - - + + Show information about Luminance HDR, its authors and contributors - + + + + + Ctrl+I + - + Save HDR image &preview... - + - - - + + + Save the current HDR Preview to an LDR file - + - + &Projective Transformation... - + - - - + + + Apply projective transformation to the current HDR image - + + + + + Ctrl+J + - + &Crop to Selection - + - + Crop to Selection - + - - + + Crop the image to selection rectangle - + - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image - + + + + + Ctrl+X + Ctrl+X - + Remove &Selection - + - + Remove selection rectangle - + - - + + Remove selection rectangle from image area - + + + + + Ctrl+Z + - + Make a &Donation - + - + Ctrl+D Ctrl+D - - Lock Viewers - + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view - + - - Minimize - + + S + - - Maximize - + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - + + &Bring All to Front + - - Show Preview Panel - + + &Show Preview Panel + - + Show/Hide Preview Panel - + - + Ctrl+V - + - + Adjust &Levels - + - - + + Adjust Levels - + - - + + Tune the histogram for the current LDR Tune histogram LDR ini - + + Ctrl+L Ctrl+L - + Save All - + - - + + Save All LDR files - + - - Remove Tab - + + &Remove Tab + - + Ctrl+W - + - - Fill Window - + + Fill &Window + - + Fill window with the current viewer - + - - Batch HDR... - + + F + - + + Batch &HDR... + + + + Ctrl+H Ctrl+H - + Soft Proofing - + - + Gamut Check - + - - Show on the right - + + &Show on the right + - - Show on the bottom - + + Show &on the bottom + - - Realtime Previews - + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + - + Ctrl+F - + - + White Balance - + - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! - + - + All HDR formats - + - + Load one or more HDR images... - + - + Save files in - + - - Failed to save - + + + Failed to save %1 + - + Done! - + - + Aborting... Membatalkan... - + + + Untitled + + + + Cropped Image - + - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Perubahan tidak dapat disimpan... - + This HDR image has unsaved changes.<br>Do you want to save it? - + - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - - - - - - Untitled - + - + Untitled %1 - + - + Error: %1 - + - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences - - - - - External Tools - + - + Tone Mapping Tone Mapping - + RAW Conversion - + + + + + Color Management + + + + + External Tools + - + Interface - + - - Color Management - + + Fast export + - + Language - + - + Default Previews Width - + - + px - + - + Always show Preview Panel - + - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + - - + + Amount of threads to use on multicore/SMP machines - + - + Batch Tonemapping Number of Threads - + - + General - + - + Quality: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear - + - + VNG - + - + PPG - + - + AHD - - - - - - - - - - - - - - - - - - ... - + - + Median: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + - + Do not stretch or rotate pixels - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + - + Interpolate RGB using 4 colours - + - + Color correction - + - + White Balance - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + - + Predefined D65 - + - + Camera - + - + Auto - + - + Manual - + - + Temperature (Kelvin) - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + - + Green - + - + Set here the green component to set magenta color cast removal level - + - + Highlights - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Unclip</span>: leave highlights unclipped in various shades of pink</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blend</span>: Blend clipped and unclipped values together for a gradual fade to white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + - + Solid White - + - + Do not transform - + - + Blend - + - + Reconstruct - + - + Level - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + - + Correct false colors in highlights - + - + Auto Brightness - + - + Brightness Brightness - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + - + Black - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - - - - + NR and CA Correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + - + Enable noise reduction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + - + Threshold: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + - + Enable Chromatic Aberration correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + - + Red Component - + - + Blue Component - - - - - Monitor Profile - + - - - + + + Browse... - + - + Camera profile - + + + + + Monitor Profile + - + Printer profile - + - + align_image_stack command line arguments - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> - + - + &Cancel &Batal - + &OK &OK - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Pilih direktori - + Open ICC Profile - + - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4225,105 +4652,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation - + - + Projections - + - + Source Projection: - + - - + + Polar - + - - + + Angular - + - - + + Cylindrical - + - - + + Mirror Ball - + - + Destination Projection: - + - + Angles: - + - - - - + + + + ° - + - + Bilinear Interpolation - + - + Oversample factor: - + - + Rotation (degrees) - + - + Yaw: - + - + Pitch: - + - + Roll: - + - + &Cancel &Batal - + &OK &OK @@ -4331,17 +4758,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: ERROR: Tidak dapat memuat file Setting Tone Mapping: - + ERROR: File too old, cannot parse Tone Mapping Setting file: ERROR: File terlalu lama, cannot parse Tone Mapping Setting file: - + ERROR: cannot parse Tone Mapping Setting file: ERROR: cannot parse Tone Mapping Setting file: @@ -4349,398 +4776,433 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + Warning - + I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - + + Triangular + Triangular - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Plateau + + + + Gaussian + Gaussian + + + + Flat + + + + + Linear + Linear + + + + Gamma + Gamma + + + + Logarithmic + Logarithmic + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + - + PreGamma=%1 - + - + Contrast Equalization Contrast Equalization - + Contrast - + - - + + Saturation - + - + Detail - + - + Luminance Level - + - + Luminance Level=Auto - + - + Color Saturation Color Saturation - + Contrast Enhancement - + - + Alpha - + - + Beta Beta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + - + + InvAlpha + + + + simple - + - + Equation 2 - + - + Equation 4 - + - - + + Local - + - + Bias Bias - + Spatial - + - - + + Range Range - + Base - + - + Multiplier Multiplier - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Brightness - + Chromatic Adaptation Chromatic Adaptation - + Light Adaptation Light Adaptation - + + Option -v -a... + + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float Tidak dapat mengkonversi %1 ke float - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 - + - + Using %n threads. - - - + - + Loading file %1 - + - + Successfully loaded file %1. - + - + All LDR formats - + - + Save the LDR image as... - + - + Save the HDR image as... - + - + Save as... - Simpan sebagai... - - - - Triangular - Triangular - - - - Plateau - Plateau - - - - Gaussian - Gaussian - - - - Flat - - - - - Linear - Linear - - - - Gamma - Gamma - - - - Logarithmic - Logarithmic - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - + Simpan sebagai... ResizeDialog - + Scale Image Scale Image - + Hdr Image Size Ukuran Image HDR - - Width: - Lebar: + + Restore original size + Kembalikan ke ukuran semula + + + + &Reset + &Reset - + Switch between pixels or percentage Mengalihkan antara pixels atau persen - + Pixels Pixels - + Percent Persen - - Height: - Tinggi: - - - + Result size Hasil ukuran - - Restore original size - Kembalikan ke ukuran semula + + Height: + Tinggi: - - &Reset - &Reset + + Width: + Lebar: - + &Cancel &Batal - + &Scale &Skala @@ -4750,202 +5212,250 @@ Saved Parameters - + - - + + Comment - + - + TM Operator - + - + Simple Simple - + Equation 2 - + - + Local Contrast Threshold - + - + Bias Bias - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Base Contrast - + Alpha - + - + Beta Beta - - + + Color Saturation Color Saturation - + Noise Reduction Noise Reduction - + Old Fattal - + - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Contrast Equalization - + Contrast Factor Contrast Factor - + Saturation Factor Saturation Factor - + Detail Factor - + - + Contrast Enhancement - + - + Luminance Level - + - + Manual Luminance Level - + - + Cone and Rod based on Luminance Cone and Rod based on Luminance - + Local Tonemapping - + - + Cone Level Cone Level - + Rod Level Rod Level - + Multiplier Multiplier - + Use Scales Gunakan Skala - + Key Value Niai Kunci - + Phi Value - + - + Range Range - + Lower Scale Lower Scale - + Upper Scale Upper Scale - + Brightness Brightness - + Chromatic Adaptation Chromatic Adaptation - + Light Adaptation Light Adaptation - + Pre-gamma - + SavingParameters - + Saving Parameters - + - + Enter a short comment for the saved parameters: - + + + + + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + @@ -4953,7 +5463,20 @@ Abort computation - + + + + + ThresholdWidget + + + Frame + + + + + Threshold + @@ -4961,504 +5484,538 @@ Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Sekarang anda dapat memuat dan menyimpan sebuah file tone mapping setting.<br>Anda dapat juga menerapkan content dari file yang telah dimuat. + + + + Tone Mapping Settings + + + + + Save current parameters to a text file + Simpan parameter ke sebuah file text + + + + Save current parameters (pregamma and TMO) to a text file. + Simpan parameter (pregamma dan TMO) ke sebuah file text. + + + + Load an existing text file containing pregamma and TMO settings + Muat file text pregamma dan TMO setting yang ada + + + + Load an existing text file containing pregamma and TMO settings. + Muat file text pregamma dan TMO setting yang ada. + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Anda dapan menerapkan sebuah gamma correction ke HDR.<br>Gamma correction akan diterapkan sebelum tone mapping. + + + + Process + + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Kembalikan nilai default pregamma's (1) + + + + Size of the resulting LDR image + + + + + Here you can choose the size of the resulting LDR image. + Anda dapat memilih ukuran dari hasil image LDR. + + + + Set Custom Output Size + + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Clik tombol ini, anda akan dapat menyisipkan nilai <i>lebar</i> untuk ukuran hasil image LDR.<br>Setelah menekan Enter (atau Return) nilai tinggi akan otomatis dicomputasi dan ukuran baru akan ditambahkan ke dalam daftar. - + Start tonemapping (CTRL+T) - + - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - + - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR - + + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + - + Tonemap - + - + Mantiuk '06 - + - + Mantiuk '08 - + - + Fattal - + - + + Ferradans + + + + Drago - + - + Durand - + - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin - + - + Pattanaik - + + + + + Mai + - + Operator - + - + Contrast Factor Contrast Factor - + Saturation Factor Saturation Factor - + Detail Factor - + - + Contrast Equalization Contrast Equalization - + Predefined Display - + - + Lcd Office - + - + Lcd - + - + Lcd Bright - + - + CRT - + - - + + Color Saturation Color Saturation - + Contrast Enhancement - + - + Enable Luminace Level - + - + Luminance Level - + - + Alpha - + - + Beta Beta - + Noise Reduction Noise Reduction - + Version 2.3.0 - + + + + + Inverse Alpha + + + + + Rho + - + Bias Bias - + Spatial Kernel Sigma Spatial Kernel Sigma - + Range Kernel Sigma Range Kernel Sigma - + Base Contrast Base Contrast - + Key Value Niai Kunci - + Phi Phi - + Use Scales Gunakan Skala - + Range Range - + Lower Scale Lower Scale - + Upper Scale Upper Scale - + Brightness Brightness - + Chromatic Adaptation Chromatic Adaptation - + Light Adaptation Light Adaptation - + Local Contrast Threshold - + - + Simple Simple - + Equation Number Equation Number - - Eqn 2 - Eqn 2 + + Eqn &2 + - - Eqn 4 - Eqn 4 + + Eqn &4 + - + Multiplier Multiplier - + Local Tone Mapping Local Tone Mapping - + Auto Cone/Rod - + - + Cone Level Cone Level - + Rod Level Rod Level - + + This operator has no options + + + + Restore operator's default values Kembalikan ke nilai default operator - + Restore - + - + Previous applied settings - + - + Previous - + - + Next applied settings - + - + Next - - - - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Sekarang anda dapat memuat dan menyimpan sebuah file tone mapping setting.<br>Anda dapat juga menerapkan content dari file yang telah dimuat. - - - - Tone Mapping Settings - - - - - Save current parameters to a text file - Simpan parameter ke sebuah file text - - - - Save current parameters (pregamma and TMO) to a text file. - Simpan parameter (pregamma dan TMO) ke sebuah file text. - - - - &Save to File - - - - - Load an existing text file containing pregamma and TMO settings - Muat file text pregamma dan TMO setting yang ada - - - - Load an existing text file containing pregamma and TMO settings. - Muat file text pregamma dan TMO setting yang ada. - - - - &Load from File - - - - - Save current parameters - - - - - - ... - - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Anda dapan menerapkan sebuah gamma correction ke HDR.<br>Gamma correction akan diterapkan sebelum tone mapping. - - - - Process - - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - - - - - Restore pregamma's default value (1) - Kembalikan nilai default pregamma's (1) - - - - Size of the resulting LDR image - - - - - Here you can choose the size of the resulting LDR image. - Anda dapat memilih ukuran dari hasil image LDR. - - - - Set Custom Output Size - + - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Clik tombol ini, anda akan dapat menyisipkan nilai <i>lebar</i> untuk ukuran hasil image LDR.<br>Setelah menekan Enter (atau Return) nilai tinggi akan otomatis dicomputasi dan ukuran baru akan ditambahkan ke dalam daftar. + + Queue size: %1 + - + TM Database Problem - + - + The database used for saving TM parameters cannot be opened. Error: %1 - + - + Load a tonemapping settings text file... Memuat sebuah file text setting tonemapping... - - + + LuminanceHDR tonemapping settings text file (*.txt) - + - - - - + + + + Aborting... Membatalkan... - + File is not readable (check existence, permissions,...) File tidak terbaca (silahkan cek keberadaannya, permissions,...) - + Save tonemapping settings text file to... Simpan text setting tonemapping file ke... - + File is not writable (check permissions, path...) File tidak dapat ditulisi (silahkan cek permission, path...) - + File is not readable (check permissions, path...) File tidak terbaca (silahkan cek permissions, path...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size Custom LDR size - + Enter the width of the new size: - + @@ -5466,47 +6023,47 @@ Load Custom Settings - + Sort by - + Comments: - + Comment - + Operator - + Most Useful Operators - + Tonemap - + Load - + Cancel - + @@ -5517,108 +6074,108 @@ Copy Exif data - + From - + - - + + Append files to the list Tambah file ke dalam daftar - - + + Remove selected file(s) from the list Buang file yang ter-select dari daftar - - + + Move up selected file(s) Naikkan ke atas file yang ter-select - - + + Move down selected file(s) Turunkan file yang ter-select - + To - + - + Log Log - + Exif operations report Laporan operasi Exif - - &Show only: - Tampilkan &saja: + + Show onl&y: + - + Filter messages based on severity Filter messages based on severity - + All messages Semua pesan - + Errors only Hanya error - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text Bersihkan text penyaring - + Keep existing Exif tags in destination file - + - + &Cancel &Batal - + &Start - + - - + + All Supported formats - + - - + + Select the input images Pilih gambar inputan - + &Done &Selesai @@ -5632,29 +6189,35 @@ %1 Lisensi document tidak ditemukan, anda dapat mencarinya secara online: %2disini%3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation - + - + Would you like to donate? - + - + Yes, I'd love to! - + - + Stop Bothering Me - + - + Remind me later - + @@ -5662,18 +6225,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_it.ts luminance-hdr-2.5.1/i18n/lang_it.ts --- luminance-hdr-2.5.0/i18n/lang_it.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_it.ts 2017-05-10 19:14:06.000000000 +0000 @@ -3,8 +3,8 @@ AboutLuminance - About Luminance - Informazioni su Luminance + About Luminance HDR + Informazioni su Luminance HDR @@ -12,12 +12,8 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -30,14 +26,19 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> - <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — Applicazione per la creazione di immagini HDR<br />(c) 2006-2009, Giuseppe Rota</span></p> - <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — Applicazione per la creazione di immagini HDR<br />(c) 2006-2009, Giuseppe Rota</span></p> + <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + + + + A&uthors + A&utori @@ -45,49 +46,55 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> - p, li { white-space: pre-wrap; } - </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Per favore </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fateci sapere</span></a><span style=" font-family:'Sans Serif';"> se abbiamo dimenticato qualcuno.</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Sviluppatore principale QtPfsGui</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Sviluppatori principali Luminance HDR</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> - <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Migliorie, risoluzione bugs</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> - <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">codice per pfs{tools|calibration|tmo}</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Algoritmo G.Ward's Mean Threshold Bitmap (MTB) </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in russo, usabilità, manuale utente, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in norvegiese</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in turco</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in francese</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in spagnolo</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in tedesco</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in ceco</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in polacco</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in rumeno</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Traduzione in chinese</span></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> - <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> - <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Responsabili versione FreeBSD e relative patches </span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Per favore </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fateci sapere</span></a><span style=" font-family:'Sans Serif';"> se abbiamo dimenticato qualcuno da aggiungere alla lista.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Sviluppatore principale QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Sviluppatori principali Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Migliorie, correzione bugs</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Codice di pfs{tools|calibration|tmo}</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Algoritmo di G.Ward Mean Threshold Bitmap (MTB) </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in russo, usabilità, manuale utente, file .desktop</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in norvegese</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in turco</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in francese</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in spagnolo</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in tedesco</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in ceco</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in polacco</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in rumeno</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Traduzione in cinese</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Responsabili FreeBSD</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit e Steffen Beyer<br /></span></p></body></html> + + + + &Thanks To + &Ringraziamenti @@ -95,34 +102,14 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - - - - A&uthors - A&utori - - - - &Thanks To - &Ringraziamenti + @@ -135,7 +122,7 @@ &Licenza - + &OK &OK @@ -144,8 +131,8 @@ BatchHDRDialog - Batch HDR Dialog - Finestra Batch HDR + Batch HDR + Batch HDR @@ -247,8 +234,8 @@ - &Hugin's align_image_stack - align_image_stack da &Hugin + Hugin's align_&image_stack + align_&image_stack da Hugin @@ -261,84 +248,84 @@ A&nnulla - + &Start &Avvia - + &Close &Chiudi - + Progress Messaggi - + Input/Output Input/Output - + Folder where created HDRs are saved Cartella dove gli HDR verranno salvati - - + + Select... Seleziona... - + Folder where bracketed pictures are located (in alphabetical order) Cartella che contiene le immagini con diversa esposizione (in ordine alfabetico) - + Input folder: Cartella di input: - + Output folder: Cartella di output: - + Anti-ghosting Anti-ghosting - + Artifact-free High Dynamic Range Imaging High Dynamic Range Imaging senza artifatti - + Threshold Soglia - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Soglia utilizzata dall'algoritmo di anti-ghosting. Un basso valore di soglia implica un'elaborazione più aggressiva ma può risultare in una diminuzione dell'intervallo dinamico finale. Si usi il pulsante &quot;Ricalcola&quot; per visualizzare la copertura delle patches e si cambi il valore di soglia fino a raggiungere la copertura desiderata</p></body></html> - + O. Gallo and others O. Gallo e altri - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Abilita algoritmo di anti-ghosting automatico</p></body></html> - + Auto anti-ghosting Anti-ghosting automatico @@ -549,7 +536,7 @@ - + Specify output folder for the tone mapped files Specifica la cartella di uscita per il file di uscita @@ -559,93 +546,93 @@ Sele&ziona... - - + + Width of tonemapped image in percent of original image Largezza dell'immagine elaborata in percentuale dell'immagine originale - + % % - + Output Format: Formato di uscita: - + Image format of tonemapped images Formato immagine per le immagini elaborate - + Image format options Opzioni formato immagine - + Conversion Log Log conversione - + Batch operations report Log per le operazioni batch - - S&how only: + + Show onl&y: Mostra so&lo: - + Filter messages based on severity Filtra i messaggi in base alla severità - + All messages Tutti i messaggi - + Errors only Solo errori - + Success messages Messaggi di successo - - &Filter log messages: - &Filtra messaggi di log: + + Filter &log messages: + Filtra i messaggi di &log: - + Clear filter text Resetta il filtro - + Overall completion progress Percentuale di completamento globale - + &Cancel A&nnulla - + Start batch tone mapping Inizia il batch tonemapping - + &Start &Avvia @@ -1153,46 +1140,6 @@ Errore: htmlQuality deve essere nell'intervallo [1..4]. - - Error: Quality must be in the range [1..100]. - Errore: La qualità deve essere nell'intervallo [1..100]. - - - - Error: Threshold must be in the range [0..1]. - Errore: La soglia deve essere nell'intervallo [0..1]. - - - - - Starting aligning... - Allineando le immagini... - - - - Resizing to width %1. - Riscala alla larghezza %1. - - - - Applying gamma %1. - Applica gamma %1. - - - - -Image %1 successfully saved - -Immagine %1 salvata con successo. - - - - -ERROR: Cannot save to file: %1 - -ERRORE: Impossibile salvare il file: %1 - - Error: Alignment engine not recognized. Errore: opzione di allineamento non riconosciuta. @@ -1229,11 +1176,21 @@ Errore: Il file con le impostazioni per il tonemapping non può essere analizzato! %1 + + Error: Quality must be in the range [1..100]. + Errore: La qualità deve essere nell'intervallo [1..100]. + + Error: Unknown tiff format. Errore: Formato tiff sconosciuto. + + Error: Threshold must be in the range [0..1]. + Errore: La soglia deve essere nell'intervallo [0..1]. + + Error: The number of EV values specified is different from the number of input files. Errore: Il numero di valori EV specificati e' differente dal numero di file di input. @@ -1254,6 +1211,12 @@ I valori EV sono stati assegnati. + + + Starting aligning... + Allineando le immagini... + + Failed executing align_image_stack align_image_stack ha terminato in modo incorretto @@ -1269,47 +1232,71 @@ Creazione (in memoria) dell'HDR. - + Saving to file %1. Salvando sul file %1. - + Image %1 saved successfully Immagine %1 salvata con successo. - + Could not save %1 Non posso salvare %1 - + NOT Saving HDR image to file. %1 NON sto salvando l'immagine HDR su file. %1 - + Exporting to HTML Esportando su HTML - + ERROR: directory %1 must exist ERRORE: la cartella %1 deve esistere - + Tonemapping requested, saving to file %1. Richiesto tonemapping, salvando sul file %1. - + + Resizing to width %1. + Riscala alla larghezza %1. + + + + Applying gamma %1. + Applica gamma %1. + + + + +Image %1 successfully saved + +Immagine %1 salvata con successo. + + + + +ERROR: Cannot save to file: %1 + +ERRORE: Impossibile salvare il file: %1 + + + Tonemapping NOT requested. Tonemapping NON richiesto. - + Failed loading images Caricamento immagini fallito @@ -1332,27 +1319,27 @@ &Apri - + Open an existing HDR image Apri un'immagine HDR esistente - + &New &Nuovo - + Create a new HDR image from one or more images Crea un'immagine HDR da una o più immagini - + &Cancel A&nnulla - + Cancel the drag and drop process and return to the main window Anulla il drag and drop e torna alla finestra principale @@ -1441,320 +1428,320 @@ Tool di editing + + Images List + Lista delle Immagini + + + + Ed&itable + Ed&itabile + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">L'immagine correntemente selezionata è quella che puoi traslare e su cui puoi disegnare una maschera anti-ghosting.</p></body></html> + + + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + L'immagine correntemente selezionata in questa lista puo' venire spostata in su, giu' a destra e a sinistra utilizzando i controlli qua sotto. +L'istogramma dell'immagine e' visualizzato sopra. + + + + Select the previous image in both lists + Seleziona in entrambe le liste l'immagine precedente + + + + Use this button to move the selection to the previous image in both lists. + Utilizza questo bottone per selezionare l'immagine precedente in entrambe le liste.. + + + + Select the next image in both lists + Seleziona in entrambe le liste l'immagine successiva + + + + Use this button to move the selection to the next image in both lists. + Utilizza questo bottone per selezionare l'immagine successiva in entrambe le liste.. + + - Refere&nce + Referen&ce Riferi&mento + + The reference image is the one currently selected + L'immagine di riferimento e' quella correntemente selezionata + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">L'immagine correntemente selezionata in questa lista è la posizione di riferimento per l'immagine editabile</p></body></html> + + + + Crop the stack of images after a selection with the left mouse button has been made + Taglia lo stack di immagini in seguito ad una selezione col mouse + + + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Cliccando questo bottone sara' possibile ritagliare tutte le immagini alla dimensione che e' stata selezionata precedentemente con il pulsante sinistro del mouse (premi e tieni premuto il pulsante sinistro del mouse e sposta il puntatore per andare a definire una area di taglio, premere poi questo bottone). + + + + &Crop All Images + &Ritaglia + + + + Ctrl+X + Ctrl+X + + + + &Anti-Ghosting + &Anti-ghosting + + + + &Save Images + &Salva le Immagini + + + + Ctrl+S + Ctrl+S + + Visualization and Navigation Visualizzazione e Navigazione - + Fit to window Scala - + &Fit to Window &Scala - + Fill the window Riempi la finestra - + Fill &window &Riempi - + Original size Dimensione originale - + Origina&l Size &Originale - + &Mode: &Modalità: - + Difference (E-P) Differenza (E-R) - + Overlay (E+P) Sovrapponi (E+R) - + Editable Only (E) Solo Editabile (E) - + Pivot Only (P) Solo Pivot (P) - + Antighosting Mask Maschera antighosting - + Brush Pennello - + Lasso Lazo - - Images List - Lista delle Immagini - - - - Ed&itable - Ed&itabile - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">L'immagine correntemente selezionata è quella che puoi traslare e su cui puoi disegnare una maschera anti-ghosting.</p></body></html> - - - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - L'immagine correntemente selezionata in questa lista puo' venire spostata in su, giu' a destra e a sinistra utilizzando i controlli qua sotto. -L'istogramma dell'immagine e' visualizzato sopra. - - - - Select the previous image in both lists - Seleziona in entrambe le liste l'immagine precedente - - - - Use this button to move the selection to the previous image in both lists. - Utilizza questo bottone per selezionare l'immagine precedente in entrambe le liste.. - - - - Select the next image in both lists - Seleziona in entrambe le liste l'immagine successiva - - - - Use this button to move the selection to the next image in both lists. - Utilizza questo bottone per selezionare l'immagine successiva in entrambe le liste.. - - - - The reference image is the one currently selected - L'immagine di riferimento e' quella correntemente selezionata - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">L'immagine correntemente selezionata in questa lista è la posizione di riferimento per l'immagine editabile</p></body></html> + + Anti Ghosting + Anti Ghosting - + O. Gallo and others O. Gallo e altri - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Abilita algoritmo di anti-ghosting automatico</p></body></html> - + Auto anti-ghosting Anti-ghosting automatico - + Artifact-free HDR Imaging Artifact-free HDR Imaging - + Total Patches: Patches totali: - + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Mostra in percentuale la copertura delle patches così come calcolate dall'algoritmo di anti ghosting</p></body></html> - + Threshold Soglia - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> <html><head/><body><p>Soglia utilizzata dall'algoritmo di anti-ghosting. Un basso valore di soglia implica un'elaborazione più aggressiva ma può risultare in una diminuzione dell'intervallo dinamico finale. Si usi il pulsante &quot;Ricalcola&quot; per visualizzare la copertura delle patches e si cambi il valore di soglia fino a raggiungere la copertura desiderata</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Soglia utilizzata dall'algoritmo di anti-ghosting. Un basso valore di soglia implica un'elaborazione più aggressiva ma può risultare in una diminuzione dell'intervallo dinamico finale. Si usi il pulsante &quot;Ricalcola&quot; per visualizzare la copertura delle patches e si cambi il valore di soglia fino a raggiungere la copertura desiderata</p></body></html> - + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> <html><head/><body><p>Clicca qui per ricalcolare le patches in base alla soglia selezionata</p></body></html> - + Recompute Ricalcola - - Crop the stack of images after a selection with the left mouse button has been made - Taglia lo stack di immagini in seguito ad una selezione col mouse - - - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Cliccando questo bottone sara' possibile ritagliare tutte le immagini alla dimensione che e' stata selezionata precedentemente con il pulsante sinistro del mouse (premi e tieni premuto il pulsante sinistro del mouse e sposta il puntatore per andare a definire una area di taglio, premere poi questo bottone). - - - - &Crop All Images - &Ritaglia - - - - Ctrl+X - Ctrl+X - - - - &Anti-Ghosting - &Anti-ghosting - - - - &Save Images - &Salva le Immagini - - - - Ctrl+S - Ctrl+S - - - + Mask Maschera - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> <html><head/><body><p>Aggiungi una maschera usando il lazo o il pennello</p></body></html> - - <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - <html><head/><body><p>Removi la maschera usando il lazo o il pennello</p></body></html> - - - - Anti Ghosting - Anti Ghosting - - - + &Add &Aggiungi - + + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> + <html><head/><body><p>Removi la maschera usando il lazo o il pennello</p></body></html> + + + R&emove R&imuovi - - + + <html><head/><body><p>Size of the brush</p></body></html> <html><head/><body><p>Dimensione del pennello</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> <html><head/><body><p>"Forza" della maschera (semi transparente)</p></body></html> - + Size: Dimensioni: - - - + + + px px - + S&trength: &Forza - + Lasso - Draw a free hand selection area Lazo - Disegna una selezione a mano libera - + Brush - Paint the mask using the brush Pennello - Disegna una maschera usando il pennello - + Save mask Salva maschera - + Apply saved mask Applica la maschera salvata - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1769,7 +1756,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Cliccando e tenendo premuto il pulsante sinistro del mouse e' possibile selezionare una area di taglio.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1780,7 +1767,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Valori di traslazione per l'immagine editabile correntemente selezionata</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1791,107 +1778,107 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Qui è possibilie visualizzare e settare i valori di traslazione per l'immagine editabile correntemente selezionata</p></body></html> - + Shift values for editable image Traslazioni per l'immagine correntemente selezionata - + Reset the shift values for the currently selected movable image Resetta le traslazioni per l'immagine correntemente selezionata - + &Reset &Ripristina - + Reset the shift values for all the images Resetta le traslazioni per tutte le immagini - + Reset &All Resetta &Tutto - + Hori&zontal: Ori&zzontale: - + Vertica&l: Vertica&le: - + Insert an horizontal shift value for the currently selected movable image Inserisci un valore di shift orizzontale per l'immagine correntemente selezionata - + Insert a vertical shift value for the currently selected movable image Inserisci un valore di shift verticale per l'immagine correntemente selezionata - + Move up of 1 pixel the currently selected movable image Sposta in su di 1 pixel l'immagine correntemente selezionata - + Move down of 1 pixel the currently selected movable image Sposta in giu' di 1 pixel l'immagine correntemente selezionata - + Move right of 1 pixel the currently selected movable image Sposta a destra di 1 pixel l'immagine correntemente selezionata - + > > - + Move left of 1 pixel the currently selected movable image Sposta a sinistra di 1 pixel l'immagine correntemente selezionata - + < < - + Histogram Istogramma - + Get information about the graphical elements Informazioni sui vari elementi - + &What's this? &Guida rapida - + Shift+F1 Shift+F1 - + &Next > &Avanti > - + &Cancel A&nnulla @@ -1899,78 +1886,78 @@ ExportToHtmlDialog - + Export HDR to HTML Esporta in formato HTML - + Export to HTML Esporta in HTML - + Web page: Pagina web: - + Output folder: Cartella di output: - + Open web browser Apri il browser web - + Size: Dimensioni: - + % % - + Quality: Qualità: - + Images folder: Cartella delle immagini: - + Select... Seleziona... - + Cancel Cancella - + Export Esporta - + Choose a directory Seleziona una directory - - + + Error: Errore: - + must be a directory. dev'essere una cartella. @@ -2160,7 +2147,7 @@ GenericViewer - + Pan the image to a region Inquadra una regione differente dell'immagine @@ -2168,7 +2155,7 @@ HdrCreationManager - + HdrCreationManager::loadFilesDone(): Error loading a file. Errore nel caricare un file. @@ -2181,42 +2168,42 @@ HdrViewer - + &Mapping: &Mapping: - + Histogram: Istogramma: - + Linear Lineare - + Gamma 1.4 Gamma 1.4 - + Gamma 1.8 Gamma 1.8 - + Gamma 2.2 Gamma 2.2 - + Gamma 2.6 Gamma 2.6 - + Logarithmic Logaritmica @@ -2254,87 +2241,87 @@ Cancella la lista - + Preview Anteprima - + Selected Image &Exposure &Esposizione Immagini Selezionate - + EV: EV: - + Alignment Allineamento - + &MTB &MTB - + &Autoalign images &Autoallinea immagini - + Hugin's align_&image_stack align_&image_stack da Hugins - + Auto-crop Auto-ritaglio - + Anti-ghosting Anti-ghosting - + Threshold Soglia - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> <html><head/><body><p>Soglia usata dall'algoritmo di anti-ghosting. Una sogna bassa significa una elaborazione più aggressiva che può diminuire la gamma dinamica finale.</p></body></html? - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Soglia utilizzata dall'algoritmo di anti-ghosting. Un basso valore di soglia implica un'elaborazione più aggressiva ma può risultare in una diminuzione dell'intervallo dinamico finale. Si usi il pulsante &quot;Ricalcola&quot; per visualizzare la copertura delle patches e si cambi il valore di soglia fino a raggiungere la copertura desiderata</p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) Abilita l'algoritmo automatico di anti-ghosting (O.Gallo ed altri) - + Auto anti-ghosting Anti-ghosting automatico - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! Abilita questa opzione per l'allineamento e l'anti-ghosting manuale. È mirata ad utenti con una buona conoscenza dei vari passi di creazione di un HDR - + Advanced Editing Tools Strumenti avanzati di modifica - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2347,17 +2334,17 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Inizia col caricare un insieme di immagini con differente esposizione</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Scegli le impostazioni per la creazione di HDR - + Profile Profilo - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2370,332 +2357,326 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Il primo profilo della lista dà generalmente buoni risultati. Cambialo solo se il risultato non è buono abbastanza.</span></p></body></html> - + Profile 1 Profilo 1 - + Profile 2 Profilo 2 - + Profile 3 Profilo 3 - + Profile 4 Profilo 4 - + Profile 5 Profilo 5 - + Profile 6 Profilo 6 - + Use this only if the default profiles above do not yield good results Scegli questo solo se i profili predefiniti non danno un buon risultato - + Use Custom Configuration Usa configurazione personalizzata - + HDR Creation Model Modello di creazione dell'HDR - + Debevec Debevec - + Robertson (Simple) Robertson (Semplice) - + Robertson (Response Recovery) Robertson (Recupero della risposta) - + Weighting Function Funzioni peso - + Triangular Triangolare - + Gaussian Gaussiana - + Plateau Plateau - + Flat Piatto - + Response Curve Curva di risposta - + Linear Lineare - + Gamma Gamma - + Log Log - + sRGB sRGB - + Custom Personalizzata - + Response Curve Input File File contenente la curva di risposta - + Response Curve Output File File dove salvare la curva di risposta - + Save As... Salva come... - + Save Settings Salva parametri - + &Next > &Avanti > - + &Cancel A&nnulla - + Image Filename Immagine - + Exposure Esposizione - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Tutti i formati (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; Immagini TIFF (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Immagini RAW (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Carica le immagini iniziali - + Unknown Sconosciuto - + Loading... Caricando... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> <font color="#FF0000"><h3><b>ATTENZIONE:</b></h3></font> Luminance HDR non è stato capace di trovare i dati <i>EXIF</i> per le seguenti immagini:<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. </ul> <hr>Puoi ancora procedere alla creazione di un HDR, definendo <b>manualmente </b> il valore EV (exposure values) o la differenza in F/Stops. <hr>Se vuoi che Luminance HDR faccia questo <b>automaticamente</b>, devi caricare immagini che abbiano almeno i seguenti dati EXIF:: <ul><li>Shutter Speed (seconds)</li> <li>Aperture (f-number)</li></ul> <hr><b>NOTA:</b> Generalmente i dati EXIF vengono persi durante la postproduzione delle immagini.<br> Puoi effettuare una copia <b>uno-a-uno dei dati exif</b> tra due set di immagini utilizzando l'opzione:<i><b>"Strumenti->Copia Dati Exif..."</b></i>. - + EXIF data not found Dati EXIF non trovati - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Immagini Caricate.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><font color="#FF9500"><h3><b>Per procedere devi impostare manualmente i valori di esposizione.<br>Mancano ancora %1 valori.</b></h3></font></center> - + Loading Error: Errore caricamento: - + Start loading a set of images with different exposure Inizia col caricare un insieme di immagini con differente esposizione - - - - + + + Error... Errore... - - align_image_stack failed to align images. - align_image_stack ha fallito nell'allineare le immagini. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Impossibile eseguire l'applicazione "<em>align_image_stack</em>".<br>Leggere "Aiuto -> Sommario... -> Setting up ->External Tools" per maggiori informazioni. - + The external application "<em>align_image_stack</em>" crashed... L'applicazione "<em>align_image_stack</em>" e' andata in crash... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Un errore sconosciuto e' stato rilevato nell'esecuzione di "<em>align_image_stack</em>"... - + Now click on next button Fai ora click sul pulsante Avanti - + Aligning... Sto allineando... - - + + &Finish &Termina - + Load camera response curve file Carica il file con la curva di risposta - + Camera response curve (*.m);;All Files (*) Curva di risposta della macchina fotografica (*.m);;Tutti i files (*) - + Invalid Response Curve File Curva di risposta non valida - + Invalid Response Curve File: please try a different file Curva di risposta non valida: si carichi un file differente - + Save a camera response curve file Salva un file con la curva di risposta - + Camera response curve (*.m) Curva di risposta della macchina fotografica (*.m) - + Weights: Pesi: - + - Response curve: - Curva di risposta: - + - Model: - Modello: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Tutti i valori EV sono stati impostati.<br>Fai ora click sul pulsante Avanti.</b></h3></font></center> @@ -2709,7 +2690,7 @@ - + &File &File @@ -2735,7 +2716,7 @@ - + &Print... &Stampa... @@ -2751,7 +2732,7 @@ - + &Find... &Trova... @@ -2782,7 +2763,7 @@ - + &Add Bookmark &Aggiungi Segnalibro @@ -2798,7 +2779,7 @@ - + D&elete All Cancella &tutto @@ -2868,94 +2849,94 @@ &Anteprima di Stampa - + Help SideBar Barra laterale di aiuto - + LuminanceHDR Online Help Aiuto online di Luminance - + &Edit &Modifica - + &View &Visualizza - - + + &Bookmarks &Segnalibri - + &Quit &Esci - + Find &Next Trova &Successivo - + Find &Previous trova &Precedente - + &Contents &Sommario - + &Search &Cerca - + &Delete &Rimuovi - + Find Trova - + Search Term: Ricerca Parola: - + New Bookmark Nuovo Segnalibro - + New Bookmark's Title: Titolo del Nuovo Segnalibro: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Spiacente, il manuale non è installato!</p><p>Per favore contatta il fornitore del programma o il team di Luminancence HDR se hai compilato l'applicazione da te</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR - Help Browser - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -3090,10 +3071,11 @@ LdrViewer - - - LDR image [%1 x %2] - Immagine LDR [%1x%2] + + + + LDR image [%1 x %2]: %3 + Immagine LDR [%1 x %2]: %3 @@ -3171,7 +3153,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -3181,858 +3163,944 @@ &Strumenti - + &Help &Aiuto - + + Luminance &HDR Online + Luminance &HDR Online + + + &Windows Fi&nestre - + &View &Visualizza - + HDR &Histogram &Istogramma HDR - + &Toolbars &Barre degli strumenti - + &Preview Panel &Panello anteprime - + &File &File - + &Edit &Modifica - + Main Toolbar Barra degli strumenti principale - + &New HDR image... &Nuova immagine HDR... - + New HDR image Nuova immagine HDR - - + + Create a new HDR image from a set of LDR or Raw images Crea una nuova immagine HDR da un insieme di immagini LDR o Raw - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Crea una nuova immagine HDR da un insieme di immagini JPEG, Raw o 8/16 bpc TIFF - + Ctrl+N Ctrl+N - + &Open HDR image... &Apri un'immagine HDR... - + Open HDR image Apri immagine HDR - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Carica un'immagine HDR esistente da file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + Ctrl+O Ctrl+O - + &Save as... &Salva come... - + Save as... Salva come... - - - + + + Save image (HDR or LDR) Salva immagine (HDR o LDR) - + Ctrl+S Ctrl+S - + &Quit &Esci - - + + Quit Luminance HDR Esci da Luminance HDR - + Exit Esci - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Ruota a &sinistra - + Rotate counter-clockwise Ruota a destra - - - + + + Rotate counter-clockwise the HDR image Ruota a sinistra l'immagine HDR - + < < - + Rotat&e clockwise Ruota a &destra - + Rotate clockwise Ruota a destra - - - + + + Rotate clockwise the HDR image Ruota a destra l'immagine HDR - + > > - + &Low Dynamic Range &Basso intervallo dinamico - + L L - + &Fit to Dynamic Range &Adatta all'intervallo dinamico - + Fit to dynamic range Adatta al range dinamico - + \ \ - + &Shrink Dynamic Range &Riduci l'intervallo dinamico - + [ [ - + &Extend Dynamic Range &Estendi l'interallo dinamico - + ] ] - + &Decrease Exposure &Diminuisci l'esposizione - + 0 0 - + &Increase Exposure &Incrementa l'esposizione - + 9 9 - + &Contents... &Sommario... - + About... Riguardo a... - - - + + + Open user manual for Luminance HDR Apri il manuale utente - + F1 F1 - + &Normal Size Dimensione &originale - + Normal size Dimensione originale - - - + + + View HDR image at its normal size Visualizza l'immagine HDR nelle sue dimensioni originali - + O O - + Zoom &In Zoom &In - - - + + + Zoom in Ingrandisci - + + + - + Zoom &Out Zoom &Out - - - + + + Zoom out Diminuisci - + - - - + &Fit in Window &Adatta le dimensioni alla finestra - - + + Fit in Window Adatta alla finestra - - + + Make the HDR image fit its window Addatta l'HDR alla finestra - + W W - + &Preferences... &Opzioni... - + Luminance Options Opzioni di Luminance HDR - - - + + + Set various options of Luminance Setta varie opzioni di Luminance HDR - + Ctrl+P Ctrl+P - + &Resize... &Ridimensiona... - + Resize the HDR image Ridimensiona l'immagine HDR - - - + + + Change size of the HDR image Cambia le dimensioni dell'immagine HDR - + Ctrl+R Ctrl+R - + Copy &Exif Data... Copia i dati &Exif... - + Copy Exif Data Copia i dati Exif - - - + + + Copy Exif data between two sets of files Copia i dati Exif tra un insieme di files - + Ctrl+E Ctrl+E - + &About Qt Informazioni su &Qt - + Show information about Qt Mostra informazioni su Qt - - + + Show information about Qt library that is used by Luminance Mostra informazioni sulle librerie Qt usate da Luminance HDR - + Text &under Icons Testo &sotto le icone - + &Icons Only Solo &icone - + &Text Only Solo &testo - + Text &Alongside Icons Testo a &fianco alle icone - + &Batch Tone Mapping... &Batch tonemapping... - + Convert multiple HDR images to LDR Convertire più immagini HDR in LDR - - + + Convert multiple HDR images to LDR using existing settings files Convertire più immagini HDR in LDR usando impostazioni esistenti - + Ctrl+B Ctrl+B - + &What's This? &Guida rapida - - + + Get verbose information about user interface elements Mostra informazioni dettagliate sugli elementi dell'interfaccia utente - + Shift+F1 Shift+F1 - + About &Luminance HDR Informazioni su &Luminance HDR - + Show information about Luminance HDR Mostra informazioni su Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Mostra informazioni su Luminance HDR - + + Ctrl+I + + + + Save HDR image &preview... Salva &anteprima HDR... - - - + + + Save the current HDR Preview to an LDR file Salva l'anteprima HDR corrente su un file LDR - + &Projective Transformation... Trasformazione &proiettiva... - - - + + + Apply projective transformation to the current HDR image Applica trasformazione proiettiva all'HDR corrente - + + Ctrl+J + + + + &Crop to Selection &Ritaglia - + Crop to Selection Ritaglia - - + + Crop the image to selection rectangle Ritaglia l'immagine - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Clicca e trascina nell'aria dell'immagine per creare una seleziona, dopo usa questo tasto per tagliare l'immagine in un nuovo HDR - + + Ctrl+X + Ctrl+X + + + Remove &Selection Rimuovi la &selezione - + Remove selection rectangle Rimuovi la selezione - - + + Remove selection rectangle from image area Rimuovi la selezione - + + Ctrl+Z + + + + Make a &Donation Fai una &donazione - + Ctrl+D Ctrl+D - + &Lock Viewers &Sincronizza i visualizzatori - + Synchronize viewers mode (fit, fill or 1:1). Modalità di sincronizzazione delle anteprima (adatta, riempi o 1:1). - + Lock the images for sync view Sincronizza le immagini - + S S - + &Minimize &Minimizza - + Ma&ximize Ma&ssimizza - + &Bring All to Front &Porta tutte in primo piano - + &Show Preview Panel &Mostra il pannello delle anteprime - + Show/Hide Preview Panel Mostra/Nascondi il pannello delle anteprime - + Ctrl+V Ctrl+V - + Adjust &Levels &Livelli - - + + Adjust Levels Aggiusta Livelli - - + + Tune the histogram for the current LDR Sistema l'istogramma per la LDR corrente - + + Ctrl+L Ctrl+L - + Save All Salva tutti - - + + Save All LDR files Salva tutti i files LDR - + &Remove Tab &Rimuovi tab - + Ctrl+W Ctrl+W - + Fill &Window &Riempi la finestra - + Fill window with the current viewer Riempi la finestra con il visualizzatore corrente - + F F - + Batch &HDR... Batch &HDR... - + Ctrl+H Ctrl+H - + Soft Proofing Soft Proofing - + Gamut Check Controllo Gamut - + &Show on the right Mostra a &destra - + Show &on the bottom Mostra in &basso - + &Realtime Previews &Anteprime in tempo reale - + &Update &Aggiorna - + &FITS Importer... Importatore &FITS... - + Import four FITS files representing luminosity, red, green and blue channels Importa quattro files FITS che rappresentano la luminosità e i canali rosso, verde e blu - + Ctrl+F Ctrl+F - + White Balance Bilanciamento del bianco - + Fix color cast, can be slow Corregge i colori, può essere lento - + E&xport to HTML Esporta in &HTML - + Export to web page with embedded HDR viewer Crea una pagina web con visualizattore HDR integrato - + &Show Full Screen &Visualizza a schermo intero - + F11 F11 - + Show &Image Full Screen Visualizza l'&immagine a schermo intero - + F10 F10 - - &Supported RAW Cameras - &Macchine fotografiche RAW supportate + + &Supported RAW Cameras + &Macchine fotografiche RAW supportate + + + + Lists all cameras supported by the program + Lista di tutte le macchine fotografiche supportate dal programma + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + Interpolazione &Lanczos/Bilineare + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + <html><head/><body><p>Commuta tra l'interpolazione Lanczos e bilineare</p></body></html> + + + + Ctrl+K + + + + + &Online Documentation + Documentazione &Online + + + + &Developers Web Site + Sito Web degli &sviluppatori + + + + &Luminance HDR Web Site + Sito Web di &Luminance HDR + + + + Open Online Documentation Web Site with the System Browser + Apri il sito web della documentazione online con il browser di sistema + + + + Developers Web Site + Sito Web degli sviluppatori + + + + Open Developers Web Site with the System Browser + Apri il sito web degli sviluppatori con il browser di sistema + + + + Luminance HDR Web Site + Sito Web di Luminance HDR - - Lists all cameras supported by the program - Lista di tutte le macchine fotografiche supportate dal programma + + Open Main Web Site with the System Browser + Apri il sito web principale con il browser di sistema - + Ready. Now open an existing HDR image or create a new one! Pronto. Ora apri un'immagine HDR esistente o creane una nuova! - + All HDR formats Tutti i formati HDR - + Load one or more HDR images... Carica una o più immagini HDR... - + Save files in Salva i file in - - + + Failed to save %1 Errore nel salvare %1 - + Done! Fatto! - + Aborting... Operazione interrotta... - - + + Untitled Senza nome 1 - + Cropped Image Immagine ritagliata - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! Sembra che si stia eseguendo la versione a 32-bit di <strong>Luminance HDR</strong> su un sistema a 64-bit. <br>Si consiglia di scaricare la versione a <strong>64-bit</strong> da <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> per una migliore esperienza nell'uso di Luminance HDR! - + Unsaved changes... Modifiche non salvate... - + This HDR image has unsaved changes.<br>Do you want to save it? Questa immagine HDR ha modifiche non salvate.<br>Vuoi salvarla? - + Fattal Warning Avvertimento per Fattal - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -4041,22 +4109,22 @@ Vuoi continuare? - + Untitled %1 Senza nome %1 - + Error: %1 Errore: %1 - + Untitled HDR HDR senza titolo - + FITS Image Immagine FITS @@ -4153,16 +4221,16 @@ - - - - - - - - - - + + + + + + + + + + ... ... @@ -4357,12 +4425,12 @@ Manuale - + Temperature (Kelvin) Temperatura (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4377,22 +4445,22 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Imposta qui la temperatura di colore in gradi Kelvin.</p></body></html> - + Green Verde - + Set here the green component to set magenta color cast removal level Imposta qui la componente verde per il livello di rimozione della dominante cromatica magenta - + Highlights Alte luci - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4415,32 +4483,32 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Ricostruisci</span>: ricostruisce le zone luminose usando un livello soglia</p></body></html> - + Solid White Bianco pieno - + Do not transform Non trasformare - + Blend Miscela - + Reconstruct Ricostruisci - + Level Livello - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4455,22 +4523,22 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specifica il livello di ricostruzione delle zone luminose. Bassi valori favoriscono il bianco, valori elevati favoriscono i colori.</p></body></html> - + Correct false colors in highlights Correggi i falsi colori nelle zone luminose - + Auto Brightness Luminosità automatica - + Brightness Luminosità - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4485,7 +4553,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specifica il livello di luminosità dell'immagine in uscita. Il valore predefinito è 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4500,12 +4568,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Usa uno specifico punto di nero per la decodifica delle immagini RAW. Se non selezionato, il valore viene automaticamente calcolato.</p></body></html> - + Black Nero - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4520,7 +4588,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specifica un particolare valore del punto nero per l'immagine in uscita.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4535,12 +4603,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Quando le alte luci appaiono rosa, si abbassi il livelo di saturazione. Il livello di saturazione preimpostato è solitamente corretto.</span></p></body></html> - + Saturation Saturazione - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4555,12 +4623,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Impostare il livello di saturazione. Se le alte luci appaiono roda, si abbassi il livello di saturazione.</span></p></body></html> - + NR and CA Correction NR e correzione CA - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4575,12 +4643,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Usa le wavelets per ridurre il rumore preservando i dettagli.</p></body></html> - + Enable noise reduction Abilita riduzione dei disturbi - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4595,12 +4663,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Imposta qui il valore della soglia di riduzione del rumore.</p></body></html> - + Threshold: Soglia: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4615,12 +4683,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aumenta il valore dei livelli rosso e blu del fattore specificato, tipicamente da 0.999 a 1.001, per corregere l'aberrazione cromatica.</p></body></html> - + Enable Chromatic Aberration correction Abilita la correzione dell'aberrazione cromatica - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4635,7 +4703,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Imposta qui il fattore moltiplicativo per il livello rosso</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4650,44 +4718,44 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Imposta qui il fattore moltiplicativo per il livello blu</p></body></html> - + Red Component Componente Rossa - + Blue Component Componente Blue - - - + + + Browse... Sfoglia... - + Camera profile Profilo della fotocamera - + Monitor Profile Profilo del monitor - + Printer profile Profilo della stampante - + align_image_stack command line arguments Argomenti linea di comando align_image_stack - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4700,12 +4768,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Leggi</span><span style=" font-family:'Sans Serif'; font-style:italic;">Aiuto &gt; Sommario &gt; Configura Luminance &gt; Strumenti esterni</span><span style=" font-family:'Sans Serif';"> per le opzioni di align_image_stack</span></p></body></html> - + &Cancel A&nnulla - + &OK &OK @@ -4720,18 +4788,18 @@ Affinchè i nuovi settaggi abbiano effetto, per favore riavvia l'applicazione! - - + + Choose a directory Seleziona una directory - + Open ICC Profile Apri profilo ICC - + Color profile (*.icc *.ICC *.icm *.ICM) Profilo di colore (*.icc *.ICC *.icm *.ICM) @@ -4839,7 +4907,7 @@ A&nnulla - + &OK &OK @@ -4885,9 +4953,9 @@ alla pagina web - - - + + + Writing: Scrivendo: @@ -4920,62 +4988,62 @@ Non posso eseguire la trasformazione di colore. Selezionare un profilo del monitor differente. - + Triangular Triangolare - + Plateau Plateau - + Gaussian Gaussiana - + Flat Piatto - + Linear Lineare - + Gamma Gamma - + Logarithmic Logaritmica - + sRGB sRGB - + From Calibration/Input File Da file di calibrazione - + Debevec Debevec - + Robertson Robertson - + Robertson Response Calculation Calcolo risposta con Robertson @@ -5158,12 +5226,12 @@ Adattamento luce - + Option -v -a... Opzione -v -a... - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. Luminance HDR richiede che il comando align_image_stack sia eseguito con l'opzione "-v" ma senza l'opzione "-a". Si sono corrette le opzioni fornite. @@ -5228,7 +5296,7 @@ Salva l'immagine HDR come... - + Save as... Salva come... @@ -5291,7 +5359,7 @@ A&nnulla - + &Scale Ridimensi&ona @@ -5512,37 +5580,37 @@ SupportedCamerasDialog - + List of supported cameras Lista delle macchine fotografiche supportate - + TextLabel TextLabel - - <b>Luminance HDR</b> - <b>Luminance HDR</b> + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> - + With LibRaw version Con versione di LibRaw - + models listed modelli elencati - + search... cerca... - + OK OK @@ -5556,6 +5624,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Soglia + + + TiffModeDialog @@ -5566,544 +5647,533 @@ TonemappingPanel - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Qui è possibile caricare e salvare un file di impostazioni di tonemapping.<br>E' anche possibile applicare i contenuti del file di impostazioni di tonemapping correntemente caricato. + + + + Tone Mapping Settings + Impostazioni tonemapping + + + + Save current parameters to a text file + Salva i parametri correnti in un file di testo + + + + Save current parameters (pregamma and TMO) to a text file. + Salva i parametri correnti (pregamma and TMO) in un file di testo. + + + + Load an existing text file containing pregamma and TMO settings + Carica un file di testo contenente i parametri pregamma e di tonemapping + + + + Load an existing text file containing pregamma and TMO settings. + Carica un file di testo contenente i parametri di pregamma e tonemapping. + + + + Save current parameters + Salva i parametri correnti + + + + Load saved parameters + Carica i parametri salvati + + + + Export + Esporta + + + + Fast export + Esportazione veloce + + + + Opens the current export direcotory. This can be changed in the preferences! + Apre la cartella di esportazione veloce. Si può cambiare nelle preferenze! + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Apri</span></a></p></body></html> + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Qui puoi applicare un valore di correzione gamma all'HDR.<br>La correzione gamma verrà applicata prima del tonemapping. + + + + Process + Processa + + + + Result Si&ze + &Dimensione risultato + + + + + Gamma applied before tonemapping + Gamma applicata prima del tonemapping + + + + Pre-&gamma + Pre-&gamma + + + + Restore pregamma's default value (1) + Ripristina il valore predefinito del pregamma (1) + + + + Size of the resulting LDR image + Dimensione dell'immagine LDR finale + + + + Here you can choose the size of the resulting LDR image. + Qui è possibile scegliere la dimensione dell'immagine finale. + + + + Set Custom Output Size + Definisci dimensione finale personalizzata + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Con questo bottone è possibile inserire un valore di <i>larghezza</i> per la dimensione dell'immagine LDR finale.<br>Dopo aver premuto Invio (Enter o Return) un valore di altezza verrà calcolato automaticamente e la nuova dimensione aggiunta alla lista. + + + + Start tonemapping (CTRL+T) + Inizia il tonemapping (CTRL+T) + + + + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image + Usa i parametri correnti come sopra (pregamma e operatore di tonemapping) per calcolare l'immagine LDR + + + + &Update preview + &Aggiorna anteprima + + + + Ctrl+T + Ctrl+T + + + + Update current LDR + Aggiorna LDR corrente + + + + Auto Levels + Livelli automatici + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + <html><head/><body><p>setta la soglia per l'aggiustamento automatico dei livelli</p></body></html> + + + Tonemap Tonemap - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + Ferradans Ferradans - + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + Mai Mai - + Operator Operatore - + Contrast Factor Fattore di contrasto - + Saturation Factor Fattore di saturazione - + Detail Factor Fattore di dettaglio - + Contrast Equalization Equalizzazione del contrasto - + Predefined Display Display predefinito - + Lcd Office LCD ufficio - + Lcd LCD - + Lcd Bright LCD luminoso - + CRT CRT - - + + Color Saturation Saturazione colore - + Contrast Enhancement Miglioramento contrasto - + Enable Luminace Level Abilita livello luminanza - + Luminance Level Livello luminanza - + Alpha Alpha - + Beta Beta - + Noise Reduction Riduzione rumore - + Version 2.3.0 Versione 2.3.0 - + Inverse Alpha Alpha Inverso - + Rho Rho - + Bias Bias - + Spatial Kernel Sigma Spatial kernel sigma - + Range Kernel Sigma Range kernel sigma - + Base Contrast Contrasto base - + Key Value Parametro Key - + Phi Parametro Phi - + Use Scales Usa scale - + Range Intervallo - + Lower Scale Scala inferiore - + Upper Scale Scala superiore - + Brightness Luminosità - + Chromatic Adaptation Adattamento cromatico - + Light Adaptation Adattamento luce - + Local Contrast Threshold Soglia contrasto locale - + Simple Semplice - + Equation Number Numero equazione - + Eqn &2 Eqn &2 - + Eqn &4 Eqn &4 - + Multiplier Moltiplicatore - + Local Tone Mapping Tonemapping locale - + Auto Cone/Rod Coni/bastoncelli automatici - + Cone Level Livello coni - + Rod Level Livello bastoncelli - + This operator has no options Questo operatore non ha opzioni - + Restore operator's default values Ripristina i valori predefiniti dell'operatore - + Restore Ripristina - + Previous applied settings Impostazioni precedenti - + Previous Precedente - + Next applied settings Impostazioni successive - + Next Successivo - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Qui è possibile caricare e salvare un file di impostazioni di tonemapping.<br>E' anche possibile applicare i contenuti del file di impostazioni di tonemapping correntemente caricato. - - - - Tone Mapping Settings - Impostazioni tonemapping - - - - Save current parameters to a text file - Salva i parametri correnti in un file di testo - - - - Save current parameters (pregamma and TMO) to a text file. - Salva i parametri correnti (pregamma and TMO) in un file di testo. - - - - &Save to File - &Salva su file - - - - Load an existing text file containing pregamma and TMO settings - Carica un file di testo contenente i parametri pregamma e di tonemapping - - - - Load an existing text file containing pregamma and TMO settings. - Carica un file di testo contenente i parametri di pregamma e tonemapping. - - - - &Load from File - &Carica da file - - - - Save current parameters - Salva i parametri correnti - - - - - ... - ... - - - - Load saved parameters - Carica i parametri salvati - - - - Export - Esporta - - - - Fast export - Esportazione veloce - - - - Opens the current export direcotory. This can be changed in the preferences! - Apre la cartella di esportazione veloce. Si può cambiare nelle preferenze! - - - - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Apri</span></a></p></body></html> - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Qui puoi applicare un valore di correzione gamma all'HDR.<br>La correzione gamma verrà applicata prima del tonemapping. - - - - Process - Processa - - - - Result Si&ze - &Dimensione risultato - - - - - Gamma applied before tonemapping - Gamma applicata prima del tonemapping - - - - Pre-&gamma - Pre-&gamma - - - - Restore pregamma's default value (1) - Ripristina il valore predefinito del pregamma (1) - - - - Size of the resulting LDR image - Dimensione dell'immagine LDR finale - - - - Here you can choose the size of the resulting LDR image. - Qui è possibile scegliere la dimensione dell'immagine finale. - - - - Set Custom Output Size - Definisci dimensione finale personalizzata - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Con questo bottone è possibile inserire un valore di <i>larghezza</i> per la dimensione dell'immagine LDR finale.<br>Dopo aver premuto Invio (Enter o Return) un valore di altezza verrà calcolato automaticamente e la nuova dimensione aggiunta alla lista. - - - - Start tonemapping (CTRL+T) - Inizia il tonemapping (CTRL+T) - - - - Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - Usa i parametri correnti come sopra (pregamma e operatore di tonemapping) per calcolare l'immagine LDR - - - - &Update preview - &Aggiorna anteprima - - - - Ctrl+T - Ctrl+T - - - - Update current LDR - Aggiorna LDR corrente - - - - Auto Levels - Livelli automatici - - - + Queue size: %1 Dimensione coda %1 - + TM Database Problem Problema al database TM - + The database used for saving TM parameters cannot be opened. Error: %1 Il database utilizzato per salvare i parametri di TM non può essere aperto: Errore: %1 - + Load a tonemapping settings text file... Carica un file di impostazioni di tonemapping... - - + + LuminanceHDR tonemapping settings text file (*.txt) File di impostazione per tonemapping (*.txt) - - - - + + + + Aborting... Operazione interrotta... - + File is not readable (check existence, permissions,...) Il File non è accessibile (controllarne l'esistenza, i permessi,...) - + Save tonemapping settings text file to... Salve il file di impostazioni di tonemapping in... - + File is not writable (check permissions, path...) Errore di accesso in scrittura al file (controllarne i permessi, il percorso,...) - + File is not readable (check permissions, path...) Errore di accesso in lettura al file (controllarne i permessi, il percorso,...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Errore: Il formato delle opzioni di tonemapping è cambiato. Questo (vecchio) file non può essere usato dalla versione corrente di Luminance HDR. Creane uno nuovo. - + Custom LDR size Dimensione LDR personalizzata - + Enter the width of the new size: Specifica la larghezza della nuova immagine: @@ -6248,7 +6318,7 @@ A&nnulla - + &Start &Avvia diff -Nru luminance-hdr-2.5.0/i18n/lang_nl.ts luminance-hdr-2.5.1/i18n/lang_nl.ts --- luminance-hdr-2.5.0/i18n/lang_nl.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_nl.ts 2017-05-10 19:14:06.000000000 +0000 @@ -3,8 +3,8 @@ AboutLuminance - About Luminance - Over Luminance + About Luminance HDR + @@ -12,12 +12,8 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -30,36 +26,46 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + + A&uthors + A&teurs + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + + + + + &Thanks To @@ -68,7 +74,7 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> @@ -78,16 +84,6 @@ - - A&uthors - A&teurs - - - - &Thanks To - - - Changelog @@ -98,7 +94,7 @@ - + &OK @@ -107,7 +103,7 @@ BatchHDRDialog - Batch HDR Dialog + Batch HDR @@ -209,7 +205,7 @@ - &Hugin's align_image_stack + Hugin's align_&image_stack @@ -223,84 +219,84 @@ - + &Start - + &Close - + Progress - + Input/Output - + Folder where created HDRs are saved - - + + Select... - + Folder where bracketed pictures are located (in alphabetical order) - + Input folder: - + Output folder: - + Anti-ghosting - + Artifact-free High Dynamic Range Imaging - + Threshold - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + O. Gallo and others - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + Auto anti-ghosting @@ -509,7 +505,7 @@ - + Specify output folder for the tone mapped files @@ -519,93 +515,93 @@ - - + + Width of tonemapped image in percent of original image - + % - + Output Format: - + Image format of tonemapped images - + Image format options - + Conversion Log - + Batch operations report - - S&how only: + + Show onl&y: - + Filter messages based on severity - + All messages - + Errors only - + Success messages - - &Filter log messages: + + Filter &log messages: - + Clear filter text - + Overall completion progress - + &Cancel - + Start batch tone mapping - + &Start @@ -1113,44 +1109,6 @@ - - Error: Quality must be in the range [1..100]. - - - - - Error: Threshold must be in the range [0..1]. - - - - - - Starting aligning... - - - - - Resizing to width %1. - - - - - Applying gamma %1. - - - - - -Image %1 successfully saved - - - - - -ERROR: Cannot save to file: %1 - - - Error: Alignment engine not recognized. @@ -1187,11 +1145,21 @@ + + Error: Quality must be in the range [1..100]. + + + Error: Unknown tiff format. + + Error: Threshold must be in the range [0..1]. + + + Error: The number of EV values specified is different from the number of input files. @@ -1212,6 +1180,12 @@ + + + Starting aligning... + + + Failed executing align_image_stack @@ -1227,47 +1201,69 @@ - + Saving to file %1. - + Image %1 saved successfully - + Could not save %1 - + NOT Saving HDR image to file. %1 - + Exporting to HTML - + ERROR: directory %1 must exist - + Tonemapping requested, saving to file %1. - + + Resizing to width %1. + + + + + Applying gamma %1. + + + + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + Tonemapping NOT requested. - + Failed loading images @@ -1290,27 +1286,27 @@ - + Open an existing HDR image - + &New - + Create a new HDR image from one or more images - + &Cancel - + Cancel the drag and drop process and return to the main window @@ -1399,313 +1395,313 @@ - - Refere&nce + + Images List - - Visualization and Navigation + + Ed&itable - - Fit to window + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - - &Fit to Window + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. - - Fill the window + + Select the previous image in both lists - - Fill &window + + Use this button to move the selection to the previous image in both lists. - - Original size + + Select the next image in both lists - - Origina&l Size + + Use this button to move the selection to the next image in both lists. - - &Mode: + + Referen&ce - - Difference (E-P) + + The reference image is the one currently selected - - Overlay (E+P) + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - - Editable Only (E) + + Crop the stack of images after a selection with the left mouse button has been made - - Pivot Only (P) + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - - Antighosting Mask + + &Crop All Images - - Brush + + Ctrl+X - - Lasso + + &Anti-Ghosting - - Images List + + &Save Images - - Ed&itable + + Ctrl+S - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + + Visualization and Navigation - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. + + Fit to window - - Select the previous image in both lists + + &Fit to Window - - Use this button to move the selection to the previous image in both lists. + + Fill the window - - Select the next image in both lists + + Fill &window - - Use this button to move the selection to the next image in both lists. + + Original size - - The reference image is the one currently selected + + Origina&l Size - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + + &Mode: - - O. Gallo and others + + Difference (E-P) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + Overlay (E+P) - - Auto anti-ghosting + + Editable Only (E) - - Artifact-free HDR Imaging + + Pivot Only (P) - - Total Patches: + + Antighosting Mask - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + + Brush - - Threshold + + Lasso - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + + Anti Ghosting - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + + O. Gallo and others - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - - Recompute + + Auto anti-ghosting - - Crop the stack of images after a selection with the left mouse button has been made + + Artifact-free HDR Imaging - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + + Total Patches: - - &Crop All Images + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - - Ctrl+X + + Threshold - - &Anti-Ghosting + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - - &Save Images + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - - Ctrl+S + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - - Mask + + Recompute - - <html><head/><body><p>Add a mask using lasso or brush</p></body></html> + + Mask - - <html><head/><body><p>Remove mask using lasso or brush</p></body></html> + + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - - Anti Ghosting + + &Add - - &Add + + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + R&emove - - + + <html><head/><body><p>Size of the brush</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + Size: - - - + + + px - + S&trength: - + Lasso - Draw a free hand selection area - + Brush - Paint the mask using the brush - + Save mask - + Apply saved mask - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1715,7 +1711,7 @@ - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1723,7 +1719,7 @@ - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1731,107 +1727,107 @@ - + Shift values for editable image - + Reset the shift values for the currently selected movable image - + &Reset - + Reset the shift values for all the images - + Reset &All - + Hori&zontal: - + Vertica&l: - + Insert an horizontal shift value for the currently selected movable image - + Insert a vertical shift value for the currently selected movable image - + Move up of 1 pixel the currently selected movable image - + Move down of 1 pixel the currently selected movable image - + Move right of 1 pixel the currently selected movable image - + > - + Move left of 1 pixel the currently selected movable image - + < - + Histogram - + Get information about the graphical elements - + &What's this? - + Shift+F1 - + &Next > - + &Cancel @@ -1839,78 +1835,78 @@ ExportToHtmlDialog - + Export HDR to HTML - + Export to HTML - + Web page: - + Output folder: - + Open web browser - + Size: - + % - + Quality: - + Images folder: - + Select... - + Cancel - + Export - + Choose a directory - - + + Error: - + must be a directory. @@ -2099,7 +2095,7 @@ GenericViewer - + Pan the image to a region @@ -2107,7 +2103,7 @@ HdrCreationManager - + HdrCreationManager::loadFilesDone(): Error loading a file. @@ -2120,42 +2116,42 @@ HdrViewer - + &Mapping: - + Histogram: - + Linear - + Gamma 1.4 - + Gamma 1.8 - + Gamma 2.2 - + Gamma 2.6 - + Logarithmic @@ -2193,87 +2189,87 @@ - + Preview - + Selected Image &Exposure - + EV: - + Alignment - + &MTB - + &Autoalign images - + Hugin's align_&image_stack - + Auto-crop - + Anti-ghosting - + Threshold - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + Auto anti-ghosting - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + Advanced Editing Tools - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2282,17 +2278,17 @@ - + [2/2] Choose Settings for HDR Creation - + Profile - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2301,332 +2297,326 @@ - + Profile 1 Profiel 1 - + Profile 2 Profiel 2 - + Profile 3 Profiel 3 - + Profile 4 Profiel 4 - + Profile 5 Profiel 5 - + Profile 6 Profiel 6 - + Use this only if the default profiles above do not yield good results - + Use Custom Configuration - + HDR Creation Model - + Debevec - + Robertson (Simple) - + Robertson (Response Recovery) - + Weighting Function - + Triangular - + Gaussian - + Plateau - + Flat - + Response Curve - + Linear - + Gamma - + Log - + sRGB - + Custom - + Response Curve Input File - + Response Curve Output File - + Save As... - + Save Settings - + &Next > - + &Cancel - + Image Filename - + Exposure - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images - + Unknown - + Loading... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + EXIF data not found - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> - + Loading Error: - + Start loading a set of images with different exposure - - - - + + + Error... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + The external application "<em>align_image_stack</em>" crashed... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... - + Now click on next button - + Aligning... - - + + &Finish - + Load camera response curve file - + Camera response curve (*.m);;All Files (*) - + Invalid Response Curve File - + Invalid Response Curve File: please try a different file - + Save a camera response curve file - + Camera response curve (*.m) - + Weights: - + - Response curve: - + - Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> @@ -2640,7 +2630,7 @@ - + &File @@ -2666,7 +2656,7 @@ - + &Print... @@ -2682,7 +2672,7 @@ - + &Find... @@ -2713,7 +2703,7 @@ - + &Add Bookmark @@ -2729,7 +2719,7 @@ - + D&elete All @@ -2799,94 +2789,94 @@ - + Help SideBar - + LuminanceHDR Online Help - + &Edit - + &View - - + + &Bookmarks - + &Quit - + Find &Next - + Find &Previous - + &Contents - + &Search - + &Delete - + Find - + Search Term: - + New Bookmark - + New Bookmark's Title: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show - + LuminanceHDR - Help Browser - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -3020,9 +3010,10 @@ LdrViewer - - - LDR image [%1 x %2] + + + + LDR image [%1 x %2]: %3 @@ -3092,7 +3083,7 @@ MainWindow - + Luminance HDR @@ -3102,880 +3093,966 @@ - + &Help - + + Luminance &HDR Online + + + + &Windows - + &View - + HDR &Histogram - + &Toolbars - + &Preview Panel - + &File - + &Edit - + Main Toolbar - + &New HDR image... - + New HDR image - - + + Create a new HDR image from a set of LDR or Raw images - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files - + Ctrl+N - + &Open HDR image... - + Open HDR image - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + Ctrl+O - + &Save as... - + Save as... - - - + + + Save image (HDR or LDR) - + Ctrl+S - + &Quit - - + + Quit Luminance HDR - + Exit - + Ctrl+Q - + Rotate c&ounter-clockwise - + Rotate counter-clockwise - - - + + + Rotate counter-clockwise the HDR image - + < - + Rotat&e clockwise - + Rotate clockwise - - - + + + Rotate clockwise the HDR image - + > - + &Low Dynamic Range - + L - + &Fit to Dynamic Range - + Fit to dynamic range - + \ - + &Shrink Dynamic Range - + [ - + &Extend Dynamic Range - + ] - + &Decrease Exposure - + 0 - + &Increase Exposure - + 9 - + &Contents... - + About... - - - + + + Open user manual for Luminance HDR - + F1 - + &Normal Size - + Normal size - - - + + + View HDR image at its normal size - + O - + Zoom &In - - - + + + Zoom in - + + - + Zoom &Out - - - + + + Zoom out - + - - + &Fit in Window - - + + Fit in Window - - + + Make the HDR image fit its window - + W - + &Preferences... - + Luminance Options - - - + + + Set various options of Luminance - + Ctrl+P - + &Resize... - + Resize the HDR image - - - + + + Change size of the HDR image - + Ctrl+R - + Copy &Exif Data... - + Copy Exif Data - - - + + + Copy Exif data between two sets of files - + Ctrl+E - + &About Qt - + Show information about Qt - - + + Show information about Qt library that is used by Luminance - + Text &under Icons - + &Icons Only - + &Text Only - + Text &Alongside Icons - + &Batch Tone Mapping... - + Convert multiple HDR images to LDR - - + + Convert multiple HDR images to LDR using existing settings files - + Ctrl+B - + &What's This? - - + + Get verbose information about user interface elements - + Shift+F1 - + About &Luminance HDR - + Show information about Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors - + + Ctrl+I + + + + Save HDR image &preview... - - - + + + Save the current HDR Preview to an LDR file - + &Projective Transformation... - - - + + + Apply projective transformation to the current HDR image - + + Ctrl+J + + + + &Crop to Selection - + Crop to Selection - - + + Crop the image to selection rectangle - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image - + + Ctrl+X + + + + Remove &Selection - + Remove selection rectangle - - + + Remove selection rectangle from image area - + + Ctrl+Z + + + + Make a &Donation - + Ctrl+D - + &Lock Viewers - + Synchronize viewers mode (fit, fill or 1:1). - + Lock the images for sync view - + S - + &Minimize - + Ma&ximize - + &Bring All to Front - + &Show Preview Panel - + Show/Hide Preview Panel - + Ctrl+V - + Adjust &Levels - - + + Adjust Levels - - + + Tune the histogram for the current LDR - + + Ctrl+L - + Save All - - + + Save All LDR files - + &Remove Tab - + Ctrl+W - + Fill &Window - + Fill window with the current viewer - + F - + Batch &HDR... - + Ctrl+H - + Soft Proofing - + Gamut Check - + &Show on the right - + Show &on the bottom - + &Realtime Previews - + &Update - + &FITS Importer... - + Import four FITS files representing luminosity, red, green and blue channels - + Ctrl+F - + White Balance - + Fix color cast, can be slow - + E&xport to HTML - + Export to web page with embedded HDR viewer - + &Show Full Screen - + F11 - + Show &Image Full Screen - + F10 - + &Supported RAW Cameras - + Lists all cameras supported by the program - + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + + + + Ready. Now open an existing HDR image or create a new one! - + All HDR formats - + Load one or more HDR images... - + Save files in - - + + Failed to save %1 - + Done! - + Aborting... - - + + Untitled - + Cropped Image - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + Unsaved changes... - + This HDR image has unsaved changes.<br>Do you want to save it? - + Fattal Warning - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - + Untitled %1 - + Error: %1 - + Untitled HDR - + FITS Image @@ -4072,16 +4149,16 @@ - - - - - - - - - - + + + + + + + + + + ... @@ -4242,12 +4319,12 @@ - + Temperature (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4257,22 +4334,22 @@ - + Green - + Set here the green component to set magenta color cast removal level - + Highlights - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4286,32 +4363,32 @@ - + Solid White - + Do not transform - + Blend - + Reconstruct - + Level - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4321,22 +4398,22 @@ - + Correct false colors in highlights - + Auto Brightness - + Brightness - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4346,7 +4423,7 @@ - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4356,12 +4433,12 @@ - + Black - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4371,7 +4448,7 @@ - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4381,12 +4458,12 @@ - + Saturation - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4396,12 +4473,12 @@ - + NR and CA Correction - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4411,12 +4488,12 @@ - + Enable noise reduction - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4426,12 +4503,12 @@ - + Threshold: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4441,12 +4518,12 @@ - + Enable Chromatic Aberration correction - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4456,7 +4533,7 @@ - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4466,44 +4543,44 @@ - + Red Component - + Blue Component - - - + + + Browse... - + Camera profile - + Monitor Profile - + Printer profile - + align_image_stack command line arguments - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4512,12 +4589,12 @@ - + &Cancel - + &OK @@ -4532,18 +4609,18 @@ - - + + Choose a directory - + Open ICC Profile - + Color profile (*.icc *.ICC *.icm *.ICM) @@ -4651,7 +4728,7 @@ - + &OK @@ -4697,9 +4774,9 @@ - - - + + + Writing: @@ -4732,62 +4809,62 @@ - + Triangular - + Plateau - + Gaussian - + Flat - + Linear - + Gamma - + Logarithmic - + sRGB - + From Calibration/Input File - + Debevec - + Robertson - + Robertson Response Calculation @@ -4970,12 +5047,12 @@ - + Option -v -a... - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. @@ -5040,7 +5117,7 @@ - + Save as... @@ -5103,7 +5180,7 @@ - + &Scale @@ -5324,37 +5401,37 @@ SupportedCamerasDialog - + List of supported cameras - + TextLabel - - <b>Luminance HDR</b> + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> - + With LibRaw version - + models listed - + search... - + OK @@ -5368,551 +5445,553 @@ - TiffModeDialog + ThresholdWidget - - Save as ...TIFF + + Frame - - - TonemappingPanel - - Tonemap + + Threshold + + + TiffModeDialog - - Mantiuk '06 + + Save as ...TIFF + + + TonemappingPanel - - Mantiuk '08 + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - - Fattal + + Tone Mapping Settings - - Ferradans + + Save current parameters to a text file - - Drago + + Save current parameters (pregamma and TMO) to a text file. - - Durand + + Load an existing text file containing pregamma and TMO settings - - Reinhard '02 + + Load an existing text file containing pregamma and TMO settings. - - Reinhard '05 + + Save current parameters - - Ashikhmin + + Load saved parameters - - Pattanaik + + Export - - Mai + + Fast export - - Operator + + Opens the current export direcotory. This can be changed in the preferences! - - Contrast Factor + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> - - Saturation Factor + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - - Detail Factor + + Process - - Contrast Equalization + + Result Si&ze - - Predefined Display + + + Gamma applied before tonemapping - - Lcd Office + + Pre-&gamma - - Lcd + + Restore pregamma's default value (1) - - Lcd Bright + + Size of the resulting LDR image - - CRT + + Here you can choose the size of the resulting LDR image. - - - Color Saturation + + Set Custom Output Size - - Contrast Enhancement + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - - Enable -Luminace Level + + Start tonemapping (CTRL+T) - - Luminance Level + + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - - Alpha + + &Update preview - - Beta + + Ctrl+T - - Noise Reduction + + Update current LDR - - Version 2.3.0 + + Auto Levels - - Inverse Alpha + + <html><head/><body><p>set auto levels threshold</p></body></html> - - Rho + + Tonemap - - Bias + + Mantiuk '06 - - Spatial Kernel Sigma + + Mantiuk '08 - - Range Kernel Sigma + + Fattal - - Base Contrast + + Ferradans - - Key Value + + Drago - - Phi + + Durand - - Use Scales + + Reinhard '02 - - Range + + Reinhard '05 - - Lower Scale + + Ashikhmin - - Upper Scale + + Pattanaik - - Brightness + + Mai - - Chromatic Adaptation + + Operator - - Light Adaptation + + Contrast Factor - - Local Contrast Threshold + + Saturation Factor - - Simple + + Detail Factor - - Equation Number + + Contrast Equalization - - Eqn &2 + + Predefined Display - - Eqn &4 + + Lcd Office - - Multiplier + + Lcd - - Local Tone Mapping + + Lcd Bright - - Auto Cone/Rod + + CRT - - Cone Level + + + Color Saturation - - Rod Level + + Contrast Enhancement - - This operator has no options + + Enable +Luminace Level - - Restore operator's default values + + Luminance Level - - Restore + + Alpha - - Previous applied settings + + Beta - - Previous + + Noise Reduction - - Next applied settings + + Version 2.3.0 - - Next + + Inverse Alpha - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + + Rho - - Tone Mapping Settings + + Bias - - Save current parameters to a text file + + Spatial Kernel Sigma - - Save current parameters (pregamma and TMO) to a text file. + + Range Kernel Sigma - - &Save to File + + Base Contrast - - Load an existing text file containing pregamma and TMO settings + + Key Value - - Load an existing text file containing pregamma and TMO settings. + + Phi - - &Load from File + + Use Scales - - Save current parameters + + Range - - - ... + + Lower Scale - - Load saved parameters + + Upper Scale - - Export + + Brightness - - Fast export + + Chromatic Adaptation - - Opens the current export direcotory. This can be changed in the preferences! + + Light Adaptation - - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + Local Contrast Threshold - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + + Simple - - Process + + Equation Number - - Result Si&ze + + Eqn &2 - - - Gamma applied before tonemapping + + Eqn &4 - - Pre-&gamma + + Multiplier - - Restore pregamma's default value (1) + + Local Tone Mapping - - Size of the resulting LDR image + + Auto Cone/Rod - - Here you can choose the size of the resulting LDR image. + + Cone Level - - Set Custom Output Size + + Rod Level - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + + This operator has no options - - Start tonemapping (CTRL+T) + + Restore operator's default values - - Use current parameters above (pregamma and tone mapping operator) to compute an LDR image + + Restore - - &Update preview + + Previous applied settings - - Ctrl+T + + Previous - - Update current LDR + + Next applied settings - - Auto Levels + + Next - + Queue size: %1 - + TM Database Problem - + The database used for saving TM parameters cannot be opened. Error: %1 - + Load a tonemapping settings text file... - - + + LuminanceHDR tonemapping settings text file (*.txt) - - - - + + + + Aborting... - + File is not readable (check existence, permissions,...) - + Save tonemapping settings text file to... - + File is not writable (check permissions, path...) - + File is not readable (check permissions, path...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + Custom LDR size - + Enter the width of the new size: @@ -6057,7 +6136,7 @@ - + &Start diff -Nru luminance-hdr-2.5.0/i18n/lang_pl.ts luminance-hdr-2.5.1/i18n/lang_pl.ts --- luminance-hdr-2.5.0/i18n/lang_pl.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_pl.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - O Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ A&utorzy - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement - + - + &OK &OK @@ -110,290 +103,290 @@ BatchHDRDialog - Batch HDR Dialog - + Batch HDR + - + Number of bracketed images: - + - - + + Select the number of bracketed pictures used to create the HDRs - + - + Output - + - + + Choose an HDR output file format + + + + Predefined profile: - + - - Choose an HDR output file format - + + Output format: + - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - - - - + Alignment - + - + Auto align the bracketed pictures - + - + Auto-align images - + - + Use MTB (Median Threshold Bitmap) engine - + - - MTB - + + &MTB + - + Use Hugin's align_image_stack engine - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - - Progress - - - - + &Cancel &Anuluj - + &Start - + - + &Close &Zamknij - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + - - Auto anti-ghosting - + + Output folder: + - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - + + Artifact-free High Dynamic Range Imaging + - - - Select... - + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - + + O. Gallo and others + - - Output folder: - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory - + - + Choose a output directory - + - - - + + + Warning - + - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? - + - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... - + - + Loading files... - + - + Completed with errors - + - + Completed without errors - + - + Error: missing EXIF data - + - + Aligning... - + - + Creating HDR... - + - + Doing auto anti-ghosting... - + - + Written - + - + Error: - + - + Aborting... Przerywam... @@ -403,261 +396,274 @@ Batch Tone Mapping - + HDR Images to Convert - + List of HDRs that will be tone mapped - + Add Directory (Alt+D) - + Alt+D - + Add Files (Alt+F) - + Alt+F - + Remove Files (Alt+R) - + Alt+R - + Tone Mapping Settings - + Add Directory (Alt+I) - + Alt+I - + Add Files (Alt+L) - + Alt+L - + Add from Database (Alt+B) - + Alt+B - + Remove Settings (Alt+M) - + Alt+M - + List of Tone Mapping Setting files that will be used to tone map each HDR - - - - - Specify output folder for the tone mapped files - + Output - + Output Image Width: - + + + + + Output Folder: + + + + + + Specify output folder for the tone mapped files + + + + + Selec&t... + + + + + + Width of tonemapped image in percent of original image + - + % - + - + Output Format: - + - - Output Folder: - + + Image format of tonemapped images + - - Selec&t... - + + Image format options + - + Conversion Log - + - + Batch operations report - + - - &Show only: - + + Show onl&y: + - + Filter messages based on severity - + - + All messages - + - + Errors only - + - + Success messages - + - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text - + - + Overall completion progress - + - + &Cancel &Anuluj - + Start batch tone mapping - + - + &Start - + - + Using %n thread(s) - - - - - + - - - + + + Choose a directory Wybierz katalog - + All HDR images - + - + Select input images - + - + Load tone mapping settings text files... - + - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... - + - + Start processing... - + - + Close - + - + &Done - + - + All tasks completed. - + - + Aborting... Przerywam... @@ -667,525 +673,632 @@ [T%1] Start processing %2 - + [T%1] Successfully load %2 - + [T%1] Successfully saved LDR file: %2 - + [T%1] ERROR: Cannot save to file: %2 - + [T%1] ERROR: Loading of %2 failed - + CommandLineInterfaceManager - - Error: Alignment engine not recognized. - - - - - Error: Unknown weight function specified. - - - - - Error: Unknown response curve specified. - - - - - Error: Unknown HDR creation model specified. - + + Usage: %1 [OPTIONS]... [INPUTFILES]... + - - Error: Unknown tone mapping operator specified. - + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + + + + + Error: Unknown weight function specified. + + + + + Error: Unknown response curve specified. + + + + + Error: Unknown HDR creation model specified. + + + + + Error: Unknown tone mapping operator specified. + - - + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. - + - + EV values have been assigned. - + + + + + + Starting aligning... + - + Failed executing align_image_stack - + - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + + + + + ERROR: directory %1 must exist + - + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - + Choose action + <b>What would you like to do with the file(s)?</b> - + &Open - + Open an existing HDR image - + &New - + Create a new HDR image from one or more images - + @@ -1195,730 +1308,809 @@ Cancel the drag and drop process and return to the main window - + DonationDialog - + Luminance HDR - Make a Donation - + - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! - + - + Ask me again later - + - + No, Stop bothering me! - + EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable - + - + R&eference - + - + Select the previous image in both lists - + - + Select the next image in both lists - + - + Choose a directory and a prefix - + EditingToolsDialog - + Editing Tools - + - - Visualization and Navigation - + + Images List + - - Fit to window - + + Ed&itable + - - &Fit to Window - + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + - - Fill the window - + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + - - Fill &window - + + Select the previous image in both lists + - - Original size - + + Use this button to move the selection to the previous image in both lists. + - - Origina&l Size - + + Select the next image in both lists + - - &Mode: - + + Use this button to move the selection to the next image in both lists. + - - Difference (E-P) - + + Referen&ce + - - Overlay (E+P) - + + The reference image is the one currently selected + - - Editable Only (E) - + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + - - Pivot Only (P) - + + Crop the stack of images after a selection with the left mouse button has been made + - - Antighosting Mask - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + - - - Brush - + + &Crop All Images + - - - Lasso - + + Ctrl+X + - - Images List - + + &Anti-Ghosting + - - Ed&itable - + + &Save Images + - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - - - - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - - - - - Select the previous image in both lists - + + Ctrl+S + Ctrl+S - - Use this button to move the selection to the previous image in both lists. - + + Visualization and Navigation + - - Select the next image in both lists - + + Fit to window + - - Use this button to move the selection to the next image in both lists. - + + &Fit to Window + - - R&eference - + + Fill the window + - - The reference image is the one currently selected - + + Fill &window + - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - + + Original size + - - Tools - + + Origina&l Size + - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + &Mode: + - - O. Gallo and others - + + Difference (E-P) + - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Overlay (E+P) + - - Auto anti-ghosting - + + Editable Only (E) + - - Artifact-free HDR Imaging - + + Pivot Only (P) + - - Total Patches: - + + Antighosting Mask + - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Brush + - - Threshold - + + Lasso + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + Anti Ghosting + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + O. Gallo and others + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Recompute - + + Auto anti-ghosting + - - Crop the stack of images after a selection with the left mouse button has been made - + + Artifact-free HDR Imaging + - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - + + Total Patches: + - - &Crop All Images - + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + - - Ctrl+X - + + Threshold + - - &Anti-Ghosting - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + - - &Save Images - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Ctrl+S - Ctrl+S + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Recompute + - + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: - + - - - + + + px - + - - &Strength: - + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> - + - + Shift values for editable image - + - + Reset the shift values for the currently selected movable image - + - + &Reset &Reset - + Reset the shift values for all the images - + - + Reset &All - + - - &Horizontal: - + + Hori&zontal: + - - &Vertical: - + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image - + - + Insert a vertical shift value for the currently selected movable image - + - + Move up of 1 pixel the currently selected movable image - + - + Move down of 1 pixel the currently selected movable image - + - + Move right of 1 pixel the currently selected movable image - + + + + + > + > - + Move left of 1 pixel the currently selected movable image - + + + + + < + < - + Histogram - + - + Get information about the graphical elements - + - + &What's this? - + - + Shift+F1 - + - + &Next > &Dalej - + &Cancel &Anuluj + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + + + + + Open web browser + + + + + Size: + + + + + % + + + + + Quality: + + + + + Images folder: + + + + + Select... + + + + + Cancel + + + + + Export + + + + + Choose a directory + Wybierz katalog + + + + + Error: + + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... - + Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctl+R - + Shows a larger preview of selected image - + - - - + + + Preview - + - + Previews - + - - + + Alignment - + - + Auto-crop - + - - MTB - + + &MTB + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + &Autoalign images - + - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green - + - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region - + HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -1926,7 +2118,7 @@ &Mapping: - + @@ -1969,7 +2161,7 @@ HDR Creation Wizard - + @@ -1978,269 +2170,269 @@ - Currently Loaded &Files - + &Currently Loaded Files + - + Add Images - + - + Remove Selected Image - + - + Clear List - + - + Preview - + - + Selected Image &Exposure - + - + EV: - + - + Alignment - + - - MTB - + + &MTB + - + &Autoalign images - + - - Hugin's align_image_stack - + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> - + - + [2/2] Choose Settings for HDR Creation - + - + Profile - + - - Use Custom Configuration - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + - - HDR Creation Model - + + Profile 1 + Profil 1 - - Robertson (Simple) - + + Profile 2 + Profil 2 - - Robertson (Response Recovery) - + + Profile 3 + Profil 3 - - Weighting Function - + + Profile 4 + Profil 4 - - Flat - + + Profile 5 + Profil 5 - - Response Curve - + + Profile 6 + Profil 6 - - sRGB - + + Use this only if the default profiles above do not yield good results + - - Custom - + + Use Custom Configuration + - - Response Curve Input File - + + HDR Creation Model + - - Response Curve Output File - + + Debevec + Debevec - - Use this only if the default profiles above do not yield good results - + + Robertson (Simple) + - - Linear - Liniowe + + Robertson (Response Recovery) + - - Debevec - Debevec + + Weighting Function + - + Triangular Trójkątna - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - + + Gaussian + Gauss - - Profile 1 - Profil 1 + + Plateau + Plateau - - Profile 2 - Profil 2 + + Flat + - - Profile 3 - Profil 3 + + Response Curve + - - Profile 4 - Profil 4 + + Linear + Liniowe - - Profile 5 - Profil 5 + + Gamma + Gamma - - Profile 6 - Profil 6 + + Log + Logarytmiczna - - Gaussian - Gauss + + sRGB + - - Plateau - Plateau + + Custom + - - Gamma - Gamma + + Response Curve Input File + - - Log - Logarytmiczna + + Response Curve Output File + - + Save As... - + - + Save Settings - + - + &Next > &Dalej @@ -2250,399 +2442,495 @@ &Anuluj - + Image Filename - + - + Exposure - + - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Wybierz obrazy wejściowe - + Unknown - + - + Loading... - + - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found Nie znaleziono danych EXIF - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> - + - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> - + - + Loading Error: - + - + Start loading a set of images with different exposure - + - - - - + + + Error... Błąd... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + - + The external application "<em>align_image_stack</em>" crashed... - + - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... - + - + Now click on next button - + + + + + Aligning... + - - + + &Finish &Zakończ - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - - - - - Aligning... - + - + Weights: Wagi: - + - Response curve: - Krzywa odpowiedzi: - + - Model: - Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> - + HelpBrowser - + Luminance HDR Help - + + + + + + &File + &Plik + + + + E&dit + - + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Pomoc Luminance - - + + &Print... - + + + + + Ctrl+P + Ctrl+P - + &Exit Wyjści&e - - + + &Find... - + + + + + Ctrl+F + - + Find &Next... - + + + + + F3 + - + Find &Previous... - + - - &Add - + + Shift+F3 + - + - &Delete - + &Add Bookmark + - - - D&elete All - + + Ctrl+D + - - Help SideBar - + + &Delete Bookmark + - - LuminanceHDR Online Help - + + + D&elete All + - - &File - &Plik + + goHome + - - &Edit - + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + + + + + P&rint Preview + + + + + Help SideBar + + + + + LuminanceHDR Online Help + + &Edit + + + + &View &Widok - - + + &Bookmarks - + - + &Quit - + - + Find &Next - + - + Find &Previous - + - + &Contents - + - + &Search - + - - &Add Bookmark - + + &Delete + - + Find - + - + Search Term: - + - + New Bookmark - + - + New Bookmark's Title: - + - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show - + - + LuminanceHDR - Help Browser - + - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? - + HelpSideBar - - Contents - - - - + + &Contents - + - + Se&arch - + - + Searching is case insensitive - + - + &Search - + - - + + 1 1 - + Book&marks - + - + &Add - + &Remove - + - + R&emove All - + @@ -2650,22 +2938,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2673,7 +2961,7 @@ Unknown - + @@ -2681,32 +2969,32 @@ Save as - + Saved File Quality - + Quality: - + File size: - + Unknown - + Ca&lculate - + @@ -2716,30 +3004,31 @@ &Save - + LdrViewer - - - LDR image [%1 x %2] - + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Poziomy oraz gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2747,10 +3036,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Dostosuj poziomy koloru</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2758,25 +3047,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Poziomy wejściowe</span></p></body></html> - + Clip black Przycięcie czerni - + Gamma Gamma - + Clip White Przycięcie bieli - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2784,17 +3073,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Poziomy wyjściowe</span></p></body></html> - + &Reset &Reset - + &Cancel &Anuluj - + &OK &OK @@ -2803,9 +3092,9 @@ MainWindow - + Luminance HDR - + @@ -2813,1400 +3102,1536 @@ &Narzędzia - + &Help &Pomoc - + + Luminance &HDR Online + + + + &Windows &Okna - + &View &Widok - + HDR &Histogram - + - + &Toolbars &Paski narzędziowe - - Preview Panel - + + &Preview Panel + - + &File &Plik - + &Edit - + - + Main Toolbar - + - + &New HDR image... - + - + New HDR image - + - - + + Create a new HDR image from a set of LDR or Raw images - + - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files - + - + Ctrl+N Ctrl+N - + &Open HDR image... - + - + Open HDR image - + - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + - + Ctrl+O Ctrl+O - + &Save as... - + - + Save as... - + - - - + + + Save image (HDR or LDR) - + - + Ctrl+S Ctrl+S - + &Quit - + - - + + Quit Luminance HDR - + - + Exit Wyjście - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise - + - + Rotate counter-clockwise - + - - - + + + Rotate counter-clockwise the HDR image - + - + < < - - Rotate c&lockwise - + + Rotat&e clockwise + - + Rotate clockwise - + - - - + + + Rotate clockwise the HDR image - + - + > > - - Low Dynamic Range - Mała dynamika tonów + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Dopasuj do dynamiki tonów + + &Fit to Dynamic Range + - + Fit to dynamic range - + - + \ \ - - Shrink Dynamic Range - Zmniejsz dynamikę tonów + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Zwiększ dynamikę tonów + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Zmniejsz ekspozycję + + &Decrease Exposure + - + 0 O - + &Increase Exposure Zw&iększ ekspozycję - + 9 9 - + &Contents... - + - + About... O programie... - - - + + + Open user manual for Luminance HDR - + - + F1 - + - + &Normal Size Rozmiar &normalny - + Normal size - + - - - + + + View HDR image at its normal size - + - + O O - + Zoom &In Pow&iększ - - - + + + Zoom in - + - + + + - + Zoom &Out Po&mniejsz - - - + + + Zoom out - + - + - - - + &Fit in Window - + - - + + Fit in Window - + - - + + Make the HDR image fit its window - + - + W W - + &Preferences... &Preferencje... - + Luminance Options Opcje Luminance - - - + + + Set various options of Luminance - + - + Ctrl+P Ctrl+P - + &Resize... - + - + Resize the HDR image - + - - - + + + Change size of the HDR image - + - + Ctrl+R Ctl+R - + Copy &Exif Data... Kopiuj informacje &Exif... - + Copy Exif Data Kopiuj informacje Exif - - - + + + Copy Exif data between two sets of files - + - + Ctrl+E Ctrl+E - + &About Qt &O Qt - + Show information about Qt - + - - + + Show information about Qt library that is used by Luminance - + - + Text &under Icons - + - + &Icons Only Tylko &ikony - + &Text Only Tylko &tekst - + Text &Alongside Icons Tekst przed ikon&ami - + &Batch Tone Mapping... - + - + Convert multiple HDR images to LDR - + - - + + Convert multiple HDR images to LDR using existing settings files - + - + Ctrl+B - + - + &What's This? - + - - + + Get verbose information about user interface elements - + - + Shift+F1 - + - + About &Luminance HDR - + - + Show information about Luminance HDR - + - - + + Show information about Luminance HDR, its authors and contributors - + + + + + Ctrl+I + - + Save HDR image &preview... - + - - - + + + Save the current HDR Preview to an LDR file - + - + &Projective Transformation... - + - - - + + + Apply projective transformation to the current HDR image - + - + + Ctrl+J + + + + &Crop to Selection - + - + Crop to Selection - + - - + + Crop the image to selection rectangle - + - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image - + + + + + Ctrl+X + - + Remove &Selection - + - + Remove selection rectangle - + - - + + Remove selection rectangle from image area - + + + + + Ctrl+Z + - + Make a &Donation - + - + Ctrl+D - + - - Lock Viewers - + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view - + - - Minimize - + + S + - - Maximize - + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - + + &Bring All to Front + - - Show Preview Panel - + + &Show Preview Panel + - + Show/Hide Preview Panel - + - + Ctrl+V - + - + Adjust &Levels - + - - + + Adjust Levels - + - - + + Tune the histogram for the current LDR Dostosuj historam do obecnego LDR - + + Ctrl+L - + - + Save All - + - - + + Save All LDR files - + - - Remove Tab - + + &Remove Tab + - + Ctrl+W - + - - Fill Window - + + Fill &Window + - + Fill window with the current viewer - + + + + + F + - - Batch HDR... - + + Batch &HDR... + - + Ctrl+H Ctrl+H - + Soft Proofing - + - + Gamut Check - + - - Show on the right - + + &Show on the right + - - Show on the bottom - + + Show &on the bottom + - - Realtime Previews - + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + - + Ctrl+F - + - + White Balance - + - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! - + - + All HDR formats - + - + Load one or more HDR images... - + - + Save files in - + - - Failed to save - + + + Failed to save %1 + - + Done! - + - + Aborting... Przerywam... - + + + Untitled + + + + Cropped Image - + - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Niezachowane zmiany... - + This HDR image has unsaved changes.<br>Do you want to save it? - + - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - + - - - Untitled - - - - + Untitled %1 - + - + Error: %1 - + - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences - - - - - External Tools - + - + Tone Mapping Mapowanie tonów - + RAW Conversion - + + + + + Color Management + + + + + External Tools + - + Interface - + - - Color Management - + + Fast export + - + Language - + - + Default Previews Width - + - + px - + - + Always show Preview Panel - + - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + - - + + Amount of threads to use on multicore/SMP machines - + - + Batch Tonemapping Number of Threads - + - + General - + - + Quality: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear - + - + VNG - + - + PPG - + - + AHD - + - - - - - - - - - - - - - - - ... - - - - + Median: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + - + Do not stretch or rotate pixels - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + - + Interpolate RGB using 4 colours - + - + Color correction - + - + White Balance - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + - + Predefined D65 - + - + Camera - + - + Auto - + - + Manual - + - + Temperature (Kelvin) - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + - + Green - + - + Set here the green component to set magenta color cast removal level - + - + Highlights - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Unclip</span>: leave highlights unclipped in various shades of pink</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blend</span>: Blend clipped and unclipped values together for a gradual fade to white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + - + Solid White - + - + Do not transform - + - + Blend - + - + Reconstruct - + - + Level - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + - + Correct false colors in highlights - + - + Auto Brightness - + - + Brightness Jasność - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + - + Black - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - - - - - Saturation - + - + NR and CA Correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + - + Enable noise reduction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + - + Threshold: - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + - + Enable Chromatic Aberration correction - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + - + Red Component - + - + Blue Component - - - - - Monitor Profile - + - - - + + + Browse... - + - + Camera profile - + - + + Monitor Profile + + + + Printer profile - + - + align_image_stack command line arguments - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> - + - + &Cancel &Anuluj - + &OK &OK - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Wybierz katalog - + Open ICC Profile - + - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4214,105 +4639,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation - + - + Projections - + - + Source Projection: - + - - + + Polar - + - - + + Angular - + - - + + Cylindrical - + - - + + Mirror Ball - + - + Destination Projection: - + - + Angles: - + - - - - + + + + ° - + - + Bilinear Interpolation - + - + Oversample factor: - + - + Rotation (degrees) - + - + Yaw: - + - + Pitch: - + - + Roll: - + - + &Cancel &Anuluj - + &OK &OK @@ -4320,418 +4745,451 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: - + - + ERROR: File too old, cannot parse Tone Mapping Setting file: - + - + ERROR: cannot parse Tone Mapping Setting file: - + QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + Warning - + I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - + + Triangular + Trójkątna - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Plateau + + + + Gaussian + Gauss + + + + Flat + + + + + Linear + Liniowe + + + + Gamma + Gamma + + + + Logarithmic + Logarytmiczne + + + + sRGB + + + + + From Calibration/Input File + - + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + + + + PreGamma=%1 - + - + Contrast Equalization - + - + Contrast - + - - + + Saturation - + - + Detail - + - + Luminance Level - + - + Luminance Level=Auto - + - + Color Saturation Saturacja - + Contrast Enhancement - + - + Alpha Alfa - + Beta Beta - + NoiseRedux - + - + FFTSolver - + - + + Rho + + + + + InvAlpha + + + + simple - + - + Equation 2 - + - + Equation 4 - + - - + + Local - + - + Bias Bias - + Spatial - + - - + + Range Zakres - + Base - + - + Multiplier Mnożnik - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Jasność - + Chromatic Adaptation - + - + Light Adaptation - + - + + Option -v -a... + + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float - + - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 - + - + Using %n threads. - - - - - + - + Loading file %1 - + - + Successfully loaded file %1. - + - + All LDR formats - + - + Save the LDR image as... - + - + Save the HDR image as... - + - + Save as... - - - - - Triangular - Trójkątna - - - - Plateau - Plateau - - - - Gaussian - Gauss - - - - Flat - - - - - Linear - Liniowe - - - - Gamma - Gamma - - - - Logarithmic - Logarytmiczne - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - + ResizeDialog - + Scale Image Skaluj obraz - + Hdr Image Size Rozmiar obrazu Hdr - - Width: - Szrokość: + + Restore original size + Przywróć oryginalny rozmiar - + + &Reset + &Reset + + + Switch between pixels or percentage - + - + Pixels Pikseli - + Percent Procent - - Height: - Wysokość: - - - + Result size Rozmiar wynikowy - - Restore original size - Przywróć oryginalny rozmiar + + Height: + Wysokość: - - &Reset - &Reset + + Width: + Szrokość: - + &Cancel &Anuluj - + &Scale &Skaluj @@ -4741,202 +5199,250 @@ Saved Parameters - + - - + + Comment - + - + TM Operator - + - + Simple Prosty - + Equation 2 - + - + Local Contrast Threshold Próg lokalnego kontrastu - + Bias Bias - + Spatial Kernel Sigma Suma przestrzeni jądra - + Range Kernel Sigma Suma zakresu jądra - + Base Contrast Kontrast bazowy - + Alpha Alfa - + Beta Beta - - + + Color Saturation Saturacja - + Noise Reduction - + - + Old Fattal - + - + + Rho + + + + + InvAlpha + + + + Contrast Equalization - + - + Contrast Factor - + - + Saturation Factor - + - + Detail Factor - + - + Contrast Enhancement - + - + Luminance Level - + - + Manual Luminance Level - + - + Cone and Rod based on Luminance Cone and Rod based on Luminance - + Local Tonemapping - + - + Cone Level Cone Level - + Rod Level Rod Level - + Multiplier Mnożnik - + Use Scales Użyj skali - + Key Value Wartość kluczowa - + Phi Value - + - + Range Zakres - + Lower Scale Skala niższa - + Upper Scale Skala wyższa - + Brightness Jasność - + Chromatic Adaptation - + - + Light Adaptation - + - + Pre-gamma - + SavingParameters - + Saving Parameters - + - + Enter a short comment for the saved parameters: - + + + + + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + @@ -4944,7 +5450,20 @@ Abort computation - + + + + + ThresholdWidget + + + Frame + + + + + Threshold + @@ -4952,504 +5471,538 @@ Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + + + + + Tone Mapping Settings + + + + + Save current parameters to a text file + + + + + Save current parameters (pregamma and TMO) to a text file. + + + + + Load an existing text file containing pregamma and TMO settings + Wczytaj plik tekstowy zawierający ustawienia pregamma oraz TMO + + + + Load an existing text file containing pregamma and TMO settings. + + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + + + + + Process + + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Przywróć wstępne domyślne wartości gamma (1) - + + Size of the resulting LDR image + + + + + Here you can choose the size of the resulting LDR image. + + + + + Set Custom Output Size + + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + + + + Start tonemapping (CTRL+T) - + - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - + - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR - + + + + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + - + Tonemap - + - + Mantiuk '06 - + - + Mantiuk '08 - + - + Fattal - + - + + Ferradans + + + + Drago - + - + Durand - + - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin - + - + Pattanaik - + + + + + Mai + - + Operator - + - + Contrast Factor - + - + Saturation Factor - + - + Detail Factor - + - + Contrast Equalization - + - + Predefined Display - + - + Lcd Office - + - + Lcd - + - + Lcd Bright - + - + CRT - + - - + + Color Saturation Saturacja - + Contrast Enhancement - + - + Enable Luminace Level - + - + Luminance Level - + - + Alpha Alfa - + Beta Beta - + Noise Reduction - + - + Version 2.3.0 - + + + + + Inverse Alpha + + + + + Rho + - + Bias Bias - + Spatial Kernel Sigma Suma przestrzeni jądra - + Range Kernel Sigma Suma zakresu jądra - + Base Contrast Kontrast bazowy - + Key Value Wartość kluczowa - + Phi Phi - + Use Scales Użyj skali - + Range Zakres - + Lower Scale Skala niższa - + Upper Scale Skala wyższa - + Brightness Jasność - + Chromatic Adaptation - + - + Light Adaptation - + - + Local Contrast Threshold Próg lokalnego kontrastu - + Simple Prosty - + Equation Number Liczba równań - - Eqn 2 - 2 Równania + + Eqn &2 + - - Eqn 4 - 4 Równania + + Eqn &4 + - + Multiplier Mnożnik - + Local Tone Mapping Lokalne mapowanie tonów - + Auto Cone/Rod - + - + Cone Level Cone Level - + Rod Level Rod Level - + + This operator has no options + + + + Restore operator's default values - + - + Restore - + - + Previous applied settings - + - + Previous - + - + Next applied settings - + - + Next - - - - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - - - - - Tone Mapping Settings - - - - - Save current parameters to a text file - - - - - Save current parameters (pregamma and TMO) to a text file. - + - - &Save to File - + + Queue size: %1 + - - Load an existing text file containing pregamma and TMO settings - Wczytaj plik tekstowy zawierający ustawienia pregamma oraz TMO - - - - Load an existing text file containing pregamma and TMO settings. - - - - - &Load from File - - - - - Save current parameters - - - - - - ... - - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - - - - - Process - - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - - - - - Restore pregamma's default value (1) - Przywróć wstępne domyślne wartości gamma (1) - - - - Size of the resulting LDR image - - - - - Here you can choose the size of the resulting LDR image. - - - - - Set Custom Output Size - - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - - - - + TM Database Problem - + - + The database used for saving TM parameters cannot be opened. Error: %1 - + - + Load a tonemapping settings text file... Wczytaj ustawienia mapowania tonów... - - + + LuminanceHDR tonemapping settings text file (*.txt) - + - - - - + + + + Aborting... Przerywam... - + File is not readable (check existence, permissions,...) Nie można odczytać pliku (spradź czy istnieje, uprawnienia,...) - + Save tonemapping settings text file to... Zapisz plik z ustawieniami mapowania tonów... - + File is not writable (check permissions, path...) Nie można zapisać pliku (sprawdź uprawnienia, ścieżkę,...) - + File is not readable (check permissions, path...) Nie można odczytać pliku (sprawdź czy istnieje, ścieżkę,...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size - + - + Enter the width of the new size: - + @@ -5457,47 +6010,47 @@ Load Custom Settings - + Sort by - + Comments: - + Comment - + Operator - + Most Useful Operators - + Tonemap - + Load - + Cancel - + @@ -5508,110 +6061,110 @@ Kopiuj dane EXIF - + From - + - - + + Append files to the list Dołącz pliki do listy - - + + Remove selected file(s) from the list Usuń zaznaczone pliki z listy - - + + Move up selected file(s) Przenieś wyżej zaznaczone pliki - - + + Move down selected file(s) Przenieś niżej zaznaczone pliki - + To - + - + Log Logarytmiczna - + Exif operations report - + - - &Show only: - + + Show onl&y: + - + Filter messages based on severity - + - + All messages - + - + Errors only - + - - &Filter log messages: - + + Filter &log messages: + - + Clear filter text - + - + Keep existing Exif tags in destination file - + - + &Cancel &Anuluj - + &Start - + - - + + All Supported formats - + - - + + Select the input images Wybierz obrazy wejściowe - + &Done - + @@ -5620,32 +6173,38 @@ %1 License document not found, you can find it online: %2here%3 %2 and %3 are html tags - + + + + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + - + Donation - + - + Would you like to donate? - + - + Yes, I'd love to! - + - + Stop Bothering Me - + - + Remind me later - + @@ -5653,18 +6212,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_pt_BR.ts luminance-hdr-2.5.1/i18n/lang_pt_BR.ts --- luminance-hdr-2.5.0/i18n/lang_pt_BR.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_pt_BR.ts 2017-05-10 19:14:06.000000000 +0000 @@ -3,8 +3,8 @@ AboutLuminance - About Luminance - Sobre Luminance + About Luminance HDR + @@ -12,12 +12,8 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -30,14 +26,14 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + + + + + A&uthors + Á%utores @@ -45,50 +41,32 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Por favor </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">avise-me</span></a><span style=" font-family:'Sans Serif';">, se esqueci de adicionar alguém a esta lista</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Principal desenvolvedor QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Principais desenvolvedores Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Melhorias, correção de bugs</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{ferramentas|calibração|tmo} código base</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Algorítimo limiar médio Bitmap G.Ward's (MTB) </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor russo, correções de usabilidade, manual do usuário, arquivo desktop</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor norueguês</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor turco</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor francês</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor espanhol</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor alemão</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor Tcheco</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor polonês</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor romeno</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Tradutor chinês</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches e mantenedores</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit e Steffen Beyer<br /></span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + + + + + &Thanks To + Agradecemos à @@ -96,34 +74,14 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Por favor </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">avise-me</span></a><span style=" font-family:'Sans Serif';">, se esqueci de adicionar alguém a esta lista<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Toda a comunidade no</span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">alinhar_imagem_pilha</span><span style=" font-family:'Sans Serif'; font-weight:600;"> e mais</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse pacotes 10.2 e 10.3</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Empacotador Fedora e relatórios de bugs</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Empacotador OpenSUSE 10.2</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Sugestões variadas</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR correções de bugs e sugestões</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">E também</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - - - - A&uthors - Á%utores - - - - &Thanks To - Agradecemos à + @@ -136,7 +94,7 @@ &Licenciamento - + &OK &OK @@ -145,8 +103,8 @@ BatchHDRDialog - Batch HDR Dialog - Diálogo HDR em Lote + Batch HDR + @@ -248,8 +206,8 @@ - &Hugin's align_image_stack - &Hugin's alinhar_imagem_pilha + Hugin's align_&image_stack + Hugin's alinar_&imagem_pilha @@ -262,84 +220,84 @@ &Cancelar - + &Start &Começar - + &Close &Fechar - + Progress Progresso - + Input/Output Entrada/Saída - + Folder where created HDRs are saved Pasta onde HDRs criados são salvos - - + + Select... Escolher... - + Folder where bracketed pictures are located (in alphabetical order) Pasta onde as imagens enquadradas estão localizadas (em ordem alfabética) - + Input folder: Pasta de entrada: - + Output folder: Pasta de saída: - + Anti-ghosting Anti-ghosting - + Artifact-free High Dynamic Range Imaging Artefato-livre Alto Alcance Dinâmico de Imagem - + Threshold Limiar - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Limiar utilizado pelo algoritmo auto anti-ghosting. Um limiar inferior significa um tratamento mais agressivo, mas que pode reduzir a gama dinâmica final. Use o botão &quot;Recompute&quot; para ver a cobertura real de manchas e ajuste o limite de acordo</p></body></html> - + O. Gallo and others O. Gallo e outros - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Habilitar o algorítimo auto anti-ghosting</p></body></html> - + Auto anti-ghosting Auto anti-ghosting @@ -550,7 +508,7 @@ - + Specify output folder for the tone mapped files Especifique a pasta de saída para o tom dos arquivos mapeados @@ -560,93 +518,93 @@ Selec&ionar... - - + + Width of tonemapped image in percent of original image Largura da imagem mapeada em porcentagem da imagem original - + % % - + Output Format: Formato de Saída: - + Image format of tonemapped images Formato da imagem de imagens mapeadas - + Image format options Opções de formato de imagem - + Conversion Log Registro de Conversão - + Batch operations report Reportar operações em lote - - S&how only: - Apenas mostrar: + + Show onl&y: + - + Filter messages based on severity Filtra mensagens baseado na gravidade - + All messages Todas as mensagens - + Errors only Somente erros - + Success messages Mensagens bem sucedidas - - &Filter log messages: - &Filtrar registro de mensagens: + + Filter &log messages: + - + Clear filter text Limpar filtro de texto - + Overall completion progress Progresso geral completado - + &Cancel &Cancelar - + Start batch tone mapping Comece o mapeamento em lote de tom - + &Start &Começar @@ -1154,46 +1112,6 @@ Erro: Qualidade html deve estar entre [1..4]. - - Error: Quality must be in the range [1..100]. - Erro: Qualidade deve estar entre [1..100]. - - - - Error: Threshold must be in the range [0..1]. - Erro: Limite deve estar entre [0..1]. - - - - - Starting aligning... - Começando a alinhar... - - - - Resizing to width %1. - Redimensionando para largura %1. - - - - Applying gamma %1. - Aplicando gamma %1. - - - - -Image %1 successfully saved - -Imagem %1 foi salva - - - - -ERROR: Cannot save to file: %1 - -ERRO: Não é possível salvar no arquivo: %1 - - Error: Alignment engine not recognized. Erro: Motor de alinhamento não reconhecido. @@ -1230,11 +1148,21 @@ Erro: O arquivo especificado com configurações TMO não pôde ser analisado!: %1 + + Error: Quality must be in the range [1..100]. + Erro: Qualidade deve estar entre [1..100]. + + Error: Unknown tiff format. Erro: Formato tiff desconhecido. + + Error: Threshold must be in the range [0..1]. + Erro: Limite deve estar entre [0..1]. + + Error: The number of EV values specified is different from the number of input files. Erro: O número de valores especificados de EV é diferente do número de arquivos de entrada. @@ -1255,6 +1183,12 @@ Valores EV foram atribuídos. + + + Starting aligning... + Começando a alinhar... + + Failed executing align_image_stack Falha na execução do Alinhamento_de Pilha_ de Imagem @@ -1270,47 +1204,71 @@ Criando no HDR (na memória). - + Saving to file %1. Salvando no arquivo %1. - + Image %1 saved successfully Imagem %1 salva com sucesso - + Could not save %1 Não é possível salvar %1 - + NOT Saving HDR image to file. %1 Não salvou imagem HDR no arquivo. %1 - + Exporting to HTML Exportando para HTML - + ERROR: directory %1 must exist ERRO: diretório %1 deve existir - + Tonemapping requested, saving to file %1. Mapeamento de tom solicitado, salvando no arquivo %1. - + + Resizing to width %1. + Redimensionando para largura %1. + + + + Applying gamma %1. + Aplicando gamma %1. + + + + +Image %1 successfully saved + +Imagem %1 foi salva + + + + +ERROR: Cannot save to file: %1 + +ERRO: Não é possível salvar no arquivo: %1 + + + Tonemapping NOT requested. Mapeamento de tom NÃO requerido. - + Failed loading images Carregando imagens com falha @@ -1333,27 +1291,27 @@ %Abrir - + Open an existing HDR image Abra uma imagem HDR existente - + &New &Novo - + Create a new HDR image from one or more images Criar uma nova imagem HDR a partir de uma ou mais imagens - + &Cancel &Cancelar - + Cancel the drag and drop process and return to the main window Cancelar o processo de arrastar e soltar e voltar para a janela principal @@ -1442,9 +1400,108 @@ Ferramentas de Edição + + Images List + Lista de Imagens + + + + Ed&itable + Ed&itável + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A imagem selecionada é a que você pode mudar e pintar a máscara anti-ghosting em.</p></body></html> + + + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + A imagem selecionada nessa lista pode ser traduzido para cima, baixo, esquerda e direita usando os controles abaixo. +Histograma desta imagem é exibida no widget acima. + + + + Select the previous image in both lists + Selecione a imagem anterior em ambas as listas + + + + Use this button to move the selection to the previous image in both lists. + Utilize este botão para mover a seleção da imagem anterior em ambas as listas. + + + + Select the next image in both lists + Selecione a próxima imagem em ambas as listas + + + + Use this button to move the selection to the next image in both lists. + Utilize este botão para mover a seleção da próxima imagem em ambas as listas. + + - Refere&nce - Refere&ncia + Referen&ce + + + + + The reference image is the one currently selected + A imagem de referência é a que está selecionada + + + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A imagem selecionada na lista serve como uma posição de referência para a imagem editável</p></body></html> + + + + Crop the stack of images after a selection with the left mouse button has been made + Corte a pilha de imagens depois de selecionar com o botão esquerdo do mouse + + + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Ao clicar neste botão você será capaz de cortar todas as imagens para o tamanho que você selecionou previamente com o botão esquerdo do mouse (pressione e segure o botão esquerdo do mouse e mova o ponteiro para selecionar a área de corte, em seguida, pressione este botão). + + + + &Crop All Images + &Corte Todas as Imagens + + + + Ctrl+X + Ctrl+X + + + + &Anti-Ghosting + &Anti-Ghosting + + + + &Save Images + &Salvar Imagens + + + + Ctrl+S + Ctrl+S @@ -1452,310 +1509,211 @@ Visualização e Navegação - + Fit to window Ajustar à janela - + &Fit to Window &Ajustar à janela - + Fill the window Preencha a janela - + Fill &window Preencher &janela - + Original size Tamanho original - + Origina&l Size Origina&l Tamanho - + &Mode: &Modo: - + Difference (E-P) Diferença (E-P) - + Overlay (E+P) Capa (E+P) - + Editable Only (E) Somente Editável (E) - + Pivot Only (P) Somente Pivô (P) - + Antighosting Mask Máscara Antighosting - + Brush Escova - + Lasso Laço - - Images List - Lista de Imagens - - - - Ed&itable - Ed&itável - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A imagem selecionada é a que você pode mudar e pintar a máscara anti-ghosting em.</p></body></html> - - - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - A imagem selecionada nessa lista pode ser traduzido para cima, baixo, esquerda e direita usando os controles abaixo. -Histograma desta imagem é exibida no widget acima. - - - - Select the previous image in both lists - Selecione a imagem anterior em ambas as listas - - - - Use this button to move the selection to the previous image in both lists. - Utilize este botão para mover a seleção da imagem anterior em ambas as listas. - - - - Select the next image in both lists - Selecione a próxima imagem em ambas as listas - - - - Use this button to move the selection to the next image in both lists. - Utilize este botão para mover a seleção da próxima imagem em ambas as listas. - - - - The reference image is the one currently selected - A imagem de referência é a que está selecionada - - - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A imagem selecionada na lista serve como uma posição de referência para a imagem editável</p></body></html> + + Anti Ghosting + Anti Ghosting - + O. Gallo and others O. Gallo e outros - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> Habilitar o algorítimo auto anti-ghosting - + Auto anti-ghosting Auto anti-ghosting - + Artifact-free HDR Imaging Artefato-livre HDR de Imagem - + Total Patches: Total de Manchas: - + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Mostra a quantidade de manchas em percentual calculado pelo algoritmo de auto anti-ghosting</p></body></html> - + Threshold Limiar - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> <html><head/><body><p>Limiar utilizado pelo algoritmo auto anti-ghosting. Um limiar inferior significa um tratamento mais agressivo, mas que pode reduzir a gama dinâmica final. Use o botão &quot;Recompute&quot; para ver a cobertura real de manchas e ajuste o limite de acordo</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Limiar utilizado pelo algoritmo auto anti-ghosting. Um limiar inferior significa um tratamento mais agressivo, mas que pode reduzir a gama dinâmica final. Use o botão &quot;Recompute&quot; para ver a cobertura real de manchas e ajuste o limite de acordo</p></body></html> - + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> <html><head/><body><p>Clique aqui para recalcular correções com base no limiar selecionado</p></body></html> - + Recompute Recompute - - Crop the stack of images after a selection with the left mouse button has been made - Corte a pilha de imagens depois de selecionar com o botão esquerdo do mouse - - - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Ao clicar neste botão você será capaz de cortar todas as imagens para o tamanho que você selecionou previamente com o botão esquerdo do mouse (pressione e segure o botão esquerdo do mouse e mova o ponteiro para selecionar a área de corte, em seguida, pressione este botão). - - - - &Crop All Images - &Corte Todas as Imagens - - - - Ctrl+X - Ctrl+X - - - - &Anti-Ghosting - &Anti-Ghosting - - - - &Save Images - &Salvar Imagens - - - - Ctrl+S - Ctrl+S - - - + Mask Máscara - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> <html><head/><body><p>Adicionar máscara usando laço ou pincel</p></body></html> - - <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - <html><head/><body><p>Remover máscara com laço ou pincel</p></body></html> - - - - Anti Ghosting - Anti Ghosting - - - + &Add &Adicionar - + + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> + <html><head/><body><p>Remover máscara com laço ou pincel</p></body></html> + + + R&emove R&emover - - + + <html><head/><body><p>Size of the brush</p></body></html> <html><head/><body><p>Tamanho do pincel</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> <html><head/><body><p>Intensidade da máscara (semi transparente)</p></body></html> - + Size: Tamanho: - - - + + + px px - + S&trength: V&igor: - + Lasso - Draw a free hand selection area Laço - Desenhar área de seleção à mão livre - + Brush - Paint the mask using the brush Pincel - Pinte a máscara usando o pincel - + Save mask Salvar máscara - + Apply saved mask Aplique a máscara salva - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1770,7 +1728,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicando e segurando o botão esquerdo do mouse você será capaz de selecionar uma área de corte.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1781,7 +1739,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Valores de deslocamento para a imagem editável selecionada</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> @@ -1792,107 +1750,107 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aqui o usuário pode visualizar e definir os valores de deslocamento para a imagem editável selecionada</p></body></html> - + Shift values for editable image Valores de deslocamento para a imagem editável - + Reset the shift values for the currently selected movable image Restabelecer valores de deslocamento para a imagem móvel selecionada - + &Reset &Resetar - + Reset the shift values for all the images Restabelecer valores de deslocamento para todas as imagens - + Reset &All Restabelecer &Todas - + Hori&zontal: Hori&zontal: - + Vertica&l: Vertica&l: - + Insert an horizontal shift value for the currently selected movable image Insira um valor de deslocamento horizontal para a imagem móvel selecionada - + Insert a vertical shift value for the currently selected movable image Insira um valor de deslocamento vertical para a imagem móvel selecionada - + Move up of 1 pixel the currently selected movable image Mover 1 pixel para cima na imagem móvel selecionada - + Move down of 1 pixel the currently selected movable image Mover 1 pixel para baixo na imagem móvel selecionada - + Move right of 1 pixel the currently selected movable image Mover 1 pixel para a direita na imagem móvel selecionada - + > > - + Move left of 1 pixel the currently selected movable image Mover 1 pixel para a esquerda na imagem móvel selecionada - + < < - + Histogram Histograma - + Get information about the graphical elements Obter informações sobre os elementos gráficos - + &What's this? &O que é isso? - + Shift+F1 Shift+F1 - + &Next > &Próximo > - + &Cancel &Cancelar @@ -1900,78 +1858,78 @@ ExportToHtmlDialog - + Export HDR to HTML Exportar HDR para HTML - + Export to HTML Exportar para HTML - + Web page: Página Web - + Output folder: Pasta de saída: - + Open web browser Abrir navegador web - + Size: Tamanho: - + % % - + Quality: Qualidade: - + Images folder: Pasta de Imagens: - + Select... Escolher... - + Cancel Cancel - + Export Exportar - + Choose a directory Escolher Pasta - - + + Error: Erro: - + must be a directory. deve ser um diretório. @@ -2161,7 +2119,7 @@ GenericViewer - + Pan the image to a region Deslocar a imagem para uma região @@ -2169,7 +2127,7 @@ HdrCreationManager - + HdrCreationManager::loadFilesDone(): Error loading a file. Hdr Gerenciador de Criação::carga Arquivos Concluída(): Erro ao carregar um arquivo. @@ -2183,42 +2141,42 @@ HdrViewer - + &Mapping: &Mapeamento: - + Histogram: Histograma: - + Linear Linear - + Gamma 1.4 Gamma 1.4 - + Gamma 1.8 Gamma 1.8 - + Gamma 2.2 Gamma 2.2 - + Gamma 2.6 Gamma 2.6 - + Logarithmic Logarítmico @@ -2256,87 +2214,87 @@ Limpar Lista - + Preview Visualização - + Selected Image &Exposure Imagem Selecionada &Exposição - + EV: EV: - + Alignment Alinhamento - + &MTB &MTB - + &Autoalign images &Autoalinhar imagens - + Hugin's align_&image_stack Hugin's alinar_&imagem_pilha - + Auto-crop Auto-corte - + Anti-ghosting Anti-ghosting - + Threshold Limiar - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> <html><head/><body><p>Limiar utilizado pelo algoritmo auto anti-ghosting. Um limiar inferior significa um tratamento mais agressivo, mas que pode reduzir a gama dinâmica final.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Limiar utilizado pelo algoritmo auto anti-ghosting. Um limiar inferior significa um tratamento mais agressivo, mas que pode reduzir a gama dinâmica final. Use o botão &quot;Recompute&quot; para ver a cobertura real de manchas e ajuste o limite de acordo</p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) Ativar o algoritmo de auto anti-ghosting (por O. Gallo e outros) - + Auto anti-ghosting Auto anti-ghosting - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! Ative essa opção para alinhamento manual ou manual Anti-ghosting. É destinado aos usuários com um forte conhecimento das diferentes etapas de criação de HDR! - + Advanced Editing Tools Ferramentas Avançadas de Edição - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2349,17 +2307,17 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Inicie o carregamento de um conjunto de imagens com diferentes exposições</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Escolha Configurações para Criação de HDR - + Profile Perfil - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2372,332 +2330,326 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">O primeiro perfil pré-definido na lista geralmente leva a resultados melhores. Mude somente se a imagem HDR resultante não for boa o suficiente.</span></p></body></html> - + Profile 1 Perfil 1 - + Profile 2 Perfil 2 - + Profile 3 Perfil 3 - + Profile 4 Perfil 4 - + Profile 5 Perfil 5 - + Profile 6 Perfil 6 - + Use this only if the default profiles above do not yield good results Use somente se os perfis padrão acima não produzirem bons resultados - + Use Custom Configuration Use a Configuração Personalizada - + HDR Creation Model Modelo de Criação HDR: - + Debevec Debevec - + Robertson (Simple) Robertson (Simples) - + Robertson (Response Recovery) Robertson (Recuperação Responsiva) - + Weighting Function Função de Ponderação: - + Triangular Triangular - + Gaussian Gaussian - + Plateau Plateau - + Flat Plano - + Response Curve Curva de Resposta - + Linear Linear - + Gamma Gamma - + Log Registro - + sRGB sRGB - + Custom Personalizado - + Response Curve Input File Arquivo de Entrada da Curva de Resposta - + Response Curve Output File Arquivo de Saída da Curva de Resposta - + Save As... Salvar como... - + Save Settings Salvar Configurações - + &Next > &Próximo > - + &Cancel &Cancelar - + Image Filename Nome do Arquivo de Imagem - + Exposure Exposição - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Todos os formatos (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; TIFF Images (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Imagens RAW (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Selecione as imagens de entrada - + Unknown Desconhecido - + Loading... Carregando... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> <font color="#FF0000"><h3><b>AVISO:</b></h3></font> Luminance HDR não foi capaz de encontrar o relevante <b>EXIF</b> etiquetas para as imagens seguintes:<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. </ul><hr>Você ainda pode continuar criando um HDR. Para fazer isso você tem que inserir<b>manualmente</b> o EV (valor de exposição) ou valores de diferença de interrupção<hr>Se você quiser Luminance HDR para fazer isso <b>automaticamente</b>, você tem que carregar as imagens que tenham, pelo menos, os seguintes dados exif: <ul><li>Viés de Exposição</li></ul><hr><b>HINT:</b>Perder dados EXIF ​​geralmente acontece quando você pré-processa suas imagens.<br>Você pode executar uma <b>cópia de um-para-outro dos dados exif</b>entre dois conjuntos de imagens através da <b>Ferramentas-> Copiar Dados Exif ...</b> item de menu. - + EXIF data not found Dados EXIF ​​não encontrados - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Imagens Carregadas.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Para continuar você precisa configurar manualmente os valores de exposição.<br><font color="#FF0000">%1</font> valores ainda requeridos.</b></h3></center> - + Loading Error: Erro ao carregar: - + Start loading a set of images with different exposure Inicie o carregamento de um conjunto de imagens com diferentes exposições - - - - + + + Error... Erro... - - align_image_stack failed to align images. - align_image_stack não conseguiu alinhar imagens. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Falha ao iniciar a aplicação externa "<em>align_image_stack</em>".<br>Por favor, leia "Ajuda -> Conteúdo ... -> Configuração -> Ferramentas externas" para obter mais informações. - + The external application "<em>align_image_stack</em>" crashed... A aplicação externa "<em>align_image_stack</em>" caiu... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... Ocorreu um erro desconhecido durante a execução do "<em>align_image_stack</em>" aplicação... - + Now click on next button Agora clique no próximo botão - + Aligning... Alinhando... - - + + &Finish &Finalizar - + Load camera response curve file Carga do arquivo curva de resposta da câmara - + Camera response curve (*.m);;All Files (*) Curva de resposta da câmera (* .m);; Todos os arquivos (*) - + Invalid Response Curve File Arquivo Curva de Resposta Inválido - + Invalid Response Curve File: please try a different file Arquivo Curva de Resposta Inválido: tente um arquivo diferente - + Save a camera response curve file Salvar um arquivo curva de resposta da câmera - + Camera response curve (*.m) Curva de resposta da câmera (*.m) - + Weights: Pesos: - + - Response curve: - Curva de resposta: - + - Model: - Modelo: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b> Todos os valores de EV foram definidos.<br>Agora clique no botão Avançar.</b></h3></font></center> @@ -2712,7 +2664,7 @@ - + &File &Arquivo @@ -2738,7 +2690,7 @@ - + &Print... &Imprimir... @@ -2754,7 +2706,7 @@ - + &Find... &Localizar... @@ -2785,7 +2737,7 @@ - + &Add Bookmark &Adicionar Favorito @@ -2801,7 +2753,7 @@ - + D&elete All E&xcluir Tudol @@ -2871,94 +2823,94 @@ I&mprimir Pré-visualização - + Help SideBar Ajuda Barra Lateral - + LuminanceHDR Online Help LuminanceHDR Ajuda Online - + &Edit &Editar - + &View E&xibir - - + + &Bookmarks &Favoritos - + &Quit &Sair - + Find &Next Localizar &Avançar... - + Find &Previous Localizar &Retornar... - + &Contents &Conteúdo - + &Search &Busca - + &Delete &Excluir - + Find Localizar - + Search Term: Termo de Pesquisa: - + New Bookmark Novo Favorito - + New Bookmark's Title: Novo Título do Favorito: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Desculpe, nenhum manual está instalado!</p><p>Entre em contato com seu provedor de pacote ou equipe LuminanceHDR se construiu sua própria aplicação</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR - Navegador de Ajuda - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -3094,10 +3046,11 @@ LdrViewer - - - LDR image [%1 x %2] - LDR imagem [%1 x %2] + + + + LDR image [%1 x %2]: %3 + @@ -3175,7 +3128,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -3185,858 +3138,944 @@ &Ferramentas - + &Help &Ajuda - + + Luminance &HDR Online + + + + &Windows &Janelas - + &View E&xibir - + HDR &Histogram &Histograma HDR - + &Toolbars &Barras de Ferramentas - + &Preview Panel &Painel de Pré-visualização - + &File &Arquivo - + &Edit &Editar - + Main Toolbar Barra de Ferramentas Principal - + &New HDR image... &Nova imagem HDR... - + New HDR image Nova imagem HDR - - + + Create a new HDR image from a set of LDR or Raw images Criar uma nova imagem de HDR a partir de um conjunto de LDR ou imagens Raw - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Criar uma nova imagem HDR a partir de um conjunto de JPEG, Raw, ou arquivos 8/16 bpc TIFF - + Ctrl+N Ctrl+N - + &Open HDR image... &Abra imagem HDR... - + Open HDR image Abra imagem HDR - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Carregue um arquivo de imagem HDR existente (OpenEXR, Radiance RGBE, fluxo PFS, RAW ou TIFF) - + Ctrl+O Ctrl+O - + &Save as... &Salvar como... - + Save as... Salvar como... - - - + + + Save image (HDR or LDR) Salvar imagem (HDR or LDR) - + Ctrl+S Ctrl+S - + &Quit &Fechar - - + + Quit Luminance HDR Sair do Luminance HDR - + Exit Sair - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Gire no sentido a&nti-horário - + Rotate counter-clockwise Gire no sentido anti-horário - - - + + + Rotate counter-clockwise the HDR image Gire a imagem HDR no sentido anti-horário - + < < - + Rotat&e clockwise Gir&e no sentido horário - + Rotate clockwise Gire no sentido horário - - - + + + Rotate clockwise the HDR image Gire a imagem HDR no sentido horário - + > > - + &Low Dynamic Range &Baixa Faixa Dinâmica - + L L - + &Fit to Dynamic Range &Ajustar para a Faixa Dinâmica - + Fit to dynamic range Ajustar para o intervalo dinâmico - + \ \ - + &Shrink Dynamic Range &Reduzir a Faixa Dinâmica - + [ [ - + &Extend Dynamic Range &Ampliar a Faixa Dinâmica - + ] ] - + &Decrease Exposure &Reduzir Exposição - + 0 0 - + &Increase Exposure &Aumentar Exposição - + 9 9 - + &Contents... &Conteúdo... - + About... Sobre... - - - + + + Open user manual for Luminance HDR Abrir Manual do usuário do Luminance HDR - + F1 F1 - + &Normal Size &Tamanho Normal - + Normal size Tamanho normal - - - + + + View HDR image at its normal size Ver imagem HDR no seu tamanho normal - + O O - + Zoom &In &Aumentar - - - + + + Zoom in Aumentar - + + + - + Zoom &Out &Diminuir - - - + + + Zoom out Diminuir - + - - - + &Fit in Window &Ajustar na Janela - - + + Fit in Window Ajustar na Janela - - + + Make the HDR image fit its window Faça a imagem HDR se ajustar à janela - + W W - + &Preferences... &Preferências... - + Luminance Options Luminance Opções - - - + + + Set various options of Luminance Definir várias opções do Luminance - + Ctrl+P Ctrl+P - + &Resize... &Redimensionar... - + Resize the HDR image Redimensionar a imagem HDR - - - + + + Change size of the HDR image Alterar o tamanho da imagem HDR - + Ctrl+R Ctrl+R - + Copy &Exif Data... Copiar &Dados Exif... - + Copy Exif Data Copiar Dados Exif - - - + + + Copy Exif data between two sets of files Copiar dados EXIF entre dois conjuntos de arquivos - + Ctrl+E Ctrl+E - + &About Qt &Sobre Qt - + Show information about Qt Mostrar informações sobre Qt - - + + Show information about Qt library that is used by Luminance Mostrar informações sobre a biblioteca Qt, que é usada pelo Luminance - + Text &under Icons Texto &abaixo de Ícones - + &Icons Only &Somente Ícones - + &Text Only &Somente Texto - + Text &Alongside Icons Texto &Ao lado dos Ícones - + &Batch Tone Mapping... &Mapeamento de Tom em Lote... - + Convert multiple HDR images to LDR Converta múltiplas imagens HDR para LDR - - + + Convert multiple HDR images to LDR using existing settings files Converta múltiplas imagens HDR para LDR usando arquivos de configurações existentes - + Ctrl+B Ctrl+B - + &What's This? &O que é isso? - - + + Get verbose information about user interface elements Obter informações detalhadas sobre os elementos de interface de usuário - + Shift+F1 Shift+F1 - + About &Luminance HDR Sobre &Luminance HDR - + Show information about Luminance HDR Mostrar informações sobre Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Mostrar informações sobre Luminance HDR, seus autores e colaboradores - + + Ctrl+I + + + + Save HDR image &preview... Salve imagem HDR &visualização... - - - + + + Save the current HDR Preview to an LDR file Salve a visualização HDR para um arquivo LDR - + &Projective Transformation... &Transformação Projetiva... - - - + + + Apply projective transformation to the current HDR image Aplicar transformação projetiva à imagem HDR atual - + + Ctrl+J + + + + &Crop to Selection &Cortar para Seleção - + Crop to Selection Cortar para Seleção - - + + Crop the image to selection rectangle Cortar a imagem para o retângulo de seleção - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Clique e arraste a área interior da imagem para criar uma seleção, então use este botão para cortar a nova imagem HDR - + + Ctrl+X + Ctrl+X + + + Remove &Selection Remover &Seleção - + Remove selection rectangle Remover retângulo de seleção - - + + Remove selection rectangle from image area Remover retângulo de seleção da área da imagem - + + Ctrl+Z + + + + Make a &Donation Faça uma &Doação - + Ctrl+D Ctrl+D - + &Lock Viewers &Bloquear Visualizadores - + Synchronize viewers mode (fit, fill or 1:1). Sincronizar modo espectadores (ajustar, preencher ou 1:1). - + Lock the images for sync view Bloqueie as imagens para visualização sync - + S S - + &Minimize &Minimizar - + Ma&ximize Ma&ximizar - + &Bring All to Front &Trazer Tudo para Frente - + &Show Preview Panel &Mostrar Painel de Pré-visualização - + Show/Hide Preview Panel Painel de Exposição/Ocultação de Visualização - + Ctrl+V Ctrl+V - + Adjust &Levels Ajustar &Níveis - - + + Adjust Levels Ajustar Níveis - - + + Tune the histogram for the current LDR Sintonize o histograma para a LDR atual - + + Ctrl+L Ctrl+L - + Save All Salvar Tudo - - + + Save All LDR files Salve todos os arquivos LDR - + &Remove Tab &Remover Guia - + Ctrl+W Ctrl+W - + Fill &Window - + Fill window with the current viewer Preencha a janela com o visualizador atual - + F F - + Batch &HDR... Lote &HDR... - + Ctrl+H Ctrl+H - + Soft Proofing Prova Suave - + Gamut Check Gama de Inspeção - + &Show on the right - + Show &on the bottom - + &Realtime Previews - + &Update - + &FITS Importer... - + Import four FITS files representing luminosity, red, green and blue channels Importação de quatro arquivos FITS representando luminosidade, canais vermelho, verde e azul - + Ctrl+F Ctrl+F - + White Balance Balanço de branco - + Fix color cast, can be slow Molde de fixar cor, pode ser lento - + E&xport to HTML - + Export to web page with embedded HDR viewer - + &Show Full Screen - + F11 F11 - + Show &Image Full Screen - + F10 F10 - - &Supported RAW Cameras + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site - - Lists all cameras supported by the program + + Open Main Web Site with the System Browser - + Ready. Now open an existing HDR image or create a new one! Pronto. Agora abra uma imagem HDR existente ou crie uma nova! - + All HDR formats Todos os formatos HDR - + Load one or more HDR images... Carregue uma ou mais imagens HDR... - + Save files in Salvar arquivos em - - + + Failed to save %1 - + Done! Feito! - + Aborting... Abortando... - - + + Untitled Sem título - + Cropped Image Imagem recortada - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! Parece que você está executando a versão de 32-bit <strong>Luminance HDR</strong> em um sistema de 64 bits. <br>Faça o download da <strong>64-bit</strong> versão do <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> para obter a melhor experiência Luminance HDR! - + Unsaved changes... Alterações não salvas... - + This HDR image has unsaved changes.<br>Do you want to save it? Esta imagem HDR tem alterações não salvas.<br>Você quer salvá-las? - + Fattal Warning Fattal Aviso - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -4045,22 +4084,22 @@ Você quer continuar? - + Untitled %1 Sem título %1 - + Error: %1 Erro: %1 - + Untitled HDR Sem título HDR - + FITS Image Imagem FITS @@ -4157,16 +4196,16 @@ - - - - - - - - - - + + + + + + + + + + ... ... @@ -4361,12 +4400,12 @@ Manual - + Temperature (Kelvin) Temperatura (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4381,22 +4420,22 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Defina aqui a temperatura da cor em Kelvin.</p></body></html> - + Green Verde - + Set here the green component to set magenta color cast removal level Defina aqui o componente verde para definir o nível de remoção da cor magenta - + Highlights Altas Luzes - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4419,32 +4458,32 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Reconstruir</span>:reconstruir luzes usando um valor de nível</p></body></html> - + Solid White Branco Sólido - + Do not transform Não transformar - + Blend Mesclar - + Reconstruct Reconstruir - + Level Nível - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4459,22 +4498,22 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Especifique o nível de reconstruir luz. Valores baixos favorecem os brancos e valores altos favorecem cores.</p></body></html> - + Correct false colors in highlights Corrigir cores falsas em luzes - + Auto Brightness Brilho Automático - + Brightness Brilho - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4489,7 +4528,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Especifique o nível de brilho na imagem de saída. O padrão é 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4504,12 +4543,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use um valor específico ponto preto para decodificar imagens RAW. Se você definir esta opção para off, o valor do Ponto Preto será calculado automaticamente.</p></body></html> - + Black Preto - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4524,7 +4563,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Especifique o valor específico do ponto preto da imagem de saída.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4539,12 +4578,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Quando destaques aparecem rosa, é necessário diminuir o nível de saturação. A saturação padrão geralmente está correta.</span></p></body></html> - + Saturation Saturação - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4559,12 +4598,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Especifique o nível de saturação. Quando destaques aparecem rosa, é necessário diminuir o nível de saturação.</span></p></body></html> - + NR and CA Correction Correção NR e CA - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4579,12 +4618,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets para apagar o ruído, preservando detalhes reais .</p></body></html> - + Enable noise reduction Ativar redução de ruído - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4599,12 +4638,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Defina aqui o valor do limiar de redução de ruído a ser usado.</p></body></html> - + Threshold: Limiar: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4619,12 +4658,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Amplia as camadas raw vermelha e azul pelos fatores dados, tipicamente 0.999 para 1.001, para corrigir a aberração cromática.</p></body></html> - + Enable Chromatic Aberration correction Ativar a correção de Aberração Cromática - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4639,7 +4678,7 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Defina aqui o fator de ampliação da camada de vermelho</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4654,44 +4693,44 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Defina aqui o fator de ampliação da camada azul</p></body></html> - + Red Component Componente Vermelho - + Blue Component Componente Azul - - - + + + Browse... Procurar... - + Camera profile Perfil de câmera - + Monitor Profile Monitorar Perfil - + Printer profile Perfil de impressora - + align_image_stack command line arguments argumentos de linha de comando align_image_stack - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -4704,12 +4743,12 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Ler </span><span style=" font-family:'Sans Serif'; font-style:italic;">Ajuda &gt; Conteúdo &gt; Configurando Luminance &gt; ferramentas Externas</span><span style=" font-family:'Sans Serif';"> para saber mais sobre os argumentos de linha de comando align_image_stack</span></p></body></html> - + &Cancel &Cancelar - + &OK &OK @@ -4724,18 +4763,18 @@ Para que as configurações tenham efeito, reinicie o aplicativo! - - + + Choose a directory Escolher Pasta - + Open ICC Profile Abrir perfil ICC - + Color profile (*.icc *.ICC *.icm *.ICM) Perfil de cor (*.icc *.ICC *.icm *.ICM) @@ -4843,7 +4882,7 @@ &Cancelar - + &OK &OK @@ -4889,9 +4928,9 @@ - - - + + + Writing: @@ -4924,62 +4963,62 @@ Não consigo executar a transformação de cor. Por favor seleccione outro perfil de monitor. - + Triangular Triangular - + Plateau Plateau - + Gaussian Gaussian - + Flat Plano - + Linear Linear - + Gamma Gamma - + Logarithmic Logarítmico - + sRGB sRGB - + From Calibration/Input File De Calibração/Arquivo de Entrada - + Debevec Debevec - + Robertson Robertson - + Robertson Response Calculation Robertson Cálculo Responsivo @@ -5162,12 +5201,12 @@ Adaptação Luminosa - + Option -v -a... Opção -v -a... - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. LuminanceHDR requer align_image_stack a ser executado nas opções com "v" e sem "-a" . Opções de linha de comando foram corrigidos. @@ -5232,7 +5271,7 @@ Salve a imagem HDR como... - + Save as... Salvar como... @@ -5295,7 +5334,7 @@ &Cancelar - + &Scale &Escala @@ -5516,37 +5555,37 @@ SupportedCamerasDialog - + List of supported cameras Lista das câmeras suportadas - + TextLabel - - <b>Luminance HDR</b> - <b>Luminance HDR</b> + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + - + With LibRaw version - + models listed - + search... - + OK OK @@ -5560,6 +5599,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Limiar + + + TiffModeDialog @@ -5570,543 +5622,532 @@ TonemappingPanel - + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Aqui você pode carregar e salvar um arquivo de configurações de mapeamento de tom.<br>Você também pode aplicar o conteúdo do arquivo de configurações carregado. + + + + Tone Mapping Settings + Configurações para Mapeamento de Tom + + + + Save current parameters to a text file + Salve os parâmetros atuais num arquivo de texto + + + + Save current parameters (pregamma and TMO) to a text file. + Salve os parâmetros atuais (pregamma e TMO) num arquivo de texto. + + + + Load an existing text file containing pregamma and TMO settings + Carregue um arquivo de texto contendo configurações pregamma e TMO + + + + Load an existing text file containing pregamma and TMO settings. + Carregue um arquivo de texto contendo configurações pregamma e TMO. + + + + Save current parameters + Salve os parâmetros atuais + + + + Load saved parameters + Carregar os parâmetros salvos + + + + Export + Exportar + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + Abre o diretório de exportação atual. Isto pode ser alterado nas preferências! + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Aberto</span></a></p></body></html> + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Aqui você pode aplicar uma correção gamma para o HDR.<br>A correção gamma será aplicada antes do mapeamento de tom. + + + + Process + Processo + + + + Result Si&ze + Tama&nho final + + + + + Gamma applied before tonemapping + Gamma aplicada antes do mapeamento de tom + + + + Pre-&gamma + Pre-&gamma + + + + Restore pregamma's default value (1) + Restaurar o valor padrão de pregamma (1) + + + + Size of the resulting LDR image + Tamanho da imagem LDR resultante + + + + Here you can choose the size of the resulting LDR image. + Aqui você pode escolher o tamanho da imagem LDR resultante. + + + + Set Custom Output Size + Configurar o tamanho personalizado da saída + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Ao clicar neste botão você será capaz de inserir um <i>width</i>valor para o tamanho da imagem LDR resultante.<br>Depois de pressionar Enter (ou Return) um valor de altura será computada automaticamente e o novo tamanho adicionado à lista. + + + + Start tonemapping (CTRL+T) + Comece o mapeamento de tom (CTRL+T) + + + + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image + Use parâmetros atuais acima (operador de mapeamento de tom e pregamma) para computar uma imagem LDR + + + + &Update preview + &Atualizar visualização + + + + Ctrl+T + Ctrl+T + + + + Update current LDR + Atualize LDR atual + + + + Auto Levels + Níveis Automáticos + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Mapa de tom - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + Ferradans Ferradans - + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + Mai - + Operator Operador - + Contrast Factor Fator de contraste - + Saturation Factor Fator de saturação - + Detail Factor Fator de detalhe - + Contrast Equalization Equalização do Contraste - + Predefined Display Mostrador predefinido - + Lcd Office Escritório lcd - + Lcd Lcd - + Lcd Bright Lcd Brilhante - + CRT CRT - - + + Color Saturation Saturação de cor - + Contrast Enhancement Melhoria do Contraste - + Enable Luminace Level Habilitar Nível do Luminace - + Luminance Level Nível do Luminance - + Alpha Alpha - + Beta Beta - + Noise Reduction Redução de ruído - + Version 2.3.0 Version 2.3.0 - + Inverse Alpha - + Rho Rho - + Bias Viés - + Spatial Kernel Sigma Ordenamento do Kernel Sigma - + Range Kernel Sigma Intervalo do Kernel Sigma - + Base Contrast Contraste da Base - + Key Value Valor da Chave - + Phi Pi - + Use Scales Use Escalas - + Range Intervalo - + Lower Scale Escala Inferior - + Upper Scale Escala Superior - + Brightness Brilho - + Chromatic Adaptation Adaptação Cromática - + Light Adaptation Adaptação Luminosa - + Local Contrast Threshold Limiar do Contraste Local - + Simple Simples - + Equation Number Número da Equação - + Eqn &2 - + Eqn &4 - + Multiplier Multiplicador - + Local Tone Mapping Mapeamento de Tom Local - + Auto Cone/Rod Auto Cone/Haste - + Cone Level Nível do Cone - + Rod Level Nível da Haste - + This operator has no options - + Restore operator's default values Restaurar os valores padrão da operadora - + Restore Restaurar - + Previous applied settings Configurações anteriores aplicadas - + Previous Anterior - + Next applied settings Configurações próximas aplicadas - + Next Próximo - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Aqui você pode carregar e salvar um arquivo de configurações de mapeamento de tom.<br>Você também pode aplicar o conteúdo do arquivo de configurações carregado. - - - - Tone Mapping Settings - Configurações para Mapeamento de Tom - - - - Save current parameters to a text file - Salve os parâmetros atuais num arquivo de texto - - - - Save current parameters (pregamma and TMO) to a text file. - Salve os parâmetros atuais (pregamma e TMO) num arquivo de texto. - - - - &Save to File - &Salvar em Arquivo - - - - Load an existing text file containing pregamma and TMO settings - Carregue um arquivo de texto contendo configurações pregamma e TMO - - - - Load an existing text file containing pregamma and TMO settings. - Carregue um arquivo de texto contendo configurações pregamma e TMO. - - - - &Load from File - &Carregar do Arquivo - - - - Save current parameters - Salve os parâmetros atuais - - - - - ... - ... - - - - Load saved parameters - Carregar os parâmetros salvos - - - - Export - Exportar - - - - Fast export - - - - - Opens the current export direcotory. This can be changed in the preferences! - Abre o diretório de exportação atual. Isto pode ser alterado nas preferências! - - - - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Aberto</span></a></p></body></html> - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Aqui você pode aplicar uma correção gamma para o HDR.<br>A correção gamma será aplicada antes do mapeamento de tom. - - - - Process - Processo - - - - Result Si&ze - Tama&nho final - - - - - Gamma applied before tonemapping - Gamma aplicada antes do mapeamento de tom - - - - Pre-&gamma - Pre-&gamma - - - - Restore pregamma's default value (1) - Restaurar o valor padrão de pregamma (1) - - - - Size of the resulting LDR image - Tamanho da imagem LDR resultante - - - - Here you can choose the size of the resulting LDR image. - Aqui você pode escolher o tamanho da imagem LDR resultante. - - - - Set Custom Output Size - Configurar o tamanho personalizado da saída - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Ao clicar neste botão você será capaz de inserir um <i>width</i>valor para o tamanho da imagem LDR resultante.<br>Depois de pressionar Enter (ou Return) um valor de altura será computada automaticamente e o novo tamanho adicionado à lista. - - - - Start tonemapping (CTRL+T) - Comece o mapeamento de tom (CTRL+T) - - - - Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - Use parâmetros atuais acima (operador de mapeamento de tom e pregamma) para computar uma imagem LDR - - - - &Update preview - &Atualizar visualização - - - - Ctrl+T - Ctrl+T - - - - Update current LDR - Atualize LDR atual - - - - Auto Levels - Níveis Automáticos - - - + Queue size: %1 Tamanho da fila: %1 - + TM Database Problem TM Problema de Banco de Dados - + The database used for saving TM parameters cannot be opened. Error: %1 O banco de dados usado para salvar os parâmetros TM não pode ser aberto. Erro: %1 - + Load a tonemapping settings text file... Carregar um arquivo de texto de configurações do mapeamento de tom... - - + + LuminanceHDR tonemapping settings text file (*.txt) arquivo texto(*.txt) de configurações de mapeamento de tom LuminanceHDR - - - - + + + + Aborting... Abortando... - + File is not readable (check existence, permissions,...) O arquivo não pode ser lido (cheque existência, permissões, ...) - + Save tonemapping settings text file to... Salve arquivo texto de configurações de mapeamento de tom para... - + File is not writable (check permissions, path...) O arquivo não é gravável (cheque permissões, caminho...) - + File is not readable (check permissions, path...) O arquivo não pode ser lido (cheque permissões, caminho...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Erro: O formato do arquivo de configurações de mapeamento de tom mudou. Este arquivo (antigo) não pode ser usado nesta versão do LuminanceHDR. Criar um novo. - + Custom LDR size LDR tamanho personalizado - + Enter the width of the new size: Digite a largura do novo tamanho: @@ -6251,7 +6292,7 @@ &Cancelar - + &Start &Começar diff -Nru luminance-hdr-2.5.0/i18n/lang_ro.ts luminance-hdr-2.5.1/i18n/lang_ro.ts --- luminance-hdr-2.5.0/i18n/lang_ro.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_ro.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,21 +1,19 @@ - - - + AboutLuminance - About Luminance - Despre Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -27,10 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -38,70 +36,65 @@ A&utori - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &Mulţumiri Către - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement &Licența - + &OK &OK @@ -110,291 +103,291 @@ BatchHDRDialog - Batch HDR Dialog - Lot De Dialog HDR + Batch HDR + - + Number of bracketed images: Numărul imaginilor din paranteză: - - + + Select the number of bracketed pictures used to create the HDRs Selectează numărul imaginilor din paranteză folosite pentru a crea HDR-urile - + Output Destinație - + + Choose an HDR output file format + Alege un format HDR pentru exportare + + + Predefined profile: Profil predefinit: - - Choose an HDR output file format - Alege un format HDR pentru exportare + + Output format: + Formatul exportat: - + Choose one of the creation predefined profiles. See documentation for more information. Alege unul dinte profilurile predefinite. Vezi documentaţia pentru mai multe informaţii. - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - Formatul exportat: - - - + Alignment Aliniere - + Auto align the bracketed pictures Auto aliniază imaginile din paranteză - + Auto-align images Auto aliniază imaginile - + Use MTB (Median Threshold Bitmap) engine Foloseşte MTB (Median Threshold Bitmap) motor - - MTB - MTB + + &MTB + - + Use Hugin's align_image_stack engine Foloseşte Hugin's align_image_stack engine - - Hugin's align_image_stack - align_image_stack a Hugin + + Hugin's align_&image_stack + - + Auto-crop - + - - Progress - - - - + &Cancel - + - + &Start - + - + &Close - + - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + Fişierul unde HDR-urile create sunt salvate - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + Fişierele unde pozele din paranteză sunt localizate (în ordine alfabetică) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + - - Auto anti-ghosting - + + Output folder: + - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - Fişierul unde HDR-urile create sunt salvate + + Artifact-free High Dynamic Range Imaging + - - - Select... - + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - Fişierele unde pozele din paranteză sunt localizate (în ordine alfabetică) + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - + + O. Gallo and others + - - Output folder: - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory - + - + Choose a output directory - + - - - + + + Warning - + - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? - + - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... Procesarea a început... - + Loading files... - + - + Completed with errors Complet dar cu erori - + Completed without errors Complet fără erori - + Error: missing EXIF data Eroare: lipseşte EXIF - + Aligning... Aliniere... - + Creating HDR... Se Creează HDR... - + Doing auto anti-ghosting... - + - + Written Scris - + Error: Eroare: - + Aborting... Anulând... @@ -404,7 +397,7 @@ Batch Tone Mapping - + @@ -419,32 +412,32 @@ Add Directory (Alt+D) - + Alt+D - + Add Files (Alt+F) - + Alt+F - + Remove Files (Alt+R) - + Alt+R - + @@ -454,42 +447,42 @@ Add Directory (Alt+I) - + Alt+I - + Add Files (Alt+L) - + Alt+L - + Add from Database (Alt+B) - + Alt+B - + Remove Settings (Alt+M) - + Alt+M - + @@ -497,11 +490,6 @@ Listă de fișiere de setări de mapare de tonuri ce vor fi folosite pentru maparea fiecărei imagini HDR - - Specify output folder for the tone mapped files - Specifică dosarul destinație pentru fișierele mapate de tonuri - - Output Destinație @@ -509,156 +497,174 @@ Output Image Width: - + + + + + Output Folder: + - + + + Specify output folder for the tone mapped files + Specifică dosarul destinație pentru fișierele mapate de tonuri + + + + Selec&t... + + + + + + Width of tonemapped image in percent of original image + + + + % - + - + Output Format: - + - - Output Folder: - + + Image format of tonemapped images + - - Selec&t... - + + Image format options + - + Conversion Log Jurnal conversie - + Batch operations report Raport operații în serie - - &Show only: - + + Show onl&y: + - + Filter messages based on severity Filtrează mesajele pe baza severității - + All messages Toate mesajele - + Errors only Doar erorile - + Success messages Mesajele de succes - - &Filter log messages: - &Filtrează mesajele jurnal: + + Filter &log messages: + - + Clear filter text Șterge text filtru - + Overall completion progress Progres îndeplinire global - + &Cancel - + - + Start batch tone mapping Începe mapare de tonuri în serie - + &Start - + - + Using %n thread(s) - - - - - + - - - + + + Choose a directory Alege un dosar - + All HDR images Toate imaginile HDR - + Select input images Alege imaginile sursă - + Load tone mapping settings text files... Încarcă fișierele text de setări pentru maparea de tonuri... - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... Procesând... - + Start processing... Începe procesarea... - + Close Închide - + &Done &Gata - + All tasks completed. Toate sarcinile finalizate. - + Aborting... Anulând... @@ -694,474 +700,581 @@ CommandLineInterfaceManager - - Error: Alignment engine not recognized. - Eroare: Motor de aliniere nerecunoscut. - - - - Error: Unknown weight function specified. - Eroare: funcția de ponderi necunoscută. - - - - Error: Unknown response curve specified. - Eroare: Curba de răspuns necunoscută. - - - - Error: Unknown HDR creation model specified. - Eroare: Model de creere HDR necunoscut. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + Utilizare: %1 [OPȚIUNI]...[FIȘIERESURSĂ]... - - Error: Unknown tone mapping operator specified. - Eroare: Operator mapare de tonuri necunoscut. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + - - + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + Eroare: Motor de aliniere nerecunoscut. + + + + Error: Unknown weight function specified. + Eroare: funcția de ponderi necunoscută. + + + + Error: Unknown response curve specified. + Eroare: Curba de răspuns necunoscută. + + + + Error: Unknown HDR creation model specified. + Eroare: Model de creere HDR necunoscut. + + + + Error: Unknown tone mapping operator specified. + Eroare: Operator mapare de tonuri necunoscut. + + + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - Eroare: Numărul de valori EV specificat este diferit de numărul de fișiere sursă. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + Eroare: Numărul de valori EV specificat este diferit de numărul de fișiere sursă. - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Eroare: Informațiile Exif lipsesc din imagini și valorile EV nu sunt specificate în linia de comandă, renunțând. - + EV values have been assigned. - + - + + + Starting aligning... + + + + Failed executing align_image_stack Eșuat în a executa align_image_stack - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + - + + ERROR: directory %1 must exist + + + + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - EROARE: Nu pot salva în fișier: %1 + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - Utilizare: %1 [OPȚIUNI]...[FIȘIERESURSĂ]... + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - Trage și mută + Choose action + @@ -1191,7 +1304,7 @@ &Cancel - + @@ -1202,35 +1315,27 @@ DonationDialog - + Luminance HDR - Make a Donation Luminance HDR - Donează - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> este software open source al cărui dezvoltare a necesitat sute de oră de muncă.<br /><br />Dacă îți place, dacă îl folosești în munca ta și îți place să fie treptat îmbunătățit, <br> te rog să ajuți autorii cu o donație.<br /><br />Vrei să faci o donație la Luminance HDR acum?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! Da, aș vrea! - + Ask me again later Întreabă-mă din nou mai târziu - + No, Stop bothering me! Nu, nu mă mai deranja! @@ -1238,47 +1343,47 @@ EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable Ed&itabil - + R&eference R&eferință - + Select the previous image in both lists Selectează imaginea precedentă în ambele liste - + Select the next image in both lists Selectează imaginea următoare în ambele liste - + Choose a directory and a prefix Alege un dosar și un prefix @@ -1286,102 +1391,25 @@ EditingToolsDialog - + Editing Tools Unelte editare - - Visualization and Navigation - Vizualizare și navigare - - - - Fit to window - Potrivește în fereastră - - - - &Fit to Window - + + Images List + Listă imagini - - Fill the window - + + Ed&itable + Ed&itabil - - Fill &window - - - - - Original size - Dimensiunea originală - - - - Origina&l Size - Origina&lă - - - - &Mode: - - - - - Difference (E-P) - Diferență (E-P) - - - - Overlay (E+P) - Suprapus (E+P) - - - - Editable Only (E) - Doar editabil (E) - - - - Pivot Only (P) - Doar pivot (P) - - - - Antighosting Mask - Mască anti-reflexii - - - - - Brush - - - - - - Lasso - - - - - Images List - Listă imagini - - - - Ed&itable - Ed&itabil - - - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1389,47 +1417,47 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Imaginea curent selectată este aceea pe care o poți deplasa și pe care să desenezi masca anti reflexii.</p></body></html> - + The image currently selected in this list can be translated up,down,left and right using the controls below. This image's histogram is diplayed in the widget above. Imaginea selectată în această listă poate fi deplasată în sus, în jos, în stânga și în dreapta folosind controalele de mai jos. Histograma acestei imagini este afișată în widgetul de mai sus. - + Select the previous image in both lists Selectează imaginea precedentă în ambele liste - + Use this button to move the selection to the previous image in both lists. Utilizează acest buton pentru a muta selecția la imaginea precedentă în ambele liste. - + Select the next image in both lists Selectează imaginea următoare în ambele liste - + Use this button to move the selection to the next image in both lists. Utilizează acest buton pentru a muta selecția la imaginea următoare în ambele liste. - - R&eference - R&eferință + + Referen&ce + - + The reference image is the one currently selected Imaginea referință este cea selectată curent - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1437,189 +1465,254 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Imaginea selectată curent în această listă servește ca poziție de referință pentru imaginea editabilă</p></body></html> - - Tools - Unelte + + Crop the stack of images after a selection with the left mouse button has been made + Taie stiva de imagini după ce s-a făcut o selecție cu butonul stânga maus - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Cu acest buton vei putea tăia toate imaginile la dimensiunea selectată cu butonul stânga maus (apasă și ține butonul stânga maus și mută indicatorul pentru a selecta o suprafață de tăiat, apoi apasă acest buton). - - O. Gallo and others - + + &Crop All Images + &Taie toate imaginile - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Ctrl+X + Ctrl+X - - Auto anti-ghosting - + + &Anti-Ghosting + - - Artifact-free HDR Imaging - + + &Save Images + &Salvează imaginile - - Total Patches: - + + Ctrl+S + Ctrl+S - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Visualization and Navigation + Vizualizare și navigare - - Threshold - + + Fit to window + Potrivește în fereastră - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + &Fit to Window + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + Fill the window + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + Fill &window + - - Recompute - + + Original size + Dimensiunea originală - - Crop the stack of images after a selection with the left mouse button has been made - Taie stiva de imagini după ce s-a făcut o selecție cu butonul stânga maus + + Origina&l Size + Origina&lă - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Cu acest buton vei putea tăia toate imaginile la dimensiunea selectată cu butonul stânga maus (apasă și ține butonul stânga maus și mută indicatorul pentru a selecta o suprafață de tăiat, apoi apasă acest buton). + + &Mode: + - - &Crop All Images - &Taie toate imaginile + + Difference (E-P) + Diferență (E-P) + + + + Overlay (E+P) + Suprapus (E+P) + + + + Editable Only (E) + Doar editabil (E) + + + + Pivot Only (P) + Doar pivot (P) + + + + Antighosting Mask + Mască anti-reflexii + + + + Brush + + + + + Lasso + - Ctrl+X - Ctrl+X + Anti Ghosting + - - &Anti-Ghosting - + + O. Gallo and others + - - &Save Images - &Salvează imaginile + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Ctrl+S - Ctrl+S + + Auto anti-ghosting + + + + + Artifact-free HDR Imaging + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Total Patches: + + + + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + - + + Threshold + + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + + + + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + + + + + Recompute + + + + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + &Adaugă - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - &Șterge + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Dimensiune: - - - + + + px px - - &Strength: - &Tărie: + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1631,10 +1724,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Dând clic și ținând apăsat butonul stânga maus vei putea selecta o arie de tăiere.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1642,10 +1735,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Deplasează valorile pentru imaginea editabilă selectată</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1653,99 +1746,188 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Aici utilizatorul poate vedea și seta valorile deplasării pentru imaginea editabilă selectată</p></body></html> - + Shift values for editable image Valori deplasare pentru imaginea editabilă - + Reset the shift values for the currently selected movable image Restabilește valorile deplasării pentru imaginea mutabilă selectată - + &Reset - + - + Reset the shift values for all the images Restabilește valoarile deplasării pentru toate imaginile - + Reset &All Restabilește To&ate - - &Horizontal: - &Orizontal: + + Hori&zontal: + - - &Vertical: - &Vertical: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Inserează o valoare deplasare orizontală pentru imaginea mutabilă selectată - + Insert a vertical shift value for the currently selected movable image Inserează o valoare deplasare verticală pentru imaginea mutabilă selectată - + Move up of 1 pixel the currently selected movable image Mută în sus 1 pixel imaginea mutabilă selectată - + Move down of 1 pixel the currently selected movable image Mută în jos 1 pixel imaginea mutabilă selectată - + Move right of 1 pixel the currently selected movable image Mută la dreapta 1 pixel imaginea mutabilă selectată - + + > + > + + + Move left of 1 pixel the currently selected movable image Mută la stânga 1 pixel imaginea mutabilă selectată - + + < + < + + + Histogram - + - + Get information about the graphical elements Obține informații despre elementele grafice - + &What's this? &Ce este aceasta? - + Shift+F1 Shift+F1 - + &Next > Î&nainte> - + &Cancel - + + + + + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + + + + + Open web browser + + + + + Size: + Dimensiune: + + + + % + + + + + Quality: + Calitate: + + + + Images folder: + + + + + Select... + + + + + Cancel + + + + + Export + + + + + Choose a directory + Alege un dosar + + + + + Error: + Eroare: + + + + must be a directory. + @@ -1753,185 +1935,186 @@ Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... - + Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + - - - + + + Preview - + - + Previews - + - - + + Alignment Aliniere - + Auto-crop - + - - MTB - MTB + + &MTB + - - Hugin's align_image_stack - align_image_stack a Hugin + + Hugin's align_&image_stack + - + &Autoalign images &Aliniază automat imaginile - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green Verde - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region Deplasează imaginea la o regiune @@ -1939,9 +2122,14 @@ HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -1984,7 +2172,7 @@ Logarithmic - + @@ -2001,110 +2189,110 @@ - Currently Loaded &Files - &Fișierele curent încărcate + &Currently Loaded Files + - + Add Images Adaugă Imagini - + Remove Selected Image - + - + Clear List - + - + Preview - + - + Selected Image &Exposure &Expunearea imaginii selectate - + EV: EV: - + Alignment Aliniere - - MTB - MTB + + &MTB + - + &Autoalign images &Aliniază automat imaginile - - Hugin's align_image_stack - align_image_stack a Hugin + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2113,355 +2301,349 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Încarcă un set de imagini cu expuneri diferite</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2]Alege setările pentru crearea HDR - + Profile - + - - Use Custom Configuration - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Primul profil predefinit dă de obicei cele mai bune rezultate. Schimbă-l doar dacă imaginea HDR rezultată nu este suficient de bună.</span></p></body></html> - - HDR Creation Model - + + Profile 1 + Profil 1 - - Robertson (Simple) - + + Profile 2 + Profil 2 - - Robertson (Response Recovery) - + + Profile 3 + Profil 3 - - Weighting Function - + + Profile 4 + Profil 4 - - Flat - + + Profile 5 + Profil 5 - - Response Curve - + + Profile 6 + Profil 6 - - sRGB - + + Use this only if the default profiles above do not yield good results + Utilizează aceasta doar dacă profilele implicite de mai sus nu dau rezultate bune - - Custom - + + Use Custom Configuration + - - Response Curve Input File - + + HDR Creation Model + - - Response Curve Output File - + + Debevec + Debevec - - Use this only if the default profiles above do not yield good results - Utilizează aceasta doar dacă profilele implicite de mai sus nu dau rezultate bune + + Robertson (Simple) + - - Linear - Liniară + + Robertson (Response Recovery) + - - Debevec - Debevec + + Weighting Function + - + Triangular Triunghiulară - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Primul profil predefinit dă de obicei cele mai bune rezultate. Schimbă-l doar dacă imaginea HDR rezultată nu este suficient de bună.</span></p></body></html> + + Gaussian + Gaussian - - Profile 1 - Profil 1 + + Plateau + Platou - - Profile 2 - Profil 2 + + Flat + - - Profile 3 - Profil 3 + + Response Curve + - - Profile 4 - Profil 4 + + Linear + Liniară - - Profile 5 - Profil 5 + + Gamma + Gamma - - Profile 6 - Profil 6 + + Log + Log - - Gaussian - Gaussian + + sRGB + - - Plateau - Platou + + Custom + - - Gamma - Gamma + + Response Curve Input File + - - Log - Log + + Response Curve Output File + - + Save As... - + - + Save Settings - + - + &Next > Î&nainte> &Cancel - + - + Image Filename Nume fișier imagine - + Exposure Expunere - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; Imagini TIFF (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + - + Select the input images Selectează imaginile sursă - + Unknown - + - + Loading... Se Încarcă... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found Nu am găsit informațiile EXIF - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Imagini încărcate.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Pentru a continua trebuie să setezi manual valorile expunererii.<br><font color="#FF0000">%1</font> valori încă necesare.</b></h3></center> - + Loading Error: Se Încarcă Eroarea: - + Start loading a set of images with different exposure Începe să încarci un set de imagini cu expuneri diferite - - - - + + + Error... Eroare... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Eşuat în a porni aplicaţie externă. Te rog foloseşte: Conţinut-Ajutor-Setări-Unelte Externe pentru mai multe informaţii. - + The external application "<em>align_image_stack</em>" crashed... Aplicația externă "<em>align_image_stack</em>" a eșuat... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... A apărut o eroare necunoscută la execuția aplicației "<em>align_image_stack</em>"... - + Now click on next button Acum apasă pe butonul următor - - + + Aligning... + Aliniere... + + + + &Finish &Finalizare - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - - - - - Aligning... - Aliniere... + - + Weights: Ponderi: - + - Response curve: - Curbă de răspuns: - + - Model: - Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Toate valorile EV au fost setate.<br>Acum apasă butonul Înainte.</b></h3></font></center> @@ -2469,153 +2651,259 @@ HelpBrowser - + Luminance HDR Help Ajutor Luminance HDR - + + + &File + &Fișier + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Ajutor Luminance - - + + &Print... &Tipărește... - + + Ctrl+P + Ctrl+P + + + &Exit &Ieșire - - + + &Find... &Caută... - + + Ctrl+F + + + + Find &Next... Caută &următorul... - + + F3 + + + + Find &Previous... Caută &precedentul... - - &Add - &Adaugă + + Shift+F3 + - + - &Delete - &Șterge + &Add Bookmark + &Adaugă semn de carte - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All Șt&erge Tot - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + Help SideBar Bară laterală ajutor - + LuminanceHDR Online Help Ajutor online LuminanceHDR - - &File - &Fișier - - - + &Edit &Editare - + &View &Vizualizare - - + + &Bookmarks &Semne de carte - + &Quit &Ieșire - + Find &Next Caută &următorul - + Find &Previous Caută &precedentul - + &Contents &Conținut - + &Search &Căutare - - &Add Bookmark - &Adaugă semn de carte + + &Delete + &Șterge - + Find Caută - + Search Term: Temen căutare: - + New Bookmark Semn de carte nou - + New Bookmark's Title: Titlu semn de carte: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Nici un manual nu este instalat!</p><p>Contactează furnizorul de pachete sau echipa LuminanceHDR dacă ai construit aplicația personal</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR - Navigator ajutor - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2627,43 +2915,39 @@ HelpSideBar - - Contents - Conținut - - - + + &Contents &Conținut - + Se&arch Căut&are - + Searching is case insensitive Căutarea nu este sensibilă la majuscule - + &Search &Căutare - - + + 1 1 - + Book&marks Se&mne de carte - + &Add &Adaugă @@ -2673,7 +2957,7 @@ &Șterge - + R&emove All Șt&erge tot @@ -2683,22 +2967,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2706,7 +2990,7 @@ Unknown - + @@ -2724,17 +3008,17 @@ Quality: - Calitate: + Calitate: File size: - + Unknown - + @@ -2744,7 +3028,7 @@ &Cancel - + @@ -2755,24 +3039,25 @@ LdrViewer - - - LDR image [%1 x %2] - Imagine LDR [%1 x %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Nivele și gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2780,10 +3065,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Ajustează nivele culori</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2791,25 +3076,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Nivele sursă</span></p></body></html> - + Clip black Taie negrul - + Gamma Gamma - + Clip White Taie albul - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2817,17 +3102,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Nivele destinație</span></p></body></html> - + &Reset - + - + &Cancel - + - + &OK &OK @@ -2836,7 +3121,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2846,1362 +3131,1498 @@ &Unelte - + &Help &Ajutor - + + Luminance &HDR Online + + + + &Windows &Ferestre - + &View &Vizualizare - + HDR &Histogram &Histogramă HDR - + &Toolbars &Bare de unelte - - Preview Panel - + + &Preview Panel + - + &File &Fișier - + &Edit &Editare - + Main Toolbar - + - + &New HDR image... Imagine HDR &nouă... - + New HDR image Imagine HDR nouă - - + + Create a new HDR image from a set of LDR or Raw images Crează o imagine HDR nouă dintr-un set de imagini LDR sau Raw - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Crează o imagine HDR dintr-un set de fișiere JPEG, Raw, sau TIFF 8/16 bpc - + Ctrl+N Ctrl+N - + &Open HDR image... &Deschide imagine HDR... - + Open HDR image Deschide imagine HDR - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Încarcă o imagine HDR existentă (OpenEXR, Radiance RGBE, PFS stream, RAW sau TIFF) - + Ctrl+O Ctrl+O - + &Save as... &Salvează ca... - + Save as... Salvează ca... - - - + + + Save image (HDR or LDR) Salvează imaginea (HDR sau LDR) - + Ctrl+S Ctrl+S - + &Quit &Ieșire - - + + Quit Luminance HDR Ieși din Luminance HDR - + Exit Ieșire - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Rotește c&ontrar orar - + Rotate counter-clockwise Rotește contrar orar - - - + + + Rotate counter-clockwise the HDR image Rotește imaginea HDR contrar orar - + < < - - Rotate c&lockwise - Rotește în sens o&rar + + Rotat&e clockwise + - + Rotate clockwise Rotește în sens orar - - - + + + Rotate clockwise the HDR image Rotește imaginea HDR în sens orar - + > > - - Low Dynamic Range - Interval dinamic redus (LDR) + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Potrivește în interval dinamic + + &Fit to Dynamic Range + - + Fit to dynamic range Potrivește în interval dinamic - + \ \ - - Shrink Dynamic Range - Reduce interval dinamic + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Extinde interval dinamic + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Reduce expunerea + + &Decrease Exposure + - + 0 0 - + &Increase Exposure &Mărește expunerea - + 9 9 - + &Contents... &Conținut... - + About... Despre... - - - + + + Open user manual for Luminance HDR Deschide manual utilizator pentru Luminance HDR - + F1 F1 - + &Normal Size - + - + Normal size Dimensiune normală - - - + + + View HDR image at its normal size Vezi imaginea HDR la dimensiunea ei normală - + O O - + Zoom &In - + - - - + + + Zoom in Mărește - + + + - + Zoom &Out - + - - - + + + Zoom out Micșorează - + - - - + &Fit in Window &Potrivește în fereastră - - + + Fit in Window Potrivește în fereastră - - + + Make the HDR image fit its window Fă ca imaginea HDR să se potrivească în fereastra ei - + W W - + &Preferences... &Preferințe... - + Luminance Options Opțiuni Luminance - - - + + + Set various options of Luminance Setează diverse opțiuni ale Luminance - + Ctrl+P Ctrl+P - + &Resize... &Redimensionează... - + Resize the HDR image Redimensionează imaginea HDR - - - + + + Change size of the HDR image Schimbă dimensiunea imaginii HDR - + Ctrl+R Ctrl+R - + Copy &Exif Data... Copiază date &exif... - + Copy Exif Data Copiază datele exif - - - + + + Copy Exif data between two sets of files Copiază datele exif între două seturi de fișiere - + Ctrl+E Ctrl+E - + &About Qt &Despre Qt - + Show information about Qt Arată informații despre Qt - - + + Show information about Qt library that is used by Luminance - + - + Text &under Icons Text &sub pictograme - + &Icons Only &Doar pictograme - + &Text Only Doar &text - + Text &Alongside Icons Text &lângă pictograme - + &Batch Tone Mapping... Mapare de tonuri în &serie... - + Convert multiple HDR images to LDR Convertește mai multe imagini HDR la LDR - - + + Convert multiple HDR images to LDR using existing settings files Convertește mai multe imagini HDR la LDR folosind fișiere de setări existente - + Ctrl+B Ctrl+B - + &What's This? &Ce-i asta? - - + + Get verbose information about user interface elements - + - + Shift+F1 Shift+F1 - + About &Luminance HDR Despre &Luminance HDR - + Show information about Luminance HDR Arată informații despre Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Arată informații despre Luminance HDR, autorii și contribuitorii săi - + + Ctrl+I + + + + Save HDR image &preview... Salvează &previzualizare imagine HDR... - - - + + + Save the current HDR Preview to an LDR file Salvează previzualizarea HDR curentă într-un fișier LDR - + &Projective Transformation... Transformare &proiectivă... - - - + + + Apply projective transformation to the current HDR image Aplică transformarea proiectivă imaginii HDR curente - + + Ctrl+J + + + + &Crop to Selection &Taie la selecție - + Crop to Selection Taie la selecție - - + + Crop the image to selection rectangle Taie imaginea la dreptunghiul selecției - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Clic și trage în interiorul suprafeței imaginii pentru a crea o selecție, apoi folosește acest buton pentru a tăia o imagine HDR nouă - + + Ctrl+X + Ctrl+X + + + Remove &Selection Șterge &selecție - + Remove selection rectangle Șterge dreptunghi selecție - - + + Remove selection rectangle from image area Șterge dreptunghi selecție din suprafața imaginii - + + Ctrl+Z + + + + Make a &Donation &Donează - + Ctrl+D Ctrl+D - - Lock Viewers - Blochează Vizualizatori + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). Sincronizează vizualizatori - mod (fit, fill ori 1:1). - + Lock the images for sync view Blochează imaginile pentru vizualizare sincronizată - - Minimize - Micşorează + + S + - - Maximize - Maximizează + + &Minimize + - - Bring All to Front - Adu Tot În Faţă + + Ma&ximize + - - Show Preview Panel - Arată Mereu Panoul De Previzualizare + + &Bring All to Front + + + + + &Show Preview Panel + - + Show/Hide Preview Panel Arată/Ascunde Panoul De Previzualizare - + Ctrl+V - + - + Adjust &Levels Ajutează &nivele - - + + Adjust Levels Ajustează nivele - - + + Tune the histogram for the current LDR Reglează histograma pentru imaginea LDR curentă - + + Ctrl+L Ctrl+L - + Save All Salvează toate - - + + Save All LDR files Salvează Toate Fişierele LDR - - Remove Tab - Înlătură Fereastră + + &Remove Tab + - + Ctrl+W - + - - Fill Window - Umple Fereastra + + Fill &Window + - + Fill window with the current viewer Umple Fereastra cu vizualizatorul curent - - Batch HDR... - Serie+HDR... + + F + + + + + Batch &HDR... + - + Ctrl+H - + - + Soft Proofing - + - + Gamut Check - + - - Show on the right - + + &Show on the right + - - Show on the bottom - + + Show &on the bottom + - - Realtime Previews - + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + - + Ctrl+F - + - + White Balance Balanţă Albă - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! Gata. Acum deschide o imagine HDR existentă sau crează una nouă! - + All HDR formats Toate formatele HDR - + Load one or more HDR images... Încarcă una sau mai multe imagini HDR... - + Save files in Salvează fișierele în - - Failed to save - Salvarea a eşuat + + + Failed to save %1 + - + Done! Realizat! - + Aborting... Anulând... - + + + Untitled + + + + Cropped Image Imagine tăiată - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Schimbări nesalvate... - + This HDR image has unsaved changes.<br>Do you want to save it? Această imagine HDR are schimbări nesalvate.<br>Vrei să o salvezi? - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - + - - - Untitled - - - - + Untitled %1 Fără titlu %1 - + Error: %1 Eroare: %1 - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences Preferințe - - External Tools - Unelte externe - - - + Tone Mapping Mapare de tonuri - + RAW Conversion Conversie RAW - + + Color Management + + + + + External Tools + Unelte externe + + + Interface Intefață - - Color Management - + + Fast export + - + Language Limba - + Default Previews Width Lăţimea De Bază Pentru Previzualizare - + px - + - + Always show Preview Panel Arată Mereu Panoul De Previzualizare - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - Fişier De Lucru Temporar + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + ... - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + Fişier De Lucru Temporar - - + + Amount of threads to use on multicore/SMP machines Număr de fire de execuție de folosit pe calculatoare multi-nucleu/SMP - + Batch Tonemapping Number of Threads Serie De Mapare De Tonuri Număr De Fire - + General General - + Quality: Calitate: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear Bilinear - + VNG - + - + PPG - + - + AHD - - - - - - - - - - - - - - - - - - ... - ... + - + Median: Mediană: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + - + Do not stretch or rotate pixels Nu întinde sau roti pixelii - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + - + Interpolate RGB using 4 colours Interpolare RGB folosind 4 culori - + Color correction - + - + White Balance Balanţă Albă - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + - + Predefined D65 Predefinit D65 - + Camera Camera - + Auto Auto - + Manual Manual - + Temperature (Kelvin) Temperatură - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + - + Green Verde - + Set here the green component to set magenta color cast removal level Setează aici componenta verde pentru a seta nivelul de înlăturare a culorii magenta - + Highlights Lumini - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Unclip</span>: leave highlights unclipped in various shades of pink</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blend</span>: Blend clipped and unclipped values together for a gradual fade to white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + - + Solid White Alb Solid - + Do not transform Nu transforma - + Blend Amestec - + Reconstruct Reconstrucţie - + Level Nivel - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + - + Correct false colors in highlights Culori false în lumini - + Auto Brightness Auto Luminozitate - + Brightness Strălucire - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + - + Black Negru - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + - + + Saturation + Saturaţie + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - - - - - Saturation - Saturaţie + - + NR and CA Correction Corecţie NR şi CA - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + - + Enable noise reduction Activează reducerea zgomotului de imagine - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + - + Threshold: Prag: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + - + Enable Chromatic Aberration correction Activează Corecţia Aberaţiilor Cromatice - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + - + Red Component Componentă Roşie - + Blue Component Componentă Albastră - - Monitor Profile - - - - - - + + + Browse... - + - + Camera profile Profil Cameră - + + Monitor Profile + + + + Printer profile - + - + align_image_stack command line arguments - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -4210,40 +4631,40 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Ajutor &gt; Conținut &gt; Setare Luminance &gt; Unelte externe</span><span style=" font-family:'Sans Serif';"> pentru a afla mai multe despre parametrii în linie de comandă ai align_image_stack</span></p></body></html> - + &Cancel - + - + &OK &OK - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Alege un dosar - + Open ICC Profile - + - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4251,105 +4672,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation Transformare proiectivă - + Projections Proiecții - + Source Projection: Proiecție sursă: - - + + Polar Polară - - + + Angular Angulară - - + + Cylindrical Cilindrică - - + + Mirror Ball Bilă oglindită - + Destination Projection: Proiecție destinație: - + Angles: Unghiuri: - - - - + + + + ° ° - + Bilinear Interpolation Interpolare biliniară - + Oversample factor: Factor supra-eșantionare: - + Rotation (degrees) Rotație (grade) - + Yaw: Derivă: - + Pitch: Înclinație: - + Roll: Rotație: - + &Cancel - + - + &OK &OK @@ -4357,17 +4778,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: Eroare: nu pot încărca fișierul de setări pentru mapare de tonuri: - + ERROR: File too old, cannot parse Tone Mapping Setting file: Eroare: Fișier prea vechi, nu pot parcurge fișierul de setări pentru maparea de tonuri: - + ERROR: cannot parse Tone Mapping Setting file: Eroare: nu pot parcurge fișierul de setări pentru maparea de tonuri: @@ -4375,400 +4796,433 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + Warning - + I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - Opţiune... + + Triangular + Triunghiulară - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Platou + + + + Gaussian + Gaussian + + + + Flat + + + + + Linear + Liniară + + + + Gamma + Gamma + + + + Logarithmic + + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + - + PreGamma=%1 - + - + Contrast Equalization Egalizare contrast - + Contrast - + - - + + Saturation Saturaţie - + Detail - + - + Luminance Level Nive luminanță - + Luminance Level=Auto - + - + Color Saturation Saturație culoare - + Contrast Enhancement Îmbunătățire contrast - + Alpha Alfa - + Beta Beta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + + + + + InvAlpha + - + simple - + - + Equation 2 Ecuaţie 2 - + Equation 4 Ecuaţie 4 - - + + Local - + - + Bias Tendință - + Spatial - + - - + + Range Interval - + Base - + - + Multiplier Multiplicator - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Strălucire - + Chromatic Adaptation Adaptare cromatică - + Light Adaptation Adaptare lumină - + + Option -v -a... + Opţiune... + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float Nu pot coverti %1 la virgulă mobilă - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 - + - + Using %n threads. - - - - - + - + Loading file %1 - + - + Successfully loaded file %1. - + - + All LDR formats Toate formatele LDR - + Save the LDR image as... Salvează imaginea LDR ca... - + Save the HDR image as... Salvează imaginea HDR ca... - + Save as... Salvează ca... - - - Triangular - Triunghiulară - - - - Plateau - Platou - - - - Gaussian - Gaussian - - - - Flat - - - - - Linear - Liniară - - - - Gamma - Gamma - - - - Logarithmic - - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - - ResizeDialog - + Scale Image Scalează imagine - + Hdr Image Size Dimensiune imagine Hdr - - Width: - Lățime: + + Restore original size + Restabilește dimensiunea originală + + + + &Reset + - + Switch between pixels or percentage Comută între pixeli sau procentaj - + Pixels Pixeli - + Percent Procent - - Height: - Înălțime: - - - + Result size Dimensiune rezultat - - Restore original size - Restabilește dimensiunea originală + + Height: + Înălțime: - - &Reset - + + Width: + Lățime: - + &Cancel - + - + &Scale &Scalează @@ -4781,184 +5235,194 @@ Parametrii Salvaţi - - + + Comment Comentariu - + TM Operator Operator TM - + Simple Simplu - + Equation 2 Ecuaţie 2 - + Local Contrast Threshold Prag contrast local - + Bias Tendință - + Spatial Kernel Sigma Sigma nucleu spațial - + Range Kernel Sigma Sigma nucleu interval - + Base Contrast Contrast bază - + Alpha Alfa - + Beta Beta - - + + Color Saturation Saturație culoare - + Noise Reduction Reducere de zgomot - + Old Fattal Fattal Vechi - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Egalizare contrast - + Contrast Factor Factor contrast - + Saturation Factor Factor saturație - + Detail Factor Factor detalii - + Contrast Enhancement Îmbunătățire contrast - + Luminance Level Nive luminanță - + Manual Luminance Level Manual Luminance Nivel - + Cone and Rod based on Luminance Con și tijă bazate pe luminanță - + Local Tonemapping Mapare Locală De Tonuri - + Cone Level Nivel con - + Rod Level Nivel tijă - + Multiplier Multiplicator - + Use Scales Utilizează scale - + Key Value Valoare cheie - + Phi Value Valoarea Phi - + Range Interval - + Lower Scale Scală joasă - + Upper Scale Scală înaltă - + Brightness Strălucire - + Chromatic Adaptation Adaptare cromatică - + Light Adaptation Adaptare lumină - + Pre-gamma Pre-gamma @@ -4966,17 +5430,55 @@ SavingParameters - + Saving Parameters Se Salvează Parametrii - + Enter a short comment for the saved parameters: Introdu un scurt comentariu pentru parametrii salvaţi: + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + + + + TMOProgressIndicator @@ -4985,508 +5487,555 @@ + ThresholdWidget + + + Frame + + + + + Threshold + + + + TiffModeDialog Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - Operatori mapare de tonuri și opțiunile lor + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Aici poți încărca și salva un fișier de setări pentru mapare de tonuri.<br>Poți deasemenea aplica conținutul fișierului de setări curent încărcat. + + + + Tone Mapping Settings + Setări mapare de tonuri + + + + Save current parameters to a text file + Salvează parametrii curenți într-un fișier text + + + + Save current parameters (pregamma and TMO) to a text file. + Salvează parametrii curenți (pregamma și TMO) într-un fișier text. + + + + Load an existing text file containing pregamma and TMO settings + Încarcă un fișier text existent conținând setări pregamma și TMO + + + + Load an existing text file containing pregamma and TMO settings. + Încarcă un fișier text existent conținând setări pregamma și TMO. + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Aici poți aplica corecția gamma la HDR.<br>Corecția gamma va fi aplicată înainte de maparea de tonuri. + + + + Process + Proces + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Restaurează valoare implicită pregamma (1) + + + + Size of the resulting LDR image + Dimensiunea imaginii LDR rezultate + + + + Here you can choose the size of the resulting LDR image. + Aici poți alege dimensiunea imaginii LDR rezultate. + + + + Set Custom Output Size + Setează Mărimea De Export + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Cu clic pe acest buton vei putea să inserezi o <i>lățime</i> pentru imaginea LDR rezultată.<br>După apasarea Enter o valoare a înălțimii va fi calculată automat și noua dimensiune va fi adăugată la listă. - + Start tonemapping (CTRL+T) - + - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image Utilizează parametrii curenți de mai sus (pregamma și operator mapare de tonuri) pentru a calcula o imagine LDR - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR Actualizează LDR-ul curent - + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Mapare De Tonuri - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator Operator - + Contrast Factor Factor contrast - + Saturation Factor Factor saturație - + Detail Factor Factor detalii - + Contrast Equalization Egalizare contrast - + Predefined Display Afișaj predefinit - + Lcd Office Lcd birou - + Lcd Lcd - + Lcd Bright Lcd strălucitor - + CRT CRT - - + + Color Saturation Saturație culoare - + Contrast Enhancement Îmbunătățire contrast - + Enable Luminace Level Activează Nivelul Luminance - + Luminance Level Nive luminanță - + Alpha Alfa - + Beta Beta - + Noise Reduction Reducere de zgomot - + Version 2.3.0 - + - + + Inverse Alpha + + + + + Rho + + + + Bias Tendință - + Spatial Kernel Sigma Sigma nucleu spațial - + Range Kernel Sigma Sigma nucleu interval - + Base Contrast Contrast bază - + Key Value Valoare cheie - + Phi Phi - + Use Scales Utilizează scale - + Range Interval - + Lower Scale Scală joasă - + Upper Scale Scală înaltă - + Brightness Strălucire - + Chromatic Adaptation Adaptare cromatică - + Light Adaptation Adaptare lumină - + Local Contrast Threshold Prag contrast local - + Simple Simplu - + Equation Number Număr ecuație - - Eqn 2 - Ecț 2 + + Eqn &2 + - - Eqn 4 - Ecț 4 + + Eqn &4 + - + Multiplier Multiplicator - + Local Tone Mapping Mapare de tonuri locală - + Auto Cone/Rod - + - + Cone Level Nivel con - + Rod Level Nivel tijă - + + This operator has no options + + + + Restore operator's default values Restabilește valorile implicite ale operatorilor - + Restore Restabilește - + Previous applied settings Precedentele setări aplicate - + Previous Precedent - + Next applied settings Următoarele setări aplicate - + Next Următor - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Aici poți încărca și salva un fișier de setări pentru mapare de tonuri.<br>Poți deasemenea aplica conținutul fișierului de setări curent încărcat. - - - - Tone Mapping Settings - Setări mapare de tonuri - - - - Save current parameters to a text file - Salvează parametrii curenți într-un fișier text - - - - Save current parameters (pregamma and TMO) to a text file. - Salvează parametrii curenți (pregamma și TMO) într-un fișier text. - - - - &Save to File - &Salvează ca fişier - - - - Load an existing text file containing pregamma and TMO settings - Încarcă un fișier text existent conținând setări pregamma și TMO - - - - Load an existing text file containing pregamma and TMO settings. - Încarcă un fișier text existent conținând setări pregamma și TMO. - - - - &Load from File - &Încarcă din Fişier - - - - Save current parameters - - - - - - ... - ... - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Aici poți aplica corecția gamma la HDR.<br>Corecția gamma va fi aplicată înainte de maparea de tonuri. - - - - Process - Proces - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - - - - - Restore pregamma's default value (1) - Restaurează valoare implicită pregamma (1) - - - - Size of the resulting LDR image - Dimensiunea imaginii LDR rezultate - - - - Here you can choose the size of the resulting LDR image. - Aici poți alege dimensiunea imaginii LDR rezultate. - - - - Set Custom Output Size - Setează Mărimea De Export - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Cu clic pe acest buton vei putea să inserezi o <i>lățime</i> pentru imaginea LDR rezultată.<br>După apasarea Enter o valoare a înălțimii va fi calculată automat și noua dimensiune va fi adăugată la listă. + + Queue size: %1 + - + TM Database Problem TM Probleme Cu Baza De Date - + The database used for saving TM parameters cannot be opened. Error: %1 Baza de date folosită pentru a salva parametrii TM nu poate fi deschisă. Eroare: %1 - + Load a tonemapping settings text file... Încarcă un fișier setări text de mapare de tonuri... - - + + LuminanceHDR tonemapping settings text file (*.txt) Fișier setări text de mapare de tonuri Luminance HDR (*.txt) - - - - + + + + Aborting... Anulând... - + File is not readable (check existence, permissions,...) Fișierul nu este citibil (verifică existența, drepturi,...) - + Save tonemapping settings text file to... Salvează fișier setări text de mapare de tonuri în... - + File is not writable (check permissions, path...) Fișierul nu poate fi scris (verifică drepturi, cale...) - + File is not readable (check permissions, path...) Fișierul nu poate fi citit (verifică drepturi, cale...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size Dimensiune LDR customizată - + Enter the width of the new size: Introduce lățimea noii dimensiuni: @@ -5496,17 +6045,17 @@ Load Custom Settings - + Sort by - + Comments: - + @@ -5521,7 +6070,7 @@ Most Useful Operators - + @@ -5531,12 +6080,12 @@ Load - + Cancel - + @@ -5547,108 +6096,108 @@ Copiază date Exif - + From - + - - + + Append files to the list Adaugă fișiere în listă - - + + Remove selected file(s) from the list Șterge fișierele selectate din listă - - + + Move up selected file(s) Mută în sus fișierele selectate - - + + Move down selected file(s) Mută în jos fișierele selectate - + To - + - + Log Log - + Exif operations report Raport operații exif - - &Show only: - + + Show onl&y: + - + Filter messages based on severity Filtrează mesajele pe baza severității - + All messages Toate mesajele - + Errors only Doar erorile - - &Filter log messages: - &Filtrează mesajele jurnal: + + Filter &log messages: + - + Clear filter text Șterge text filtru - + Keep existing Exif tags in destination file Păstrează marcajele Exif existente în fișierul destinație - + &Cancel - + - + &Start - + - - + + All Supported formats Toate formatele acceptate - - + + Select the input images Selectează imaginile sursă - + &Done &Gata @@ -5659,30 +6208,36 @@ %1 License document not found, you can find it online: %2here%3 %2 and %3 are html tags - + + + + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + - + Donation Donaţie - + Would you like to donate? Ai vrea să donezi? - + Yes, I'd love to! Da, aș vrea! - + Stop Bothering Me Nu mă mai deranja - + Remind me later Aminteşte-mi mai târziu @@ -5692,18 +6247,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_ru.ts luminance-hdr-2.5.1/i18n/lang_ru.ts --- luminance-hdr-2.5.0/i18n/lang_ru.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_ru.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,25 +1,23 @@ - - - + AboutLuminance - About Luminance - О Luminance + About Luminance HDR + О Luminance HDR <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> @@ -31,10 +29,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -42,70 +40,65 @@ &Авторы - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + + + + + &Thanks To + &Благодарности - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - - - - - &Thanks To - &Благодарности +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog Журнал изменений - - http://qtpfsgui.sourceforge.net/updater/Changelog - http://qtpfsgui.sourceforge.net/updater/Changelog - - - + &License Agreement &Лицензионное соглашение - + &OK &ОК @@ -114,227 +107,228 @@ BatchHDRDialog - Batch HDR Dialog - Диалог пакетного создания HDR + Batch HDR + Пакетный HDR - + Number of bracketed images: Число изображений в вилке: - - + + Select the number of bracketed pictures used to create the HDRs Выберите число изображений в вилке для создания HDR'ов - + Output Сохранение полученных LDR-снимков - + + Choose an HDR output file format + Выберите формат для сохранения HDR + + + Predefined profile: Готовый профиль: - - Choose an HDR output file format - Выберите формат для сохранения HDR + + Output format: + Выходной формат: - + Choose one of the creation predefined profiles. See documentation for more information. - + Выберите один из готовых профилей для создания. +За более подробной информацией обратитесь к документации. - + Profile 1 Профиль 1 - + Profile 2 Профиль 2 - + Profile 3 Профиль 3 - + Profile 4 Профиль 4 - + Profile 5 Профиль 5 - + Profile 6 Профиль 6 - - Output format: - Выходной формат: - - - + Alignment Выравнивание - + Auto align the bracketed pictures Автоматически выравнивать изображения из вилки - + Auto-align images Автоматически выровнять изображения - + Use MTB (Median Threshold Bitmap) engine Использовать движок MTB (среднепороговая битовая карта) - - MTB - MTB + + &MTB + &MTB - + Use Hugin's align_image_stack engine Использовать движок align_image_stack из Hugin - - Hugin's align_image_stack - align_image_stack из hugin + + Hugin's align_&image_stack + align_&image_stack из Hugin - + Auto-crop Автокадрирование - - Progress - Продвижение - - - + &Cancel О&тменить - + &Start На&чать - + &Close &Закрыть - + + Progress + Продвижение + + + + Input/Output + Ввод/вывод + + + + Folder where created HDRs are saved + Папка, куда сохраняются готовые HDR'ы + + + + + Select... + Выбрать... + + + + Folder where bracketed pictures are located (in alphabetical order) + Папка, где находятся изображения из вилки (в алфавитном порядке) + + + + Input folder: + Входная папка: + + + + Output folder: + Выходная папка: + + + Anti-ghosting Антипризрак - + Artifact-free High Dynamic Range Imaging Безартефактное создание HDR - + Threshold Порог - - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Порог, используемый алгоритмом удаления «призраков». Более низкий порог означает более агрессивную обработку, но может сузить окончательный динамический диапазон. Используйте кнопку «Пересчитать», чтобы увидеть текущее покрытие заплатами и соответствующим образом подстроить порог.</p></body></html> - + O. Gallo and others O. Gallo с соавторами - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Включить алгоритм удаления «призраков»</p></body></html> - + Auto anti-ghosting Автоматический антипризрак - - Input/Output - Ввод/вывод - - - - Folder where created HDRs are saved - Папка, куда сохраняются готовые HDR'ы - - - - - Select... - Выбрать... - - - - Folder where bracketed pictures are located (in alphabetical order) - Папка, где находятся изображения из вилки (в алфавитном порядке) - - - - Input folder: - Входная папка: - - - - Output folder: - Выходная папка: - - - + Custom config %1 Пользовательская конфигурация %1 - + Choose a source directory Выберите исходный каталог - + Choose a output directory Выберите выходной каталог - - - + + + Warning Внимание - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? @@ -343,63 +337,63 @@ Продолжить? - - + + Total number of pictures must be a multiple of number of bracketed images. Общее число изображений должно быть кратно числу изображений в вилке. - + Started processing... Началась обработка... - + Loading files... Загружаются файлы... - + Completed with errors Завершено с ошибками - + Completed without errors Завершено без ошибок - + Error: missing EXIF data Ошибка: отсутствуют данные EXIF - + Aligning... Выполняется выравнивание... - + Creating HDR... Создаётся HDR... - + Doing auto anti-ghosting... Изгоняются призраки... - + Written Записано - + Error: Ошибка: - + Aborting... Прерывание... @@ -502,11 +496,6 @@ Список файлов с параметрами отображения тонов для каждого HDR-снимка - - Specify output folder for the tone mapped files - Укажите каталог для сохранения снимков с отображенными тонами - - Output Сохранение полученных LDR-снимков @@ -517,153 +506,171 @@ Ширина выходного изображения: - + + Output Folder: + Выходная папка: + + + + + Specify output folder for the tone mapped files + Укажите каталог для сохранения снимков с отображенными тонами + + + + Selec&t... + &Выбрать + + + + + Width of tonemapped image in percent of original image + Ширина отображённого изображения в процентах от оригинала + + + % % - + Output Format: Выходной формат: - - Output Folder: - Выходная папка: + + Image format of tonemapped images + Формат отображённых снимков - - Selec&t... - &Выбрать + + Image format options + Опции формата изображения - + Conversion Log Журнал работы - + Batch operations report Отчет о пакетном отображении тонов - - &Show only: + + Show onl&y: &Показывать: - + Filter messages based on severity Фильтровать сообщения по важности - + All messages Все сообщения - + Errors only Только ошибки - + Success messages Сообщения об успехе - - &Filter log messages: + + Filter &log messages: &Фильтр сообщений журнала: - + Clear filter text Сбросить текст фильтра - + Overall completion progress Общий прогресс выполнения - + &Cancel О&тменить - + Start batch tone mapping Запустить пакетное отображение тонов - + &Start На&чать - + Using %n thread(s) - - - - - + - - - + + + Choose a directory Выберите каталог - + All HDR images Все HDR-снимки - + Select input images Выберите снимки для обработки - + Load tone mapping settings text files... Загрузите файлы с описанием отображения тонов - + Luminance HDR tone mapping settings text file (*.txt) Текстовый файл настроек отображения тонов Luminance HDR (*.txt) - + Processing... Выполняется обработка... - + Start processing... Начать обработку... - + Close Закрыть - + &Done &Готово - + All tasks completed. Все задачи выполнены. - + Aborting... Прерывание... @@ -699,464 +706,573 @@ CommandLineInterfaceManager - + Usage: %1 [OPTIONS]... [INPUTFILES]... Использование: %1 [КЛЮЧИ]... [ВХОДЯЩИЕ ФАЙЛЫ]... - + Display this help. Показать эту справку. - + + Display program version. + Показать версию программы. + + + Print more messages during execution. Выводить больше сообщений во время выполнения. - + + Print a list of all supported cameras. + Вывести список поддерживаемых камер. + + + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + [AIS|MTB] Механизм выравнивания, который следует использовать при создании HDR (по умолчанию: без выравнивания). - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). EV1,EV2,... Укажите числовые значения ступеней экспозиции (в количестве INPUTFILES). - + prefix Save aligned images to files which names start with prefix - + prefix Сохранять выровненные изображения в файлы, имена которых начинаются с префикса - + HDR_FILE Load an HDR instead of creating a new one. HDR_FILE Загрузить HDR вместо создания нового. - + HDR_FILE Save to a HDR file format. (default: don't save) HDR_FILE Сохранить в файл формата HDR. (по умолчанию: не сохранять) - + VALUE Gamma value to use during tone mapping. (default: 1) VALUE Значение гаммы для использования при отображении тонов. (по умолчанию: 1) - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) VALUE Ширина, до которой надо изменить размер HDR (размер изменяется до гамма-коррекции и отображения тонов) - + LDR_FILE File name you want to save your tone mapped LDR to. LDR_FILE Имя файла для сохранения тонально отображённого LDR. - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) THRESHOLD Включить автоматическое удаление призраков с заданным порогом. (0.0-1.0) - + + Apply autolevels correction after tonemapping. + Применить автоматическую коррекцию уровней после отображения тонов. + + + + Enable generation of a webpage with embedded HDR viewer. + Включить генерацию веб-страницы со встроенным просмотрщиком HDR. + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + Параметры создания HDR: нужно или загрузить существующий HDR-файл (с помощью опции -l), или указать INPUTFILES для создания нового HDR - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + имя файла кривой = ваш_файл.m - + LDR output parameters - + Параметры вывола LDR - + VALUE Quality of the saved tone mapped file (1-100). - VALUE Качество сохранённого тонально отображённого файла (0-100). {1-100)?} + VALUE Качество сохранённого тонально отображённого файла (1-100). - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + Формат tiff. Допустимые значения [8b|16b|32b|logluv] (по умолчанию: 8b) - + Tiff deflate compression. true|false (Default is true) - + Сжатие deflate для tiff. true|false (по умолчанию: true) - + + HTML output parameters + Параметры вывода HTML + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + Имя файла веб-страницы, которая будет сгенерирована. Если <page_name> отсутствует, будет использовано имя файла первого изображения с расширением .html. (по умолчанию: имя первого изображения) + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified Параметры отображения тонов - отображение тонов не производится, если не указана -o - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - Оператор отображения тонов. Допустимые значения: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (По умолчанию - mantiuk06) + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + Fattal - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + Mantiuk 06 - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + Mantiuk 08 - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + Durand - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + Drago - + bias FLOAT - + - + Reinhard 02 - + Reinhard 02 - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + Reinhard 05 - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + Ashikmin - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + Pattanaik - + multiplier FLOAT - + - + Local tone mapping true|false Локальное отображение тонов true|false - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + Версия Luminance HDR + + + + With LibRaw version + С версией LibRaw + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + - + Error: Alignment engine not recognized. Ошибка: не опознан движок выравнивания. - + Error: Unknown weight function specified. Ошибка: указана неизвестная функция взвешивания. - + Error: Unknown response curve specified. Ошибка: указана неизвестная кривая отклика. - + Error: Unknown HDR creation model specified. Ошибка: указана неизвестная модель создания HDR-снимка. - + Error: Unknown tone mapping operator specified. Ошибка: указан неизвестный оператор отображения тонов. - - + + Error: The specified file with TMO settings could not be parsed! - + Ошибка: Не удалось разобрать указанный файл с настройками операторов отображения тонов! - + Error: The specified file with TMO settings could not be parsed!: %1 - + Ошибка: Не удалось разобрать указанный файл с настройками операторов отображения тонов!: %1 - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + Ошибка: Неизвестный формат tiff. - - Error: Threshold must be in the range [0-1]. - + + Error: Threshold must be in the range [0..1]. + - + Error: The number of EV values specified is different from the number of input files. Ошибка: количество указанных значений EV отличается от количества входящих файлов. - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - - - - + Load file %1 failed Загрузка файла %1 не удалась - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. Ошибка: в снимках нет данных Exif, и значения EV не указаны в командной строке. Работа программы прекращена. - + EV values have been assigned. - + Значения EV установлены. + + + + + Starting aligning... + Начинаем выравнивание… - + Failed executing align_image_stack Не удалось выполнить align_image_stack - + Failed aligning images. Не удалось выровнять изображения. - + Creating (in memory) the HDR. - + Создаётся HDR (в памяти). - + Saving to file %1. Сохранение в файл %1. - - + Image %1 saved successfully Изображение %1 успешно сохранено - + Could not save %1 Не удалось сохранить %1 - + NOT Saving HDR image to file. %1 - + HDR-снимок НЕ сохраняется в файл. %1 + + + + Exporting to HTML + Экспортирование в HTML + + + + ERROR: directory %1 must exist + ОШИБКА: каталог %1 должен существовать - + Tonemapping requested, saving to file %1. Запрошено отображение тонов, сохраняется в файл %1. - - ERROR: Cannot save to file: %1 - Ошибка: невозможно сохранить файл: %1 + + Resizing to width %1. + Масштабирование до ширины %1. + + + + Applying gamma %1. + Применение гаммы %1. + + + + +Image %1 successfully saved + +Изображение %1 успешно сохранено + + + + +ERROR: Cannot save to file: %1 + +ОШИБКА: Невозможно сохранить в файл: %1 + + + + Tonemapping NOT requested. + Отображение тонов НЕ запрошено. - + Failed loading images Не удалось загрузить изображения @@ -1165,8 +1281,8 @@ DnDOption - Drag and Drop - Перетаскивание + Choose action + Выберите действие @@ -1207,35 +1323,27 @@ DonationDialog - + Luminance HDR - Make a Donation Сделайте пожертвование - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> — свободная программа с открытым исходным кодом. На её разработку<br>уходят сотни часов времени. Если она вам нравится, если вы используете её в работе и<br>хотите, чтобы она улучшалась, поддержите её авторов пожертвованием.<br /><br />Вы хотите пожертвовать проекту деньги прямо сейчас?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! Да, хочу! - + Ask me again later Спросите меня попозже - + No, Stop bothering me! Нет, хватить доставать меня! @@ -1243,47 +1351,47 @@ EditingTools - + Maskable - + - + Good image - + Хороший снимок - + Add good image - + Добавить хороший снимок - + Remove good image - + Удалить хороший снимок - + Ed&itable &Двигаемые - + R&eference Опор&ные - + Select the previous image in both lists Выбрать предыдущий снимок в обоих списках - + Select the next image in both lists Выбрать следующий снимок в обоих списках - + Choose a directory and a prefix Выберите каталог и префикс @@ -1291,340 +1399,328 @@ EditingToolsDialog - + Editing Tools Редактирование - - Visualization and Navigation - Гистограмма и навигация + + Images List + Список снимков - - Fit to window - Уместить стопку снимков в окне + + Ed&itable + &Двигаемые - - &Fit to Window - &Уместить в окне + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выбранный сейчас снимок — тот, который вы можете перемещать и на котором вы можете рисовать маски для удаления «призраков».</p></body></html> - - Fill the window - Заполнить окно + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + Активный снимок из списка может быть смещен вверх, вниз, влево и вправо при помощи этих кнопок. +Гистограмма активного снимка отображается вверху слева. - - Fill &window - Заполнить &окно + + Select the previous image in both lists + Выбрать предыдущий снимок в обоих списках - - Original size - Исходный размер + + Use this button to move the selection to the previous image in both lists. + Нажмите эту кнопку для перемещения выделения к предыдущему снимку в обоих списках. - - Origina&l Size - &Исходный размер + + Select the next image in both lists + Выбрать следующий снимок в обоих списках - - &Mode: - + + Use this button to move the selection to the next image in both lists. + Нажмите эту кнопку для перемещения выделения к следующему снимку в обоих списках. - - Difference (E-P) - Разница (Д-О) + + Referen&ce + - - Overlay (E+P) - Перекрытие (Д+О) + + The reference image is the one currently selected + Опорный снимок — тот, который сейчас выбран - - Editable Only (E) - Только двигаемый (Д) + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Текущий выбранный в списке снимок служит опорным для двигаемого снимка</p></body></html> - - Pivot Only (P) - Только опорный (О) + + Crop the stack of images after a selection with the left mouse button has been made + Откадрировать стопку снимков по выделению, рисуемому мышью с нажатой левой клавишей - - Antighosting Mask - Антипризрачная маска + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Щелчок по этой кнопке приведет к кадрированию всех снимков по нарисованной вами рамке. Рамка рисуется прямо по снимкам перетаскиванием мыши с удерживаемой нажатой левой клавишей. - - - Brush - Кисть + + &Crop All Images + Отка&дрировать все - - - Lasso - Лассо + + Ctrl+X + Ctrl+X - - Images List - Список снимков + + &Anti-Ghosting + &Антипризрак - - Ed&itable - &Двигаемые + + &Save Images + Со&хранить снимки - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выбранный сейчас снимок — тот, который вы можете перемещать и на котором вы можете рисовать маски для удаления «призраков».</p></body></html> + + Ctrl+S + Ctrl+S - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - Активный снимок из списка может быть смещен вверх, вниз, влево и вправо при помощи этих кнопок. -Гистограмма активного снимка отображается вверху слева. + + Visualization and Navigation + Гистограмма и навигация - - Select the previous image in both lists - Выбрать предыдущий снимок в обоих списках + + Fit to window + Уместить стопку снимков в окне - - Use this button to move the selection to the previous image in both lists. - Нажмите эту кнопку для перемещения выделения к предыдущему снимку в обоих списках. + + &Fit to Window + &Уместить в окне - - Select the next image in both lists - Выбрать следующий снимок в обоих списках + + Fill the window + Заполнить окно - - Use this button to move the selection to the next image in both lists. - Нажмите эту кнопку для перемещения выделения к следующему снимку в обоих списках. + + Fill &window + Заполнить &окно - - R&eference - Опор&ные + + Original size + Исходный размер - - The reference image is the one currently selected - Опорный снимок — тот, который сейчас выбран + + Origina&l Size + &Исходный размер - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Текущий выбранный в списке снимок служит опорным для двигаемого снимка</p></body></html> + + &Mode: + &Режим + + + + Difference (E-P) + Разница (Д-О) + + + + Overlay (E+P) + Перекрытие (Д+О) + + + + Editable Only (E) + Только двигаемый (Д) + + + + Pivot Only (P) + Только опорный (О) + + + + Antighosting Mask + Антипризрачная маска + + + + Brush + Кисть - - Tools - Инструменты + + Lasso + Лассо - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - <html><head/><body><p>Здесь можно задействать алгоритм автоматическиого удаления «призраков», установить значение порога и пересчитать заплаты</p></body></html> + + Anti Ghosting + - + O. Gallo and others O. Gallo с соавторами - + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Включить алгоритм удаления «призраков»</p></body></html> - + Auto anti-ghosting Антипризрак - + Artifact-free HDR Imaging Безартефактный HDR - + Total Patches: Всего заплат: - + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> <html><head/><body><p>Показывает процент заплат, рассчитанных алгоритмом удаления «призраков»</p></body></html> - + Threshold Порог - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> <html><head/><body><p>Порог, используемый алгоритмом удаления «призраков». Более низкий порог означает более агрессивную обработку, но может сузить окончательный динамический диапазон. Используйте кнопку «Пересчитать», чтобы увидеть текущее покрытие заплатами и соответствующим образом подстроить порог.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Порог, используемый алгоритмом удаления «призраков». Более низкий порог означает более агрессивную обработку, но может сузить окончательный динамический диапазон. Используйте кнопку «Пересчитать», чтобы увидеть текущее покрытие заплатами и соответствующим образом подстроить порог.</p></body></html> - + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + <html><head/><body><p>Нажмите, чтобы пересчитать заплаты, основываясь на выбранном пороге</p></body></html> - + Recompute Пересчитать - - Crop the stack of images after a selection with the left mouse button has been made - Откадрировать стопку снимков по выделению, рисуемому мышью с нажатой левой клавишей - - - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Щелчок по этой кнопке приведет к кадрированию всех снимков по нарисованной вами рамке. Рамка рисуется прямо по снимкам перетаскиванием мыши с удерживаемой нажатой левой клавишей. - - - - &Crop All Images - Отка&дрировать все - - - - Ctrl+X - Ctrl+X - - - - &Anti-Ghosting - &Антипризрак - - - - &Save Images - Со&хранить снимки - - - - Ctrl+S - Ctrl+S - - - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - - - - + Mask Маска - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + <html><head/><body><p>Добавить маску с помощью лассо или кисти</p></body></html> - - A&dd + + &Add &Добавить - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + <html><head/><body><p>Удалить маску с помощью лассо или кисти</p></body></html> - - &Remove - &Удалить + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + <html><head/><body><p>Размер кисти</p></body></html> - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + <html><head/><body><p>Сила маски (полупрозрачность)</p></body></html> - + Size: Размер: - - - + + + px px - - &Strength: - &Сила: + + S&trength: + - + Lasso - Draw a free hand selection area Лассо — Рисовать область выделения от руки - + Brush - Paint the mask using the brush Кисть — Рисовать маску кистью - + Save mask Сохранить маску - + Apply saved mask Применить сохранённую маску - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1636,10 +1732,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтобы нарисовать кадрирующую рамку, нажмите левую клавишу мыши и перетащите курсор.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1647,10 +1743,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Значения смещения выбранного редактируемого снимка</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1658,102 +1754,191 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">ЗДесь вы можете просматривать и указывать значения смещения для выбранного редактируемого снимка</p></body></html> - + Shift values for editable image Смещение двигаемых снимков - + Reset the shift values for the currently selected movable image Отказаться от указанного смещения активного двигаемого снимка - + &Reset С&бросить - + Reset the shift values for all the images Отказаться от указанного смещения всех двигаемых снимков - + Reset &All Сбросить &все - - &Horizontal: - По &горизонтали: + + Hori&zontal: + - - &Vertical: - По &вертикали: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Ввести значение горизонтального смещения текущего двигаемого снимка - + Insert a vertical shift value for the currently selected movable image Ввести значение вертикального смещения текущего двигаемого снимка - + Move up of 1 pixel the currently selected movable image Сместить текущий двигаемый снимок на 1 пиксел вверх - + Move down of 1 pixel the currently selected movable image Сместить текущий двигаемый снимок на 1 пиксел вниз - + Move right of 1 pixel the currently selected movable image Сместить текущий двигаемый снимок на 1 пиксел вправо - + + > + > + + + Move left of 1 pixel the currently selected movable image Сместить текущий двигаемый снимок на 1 пиксел влево - + + < + < + + + Histogram Гистограмма - + Get information about the graphical elements Получить информацию о графических элементах окна - + &What's this? &Что это? - + Shift+F1 Shift+F1 - + &Next > &Вперед > - + &Cancel О&тменить + ExportToHtmlDialog + + + Export HDR to HTML + Экспорт HDR в HTML + + + + Export to HTML + Экспорт в HTML + + + + Web page: + Веб-страница: + + + + Output folder: + Выходная папка: + + + + Open web browser + Открыть веб-обозреватель + + + + Size: + Размер: + + + + % + % + + + + Quality: + Качество: + + + + Images folder: + Папка изображений: + + + + Select... + Выбрать... + + + + Cancel + Отмена + + + + Export + Экспорт + + + + Choose a directory + Выберите каталог + + + + + Error: + Ошибка: + + + + must be a directory. + должен быть каталогом. + + + FitsImporter @@ -1763,12 +1948,12 @@ Setup files - + Выбор файлов Select the different files for the channels. Optionally, they can be aligned. - + Выберите разные файлы для разных каналов. Файлы могут быть выровнены. @@ -1780,7 +1965,7 @@ - + Select... Выбрать... @@ -1805,130 +1990,131 @@ Канал 3 (синий) - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + <html><head/><body><p>Повернуть выбранное изображение на 180°</p></body></html> - + Rotate Повернуть - + Reset Сбросить - + Load Previews - + Загрузить эскизы - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + Показывает более крупный эскиз выбранного изображения - - - + + + Preview Предварительный просмотр - + Previews Предварительный просмотр - - + + Alignment Выравнивание - + Auto-crop Автокадрирование - - MTB - MTB + + &MTB + &MTB - - Hugin's align_image_stack - align_image_stack из hugin + + Hugin's align_&image_stack + align_&image_stack из Hugin - + &Autoalign images А&втоматически выровнять снимки - + The alignment of the input files is in progress. Please be patient! - + Идёт выравнивание входных файлов. Наберитесь терпения! - + Progress: Продвижение: - + Messages Сообщения - + Please fine-tune the color part of the channels. - + Пожалуйста, выполните тонкую настройку цветовых каналов. - + Blue Синий - + Green Зелёный - + Red Красный - + Load one FITS image... Загрузить одно изображение FITS... - - Cannot load FITS image %1 - Невозможно загрузить изображение FITS %1 + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size Изображения FITS разного размера - + align_image_stack exited with exit code %1 align_image_stack завершился с кодом выхода %1 - + align_image_stack failed with error align_image_stack завершился с ошибкой @@ -1936,7 +2122,7 @@ GenericViewer - + Pan the image to a region Перемещение по изображению @@ -1944,7 +2130,12 @@ HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + HdrCreationManager::loadFilesDone(): Ошибка загрузки файла. + + + HdrCreationManager::loadFilesDone(): The images have different size. HdrCreationManager::loadFilesDone(): Изображения разного размера. @@ -2006,110 +2197,110 @@ - Currently Loaded &Files - &Загруженные снимки + &Currently Loaded Files + - + Add Images Добавить изображения - + Remove Selected Image Удалить выбранное изображение - + Clear List Очистить список - + Preview Предварительный просмотр - + Selected Image &Exposure Э&кспозиция выбранного снимка - + EV: EV: - + Alignment Выравнивание - - MTB - MTB + + &MTB + &MTB - + &Autoalign images А&втоматически выровнять снимки - - Hugin's align_image_stack - align_image_stack из hugin + + Hugin's align_&image_stack + align_&image_stack из Hugin - + Auto-crop Автокадрирование - + Anti-ghosting Антипризрак - + Threshold Порог - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> <html><head/><body><p>Порог, используемый алгоритмом удаления «призраков». Более низкий порог означает более агрессивную обработку, но может сузить окончательный динамический диапазон.</p></body></html> - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> <html><head/><body><p>Порог, используемый алгоритмом удаления «призраков». Более низкий порог означает более агрессивную обработку, но может сузить окончательный динамический диапазон. Используйте кнопку «Пересчитать», чтобы увидеть текущее покрытие заплатами и соответствующим образом подстроить порог.</p></body></html> - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) Включить алгоритм автоматического удаления «призраков» (по O. Gallo с соавторами) - + Auto anti-ghosting Автоматический антипризрак - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + Включите эту опцию, чтобы выполнить выравнивание или удаление «призраков» вручную. Она предназначена для пользователей, хорошо знающих этапы создания HDR! - + Advanced Editing Tools - + Инструменты редактирования эксперта - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2118,21 +2309,21 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Загрузите снимки с разными экспозициями</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] Выберите параметры создаваемого HDR-снимка - + Profile Профиль - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2141,142 +2332,142 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Первый из них как правило дает наилучшие результаты. Не используйте его только в тех случаях, когда получаемый HDR-снимок недостаточно хорош.</span></p></body></html> - + Profile 1 Профиль 1 - + Profile 2 Профиль 2 - + Profile 3 Профиль 3 - + Profile 4 Профиль 4 - + Profile 5 Профиль 5 - + Profile 6 Профиль 6 - + Use this only if the default profiles above do not yield good results Использовать только если готовые профили не дают достаточно высокого качества - + Use Custom Configuration Использовать пользовательскую конфигурацию - + HDR Creation Model - + Модель создания HDR - + Debevec Дебевек - + Robertson (Simple) - + Robertson (простой) - + Robertson (Response Recovery) - + - + Weighting Function - + Функция взвешивания - + Triangular Треугольная - + Gaussian Гауссова - + Plateau Плато - + Flat - + - + Response Curve - + Характеристическая кривая - + Linear Линейная - + Gamma Гамма - + Log Логарифмическая - + sRGB sRGB - + Custom - + Вручную - + Response Curve Input File - + Входной файл характеристической кривой - + Response Curve Output File - + Выходной файл характеристической кривой - + Save As... Сохранить как... - + Save Settings Сохранить настройки - + &Next > &Вперед > @@ -2286,187 +2477,181 @@ О&тменить - + Image Filename Имя файла снимка - + Exposure Экспозиция - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Все форматы (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; Файлы JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; Файлы TIFF (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw RAW-изображения (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Выберите исходные снимки - + Unknown Неизвестно - + Loading... Загрузка... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + <font color="#FF0000"><h3><b>Внимание:</b></h3></font> Luminance HDR не удалось найти теги <b>EXIF</b> для следующих изображений:<ul> - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + </ul><hr>Несмотря на это, можно продолжить создание HDR. Для этого придётся <b>вручную</b> ввести значения ступеней экспозиции.<hr>Чтобы Luminance HDR мог сделать это <b>автоматически</b>, нужно загрузить снимки, в которых имеюся хотя бы следующие данные EXIF: <ul><li>Exposure Bias</li></ul><hr><b>Совет:</b>Потеря данных EXIF обычно происходит из-за предварительной обработки снимков.<br>Можно выполнить <b>взаимно-однозначное копирование данных EXIF</b> между двумя выборками снимков с помощью раздела меню <b>Инструменты->Копировать данные EXIF...</b>. - + EXIF data not found Данные Exif не найдены - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Снимки загружены.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Для продолжения необходимо вручную указать экспозицию каждого исходного снимка.<br>Не указано значений: <font color="#FF0000">%1</font>.</b></h3></center> - + Loading Error: Ошибка загрузки: - + Start loading a set of images with different exposure Запустить загрузку набора изображений разной степени экспонированности - - - - + + + Error... Ошибка... - - align_image_stack failed to align images. - align_image_stack не смог выровнять изображения. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. - + Не удалось запустить внешнее приложение «<em>align_image_stack</em>».<br/>За подробностями обратитесь к разделу «Справка→Содержание…→Setting up→External Tools». - + The external application "<em>align_image_stack</em>" crashed... Внешняя программа "<em>align_image_stack</em>" аварийно завершила свою работу... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... При выполнении внешней программы "<em>align_image_stack</em>" произошла неизвестная ошибка... - + Now click on next button - + - + Aligning... Выполняется выравнивание... - - + + &Finish &Завершить - + Load camera response curve file - + Загрузить файл характеристической кривой - + Camera response curve (*.m);;All Files (*) - + Характеристическая кривая камеры (*.m);;Все файлы (*) - + Invalid Response Curve File - + Некорректный файл характеристической кривой - + Invalid Response Curve File: please try a different file - + Некорректный файл характеристической кривой: попробуйте другой файл - + Save a camera response curve file - + Сохранить файл характеристической кривой камеры - + Camera response curve (*.m) - + Характеристическая кривая камеры (*.m) - + Weights: Функция взвешивания: - + - Response curve: - Кривая отклика: - + - Model: - Модель: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Все значения EV указаны.<br>Теперь щёлкните кнопку «Дальше».</b></h3></font></center> @@ -2474,153 +2659,259 @@ HelpBrowser - + Luminance HDR Help Справка по Luminance HDR - - Luminance Help - Справка по Luminance + + + &File + &Файл - - - &Print... - &Печать... + + E&dit + - - &Exit - В&ыход + + V&iew + - - - &Find... - &Найти... + + Boo&kmarks + - + + Luminance Help + Справка по Luminance + + + + + &Print... + &Печать... + + + + Ctrl+P + Ctrl+P + + + + &Exit + В&ыход + + + + + &Find... + &Найти... + + + + Ctrl+F + Ctrl+F + + + Find &Next... Найти &следующее совпадение... - + + F3 + F3 + + + Find &Previous... Найти &предыдущее совпадение... - - &Add - &Добавить + + Shift+F3 + Shift+F3 - + - &Delete - &Удалить + &Add Bookmark + &Добавить закладку - - + + Ctrl+D + Ctrl+п + + + + &Delete Bookmark + + + + + D&elete All Удалить &все - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + Ctrl+C + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + Help SideBar Боковая панель справки - + LuminanceHDR Online Help Онлайн-справка по Luminance HDR - - &File - &Файл - - - + &Edit &Правка - + &View &Вид - - + + &Bookmarks &Закладки - + &Quit В&ыход - + Find &Next Найти &следующее совпадение - + Find &Previous Найти &предыдущее совпадение - + &Contents &Содержание - + &Search &Искать - - &Add Bookmark - &Добавить закладку + + &Delete + &Удалить - + Find Искать - + Search Term: Искомый термин: - + New Bookmark Новая закладка - + New Bookmark's Title: Название новой закладки: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Извините, но руководство не установлено!</p><p>Сообщите об этом автору установочного пакета или команде разработчиков Luminance HDR, если собрали программу самостоятельно.</p></h2> - + LuminanceHDR - Help Browser Справка по Luminance HDR - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2632,43 +2923,39 @@ HelpSideBar - - Contents - Содержание - - - + + &Contents &Содержание - + Se&arch &Искать - + Searching is case insensitive Поиск регистронезависим - + &Search &Искать - - + + 1 1 - + Book&marks &Закладки - + &Add &Добавить @@ -2678,7 +2965,7 @@ &Удалить - + R&emove All Удалить &все @@ -2688,22 +2975,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: Этот файл недоступен для чтения: %1 IOWorker: file %1 has unsupported extension: %2 - + IOWorker: у файла %1 не поддерживаемое расширение: %2 IOWorker: caught exception reading %1: %2 - + IOWorker: исключительная ситуация при чтении %1: %2 IOWorker: failed loading file: %1 - + IOWorker: не удалось прочитать файл: %1 @@ -2729,12 +3016,12 @@ Quality: - Качество: + Качество: File size: - + Размер файла: @@ -2760,24 +3047,25 @@ LdrViewer - - - LDR image [%1 x %2] - LDR-снимок [%1× %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Уровни и гамма - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2785,10 +3073,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Коррекция цветовых уровней</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2796,25 +3084,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Уровни на входе</span></p></body></html> - + Clip black Отрезать темные участки - + Gamma Гамма - + Clip White Отрезать светлые участки - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2822,17 +3110,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Уровни на выходе</span></p></body></html> - + &Reset С&бросить - + &Cancel О&тменить - + &OK &ОК @@ -2841,7 +3129,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2851,802 +3139,944 @@ С&ервис - + &Help &Справка - + + Luminance &HDR Online + + + + &Windows &Окна - + &View &Вид - + HDR &Histogram &Гистограмма HDR - + &Toolbars &Панели - - Preview Panel - Панель предварительного просмотра + + &Preview Panel + - + &File &Файл - + &Edit &Правка - + Main Toolbar Основная панель - + &New HDR image... &Создать HDR-снимок... - + New HDR image Создать HDR - - + + Create a new HDR image from a set of LDR or Raw images Создать новый HDR-снимок из одного или нескольких изображений - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files Создать HDR-снимок из серии файлов JPEG или файла RAW, 8- или 16-разрядных файлов TIFF - + Ctrl+N Ctrl+N - + &Open HDR image... &Открыть HDR-снимок... - + Open HDR image Открыть HDR - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Загрузить готовый файл HDR-снимка (OpenEXR, Radiance RGBE, PFS stream, RAW или TIFF) - + Ctrl+O Ctrl+O - + &Save as... Сохранить &как... - + Save as... Сохранить как... - - - + + + Save image (HDR or LDR) Сохранить изображение (HDR или LDR) - + Ctrl+S Ctrl+S - + &Quit В&ыход - - + + Quit Luminance HDR Завершить работу с Luminance HDR - + Exit Завершить работу с приложением - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Повернуть &против часовой стрелки - + Rotate counter-clockwise Повернуть против часовой стрелки - - - + + + Rotate counter-clockwise the HDR image Повернуть HDR-снимок против часовой стрелки - + < < - - Rotate c&lockwise - Повернуть по &часовой стрелке + + Rotat&e clockwise + - + Rotate clockwise Повернуть по часовой стрелке - - - + + + Rotate clockwise the HDR image Повернуть HDR-снимок по часовой стрелке - + > > - - Low Dynamic Range - Узкий динамический диапазон + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Уместить в динамический диапазон + + &Fit to Dynamic Range + - + Fit to dynamic range Уместить в динамический диапазон - + \ \ - - Shrink Dynamic Range - Сузить динамический дипазон + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Расширить динамический диапазон + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Уменьшить экпозицию + + &Decrease Exposure + - + 0 0 - + &Increase Exposure &Увеличить экпозицию - + 9 9 - + &Contents... &Содержание - + About... О программе... - - - + + + Open user manual for Luminance HDR Открыть руководство пользователя по Luminance HDR - + F1 F1 - + &Normal Size &100% - + Normal size &100% - - - + + + View HDR image at its normal size Просмотреть HDR-снимок в полный размер - + O O - + Zoom &In &Приблизить - - - + + + Zoom in Приблизить - + + + - + Zoom &Out О&тдалить - - - + + + Zoom out Отдалить - + - - - + &Fit in Window &Уместить в окне - - + + Fit in Window Уместить в окне - - + + Make the HDR image fit its window Подогнать отображаемый HDR-снимок под размер окна - + W W - + &Preferences... &Параметры - + Luminance Options Параметры Luminance - - - + + + Set various options of Luminance Установить параметры работы программы - + Ctrl+P Ctrl+P - + &Resize... &Размер... - + Resize the HDR image Изменить размер HDR-снимка - - - + + + Change size of the HDR image Изменить размер HDR-снимка - + Ctrl+R Ctrl+R - + Copy &Exif Data... &Скопировать данные Exif... - + Copy Exif Data Копирование данных Exif - - - + + + Copy Exif data between two sets of files Скопировать (перенести) данные Exif из одного набора файлов в другой - + Ctrl+E Ctrl+E - + &About Qt &О Qt - + Show information about Qt Показать информацию о Qt - - + + Show information about Qt library that is used by Luminance Показать информацию о библиотеке Qt, используемой в Luminance HDR - + Text &under Icons Текст &под значками - + &Icons Only Только зн&ачки - + &Text Only Только &текст - + Text &Alongside Icons Текст &рядом со значками - + &Batch Tone Mapping... &Пакетное отображение тонов... - + Convert multiple HDR images to LDR Преобразовать много HDR-снимков в LDR - - + + Convert multiple HDR images to LDR using existing settings files Преобразовать много HDR-снимков в LDR при помощи файлов с предустановками отображения тонов - + Ctrl+B Ctrl+B - + &What's This? &Что это? - - + + Get verbose information about user interface elements Используйте эту кнопку для получения информации о графических элементах окна - + Shift+F1 Shift+F1 - + About &Luminance HDR О &Luminance HDR - + Show information about Luminance HDR Показать информацию о Luminance HDR - - + + Show information about Luminance HDR, its authors and contributors Показать информацию о Luminance HDR, его авторах и участниках - + + Ctrl+I + Ctrl+I + + + Save HDR image &preview... Сохранить &миниатюру HDR-снимка... - - - + + + Save the current HDR Preview to an LDR file Сохранить текущую миниатюру HDR-снимка в файл одного из LDR-форматов - + &Projective Transformation... П&роективная трансформация... - - - + + + Apply projective transformation to the current HDR image Выполнить проективную трансформацию текущего HDR-снимка - + + Ctrl+J + Ctrl+J + + + &Crop to Selection От&кадрировать в выделение - + Crop to Selection Откадрировать - - + + Crop the image to selection rectangle Откадрировать снимок по прямоугольнику выделения - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image Нарисуйте в изображении прямоугольное выделение, затем нажмите эту кнопку для обрезки изображения по выделению - + + Ctrl+X + Ctrl+X + + + Remove &Selection &Снять выделение - + Remove selection rectangle Снять выделение - - + + Remove selection rectangle from image area Убрать созданный прямоугольник выделения - + + Ctrl+Z + Ctrl+Z + + + Make a &Donation Сделать &пожертвование - + Ctrl+D Ctrl+п - - Lock Viewers - + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + Синхронизировать режимы эскизов (уместить, растянуть, 1:1). - + Lock the images for sync view - + Блокировать снимки для синхронного просмотра - - Minimize - Свернуть + + S + S - - Maximize - Распахнуть + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - + + &Bring All to Front + - - Show Preview Panel - Показать панель предварительного просмотра + + &Show Preview Panel + - + Show/Hide Preview Panel Показать/скрыть панель предварительного просмотра - + Ctrl+V Ctrl+V - + Adjust &Levels Скорректировать &уровни... - - + + Adjust Levels Коррекция уровней - - + + Tune the histogram for the current LDR Скорректировать уровни активного LDR-снимка - + + Ctrl+L Ctrl+L - + Save All Сохранить все - - + + Save All LDR files - + Сохранить все LDR-файлы - - Remove Tab - + + &Remove Tab + - + Ctrl+W Ctrl+W - - Fill Window - Заполнить окно + + Fill &Window + - + Fill window with the current viewer - + Растянуть текущий эскиз на всё окно + + + + F + F - - Batch HDR... - Пакетное создание HDR... + + Batch &HDR... + - + Ctrl+H Ctrl+H - + Soft Proofing - + - + Gamut Check - + Цветовой охват - - Show on the right - Показывать справа + + &Show on the right + - - Show on the bottom - Показывать внизу + + Show &on the bottom + - - Realtime Previews - Мгновенный предварительный просмотр + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - Импорт FITS... + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + Импортировать четыре файла FITS, соответствующие светлоте, красному, зелёному и синему каналам - + Ctrl+F Ctrl+F - + White Balance Баланс белого - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + F11 + + + + Show &Image Full Screen + - + + F10 + F10 + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + Ctrl+M + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + Ctrl+K + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + + + + Ready. Now open an existing HDR image or create a new one! Готово... Теперь откройте готовый HDR-снимок или создайте новый! - + All HDR formats Все форматы HDR - + Load one or more HDR images... Загрузить один и более снимков HDR... - + Save files in Сохранить файлы в - - Failed to save - + + + Failed to save %1 + Не удалось сохранить %1 - + Done! Готово! - + Aborting... Прерывание... - + + + Untitled + Без имени + + + Cropped Image Откадрированный снимок - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + Похоже, вы запускаете 32-битную версию <strong>Luminance HDR</strong> на 64-битной системе. <br>Загрузите <strong>64-битную</strong> версию с <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a>, чтобы выжать максимум из Luminance HDR! - + Unsaved changes... Изменения не сохранены - + This HDR image has unsaved changes.<br>Do you want to save it? - + В HDR-снимке есть несохранённые изменения.<br>Сохранить их? - + Fattal Warning - + Предупреждение Fattal - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -3655,28 +4085,22 @@ Хотите продолжить? - - - Untitled - Без имени - - - + Untitled %1 Безымянный %1 - + Error: %1 Ошибка: %1 - + Untitled HDR - + Безымянный HDR - + FITS Image Изображение FITS @@ -3684,567 +4108,626 @@ PreferencesDialog - + Preferences Параметры Luminance HDR - - Color Management - Управление цветом + + Tone Mapping + Отображение тонов - + RAW Conversion Преобразование RAW - - Tone Mapping - Отображение тонов + + Color Management + Управление цветом - + External Tools Приложения - + Interface Интерфейс - - Export queue - + + Fast export + Быстрый экспорт - + Language Язык - + Default Previews Width Ширина предварительного просмотра по умолчанию - + px пикс. - + Always show Preview Panel Всегда показывать панель предварительного просмотра - + Saves the settings along the program files, to be portable - + Сохранять настройки вместе с файлами программы для переносимости - + Portable mode Переносимый режим - + Dark mode (beta) - + Тёмный режим (бета) - + Theme - + Тема - + Format - + Формат - + Export directory - + Каталог для экспорта - - Temporary Working Folder - Временная рабочая папка + + + + + + + + + + + + + + + ... + ... - - + + &Browse... &Обзор... - - + + Temporary Working Folder + Временная рабочая папка + + + + Amount of threads to use on multicore/SMP machines Количество используемых потоков для многопроцессорных компьютеров - + Batch Tonemapping Number of Threads Число потоков отображения тонов - + General - + Общие - + Quality: Качество: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear - + Билинейный - + VNG - + VNG - + PPG - + PPG - + AHD - - - - - - - - - - - - - - - - - - ... - ... + AHD - + Median: - + Медиана: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Не растягивать и не поворачивать пикселы</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Для камер Fuji Super CCD показывать снимок повёрнутым на 45 градусов. Для камер с неквадратными пикселами не растягивать изображение до корректного соотношения сторон. В любом случае эта опция гарантирует, что каждый итоговый пиксел соответствует одному пикселу RAW.</p></body></html> - + Do not stretch or rotate pixels - + Не растягивать и не поворачивать пикселы - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Интерполировать RGB как четыре цвета</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">По умолчанию считается, что все зелёные пикселы равноценны. Если зелёные пикселы в чётных рядах более чувствительны к ультрафиолету, чем в нечётных, это отличие приводит к появлению клеточек; эта опция решает эту проблему с минимальными потерями детализации.</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Другими словами, эта опция немного размывает изображение, но подавляет появление клеточек размером 2x2 при использовании метода VNG or лабиринтов при использовании метода AHD.</p></body></html> - + Interpolate RGB using 4 colours - + Интерполировать RGB как 4 цвета - + Color correction - + Цветокоррекция - + White Balance Баланс белого - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Метод баланса белого</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Настройка баланса белого raw:</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">По умолчанию D65</span>: Использовать стандартный баланс белого для дневного света D65 (по умолчанию в dcraw)</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Камера</span>: Использовать баланс белого, записанный камерой. Если он не указан, используется значение нейтрального баланса белого по умолчанию</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Автоматически</span>: Рассчитать баланс белого автоматически, усреднив для всего изображения</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Вручную</span>: Установить значения цветовой температуры и уровня зелёного вручную</p></body></html> - + Predefined D65 Стандартный D65 - + Camera Камера - + Auto Автоматически - + Manual Вручную - + Temperature (Kelvin) Температура (кельвин) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Температура</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Установите цветовую температуру в кельвинах.</p></body></html> - + Green Зелёный - + Set here the green component to set magenta color cast removal level - + - + Highlights Пересветы - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Unclip</span>: leave highlights unclipped in various shades of pink</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blend</span>: Blend clipped and unclipped values together for a gradual fade to white</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + - + Solid White - + Заливка белым - + Do not transform - + Без преобразования - + Blend - + Смешивание - + Reconstruct - + Восстановление - + Level - + Уровень - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + - + Correct false colors in highlights - + Исправить неправильные цвета в пересветах - + Auto Brightness - + Автояркость - + Brightness Яркость - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Яркость</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Укажите уровень яркости для выходного изображения. Значение по умолчанию — 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + - + Black Уровень чёрного - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + Насыщенность - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - Насыщенность - - - + NR and CA Correction - + Подавление шума и ХА - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Включить подавление шумов</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Использовать вейвлеты для удаления шума с охранением детализации.</p></body></html> - + Enable noise reduction Включить подавление шума - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Порог</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выставьте значение порога для подавления шумов.</p></body></html> - + Threshold: Порог: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Включить исправление хроматических аберраций</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Расширить сырые красный и синий каналы с заданными коэффициентами, обычно 0,999 и 1,001, чтобы исправить хроматическую аберрацию.</p></body></html> - + Enable Chromatic Aberration correction Включить коррекцию хроматических аберраций - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Множитель красного</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выставьте коэффициент увеличения красного слоя</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Множитель синего</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выставьте коэффициент увеличения синего слоя</p></body></html> - + Red Component Красная составляющая - + Blue Component Синяя составляющая - - Monitor Profile - Профиль монитора - - - - - + + + Browse... Обзор... - + Camera profile Профиль камеры - + + Monitor Profile + Профиль монитора + + + Printer profile Профиль принтера - + align_image_stack command line arguments Аргументы командной строки align_image_stack - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Подробную информацию об аргументах команды align_image_stack ищите в разделе <span style="font-style:italic;">Справка &gt; Содержание &gt; Setting up &gt; External tools</span></p></body></html> - + &Cancel О&тменить - + &OK &ОК - + Restart Перезапуск - + For the settings to take effect, please restart the application! - + Перезапустите приложение, чтобы настройки вступили в силу! - - + + Choose a directory Выберите каталог - + Open ICC Profile Открыть профиль ICC - + Color profile (*.icc *.ICC *.icm *.ICM) Цветовой профиль (*.icc *.ICC *.icm *.ICM) @@ -4260,99 +4743,99 @@ ProjectionsDialog - + Projective Transformation Проективная трансформация - + Projections Проекции - + Source Projection: Исходная проекция: - - + + Polar Полярная - - + + Angular Угловая - - + + Cylindrical Цилиндрическая - - + + Mirror Ball Зеркальный шарик - + Destination Projection: Конечная проекция: - + Angles: Угол: - - - - + + + + ° ° - + Bilinear Interpolation Билинейная интерполяция - + Oversample factor: Коэффициент оверсэмплинга: - + Rotation (degrees) Вращение (в градусах) - + Yaw: Вокруг вертикали: - + Pitch: Наклон горизонта: - + Roll: Вокруг оптической оси: - + &Cancel О&тменить - + &OK &ОК @@ -4360,17 +4843,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: ОШИБКА: не удается загрузить файл с параметрами отображения тонов: - + ERROR: File too old, cannot parse Tone Mapping Setting file: ОШИБКА: попытка использовать файл с параметрами отображения тонов в старом формате: - + ERROR: cannot parse Tone Mapping Setting file: ОШИБКА: не удается произвести разбор файла с параметрами отображения тонов: @@ -4378,6 +4861,33 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + Добавление снимка + + + + to the web page + на веб-страницу + + + + + + Writing: + Запись: + + @@ -4406,309 +4916,315 @@ Не могу выполнить преобразование цвета. Пожалуйста, выберите другой профиль монитора. - + Triangular Треугольная - + Plateau Плато - + Gaussian Гауссова - + Flat - + - + Linear Линейная - + Gamma Гамма - + Logarithmic Логарифмическая - + sRGB sRGB - + From Calibration/Input File - + Из результата калибровки/входного файла - + Debevec Дебевек - + Robertson Робертсон - + Robertson Response Calculation - + - + PreGamma=%1 - + - + Contrast Equalization Выравнивание контрастности - + Contrast Контрастность - - + + Saturation Насыщенность - + Detail Детализация - + Luminance Level Уровень светимости - + Luminance Level=Auto - + - + Color Saturation Насыщенность - + Contrast Enhancement Контраст - + Alpha Альфа - + Beta Бета - + NoiseRedux - + - + FFTSolver - + - + + Rho + + + + + InvAlpha + + + + simple - + - + Equation 2 Уравнение 2 - + Equation 4 Уравнение 4 - - + + Local - + - + Bias Смещение - + Spatial - + - - + + Range Диапазон - + Base - + - + Multiplier Множитель - + AutoLuminance - + - + Cone - + Колбочки - + Rod - + Палочки - + Key - + - + Phi δ (фи) - + Scales: - + - + Lower - + - + Upper - + - + Brightness Яркость - + Chromatic Adaptation Хроматическая адаптация - + Light Adaptation Адаптация к свету - + Option -v -a... - + Опции -v -a... - + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + Для LuminanceHDR необходимо, чтобы align_image_stack вызывался с опцией «-v» и без опции «-a». Опции командной строки были исправлены. - + Cannot convert %1 to a float Невозможно преобразовать %1 в формат с плавающей точкой - + Loading TMO settings from file: %1 - + Загрузка настроек операторов отображения тонов из файла %1 - + Input file %1 Входной файл %1 - + Running in HDR-creation mode. - + Запуск в режиме создания HDR. - + Running in Load-HDR mode. - + Запуск в режиме загрузки HDR. - + Temporary directory: %1 Временный каталог: %1 - + Using %n threads. - - - - - + - + Loading file %1 Загружается файл %1 - + Successfully loaded file %1. Успешно загружен файл %1. - + All LDR formats Файлы всех LDR-форматов - + Save the LDR image as... Сохранить LDR-снимок как... - + Save the HDR image as... Сохранить HDR-снимок как... - + Save as... Сохранить как... @@ -4716,62 +5232,62 @@ ResizeDialog - + Scale Image Смена размера снимка - + Hdr Image Size Размер HDR-снимка - - Width: - Ширина: + + Restore original size + Восстановить исходный размер - + + &Reset + С&бросить + + + Switch between pixels or percentage Переключиться между пикселами и процентами - + Pixels пикселов - + Percent процентов - - Height: - Высота: - - - + Result size Конечный размер - - Restore original size - Восстановить исходный размер + + Height: + Высота: - - &Reset - С&бросить + + Width: + Ширина: - + &Cancel О&тменить - + &Scale &Изменить @@ -4784,203 +5300,251 @@ Сохранённые настройки - - + + Comment Комментарий - + TM Operator Оператор отображения тонов - + Simple Простой вариант - + Equation 2 Уравнение 2 - + Local Contrast Threshold Порог локального контраста - + Bias Смещение - + Spatial Kernel Sigma Сигма пространственного ядра - + Range Kernel Sigma Сигма диапазонного ядра - + Base Contrast Контраст основного слоя - + Alpha Альфа - + Beta Бета - - + + Color Saturation Насыщенность - + Noise Reduction Подавление шума - + Old Fattal - + Старый Fattal - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Выравнивание контрастности - + Contrast Factor Коэффициент контраста - + Saturation Factor Коэффициент насыщенности - + Detail Factor Коэффициент детализации - + Contrast Enhancement Контраст - + Luminance Level Уровень светимости - + Manual Luminance Level - + Ручной уровень светимости - + Cone and Rod based on Luminance Уровень чувствительности колбочек и палочек на основе освещенности - + Local Tonemapping Локальное отображение тонов - + Cone Level Уровень чувствительности колбочек - + Rod Level Уровень чувствительности палочек - + Multiplier Множитель - + Use Scales Использовать шкалы - + Key Value Значение ключа - + Phi Value - + Значение φ - + Range Диапазон - + Lower Scale Нижняя шкала - + Upper Scale Верхняя шкала - + Brightness Яркость - + Chromatic Adaptation Хроматическая адаптация - + Light Adaptation Адаптация к свету - + Pre-gamma - + Гамма-коррекция SavingParameters - + Saving Parameters Сохранение настроек - + Enter a short comment for the saved parameters: Введите краткий комментарий для сохранённых настроек: + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + поиск… + + + + OK + OK + + + TMOProgressIndicator @@ -4989,6 +5553,19 @@ + ThresholdWidget + + + Frame + + + + + Threshold + Порог + + + TiffModeDialog @@ -4999,496 +5576,532 @@ TonemappingPanel - - Tone mapping operators and their options - Операторы отображения тонов и их параметры + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + Здесь можно загрузить или сохранить файл с параметрами отображения тонов.<br>Здесь же можно применить выбранный файл с параметрами к открытому HDR-снимку. + + + + Tone Mapping Settings + Параметры отображения тонов - + + Save current parameters to a text file + Сохранить параметры отображения тонов в текстовый файл + + + + Save current parameters (pregamma and TMO) to a text file. + Сохранить текущие параметры (предварительной коррекции гаммы и операторов отображения тонов) в текстовый файл. + + + + Load an existing text file containing pregamma and TMO settings + Загрузить файл с параметрами гамма-коррекции и оператора отображения тонов + + + + Load an existing text file containing pregamma and TMO settings. + Загрузить файл с параметрами гамма-коррекции и оператора отображения тонов. + + + + Save current parameters + Сохранить текущие настройки + + + + Load saved parameters + Загрузить сохранённые настройки + + + + Export + Экспорт + + + + Fast export + Быстрый экспорт + + + + Opens the current export direcotory. This can be changed in the preferences! + Открывает текущий каталог для экспорта. Его можно изменить в настройках. + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Открыть</span></a></p></body></html> + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + Здесь можно применить гамма-коррекцию к HDR-снимку.<br>Она будет применена перед отображением тонов. + + + + Process + Процесс + + + + Result Si&ze + Итоговый &размер + + + + + Gamma applied before tonemapping + Гамма-коррекция, применяемая перед отображением тонов + + + + Pre-&gamma + &Гамма-коррекция + + + + Restore pregamma's default value (1) + Восстановить исходное значение гаммы (1,00) + + + + Size of the resulting LDR image + Размер конечного LDR-снимка + + + + Here you can choose the size of the resulting LDR image. + Здесь вы можете выбрать размер конечного LDR-снимка. + + + + Set Custom Output Size + Задать итоговый размер + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Щелкните эту кнопку для вставки значения <i>ширины</i> конечного LDR-снимка.<br>По нажатию ввода автоматически будет вычислено и подставлено значение высоты. + + + Start tonemapping (CTRL+T) Запустить отображение тонов (Ctrl+T) - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image Использовать текущие параметры (гамма-коррекция и оператор отображения тонов) для создания LDR-снимка - + &Update preview - + &Обновить эскиз - + Ctrl+T Ctrl+T - + Update current LDR - + Обновить текущий LDR + + + + Auto Levels + - + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Отображение тонов - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator Оператор - + Contrast Factor Коэффициент контраста - + Saturation Factor Коэффициент насыщенности - + Detail Factor Коэффициент детализации - + Contrast Equalization Выравнивание контрастности - + Predefined Display Профиль монитора - + Lcd Office Офисный ЖК-монитор - + Lcd ЖК-монитор - + Lcd Bright Яркий ЖК-монитор - + CRT ЭЛТ-монитор - - + + Color Saturation Насыщенность - + Contrast Enhancement Контраст - + Enable Luminace Level - + Включить +Уровень светимости - + Luminance Level Уровень светимости - + Alpha Альфа - + Beta Бета - + Noise Reduction Подавление шума - + Version 2.3.0 Версия 2.3.0 - + + Inverse Alpha + + + + + Rho + + + + Bias Смещение - + Spatial Kernel Sigma Сигма пространственного ядра - + Range Kernel Sigma Сигма диапазонного ядра - + Base Contrast Контраст основного слоя - + Key Value Значение ключа - + Phi δ (фи) - + Use Scales Использовать шкалы - + Range Диапазон - + Lower Scale Нижняя шкала - + Upper Scale Верхняя шкала - + Brightness Яркость - + Chromatic Adaptation Хроматическая адаптация - + Light Adaptation Адаптация к свету - + Local Contrast Threshold Порог локального контраста - + Simple Простой вариант - + Equation Number Номер уравнения - - Eqn 2 - Уравнение 2 + + Eqn &2 + - - Eqn 4 - Уравнение 4 + + Eqn &4 + - + Multiplier Множитель - + Local Tone Mapping Локальное отображение тонов - + Auto Cone/Rod - + Авто колбочки/палочки - + Cone Level Уровень чувствительности колбочек - + Rod Level Уровень чувствительности палочек - + + This operator has no options + + + + Restore operator's default values Восстановить исходные параметры оператора - + Restore Восстановить - + Previous applied settings Предыдущие использованные параметры - + Previous Предыдущий - + Next applied settings Следующие использованные параметры - + Next Следующий - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - Здесь можно загрузить или сохранить файл с параметрами отображения тонов.<br>Здесь же можно применить выбранный файл с параметрами к открытому HDR-снимку. - - - - Tone Mapping Settings - Параметры отображения тонов - - - - Save current parameters to a text file - Сохранить параметры отображения тонов в текстовый файл - - - - Save current parameters (pregamma and TMO) to a text file. - Сохранить текущие параметры (предварительной коррекции гаммы и операторов отображения тонов) в текстовый файл. - - - - &Save to File - &Сохранить в файл - - - - Load an existing text file containing pregamma and TMO settings - Загрузить файл с параметрами гамма-коррекции и оператора отображения тонов - - - - Load an existing text file containing pregamma and TMO settings. - Загрузить файл с параметрами гамма-коррекции и оператора отображения тонов. - - - - &Load from File - &Загрузить из файла - - - - Save current parameters - Сохранить текущие настройки - - - - - ... - ... - - - - Load saved parameters - Загрузить сохранённые настройки - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - Здесь можно применить гамма-коррекцию к HDR-снимку.<br>Она будет применена перед отображением тонов. - - - - Process - Процесс - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - Гамма-коррекция, применяемая перед отображением тонов - - - - Restore pregamma's default value (1) - Восстановить исходное значение гаммы (1,00) - - - - Size of the resulting LDR image - Размер конечного LDR-снимка - - - - Here you can choose the size of the resulting LDR image. - Здесь вы можете выбрать размер конечного LDR-снимка. - - - - Set Custom Output Size - - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Щелкните эту кнопку для вставки значения <i>ширины</i> конечного LDR-снимка.<br>По нажатию ввода автоматически будет вычислено и подставлено значение высоты. + + Queue size: %1 + Размер очереди: %1 - + TM Database Problem - + Проблема с базой данных отображения тонов - + The database used for saving TM parameters cannot be opened. Error: %1 - + Не удалось открыть базу данных для сохранения параметров отображения тонов. +Ошибка: %1 - + Load a tonemapping settings text file... Загрузить текстовый файл с параметрами отображения тонов... - - + + LuminanceHDR tonemapping settings text file (*.txt) Текстовый файл с параметрами отображения тонов (*.txt) - - - - + + + + Aborting... Прерывание... - + File is not readable (check existence, permissions,...) Файл нечитаем (проверьте, существует ли он, каковы права доступа...) - + Save tonemapping settings text file to... Сохранить параметры отображения тонов... - + File is not writable (check permissions, path...) Файл незаписываем (проверьте права доступа, путь...) - + File is not readable (check permissions, path...) Файл нечитаем (проверьте права доступа, путь...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. Ошибка: формат файла параметров отображения тонов. Старый формат файлов в этой версии Luminance HDR не поддерживается. Создайте новый файл с параметрами. - + Custom LDR size Добавить свой размер LDR-снимка - + Enter the width of the new size: Укажите новую ширину: @@ -5523,7 +6136,7 @@ Most Useful Operators - + Часто используемые операторы @@ -5549,108 +6162,108 @@ Копирование данных Exif - + From Из - - + + Append files to the list Добавить файлы в список - - + + Remove selected file(s) from the list Удалить выбранные файлы из списка - - + + Move up selected file(s) Сместить выбранные файлы вверх - - + + Move down selected file(s) Сместить выбранные файлы вниз - + To В - + Log Логарифмическая - + Exif operations report Отчет о действиях с Exif - - &Show only: + + Show onl&y: &Показывать: - + Filter messages based on severity Фильтровать сообщения по важности - + All messages Все сообщения - + Errors only Только ошибки - - &Filter log messages: + + Filter &log messages: &Фильтр сообщений журнала: - + Clear filter text Сбросить текст фильтра - + Keep existing Exif tags in destination file Сохранить данные Exif в конечном файле - + &Cancel О&тменить - + &Start На&чать - - + + All Supported formats Все поддерживаемые форматы - - + + Select the input images Выберите исходные снимки - + &Done &Готово @@ -5664,27 +6277,33 @@ Документ с лицензией на %1 не найден, вы можете прочитать его %2здесь%3. - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation Пожертвование - + Would you like to donate? Желаете сделать пожертвование? - + Yes, I'd love to! Да, хочу! - + Stop Bothering Me Оставьте меня в покое - + Remind me later Напомните в другой раз @@ -5708,4 +6327,4 @@ Нажмите чтобы загрузить, или выберите Справка->Обновить! - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_tr.ts luminance-hdr-2.5.1/i18n/lang_tr.ts --- luminance-hdr-2.5.0/i18n/lang_tr.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_tr.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,25 +1,19 @@ - - - + AboutLuminance - About Luminance - Lumiance Hakkında + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -31,15 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR görüntüleme iş akışı uygulaması<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010, 2011, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> {3C?} {4.0/?} {3.?} {40/?} {1"?} {11p?} {400;?} {0p?} {0p?} {0p?} {0p?} {0;?} {0p?} {12p?} {600;?} {00007f?} {2006-2009,?} {0p?} {0p?} {0p?} {0p?} {0;?} {0p?} {2010-2012,?} {0000f?} {3C?} {4.0/?} {3.?} {40/?} {1"?} {11p?} {400;?} {0p?} {0p?} {0p?} {0p?} {0;?} {0p?} {12p?} {600;?} {00007f?} {2006-2009,?} {0p?} {0p?} {0p?} {0p?} {0;?} {0p?} {2010-2013,?} {0000f?} +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -47,70 +36,65 @@ Yaz&arlar - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To Teşekür ettiklerimiz - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement Lisans Antlaşması - + &OK &TAMAM @@ -119,290 +103,290 @@ BatchHDRDialog - Batch HDR Dialog - Toplu HDR Diyaloğu + Batch HDR + - + Number of bracketed images: İşaretli görüntü sayısı: - - + + Select the number of bracketed pictures used to create the HDRs HDR oluşturmak için kullanılan işaretli resim sayısını seçin - + Output Çıktı - + + Choose an HDR output file format + HDR çıktı dosyası biçiminiı seçin + + + Predefined profile: Öntanımlı profil: - - Choose an HDR output file format - HDR çıktı dosyası biçiminiı seçin + + Output format: + Çıktı Biçimi: - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 Profil 1 - + Profile 2 Profil 2 - + Profile 3 Profil 3 - + Profile 4 Profil 4 - + Profile 5 Profil 5 - + Profile 6 Profil 6 - - Output format: - Çıktı Biçimi: - - - + Alignment Hizalama - + Auto align the bracketed pictures İşaretli resimleri otomatikman hizala - + Auto-align images Görütüleri Otom-hizala - + Use MTB (Median Threshold Bitmap) engine MTB motorunu kullan (Median Threshold Bitmap) - - MTB - MTB + + &MTB + - + Use Hugin's align_image_stack engine Hugin'in yığın_görüntü_hizalama motorunu kullanın - - Hugin's align_image_stack - Hugin'in yığın_görüntü_hizalama motoru + + Hugin's align_&image_stack + - + Auto-crop - - - - - Progress - + - + &Cancel &İptal - + &Start &Başlat - + &Close &Kapat - - Anti-ghosting - + + Progress + - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + Oluşturulan HDR'nin kayıt klasörü - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + İşaretli resimlerin bulunduğu klasör (alfabetik sıra ile) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + - - Auto anti-ghosting - + + Output folder: + - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - Oluşturulan HDR'nin kayıt klasörü + + Artifact-free High Dynamic Range Imaging + - - - Select... - + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - İşaretli resimlerin bulunduğu klasör (alfabetik sıra ile) + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - + + O. Gallo and others + - - Output folder: - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory - + - + Choose a output directory - + - - - + + + Warning - + - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? - + - - + + Total number of pictures must be a multiple of number of bracketed images. - + - + Started processing... İşlem başlatıldı... - + Loading files... - + - + Completed with errors Hatlar ile tamamlandı - + Completed without errors Hatasız tamamlandı - + Error: missing EXIF data Hata: yanlış EXIF verisi - + Aligning... Hizalanıyor... - + Creating HDR... HDR Oluşturuluyor... - + Doing auto anti-ghosting... - + - + Written Yazılı - + Error: Hata: - + Aborting... Durduruluyor... @@ -427,32 +411,32 @@ Add Directory (Alt+D) - + Alt+D - + Add Files (Alt+F) - + Alt+F - + Remove Files (Alt+R) - + Alt+R - + @@ -462,42 +446,42 @@ Add Directory (Alt+I) - + Alt+I - + Add Files (Alt+L) - + Alt+L - + Add from Database (Alt+B) - + Alt+B - + Remove Settings (Alt+M) - + Ayarları Sil (Alt+M) Alt+M - + @@ -505,11 +489,6 @@ Ton Eşleme Ayar dosyaları listesi, her HDR tonu haritalanırken kullanılacak - - Specify output folder for the tone mapped files - Ton eşlenen dosyalar için çıkış klasörü belirtin - - Output Çıktı @@ -517,154 +496,174 @@ Output Image Width: - + + + + + Output Folder: + + + + + + Specify output folder for the tone mapped files + Ton eşlenen dosyalar için çıkış klasörü belirtin + + + + Selec&t... + + + + + + Width of tonemapped image in percent of original image + - + % - + - + Output Format: - + - - Output Folder: - + + Image format of tonemapped images + - - Selec&t... - + + Image format options + - + Conversion Log Dönüştürme günlüğü - + Batch operations report Toplu operasyon raporu - - &Show only: - &Sadece göster: + + Show onl&y: + - + Filter messages based on severity İletileri şiddetine göre filtrele - + All messages Tüm mesajlar - + Errors only Sadece Hatalar - + Success messages Mesajlar başarılı - - &Filter log messages: - &Günlük mesajlarını filtrele: + + Filter &log messages: + - + Clear filter text Filtre metinini temizle - + Overall completion progress Genel tamamlanma ilerlemesi - + &Cancel &İptal - + Start batch tone mapping Toplu Ton Eşlemeyi başlat - + &Start &Başlat - + Using %n thread(s) - - - + - - - + + + Choose a directory Bir Dizin Seçin - + All HDR images Tüm HDR biçimleri - + Select input images Giriş görüntülerini seç - + Load tone mapping settings text files... Ton eşleme ayarlarını metin dosyasına yükle... - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... İşleniyor... - + Start processing... İşlemi başlat... - + Close Kapat - + &Done &Bitti - + All tasks completed. Tüm görevlet tamamlandı - + Aborting... Durduruluyor... @@ -700,474 +699,581 @@ CommandLineInterfaceManager - - Error: Alignment engine not recognized. - Hata: Hizalama motoru tanınmıyor - - - - Error: Unknown weight function specified. - Hata:Belirlenen ağırlık fonksiyonu bilinmiyor. - - - - Error: Unknown response curve specified. - Hata: Belirlenen tepki eğrisi bilinmiyor. - - - - Error: Unknown HDR creation model specified. - Hata: Bilinmeyen HDR oluşturma modeli belirlendi + + Usage: %1 [OPTIONS]... [INPUTFILES]... + Kullanım: %1 [SEÇENEKLER]... [GİRİŞ DOSYALARI]... - - Error: Unknown tone mapping operator specified. - Hata: Bilinmeyen ton eşleme operatörüi belirlendi + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + Hata: Hizalama motoru tanınmıyor + + + + Error: Unknown weight function specified. + Hata:Belirlenen ağırlık fonksiyonu bilinmiyor. - - + + Error: Unknown response curve specified. + Hata: Belirlenen tepki eğrisi bilinmiyor. + + + + Error: Unknown HDR creation model specified. + Hata: Bilinmeyen HDR oluşturma modeli belirlendi + + + + Error: Unknown tone mapping operator specified. + Hata: Bilinmeyen ton eşleme operatörüi belirlendi + + + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - Hata: Belirlenen EV değerlerinin sayısı girdi dosya sayısından farklıdır. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + Hata: Belirlenen EV değerlerinin sayısı girdi dosya sayısından farklıdır. - + Load file %1 failed - + - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. - + - + EV values have been assigned. - + + + + + + Starting aligning... + - + Failed executing align_image_stack yığın_görüntü_hizalama yürüyme başarısız - + Failed aligning images. - + - + Creating (in memory) the HDR. - + - + Saving to file %1. - + - - + Image %1 saved successfully - + - + Could not save %1 - + - + NOT Saving HDR image to file. %1 - + + + + + Exporting to HTML + + + + + ERROR: directory %1 must exist + - + Tonemapping requested, saving to file %1. - + - - ERROR: Cannot save to file: %1 - HATA:Dosyayı kayıt edemez: %1 + + Resizing to width %1. + - - Failed loading images - + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - Kullanım: %1 [SEÇENEKLER]... [GİRİŞ DOSYALARI]... + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + DnDOption - Drag and Drop - Sürükle ve Bırak + Choose action + @@ -1208,35 +1314,27 @@ DonationDialog - + Luminance HDR - Make a Donation Luminance HDR - Bağışta bulunun - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> açık kaynak kodlu bir yazılım ve oluşturma çalışmaları yüzlerce saat aldı.<br /><br />Eğer yazılımı beğendi iseniz ve işinizde kullanıyorsanız, lütfen bir bağış yaparak yazarları destekleyin.<br /><br />Şimdi Luminance HDR için bir bağış yapmak ister misiniz?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! Evet, istiyorum! - + Ask me again later Sonra tekrar hatırlat - + No, Stop bothering me! Hayır, beni rahatsız etmeyin! @@ -1244,47 +1342,47 @@ EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable Düz&enlenebilir - + R&eference Re&ferans - + Select the previous image in both lists Önceki görüntüyü her iki listeden seç - + Select the next image in both lists Sonraki görüntüyü her iki listeden seç - + Choose a directory and a prefix Bir dizin ve bir önek seçin @@ -1292,102 +1390,25 @@ EditingToolsDialog - + Editing Tools Düzenleme Araçları - - Visualization and Navigation - Görselleştirme ve Navigasyon + + Images List + Görüntü Listesi - - Fit to window - Pencereye sığdır + + Ed&itable + Düz&enlenebilir - - &Fit to Window - &Pencereye sığdır - - - - Fill the window - - - - - Fill &window - - - - - Original size - Özgün boyut - - - - Origina&l Size - Özgün &Boyut - - - - &Mode: - - - - - Difference (E-P) - Fark (E-P) - - - - Overlay (E+P) - Overlay (E+P) - - - - Editable Only (E) - Sadece Düzenlenebilir (E) - - - - Pivot Only (P) - Sadece Eksen (P) - - - - Antighosting Mask - Anti-gölgeleme Maskesi - - - - - Brush - - - - - - Lasso - - - - - Images List - Görüntü Listesi - - - - Ed&itable - Düz&enlenebilir - - - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1395,47 +1416,47 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Seçilen mevcut görüntüyü anti-gölgeleme maskesi üzerinden boyayabilir ve kaydırabilirsiniz.</p></body></html> - + The image currently selected in this list can be translated up,down,left and right using the controls below. This image's histogram is diplayed in the widget above. Görüntü mevcut listeded seçildi, aşağıdaki kontrolu kullanarak yukarı,aşağı,sola ve sağa çevirebilirsiniz. Bu görüntünün widget'i yukarıda görüntülenir. - + Select the previous image in both lists Önceki görüntüyü her iki listeden seç - + Use this button to move the selection to the previous image in both lists. Önceki görüntü seçimini her iki listeden de taşımak için bu butonu kullanın. - + Select the next image in both lists Sonraki görüntüyü her iki listeden seç - + Use this button to move the selection to the next image in both lists. Sonraki görüntü seçimini her iki listeden de taşımak için bu butonu kullanın. - - R&eference - Re&ferans + + Referen&ce + - + The reference image is the one currently selected Referans görüntü şu anda seçili - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1443,189 +1464,254 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Şu anda bu listede seçilen görüntü için düzenlenebilir referans noktası</p></body></html> - - Tools - Araçlar + + Crop the stack of images after a selection with the left mouse button has been made + Sol fare tuşu ile bir seçim yapdıktan sonra görüntü yığınını kırpın - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + Bu butona tıkladığınızda (butona basılı tutun ve sol fare düğmesi ile bir kırpma alanı seçmek için işaretçiyi haraket ettirin) daha önce farenin sol tuşu ile seçtiğiniz boyutaki tüm görüntüleri kırpmanız mümkün olacak. - - O. Gallo and others - + + &Crop All Images + &Tüm Görüntüleri Kırp - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Ctrl+X + Ctrl+X - - Auto anti-ghosting - + + &Anti-Ghosting + - - Artifact-free HDR Imaging - + + &Save Images + &Görüntüleri Kaydet - - Total Patches: - + + Ctrl+S + Ctrl+S - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Visualization and Navigation + Görselleştirme ve Navigasyon - - Threshold - + + Fit to window + Pencereye sığdır - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + &Fit to Window + &Pencereye sığdır - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + Fill the window + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + Fill &window + - - Recompute - + + Original size + Özgün boyut - - Crop the stack of images after a selection with the left mouse button has been made - Sol fare tuşu ile bir seçim yapdıktan sonra görüntü yığınını kırpın + + Origina&l Size + Özgün &Boyut - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - Bu butona tıkladığınızda (butona basılı tutun ve sol fare düğmesi ile bir kırpma alanı seçmek için işaretçiyi haraket ettirin) daha önce farenin sol tuşu ile seçtiğiniz boyutaki tüm görüntüleri kırpmanız mümkün olacak. + + &Mode: + - - &Crop All Images - &Tüm Görüntüleri Kırp + + Difference (E-P) + Fark (E-P) + + + + Overlay (E+P) + Overlay (E+P) + + + + Editable Only (E) + Sadece Düzenlenebilir (E) + + + + Pivot Only (P) + Sadece Eksen (P) + + + + Antighosting Mask + Anti-gölgeleme Maskesi + + + + Brush + + + + + Lasso + - Ctrl+X - Ctrl+X + Anti Ghosting + - - &Anti-Ghosting - + + O. Gallo and others + - - &Save Images - &Görüntüleri Kaydet + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Ctrl+S - Ctrl+S + + Auto anti-ghosting + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Artifact-free HDR Imaging + + + + + Total Patches: + - + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + + + + + Threshold + + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + + + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + + + + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + + + + + Recompute + + + + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + &Ekle - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - &Çıkart + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: Boyut: - - - + + + px px - - &Strength: - &Güç: + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> @@ -1637,10 +1723,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Sol fare tuşuna basılı tutarak bir kırpma alanı seçebilirsiniz.</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1648,10 +1734,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Seçilen düzenlenebilir görüntü için kaydırma değerleri</p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1659,285 +1745,375 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Buradan seçilen düzenlenebilir görüntü için kullanıcı kaydırma değerlerini ayarlayabilirsiniz</p></body></html> - + Shift values for editable image Düzenlenebilir görüntü kaydırma değerleri - + Reset the shift values for the currently selected movable image Seçilen hareketli görüntü için kayma değerlerini sıfırlayın - + &Reset Sıfı&rla - + Reset the shift values for all the images Tüm görüntüler için kayma değerlerini sıfırlayın - + Reset &All Tümünü Sıfırla - - &Horizontal: - &Yatay: + + Hori&zontal: + - - &Vertical: - &Dikey: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image Seçilen hareketli görüntü için yatay kaydırma değerini girin - + Insert a vertical shift value for the currently selected movable image Seçilen hareketli görüntü için dikey bir kayma değeri girin - + Move up of 1 pixel the currently selected movable image Seçilen hareketli görüntüyü 1 piksel yukarıya taşı - + Move down of 1 pixel the currently selected movable image Seçilen hareketli görüntüyü 1 piksel aşağıya taşı - + Move right of 1 pixel the currently selected movable image Seçilen hareketli görüntüyü 1 piksel sağa taşı - + + > + > + + + Move left of 1 pixel the currently selected movable image Seçilen hareketli görüntüyü 1 piksel sola taşı - + + < + < + + + Histogram - + - + Get information about the graphical elements Grafik öğeler hakkında bilgi alın - + &What's this? &Bu nedir? - + Shift+F1 Shift+F1 - + &Next > &İleri > - + &Cancel &İptal + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + + + + + Open web browser + + + + + Size: + Boyut: + + + + % + + + + + Quality: + Kalite: + + + + Images folder: + + + + + Select... + + + + + Cancel + + + + + Export + + + + + Choose a directory + Bir Dizin Seçin + + + + + Error: + Hata: + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... - + Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + - - - + + + Preview Önizle - + Previews - + - - + + Alignment Hizalama - + Auto-crop - + - - MTB - MTB + + &MTB + - - Hugin's align_image_stack - Hugin'in yığın_görüntü_hizalaması + + Hugin's align_&image_stack + - + &Autoalign images &Görüntüleri otom.hizala - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green Yeşil - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region Görüntüyü bir bölgede kaydır @@ -1945,9 +2121,14 @@ HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -2007,110 +2188,110 @@ - Currently Loaded &Files - Şu anda Yüklü &Dosyalar + &Currently Loaded Files + - + Add Images Görüntüleri Ekle - + Remove Selected Image Seçilen Görüntütü Çıkart - + Clear List Listeyi Temizle - + Preview Önizle - + Selected Image &Exposure Seçilen Görüntüyü Pozla - + EV: EV: - + Alignment Hizalama - - MTB - MTB + + &MTB + - + &Autoalign images &Görüntüleri otom.hizala - - Hugin's align_image_stack - Hugin'in yığın_görüntü_hizalaması + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2119,165 +2300,165 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Farklı pozlanmış görüntülerden bir set yüklemeyi başlat</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2] HDR Oluşturma Ayarlarını Seçin - + Profile - + - - Use Custom Configuration - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Listedeki tanımlı ilk profil genellikle en iyi sonuçlara yol açar. Eğer çıkan HDR görüntüsü yeterince iyi değil ise, değiştirin.</span></p></body></html> - - HDR Creation Model - + + Profile 1 + Profil 1 - - Robertson (Simple) - + + Profile 2 + Profil 2 - - Robertson (Response Recovery) - + + Profile 3 + Profil 3 - - Weighting Function - + + Profile 4 + Profil 4 - - Flat - + + Profile 5 + Profil 5 - - Response Curve - + + Profile 6 + Profil 6 - - sRGB - + + Use this only if the default profiles above do not yield good results + Varsayılan profiller üzerinde iyi sonuçlar yoksa, sadece bunu kullanın - - Custom - + + Use Custom Configuration + - - Response Curve Input File - + + HDR Creation Model + - - Response Curve Output File - + + Debevec + Debevec - - Use this only if the default profiles above do not yield good results - Varsayılan profiller üzerinde iyi sonuçlar yoksa, sadece bunu kullanın + + Robertson (Simple) + - - Linear - Doğrusal + + Robertson (Response Recovery) + - - Debevec - Debevec + + Weighting Function + - + Triangular Üçgensel - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Listedeki tanımlı ilk profil genellikle en iyi sonuçlara yol açar. Eğer çıkan HDR görüntüsü yeterince iyi değil ise, değiştirin.</span></p></body></html> + + Gaussian + Gaussian - - Profile 1 - Profil 1 + + Plateau + Plato - - Profile 2 - Profil 2 + + Flat + - - Profile 3 - Profil 3 + + Response Curve + - - Profile 4 - Profil 4 + + Linear + Doğrusal - - Profile 5 - Profil 5 + + Gamma + Gama - - Profile 6 - Profil 6 + + Log + Günlük - - Gaussian - Gaussian + + sRGB + - - Plateau - Plato + + Custom + - - Gamma - Gama + + Response Curve Input File + - - Log - Günlük + + Response Curve Output File + - + Save As... Farklı Kaydet... - + Save Settings - + - + &Next > &İleri > @@ -2287,187 +2468,181 @@ &İptal - + Image Filename Görüntü Dosyası adı - + Exposure Pozlandırma - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw Tüm biçimler (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; TIFF Görüntüleri (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw RAW Görüntüleri (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images Girdi Resimlerini Seç - + Unknown Bilinmiyor - + Loading... Yükleniyor... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found EXIF verisi bulunamadı - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>Görüntüler Yüklendi.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>Devam etmek için ile pozlama değerlerini kurmanız gerekiyor.<br><font color="#FF0000">%1</font> değerler hala gereklidir.</b></h3></center> - + Loading Error: Yükleme Hatası: - + Start loading a set of images with different exposure Farklı pozlama ile çekilen görüntülerin bir setini yüklemeyi başlat - - - - + + + Error... Hata... - - align_image_stack failed to align images. - - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. Harici uygulama başlatılamadı "<em>align_image_stack</em>".<br>Lütfen daha fazla bilgi için "Yardım-> İçindekiler ... -> Ayarlar -> Harici Araçlar"ı okuyun. - + The external application "<em>align_image_stack</em>" crashed... Harici uygulama "<em>align_image_stack</em>" çöktü... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... "<em>yığın_görüntü_hizalama</em>" uygulaması yürütülürken bir hata oluştu - + Now click on next button Şimdi ileri butonuna tıklayın - - + + Aligning... + Hizalanıyor... + + + + &Finish &Bitti - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - + - - Aligning... - Hizalanıyor... - - - + Weights: - + - + - Response curve: - Yanıt Eğrisi: - + - Model: - Model: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>Tüm EV değerleri ayarlandı.<br>Şimdi İleri butonuna tıklayın.</b></h3></font></center> @@ -2475,154 +2650,260 @@ HelpBrowser - + Luminance HDR Help Luminance HDR Yardım - + + + &File + &Dosya + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Luminance Yardım - - + + &Print... &Bas... - + + Ctrl+P + Ctrl+P + + + &Exit &Çık - - + + &Find... &Bul... - + + Ctrl+F + + + + Find &Next... Sonrakini &Bul... - + + F3 + + + + Find &Previous... Öncekini &Bul... - - &Add - &Ekle + + Shift+F3 + - + - &Delete - &Sil + &Add Bookmark + &Yer İmi Ekle - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All &Tümünü Sil - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+Y + + + + P&rint Preview + + + + Help SideBar KenarÇubugu Yardım - + LuminanceHDR Online Help LuminanceHDR Online Yardım - - &File - &Dosya - - - + &Edit &Düzen - + &View &Görünüm - - + + &Bookmarks &Yer İmleri - + &Quit &Çık - + Find &Next Sonrakini &Bul - + Find &Previous Öncekini &Bul - + &Contents &İçindekiler - + &Search &Ara - - &Add Bookmark - &Yer İmi Ekle + + &Delete + &Sil - + Find Bul - + Search Term: Arama Terimi: - + New Bookmark Yeni Yer İmi - + New Bookmark's Title: Yeni Yer İminin Başlığı: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>Üzgünüz, kılavuz yüklü değil!</p><p>Eğer uygulamayı kendiniz yaparsanız, lütfen paket sağlayıcı veya LuminanceHDR ekibine başvurun </p></h2> - + LuminanceHDR - Help Browser LuminanceHDR -Tarayıcı Yardım - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2634,43 +2915,39 @@ HelpSideBar - - Contents - İçindekiler - - - + + &Contents &İçindekiler - + Se&arch A&ra - + Searching is case insensitive harf duyarsız arama - + &Search &Ara - - + + 1 1 - + Book&marks Yer &İmleri - + &Add &Ekle @@ -2680,7 +2957,7 @@ &Çıkart - + R&emove All Tümünü &Çıkart @@ -2690,22 +2967,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2731,12 +3008,12 @@ Quality: - Kalite: + Kalite: File size: - + @@ -2762,24 +3039,25 @@ LdrViewer - - - LDR image [%1 x %2] - LDR görüntüsü [%1 x %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma Seviyeler ve Gama - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2787,10 +3065,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Renk Seviyelerini Ayarla</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2798,25 +3076,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Girdi Seviyeleri</span></p></body></html> - + Clip black Siyahı Kırp - + Gamma Gama - + Clip White Beyazı Kırp - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2824,17 +3102,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Çıktı Seviyeleri</span></p></body></html> - + &Reset Sıfı&rla - + &Cancel &İptal - + &OK &TAMAM @@ -2843,7 +3121,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2853,1041 +3131,1177 @@ A&raçlar - + &Help &Yardım - + + Luminance &HDR Online + + + + &Windows &Pencereler - + &View &Görünüm - + HDR &Histogram HDR &Histogram - + &Toolbars A&raç Çubukları - - Preview Panel - + + &Preview Panel + - + &File &Dosya - + &Edit &Düzenle - + Main Toolbar Ana AraçÇubugu - + &New HDR image... &Yeni HDR Görüntüsü... - + New HDR image Yeni HDR Görüntüsü - - + + Create a new HDR image from a set of LDR or Raw images LDR veya RAW görüntülerinden yeni bir HDR görüntüsü oluştur - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files JPEG, Raw, TIFF veya 8/16 bpc dosyalarından yeni bir HDR görüntüsü oluştur - + Ctrl+N Ctrl+N - + &Open HDR image... &HDR Görüntüsünü Aç... - + Open HDR image HDR Görüntüsünü Aç - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) Mevcut HDR Görüntüsünü yükle (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + Ctrl+O Ctrl+O - + &Save as... &Farklı Kaydet... - + Save as... Farklı Kaydet... - - - + + + Save image (HDR or LDR) Görüntüyü Kaydet (HDR veya LDR) - + Ctrl+S Ctrl+S - + &Quit &Çık - - + + Quit Luminance HDR Luminance HDR'den Çık - + Exit Çık - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise Saatin &tersi yöne döndür - + Rotate counter-clockwise Saatin tersi yöne döndür - - - + + + Rotate counter-clockwise the HDR image Saatin tersi yöne döndür - + < < - - Rotate c&lockwise - Saati &yönüne döndür + + Rotat&e clockwise + - + Rotate clockwise Saat yönüne döndü - - - + + + Rotate clockwise the HDR image HDR görüntüsünü saati- yönüne döndü - + > > - - Low Dynamic Range - Düşük Hareket Alanı + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - Hareket Alanını Doldur + + &Fit to Dynamic Range + - + Fit to dynamic range Dinamik aralığı sığdır - + \ \ - - Shrink Dynamic Range - Hareket Alanını Küçült + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - Hareket Alanını Uzat + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - Pozlandırmayı Düşür + + &Decrease Exposure + - + 0 0 - + &Increase Exposure Pozland&ırmayı Artır - + 9 9 - + &Contents... &İçindekiler - + About... Hakkında... - - - + + + Open user manual for Luminance HDR Luminance HDR kuullanım kılavuzunu aç - + F1 F1 - + &Normal Size &Normal Boyut - + Normal size Normal Boyut - - - + + + View HDR image at its normal size HDR görüntüsünü normal boyutta göster - + O O - + Zoom &In Yaklaşt&ır - - - + + + Zoom in Yakınlaştır - + + + - + Zoom &Out &Uzaklaştır - - - + + + Zoom out Uzaklaştır - + - - - + &Fit in Window &Pencereye sığdır - - + + Fit in Window Pencereye sığdır - - + + Make the HDR image fit its window HDR görüntüsünü pencereye sığacak şekilde yap - + W W - + &Preferences... Te&rcihler... - + Luminance Options Luminance Seçenekleri - - - + + + Set various options of Luminance Çeşitli Lumiance seçeneklerini ayarla - + Ctrl+P Ctrl+P - + &Resize... &Yeniden Boyutlandır... - + Resize the HDR image HDR görüntüsünü yeniden boyutlandır - - - + + + Change size of the HDR image HDR görüntüsünün boyutunu değiştir - + Ctrl+R Ctrl+R - + Copy &Exif Data... &Exif Verisi Kopyala... - + Copy Exif Data Exif Verisi Kopyala - - - + + + Copy Exif data between two sets of files Exif verilerini iki dosya grubu arasına kopyala - + Ctrl+E Ctrl+E - + &About Qt Qt H&akkında - + Show information about Qt Qt hakkında bilgiyi göster - - + + Show information about Qt library that is used by Luminance Lumiance tarafından kullanılan Qt kitaplığı hakkında bilgi göster - + Text &under Icons Simge &altında metin - + &Icons Only Sadece S&imgeler - + &Text Only Sa&dece Metin - + Text &Alongside Icons Simgelerin &Yanına Metin - + &Batch Tone Mapping... Toplu &Ton Eşleme... - + Convert multiple HDR images to LDR Çoklu HDR görüntülerini LDR'ye dönüştür - - + + Convert multiple HDR images to LDR using existing settings files Çoklu HDR görüntülerini mevcut ayar dosyalarını kullanarak LDR'ye dönüştür - + Ctrl+B Ctrl+Y - + &What's This? &Bu Nedir? - - + + Get verbose information about user interface elements Kullanıcı arabirimi öğeleri hakkında ayrıntılı bilgi alın - + Shift+F1 Shift+F1 - + About &Luminance HDR Luminance HDR &Hakkında - + Show information about Luminance HDR Luminance HDR hakkında bilgi göster - - + + Show information about Luminance HDR, its authors and contributors Luminance HDR Yazarları ve katkıda bulunanlar hakkında bilgi göster - + + Ctrl+I + + + + Save HDR image &preview... HDR görüntü önizlemeyi &kaydet... - - - + + + Save the current HDR Preview to an LDR file Geçerli HDR önizlemesini bir LDR dosyasına kaydet - + &Projective Transformation... &Projektif Dönüşüm... - - - + + + Apply projective transformation to the current HDR image Projektif Dönüşümü geçerli HDR'ye uygula - + + Ctrl+J + + + + &Crop to Selection &Seçimi Kırp - + Crop to Selection Seçimi Kırp - - + + Crop the image to selection rectangle Dikdörtgen ile seçilen görüntüyü kırp - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image - + + + + + Ctrl+X + Ctrl+X - + Remove &Selection Seçimi Çıkart - + Remove selection rectangle Seçim dikdörtgenini kaldır - - + + Remove selection rectangle from image area Görüntü alanından seçim dikdörtgenini kaldır - + + Ctrl+Z + + + + Make a &Donation Bağış &Yapın - + Ctrl+D Ctrl+D - - Lock Viewers - Görüntüleyicileri Kilitle + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view Senkron görünüm için görüntüleri kilitle - - Minimize - Küçült + + S + + + + + &Minimize + - - Maximize - Büyüt + + Ma&ximize + - - Bring All to Front - Tümünü Öne Getir + + &Bring All to Front + - - Show Preview Panel - Önizleme Panelini Göster + + &Show Preview Panel + - + Show/Hide Preview Panel Önizleme Panelini Göster/Gizle - + Ctrl+V Ctrl+V - + Adjust &Levels Düzeyleri &Ayarla - - + + Adjust Levels Düzeyleri Ayarla - - + + Tune the histogram for the current LDR Şu anki LDR için histogramı ayarla - + + Ctrl+L Ctrl+L - + Save All Tümünü Kaydet - - + + Save All LDR files Tün LDR Dosyalarını Kaydet - - Remove Tab - Sekmeyi Kaldır + + &Remove Tab + - + Ctrl+W Ctrl+W - - Fill Window - Pencereyi Doldur + + Fill &Window + - + Fill window with the current viewer Mevcut görüntüleyici ile pencereyi doldur - - Batch HDR... - Toplu HDR... + + F + - + + Batch &HDR... + + + + Ctrl+H Ctrl+H - + Soft Proofing - + - + Gamut Check - + - - Show on the right - + + &Show on the right + - - Show on the bottom - + + Show &on the bottom + - - Realtime Previews - + + &Realtime Previews + - - Update - + + &Update + - - FITS Importer... - + + &FITS Importer... + - + Import four FITS files representing luminosity, red, green and blue channels - + - + Ctrl+F - + - + White Balance Beyaz Dengesi - + Fix color cast, can be slow - + + + + + E&xport to HTML + + + + + Export to web page with embedded HDR viewer + + + + + &Show Full Screen + + + + + F11 + + + + + Show &Image Full Screen + + + + + F10 + + + + + &Supported RAW Cameras + + + + + Lists all cameras supported by the program + + + + + Ctrl+M + + + + + &Lanczos/Bilinear interpolation + + + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + + + Ctrl+K + + + + + &Online Documentation + + + + + &Developers Web Site + + + + + &Luminance HDR Web Site + + + + + Open Online Documentation Web Site with the System Browser + + + + + Developers Web Site + + + + + Open Developers Web Site with the System Browser + + + + + Luminance HDR Web Site + + + + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! Hazır. Şimdi mevcut bir HDR görüntüsünü açın veya yeni bir tane oluşturun! - + All HDR formats Tüm HDR Biçimleri - + Load one or more HDR images... Bir veya daha fazla HDR görüntüsü yükle... - + Save files in Dosyaya kaydet - - Failed to save - Kayıt başarısız + + + Failed to save %1 + - + Done! Bitti! - + Aborting... Durduruluyor... - + + + Untitled + İsimsiz + + + Cropped Image Görüntü Kırpıldı - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... Kaydedilmemiş değişiklikler.... - + This HDR image has unsaved changes.<br>Do you want to save it? Bu HDR görüntüsünde değişiklikler kayıt edilmedi. <br> Ounu kayıt etmek istiyor musunuz? - + Fattal Warning - + - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? - - - - - - Untitled - İsimsiz + - + Untitled %1 İsimsiz %1 - + Error: %1 Hata: %1 - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences Tercihler - - External Tools - İlave Araçlar - - - + Tone Mapping Ton Eşleme - + RAW Conversion RAW Dönüştürme - + + Color Management + + + + + External Tools + İlave Araçlar + + + Interface Arayüz - - Color Management - + + Fast export + - + Language Lisan - + Default Previews Width Standart Önizl. Genişligi - + px px - + Always show Preview Panel Daima Önizleme Panelini göster - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - Geçici Çalışma Klasörü + + Dark mode (beta) + - - - &Browse... - + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + ... - - Format - + + + &Browse... + - - Export directory - + + Temporary Working Folder + Geçici Çalışma Klasörü - - + + Amount of threads to use on multicore/SMP machines - + - + Batch Tonemapping Number of Threads Toplu Ton Eşleme Konu Sayısı - + General Genel - + Quality: Kalite: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">VNG</span>: use Variable Number of Gradients interpolation. This method computes gradients near the pixel of interest and uses the lower gradients (representing smoother and more similar parts of the image) to make an estimate.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">PPG</span>: use Patterned Pixel Grouping interpolation. Pixel Grouping uses assumptions about natural scenery in making estimates. It has fewer color artifacts on natural images than the Variable Number of Gradients method.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + - + Bilinear - + - + VNG - + - + PPG - + - + AHD - - - - - - - - - - - - - - - - - - ... - ... + - + Median: Orta Kalite: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + - + Do not stretch or rotate pixels Pikseli uzatma veya döndürme - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> @@ -3900,65 +4314,65 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Bu seçenekte devam etmek görüntüyü biraz bulanıklaştırır, ama VNG veya AHD kalite yöntemi yanlış 2x2 örgü desenlerini ortadan kaldırır.</p></body></html> - + Interpolate RGB using 4 colours RGB 4 renk kullanım aradeğeri - + Color correction - + - + White Balance Beyaz Dengesi - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Camera</span>: Use the white balance specified by the camera. If not available, reverts to default neutral white balance</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Automatic</span>: Calculates an automatic white balance averaging the entire image</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + - + Predefined D65 Öntanımlı D65 - + Camera Kamera - + Auto Otomatik - + Manual El ile - + Temperature (Kelvin) Sıcaklık (Kelvin) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3969,26 +4383,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Buradan Kelvin renk sıcaklığını ayarlayın.</p></body></html> - + Green Yeşil - + Set here the green component to set magenta color cast removal level Eflatun renk tonlarını kaldırma düzeyini ayarlamak için buradan yeşil bileşeni ayarlayın - + Highlights Röfleler - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> @@ -4007,36 +4421,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Yeniden Yap</span>: Bir düzey değeri kullanarak vurgulamaları yeniden yap</p></body></html> - + Solid White Düz Beyaz - + Do not transform Dönüştürme - + Blend Karıştır - + Reconstruct Yeniden yap - + Level Düzey - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4047,26 +4461,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> Vurgulamak düzeyini yeniden belirtin. Düşük değerler beyaz tercihi, yüksek değerler renk tercihi.</p></body></html> - + Correct false colors in highlights Vurgulamalarda yanlış rengi düzelt - + Auto Brightness Otom.Parlaklık - + Brightness Parlaklık - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4077,11 +4491,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Çıktı görüntüsünün parlaklık düzeyini belirtin. Varsayılan değer 1.0'dir</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4092,16 +4506,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> RAW resimlerini çözmek için belirli bir siyah nokta değeri kullanın. Eğer bu seçeneği ayarlarsanız, Siyah Nokta değeri otomatik olarak hesaplanacaktır.</p></body></html> - + Black Siyah - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4112,41 +4526,41 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Çıkış görüntüsü siyah nokta değerini belirtin.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + Doygunluk - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - Doygunluk - - - + NR and CA Correction NR ve Düzeltme - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4157,16 +4571,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Gerçek ayrıntıyı koruryarak gürültüyü silmek için dalgacıkları kullanın.</p></body></html> - + Enable noise reduction Gürültü düzeltmeyi etkinleştir - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4177,16 +4591,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Gürültü azaltma eşik değerini ayarlamak için burayı kullanın.</p></body></html> - + Threshold: Eşik: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4197,16 +4611,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Faktörler tarafından verilen ham kırmızı ve mavi katmanları büyütün, renk sapmalarını düzeltmek için genellikle 0.999 1.001 arası.</p></body></html> - + Enable Chromatic Aberration correction Kromatik Sapmaı düzeltmeyi etkinleştir - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4217,11 +4631,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Buradan kırmızı katman büyütme faktörünü ayarlayın</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4232,48 +4646,48 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Burada mavi katman büyütme faktörünü ayarlayın</p></body></html> - + Red Component Kırmızı Bileşen - + Blue Component Mavi Bileşen - - Monitor Profile - - - - - - + + + Browse... - + - + Camera profile Kamera Profili - + + Monitor Profile + + + + Printer profile - + - + align_image_stack command line arguments yığın_görüntü_hizalama komut satırı argümanları - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -4282,40 +4696,40 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">yığın_görüntü_hizalama komut satırı argümanları hakkında daha fazla bilgi edinmek için, </span><span style=" font-family:'Sans Serif'; font-style:italic;">Yardım &gt; İçindekiler &gt; Luminance Ayarları &gt; İlave Araçlar</span><span style=" font-family:'Sans Serif';"> bölümünü okuyun</span></p></body></html> - + &Cancel &İptal - + &OK &TAMAM - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory Bir Dizin Seçin - + Open ICC Profile - + - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4323,105 +4737,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation Projektif Dönüşüm - + Projections Projeksiyonlar - + Source Projection: Kaynak Projeksiyon: - - + + Polar Kutup - - + + Angular Açısal - - + + Cylindrical Silindirik - - + + Mirror Ball Top Ayna - + Destination Projection: Hedef Projeksiyon: - + Angles: Açılar: - - - - + + + + ° ° - + Bilinear Interpolation Bilinear Interpolation - + Oversample factor: Oversample factor: - + Rotation (degrees) Dönüş (açılar) - + Yaw: Yaw: - + Pitch: Pitch: - + Roll: Roll: - + &Cancel &İptal - + &OK &Tamam @@ -4429,416 +4843,451 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: HATA: Ton Eşleme Ayarları dosyası yüklenemedi - + ERROR: File too old, cannot parse Tone Mapping Setting file: - + - + ERROR: cannot parse Tone Mapping Setting file: - + QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + Warning - + I cannot open monitor profile. Please select a different one. - + I cannot open printer profile. Please select a different one. - + Please select a printer profile . - + I cannot perform the color transform. Please select a different monitor profile. - + - - Option -v -a... - -v -a seçeneği... + + Triangular + Üçgensel - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + Plato + + + + Gaussian + Gaussian + + + + Flat + + + + + Linear + Doğrusal + + + + Gamma + Gama + + + + Logarithmic + Logaritmik + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + - + PreGamma=%1 - + - + Contrast Equalization Kontrast Geliştirme - + Contrast - + - - + + Saturation Doygunluk - + Detail - + - + Luminance Level Işık Düzeyi - + Luminance Level=Auto - + - + Color Saturation Renk Doygunluğu - + Contrast Enhancement Kontrast Geliştirme - + Alpha Alfa - + Beta Beta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + - + + InvAlpha + + + + simple - + - + Equation 2 Denklem 2 - + Equation 4 Denklem 4 - - + + Local - + - + Bias Sapma - + Spatial - + - - + + Range Sıra - + Base - + - + Multiplier Çoğullayıcı - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness Parlaklık - + Chromatic Adaptation Kromatik Adaptasyon - + Light Adaptation Işık Adaptasyonu - + + Option -v -a... + -v -a seçeneği... + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float %1 dalgalanma için dönüştürülemiyor - + Loading TMO settings from file: %1 - + - + Input file %1 - + - + Running in HDR-creation mode. - + - + Running in Load-HDR mode. - + - + Temporary directory: %1 - + - + Using %n threads. - - - + - + Loading file %1 - + - + Successfully loaded file %1. - + - + All LDR formats Tüm LDR biçimleri - + Save the LDR image as... LDR biçimini farklı kaydet... - + Save the HDR image as... HDR biçimini farklı kaydet... - - Save as... - Farklı kaydet... - - - - Triangular - Üçgensel - - - - Plateau - Plato - - - - Gaussian - Gaussian - - - - Flat - - - - - Linear - Doğrusal - - - - Gamma - Gama - - - - Logarithmic - Logaritmik - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - + + Save as... + Farklı kaydet... ResizeDialog - + Scale Image Görüntüyü Ölçekle - + Hdr Image Size Hdr Görüntü Boyutu - - Width: - Genişlik: + + Restore original size + Özgün boyuta geri yükle - + + &Reset + Sıfı&rla + + + Switch between pixels or percentage Piksel veya yüzde arasında geçiş - + Pixels Pikseller - + Percent Yüzde - - Height: - Yükseklik: - - - + Result size Sonuç Boyutu - - Restore original size - Özgün boyuta geri yükle + + Height: + Yükseklik: - - &Reset - Sıfı&rla + + Width: + Genişlik: - + &Cancel &İptal - + &Scale &Ölçek @@ -4851,184 +5300,194 @@ Parametreler Kayıt edildi - - + + Comment Yorum - + TM Operator TM Operatörü - + Simple Sade - + Equation 2 Denklem 2 - + Local Contrast Threshold Yerel Kontrast Eşiği - + Bias Sapma - + Spatial Kernel Sigma Uzaysal Çekirdek Sigması - + Range Kernel Sigma Dizi Çekirdek Sigması - + Base Contrast Temel Kontrast - + Alpha Alfa - + Beta Beta - - + + Color Saturation Renk Doygunluğu - + Noise Reduction Gürültü Azaltma - + Old Fattal Old Fattal - + + Rho + + + + + InvAlpha + + + + Contrast Equalization Kontrast Geliştirme - + Contrast Factor Kontrast Faktörü - + Saturation Factor Doygunluk Faktörü - + Detail Factor Detay Faktörü - + Contrast Enhancement Kontrast Geliştirme - + Luminance Level Işık Düzeyi - + Manual Luminance Level Işık Düzeyi Kılavuzu - + Cone and Rod based on Luminance - + - + Local Tonemapping Yerel Ton eşleme - + Cone Level Koni Seviyesi - + Rod Level Çubuk Seviyesi - + Multiplier Çoğullayıcı - + Use Scales Ölçekleri Kullan - + Key Value Anahtar Değer - + Phi Value Phi Degeri - + Range Sıra - + Lower Scale Düşük Ölçek - + Upper Scale Yüksek Ölçek - + Brightness Parlaklık - + Chromatic Adaptation Kromatik Adaptasyon - + Light Adaptation Işık Adaptasyonu - + Pre-gamma Pre-Gama @@ -5036,14 +5495,52 @@ SavingParameters - + Saving Parameters Kayıt Parametrekleri - + Enter a short comment for the saved parameters: - + + + + + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + @@ -5055,452 +5552,499 @@ + ThresholdWidget + + + Frame + + + + + Threshold + + + + TiffModeDialog Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - Ton Eşleme operatörleri ve seçenekleri + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + + + + + Tone Mapping Settings + Ton Eşleme Ayarları + + + + Save current parameters to a text file + + + + + Save current parameters (pregamma and TMO) to a text file. + + + + + Load an existing text file containing pregamma and TMO settings + Ön gama ve TMO ayarlarını içeren bir metin dosyası yükle + + + + Load an existing text file containing pregamma and TMO settings. + + + + + Save current parameters + + + + + Load saved parameters + + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + + + + + Process + İşlem + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + Tone eşlemeden önce gama uygulandı + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + Programcının varsayılanlarını geri yükle (1) + + + + Size of the resulting LDR image + + + + + Here you can choose the size of the resulting LDR image. + + + + + Set Custom Output Size + Özel Çıktı Boyutu Ayarla + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + Bu düğmeye tıkladığınızda çıkan görüntünün LDR boyutu için bir <i>genişlik</i> değeri eklemek mümkün olacak.<br>Enter (veya Return)'a bastıktan sonra yükseklik değeri otomatik olarak hesaplanır ve yeni boyut listeye eklenir. - + Start tonemapping (CTRL+T) Ton Eşlemeyi Başlat (CTRL+T) - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - + - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR Geçerli LDR'yi güncelle - + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap Ton Eşleme - + Mantiuk '06 - + - + Mantiuk '08 - + - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik - + + + + + Mai + - + Operator Operator - + Contrast Factor Kontrast Faktörü - + Saturation Factor Doygunluk Faktörü - + Detail Factor Detay Faktörü - + Contrast Equalization Kontrast Geliştirme - + Predefined Display - + - + Lcd Office Lcd Ofis - + Lcd Lcd - + Lcd Bright Lcd Parlak - + CRT CRT - - + + Color Saturation Renk Doygunluğu - + Contrast Enhancement Kontrast Geliştirme - + Enable Luminace Level Işık Düzeyini Etkinleştir - + Luminance Level Işık Düzeyi - + Alpha Alfa - + Beta Beta - + Noise Reduction Gürültü Azaltma - + Version 2.3.0 - + + + + + Inverse Alpha + - + + Rho + + + + Bias Sapma - + Spatial Kernel Sigma Uzaysal Çekirdek Sigması - + Range Kernel Sigma Dizi Çekirdek Sigması - + Base Contrast Temel Kontrast - + Key Value Anahtar Değer - + Phi Phi - + Use Scales Ölçekleri Kullan - + Range Sıra - + Lower Scale Düşük Ölçek - + Upper Scale Yüksek Ölçek - + Brightness Parlaklık - + Chromatic Adaptation Kromatik Adaptasyon - + Light Adaptation Işık Adaptasyonu - + Local Contrast Threshold Yerel Kontrast Eşiği - + Simple Sade - + Equation Number Eşitleme Numarası - - Eqn 2 - Eşt 2 + + Eqn &2 + - - Eqn 4 - Eşt 4 + + Eqn &4 + - + Multiplier Çoğullayıcı - + Local Tone Mapping Yerel Ton Eşleme - + Auto Cone/Rod Otomatik Koni/Çubuk - + Cone Level Koni Seviyesi - + Rod Level Çubuk Seviyesi - + + This operator has no options + + + + Restore operator's default values Operatörün varsayılanlarını geri yükle - + Restore Geri yükle - + Previous applied settings - + - + Previous Önceki - + Next applied settings - + - + Next Sonraki - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - - - - - Tone Mapping Settings - Ton Eşleme Ayarları - - - - Save current parameters to a text file - - - - - Save current parameters (pregamma and TMO) to a text file. - - - - - &Save to File - Dosyaya Kaydet - - - - Load an existing text file containing pregamma and TMO settings - Ön gama ve TMO ayarlarını içeren bir metin dosyası yükle - - - - Load an existing text file containing pregamma and TMO settings. - - - - - &Load from File - &Dosyadan Yükle - - - - Save current parameters - - - - - - ... - ... - - - - Load saved parameters - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - - - - - Process - İşlem - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - Tone eşlemeden önce gama uygulandı - - - - Restore pregamma's default value (1) - Programcının varsayılanlarını geri yükle (1) - - - - Size of the resulting LDR image - - - - - Here you can choose the size of the resulting LDR image. - - - - - Set Custom Output Size - Özel Çıktı Boyutu Ayarla - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - Bu düğmeye tıkladığınızda çıkan görüntünün LDR boyutu için bir <i>genişlik</i> değeri eklemek mümkün olacak.<br>Enter (veya Return)'a bastıktan sonra yükseklik değeri otomatik olarak hesaplanır ve yeni boyut listeye eklenir. + + Queue size: %1 + - + TM Database Problem TM Veritabanı Problemi - + The database used for saving TM parameters cannot be opened. Error: %1 Veritabanında kullanılan kayıtlı TM parametreleri açılamaz. @@ -5508,56 +6052,56 @@ - + Load a tonemapping settings text file... Bir ton eşleme ayarları metin dosyası yükle... - - + + LuminanceHDR tonemapping settings text file (*.txt) - + - - - - + + + + Aborting... Durduruluyor... - + File is not readable (check existence, permissions,...) Dosya okunabilir değil (varlığını, izinlerini.... kontrol edin) - + Save tonemapping settings text file to... Ton Eşleme ayarları metin dosyasını şuraya kopyala... - + File is not writable (check permissions, path...) Dosya yazılabilir değil (izinleri, yolu... kontrol edin) - + File is not readable (check permissions, path...) Dosya okunabilir değil (izinleri, yolu... kontrol edin) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. - + - + Custom LDR size Özel LDR boyutu - + Enter the width of the new size: Yeni genişlik boyutunu girin: @@ -5567,17 +6111,17 @@ Load Custom Settings - + Sort by - + Comments: - + @@ -5592,7 +6136,7 @@ Most Useful Operators - + @@ -5602,12 +6146,12 @@ Load - + Cancel - + @@ -5618,108 +6162,108 @@ Exif verisi kopyala - + From - + - - + + Append files to the list Dosyaları listeye ekle - - + + Remove selected file(s) from the list Seçili dosyaları listeden kaldır - - + + Move up selected file(s) Seçili dosyaları yukarı taşı - - + + Move down selected file(s) Seçili dosyaları aşağı taşı - + To - + - + Log Günlük - + Exif operations report Exif işlemleri raporu - - &Show only: - &Sadece göster: + + Show onl&y: + - + Filter messages based on severity İletileri şiddetine görei filtrele - + All messages Tüm mesajlar - + Errors only Sadece Hatalar - - &Filter log messages: - Filtre günlük mesajları + + Filter &log messages: + - + Clear filter text Süzgeç metnini temizle - + Keep existing Exif tags in destination file Mevcut hedef dosyadaki Exif etiketlerini koru - + &Cancel &İptal - + &Start &Başlat - - + + All Supported formats Desteklenen tüm biçimler - - + + Select the input images Girdi Resimlerini Seç - + &Done &Bitti @@ -5733,27 +6277,33 @@ %1 Lisans belgesi bulunamadı: Online %2Buradan%3 bulabilirsiniz - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation Bağış - + Would you like to donate? Bağış yapmak istiyormusunuz? - + Yes, I'd love to! Evet, istiyorum! - + Stop Bothering Me Canını Sıkılıyorsa Beni Durdur - + Remind me later Daha sonra hatırlat @@ -5763,18 +6313,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file diff -Nru luminance-hdr-2.5.0/i18n/lang_zh.ts luminance-hdr-2.5.1/i18n/lang_zh.ts --- luminance-hdr-2.5.0/i18n/lang_zh.ts 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/i18n/lang_zh.ts 2017-05-10 19:14:06.000000000 +0000 @@ -1,25 +1,19 @@ - - - + AboutLuminance - About Luminance - 关于:Luminance + About Luminance HDR + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +</style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + @@ -31,15 +25,10 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2013, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">(c) 2010-2012, Franco Comida, Davide Anastasia<br /><a href="http://qtpfsgui.sourceforge.net"><span style=" text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> {3C?} {4.0/?} {3.?} {40/?} {1"?} {11p?} {400;?} {0p?} {0p?} {0p?} {0p?} {0;?} {0p?} {12p?} {600;?} {00007f?} {2006-2009,?} {0p?} {0p?} {0p?} {0p?} {0;?} {0p?} {2010-2013,?} {0000f?} +</style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> + @@ -47,70 +36,65 @@ &作者 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Main Developers Luminance HDR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Improvements, bugfixing</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; font-size:9pt; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> + - + &Thanks To &感谢 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; font-size:9pt; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rauch Christian<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Rene Zbinden<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Arne Hagenah<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Ignacy Gawedzki<br /> </span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Dave Coffin<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">And also</span><span style=" font-family:'Sans Serif'; font-size:9pt;"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> - +</style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Tiff LDR bugfixes and suggestion</span><span style=" font-family:'Sans Serif';"><br /> Ignacy Gawedzki<br /> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">DCRaw</span><span style=" font-family:'Sans Serif';"><br /> Dave Coffin<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">And also</span><span style=" font-family:'Sans Serif';"><br /> Erik Ouchterlony<br /> Antoine Latter<br /> Frank Boehme<br /> Sloan Poe<br /> Elizabeth Oldham </span></p></body></html> + - + Changelog - - - - - http://qtpfsgui.sourceforge.net/updater/Changelog - + - + &License Agreement &许可证和协议 - + &OK &确定 @@ -119,290 +103,290 @@ BatchHDRDialog - Batch HDR Dialog - 批处理HDR对话框 + Batch HDR + - + Number of bracketed images: 阶段曝光的图片数量: - - + + Select the number of bracketed pictures used to create the HDRs 选择用来生成HDR的分阶段曝光的图片数量 - + Output 导出 - + + Choose an HDR output file format + 选择HDR导出文件格式 + + + Predefined profile: 预定义配置文件: - - Choose an HDR output file format - 选择HDR导出文件格式 + + Output format: + 导出格式: - + Choose one of the creation predefined profiles. See documentation for more information. - + - + Profile 1 配置文件1 - + Profile 2 配置文件2 - + Profile 3 配置文件3 - + Profile 4 配置文件4 - + Profile 5 配置文件5 - + Profile 6 配置文件6 - - Output format: - 导出格式: - - - + Alignment 对齐 - + Auto align the bracketed pictures 自动对齐分阶段曝光图片 - + Auto-align images 自动对齐图片 - + Use MTB (Median Threshold Bitmap) engine 阀值位图中位数引擎 - - MTB - 阀值位图中位数 + + &MTB + - + Use Hugin's align_image_stack engine 是用Hugin's align_image_stack引擎 - - Hugin's align_image_stack - Hugin's align_image_stack_engine + + Hugin's align_&image_stack + - + Auto-crop - - - - - Progress - 进度 + - + &Cancel &取消 - + &Start &开始 - + &Close &关闭 - - Anti-ghosting - + + Progress + 进度 - - Artifact-free High Dynamic Range Imaging - + + Input/Output + - - Threshold - + + Folder where created HDRs are saved + 存储HDRs文件夹 - - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + + Select... + 选择... - - O. Gallo and others - + + Folder where bracketed pictures are located (in alphabetical order) + 阶段曝光图片存储文件夹(按字母书序) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Input folder: + 输入文件夹: - - Auto anti-ghosting - + + Output folder: + 输出文件夹: - - Input/Output - + + Anti-ghosting + - - Folder where created HDRs are saved - 存储HDRs文件夹 + + Artifact-free High Dynamic Range Imaging + - - - Select... - 选择... + + Threshold + - - Folder where bracketed pictures are located (in alphabetical order) - 阶段曝光图片存储文件夹(按字母书序) + + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Input folder: - 输入文件夹: + + O. Gallo and others + - - Output folder: - 输出文件夹: + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + + + + + Auto anti-ghosting + - + Custom config %1 - + - + Choose a source directory 选择源目录 - + Choose a output directory 选择输出目录 - - - + + + Warning 警告 - + The chosen output directory contains HDR files. Those files might be overwritten. Continue? 选择的输出目录包含HDR文件,这些文件可能会被覆盖。继续? - - + + Total number of pictures must be a multiple of number of bracketed images. 图片总数必须是多个阶段曝光图片的数量. - + Started processing... 开始处理... - + Loading files... - + - + Completed with errors 完成但有错误 - + Completed without errors 完成且没有错误 - + Error: missing EXIF data 错误:缺失EXIF数据 - + Aligning... 对齐中... - + Creating HDR... 生成 HDR... - + Doing auto anti-ghosting... - + - + Written 写入完成 - + Error: 错误: - + Aborting... 终止中... @@ -505,11 +489,6 @@ 用于色调映射每一个HDR的设置文件列表 - - Specify output folder for the tone mapped files - 指定色调映射文件输出文件夹 - - Output 输出 @@ -520,151 +499,171 @@ 输出图片宽度: - + + Output Folder: + 输出文件夹: + + + + + Specify output folder for the tone mapped files + 指定色调映射文件输出文件夹 + + + + Selec&t... + 选&择... + + + + + Width of tonemapped image in percent of original image + + + + % % - + Output Format: - + - - Output Folder: - 输出文件夹: + + Image format of tonemapped images + - - Selec&t... - 选&择... + + Image format options + - + Conversion Log 转换日志 - + Batch operations report 批处理运行报告 - - &Show only: - &仅显示: + + Show onl&y: + - + Filter messages based on severity 基于严重度过滤消息 - + All messages 所有消息 - + Errors only 仅错误 - + Success messages 成功消息 - - &Filter log messages: - &过滤日志消息: + + Filter &log messages: + - + Clear filter text 清楚过滤文字 - + Overall completion progress 整体完成进度 - + &Cancel &取消 - + Start batch tone mapping 开始色调映射批处理 - + &Start &开始 - + Using %n thread(s) - - - + - - - + + + Choose a directory 选择一个目录 - + All HDR images 所有HDR图片 - + Select input images 选择输入图片 - + Load tone mapping settings text files... 载入色调映射设置文本文件... - + Luminance HDR tone mapping settings text file (*.txt) - + - + Processing... 处理中... - + Start processing... 开始处理中... - + Close 关闭 - + &Done &完成 - + All tasks completed. 所有任务已完成. - + Aborting... 终止... @@ -700,474 +699,581 @@ CommandLineInterfaceManager - - Error: Alignment engine not recognized. - 出错: 无法识别对齐引擎. - - - - Error: Unknown weight function specified. - 出错: 指定的加权函数未知. - - - - Error: Unknown response curve specified. - 出错: 指定的响应曲线未知. - - - - Error: Unknown HDR creation model specified. - 出错: 指定的HDR生成模型未知. + + Usage: %1 [OPTIONS]... [INPUTFILES]... + 使用: %1 [选项]...[输入文件]... - - Error: Unknown tone mapping operator specified. - 出错: 指定的色调映射操作符未知. + + Display this help. + - - Error: Threshold must be in the range [0-1]. - + + Display program version. + - - Display this help. - + + Print more messages during execution. + - - Print more messages during execution. - + + Print a list of all supported cameras. + - + [AIS|MTB] Align Engine to use during HDR creation (default: no alignment). - + - + EV1,EV2,... Specify numerical EV values (as many as INPUTFILES). - + - + prefix Save aligned images to files which names start with prefix - + - + HDR_FILE Load an HDR instead of creating a new one. - + - + HDR_FILE Save to a HDR file format. (default: don't save) - + - + VALUE Gamma value to use during tone mapping. (default: 1) - + - + VALUE Width you want to resize your HDR to (resized before gamma and tone mapping) - + - + LDR_FILE File name you want to save your tone mapped LDR to. - + - + THRESHOLD Enable auto anti-ghosting with given threshold. (0.0-1.0) - + - + + Apply autolevels correction after tonemapping. + + + + + Enable generation of a webpage with embedded HDR viewer. + + + + HDR creation parameters - you must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + - + weight = triangular|gaussian|plateau|flat (Default is triangular) - + - + response curve = from_file|linear|gamma|log|srgb (Default is linear) - + - + model: robertson|robertsonauto|debevec (Default is debevec) - + - + curve filename = your_file_here.m - + - + LDR output parameters - + - + VALUE Quality of the saved tone mapped file (1-100). - + - + Tiff format. Legal values are [8b|16b|32b|logluv] (Default is 8b) - + - + Tiff deflate compression. true|false (Default is true) - + - + + HTML output parameters + + + + + VALUE Quality of the interpolated exposures, from the worst (1) to the best(4). Higher quality will introduce less distortions in the brightest and the darkest tones, but will also generate more images. More images means that there is more data that needs to be transferred to the web-browser, making HDR viewer less responsive. (Default is 2, which is sufficient for most applications) + + + + + Specifies the file name, of the web page to be generated. If <page_name> is missing, the file name of the first image with .html extension will be used. (Default is first image name) + + + + + Specify where to store the resulting image files. Links to images in HTML will be updated accordingly. This must be a relative path and the directory must exist. Useful to avoid clutter in the current directory. (Default is current working directory) + + + + Tone mapping parameters - no tonemapping is performed unless -o is specified - + - - Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|pattanaik|reinhard02|reinhard05|mantiuk06|mantiuk08] (Default is mantiuk06) - + + Tone mapping operator. Legal values are: [ashikhmin|drago|durand|fattal|ferradans|pattanaik|reinhard02|reinhard05|mai|mantiuk06|mantiuk08] (Default is mantiuk06) + - + SETTING_FILE Load an existing setting file containing pre-gamma and all TMO settings - + - + Fattal - + - + alpha FLOAT - + - + beta FLOAT - + - + color FLOAT - + - + noise FLOAT - + - + new true|false - + - + + Ferradans + + + + + rho FLOAT + + + + + inv_alpha FLOAT + + + + Mantiuk 06 - + - + contrast FLOAT - + - + saturation FLOAT - + - + detail FLOAT - + - + equalization true|false - + - + Mantiuk 08 - + - + color saturation FLOAT - + - + contrast enhancement FLOAT - + - + luminance level FLOAT - + - + enable luminance level true|false - + - + Durand - + - + spatial kernel sigma FLOAT - + - + range kernel sigma FLOAT - + - + base contrast FLOAT - + - + Drago - + - + bias FLOAT - + - + Reinhard 02 - + - + key value FLOAT - + - + phi FLOAT - + - + use scales true|false - + - + range FLOAT - + - + lower scale FLOAT - + - + upper scale FLOAT - + - + Reinhard 05 - + - + Brightness FLOAT - + - + Chroma adaption FLOAT - + - + Light adaption FLOAT - + - + Ashikmin - + - + Equation number 2 true|false - + - + Simple true|false - + - + Local threshold FLOAT - + - + Pattanaik - + - + multiplier FLOAT - + - + Local tone mapping true|false - + - + Auto luminance true|false - + - + cone level FLOAT - + - + rod level FLOAT - + + + + + Luminance HDR version + + + + + With LibRaw version + + + + + models listed + + + + + Error: htmlQuality must be in the range [1..4]. + + + + + Error: Alignment engine not recognized. + 出错: 无法识别对齐引擎. + + + + Error: Unknown weight function specified. + 出错: 指定的加权函数未知. + + + + Error: Unknown response curve specified. + 出错: 指定的响应曲线未知. - - + + Error: Unknown HDR creation model specified. + 出错: 指定的HDR生成模型未知. + + + + Error: Unknown tone mapping operator specified. + 出错: 指定的色调映射操作符未知. + + + + Error: The specified file with TMO settings could not be parsed! - + - + Error: The specified file with TMO settings could not be parsed!: %1 - + - - Error: Quality must be in the range [1-100]. - 出错: 质量必须在[0-100]范围之内. {1-100]?} + + Error: Quality must be in the range [1..100]. + - + Error: Unknown tiff format. - + - - Error: The number of EV values specified is different from the number of input files. - 出错: 指定的EV值数量于输入文件数量不同. + + Error: Threshold must be in the range [0..1]. + - - Error: You must either load an existing HDR file (via the -l option) or specify INPUTFILES to create a new HDR - + + Error: The number of EV values specified is different from the number of input files. + 出错: 指定的EV值数量于输入文件数量不同. - + Load file %1 failed 载入文件 %1失败 - + Error: Exif data missing in images and EV values not specified on the commandline, bailing out. - + - + EV values have been assigned. EV值已被指定. - + + + Starting aligning... + + + + Failed executing align_image_stack 执行对齐图片堆栈失败 - + Failed aligning images. 对齐图片失败. - + Creating (in memory) the HDR. 正在(寄存器中)创建HDR. - + Saving to file %1. 正在保存到文件%1. - - + Image %1 saved successfully 图片 %1 成功保存 - + Could not save %1 无法保存%1 - + NOT Saving HDR image to file. %1 未能保存HDR图片到文件%1 - + + Exporting to HTML + + + + + ERROR: directory %1 must exist + + + + Tonemapping requested, saving to file %1. 已请求色调映射,正在保存到文件%1. - - ERROR: Cannot save to file: %1 - 出错:无法保存到文件: %1 + + Resizing to width %1. + - - Failed loading images - 载入图片失败 + + Applying gamma %1. + - - Usage: %1 [OPTIONS]... [INPUTFILES]... - 使用: %1 [选项]...[输入文件]... + + +Image %1 successfully saved + + + + + +ERROR: Cannot save to file: %1 + + + + + Tonemapping NOT requested. + + + + + Failed loading images + 载入图片失败 DnDOption - Drag and Drop - 拖放 + Choose action + @@ -1208,35 +1314,27 @@ DonationDialog - + Luminance HDR - Make a Donation Luminance HDR - 请捐款 - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;"> is open-source software and its development required hundreds of hours of work.<br /><br />If you like it, if you use it in your work and you would like to see it gradually improved,<br />please support its authors by making a donation.<br /><br />Would you like to make a donation for Luminance HDR now?</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Droid Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Luminance HDR</span><span style=" font-family:'Sans Serif'; color:#000000;">是一个开源软件,它的开发过程包含了数百小时的工作.<br /><br />如果你喜欢他,如果你在工作工程中使用它,如果你想看到它逐渐地被改善,<br />请通过捐款支持它的作者们.<br /><br />你现在想给Luminance HDR捐款吗?</span></p></body></html> + <html><head/><body><p><span style=" font-weight:600;">Luminance HDR</span> is open-source software and its development required hundreds of hours of work.</p><p>If you like it, you are using it in your HDR workflow and you would like to see it gradually improved, please support its authors by making a donation.</p><p>Would you like to make a donation for Luminance HDR now?</p></body></html> + - + Yes, I'd love to! 是的,我想! - + Ask me again later 过后再询问我 - + No, Stop bothering me! 不,请不要再问我这个问题! @@ -1244,47 +1342,47 @@ EditingTools - + Maskable - + - + Good image - + - + Add good image - + - + Remove good image - + - + Ed&itable 可&编辑 - + R&eference 参&考图片 - + Select the previous image in both lists 在两个列表中同时选择前面的图片 - + Select the next image in both lists 选择下一个都在两个列表中的图片 - + Choose a directory and a prefix 选择一个目录和前缀 @@ -1292,635 +1390,713 @@ EditingToolsDialog - + Editing Tools 编辑工具 - - Visualization and Navigation - 可视化和导航 - - - - Fit to window - 适合窗口 - - - - &Fit to Window - &适合窗口 + + Images List + 图片列表 - - Fill the window - + + Ed&itable + 可&编辑 - - Fill &window - + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> + - - Original size - 原始大小 + + The image currently selected in this list can be translated up,down,left and right using the controls below. +This image's histogram is diplayed in the widget above. + 当前选中列表中的图片可以通过下面的控制上下左右平移。 +图片的直方图显示子在上面的小工具窗口中. - - Origina&l Size - 原始&l大小 + + Select the previous image in both lists + 在两个列表中同时选择前面的图片 - - &Mode: - + + Use this button to move the selection to the previous image in both lists. + 使用这个按钮移动在两个列表中都选中的之前的图片。 - - Difference (E-P) - 差分(E-P) + + Select the next image in both lists + 选择下一个都在两个列表中的图片 - - Overlay (E+P) - 覆盖 (E+P) + + Use this button to move the selection to the next image in both lists. + 使用这个按钮移动下一个同时在两个列表选中的图片。 - - Editable Only (E) - 仅可编辑(E) + + Referen&ce + - - Pivot Only (P) - 仅中心点 (P) + + The reference image is the one currently selected + 参考图片为当前选中图片 - - Antighosting Mask - 抗重影蔽光框 + + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> + - - - Brush - + + Crop the stack of images after a selection with the left mouse button has been made + 左键选中后剪裁堆栈的图片 - - - Lasso - + + Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). + 点击这个按钮可以剪裁所有图片到之前使用左键选择的图片的大小(按住鼠标左键,并移动指针到一个剪裁区域,然后按这个按钮). - - Images List - 图片列表 + + &Crop All Images + &剪裁所有图像 - - Ed&itable - 可&编辑 + + Ctrl+X + Ctrl+X - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The currently selected image is the one that you can shift and paint an anti-ghosting mask on.</p></body></html> - + + &Anti-Ghosting + - - The image currently selected in this list can be translated up,down,left and right using the controls below. -This image's histogram is diplayed in the widget above. - 当前选中列表中的图片可以通过下面的控制上下左右平移。 -图片的直方图显示子在上面的小工具窗口中. + + &Save Images + &保存图像 - - Select the previous image in both lists - 在两个列表中同时选择前面的图片 + + Ctrl+S + Ctrl+S - - Use this button to move the selection to the previous image in both lists. - 使用这个按钮移动在两个列表中都选中的之前的图片。 + + Visualization and Navigation + 可视化和导航 - - Select the next image in both lists - 选择下一个都在两个列表中的图片 + + Fit to window + 适合窗口 - - Use this button to move the selection to the next image in both lists. - 使用这个按钮移动下一个同时在两个列表选中的图片。 + + &Fit to Window + &适合窗口 - - R&eference - 参&考图片 + + Fill the window + - - The reference image is the one currently selected - 参考图片为当前选中图片 + + Fill &window + - - <html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The image currently selected in this list serves as a reference position for the editable image</p></body></html> - + + Original size + 原始大小 - - Tools - 工具 + + Origina&l Size + 原始&l大小 - - <html><head/><body><p>Here you can activate the auto anti-ghosting algorithm, set the threshold value and recompute patches</p></body></html> - + + &Mode: + - - O. Gallo and others - + + Difference (E-P) + 差分(E-P) - - <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> - + + Overlay (E+P) + 覆盖 (E+P) - - Auto anti-ghosting - + + Editable Only (E) + 仅可编辑(E) - - Artifact-free HDR Imaging - + + Pivot Only (P) + 仅中心点 (P) - - Total Patches: - + + Antighosting Mask + 抗重影蔽光框 - - <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> - + + Brush + - - Threshold - + + Lasso + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> - + + Anti Ghosting + - - <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + + O. Gallo and others + - - <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> - + + <html><head/><body><p>Enable auto anti-ghosting algorithm</p></body></html> + - - Recompute - + + Auto anti-ghosting + - - Crop the stack of images after a selection with the left mouse button has been made - 左键选中后剪裁堆栈的图片 + + Artifact-free HDR Imaging + - - Clicking this button you will be able to crop all the images to the size that you have previously selected with the left mouse button (press and hold the left mouse button and move the pointer to select a crop area, then press this button). - 点击这个按钮可以剪裁所有图片到之前使用左键选择的图片的大小(按住鼠标左键,并移动指针到一个剪裁区域,然后按这个按钮). + + Total Patches: + - - &Crop All Images - &剪裁所有图像 + + <html><head/><body><p>Shows the amount of patches in percentage computed by the auto anti-ghosting algorithm</p></body></html> + - - Ctrl+X - Ctrl+X + + Threshold + - - &Anti-Ghosting - + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly.</p></body></html> + - - &Save Images - &保存图像 + + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> + - - Ctrl+S - Ctrl+S + + <html><head/><body><p>Click here to recompute patches based on selected threshold</p></body></html> + - - <html><head/><body><p>Here you can select the method used to draw a mask, brush size and mask strength, save and apply a saved mask</p></body></html> - + + Recompute + - + Mask - + - + <html><head/><body><p>Add a mask using lasso or brush</p></body></html> - + - - A&dd - + + &Add + &添加 - + <html><head/><body><p>Remove mask using lasso or brush</p></body></html> - + - - &Remove - &删除 + + R&emove + - - + + <html><head/><body><p>Size of the brush</p></body></html> - + - - + + <html><head/><body><p>Strength of the mask (semi transparent)</p></body></html> - + - + Size: 大小: - - - + + + px px - - &Strength: - &强度: + + S&trength: + - + Lasso - Draw a free hand selection area - + - + Brush - Paint the mask using the brush - + - + Save mask - + - + Apply saved mask - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">This area shows the preview (using the preview mode on the left) between the editable and reference image.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">If the same image is selected in both the editable and reference list, this area will show the image itself.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Clicking and holding the left mouse button you will be able to select a crop area.</p></body></html> - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Shift values for the currently selected editable image</p></body></html> - + - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Here the user can view and set the shift values for the currently selected editable image</p></body></html> - + - + Shift values for editable image 可编辑图像偏移量 - + Reset the shift values for the currently selected movable image 为当前选中可移动图像重新设定偏移量 - + &Reset &重设 - + Reset the shift values for all the images 为所有图像重设偏移量 - + Reset &All 重设&所有 - - &Horizontal: - &水平: + + Hori&zontal: + - - &Vertical: - &垂直: + + Vertica&l: + - + Insert an horizontal shift value for the currently selected movable image 为当前选定可移动图像插入一个水平偏移量 - + Insert a vertical shift value for the currently selected movable image 为当前选定可移动图像插入一个垂直偏移量 - + Move up of 1 pixel the currently selected movable image 将当前选中可移动图像向上移动一个像素 - + Move down of 1 pixel the currently selected movable image 将当前选中可移动图像向下移动一个像素 - + Move right of 1 pixel the currently selected movable image 将当前选中可移动图像向右移动一个像素 - + + > + > + + + Move left of 1 pixel the currently selected movable image 将当前选中可移动图像向左移动一个像素 - + + < + < + + + Histogram 柱状图 - + Get information about the graphical elements 获取图形元素信息 - + &What's this? &这是什么? - + Shift+F1 Shift+F1 - + &Next > &下一个 > - + &Cancel &取消 + ExportToHtmlDialog + + + Export HDR to HTML + + + + + Export to HTML + + + + + Web page: + + + + + Output folder: + 输出文件夹: + + + + Open web browser + + + + + Size: + 大小: + + + + % + + + + + Quality: + 质量: + + + + Images folder: + + + + + Select... + 选择... + + + + Cancel + + + + + Export + + + + + Choose a directory + 选择一个目录 + + + + + Error: + 错误: + + + + must be a directory. + + + + FitsImporter Import FITS files - + Setup files - + Select the different files for the channels. Optionally, they can be aligned. - + H-alpha (optional) - + - + Select... 选择... Channel 1 (Red) - + Luminosity (optional) - + Channel 2 (Green) - + Channel 3 (Blue) - + - + <html><head/><body><p>Rotate selected image 180°</p></body></html> - + - + Rotate - + - + Reset - + - + Load Previews - + - + Ctrl+R Ctrl+R - + Shows a larger preview of selected image - + - - - + + + Preview 预览 - + Previews - + - - + + Alignment 对齐 - + Auto-crop - + - - MTB - MTB + + &MTB + - - Hugin's align_image_stack - Hugin's 图像对齐堆栈 + + Hugin's align_&image_stack + - + &Autoalign images &自动对齐图像 - + The alignment of the input files is in progress. Please be patient! - + - + Progress: - + - + Messages - + - + Please fine-tune the color part of the channels. - + - + Blue - + - + Green 绿色 - + Red - + - + Load one FITS image... - + - - Cannot load FITS image %1 - + + Cannot load FITS image %1. +ERROR: %2 + - + FITS images have different size - + - + align_image_stack exited with exit code %1 - + - + align_image_stack failed with error - + GenericViewer - + Pan the image to a region 平移图像到一个区域 @@ -1928,9 +2104,14 @@ HdrCreationManager - + + HdrCreationManager::loadFilesDone(): Error loading a file. + + + + HdrCreationManager::loadFilesDone(): The images have different size. - + @@ -1990,110 +2171,110 @@ - Currently Loaded &Files - 当前已载入&文件 + &Currently Loaded Files + - + Add Images 添加图像 - + Remove Selected Image 删除选定图像 - + Clear List 清楚列表 - + Preview 预览 - + Selected Image &Exposure 已选择的图像&曝光 - + EV: EV: - + Alignment 对齐 - - MTB - MTB + + &MTB + - + &Autoalign images &自动对齐图像 - - Hugin's align_image_stack - Hugin's 图像对齐堆栈 + + Hugin's align_&image_stack + - + Auto-crop - + - + Anti-ghosting - + - + Threshold - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range.</p></body></html> - + - + <html><head/><body><p>Threshold used by auto anti-ghosting algorithm. A lower threshold means a more aggressive processing but that can lower the final dynamic range. Use the &quot;Recompute&quot; button to see the actual patches coverage and adjust the threshold accordingly</p></body></html> - + - + Enable the auto anti-ghosting algorithm (by O. Gallo and others) - + - + Auto anti-ghosting - + - + Enable this option for manual alignment or manual Anti-Ghosting. It's intended for users which a strong knowledge of the different HDR creation steps! - + - + Advanced Editing Tools - + - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">Start loading a set of images with different exposure</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -2102,165 +2283,165 @@ <p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:12pt; font-weight:600;">开始载入一组不同曝光度的图片</span></p></body></html> - + [2/2] Choose Settings for HDR Creation [2/2]选择HDR生成设置 - + Profile - + - - Use Custom Configuration - - - - - HDR Creation Model - - - - - Robertson (Simple) - - - - - Robertson (Response Recovery) - - - - - Weighting Function - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">列表中第一个预定义配置通常会产生最好的效果。只有当生成的图像质量不好时再改变配置.</span></p></body></html> - - Flat - + + Profile 1 + 配置 1 - - Response Curve - + + Profile 2 + 配置 2 - - sRGB - + + Profile 3 + 配置 3 - - Custom - + + Profile 4 + 配置 4 - - Response Curve Input File - + + Profile 5 + 配置 5 - - Response Curve Output File - + + Profile 6 + 配置 6 - + Use this only if the default profiles above do not yield good results 仅当以上默认设置给出效果不好时才使用此选项 - - Linear - 线性 - - - - Debevec - Debevec - - - - Triangular - 三角加权 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">The first predefined profile in the list usually leads to best results. Change it only if the resulting HDR image is not good enough.</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">列表中第一个预定义配置通常会产生最好的效果。只有当生成的图像质量不好时再改变配置.</span></p></body></html> + + Use Custom Configuration + - - Profile 1 - 配置 1 + + HDR Creation Model + - - Profile 2 - 配置 2 + + Debevec + Debevec - - Profile 3 - 配置 3 + + Robertson (Simple) + - - Profile 4 - 配置 4 + + Robertson (Response Recovery) + - - Profile 5 - 配置 5 + + Weighting Function + - - Profile 6 - 配置 6 + + Triangular + 三角加权 - + Gaussian 高斯 - + Plateau 平台 - + + Flat + + + + + Response Curve + + + + + Linear + 线性 + + + Gamma Gamma - + Log 对数 - + + sRGB + + + + + Custom + + + + + Response Curve Input File + + + + + Response Curve Output File + + + + Save As... 另存为... - + Save Settings - + - + &Next > &下一步 > @@ -2270,187 +2451,181 @@ &取消 - + Image Filename 图片文件名 - + Exposure 曝光 - + All formats (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw 所有格式 (*.jpeg *.jpg *.tiff *.tif *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; *.JPEG *.JPG *.TIFF *.TIF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW);; - + JPEG (*.jpeg *.jpg *.JPEG *.JPG);; JPEG (*.jpeg *.jpg *.JPEG *.JPG);; - + TIFF Images (*.tiff *.tif *.TIFF *.TIF);; TIFF 图像 (*.tiff *.tif *.TIFF *.TIF);; - + RAW Images (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw 未处理图像 (*.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.raf *.ptx *.pef *.x3f *.raw *.sr2 *.rw2 *.3fr *.mef *.mos *.erf *.nrw *.srw - + *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.RAF *.PTX *.PEF *.X3F *.RAW *.SR2 *.RW2 *.3FR *.MEF *.MOS *.ERF *.NRW *.SRW) - + Select the input images 选择输入图像 - + Unknown 未知 - + Loading... 加载中... - + <font color="#FF0000"><h3><b>WARNING:</b></h3></font> Luminance HDR was not able to find the relevant <b>EXIF</b> tags for the following images:<ul> - + - + </ul><hr>You can still proceed creating an Hdr. To do so you have to insert <b>manually</b> the EV (exposure values) or stop difference values.<hr>If you want Luminance HDR to do this <b>automatically</b>, you have to load images that have at least the following exif data: <ul><li>Exposure Bias</li></ul><hr><b>HINT:</b> Losing EXIF data usually happens when you preprocess your pictures.<br>You can perform a <b>one-to-one copy of the exif data</b> between two sets of images via the <b>Tools->Copy Exif Data...</b> menu item. - + - + EXIF data not found 未找到EXIF数据 - + <center><font color="#008400"><h3><b>Images Loaded.</b></h3></font></center> <center><font color="#008400"><h3><b>图像加载完毕.</b></h3></font></center> - - + + <center><h3><b>To proceed you need to manually set the exposure values.<br><font color="#FF0000">%1</font> values still required.</b></h3></center> <center><h3><b>要继续你需要手动设置曝光值.<br><font color="#FF0000">%1</font> 仍然需要数值.</b></h3></center> - + Loading Error: 载入错误: - + Start loading a set of images with different exposure 开始加载一系列不同曝光度图像 - - - - + + + Error... 错误... - - align_image_stack failed to align images. - 对其图像堆栈对齐图像失败. - - - + Failed to start external application "<em>align_image_stack</em>".<br>Please read "Help -> Contents... -> Setting up -> External Tools" for more information. 外部应用程序无法启动 "<em>对其图像堆栈</em>".<br>请阅读 "帮助 -> 目录... -> 设置 ->外部工具" 查询更多信息. - + The external application "<em>align_image_stack</em>" crashed... 外部应用程序 "<em>对其图像堆栈</em>" 崩溃... - + An unknown error occurred while executing the "<em>align_image_stack</em>" application... 在执行 "<em>对齐图像堆栈</em>" 应用程序时发生未知错误... - + Now click on next button 现在点击下一步按钮 - - + + Aligning... + 对齐中... + + + + &Finish &完成 - + Load camera response curve file - + - + Camera response curve (*.m);;All Files (*) - + - + Invalid Response Curve File - + - + Invalid Response Curve File: please try a different file - + - + Save a camera response curve file - + - + Camera response curve (*.m) - - - - - Aligning... - 对齐中... + - + Weights: 权重: - + - Response curve: -响应曲线: - + - Model: -模型: - + <center><font color="#008400"><h3><b>All the EV values have been set.<br>Now click on Next button.</b></h3></font></center> <center><font color="#008400"><h3><b>已设定所有EV值.<br>现在点击下一步按钮.</b></h3></font></center> @@ -2458,153 +2633,259 @@ HelpBrowser - + Luminance HDR Help Luminance HDR帮助文件 - + + + &File + &文件 + + + + E&dit + + + + + V&iew + + + + + Boo&kmarks + + + + Luminance Help Luminance帮助 - - + + &Print... &打印... - + + Ctrl+P + Ctrl+P + + + &Exit &退出 - - + + &Find... &查找... - + + Ctrl+F + + + + Find &Next... 查找&下一个... - + + F3 + + + + Find &Previous... 查找&上一个... - - &Add - &添加 + + Shift+F3 + - + - &Delete - &删除 + &Add Bookmark + &添加书签 - - + + Ctrl+D + Ctrl+D + + + + &Delete Bookmark + + + + + D&elete All &删除所有 - + + goHome + + + + + goBack + + + + + goFwd + + + + + zoomIn + + + + + zoomOut + + + + + zoomOriginal + + + + + &View Contents + + + + + Ctrl+C + + + + + View &Search + + + + + Ctrl+S + Ctrl+S + + + + View &Bookmarks + + + + + Ctrl+B + Ctrl+B + + + + P&rint Preview + + + + Help SideBar 帮助侧边栏 - + LuminanceHDR Online Help LuminanceHDR 在线帮助 - - &File - &文件 - - - + &Edit &编辑 - + &View &查看 - - + + &Bookmarks &书签 - + &Quit &退出 - + Find &Next 查找&下一个 - + Find &Previous 查找&上一个 - + &Contents &目录 - + &Search &搜索 - - &Add Bookmark - &添加书签 + + &Delete + &删除 - + Find 查找 - + Search Term: 搜索词句: - + New Bookmark 新书签 - + New Bookmark's Title: 新书签的标题: - + <h2><p>Sorry, no manual is installed!</p><p>Please contact your package provider or LuminanceHDR team if you built the application yourself</p></h2> HTML message for no documentation available to show <h2><p>对不起,未安装手册指南!</p><p>如果你建立了自己的应用程序请联系你的安装包提供商或者 LuminanceHDR团队</p></h2> - + LuminanceHDR - Help Browser LuminanceHDR -帮助文件浏览 - + This protocol is not handled by the help browser. Do you want to open the link with the default application associated with the protocol? @@ -2615,43 +2896,39 @@ HelpSideBar - - Contents - 目录 - - - + + &Contents &目录 - + Se&arch 搜&索 - + Searching is case insensitive 区分大小写 - + &Search &搜索 - - + + 1 1 - + Book&marks 书&签 - + &Add &添加 @@ -2661,7 +2938,7 @@ &删除 - + R&emove All 清&除所有 @@ -2671,22 +2948,22 @@ IOWorker: The following file is not readable: %1 - + IOWorker: file %1 has unsupported extension: %2 - + IOWorker: caught exception reading %1: %2 - + IOWorker: failed loading file: %1 - + @@ -2712,12 +2989,12 @@ Quality: - 质量: + 质量: File size: - + @@ -2743,24 +3020,25 @@ LdrViewer - - - LDR image [%1 x %2] - LDR图像 【%1 *x %2] + + + + LDR image [%1 x %2]: %3 + LevelsDialog - + Levels and Gamma 级别和Gamma - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Adjust Color Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2768,10 +3046,10 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">调整颜色级别</span></p></body></html> - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Input Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2779,25 +3057,25 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">输入水平</span></p></body></html> - + Clip black 剪辑黑色 - + Gamma Gamma - + Clip White 剪辑白色 - + <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Output Levels</span></p></body></html> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2805,17 +3083,17 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">输出级别</span></p></body></html> - + &Reset &重设 - + &Cancel &取消 - + &OK &确定 @@ -2824,7 +3102,7 @@ MainWindow - + Luminance HDR Luminance HDR @@ -2834,802 +3112,944 @@ &工具 - + &Help &帮助 - + + Luminance &HDR Online + + + + &Windows &窗口 - + &View &试图 - + HDR &Histogram HDR &柱状图 - + &Toolbars &工具栏 - - Preview Panel - + + &Preview Panel + - + &File &文件 - + &Edit &编辑 - + Main Toolbar 主工具栏 - + &New HDR image... &新HDR图像... - + New HDR image 新HDR图像 - - + + Create a new HDR image from a set of LDR or Raw images 从一组LDR或者原始图像中创建一个新的HDR图像 - + Create a new HDR image from a set of JPEG, Raw, or 8/16 bpc TIFF files 从一组JPEG,原始,或者8/16 bpc TIFF 文件中创建一个新的HDR图像 - + Ctrl+N Ctrl+N - + &Open HDR image... &打开HDR 图像... - + Open HDR image 打开HDR图像 - - - + + + Load an existing HDR image file (OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) 载入一个已存在的HDR图像文件(OpenEXR, Radiance RGBE, PFS stream, RAW or TIFF) - + Ctrl+O Ctrl+O - + &Save as... &另存为... - + Save as... 另存为... - - - + + + Save image (HDR or LDR) 保存图像(HDR 或者LDR) - + Ctrl+S Ctrl+S - + &Quit &退出 - - + + Quit Luminance HDR 退出 Luminance HDR - + Exit 退出 - + Ctrl+Q Ctrl+Q - + Rotate c&ounter-clockwise 逆时针&旋转 - + Rotate counter-clockwise 逆时针旋转 - - - + + + Rotate counter-clockwise the HDR image 逆时针旋转HDR图像 - + < < - - Rotate c&lockwise - 顺时针&旋转 + + Rotat&e clockwise + - + Rotate clockwise 顺时针旋转 - - - + + + Rotate clockwise the HDR image 顺时针旋转HDR图像 - + > > - - Low Dynamic Range - 低动态范围 + + &Low Dynamic Range + - - + L L - - Fit to Dynamic Range - 适合动态范围 + + &Fit to Dynamic Range + - + Fit to dynamic range 适合动态范围 - + \ \ - - Shrink Dynamic Range - 缩小动态范围 + + &Shrink Dynamic Range + - + [ [ - - Extend Dynamic Range - 拉伸动态范围 + + &Extend Dynamic Range + - + ] ] - - Decrease Exposure - 减少曝光 + + &Decrease Exposure + - + 0 0 - + &Increase Exposure &增加曝光 - + 9 9 - + &Contents... &目录... - + About... 关于... - - - + + + Open user manual for Luminance HDR 打开 Luminance HDR用户手册 - + F1 F1 - + &Normal Size &正常大小 - + Normal size 正常大小 - - - + + + View HDR image at its normal size 查看正常大小HDR图像 - + O O - + Zoom &In 放&大 - - - + + + Zoom in 放大 - + + + - + Zoom &Out 缩&小 - - - + + + Zoom out 缩小 - + - - - + &Fit in Window &适合窗口 - - + + Fit in Window 适合窗口 - - + + Make the HDR image fit its window 使HDR图像适合窗口 - + W W - + &Preferences... &偏好... - + Luminance Options Luminance选项 - - - + + + Set various options of Luminance 设置不同Luminance选项 - + Ctrl+P Ctrl+P - + &Resize... &调整大小... - + Resize the HDR image 调整HDR图像大小 - - - + + + Change size of the HDR image 改变HDR图像大小 - + Ctrl+R Ctrl+R - + Copy &Exif Data... 复制&Exif数据... - + Copy Exif Data 复制Exif数据 - - - + + + Copy Exif data between two sets of files 在两组文件间复制Exif数据 - + Ctrl+E Ctrl+E - + &About Qt &关于Qt - + Show information about Qt 显示关于Qt的信息 - - + + Show information about Qt library that is used by Luminance 显示Luminance使用的Qt库信息 - + Text &under Icons 图标下&文字 - + &Icons Only &仅图标 - + &Text Only &仅文字 - + Text &Alongside Icons 图标旁&文字 - + &Batch Tone Mapping... &批处理色调映射... - + Convert multiple HDR images to LDR 转换多个HDR图像为LDR - - + + Convert multiple HDR images to LDR using existing settings files 使用已有设置文件转换多个HDR图像为LDR - + Ctrl+B Ctrl+B - + &What's This? &这是什么? - - + + Get verbose information about user interface elements 获取关于用户界面元素的详细信息 - + Shift+F1 Shift+F1 - + About &Luminance HDR 关于&Luminance HDR - + Show information about Luminance HDR 显示关于Luminance HDR信息 - - + + Show information about Luminance HDR, its authors and contributors 显示关于Luminance HDR信息,作者和贡献者 - + + Ctrl+I + + + + Save HDR image &preview... 保存HDR图像&并预览... - - - + + + Save the current HDR Preview to an LDR file 保存当前HDR预览到一个LDR文件 - + &Projective Transformation... &投影变换... - - - + + + Apply projective transformation to the current HDR image 应用投影转换到当前HDR图像 - + + Ctrl+J + + + + &Crop to Selection &裁剪到选择 - + Crop to Selection 裁剪到选择 - - + + Crop the image to selection rectangle 裁剪图像到已选择矩形 - + Click and drag inside image area to create a selection, then use this button to crop to a new HDR image 点击并拖拽内部图像区域来创建一个选择区域,然后使用这个按钮裁剪到一个新的HDR图像 - + + Ctrl+X + Ctrl+X + + + Remove &Selection 删除&选择 - + Remove selection rectangle 删除选择矩形 - - + + Remove selection rectangle from image area 从图像区域删除选择矩形 - + + Ctrl+Z + + + + Make a &Donation 请捐&款 - + Ctrl+D Ctrl+D - - Lock Viewers - 锁定查看器 + + &Lock Viewers + - + Synchronize viewers mode (fit, fill or 1:1). - + - + Lock the images for sync view 为同步查看锁定图像 - - Minimize - 最小化 + + S + - - Maximize - 最大化 + + &Minimize + + + + + Ma&ximize + - - Bring All to Front - 前置全部 + + &Bring All to Front + - - Show Preview Panel - 显示预览面板 + + &Show Preview Panel + - + Show/Hide Preview Panel 显示/因此预览面板 - + Ctrl+V Ctrl+V - + Adjust &Levels 调整&色阶 - - + + Adjust Levels 调整色阶 - - - Tune the histogram for the current LDR - 调整当前LDR直方图 + + + Tune the histogram for the current LDR + 调整当前LDR直方图 + + + + + Ctrl+L + Ctrl+L + + + + Save All + 保存全部 + + + + + Save All LDR files + 保存全部HDR文件 + + + + &Remove Tab + + + + + Ctrl+W + Ctrl+W + + + + Fill &Window + + + + + Fill window with the current viewer + 用当前查看器填充窗口 + + + + F + + + + + Batch &HDR... + + + + + Ctrl+H + Ctrl+H + + + + Soft Proofing + 软打样 + + + + Gamut Check + 域检查 + + + + &Show on the right + + + + + Show &on the bottom + + + + + &Realtime Previews + + + + + &Update + + + + + &FITS Importer... + + + + + Import four FITS files representing luminosity, red, green and blue channels + + + + + Ctrl+F + + + + + White Balance + 白平衡 + + + + Fix color cast, can be slow + - - Ctrl+L - Ctrl+L + + E&xport to HTML + - - Save All - 保存全部 + + Export to web page with embedded HDR viewer + - - - Save All LDR files - 保存全部HDR文件 + + &Show Full Screen + - - Remove Tab - 删除标签 + + F11 + - - Ctrl+W - Ctrl+W + + Show &Image Full Screen + - - Fill Window - 填充窗口 + + F10 + - - Fill window with the current viewer - 用当前查看器填充窗口 + + &Supported RAW Cameras + - - Batch HDR... - 批处理HDR... + + Lists all cameras supported by the program + - - Ctrl+H - Ctrl+H + + Ctrl+M + - - Soft Proofing - 软打样 + + &Lanczos/Bilinear interpolation + - - Gamut Check - 域检查 + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + - - Show on the right - + + Ctrl+K + - - Show on the bottom - + + &Online Documentation + - - Realtime Previews - + + &Developers Web Site + - - Update - + + &Luminance HDR Web Site + - - FITS Importer... - + + Open Online Documentation Web Site with the System Browser + - - Import four FITS files representing luminosity, red, green and blue channels - + + Developers Web Site + - - Ctrl+F - + + Open Developers Web Site with the System Browser + - - White Balance - 白平衡 + + Luminance HDR Web Site + - - Fix color cast, can be slow - + + Open Main Web Site with the System Browser + - + Ready. Now open an existing HDR image or create a new one! 已准备好.现在打开一个现有的HDR图像或创建一个新的! - + All HDR formats 所有HDR格式 - + Load one or more HDR images... 载入一个或者多个HDR图像... - + Save files in 保存文件在 - - Failed to save - 保存失败 + + + Failed to save %1 + - + Done! 完成! - + Aborting... 终止... - + + + Untitled + 无名 + + + Cropped Image 剪裁的图像 - + It appears that you are running the 32-bit version <strong>Luminance HDR</strong> on a 64-bit system. <br>Please download the <strong>64-bit</strong> version from <a href="http://qtpfsgui.sourceforge.net">http://qtpfsgui.sourceforge.net</a> to get the best Luminance HDR experience! - + - + Unsaved changes... 未保存的改动... - + This HDR image has unsaved changes.<br>Do you want to save it? 这个HDR图像还有未保存的改动.<br>你要保存它吗? - + Fattal Warning Fattal 警告 - + This tonemapping operator depends on the size of the input image. Applying this operator on the full size image will most probably result in a different image. Do you want to continue? @@ -3638,157 +4058,169 @@ 你想继续吗? - - - Untitled - 无名 - - - + Untitled %1 无名 %1 - + Error: %1 错误:%1 - + Untitled HDR - + - + FITS Image - + PreferencesDialog - + Preferences 偏好 - - External Tools - 外部工具 - - - + Tone Mapping 色调映射 - + RAW Conversion RAW转换 - + + Color Management + 颜色管理 + + + + External Tools + 外部工具 + + + Interface 界面 - - Color Management - 颜色管理 + + Fast export + - + Language 语言 - + Default Previews Width 默认前一个宽度 - + px px - + Always show Preview Panel 总显示预览面板 - + Saves the settings along the program files, to be portable - + - + Portable mode - + - - Temporary Working Folder - 临时工作文件夹 + + Dark mode (beta) + - - - &Browse... - &浏览... + + Theme + - - Export queue - + + Format + - - Dark mode (beta) - + + Export directory + - - Theme - + + + + + + + + + + + + + + + ... + ... - - Format - + + + &Browse... + &浏览... - - Export directory - + + Temporary Working Folder + 临时工作文件夹 - - + + Amount of threads to use on multicore/SMP machines 在多核/多线程机器上使用的线程数量 - + Batch Tonemapping Number of Threads 批处理色调映射线程数量 - + General 通用 - + Quality: 质量: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Quality (interpolation)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the demosaicing RAW images decoding interpolation method. A demosaicing algorithm is a digital image process used to interpolate a complete image from the partial raw data received from the color-filtered image sensor internal to many digital cameras in form of a matrix of colored pixels. Also known as CFA interpolation or color reconstruction, another common spelling is demosaicing. There are 4 methods to demosaicing RAW images:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Bilinear</span>: use high-speed but low-quality bilinear interpolation (default - for slow computer). In this method, the red value of a non-red pixel is computed as the average of the adjacent red pixels, and similar for blue and green.</p> @@ -3807,54 +4239,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">AHD</span>: use Adaptive Homogeneity-Directed interpolation. This method selects the direction of interpolation so as to maximize a homogeneity metric, thus typically minimizing color artifacts.</p></body></html> - + Bilinear 双线性 - + VNG VNG - + PPG PPG - + AHD AHD - - - - - - - - - - - - - - - ... - ... - - - + Median: 中位数: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Median Filter</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3865,11 +4279,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the passes used by median filter applied after interpolation to Red-Green and Blue-Green channels.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Do not stretch or rotate pixels</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3880,16 +4294,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For Fuji Super CCD cameras, show the image tilted 45 degrees. For cameras with non-square pixels, do not stretch the image to its correct aspect ratio. In any case, this option guarantees that each output pixel corresponds to one RAW pixel.</p></body></html> - + Do not stretch or rotate pixels 不要拉伸或者旋转像素 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Interpolate RGB as four colors</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The default is to assume that all green pixels are the same. If even-row green pixels are more sensitive to ultraviolet light than odd-row this difference causes a mesh pattern in the output; using this option solves this problem with minimal loss of detail.</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> @@ -3902,26 +4316,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">To resume, this option blurs the image a little, but it eliminates false 2x2 mesh patterns with VNG quality method or mazes with AHD quality method.</p></body></html> - + Interpolate RGB using 4 colours 使用四种颜色差值RGB - + Color correction - + - + White Balance 白平衡 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">White Balance Method</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Configure the raw white balance :</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Default D65</span>: Use a standard daylight D65 white balance (dcraw defaults)</p> @@ -3940,36 +4354,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Manual</span>: Set a custom temperature and green level values</p></body></html> - + Predefined D65 预定义的D65 - + Camera 摄像头 - + Auto 自动 - + Manual 手动 - + Temperature (Kelvin) 温度(开尔文) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Temperature</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -3980,26 +4394,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the color temperature in Kelvin.</p></body></html> - + Green 绿色 - + Set here the green component to set magenta color cast removal level 在这里设置绿色成分来设置洋红色色偏去除水平 - + Highlights 突出强调 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Highlights</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select here the highlight clipping method:</p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Solid white</span>: clip all highlights to solid white</p> @@ -4018,36 +4432,36 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Rebuild</span>: reconstruct highlights using a level value</p></body></html> - + Solid White 纯白 - + Do not transform 不要变换 - + Blend 混合 - + Reconstruct 重建 - + Level 水平 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Level</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4058,26 +4472,26 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the reconstruct highlight level. Low values favor whites and high values favor colors.</p></body></html> - + Correct false colors in highlights 更正突出标注的错误颜色 - + Auto Brightness 自动亮度 - + Brightness 亮度 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Brighness</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4088,11 +4502,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify the brightness level of output image. The default value is 1.0</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4103,16 +4517,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> - + Black 黑色 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4123,41 +4537,41 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Specify specific black point value of the output image.</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> - + + + + + Saturation + 饱和度 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation value</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">Specify the specific saturation level. When highlights appear pink, you need to lower the saturation level.</span></p></body></html> - + - - Saturation - 饱和度 - - - + NR and CA Correction NR和CA矫正 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Noise Reduction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4168,16 +4582,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use wavelets to erase noise while preserving real detail.</p></body></html> - + Enable noise reduction 启用降噪 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Threshold</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4188,16 +4602,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the noise reduction threshold value to use.</p></body></html> - + Threshold: 阀值: - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Enable Chromatic Aberration correction</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4208,16 +4622,16 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Enlarge the raw red and blue layers by the given factors, typically 0.999 to 1.001, to correct chromatic aberration.</p></body></html> - + Enable Chromatic Aberration correction 启用色差矫正 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Red multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4228,11 +4642,11 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the red layer</p></body></html> - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Blue multiplier</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> @@ -4243,48 +4657,48 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set here the magnification factor of the blue layer</p></body></html> - + Red Component 红色分量 - + Blue Component 蓝色分量 - - Monitor Profile - 监视器配置文件 - - - - - + + + Browse... 浏览... - + Camera profile 摄像头配置文件 - + + Monitor Profile + 监视器配置文件 + + + Printer profile 打印机配置文件 - + align_image_stack command line arguments 图像对齐堆栈命令行参数 - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> @@ -4293,40 +4707,40 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Read </span><span style=" font-family:'Sans Serif'; font-style:italic;">Help &gt; Contents &gt; Setting up Luminance &gt; External tools</span><span style=" font-family:'Sans Serif';"> to find out more about align_image_stack command line arguments</span></p></body></html> - + &Cancel &取消 - + &OK &确定 - + Restart - + - + For the settings to take effect, please restart the application! - + - - + + Choose a directory 选择一个目录 - + Open ICC Profile 打开ICC配置文件 - + Color profile (*.icc *.ICC *.icm *.ICM) - + @@ -4334,105 +4748,105 @@ Load settings - + ProjectionsDialog - + Projective Transformation 投射变换 - + Projections 投射 - + Source Projection: 源投射: - - + + Polar Polar - - + + Angular 角的 - - + + Cylindrical 圆柱的 - - + + Mirror Ball 镜像球 - + Destination Projection: 目标投射: - + Angles: 角度: - - - - + + + + ° ° - + Bilinear Interpolation 双线性插值 - + Oversample factor: 过采样因子: - + Rotation (degrees) 旋转角(度) - + Yaw: 偏航角: - + Pitch: 俯仰角: - + Roll: 滚转角: - + &Cancel &取消 - + &OK &确定 @@ -4440,17 +4854,17 @@ QApplication - + ERROR: cannot load Tone Mapping Setting file: 错误: 无法载入色调映射设置文件: - + ERROR: File too old, cannot parse Tone Mapping Setting file: 错误: 文件太老,无法解析色调映射设置文件: - + ERROR: cannot parse Tone Mapping Setting file: 错误: 无法解析色调映射文件: @@ -4458,6 +4872,33 @@ QObject + + The quality must be between 1 (worst) and 5 (best). + + + + + NULL frame passed. + + + + + Adding image + + + + + to the web page + + + + + + + Writing: + + + @@ -4486,370 +4927,378 @@ 我无法执行颜色转换。请选择一个不同的监视器配置文件. - - Option -v -a... - 选项 -v -a... + + Triangular + 三角加权 - - LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. - + + Plateau + 平台 - + + Gaussian + 高斯 + + + + Flat + + + + + Linear + 线性 + + + + Gamma + Gamma + + + + Logarithmic + 对数 + + + + sRGB + + + + + From Calibration/Input File + + + + + Debevec + Debevec + + + + Robertson + Robertson + + + + Robertson Response Calculation + + + + PreGamma=%1 - + - + Contrast Equalization 对比均衡 - + Contrast - + - - + + Saturation 饱和度 - + Detail - + - + Luminance Level 亮度水平 - + Luminance Level=Auto - + - + Color Saturation 色彩饱和度 - + Contrast Enhancement 对比度加强 - + Alpha Alpha - + Beta Beta - + NoiseRedux - + - + FFTSolver - + + + + + Rho + + + + + InvAlpha + - + simple - + - + Equation 2 方程2 - + Equation 4 - 方程4 + - - + + Local - + - + Bias 偏置 - + Spatial - + - - + + Range 范围 - + Base - + - + Multiplier 乘数 - + AutoLuminance - + - + Cone - + - + Rod - + - + Key - + - + Phi Phi - + Scales: - + - + Lower - + - + Upper - + - + Brightness 亮度 - + Chromatic Adaptation 色彩适应 - + Light Adaptation 光适应 - + + Option -v -a... + 选项 -v -a... + + + + LuminanceHDR requires align_image_stack to be executed with the "-v" and without the "-a" options. Command line options have been corrected. + + + + Cannot convert %1 to a float 无法转换 %1 为浮点数 - + Loading TMO settings from file: %1 - + - + Input file %1 输入文件 %1 - + Running in HDR-creation mode. HDR生成模式运行. - + Running in Load-HDR mode. 载入HDR模式运行. - + Temporary directory: %1 临时目录: %1 - + Using %n threads. - - - + - + Loading file %1 载入文件%1 - + Successfully loaded file %1. 成功载入文件%1. - + All LDR formats 所有LDR格式 - + Save the LDR image as... LDR图像另存为... - + Save the HDR image as... HDR图像另存为... - + Save as... 另存为... - - - Triangular - 三角加权 - - - - Plateau - 平台 - - - - Gaussian - 高斯 - - - - Flat - - - - - Linear - 线性 - - - - Gamma - Gamma - - - - Logarithmic - 对数 - - - - sRGB - - - - - From Calibration/Input File - - - - - Debevec - Debevec - - - - Robertson - Robertson - - - - Robertson Response Calculation - - ResizeDialog - + Scale Image 缩放图像 - + Hdr Image Size HDR图像大小 - - Width: - 宽度: + + Restore original size + 复原原始大小 + + + + &Reset + &重设 - + Switch between pixels or percentage 在像素和 百分比之间转换 - + Pixels 像素 - + Percent 百分比 - - Height: - 高度: - - - + Result size 结果图像大小 - - Restore original size - 复原原始大小 + + Height: + 高度: - - &Reset - &重设 + + Width: + 宽度: - + &Cancel &取消 - + &Scale &比例 @@ -4862,184 +5311,194 @@ 以保存的参数 - - + + Comment 评论 - + TM Operator TM运算符 - + Simple 简单 - + Equation 2 方程2 - + Local Contrast Threshold 本地对比度阀值 - + Bias 偏置 - + Spatial Kernel Sigma 空间内核Sigma - + Range Kernel Sigma 范围内核Sigma - + Base Contrast 基本对比度 - + Alpha Alpha - + Beta Beta - - + + Color Saturation 颜色饱和度 - + Noise Reduction 降噪 - + Old Fattal 旧Fattal - + + Rho + + + + + InvAlpha + + + + Contrast Equalization 对比均衡 - + Contrast Factor 对比度因子 - + Saturation Factor 饱和度因子 - + Detail Factor 详情因子 - + Contrast Enhancement 对比度加强 - + Luminance Level 亮度水平 - + Manual Luminance Level 手动亮度水平 - + Cone and Rod based on Luminance 基于亮度锥和视杆 - + Local Tonemapping 本地色调映射 - + Cone Level 圆锥水平 - + Rod Level 杆水平 - + Multiplier 乘数 - + Use Scales 使用比例尺 - + Key Value 关键值 - + Phi Value Phi值 - + Range 范围 - + Lower Scale 较低的比例 - + Upper Scale 较高的比例 - + Brightness 亮度 - + Chromatic Adaptation 色彩适应 - + Light Adaptation 光线适应 - + Pre-gamma Pre-gamma @@ -5047,17 +5506,55 @@ SavingParameters - + Saving Parameters 正在保存参数 - + Enter a short comment for the saved parameters: 给已保存的参数输入一个简短的批注: + SupportedCamerasDialog + + + List of supported cameras + + + + + TextLabel + + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + + + With LibRaw version + + + + + models listed + + + + + search... + + + + + OK + + + + TMOProgressIndicator @@ -5066,508 +5563,555 @@ + ThresholdWidget + + + Frame + + + + + Threshold + + + + TiffModeDialog Save as ...TIFF - + TonemappingPanel - - Tone mapping operators and their options - 色调映射运算符以及他们的选项 + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + 这里你可以载入和保存一个色调映射设置文件. <br>你还可以应用当前已载入的设置文件的内容. + + + + Tone Mapping Settings + 色调映射文件设置 + + + + Save current parameters to a text file + 保存当前参数到一个text文件 + + + + Save current parameters (pregamma and TMO) to a text file. + 保存当前参数(pregamma和TMO)到一个text文件. + + + + Load an existing text file containing pregamma and TMO settings + 载入一个已存在的包含pregamma和TMO设置的text文件 + + + + Load an existing text file containing pregamma and TMO settings. + 载入一个已存在的包含pregamma和TMO设置的text文件. + + + + Save current parameters + 保存当前参数 + + + + Load saved parameters + 加载已保存的参数 + + + + Export + + + + + Fast export + + + + + Opens the current export direcotory. This can be changed in the preferences! + + + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + 这里你可以对HDR应用一次gamma更正.<br>gamma更正将在色调映射之前应用. + + + + Process + 处理 + + + + Result Si&ze + + + + + + Gamma applied before tonemapping + 色调映射之前应用Gamma + + + + Pre-&gamma + + + + + Restore pregamma's default value (1) + 恢复pregamma的默认值 (1) + + + + Size of the resulting LDR image + 结果LDR图像大小 + + + + Here you can choose the size of the resulting LDR image. + 这里你可以选择最后LDR图像的大小. + + + + Set Custom Output Size + 设置自定义输出文件大小 + + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + 点击这个按钮,你可以给最终结果LDR图像插入一个 <i> 宽度 </i>值.<br>点击Enter(或者Return)后会自动计算高度值,并且新的大小会被添加到清单中. - + Start tonemapping (CTRL+T) 开始色调映射(CTRL+T) - + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image 使用上面的当前参数 (pregamma和色调映射运算符)来运算LDR图像 - + &Update preview - + - + Ctrl+T Ctrl+T - + Update current LDR 更新当前LDR - + + Auto Levels + + + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + + Tonemap 色调映射 - + Mantiuk '06 Mantiuk '06 - + Mantiuk '08 Mantiuk '08 - + Fattal Fattal - + + Ferradans + + + + Drago Drago - + Durand Durand - + Reinhard '02 Reinhard '02 - + Reinhard '05 Reinhard '05 - + Ashikhmin Ashikhmin - + Pattanaik Pattanaik - + + Mai + + + + Operator 运算符 - + Contrast Factor 对比度因子 - + Saturation Factor 饱和度因子 - + Detail Factor 详情因子 - + Contrast Equalization 对比均衡 - + Predefined Display 预定义显示 - + Lcd Office 液晶显示办公室 - + Lcd 液晶显示 - + Lcd Bright 液晶显示亮度 - + CRT 荧光屏显示 - - + + Color Saturation 色彩饱和度 - + Contrast Enhancement 对比度加强 - + Enable Luminace Level 启用 亮度水平 - + Luminance Level 亮度水平 - + Alpha Alpha - + Beta Beta - + Noise Reduction 降噪 - + Version 2.3.0 - + + + + + Inverse Alpha + + + + + Rho + - + Bias 偏置 - + Spatial Kernel Sigma 空间内核Sigma - + Range Kernel Sigma 范围内核Sigma - + Base Contrast 基本对比度 - + Key Value 关键值 - + Phi Phi - + Use Scales 使用比例尺 - + Range 范围 - + Lower Scale 较低比例 - + Upper Scale 较高比例 - + Brightness 亮度 - + Chromatic Adaptation 色彩适应 - + Light Adaptation 光适应 - + Local Contrast Threshold 本地对比度阀值 - + Simple 简单 - + Equation Number 方程号 - - Eqn 2 - Equ 2 + + Eqn &2 + - - Eqn 4 - Eqn 4 + + Eqn &4 + - + Multiplier 乘数 - + Local Tone Mapping 本地色调映射 - + Auto Cone/Rod 自动锥/杆 - + Cone Level 锥水平 - + Rod Level 杆水平 - + + This operator has no options + + + + Restore operator's default values 恢复运算符默认值 - + Restore 复原 - + Previous applied settings 前一个应用设置 - + Previous 前一个 - + Next applied settings 下一个应用设置 - + Next 下一个 - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - 这里你可以载入和保存一个色调映射设置文件. <br>你还可以应用当前已载入的设置文件的内容. - - - - Tone Mapping Settings - 色调映射文件设置 - - - - Save current parameters to a text file - 保存当前参数到一个text文件 - - - - Save current parameters (pregamma and TMO) to a text file. - 保存当前参数(pregamma和TMO)到一个text文件. - - - - &Save to File - &保存到文件 - - - - Load an existing text file containing pregamma and TMO settings - 载入一个已存在的包含pregamma和TMO设置的text文件 - - - - Load an existing text file containing pregamma and TMO settings. - 载入一个已存在的包含pregamma和TMO设置的text文件. - - - - &Load from File - &从文件载入 - - - - Save current parameters - 保存当前参数 - - - - - ... - ... - - - - Load saved parameters - 加载已保存的参数 - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - 这里你可以对HDR应用一次gamma更正.<br>gamma更正将在色调映射之前应用. - - - - Process - 处理 - - - - Result Si&ze - - - - - Pre-&gamma - - - - - Export to queue - - - - - - Gamma applied before tonemapping - 色调映射之前应用Gamma - - - - Restore pregamma's default value (1) - 恢复pregamma的默认值 (1) - - - - Size of the resulting LDR image - 结果LDR图像大小 - - - - Here you can choose the size of the resulting LDR image. - 这里你可以选择最后LDR图像的大小. - - - - Set Custom Output Size - 设置自定义输出文件大小 - - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - 点击这个按钮,你可以给最终结果LDR图像插入一个 <i> 宽度 </i>值.<br>点击Enter(或者Return)后会自动计算高度值,并且新的大小会被添加到清单中. + + Queue size: %1 + - + TM Database Problem TM数据库问题 - + The database used for saving TM parameters cannot be opened. Error: %1 无法打开用以保存TM参数的数据库. 错误: %1 - + Load a tonemapping settings text file... 载入一个色调映射设置text文件... - - + + LuminanceHDR tonemapping settings text file (*.txt) LuminanceHDR色调映射设置text文件 (*.txt) - - - - + + + + Aborting... 终止... - + File is not readable (check existence, permissions,...) 文件不可读(检查是否存在,权限) - + Save tonemapping settings text file to... 保存色调映射设置text文件到... - + File is not writable (check permissions, path...) 文件不可写(检查权限,路径...) - + File is not readable (check permissions, path...) 文件不可读(检查权限,路径...) - + Error: The tone mapping settings file format has changed. This (old) file cannot be used with this version of LuminanceHDR. Create a new one. 错误:色调映射设置文件格式已改变. 这(旧)文件不能被用于这个版本的LuminanceHDR.创建一个新的. - + Custom LDR size 自定义LDR大小 - + Enter the width of the new size: 输入新大小的宽度: @@ -5577,17 +6121,17 @@ Load Custom Settings - + Sort by - + Comments: - + @@ -5602,7 +6146,7 @@ Most Useful Operators - + @@ -5612,12 +6156,12 @@ Load - + Cancel - + @@ -5628,108 +6172,108 @@ 复制Exif数据 - + From 来自 - - + + Append files to the list 附加文件到列表 - - + + Remove selected file(s) from the list 从列表中删除选中文件 - - + + Move up selected file(s) 上移选中文件 - - + + Move down selected file(s) 下移选中文件 - + To - + Log 日志 - + Exif operations report Exif操作报告 - - &Show only: - &只显示: + + Show onl&y: + - + Filter messages based on severity 根据严重性过滤消息 - + All messages 所有消息 - + Errors only 仅错误 - - &Filter log messages: - &过滤日志消息: + + Filter &log messages: + - + Clear filter text 清楚过滤器文字 - + Keep existing Exif tags in destination file 在目的文件中保留当前存在Exif标签 - + &Cancel &取消 - + &Start &开始 - - + + All Supported formats 所有支持的格式 - - + + Select the input images 选择输入图像 - + &Done &完成 @@ -5743,27 +6287,33 @@ %1未找到证书文件,你可以在线找到: %2 这里 %3 - + + %1 Changelog document not found, you can find it online: %2here%3 + %2 and %3 are html tags + + + + Donation 捐款 - + Would you like to donate? 你想要捐款吗? - + Yes, I'd love to! 是的,我想! - + Stop Bothering Me 不要再提醒我 - + Remind me later 过后再提醒我 @@ -5773,18 +6323,18 @@ A new release is ready for download! - + Do you want to open the webpage for download now? - + Click to download, or select Help->Update! - + - + \ No newline at end of file Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/i18n-qt/qt_fi.qm and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/i18n-qt/qt_fi.qm differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/i18n-qt/qt_it.qm and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/i18n-qt/qt_it.qm differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/i18n-qt/qt_ro.qm and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/i18n-qt/qt_ro.qm differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/i18n-qt/qt_tr.qm and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/i18n-qt/qt_tr.qm differ Binary files /tmp/tmpQ4EVpH/EzG6ytW9Fg/luminance-hdr-2.5.0/i18n-qt/qt_zh.qm and /tmp/tmpQ4EVpH/0fqSLkMj1r/luminance-hdr-2.5.1/i18n-qt/qt_zh.qm differ diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/adjust-levels.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/adjust-levels.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/adjust-levels.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/adjust-levels.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/application-exit.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/application-exit.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/application-exit.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/application-exit.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/arrow-down.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/arrow-down.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/arrow-down.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/arrow-down.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/arrow-up.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/arrow-up.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/arrow-up.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/arrow-up.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/chronometer-reset.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/chronometer-reset.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/chronometer-reset.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/chronometer-reset.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,17 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/cloud-upload.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/cloud-upload.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/cloud-upload.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/cloud-upload.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/color-management.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/color-management.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/color-management.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/color-management.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/dialog-ok-apply.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/dialog-ok-apply.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/dialog-ok-apply.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/dialog-ok-apply.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-export.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-export.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-export.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-export.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-open.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-open.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-open.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-open.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-preview.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-preview.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-preview.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-preview.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-save-all.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-save-all.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-save-all.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-save-all.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-save-as-template.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-save-as-template.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-save-as-template.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-save-as-template.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-save.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-save.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/document-save.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/document-save.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/draw-brush.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/draw-brush.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/draw-brush.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/draw-brush.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-clear-list.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-clear-list.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-clear-list.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-clear-list.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-clear.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-clear.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-clear.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-clear.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-download.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-download.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-download.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-download.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-redo.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-redo.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-redo.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-redo.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-select-lasso.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-select-lasso.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-select-lasso.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-select-lasso.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-select-none.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-select-none.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-select-none.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-select-none.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,17 @@ + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-undo.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-undo.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/edit-undo.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/edit-undo.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/folder-open.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/folder-open.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/folder-open.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/folder-open.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/folder-pictures.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/folder-pictures.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/folder-pictures.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/folder-pictures.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,13 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/globe.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/globe.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/globe.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/globe.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,19 @@ + + + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/go-home.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/go-home.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/go-home.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/go-home.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/go-next.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/go-next.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/go-next.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/go-next.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/go-previous.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/go-previous.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/go-previous.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/go-previous.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-about.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-about.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-about.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-about.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-contents.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-contents.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-contents.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-contents.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-donate.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-donate.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-donate.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-donate.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,17 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-whatsthis.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-whatsthis.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/help-whatsthis.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/help-whatsthis.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/insert-image.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/insert-image.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/insert-image.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/insert-image.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/list-add.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/list-add.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/list-add.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/list-add.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/list-remove.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/list-remove.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/list-remove.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/list-remove.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,3 @@ + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/object-rotate-left.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/object-rotate-left.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/object-rotate-left.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/object-rotate-left.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,17 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/object-rotate-right.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/object-rotate-right.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/object-rotate-right.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/object-rotate-right.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/preferences-other.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/preferences-other.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/preferences-other.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/preferences-other.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/preferences-system.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/preferences-system.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/preferences-system.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/preferences-system.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/preferences-system-windows.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/preferences-system-windows.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/preferences-system-windows.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/preferences-system-windows.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/selection-move-to-layer-below.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/selection-move-to-layer-below.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/selection-move-to-layer-below.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/selection-move-to-layer-below.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,22 @@ + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/system-lock-screen.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/system-lock-screen.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/system-lock-screen.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/system-lock-screen.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/system-run.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/system-run.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/system-run.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/system-run.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/system-software-update.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/system-software-update.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/system-software-update.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/system-software-update.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/tab-close.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/tab-close.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/tab-close.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/tab-close.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/transform-crop-and-resize.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/transform-crop-and-resize.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/transform-crop-and-resize.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/transform-crop-and-resize.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/transform-crop.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/transform-crop.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/transform-crop.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/transform-crop.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/upload-media.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/upload-media.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/upload-media.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/upload-media.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/vcs-added.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/vcs-added.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/vcs-added.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/vcs-added.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,10 @@ + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/view-object-histogram-linear.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/view-object-histogram-linear.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/view-object-histogram-linear.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/view-object-histogram-linear.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/whitebalance.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/whitebalance.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/whitebalance.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/whitebalance.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-close.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-close.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-close.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-close.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,6 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-duplicate.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-duplicate.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-duplicate.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-duplicate.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-maximize-symbolic.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-maximize-symbolic.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-maximize-symbolic.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-maximize-symbolic.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,13 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-minimize-symbolic.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-minimize-symbolic.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/window-minimize-symbolic.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/window-minimize-symbolic.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,13 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-fit-best.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-fit-best.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-fit-best.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-fit-best.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-in.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-in.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-in.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-in.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-original.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-original.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-original.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-original.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-out.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-out.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom-out.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom-out.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom.svg luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom.svg --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/apps/zoom.svg 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/apps/zoom.svg 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + + diff -Nru luminance-hdr-2.5.0/icons-breeze/luminance-hdr/index.theme luminance-hdr-2.5.1/icons-breeze/luminance-hdr/index.theme --- luminance-hdr-2.5.0/icons-breeze/luminance-hdr/index.theme 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/icons-breeze/luminance-hdr/index.theme 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,12 @@ +[Icon Theme] +Name=luminance-hdr +Comment=Luminance HDR Icon Theme + +# Directory list +Directories=apps + +[apps] +Size=32 +Context=Applications +Type=Fixed + diff -Nru luminance-hdr-2.5.0/INSTALL luminance-hdr-2.5.1/INSTALL --- luminance-hdr-2.5.0/INSTALL 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/INSTALL 2017-05-10 19:14:06.000000000 +0000 @@ -24,7 +24,7 @@ The build system is based on CMake (http://www.cmake.org/). The build description is contained in the CMakeLists.txt file. -1. Basic compilation +1. Basic compilation of the sources ------------------------------------------------------------------- To compile from source execute the following command from an EMPTY folder: @@ -138,10 +138,10 @@ Windows: Currently, Luminance HDR can be compiled using Microsoft Visual Studio. It either works -using precompiled libraries (supplied at -http://sourceforge.net/projects/qtpfsgui/files/DEPs/ for different versions of -Visual Studio) or building every dependency and Luminance itself using a script file -(build/msvc/getDependencies.cmd. More information can be found inside build/msvc/README.txt). +using precompiled libraries (supplied at http://sourceforge.net/projects/qtpfsgui/files/DEPs/ +for different versions of Visual Studio) or building every dependency and Luminance itself using a script file +(build_files/platforms/msvc/getDependencies.cmd. +More information can be found inside build_files/platforms/msvc/README.txt). NOTE: depending on your compiler (MinGW GCC or MS Visual Studio), you must either download the proper version of Qt or build it yourself accordingly. diff -Nru luminance-hdr-2.5.0/luminance-hdr.desktop luminance-hdr-2.5.1/luminance-hdr.desktop --- luminance-hdr-2.5.0/luminance-hdr.desktop 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/luminance-hdr.desktop 2017-05-10 19:14:06.000000000 +0000 @@ -1,12 +1,11 @@ [Desktop Entry] -Encoding=UTF-8 Name=Luminance HDR GenericName=HDR imaging tool GenericName[de]=Workflow für HDR-Bilder GenericName[it]=Workflow per immagini HDR GenericName[ru]=Работа с HDR-фотографией GenericName[tr]=HDR Resim Düzenleyici -Categories=Graphics;RasterGraphics;Photography;Viewer;Qt; +Categories=Graphics;RasterGraphics;2DGraphics;Photography;Viewer;Qt; Comment=Create and tonemap HDR images Comment[de]=Luminance HDR ist eine grafische Benutzeroberfläche zur Erzeugung von HDR-Bildern und deren Dynamikkompression Comment[en_US]=Luminance is a graphical user interface used to create and tonemap HDR images @@ -14,7 +13,7 @@ Comment[it]=Luminance e' una interfaccia grafica usata per creare ed eseguire il tonemapping di immagini HDR Comment[ru]=Cоздание HDR-снимков и отображение тонов в LDR Comment[tr]=HDR resim dosyaları oluşturun ve ton haritalamalarını düzenleyin -Exec=luminance-hdr --gui %F +Exec=luminance-hdr %F Icon=luminance-hdr MimeType=image/x-dcraw;image/tiff;image/jpeg;image/png;image/x-exr;image/x-hdr;image/x-pfs; StartupNotify=true diff -Nru luminance-hdr-2.5.0/README.md luminance-hdr-2.5.1/README.md --- luminance-hdr-2.5.0/README.md 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/README.md 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,11 @@ # Luminance HDR =============== -Copyright (C) 2010-2017 - - Davide Anastasia - Franco Comida - Daniel Kaneider +Copyright (C) 2010-2017 + + - Davide Anastasia + - Franco Comida + - Daniel Kaneider + and many contributors and translators Copyright (C) 2006-2010 - Giuseppe Rota diff -Nru luminance-hdr-2.5.0/src/Alignment/Align.cpp luminance-hdr-2.5.1/src/Alignment/Align.cpp --- luminance-hdr-2.5.0/src/Alignment/Align.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Alignment/Align.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -63,7 +63,7 @@ connect(m_ais.data(), SIGNAL(finished(int,QProcess::ExitStatus)), this, SLOT(ais_finished(int,QProcess::ExitStatus))); connect(m_ais.data(), SIGNAL(error(QProcess::ProcessError)), this, SLOT(ais_failed_slot(QProcess::ProcessError))); connect(m_ais.data(), SIGNAL(readyRead()), this, SLOT(readData())); - + QStringList ais_parameters = m_luminance_options.getAlignImageStackOptions(); if (ais_crop_flag) { ais_parameters << "-C"; } @@ -75,7 +75,7 @@ const bool deflateCompression = false; // AIS is misconfigured (see hugin bug #1265480) #else const bool deflateCompression = true; -#endif +#endif SaveFile saveFile(m_savingMode, m_minLum, m_maxLum, deflateCompression); futureWatcher.setFuture( QtConcurrent::map(m_data.begin(), m_data.end(), saveFile) ); futureWatcher.waitForFinished(); @@ -108,7 +108,7 @@ qDebug() << QCoreApplication::applicationDirPath()+"/align_image_stack"; m_ais->start(QCoreApplication::applicationDirPath()+"/align_image_stack", ais_parameters ); #elif defined Q_OS_WIN - QFileInfo huginPath("hugin/align_image_stack.exe"); + QFileInfo huginPath("hugin/align_image_stack.exe"); m_ais->start(huginPath.canonicalFilePath(), ais_parameters ); #else m_ais->start("align_image_stack", ais_parameters ); diff -Nru luminance-hdr-2.5.0/src/Alignment/Align.h luminance-hdr-2.5.1/src/Alignment/Align.h --- luminance-hdr-2.5.0/src/Alignment/Align.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Alignment/Align.h 2017-05-10 19:14:06.000000000 +0000 @@ -66,4 +66,4 @@ QFutureWatcher m_futureWatcher; }; -#endif +#endif diff -Nru luminance-hdr-2.5.0/src/arch/freebsd/math.h luminance-hdr-2.5.1/src/arch/freebsd/math.h --- luminance-hdr-2.5.0/src/arch/freebsd/math.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/arch/freebsd/math.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007,2008 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ diff -Nru luminance-hdr-2.5.0/src/arch/malloc.h luminance-hdr-2.5.1/src/arch/malloc.h --- luminance-hdr-2.5.0/src/arch/malloc.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/arch/malloc.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007,2008 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,10 +16,10 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Daniel Kaneider - * + * */ #if defined(_MSC_VER) @@ -29,7 +29,7 @@ #include #else #include -#define _mm_malloc(a,b) malloc(a) -#define _mm_free(a) free(a) +#define _mm_malloc(a,b) malloc(a) +#define _mm_free(a) free(a) #endif #endif diff -Nru luminance-hdr-2.5.0/src/arch/math.h luminance-hdr-2.5.1/src/arch/math.h --- luminance-hdr-2.5.0/src/arch/math.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/arch/math.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007,2008 Giuseppe Rota * Copyright (C) 2010-2012 Daniel Kaneider, Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,8 +17,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * */ //! @author Daniel Kaneider diff -Nru luminance-hdr-2.5.0/src/arch/msvc/math.h luminance-hdr-2.5.1/src/arch/msvc/math.h --- luminance-hdr-2.5.0/src/arch/msvc/math.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/arch/msvc/math.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007,2008 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,10 +16,10 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Daniel Kaneider - * + * */ #ifndef MSVC_MATH_H diff -Nru luminance-hdr-2.5.0/src/arch/string.h luminance-hdr-2.5.1/src/arch/string.h --- luminance-hdr-2.5.0/src/arch/string.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/arch/string.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,32 +1,32 @@ -/** - * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2006,2007,2008 Giuseppe Rota - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * @author Daniel Kaneider - * - */ - -#ifndef ARCH_STRING_H -#define ARCH_STRING_H - -#if defined(_MSC_VER) -#define strcasecmp _stricmp -#endif - -#endif // ARCH_STRING_H +/** + * This file is a part of LuminanceHDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2006,2007,2008 Giuseppe Rota + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Daniel Kaneider + * + */ + +#ifndef ARCH_STRING_H +#define ARCH_STRING_H + +#if defined(_MSC_VER) +#define strcasecmp _stricmp +#endif + +#endif // ARCH_STRING_H diff -Nru luminance-hdr-2.5.0/src/BatchHDR/BatchHDRDialog.cpp luminance-hdr-2.5.1/src/BatchHDR/BatchHDRDialog.cpp --- luminance-hdr-2.5.0/src/BatchHDR/BatchHDRDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchHDR/BatchHDRDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -108,14 +108,14 @@ m_Ui->outputLineEdit->setText(m_batchHdrOutputDir); QSqlQueryModel model; - model.setQuery("SELECT * FROM parameters"); + model.setQuery("SELECT * FROM parameters"); for (int i = 0; i < model.rowCount(); i++) { m_Ui->profileComboBox->addItem(tr("Custom config %1").arg(i+1)); - int weight_ = model.record(i).value("weight").toInt(); - int response_ = model.record(i).value("response").toInt(); - int model_ = model.record(i).value("model").toInt(); - QString filename_ = model.record(i).value("filename").toString(); + int weight_ = model.record(i).value("weight").toInt(); + int response_ = model.record(i).value("response").toInt(); + int model_ = model.record(i).value("model").toInt(); + QString filename_ = model.record(i).value("filename").toString(); FusionOperatorConfig ct; ct.weightFunction = static_cast(weight_); @@ -144,7 +144,7 @@ break; } - m_customConfig.push_back(ct); + m_customConfig.push_back(ct); } check_start_button(); } @@ -312,7 +312,7 @@ m_hdrCreationManager, toProcess) ); - } + } else { m_Ui->closeButton->show(); @@ -389,7 +389,7 @@ QList > HV_offsets; for (int i = 0; i < m_Ui->spinBox->value(); i++ ) { HV_offsets.append(qMakePair(0,0)); - + } float patchesPercent; int h0 = m_hdrCreationManager->computePatches(m_Ui->threshold_doubleSpinBox->value(), m_patches, patchesPercent, HV_offsets); @@ -398,7 +398,7 @@ m_patches, h0, false, &m_ph)); // false means auto anti-ghosting m_futureWatcher.setFuture(m_future); - + } else { m_future = QtConcurrent::run( @@ -422,7 +422,7 @@ QString outName = m_Ui->outputLineEdit->text() + "/hdr_" + QString("%1").arg(m_numProcessed, paddingLength, 10, QChar('0')) + "." + suffix; m_IO_Worker->write_hdr_frame(resultHDR.get(), outName, m_formatHelper.getParams()); resultHDR.reset(); - + // DAVIDE _ HDR WIZARD m_hdrCreationManager->reset(); int progressValue = m_Ui->progressBar->value() + 1; diff -Nru luminance-hdr-2.5.0/src/BatchHDR/BatchHDRDialog.h luminance-hdr-2.5.1/src/BatchHDR/BatchHDRDialog.h --- luminance-hdr-2.5.0/src/BatchHDR/BatchHDRDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchHDR/BatchHDRDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -49,28 +49,28 @@ private: QScopedPointer m_Ui; public: - BatchHDRDialog(QWidget *parent = 0); - ~BatchHDRDialog(); + BatchHDRDialog(QWidget *parent = 0); + ~BatchHDRDialog(); signals: void setValue(int); protected slots: - void num_bracketed_changed(int); - void on_selectInputFolder_clicked(); - void on_selectOutputFolder_clicked(); - void add_output_directory(QString dir = QString()); - void on_startButton_clicked(); - void batch_hdr(); - void align(); - void create_hdr(int); - void error_while_loading(QString); - void writeAisData(QByteArray); - void check_start_button(); - void on_cancelButton_clicked(); + void num_bracketed_changed(int); + void on_selectInputFolder_clicked(); + void on_selectOutputFolder_clicked(); + void add_output_directory(QString dir = QString()); + void on_startButton_clicked(); + void batch_hdr(); + void align(); + void create_hdr(int); + void error_while_loading(QString); + void writeAisData(QByteArray); + void check_start_button(); + void on_cancelButton_clicked(); void align_selection_clicked(); - void processed(); - void try_to_continue(); + void processed(); + void try_to_continue(); void updateThresholdSlider(int); void updateThresholdSpinBox(double); void ais_failed(QProcess::ProcessError); @@ -78,23 +78,23 @@ void loadFilesAborted(); protected: - LuminanceOptions m_luminance_options; + LuminanceOptions m_luminance_options; - //Application-wide settings, loaded via QSettings - QString m_batchHdrInputDir; - QString m_batchHdrOutputDir; - QString m_tempDir; + //Application-wide settings, loaded via QSettings + QString m_batchHdrInputDir; + QString m_batchHdrOutputDir; + QString m_tempDir; - QStringList m_bracketed; - IOWorker *m_IO_Worker; - HdrCreationManager *m_hdrCreationManager; - int m_numProcessed; - int m_processed; - int m_total; - bool m_errors; - bool m_loading_error; - bool m_abort; - bool m_processing; + QStringList m_bracketed; + IOWorker *m_IO_Worker; + HdrCreationManager *m_hdrCreationManager; + int m_numProcessed; + int m_processed; + int m_total; + bool m_errors; + bool m_loading_error; + bool m_abort; + bool m_processing; QVector m_customConfig; QFutureWatcher m_futureWatcher; QFuture m_future; diff -Nru luminance-hdr-2.5.0/src/BatchHDR/BatchHDRDialog.ui luminance-hdr-2.5.1/src/BatchHDR/BatchHDRDialog.ui --- luminance-hdr-2.5.0/src/BatchHDR/BatchHDRDialog.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchHDR/BatchHDRDialog.ui 2017-05-10 19:14:06.000000000 +0000 @@ -11,7 +11,7 @@ - Batch HDR Dialog + Batch HDR diff -Nru luminance-hdr-2.5.0/src/BatchTM/BatchTMDialog.cpp luminance-hdr-2.5.1/src/BatchTM/BatchTMDialog.cpp --- luminance-hdr-2.5.0/src/BatchTM/BatchTMDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchTM/BatchTMDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -20,7 +20,7 @@ * * Original Work * @author Giuseppe Rota - * Improvements, bugfixing + * Improvements, bugfixing * @author Franco Comida * Improvements, bugfixing * @author Davide Anastasia @@ -75,7 +75,7 @@ connect(m_Ui->remove_HDRs_Button, SIGNAL(clicked()), this, SLOT(remove_HDRs()) ); connect(m_Ui->remove_TMOpts_Button, SIGNAL(clicked()), this, SLOT(remove_TMOpts()) ); connect(m_Ui->BatchGoButton, SIGNAL(clicked()), this, SLOT(batch_core())); //start_called() - connect(m_Ui->cancelbutton, SIGNAL(clicked()), this, SLOT(abort())); + connect(m_Ui->cancelbutton, SIGNAL(clicked()), this, SLOT(abort())); connect(m_Ui->from_Database_Button, SIGNAL(clicked()), this, SLOT(from_database())); connect(m_Ui->filterLineEdit, SIGNAL(textChanged(const QString&)), this, SLOT(filterChanged(const QString&))); @@ -123,7 +123,7 @@ QString dirname=QFileDialog::getExistingDirectory(this, tr("Choose a directory"), m_batchTmInputDir ); if ( !dirname.isEmpty() ) { - m_batchTmInputDir = dirname; + m_batchTmInputDir = dirname; m_luminance_options.setBatchTmPathHdrInput(dirname); // update settings QStringList filters; filters << "*.exr" << "*.hdr" << "*.pic" << "*.tiff" << "*.tif" << "*.pfs" << "*.crw" << "*.cr2" << "*.nef" << "*.dng" << "*.mrw" << "*.orf" << "*.kdc" << "*.dcr" << "*.arw" << "*.raf" << "*.ptx" << "*.pef" << "*.x3f" << "*.raw" << "*.sr2" << "*.rw2" << "*.srw"; @@ -156,7 +156,7 @@ QString dirname = QFileDialog::getExistingDirectory(this, tr("Choose a directory"), m_batchTmTmoSettingsDir); if ( !dirname.isEmpty() ) { - m_batchTmTmoSettingsDir = dirname; + m_batchTmTmoSettingsDir = dirname; m_luminance_options.setBatchTmPathTmoSettings(dirname); // update settings QStringList filters; filters << "*.txt"; @@ -249,8 +249,8 @@ if (i_th_tm_opt != NULL) { - i_th_tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - + i_th_tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + //add to data structure m_tm_options_list.append(i_th_tm_opt); @@ -333,7 +333,7 @@ } void BatchTMDialog::add_log_message(const QString& message) -{ +{ // Mutex lock! m_add_log_message_mutex.lock(); @@ -402,12 +402,12 @@ // lock the class resources in order to work free of race-condition m_class_data_mutex.lock(); - if (m_abort) { - m_class_data_mutex.unlock(); + if (m_abort) { + m_class_data_mutex.unlock(); emit stop_batch_tm_ui(); - return; + return; } - + if ( m_next_hdr_file == HDRs_list.size() ) { m_class_data_mutex.unlock(); @@ -421,10 +421,10 @@ // at least one thread free! // start thread // I create the thread with NEW, but I let it die on its own, so don't need to store its pointer somewhere - QString fileExtension = m_formatHelper.getFileExtension(); + QString fileExtension = m_formatHelper.getFileExtension(); BatchTMJob * job_thread = new BatchTMJob(t_id, HDRs_list.at(m_next_hdr_file), &m_tm_options_list, m_Ui->out_folder_widgets->text(), - fileExtension, m_formatHelper.getParams()); + fileExtension, m_formatHelper.getParams()); // Thread deletes itself when it has done with its job connect(job_thread, SIGNAL(finished()), @@ -453,7 +453,7 @@ } int BatchTMDialog::get_available_thread_id() -{ +{ if ( m_thread_slot.tryAcquire() ) { // if I'm here, at least one thread is available @@ -560,176 +560,176 @@ void BatchTMDialog::increment_progress_bar(int inc) { - int progressValue = m_Ui->overallProgressBar->value()+inc; + int progressValue = m_Ui->overallProgressBar->value()+inc; m_Ui->overallProgressBar->setValue(progressValue); OsIntegration::getInstance().setProgress(progressValue - m_Ui->overallProgressBar->minimum(), m_Ui->overallProgressBar->maximum()); } void BatchTMDialog::abort() { - if (m_is_batch_running) { - m_abort = true; - m_Ui->cancelbutton->setText(tr("Aborting...")); - m_Ui->cancelbutton->setEnabled(false); - } - else - this->reject(); + if (m_is_batch_running) { + m_abort = true; + m_Ui->cancelbutton->setText(tr("Aborting...")); + m_Ui->cancelbutton->setEnabled(false); + } + else + this->reject(); } void BatchTMDialog::updateWidth(int newWidth_in_percent) { - TonemappingOptions *opt; - foreach (opt, m_tm_options_list) { - opt->xsize_percent = newWidth_in_percent; - } + TonemappingOptions *opt; + foreach (opt, m_tm_options_list) { + opt->xsize_percent = newWidth_in_percent; + } } void BatchTMDialog::from_database() { - SavedParametersDialog dialog(this); - if (dialog.exec()) { - QSqlQueryModel *model = dialog.getModel(); - QModelIndexList mil = dialog.getSelectedRows(); - foreach(QModelIndex mi, mil) { - QString comment, tmOperator; - comment = model->record(mi.row()).value("comment").toString(); - tmOperator = model->record(mi.row()).value("operator").toString(); - - QSqlTableModel *temp_model = new QSqlTableModel; - temp_model->setTable(tmOperator); - temp_model->select(); - QSqlQuery query("SELECT * from " + tmOperator + " WHERE comment = '" + comment + "'"); - - TonemappingOptions *tm_opt = new TonemappingOptions; - if (tmOperator == "ashikhmin") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = ashikhmin; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.ashikhminoptions.simple = query.value(0).toBool(); - tm_opt->operator_options.ashikhminoptions.eq2 = query.value(1).toBool(); - tm_opt->operator_options.ashikhminoptions.lct = query.value(2).toFloat(); - tm_opt->pregamma = query.value(3).toFloat(); - } - } - else if (tmOperator == "drago") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = drago; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.dragooptions.bias = query.value(0).toFloat(); - tm_opt->pregamma = query.value(1).toFloat(); - } - } - else if (tmOperator == "durand") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = durand; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.durandoptions.spatial = query.value(0).toFloat(); - tm_opt->operator_options.durandoptions.range = query.value(1).toFloat(); - tm_opt->operator_options.durandoptions.base = query.value(2).toFloat(); - tm_opt->pregamma = query.value(3).toFloat(); - } - } - else if (tmOperator == "fattal") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = fattal; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.fattaloptions.alpha = query.value(0).toFloat(); - tm_opt->operator_options.fattaloptions.beta = query.value(1).toFloat(); - tm_opt->operator_options.fattaloptions.color = query.value(2).toFloat(); - tm_opt->operator_options.fattaloptions.noiseredux = query.value(3).toFloat(); - tm_opt->operator_options.fattaloptions.newfattal = !query.value(4).toBool(); - tm_opt->operator_options.fattaloptions.fftsolver = !query.value(4).toBool(); - tm_opt->pregamma = query.value(5).toFloat(); - } - } - else if (tmOperator == "ferradans") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = ferradans; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.ferradansoptions.rho = query.value(0).toFloat(); - tm_opt->operator_options.ferradansoptions.inv_alpha = query.value(1).toFloat(); - tm_opt->pregamma = query.value(2).toFloat(); - } - } - else if (tmOperator == "mantiuk06") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = mantiuk06; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.mantiuk06options.contrastfactor = query.value(1).toFloat(); - tm_opt->operator_options.mantiuk06options.saturationfactor = query.value(2).toFloat(); - tm_opt->operator_options.mantiuk06options.detailfactor = query.value(3).toFloat(); - tm_opt->operator_options.mantiuk06options.contrastequalization = query.value(0).toBool(); - tm_opt->pregamma = query.value(4).toFloat(); - } - } - else if (tmOperator == "mantiuk08") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = mantiuk08; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.mantiuk08options.colorsaturation = query.value(0).toFloat(); - tm_opt->operator_options.mantiuk08options.contrastenhancement = query.value(1).toFloat(); - tm_opt->operator_options.mantiuk08options.luminancelevel = query.value(2).toFloat(); - tm_opt->operator_options.mantiuk08options.setluminance = query.value(3).toBool(); - tm_opt->pregamma = query.value(4).toFloat(); - } - } - else if (tmOperator == "pattanaik") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = pattanaik; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.pattanaikoptions.autolum = query.value(4).toBool(); - tm_opt->operator_options.pattanaikoptions.local = query.value(3).toBool(); - tm_opt->operator_options.pattanaikoptions.cone = query.value(1).toFloat(); - tm_opt->operator_options.pattanaikoptions.rod = query.value(2).toFloat(); - tm_opt->operator_options.pattanaikoptions.multiplier = query.value(0).toFloat(); - tm_opt->pregamma = query.value(5).toFloat(); - } - } - else if (tmOperator == "reinhard02") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = reinhard02; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.reinhard02options.scales = query.value(0).toBool(); - tm_opt->operator_options.reinhard02options.key = query.value(1).toFloat(); - tm_opt->operator_options.reinhard02options.phi = query.value(2).toFloat(); - tm_opt->operator_options.reinhard02options.range = query.value(3).toInt(); - tm_opt->operator_options.reinhard02options.lower = query.value(4).toInt(); - tm_opt->operator_options.reinhard02options.upper = query.value(5).toInt(); - tm_opt->pregamma = query.value(6).toFloat(); - } - } - else if (tmOperator == "reinhard05") { - m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); - tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); - tm_opt->tmoperator = reinhard05; - tm_opt->tonemapSelection = false; - while (query.next()) { - tm_opt->operator_options.reinhard05options.brightness = query.value(0).toFloat(); - tm_opt->operator_options.reinhard05options.chromaticAdaptation = query.value(1).toFloat(); - tm_opt->operator_options.reinhard05options.lightAdaptation = query.value(2).toFloat(); - tm_opt->pregamma = query.value(3).toFloat(); - } - } - m_tm_options_list.append(tm_opt); - delete temp_model; - } - } + SavedParametersDialog dialog(this); + if (dialog.exec()) { + QSqlQueryModel *model = dialog.getModel(); + QModelIndexList mil = dialog.getSelectedRows(); + foreach(QModelIndex mi, mil) { + QString comment, tmOperator; + comment = model->record(mi.row()).value("comment").toString(); + tmOperator = model->record(mi.row()).value("operator").toString(); + + QSqlTableModel *temp_model = new QSqlTableModel; + temp_model->setTable(tmOperator); + temp_model->select(); + QSqlQuery query("SELECT * from " + tmOperator + " WHERE comment = '" + comment + "'"); + + TonemappingOptions *tm_opt = new TonemappingOptions; + if (tmOperator == "ashikhmin") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = ashikhmin; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.ashikhminoptions.simple = query.value(0).toBool(); + tm_opt->operator_options.ashikhminoptions.eq2 = query.value(1).toBool(); + tm_opt->operator_options.ashikhminoptions.lct = query.value(2).toFloat(); + tm_opt->pregamma = query.value(3).toFloat(); + } + } + else if (tmOperator == "drago") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = drago; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.dragooptions.bias = query.value(0).toFloat(); + tm_opt->pregamma = query.value(1).toFloat(); + } + } + else if (tmOperator == "durand") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = durand; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.durandoptions.spatial = query.value(0).toFloat(); + tm_opt->operator_options.durandoptions.range = query.value(1).toFloat(); + tm_opt->operator_options.durandoptions.base = query.value(2).toFloat(); + tm_opt->pregamma = query.value(3).toFloat(); + } + } + else if (tmOperator == "fattal") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = fattal; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.fattaloptions.alpha = query.value(0).toFloat(); + tm_opt->operator_options.fattaloptions.beta = query.value(1).toFloat(); + tm_opt->operator_options.fattaloptions.color = query.value(2).toFloat(); + tm_opt->operator_options.fattaloptions.noiseredux = query.value(3).toFloat(); + tm_opt->operator_options.fattaloptions.newfattal = !query.value(4).toBool(); + tm_opt->operator_options.fattaloptions.fftsolver = !query.value(4).toBool(); + tm_opt->pregamma = query.value(5).toFloat(); + } + } + else if (tmOperator == "ferradans") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = ferradans; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.ferradansoptions.rho = query.value(0).toFloat(); + tm_opt->operator_options.ferradansoptions.inv_alpha = query.value(1).toFloat(); + tm_opt->pregamma = query.value(2).toFloat(); + } + } + else if (tmOperator == "mantiuk06") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = mantiuk06; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.mantiuk06options.contrastfactor = query.value(1).toFloat(); + tm_opt->operator_options.mantiuk06options.saturationfactor = query.value(2).toFloat(); + tm_opt->operator_options.mantiuk06options.detailfactor = query.value(3).toFloat(); + tm_opt->operator_options.mantiuk06options.contrastequalization = query.value(0).toBool(); + tm_opt->pregamma = query.value(4).toFloat(); + } + } + else if (tmOperator == "mantiuk08") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = mantiuk08; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.mantiuk08options.colorsaturation = query.value(0).toFloat(); + tm_opt->operator_options.mantiuk08options.contrastenhancement = query.value(1).toFloat(); + tm_opt->operator_options.mantiuk08options.luminancelevel = query.value(2).toFloat(); + tm_opt->operator_options.mantiuk08options.setluminance = query.value(3).toBool(); + tm_opt->pregamma = query.value(4).toFloat(); + } + } + else if (tmOperator == "pattanaik") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = pattanaik; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.pattanaikoptions.autolum = query.value(4).toBool(); + tm_opt->operator_options.pattanaikoptions.local = query.value(3).toBool(); + tm_opt->operator_options.pattanaikoptions.cone = query.value(1).toFloat(); + tm_opt->operator_options.pattanaikoptions.rod = query.value(2).toFloat(); + tm_opt->operator_options.pattanaikoptions.multiplier = query.value(0).toFloat(); + tm_opt->pregamma = query.value(5).toFloat(); + } + } + else if (tmOperator == "reinhard02") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = reinhard02; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.reinhard02options.scales = query.value(0).toBool(); + tm_opt->operator_options.reinhard02options.key = query.value(1).toFloat(); + tm_opt->operator_options.reinhard02options.phi = query.value(2).toFloat(); + tm_opt->operator_options.reinhard02options.range = query.value(3).toInt(); + tm_opt->operator_options.reinhard02options.lower = query.value(4).toInt(); + tm_opt->operator_options.reinhard02options.upper = query.value(5).toInt(); + tm_opt->pregamma = query.value(6).toFloat(); + } + } + else if (tmOperator == "reinhard05") { + m_Ui->listWidget_TMopts->addItem(tmOperator + ": " + comment); + tm_opt->xsize_percent = m_Ui->spinBox_Width->value(); + tm_opt->tmoperator = reinhard05; + tm_opt->tonemapSelection = false; + while (query.next()) { + tm_opt->operator_options.reinhard05options.brightness = query.value(0).toFloat(); + tm_opt->operator_options.reinhard05options.chromaticAdaptation = query.value(1).toFloat(); + tm_opt->operator_options.reinhard05options.lightAdaptation = query.value(2).toFloat(); + tm_opt->pregamma = query.value(3).toFloat(); + } + } + m_tm_options_list.append(tm_opt); + delete temp_model; + } + } } diff -Nru luminance-hdr-2.5.0/src/BatchTM/BatchTMDialog.h luminance-hdr-2.5.1/src/BatchTM/BatchTMDialog.h --- luminance-hdr-2.5.0/src/BatchTM/BatchTMDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchTM/BatchTMDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,6 +1,6 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Giuseppe Rota * * This program is free software; you can redistribute it and/or modify @@ -16,11 +16,11 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Giuseppe Rota - * Improvements, bugfixing + * Improvements, bugfixing * @author Franco Comida * */ @@ -34,8 +34,8 @@ #include #include #include -#include -#include +#include +#include #include "LibpfsAdditions/formathelper.h" @@ -55,29 +55,29 @@ QScopedPointer m_Ui; public: - BatchTMDialog(QWidget *parent = 0); - ~BatchTMDialog(); + BatchTMDialog(QWidget *parent = 0); + ~BatchTMDialog(); // protected: private slots: - void add_dir_HDRs(); - void add_HDRs(); - void add_dir_TMopts(); - void add_TMopts(); - void out_folder_clicked(); - void check_enable_start(); - void remove_HDRs(); - void remove_TMOpts(); - void filterChanged(const QString&); - void filterComboBoxActivated(int); - void abort(); + void add_dir_HDRs(); + void add_HDRs(); + void add_dir_TMopts(); + void add_TMopts(); + void out_folder_clicked(); + void check_enable_start(); + void remove_HDRs(); + void remove_TMOpts(); + void filterChanged(const QString&); + void filterComboBoxActivated(int); + void abort(); //fuction that adds a log message to the model - void add_log_message(const QString &); - + void add_log_message(const QString &); + void batch_core(); void release_thread(int t_id); - void start_batch_thread(); + void start_batch_thread(); void stop_batch_tm_ui(); void increment_progress_bar(int); @@ -91,7 +91,7 @@ private: //Parses a TM_opts file (return NULL on error) TonemappingOptions* parse_tm_opt_file(QString filename); - + //required for the cache path LuminanceOptions m_luminance_options; @@ -106,20 +106,20 @@ int stop_left; int start_right; int stop_right; - + //data structure (model) for left-side list: HDRs - QStringList HDRs_list; - + QStringList HDRs_list; + // the class that performs regexp filtering QSortFilterProxyModel * log_filter; - + // the model that holds the data - QStringListModel * full_Log_Model; - + QStringListModel * full_Log_Model; + QMutex m_add_log_message_mutex; - + QList< TonemappingOptions* > m_tm_options_list; - + // Davide Anastasia //Max number of threads allowed int m_max_num_threads; @@ -128,19 +128,19 @@ QMutex m_class_data_mutex; bool m_is_batch_running; bool * m_available_threads; - bool m_abort; + bool m_abort; int m_next_hdr_file; - + pfsadditions::FormatHelper m_formatHelper; int get_available_thread_id(); void init_batch_tm_ui(); //when removing we cycle through the list to grab the selected interval - void update_selection_interval(bool left); + void update_selection_interval(bool left); //updates graphica widget (view) and data structure (model) for HDR list - void add_view_model_HDRs(QStringList); + void add_view_model_HDRs(QStringList); //updates graphica widget (view) and data structure (model) for TM_opts list - void add_view_model_TM_OPTs(QStringList); + void add_view_model_TM_OPTs(QStringList); }; #endif diff -Nru luminance-hdr-2.5.0/src/BatchTM/BatchTMJob.cpp luminance-hdr-2.5.1/src/BatchTM/BatchTMJob.cpp --- luminance-hdr-2.5.0/src/BatchTM/BatchTMJob.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchTM/BatchTMJob.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -46,8 +46,8 @@ m_file_name(filename), m_tm_options(tm_options), m_output_folder(output_folder), - m_ldr_output_format(format), - m_params(params) + m_ldr_output_format(format), + m_params(params) { //m_ldr_output_format = LuminanceOptions().getBatchTmLdrFormat(); @@ -82,7 +82,7 @@ opts->tonemapSelection = false; // just to be sure! opts->origxsize = reference_frame->getWidth(); - opts->xsize = (int) opts->origxsize * opts->xsize_percent / 100; + opts->xsize = (int) opts->origxsize * opts->xsize_percent / 100; QScopedPointer temporary_frame; if ( opts->origxsize == opts->xsize ) @@ -91,13 +91,13 @@ } else { - temporary_frame.reset( pfs::resize(reference_frame.data(), opts->xsize) ); + temporary_frame.reset( pfs::resize(reference_frame.data(), opts->xsize, BilinearInterp) ); } - if ( opts->pregamma != 1.0f ) - { + if ( opts->pregamma != 1.0f ) + { pfs::applyGamma(temporary_frame.data(), opts->pregamma ); - } + } QScopedPointer tm_operator( TonemapOperator::getTonemapOperator(opts->tmoperator) ); diff -Nru luminance-hdr-2.5.0/src/BatchTM/BatchTMJob.h luminance-hdr-2.5.1/src/BatchTM/BatchTMJob.h --- luminance-hdr-2.5.0/src/BatchTM/BatchTMJob.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/BatchTM/BatchTMJob.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,65 +1,65 @@ -/** - * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2011 Davide Anastasia - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * Original Work - * @author Davide Anastasia - * This class splits the "Batch Tonemapping core" from the UI, to achieve a simpler - * code, faster, easier to maintain and more clear to read - * - */ - -#ifndef BATCHTMJOB_H -#define BATCHTMJOB_H - -#include -#include -#include - -#include - -// Forward declaration -class TonemappingOptions; - -class BatchTMJob : public QThread -{ - Q_OBJECT -public: - BatchTMJob(int thread_id, const QString& filename, const QList* tm_options, - const QString& output_folder, const QString& ldr_output_format, pfs::Params params); - virtual ~BatchTMJob(); -signals: - void done(int thread_id); - void add_log_message(QString); - //void update_progress_bar(); - void increment_progress_bar(int); -protected: - void run(); - -private: - int m_thread_id; - QString m_file_name; - const QList* m_tm_options; - QString m_output_folder; - QString m_output_file_name_base; - QString m_ldr_output_format; - pfs::Params m_params; -}; - -#endif // BATCHTMJOB_H +/** + * This file is a part of LuminanceHDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2011 Davide Anastasia + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * Original Work + * @author Davide Anastasia + * This class splits the "Batch Tonemapping core" from the UI, to achieve a simpler + * code, faster, easier to maintain and more clear to read + * + */ + +#ifndef BATCHTMJOB_H +#define BATCHTMJOB_H + +#include +#include +#include + +#include + +// Forward declaration +class TonemappingOptions; + +class BatchTMJob : public QThread +{ + Q_OBJECT +public: + BatchTMJob(int thread_id, const QString& filename, const QList* tm_options, + const QString& output_folder, const QString& ldr_output_format, pfs::Params params); + virtual ~BatchTMJob(); +signals: + void done(int thread_id); + void add_log_message(QString); + //void update_progress_bar(); + void increment_progress_bar(int); +protected: + void run(); + +private: + int m_thread_id; + QString m_file_name; + const QList* m_tm_options; + QString m_output_folder; + QString m_output_file_name_base; + QString m_ldr_output_format; + pfs::Params m_params; +}; + +#endif // BATCHTMJOB_H diff -Nru luminance-hdr-2.5.0/src/Common/CommonFunctions.cpp luminance-hdr-2.5.1/src/Common/CommonFunctions.cpp --- luminance-hdr-2.5.0/src/Common/CommonFunctions.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/CommonFunctions.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -76,22 +76,18 @@ hist /= hist_max; } -static void compute_histogram_minmax(const valarray &hist, float &minHist, float &maxHist) +static void compute_histogram_minmax(const valarray &hist, const float threshold, float &minHist, float &maxHist) { //Scaling factor: range [0..1] const float scalingFactor = 1.f/255.f; const int hist_size = hist.size(); - float CUMUL = 0; - for (int i = 0; i < hist_size; i++) - { - CUMUL += hist[i]; - } + float CUMUL = hist.sum(); //Start from max hist float hist_max = 0.f; int xa = 0; - for (int i = 0; i < (hist_size - 1); i++) + for (int i = 0; i < hist_size; i++) { if ( hist[i] > hist_max ) { @@ -100,61 +96,52 @@ } } - if (xa >= 255 ) + if (xa >= hist_size - 1) { - xa = 254; + xa = hist_size - 2; } int xb = xa + 1; - const float Threshold = .95f*CUMUL; + const float Threshold = threshold*CUMUL; float count = 0.f; + bool decrease_xa = true; + bool increase_xb = true; while (true) { - count = 0.f; - for (int i = xa; i <= xb; i++) - { - count += hist[i]; - } - - xa--; - + count = hist[slice(xa, xb-xa+1, 1)].sum(); if ( count >= Threshold) break; + if (decrease_xa) + xa--; + if (xa <= 0) { xa = 0; - break; + decrease_xa = false; } - } - while (true) - { - count = 0.f; - - for (int i = xa; i <= xb; i++) - { - count += hist[i]; - } + count = hist[slice(xa, xb-xa+1, 1)].sum(); if (count >= Threshold) break; - xb++; + if (increase_xb) + xb++; - if (xb >= 255) + if (xb >= hist_size - 1) { - xb = 255; - break; + xb = hist_size - 1; + increase_xb = false; } } minHist = scalingFactor*xa; maxHist = scalingFactor*xb; } -void computeAutolevels(const QImage* data, float &minHist, float &maxHist, float &gamma) +void computeAutolevels(const QImage* data, const float threshold, float &minHist, float &maxHist, float &gamma) { const int COLOR_DEPTH = 256; const QRgb* src = reinterpret_cast(data->bits()); @@ -177,7 +164,7 @@ //Build histogram valarray histL(0.f, COLOR_DEPTH); build_histogram(histL, lightness); - compute_histogram_minmax(histL, minL, maxL); + compute_histogram_minmax(histL, threshold, minL, maxL); //get Red, Gree, Blue valarray red(ELEMENTS); @@ -194,17 +181,17 @@ //Build histogram valarray histR(0.f, COLOR_DEPTH); build_histogram(histR, red); - compute_histogram_minmax(histR, minR, maxR); + compute_histogram_minmax(histR, threshold, minR, maxR); //Build histogram valarray histG(0.f, COLOR_DEPTH); build_histogram(histG, green); - compute_histogram_minmax(histG, minG, maxG); + compute_histogram_minmax(histG, threshold, minG, maxG); //Build histogram valarray histB(0.f, COLOR_DEPTH); build_histogram(histB, blue); - compute_histogram_minmax(histB, minB, maxB); + compute_histogram_minmax(histB, threshold, minB, maxB); minHist = min(min(minL,minR), min(minG,minB)); maxHist = max(max(maxL,maxR), max(maxG,maxB)); @@ -259,7 +246,6 @@ FrameReaderPtr reader = FrameReaderFactory::open(filePath.constData()); reader->read( *currentItem.frame(), getRawSettings() ); - currentItem.setBitDepth(reader->getBitDepth()); // read Average Luminance pfs::exif::ExifData exifData(currentItem.filename().toStdString()); @@ -338,7 +324,7 @@ } } -SaveFile::SaveFile(int mode, float minLum, float maxLum, bool deflateCompression) : +SaveFile::SaveFile(int mode, float minLum, float maxLum, bool deflateCompression) : m_mode(mode), m_minLum(minLum), m_maxLum(maxLum), @@ -363,12 +349,12 @@ { Params p; p.set("tiff_mode", m_mode); // 16bits or 32bits - p.set("min_luminance", m_minLum); - p.set("max_luminance", m_maxLum); - p.set("deflateCompression", m_deflateCompression); - + p.set("min_luminance", m_minLum); + p.set("max_luminance", m_maxLum); + p.set("deflateCompression", m_deflateCompression); + FrameWriterPtr writer = FrameWriterFactory::open( - QFile::encodeName(outputFilename).constData(), p); + QFile::encodeName(outputFilename).constData(), p); writer->write( *currentItem.frame(), p ); } diff -Nru luminance-hdr-2.5.0/src/Common/CommonFunctions.h luminance-hdr-2.5.1/src/Common/CommonFunctions.h --- luminance-hdr-2.5.0/src/Common/CommonFunctions.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/CommonFunctions.h 2017-05-10 19:14:06.000000000 +0000 @@ -28,7 +28,7 @@ #include #include -void computeAutolevels(const QImage* data, float &minL, float &maxL, float &gammaL); +void computeAutolevels(const QImage* data, const float threshold, float &minL, float &maxL, float &gammaL); inline void rgb2hsl(float r, float g, float b, float& h, float& s, float& l) @@ -131,7 +131,7 @@ struct ConvertToQRgb { float gamma; explicit ConvertToQRgb(float gamma = 1.0f); - void operator()(float r, float g, float b, QRgb& rgb) const; + void operator()(float r, float g, float b, QRgb& rgb) const; }; struct LoadFile { diff -Nru luminance-hdr-2.5.0/src/Common/GitSHA1.h luminance-hdr-2.5.1/src/Common/GitSHA1.h --- luminance-hdr-2.5.0/src/Common/GitSHA1.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/GitSHA1.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,30 +1,30 @@ -/** - * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2012 Davide Anastasia - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - */ - -//#ifndef GITSHA1_H -//#define GITSHA1_H - -//extern "C" -//{ -extern char g_GIT_SHA1[]; -//} -//#endif // GITSHA1_H +/** + * This file is a part of LuminanceHDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2012 Davide Anastasia + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + */ + +//#ifndef GITSHA1_H +//#define GITSHA1_H + +//extern "C" +//{ +extern char g_GIT_SHA1[]; +//} +//#endif // GITSHA1_H diff -Nru luminance-hdr-2.5.0/src/Common/global.cpp luminance-hdr-2.5.1/src/Common/global.cpp --- luminance-hdr-2.5.0/src/Common/global.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/global.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -38,18 +38,18 @@ bool matchesLdrFilename(const QString& file) { - QRegExp exp(".*\\.(jpeg|jpg|tiff|tif|crw|cr2|nef|dng|mrw|orf|kdc|dcr|arw|raf|ptx|pef|x3f|raw|sr2|rw2)$", Qt::CaseInsensitive); - return exp.exactMatch(file); + QRegExp exp(".*\\.(jpeg|jpg|tiff|tif|crw|cr2|nef|dng|mrw|orf|kdc|dcr|arw|raf|ptx|pef|x3f|raw|sr2|rw2)$", Qt::CaseInsensitive); + return exp.exactMatch(file); } bool matchesHdrFilename(const QString& file) { #ifdef HAVE_CFITSIO - QRegExp exp(".*\\.(exr|hdr|pic|tiff|tif|fit|fits|pfs|crw|cr2|nef|dng|mrw|orf|kdc|dcr|arw|raf|ptx|pef|x3f|raw|sr2|rw2)$", Qt::CaseInsensitive); + QRegExp exp(".*\\.(exr|hdr|pic|tiff|tif|fit|fits|pfs|crw|cr2|nef|dng|mrw|orf|kdc|dcr|arw|raf|ptx|pef|x3f|raw|sr2|rw2)$", Qt::CaseInsensitive); #else - QRegExp exp(".*\\.(exr|hdr|pic|tiff|tif|pfs|crw|cr2|nef|dng|mrw|orf|kdc|dcr|arw|raf|ptx|pef|x3f|raw|sr2|rw2)$", Qt::CaseInsensitive); + QRegExp exp(".*\\.(exr|hdr|pic|tiff|tif|pfs|crw|cr2|nef|dng|mrw|orf|kdc|dcr|arw|raf|ptx|pef|x3f|raw|sr2|rw2)$", Qt::CaseInsensitive); #endif - return exp.exactMatch(file); + return exp.exactMatch(file); } QStringList getAllHdrFileExtensions() @@ -72,7 +72,7 @@ bool matchesValidHDRorLDRfilename(const QString& file) { - return matchesLdrFilename(file) || matchesHdrFilename(file); + return matchesLdrFilename(file) || matchesHdrFilename(file); } QStringList convertUrlListToFilenameList(const QList& urls) diff -Nru luminance-hdr-2.5.0/src/Common/global.h luminance-hdr-2.5.1/src/Common/global.h --- luminance-hdr-2.5.0/src/Common/global.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/global.h 2017-05-10 19:14:06.000000000 +0000 @@ -29,11 +29,11 @@ #define GLOBAL_H #include -#include -#include #include #include +enum InterpolationMethod {LanczosInterp, BilinearInterp}; + bool matchesLdrFilename(const QString& file); bool matchesHdrFilename(const QString& file); bool matchesValidHDRorLDRfilename(const QString& file); diff -Nru luminance-hdr-2.5.0/src/Common/LuminanceOptions.cpp luminance-hdr-2.5.1/src/Common/LuminanceOptions.cpp --- luminance-hdr-2.5.0/src/Common/LuminanceOptions.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/LuminanceOptions.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -209,12 +209,12 @@ bool LuminanceOptions::isGuiDarkMode() const { - return m_settingHolder->value(KEY_GUI_DARKMODE, false).toBool(); + return m_settingHolder->value(KEY_GUI_DARKMODE, false).toBool(); } void LuminanceOptions::setGuiDarkMode(bool b) { - m_settingHolder->setValue(KEY_GUI_DARKMODE, b); + m_settingHolder->setValue(KEY_GUI_DARKMODE, b); } void LuminanceOptions::applyTheme(bool /*init*/) @@ -222,37 +222,39 @@ QString theme = LuminanceOptions().getGuiTheme(); if (theme.compare("Macintosh") != 0 && isGuiDarkMode()) { - //QPalette darkPalette; - QPalette darkPalette = QApplication::palette(); + //QPalette darkPalette; + QPalette darkPalette = QApplication::palette(); - darkPalette.setColor(QPalette::Window, QColor(53, 53, 53)); - darkPalette.setColor(QPalette::WindowText, Qt::white); - darkPalette.setColor(QPalette::Disabled, QPalette::WindowText, Qt::lightGray); - darkPalette.setColor(QPalette::Base, QColor(25, 25, 25)); - darkPalette.setColor(QPalette::AlternateBase, QColor(53, 53, 53)); - darkPalette.setColor(QPalette::ToolTipBase, Qt::white); - darkPalette.setColor(QPalette::ToolTipText, Qt::black); - darkPalette.setColor(QPalette::Text, Qt::white); - darkPalette.setColor(QPalette::Disabled, QPalette::Text, Qt::lightGray); - darkPalette.setColor(QPalette::Button, QColor(53, 53, 53)); - darkPalette.setColor(QPalette::ButtonText, Qt::white); - darkPalette.setColor(QPalette::Disabled, QPalette::ButtonText, Qt::lightGray); - darkPalette.setColor(QPalette::BrightText, Qt::red); - darkPalette.setColor(QPalette::Link, QColor(42, 130, 218)); - - darkPalette.setColor(QPalette::Highlight, QColor(42, 130, 218)); - darkPalette.setColor(QPalette::HighlightedText, Qt::black); - - QApplication::setPalette(darkPalette); - - //QApplication::setStyleSheet("QToolTip { color: #ffffff; background-color: #2a82da; border: 1px solid white; }"); - } - else - { - QApplication::setPalette(QApplication::palette()); - } + darkPalette.setColor(QPalette::Window, QColor(53, 53, 53)); + darkPalette.setColor(QPalette::WindowText, Qt::white); + darkPalette.setColor(QPalette::Disabled, QPalette::WindowText, Qt::lightGray); + darkPalette.setColor(QPalette::Base, QColor(25, 25, 25)); + darkPalette.setColor(QPalette::AlternateBase, QColor(53, 53, 53)); + darkPalette.setColor(QPalette::ToolTipBase, Qt::white); + darkPalette.setColor(QPalette::ToolTipText, Qt::black); + darkPalette.setColor(QPalette::Text, Qt::white); + darkPalette.setColor(QPalette::Disabled, QPalette::Text, Qt::lightGray); + darkPalette.setColor(QPalette::Button, QColor(53, 53, 53)); + darkPalette.setColor(QPalette::ButtonText, Qt::white); + darkPalette.setColor(QPalette::Disabled, QPalette::ButtonText, Qt::lightGray); + darkPalette.setColor(QPalette::BrightText, Qt::red); + //darkPalette.setColor(QPalette::Link, QColor(42, 130, 218)); + darkPalette.setColor(QPalette::Link, QColor(0, 120, 220)); + + //darkPalette.setColor(QPalette::Highlight, QColor(42, 130, 218)); + darkPalette.setColor(QPalette::Highlight, QColor(0, 120, 220)); + darkPalette.setColor(QPalette::HighlightedText, Qt::black); - QApplication::setStyle(QStyleFactory::create(LuminanceOptions().getGuiTheme())); + QApplication::setPalette(darkPalette); + + //QApplication::setStyleSheet("QToolTip { color: #ffffff; background-color: #2a82da; border: 1px solid white; }"); + } + else + { + QApplication::setPalette(QApplication::palette()); + } + + QApplication::setStyle(QStyleFactory::create(LuminanceOptions().getGuiTheme())); } // write system default language the first time around (discard "_country") @@ -918,42 +920,42 @@ QString LuminanceOptions::getCameraProfileFileName() { - return m_settingHolder->value(KEY_COLOR_CAMERA_PROFILE_FILENAME, "").toString(); + return m_settingHolder->value(KEY_COLOR_CAMERA_PROFILE_FILENAME, "").toString(); } void LuminanceOptions::setCameraProfileFileName(const QString& fname) { - m_settingHolder->setValue(KEY_COLOR_CAMERA_PROFILE_FILENAME, fname); + m_settingHolder->setValue(KEY_COLOR_CAMERA_PROFILE_FILENAME, fname); } QString LuminanceOptions::getMonitorProfileFileName() { - return m_settingHolder->value(KEY_COLOR_MONITOR_PROFILE_FILENAME).toString(); + return m_settingHolder->value(KEY_COLOR_MONITOR_PROFILE_FILENAME).toString(); } void LuminanceOptions::setMonitorProfileFileName(const QString& fname) { - m_settingHolder->setValue(KEY_COLOR_MONITOR_PROFILE_FILENAME, fname); + m_settingHolder->setValue(KEY_COLOR_MONITOR_PROFILE_FILENAME, fname); } QString LuminanceOptions::getPrinterProfileFileName() { - return m_settingHolder->value(KEY_COLOR_PRINTER_PROFILE_FILENAME).toString(); + return m_settingHolder->value(KEY_COLOR_PRINTER_PROFILE_FILENAME).toString(); } void LuminanceOptions::setPrinterProfileFileName(const QString& fname) { - m_settingHolder->setValue(KEY_COLOR_PRINTER_PROFILE_FILENAME, fname); + m_settingHolder->setValue(KEY_COLOR_PRINTER_PROFILE_FILENAME, fname); } int LuminanceOptions::getPreviewPanelMode() // 0 means on the right, 1 on the bottom { - return m_settingHolder->value(KEY_PREVIEW_PANEL_MODE).toInt(); + return m_settingHolder->value(KEY_PREVIEW_PANEL_MODE).toInt(); } void LuminanceOptions::setPreviewPanelMode(int mode) { - m_settingHolder->setValue(KEY_PREVIEW_PANEL_MODE, mode); + m_settingHolder->setValue(KEY_PREVIEW_PANEL_MODE, mode); } void LuminanceOptions::setExportDir(QString dir) diff -Nru luminance-hdr-2.5.0/src/Common/LuminanceOptions.h luminance-hdr-2.5.1/src/Common/LuminanceOptions.h --- luminance-hdr-2.5.0/src/Common/LuminanceOptions.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/LuminanceOptions.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2011 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Giuseppe Rota @@ -56,7 +56,7 @@ QString getDatabaseFileName(); void setPortableMode(bool isPortable); - + bool checkForUpdate(); void setUpdateChecked(); @@ -149,11 +149,11 @@ void setRawNoiseReductionThreshold(float); // --- - QString getGuiTheme(); + QString getGuiTheme(); void setGuiTheme(const QString&); - bool isGuiDarkMode() const; - void setGuiDarkMode(bool); - void applyTheme(bool init); + bool isGuiDarkMode() const; + void setGuiDarkMode(bool); + void applyTheme(bool init); // Language // 2-chars ISO 639 language code for Luminance's user interface @@ -219,15 +219,15 @@ bool isRealtimePreviewsActive(); void setRealtimePreviewsActive(bool); - // Color Management - QString getCameraProfileFileName(); - void setCameraProfileFileName(const QString&); + // Color Management + QString getCameraProfileFileName(); + void setCameraProfileFileName(const QString&); - QString getMonitorProfileFileName(); - void setMonitorProfileFileName(const QString&); + QString getMonitorProfileFileName(); + void setMonitorProfileFileName(const QString&); - QString getPrinterProfileFileName(); - void setPrinterProfileFileName(const QString&); + QString getPrinterProfileFileName(); + void setPrinterProfileFileName(const QString&); int getPreviewPanelMode(); void setPreviewPanelMode(int); diff -Nru luminance-hdr-2.5.0/src/Common/SavedParametersDialog.cpp luminance-hdr-2.5.1/src/Common/SavedParametersDialog.cpp --- luminance-hdr-2.5.0/src/Common/SavedParametersDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/SavedParametersDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -42,15 +42,15 @@ QString sqlQuery; sqlQuery += "SELECT comment, 'ashikhmin' AS operator FROM ashikhmin UNION "; - sqlQuery += "SELECT comment, 'drago' AS operator FROM drago UNION "; - sqlQuery += "SELECT comment, 'durand' AS operator FROM durand UNION "; - sqlQuery += "SELECT comment, 'fattal' AS operator FROM fattal UNION "; - sqlQuery += "SELECT comment, 'ferradans' AS operator FROM ferradans UNION "; - sqlQuery += "SELECT comment, 'mantiuk06' AS operator FROM mantiuk06 UNION "; - sqlQuery += "SELECT comment, 'mantiuk08' AS operator FROM mantiuk08 UNION "; - sqlQuery += "SELECT comment, 'pattanaik' AS operator FROM pattanaik UNION "; - sqlQuery += "SELECT comment, 'reinhard02' AS operator FROM reinhard02 UNION "; - sqlQuery += "SELECT comment, 'reinhard05' AS operator FROM reinhard05"; + sqlQuery += "SELECT comment, 'drago' AS operator FROM drago UNION "; + sqlQuery += "SELECT comment, 'durand' AS operator FROM durand UNION "; + sqlQuery += "SELECT comment, 'fattal' AS operator FROM fattal UNION "; + sqlQuery += "SELECT comment, 'ferradans' AS operator FROM ferradans UNION "; + sqlQuery += "SELECT comment, 'mantiuk06' AS operator FROM mantiuk06 UNION "; + sqlQuery += "SELECT comment, 'mantiuk08' AS operator FROM mantiuk08 UNION "; + sqlQuery += "SELECT comment, 'pattanaik' AS operator FROM pattanaik UNION "; + sqlQuery += "SELECT comment, 'reinhard02' AS operator FROM reinhard02 UNION "; + sqlQuery += "SELECT comment, 'reinhard05' AS operator FROM reinhard05"; model->setQuery(sqlQuery); model->setHeaderData(0, Qt::Horizontal, tr("Comment")); diff -Nru luminance-hdr-2.5.0/src/Common/SavedParametersDialog.h luminance-hdr-2.5.1/src/Common/SavedParametersDialog.h --- luminance-hdr-2.5.0/src/Common/SavedParametersDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Common/SavedParametersDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -55,6 +55,6 @@ protected: QSqlQueryModel* model; QScopedPointer m_Ui; - + }; #endif diff -Nru luminance-hdr-2.5.0/src/Core/IOWorker.cpp luminance-hdr-2.5.1/src/Core/IOWorker.cpp --- luminance-hdr-2.5.0/src/Core/IOWorker.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Core/IOWorker.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -174,7 +174,7 @@ if (tmopts != NULL) { operations.reset(new TMOptionsOperations(tmopts)); } - + QFileInfo qfi(filename); QString absoluteFileName = qfi.absoluteFilePath(); QByteArray encodedName = QFile::encodeName(absoluteFileName); @@ -268,13 +268,13 @@ hdrpfsframe.reset(); } catch (std::runtime_error& err) - { + { emit read_hdr_failed(tr("IOWorker: caught exception reading %1: %2") .arg(filename) .arg(err.what())); hdrpfsframe.reset(); - } + } catch (...) { emit read_hdr_failed(tr("IOWorker: failed loading file: %1") diff -Nru luminance-hdr-2.5.0/src/Core/TMWorker.cpp luminance-hdr-2.5.1/src/Core/TMWorker.cpp --- luminance-hdr-2.5.0/src/Core/TMWorker.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Core/TMWorker.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -67,13 +67,13 @@ #endif } -pfs::Frame* TMWorker::computeTonemap(/* const */ pfs::Frame* in_frame, TonemappingOptions* tm_options) +pfs::Frame* TMWorker::computeTonemap(/* const */ pfs::Frame* in_frame, TonemappingOptions* tm_options, InterpolationMethod m) { #ifdef QT_DEBUG qDebug() << "TMWorker::getTonemappedFrame()"; #endif - pfs::Frame* working_frame = preprocessFrame(in_frame, tm_options); + pfs::Frame* working_frame = preprocessFrame(in_frame, tm_options, m); if (working_frame == NULL) return NULL; try { tonemapFrame(working_frame, tm_options); @@ -98,9 +98,9 @@ return working_frame; } -void TMWorker::computeTonemapAndExport(/* const */ pfs::Frame* in_frame, TonemappingOptions* tm_options, pfs::Params params, QString exportDir, QString hdrName, QString inputfname, QVector inputExpoTimes) +void TMWorker::computeTonemapAndExport(/* const */ pfs::Frame* in_frame, TonemappingOptions* tm_options, pfs::Params params, QString exportDir, QString hdrName, QString inputfname, QVector inputExpoTimes, InterpolationMethod m) { - pfs::Frame* working_frame = preprocessFrame(in_frame, tm_options); + pfs::Frame* working_frame = preprocessFrame(in_frame, tm_options, m); if (working_frame == NULL) return; try { tonemapFrame(working_frame, tm_options); @@ -171,7 +171,7 @@ delete tmEngine; } -pfs::Frame* TMWorker::preprocessFrame(pfs::Frame* input_frame, TonemappingOptions* tm_options) +pfs::Frame* TMWorker::preprocessFrame(pfs::Frame* input_frame, TonemappingOptions* tm_options, InterpolationMethod m) { pfs::Frame* working_frame = NULL; @@ -189,7 +189,7 @@ else if ( tm_options->xsize != tm_options->origxsize ) { // workingframe = "resize" - working_frame = pfs::resize(input_frame, tm_options->xsize); + working_frame = pfs::resize(input_frame, tm_options->xsize, m); } else { diff -Nru luminance-hdr-2.5.0/src/Core/TMWorker.h luminance-hdr-2.5.1/src/Core/TMWorker.h --- luminance-hdr-2.5.0/src/Core/TMWorker.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Core/TMWorker.h 2017-05-10 19:14:06.000000000 +0000 @@ -29,6 +29,7 @@ #include #include +#include "Common/global.h" #include "Libpfs/params.h" // Forward declaration @@ -52,9 +53,9 @@ //! This function creates a copy of the input frame, tonemap the copy //! and then returns it //! - pfs::Frame* computeTonemap(/* const */pfs::Frame*, TonemappingOptions*); + pfs::Frame* computeTonemap(/* const */pfs::Frame*, TonemappingOptions*, InterpolationMethod m); - void computeTonemapAndExport(/* const */pfs::Frame*, TonemappingOptions*, pfs::Params, QString exportDir, QString hdrName, QString inputfname, QVector inputExpoTimes); + void computeTonemapAndExport(/* const */pfs::Frame*, TonemappingOptions*, pfs::Params, QString exportDir, QString hdrName, QString inputfname, QVector inputExpoTimes, InterpolationMethod m); //! //! This function tonemap the input frame @@ -62,7 +63,7 @@ void tonemapFrame(pfs::Frame*, TonemappingOptions*); private: - pfs::Frame* preprocessFrame(pfs::Frame*, TonemappingOptions*); + pfs::Frame* preprocessFrame(pfs::Frame*, TonemappingOptions*, InterpolationMethod m); void postprocessFrame(pfs::Frame*, TonemappingOptions*); Q_SIGNALS: diff -Nru luminance-hdr-2.5.0/src/Core/TonemappingOptions.cpp luminance-hdr-2.5.1/src/Core/TonemappingOptions.cpp --- luminance-hdr-2.5.0/src/Core/TonemappingOptions.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Core/TonemappingOptions.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -149,7 +149,7 @@ const QString TonemappingOptions::getPostfix() { QString postfix=QString("pregamma_%1_").arg(pregamma); switch (tmoperator) { - case mantiuk06: + case mantiuk06: { postfix+="mantiuk06_"; float contrastfactor=operator_options.mantiuk06options.contrastfactor; @@ -190,7 +190,7 @@ float beta=operator_options.fattaloptions.beta; float saturation2=operator_options.fattaloptions.color; float noiseredux=operator_options.fattaloptions.noiseredux; - bool fftsolver=operator_options.fattaloptions.fftsolver; + bool fftsolver=operator_options.fattaloptions.fftsolver; postfix+=QString("alpha_%1_").arg(alpha); postfix+=QString("beta_%1_").arg(beta); postfix+=QString("saturation_%1_").arg(saturation2); @@ -212,7 +212,7 @@ postfix+="mai_"; } break; - case ashikhmin: + case ashikhmin: { postfix+="ashikhmin_"; if (operator_options.ashikhminoptions.simple) { @@ -279,7 +279,7 @@ } } break; - case reinhard05: + case reinhard05: { float brightness=operator_options.reinhard05options.brightness; float chromaticAdaptation= operator_options.reinhard05options.chromaticAdaptation; @@ -297,7 +297,7 @@ const QString TonemappingOptions::getCaption(bool includePregamma, QString separator) { QString caption=includePregamma ? QString(QObject::tr("PreGamma=%1")).arg(pregamma) + separator : QString(); switch (tmoperator) { - case mantiuk06: + case mantiuk06: { caption+="Mantiuk06:"; caption += separator; @@ -316,7 +316,7 @@ caption+=QString(QObject::tr("Detail") + "=%1").arg(detailfactor); } break; - case mantiuk08: + case mantiuk08: { caption+="Mantiuk08:" + separator; float colorsaturation=operator_options.mantiuk08options.colorsaturation; @@ -477,13 +477,13 @@ if (value != TMOSETTINGSVERSION) { delete toreturn; throw (QApplication::tr("ERROR: File too old, cannot parse Tone Mapping Setting file: ")+fname); -// return NULL; +// return NULL; } } else if (field=="XSIZE") { - toreturn->xsize=value.toInt(); - } else if (field=="QUALITY") { - toreturn->quality=value.toInt(); - } else if (field=="TMO") { + toreturn->xsize=value.toInt(); + } else if (field=="QUALITY") { + toreturn->quality=value.toInt(); + } else if (field=="TMO") { if (value=="Ashikhmin02") { toreturn->tmoperator=ashikhmin; tmo = "Ashikhmin02"; @@ -597,7 +597,7 @@ } else { delete toreturn; throw (QApplication::tr("ERROR: cannot parse Tone Mapping Setting file: ")+fname); -// return NULL; +// return NULL; } } return toreturn; diff -Nru luminance-hdr-2.5.0/src/Core/TonemappingOptions.h luminance-hdr-2.5.1/src/Core/TonemappingOptions.h --- luminance-hdr-2.5.0/src/Core/TonemappingOptions.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Core/TonemappingOptions.h 2017-05-10 19:14:06.000000000 +0000 @@ -57,7 +57,7 @@ public: int origxsize; // this parameter should be coming from the UI - int xsize_percent; // this parameter should be coming from the UI + int xsize_percent; // this parameter should be coming from the UI int xsize; // this parameter should be coming from the frame int quality; float pregamma; @@ -142,7 +142,7 @@ const QString getCaption(bool pregamma = true, QString separator = QString(" ~ ")); void setDefaultTonemapParameters(); void setDefaultParameters(); - + char getRatingForOperator(); }; diff -Nru luminance-hdr-2.5.0/src/Exif/ExifOperations.h luminance-hdr-2.5.1/src/Exif/ExifOperations.h --- luminance-hdr-2.5.0/src/Exif/ExifOperations.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Exif/ExifOperations.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ diff -Nru luminance-hdr-2.5.0/src/Fileformat/pfsoutldrimage.h luminance-hdr-2.5.1/src/Fileformat/pfsoutldrimage.h --- luminance-hdr-2.5.0/src/Fileformat/pfsoutldrimage.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Fileformat/pfsoutldrimage.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /* * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,13 +16,13 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Giuseppe Rota - * Improvements, bugfixing + * Improvements, bugfixing * @author Franco Comida - * + * * @author Davide Anastasia * */ diff -Nru luminance-hdr-2.5.0/src/HdrCreation/createhdr.h luminance-hdr-2.5.1/src/HdrCreation/createhdr.h --- luminance-hdr-2.5.0/src/HdrCreation/createhdr.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/createhdr.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2014 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ diff -Nru luminance-hdr-2.5.0/src/HdrCreation/debevec.cpp luminance-hdr-2.5.1/src/HdrCreation/debevec.cpp --- luminance-hdr-2.5.0/src/HdrCreation/debevec.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/debevec.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -31,11 +31,15 @@ #include #include +#include #include #include +#include #include #include #include +#include + #ifdef _OPENMP #include @@ -57,62 +61,29 @@ namespace libhdr { namespace fusion { -void DebevecOperator::computeFusion(ResponseCurve& response_, WeightFunction& weight_, - const vector &frames_enhanced, +void DebevecOperator::computeFusion(ResponseCurve& response, WeightFunction& weight, + const vector &images, pfs::Frame &frame) { #ifdef TIMER_PROFILING msec_timer f_timer; f_timer.start(); #endif - assert(frames_enhanced.size()); + assert(images.size() != 0); - std::vector images; std::vector times; - const int W = frames_enhanced[0].frame()->getWidth(); - const int H = frames_enhanced[0].frame()->getHeight(); - - const int bps = frames_enhanced[0].getBPS(); - const size_t num_bins = (1 << bps); + const int W = images[0].frame()->getWidth(); + const int H = images[0].frame()->getHeight(); - for (size_t idx = 0; idx < frames_enhanced.size(); ++idx) + for (size_t idx = 0; idx < images.size(); ++idx) { - images.push_back(frames_enhanced[idx].frame()); - times.push_back(frames_enhanced[idx].averageLuminance()); + times.push_back(images[idx].averageLuminance()); } - array, 3> response = {vector(num_bins), vector(num_bins),vector(num_bins)}; - - response_.setBPS(bps); - weight_.setBPS(bps); - - libhdr::fusion::ResponseCurve::ResponseContainer R = response_.get(RESPONSE_CHANNEL_RED); - libhdr::fusion::ResponseCurve::ResponseContainer G = response_.get(RESPONSE_CHANNEL_GREEN); - libhdr::fusion::ResponseCurve::ResponseContainer B = response_.get(RESPONSE_CHANNEL_BLUE); - - copy(R.begin(), R.end(), response[0].begin()); - copy(G.begin(), G.end(), response[1].begin()); - copy(B.begin(), B.end(), response[2].begin()); - - WeightFunction::WeightContainer tmp_weights = weight_.getWeights(); - vector weights(num_bins); - copy(tmp_weights.begin(), tmp_weights.end(), weights.begin()); - - //CV_Assert(images.size() == times.total()); - //checkImageDimensions(images); - //CV_Assert(images[0].depth() == CV_8U); - const int channels = 3; const size_t size = W*H; - array, 3> log_response = {vector(num_bins), vector(num_bins), vector(num_bins)}; - #pragma omp parallel for - for (int c = 0; c < channels; c++) - transform(response[c].begin(), response[c].end(), log_response[c].begin(), logf); - //CV_Assert(log_response.rows == LDR_SIZE && log_response.cols == 1 && - // log_response.channels() == channels); - vector exp_values(times); transform(exp_values.begin(), exp_values.end(), exp_values.begin(), logf); @@ -131,7 +102,7 @@ #pragma omp parallel for for(int i = 0; i < length; i++) { Channel *Ch[channels]; - images[i]->getXYZChannels(Ch[0], Ch[1], Ch[2]); + images[i].frame()->getXYZChannels(Ch[0], Ch[1], Ch[2]); Array2Df *imagesCh[channels] = {Ch[0], Ch[1], Ch[2]}; float cmax[3]; @@ -153,14 +124,14 @@ Array2Df w(W, H); for(int c = 0; c < channels; c++) { for(size_t k = 0; k < size; k++) { - splitted[c](k) = weights.at((int)((*imagesCh[c])(k)*((float)(num_bins-1)))); + splitted[c](k) = weight((*imagesCh[c])(k)); } vadd(&w, &splitted[c], &w, size); } vmul_scalar(&w, 1.f/channels, &w, size); for(int c = 0; c < channels; c++) { for(size_t k = 0; k < size; k++) { - (response_img[c])(k) = log_response[c].at((int)((*imagesCh[c])(k)*((float)(num_bins-1)))); + (response_img[c])(k) = logf( response((*imagesCh[c])(k)) ); } } for(int c = 0; c < channels; c++) { @@ -185,10 +156,11 @@ cmax[c] = *max_element(resultCh[c]->begin(), resultCh[c]->end()); } float Max = std::max(cmax[0], std::max(cmax[1], cmax[2])); - //#pragma omp parallel for + #pragma omp parallel for for(int c = 0; c < channels; c++) { - replace_if(resultCh[c]->begin(), resultCh[c]->end(), [](float f){ return !isfinite(f); }, Max); + replace_if(resultCh[c]->begin(), resultCh[c]->end(), std::not1(std::ref(boost::math::isnormal)), Max); } + #ifdef TIMER_PROFILING f_timer.stop_and_update(); std::cout << "MergeDebevec = " << f_timer.get_time() << " msec" << std::endl; diff -Nru luminance-hdr-2.5.0/src/HdrCreation/debevec.h luminance-hdr-2.5.1/src/HdrCreation/debevec.h --- luminance-hdr-2.5.0/src/HdrCreation/debevec.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/debevec.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /* * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2013 Davide Anastasia * Copyright (C) 2017 Franco Comida - * + * * This program 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 2 of the License, or @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ diff -Nru luminance-hdr-2.5.0/src/HdrCreation/fusionoperator.h luminance-hdr-2.5.1/src/HdrCreation/fusionoperator.h --- luminance-hdr-2.5.0/src/HdrCreation/fusionoperator.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/fusionoperator.h 2017-05-10 19:14:06.000000000 +0000 @@ -42,20 +42,17 @@ class FrameEnhanced { public: - FrameEnhanced(const pfs::FramePtr& frame, float averageLuminance, int bps) + FrameEnhanced(const pfs::FramePtr& frame, float averageLuminance) : m_frame(frame) , m_averageLuminance(averageLuminance) - , m_bps(bps) {} const pfs::FramePtr& frame() const { return m_frame; } float averageLuminance() const { return m_averageLuminance; } - int getBPS() const { return m_bps; } private: pfs::FramePtr m_frame; float m_averageLuminance; - int m_bps; }; enum FusionOperator diff -Nru luminance-hdr-2.5.0/src/HdrCreation/mtb_alignment.cpp luminance-hdr-2.5.1/src/HdrCreation/mtb_alignment.cpp --- luminance-hdr-2.5.0/src/HdrCreation/mtb_alignment.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/mtb_alignment.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,23 +1,23 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2007 by Nicholas Phillips + * ---------------------------------------------------------------------- + * Copyright (C) 2007 by Nicholas Phillips * Copyright (C) 2013 Davide Anastasia * - * This program 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 2 of the License, or - * (at your option) any later version. + * This program 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 2 of the License, or + * (at your option) any later version. * - * This program 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. + * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- * */ @@ -31,6 +31,7 @@ #include #include +#include #include #include #include @@ -119,8 +120,8 @@ Array2D8u img1small(img1.getCols()/2, img1.getRows()/2); Array2D8u img2small(img2.getCols()/2, img2.getRows()/2); - pfs::resize(img1, img1small); - pfs::resize(img2, img2small); + pfs::resize(img1, img1small, BilinearInterp); + pfs::resize(img2, img2small, BilinearInterp); getExpShift(img1small, median1, img2small, median2, noise, shift_bits-1, curr_x, curr_y); @@ -160,7 +161,7 @@ } } - PRINT_DEBUG("getExpShift::Level " << shift_bits << " shift (" << shift_x << "," << shift_y << ")"); + PRINT_DEBUG("getExpShift::Level " << shift_bits << " shift (" << shift_x << "," << shift_y << ")"); } int getLum(const Frame& in, Array2D8u& out, double quantile) @@ -204,15 +205,15 @@ } void mtbalign(const pfs::Frame& image1, const pfs::Frame& image2, - const double quantile, const int noise, const int shift_bits, - int &shift_x, int &shift_y) + const double quantile, const int noise, const int shift_bits, + int &shift_x, int &shift_y) { Array2D8u img1lum; Array2D8u img2lum; int median1 = getLum(image1, img1lum, quantile); int median2 = getLum(image2, img2lum, quantile); - + PRINT_DEBUG("align::medians, image 1: " << median1 << ", image 2: " << median2); getExpShift(img1lum, median1, img2lum, median2, diff -Nru luminance-hdr-2.5.0/src/HdrCreation/mtb_alignment.h luminance-hdr-2.5.1/src/HdrCreation/mtb_alignment.h --- luminance-hdr-2.5.0/src/HdrCreation/mtb_alignment.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/mtb_alignment.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,6 +1,6 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Nicholas Phillips * Copyright (C) 2013 Davide Anastasia * @@ -17,8 +17,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * */ //! \brief Implementation of the MTB algorithm for image alignment diff -Nru luminance-hdr-2.5.0/src/HdrCreation/responses.cpp luminance-hdr-2.5.1/src/HdrCreation/responses.cpp --- luminance-hdr-2.5.0/src/HdrCreation/responses.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/responses.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /* * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013-2014 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ //! \brief Standard response functions @@ -70,11 +70,7 @@ ResponseCurve::ResponseCurve(ResponseCurveType type) : m_type(type) - , m_num_bins(1 << 8) { - m_responses[RESPONSE_CHANNEL_RED].resize(m_num_bins); - m_responses[RESPONSE_CHANNEL_GREEN].resize(m_num_bins); - m_responses[RESPONSE_CHANNEL_BLUE].resize(m_num_bins); setType(type); } @@ -85,7 +81,7 @@ m_responses[RESPONSE_CHANNEL_RED].data(), m_responses[RESPONSE_CHANNEL_GREEN].data(), m_responses[RESPONSE_CHANNEL_BLUE].data(), - m_num_bins); + NUM_BINS); } bool ResponseCurve::readFromFile(const string &fileName) @@ -95,7 +91,7 @@ m_responses[RESPONSE_CHANNEL_RED].data(), m_responses[RESPONSE_CHANNEL_GREEN].data(), m_responses[RESPONSE_CHANNEL_BLUE].data(), - m_num_bins)) + NUM_BINS)) { throw std::runtime_error("Invalid response curve file"); } @@ -122,6 +118,7 @@ { response[i] = std::pow(4.f * ((float)i/divider), 1.7f) + 1e-4; } + response[0] = response[1]; } @@ -142,6 +139,7 @@ response[i] = details_log10::s_inverseMaxValue * std::pow(10.0f, ((((float)i/divider)/details_log10::s_norm) - 8.f) ); } + response[0] = response[1]; } void fillResponseSRGB(ResponseCurve::ResponseContainer& response) @@ -153,6 +151,7 @@ { response[i] = converter((float)i/divider); } + response[0] = response[1]; } void ResponseCurve::setType(ResponseCurveType type) @@ -179,10 +178,6 @@ m_type = type_; - m_responses[RESPONSE_CHANNEL_RED].resize(m_num_bins); - m_responses[RESPONSE_CHANNEL_GREEN].resize(m_num_bins); - m_responses[RESPONSE_CHANNEL_BLUE].resize(m_num_bins); - func_(m_responses[RESPONSE_CHANNEL_RED]); func_(m_responses[RESPONSE_CHANNEL_GREEN]); func_(m_responses[RESPONSE_CHANNEL_BLUE]); diff -Nru luminance-hdr-2.5.0/src/HdrCreation/responses.h luminance-hdr-2.5.1/src/HdrCreation/responses.h --- luminance-hdr-2.5.0/src/HdrCreation/responses.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/responses.h 2017-05-10 19:14:06.000000000 +0000 @@ -27,7 +27,6 @@ #include #include -#include #include #include @@ -53,25 +52,23 @@ class ResponseCurve { public: - typedef std::vector ResponseContainer; + static const size_t NUM_BINS = (1 << 12); + typedef std::array ResponseContainer; - size_t getIdx(float sample); + static size_t getIdx(float sample); static ResponseCurveType fromString(const std::string& type); explicit ResponseCurve(ResponseCurveType type = RESPONSE_LINEAR); - void setBPS(int bps) { m_num_bins = (1 << bps); setType(m_type); } - size_t getNum_Bins() { return m_num_bins; } - void setType(ResponseCurveType type); //! \return type of response function implemented ResponseCurveType getType() const; //! \brief return the response of the value \c input. \c input is in the //! range [0, 1] - float getResponse(float input, ResponseChannel channel = RESPONSE_CHANNEL_RED); + float getResponse(float input, ResponseChannel channel = RESPONSE_CHANNEL_RED) const; - float operator()(float input, ResponseChannel channel = RESPONSE_CHANNEL_RED) + float operator()(float input, ResponseChannel channel = RESPONSE_CHANNEL_RED) const { return getResponse(input, channel); } void writeToFile(const std::string& fileName) const; @@ -83,7 +80,6 @@ protected: ResponseCurveType m_type; std::array m_responses; - size_t m_num_bins; }; inline @@ -92,7 +88,8 @@ inline size_t ResponseCurve::getIdx(float sample) -{ return size_t(sample*(m_num_bins - 1) + 0.45f); } +//{ return size_t(sample*(NUM_BINS - 1) + 0.45f); } TODO: check this one +{ return size_t(sample*(NUM_BINS - 1)); } inline ResponseCurve::ResponseContainer& ResponseCurve::get(ResponseChannel channel) @@ -103,15 +100,14 @@ { return m_responses[channel]; } inline -float ResponseCurve::getResponse(float input, ResponseChannel channel) +float ResponseCurve::getResponse(float input, ResponseChannel channel) const { assert(channel >= 0); assert(channel <= 2); assert(input >= 0.f); assert(input <= 1.f); - size_t idx = getIdx(input); - return m_responses[channel][idx]; + return m_responses[channel][getIdx(input)]; } } // fusion diff -Nru luminance-hdr-2.5.0/src/HdrCreation/robertson02.cpp luminance-hdr-2.5.1/src/HdrCreation/robertson02.cpp --- luminance-hdr-2.5.0/src/HdrCreation/robertson02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/robertson02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -143,11 +143,6 @@ Frame tempFrame (frames[0].frame()->getWidth(), frames[0].frame()->getHeight()); - const int bps = frames[0].getBPS(); - - response.setBPS(bps); - weight.setBPS(bps); - Channel* outputRed; Channel* outputGreen; Channel* outputBlue; @@ -300,9 +295,8 @@ applyResponse(response, weight, channel, inputData, outputData, width, height, minAllowedValue, maxAllowedValue, arrayofexptime); - std::vector cardEm(response.getNum_Bins()); + std::vector cardEm(ResponseCurve::NUM_BINS); ResponseContainer sum; - sum.resize(response.getNum_Bins()); assert(sum.size() == cardEm.size()); assert(sum.size() == Ip.size()); @@ -324,7 +318,7 @@ { size_t sample = response.getIdx(inputData[i][j]); //if ((sample < ResponseCurve::NUM_BINS) && (sample >= 0)) // sample is unsigned so always >= 0 - if (sample < response.getNum_Bins()) + if (sample < ResponseCurve::NUM_BINS) { sum[sample] += ti * outputData[j]; cardEm[sample]++; @@ -404,11 +398,6 @@ frames[0].frame()->getHeight() ); - const int bps = frames[0].getBPS(); - - response.setBPS(bps); - weight.setBPS(bps); - Channel* outputRed; Channel* outputGreen; Channel* outputBlue; diff -Nru luminance-hdr-2.5.0/src/HdrCreation/robertson02.h luminance-hdr-2.5.1/src/HdrCreation/robertson02.h --- luminance-hdr-2.5.0/src/HdrCreation/robertson02.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/robertson02.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /* * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copytight (C) 2013-2014 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ #ifndef ROBERTSON02_H diff -Nru luminance-hdr-2.5.0/src/HdrCreation/weights.cpp luminance-hdr-2.5.1/src/HdrCreation/weights.cpp --- luminance-hdr-2.5.0/src/HdrCreation/weights.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/weights.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -37,19 +37,22 @@ WeightFunction::WeightFunction(WeightFunctionType type) : m_type(type) - , m_num_bins(1 << 8) { setType(type); } +namespace { +static const float s_triangularThreshold = 2.0f / WeightFunction::NUM_BINS; +} + static float getWeightTriangular(float input) { - input = input*1.8f + 0.1f; - if ( input >= 1.f ) - { - input = 2.f - input; + // ignore very low weights + if ( (input < s_triangularThreshold) || (input > (1.f - s_triangularThreshold)) ) { + return 0.f; } - return input; + float half = 0.5f; + return input < half ? 2*input : 2.0f*(1.0f-input); } static void fillWeightTriangular(WeightFunction::WeightContainer& weight) @@ -65,12 +68,18 @@ static float maxTrustedValueTriangular() { return 1.f + std::numeric_limits::epsilon(); } namespace { +static const float s_gaussianThreshold = 2.0f/WeightFunction::NUM_BINS; static const float s_mu = 0.5f; } static float getWeightGaussian(float input) { - return (exp( -16.f*(input - s_mu)*(input - s_mu) )); + // ignore very low weights + if ( (input < s_gaussianThreshold) || (input > (1.f - s_gaussianThreshold)) ) { + return 0.f; + } + + return (exp( -32.0f*(input - s_mu)*(input - s_mu) )); } static void fillWeightGaussian(WeightFunction::WeightContainer& weight) @@ -86,15 +95,15 @@ static float maxTrustedValueGaussian() { return 1.f + std::numeric_limits::epsilon(); } namespace { -static const float s_plateauThreshold = 0.005f; +static const float s_plateauThreshold = 0.00025f; } static float getWeightPlateau(float input) { -// if ((input < s_plateauThreshold) || (input > (1.f - s_plateauThreshold))) -// { -// return 0.f; -// } + if ((input < s_plateauThreshold) || (input > (1.f - s_plateauThreshold))) + { + return 0.f; + } return 1.f - pow( (2.0f*input - 1.0f), 12.0f); } @@ -155,7 +164,6 @@ } m_type = type_; - m_weights.resize(m_num_bins); func_.fillData(m_weights); m_minTrustedValue = func_.minTrustValue(); m_maxTrustedValue = func_.maxTrustValue(); diff -Nru luminance-hdr-2.5.0/src/HdrCreation/weights.h luminance-hdr-2.5.1/src/HdrCreation/weights.h --- luminance-hdr-2.5.0/src/HdrCreation/weights.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrCreation/weights.h 2017-05-10 19:14:06.000000000 +0000 @@ -23,7 +23,7 @@ #define LIBHDR_FUSION_WEIGHTS_H #include -#include +#include #include #include @@ -41,21 +41,18 @@ class WeightFunction { public: - //static const size_t NUM_BINS = (1 << 8); - typedef std::vector WeightContainer; + static const size_t NUM_BINS = (1 << 12); + typedef std::array WeightContainer; static WeightFunctionType fromString(const std::string& type); - size_t getIdx(float sample); - - void setBPS(int bps) { m_num_bins = (1 << bps); setType(m_type); } - size_t getNum_Bins() { return m_num_bins; } + static size_t getIdx(float sample); WeightFunction(WeightFunctionType type); - float getWeight(float input); + float getWeight(float input) const; WeightContainer getWeights() const; - float operator()(float input) { return getWeight(input); } + float operator()(float input) const { return getWeight(input); } void setType(WeightFunctionType type); WeightFunctionType getType() const { return m_type; } @@ -69,29 +66,25 @@ float m_minTrustedValue; float m_maxTrustedValue; - size_t m_num_bins; }; inline size_t WeightFunction::getIdx(float sample) -{ return size_t(sample*(m_num_bins - 1) + 0.45f); } +//{ return size_t(sample*(NUM_BINS - 1) + 0.45f); } TODO: check this one +{ return size_t(sample*(NUM_BINS - 1)); } inline -float WeightFunction::getWeight(float input) +float WeightFunction::getWeight(float input) const { assert(input >= 0.f); assert(input <= 1.f); - size_t idx = getIdx(input); - return m_weights[idx]; + return m_weights[getIdx(input)]; } inline WeightFunction::WeightContainer WeightFunction::getWeights() const { - assert(input >= 0.f); - assert(input <= 1.f); - return m_weights; } diff -Nru luminance-hdr-2.5.0/src/HdrHTML/hdrhtml.cpp luminance-hdr-2.5.1/src/HdrHTML/hdrhtml.cpp --- luminance-hdr-2.5.0/src/HdrHTML/hdrhtml.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrHTML/hdrhtml.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -39,9 +39,11 @@ #include "Libpfs/exception.h" -#ifdef WIN32 +#if defined (WIN32) || defined (__APPLE__) #include #endif +#include "hdrhtml-path.hxx" + #include #include @@ -651,7 +653,7 @@ // Load LUT for the basis tone-curves ostringstream lut_filename; -#ifdef WIN32 +#if defined (WIN32) || defined (__APPLE__) QString h_t_b = HDRHTMLDIR; h_t_b.append("\\hdrhtml_t_b"); lut_filename << h_t_b.toStdString().c_str() << basis_no+1 << ".csv"; @@ -835,7 +837,7 @@ image_list.push_back( new_image ); - locale::global(locale(user_locale)); + locale::global(locale(user_locale.c_str())); } void print_image_objects( ostream &out, void *user_data, const char *parameter ); @@ -858,7 +860,7 @@ // Load the table of the opacity coeffcients ostringstream lut_filename; -#ifdef WIN32 +#if defined (WIN32) || defined (__APPLE__) QString h_c_b = HDRHTMLDIR; h_c_b.append("\\hdrhtml_c_b"); lut_filename << h_c_b.toStdString().c_str() << image_list.front().basis+1 << ".csv"; diff -Nru luminance-hdr-2.5.0/src/HdrHTML/hdrhtml.h luminance-hdr-2.5.1/src/HdrHTML/hdrhtml.h --- luminance-hdr-2.5.0/src/HdrHTML/hdrhtml.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrHTML/hdrhtml.h 2017-05-10 19:14:06.000000000 +0000 @@ -30,7 +30,6 @@ #include #include -#include "hdrhtml-path.hxx" namespace hdrhtml { diff -Nru luminance-hdr-2.5.0/src/HdrHTML/pfsouthdrhtml.cpp luminance-hdr-2.5.1/src/HdrHTML/pfsouthdrhtml.cpp --- luminance-hdr-2.5.0/src/HdrHTML/pfsouthdrhtml.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrHTML/pfsouthdrhtml.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** * @brief Create a web page with an HDR viewer - * + * * This file is a part of LuminanceHDR package, based on pfstools. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2009 Rafal Mantiuk - * + * * This program 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 2 of the License, or @@ -18,8 +18,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: pfsouthdrhtml.cpp,v 1.5 2010/06/13 14:45:55 rafm Exp $ @@ -27,14 +27,14 @@ #include "hdrhtml.h" -#ifdef WIN32 +#if defined (WIN32) || defined (__APPLE__) #include #endif #include #include #include -#include +#include "hdrhtml-path.hxx" #include "Libpfs/frame.h" #include "Libpfs/exception.h" #include "Libpfs/colorspace/colorspace.h" @@ -42,11 +42,11 @@ using namespace hdrhtml; using namespace std; -void generate_hdrhtml(pfs::Frame *frame, - string page_name, string out_dir, string image_dir, string object_output, string html_output, +void generate_hdrhtml(pfs::Frame *frame, + string page_name, string out_dir, string image_dir, string object_output, string html_output, int quality, bool verbose) { -#ifdef WIN32 +#if defined (WIN32) || defined (__APPLE__) const int MAX_LINE_LENGTH = 2048; QString p_t = HDRHTMLDIR; p_t.append("/hdrhtml_default_templ/hdrhtml_page_templ.html"); @@ -65,7 +65,7 @@ const char *page_template = HDRHTMLDIR "/hdrhtml_default_templ/hdrhtml_page_templ.html"; const char *image_template = HDRHTMLDIR "/hdrhtml_default_templ/hdrhtml_image_templ.html"; #endif - + if( quality < 1 || quality > 5 ) throw pfs::Exception( QObject::tr("The quality must be between 1 (worst) and 5 (best).").toStdString() ); @@ -77,14 +77,14 @@ frame->getXYZChannels( R, G, B ); int size = frame->getWidth()*frame->getHeight(); - + pfs::Array2Df X( frame->getWidth(), frame->getHeight() ); pfs::Array2Df Y( frame->getWidth(), frame->getHeight() ); pfs::Array2Df Z( frame->getWidth(), frame->getHeight() ); - + pfs::transformColorSpace( pfs::CS_RGB, R, G, B, pfs::CS_XYZ, &X, &Y, &Z ); - + float *R1 = new float[size]; float *G1 = new float[size]; float *B1 = new float[size]; @@ -97,7 +97,7 @@ // Get base_name if needed string base_name; string tmp_str( page_name ); - + // Remove extension size_t dot_pos = tmp_str.find_last_of( '.' ); if( (dot_pos != string::npos) & (dot_pos > 0) ) @@ -109,8 +109,8 @@ if( invalid_pos == string::npos ) break; tmp_str.replace( invalid_pos, 1, 1, '_' ); - } - + } + base_name = tmp_str; HDRHTMLSet image_set( NULL, image_dir.empty() ? NULL : image_dir.c_str() ); @@ -118,10 +118,10 @@ cout << QObject::tr("Adding image ").toStdString() << base_name << QObject::tr(" to the web page").toStdString() << endl; try { - image_set.add_image( frame->getWidth(), frame->getHeight(), - R1, G1, B1, Y1, - base_name.c_str(), - out_dir.empty() ? NULL : out_dir.c_str(), + image_set.add_image( frame->getWidth(), frame->getHeight(), + R1, G1, B1, Y1, + base_name.c_str(), + out_dir.empty() ? NULL : out_dir.c_str(), quality, verbose ); } catch( pfs::Exception &e) { @@ -129,9 +129,9 @@ } try { - image_set.generate_webpage( page_template, image_template, - out_dir.empty() ? NULL : out_dir.c_str(), - object_output.empty() ? NULL : object_output.c_str(), + image_set.generate_webpage( page_template, image_template, + out_dir.empty() ? NULL : out_dir.c_str(), + object_output.empty() ? NULL : object_output.c_str(), html_output.empty() ? NULL: html_output.c_str(), verbose ); } catch( pfs::Exception &e) { diff -Nru luminance-hdr-2.5.0/src/HdrHTML/pfsouthdrhtml.h luminance-hdr-2.5.1/src/HdrHTML/pfsouthdrhtml.h --- luminance-hdr-2.5.0/src/HdrHTML/pfsouthdrhtml.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrHTML/pfsouthdrhtml.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** * @brief Create a web page with an HDR viewer - * + * * This file is a part of LuminanceHDR package, based on pfstools. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2009 Rafal Mantiuk - * + * * This program 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 2 of the License, or @@ -18,8 +18,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: pfsouthdrhtml.h,v 1.5 2010/06/13 14:45:55 rafm Exp $ @@ -30,8 +30,8 @@ #include -void generate_hdrhtml(pfs::Frame *frame, - std::string page_name, std::string out_dir, std::string image_dir, std::string object_output, std::string html_output, +void generate_hdrhtml(pfs::Frame *frame, + std::string page_name, std::string out_dir, std::string image_dir, std::string object_output, std::string html_output, int quality, bool verbose); #endif diff -Nru luminance-hdr-2.5.0/src/HdrWizard/AutoAntighosting.cpp luminance-hdr-2.5.1/src/HdrWizard/AutoAntighosting.cpp --- luminance-hdr-2.5.0/src/HdrWizard/AutoAntighosting.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/AutoAntighosting.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Franco Comida - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Manual and auto anti-ghosting functions * @author Franco Comida @@ -38,12 +38,15 @@ #include #include #include +#include "Libpfs/utils/msec_timer.h" #include #include "AutoAntighosting.h" // --- LEGACY CODE --- +using namespace pfs::utils; + float max(const Array2Df& u) { return *std::max_element(u.begin(), u.end()); @@ -79,16 +82,16 @@ for ( int j = 0; j < height; j++ ) { #pragma omp critical (make_plan) p = fftwf_plan_r2r_1d(width, F.data()+width*j, Ftr.data()+width*j, FFTW_REDFT00, FFTW_ESTIMATE); - fftwf_execute(p); + fftwf_execute(p); } - - #pragma omp parallel + + #pragma omp parallel { vector c(height); #pragma omp for for ( int i = 0; i < width; i++ ) { for (int j = 0; j < height; j++) { - c[j] = 1.0f; + c[j] = 1.0f; } float b = 2.0f*(cos(boost::math::double_constants::pi*i/width) - 2.0f); c[0] /= b; @@ -96,7 +99,7 @@ for (int j = 1; j < height - 1; j++ ) { float m = (b - c[j-1]); c[j] /= m; - Ftr(i, j) = (Ftr(i, j) - Ftr(i, j-1))/m; + Ftr(i, j) = (Ftr(i, j) - Ftr(i, j-1))/m; } Ftr(i, height - 1) = (Ftr(i, height - 1) - Ftr(i, height - 2))/(b - c[height - 2]); U(i, height - 1) = Ftr(i, height - 1); @@ -111,8 +114,8 @@ for ( int j = 0; j < height; j++ ) { #pragma omp critical (make_plan) p = fftwf_plan_r2r_1d(width, U.data()+width*j, U.data()+width*j, FFTW_REDFT00, FFTW_ESTIMATE); - fftwf_execute(p); - + fftwf_execute(p); + for ( int i = 0; i < width; i++ ) { U(i, j) *= invDivisor; } @@ -125,20 +128,6 @@ #endif } -void clampToZero(Array2Df &R, Array2Df &G, Array2Df &B, float m) -{ - const int width = R.getCols(); - const int height = R.getRows(); - - #pragma omp parallel for - for ( int i = 0; i < width*height; i++ ) - { - R(i) -= m; - G(i) -= m; - B(i) -= m; - } -} - int findIndex(const float* data, int size) { assert(size > 0); @@ -206,7 +195,7 @@ void sdv(const HdrCreationItem& item1, const HdrCreationItem& item2, - const float deltaEV, + const float deltaEV, const int dx, const int dy, float &sR, float &sG, float &sB) { @@ -219,7 +208,7 @@ Array2Df& R2 = *X2; Array2Df& G2 = *Y2; Array2Df& B2 = *Z2; - + const int W = item1.frame()->getWidth(); const int H = item1.frame()->getHeight(); @@ -232,8 +221,8 @@ float logDeltaEV = log(std::abs(deltaEV)); int count = 0; - float mR = 0.0f; - float mG = 0.0f; + float mR = 0.0f; + float mG = 0.0f; float mB = 0.0f; for (int y = 0; y < H; y++) { if (y+dy < 0 || y+dy > H-1) @@ -329,11 +318,11 @@ bool comparePatches(const HdrCreationItem& item1, const HdrCreationItem& item2, - const int i, const int j, - const int gridX, const int gridY, - const float threshold, + const int i, const int j, + const int gridX, const int gridY, + const float threshold, const float sR, const float sG, const float sB, - const float deltaEV, + const float deltaEV, const int dx, const int dy) { const int gridSize = gridX * gridY; @@ -350,7 +339,7 @@ Array2Df& R2 = *X2; Array2Df& G2 = *Y2; Array2Df& B2 = *Z2; - + float logDeltaEV = log(std::abs(deltaEV)); const int width = gridX*agGridSize; @@ -362,43 +351,6 @@ for (int x = i * gridX; x < (i+1) * gridX; x++) { if (x+dx < 0 || x+dx > width-1) continue; - if (R1(x, y) >= 1.0f || R2(x+dx, y+dy) >= 1.0f) { - logRed[count] = 0.0f; - logGreen[count] = 0.0f; - logBlue[count++] = 0.0f; - continue; - } - if (G1(x, y) >= 1.0f || G2(x+dx, y+dy) >= 1.0f) { - logRed[count] = 0.0f; - logGreen[count] = 0.0f; - logBlue[count++] = 0.0f; - continue; - } - if (B1(x, y) >= 1.0f || B2(x+dx, y+dy) >= 1.0f) { - logRed[count] = 0.0f; - logGreen[count] = 0.0f; - logBlue[count++] = 0.0f; - continue; - } - if (R1(x, y) <= 0.0f || R2(x+dx, y+dy) <= 0.0f) { - logRed[count] = 0.0f; - logGreen[count] = 0.0f; - logBlue[count++] = 0.0f; - continue; - } - if (G1(x, y) <= 0.0f || G2(x+dx, y+dy) <= 0.0f) { - logRed[count] = 0.0f; - logGreen[count] = 0.0f; - logBlue[count++] = 0.0f; - continue; - } - if (B1(x, y) <= 0.0f || B2(x+dx, y+dy) <= 0.0f) { - logRed[count] = 0.0f; - logGreen[count] = 0.0f; - logBlue[count++] = 0.0f; - continue; - } - if (deltaEV > 0) { logRed[count] = log(R1(x, y)) - log(R2(x+dx, y+dy)) - logDeltaEV; logGreen[count] = log(G1(x, y)) - log(G2(x+dx, y+dy)) - logDeltaEV; @@ -411,7 +363,7 @@ } } } - + count = 0; for (int h = 0; h < gridSize; h++) { if (std::abs(logRed[h]) > 2.0f*sR || std::abs(logGreen[h]) > 2.0f*sG || std::abs(logBlue[h]) > 2.0f*sB) @@ -450,7 +402,7 @@ #endif const int width = u.getCols(); const int height = u.getRows(); - + float ir, logIr; #pragma omp parallel for private (ir, logIr) schedule(static) for (int i = 0; i < width*height; i++) { @@ -462,7 +414,7 @@ logIrradiance(i) = logIr; } - + #ifdef TIMER_PROFILING stop_watch.stop_and_update(); std::cout << "computeLogIrradiance = " << stop_watch.get_time() << " msec" << std::endl; @@ -557,23 +509,35 @@ int x, y; #pragma omp parallel for private(x, y) schedule(static) - for (int j = 0; j < height; j++) { + for (int j = 0; j < height; j++) + { y = floor(static_cast(j)/gridY); - for (int i = 0; i < width; i++) { + for (int i = 0; i < width; i++) + { x = floor(static_cast(i)/gridX); - if (patches[x][y] == true) { + if (patches[x][y] == true) + { gradientXBlended(i, j) = gradientXGood(i, j); gradientYBlended(i, j) = gradientYGood(i, j); - if (i % gridX == 0) { - gradientXBlended(i+1, j) = gradientXGood(i+1, j); - gradientYBlended(i+1, j) = gradientYGood(i+1, j); + if (i % gridX == 0) + { + if ((j-1) >= 0) + { + gradientXBlended(i, j) = 0.5f*(gradientXGood(i, j+1) + gradientX(i, j-1)); + gradientYBlended(i, j) = 0.5f*(gradientYGood(i, j+1) + gradientY(i, j-1)); + } } - if (j % gridY == 0) { - gradientXBlended(i, j+1) = gradientXGood(i, j+1); - gradientYBlended(i, j+1) = gradientYGood(i, j+1); + if (j % gridY == 0) + { + if ((i-1) >= 0) + { + gradientXBlended(i, j) = 0.5f*(gradientXGood(i+1, j) + gradientX(i-1, j)); + gradientYBlended(i, j) = 0.5f*(gradientYGood(i+1, j) + gradientY(i-1, j)); + } } } - else { + else + { gradientXBlended(i, j) = gradientX(i, j); gradientYBlended(i, j) = gradientY(i, j); } @@ -620,9 +584,9 @@ { const int width = U.getCols(); const int height = U.getRows(); - + float sf = F(x, y) / U(x, y); #pragma omp parallel for schedule(static) for (int i = 0; i < width * height; i++) U(i) *= sf; -} +} diff -Nru luminance-hdr-2.5.0/src/HdrWizard/AutoAntighosting.h luminance-hdr-2.5.1/src/HdrWizard/AutoAntighosting.h --- luminance-hdr-2.5.0/src/HdrWizard/AutoAntighosting.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/AutoAntighosting.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Franco Comida - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Manual and auto anti-ghosting functions * @author Franco Comida @@ -45,9 +45,9 @@ bool comparePatches(const HdrCreationItem& item1, const HdrCreationItem& item2, - const int i, const int j, - const int gridX, const int gridY, - const float threshold, + const int i, const int j, + const int gridX, const int gridY, + const float threshold, const float sR, const float sG, const float sB, const float deltaEV, const int dx, const int dy); @@ -70,8 +70,8 @@ const QImage& agMask); void colorBalance(pfs::Array2Df& U, const pfs::Array2Df& F, int x, int y); -qreal averageLightness(const Array2Df& R, const Array2Df& G, const Array2Df& B, - const int i, const int j, const int gridX, const int gridY); +qreal averageLightness(const Array2Df& R, const Array2Df& G, const Array2Df& B, + const int i, const int j, const int gridX, const int gridY); qreal averageLightness(const Array2Df& R, const Array2Df& G, const Array2Df& B); qreal averageLightness(const HdrCreationItem& item); void blend(pfs::Array2Df& R1, pfs::Array2Df& G1, pfs::Array2Df& B1, diff -Nru luminance-hdr-2.5.0/src/HdrWizard/EditingTools.cpp luminance-hdr-2.5.1/src/HdrWizard/EditingTools.cpp --- luminance-hdr-2.5.0/src/HdrWizard/EditingTools.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/EditingTools.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -55,7 +55,7 @@ m_patchesEdited(false) { m_Ui->setupUi(this); - + if ( !QIcon::hasThemeIcon("edit-select-lasso") ) { m_Ui->lassoColorButton->setIcon(QIcon(":/program-icons/edit-select-lasso")); @@ -84,7 +84,7 @@ m_patches[i][j] = false; HdrCreationItemContainer data = m_hcm->getData(); - for ( HdrCreationItemContainer::iterator it = data.begin(), + for ( HdrCreationItemContainer::iterator it = data.begin(), itEnd = data.end(); it != itEnd; ++it) { m_originalImagesList.push_back(&it->qimage()); m_fileList.push_back(it->filename()); @@ -96,7 +96,7 @@ m_gridY = height/agGridSize; int size = m_originalImagesList.size(); - for ( int h = 0; h < size; h++) { + for ( int h = 0; h < size; h++) { QImage *img = new QImage(width, height, QImage::Format_ARGB32); img->fill(qRgba(0,0,0,0)); m_antiGhostingMasksList.append(img); @@ -128,7 +128,7 @@ m_previewWidget->update(); m_patchesMask = new QImage(width, height, QImage::Format_ARGB32); m_previewWidget->setPatchesMask(m_patchesMask); - + qvl->addWidget(m_previewWidget); m_Ui->previewImageFrame->setLayout(qvl); @@ -165,7 +165,7 @@ ((QGridLayout*)(m_Ui->groupBoxHistogram->layout()))->addWidget(m_histogram); m_previewWidget->setFocus(); - + m_Ui->autoAG_checkBox->setChecked(m_doAutoAntighosting); setupConnections(); @@ -192,7 +192,7 @@ connect(m_Ui->fillButton,SIGNAL(clicked()),this,SLOT(fillPreview())); connect(m_Ui->cropButton,SIGNAL(clicked()),this,SLOT(cropStack())); connect(m_previewWidget,SIGNAL(selectionReady(bool)),m_Ui->cropButton,SLOT(setEnabled(bool))); - connect(m_previewWidget,SIGNAL(patchesEdited()),this,SLOT(setPatchesEdited())); + connect(m_previewWidget,SIGNAL(patchesEdited()),this,SLOT(setPatchesEdited())); connect(m_Ui->saveImagesButton,SIGNAL(clicked()),this,SLOT(saveImagesButtonClicked())); connect(m_Ui->blendModeCB,SIGNAL(currentIndexChanged(int)),m_previewWidget,SLOT(requestedBlendMode(int))); connect(m_Ui->blendModeCB,SIGNAL(currentIndexChanged(int)),this,SLOT(blendModeCBIndexChanged(int))); @@ -283,7 +283,7 @@ int height = m_originalImagesList.at(0)->height(); m_gridX = width/agGridSize; m_gridY = height/agGridSize; - + m_previewWidget->removeSelection(); m_previewWidget->setMovable(m_originalImagesList[m_Ui->movableListWidget->currentRow()]); m_previewWidget->setPivot(m_originalImagesList[m_Ui->referenceListWidget->currentRow()]); @@ -318,10 +318,10 @@ for (int h = 0; h < size; h++) { for (int j = 0; j < height; j++) { for (int i = 0; i < width; i++) { - if (qAlpha(m_antiGhostingMasksList.at(h)->pixel(i,j)) != 0) + if (qAlpha(m_antiGhostingMasksList.at(h)->pixel(i,j)) != 0) m_antiGhostingMask->setPixel(i, j, m_antiGhostingMasksList.at(h)->pixel(i, j)); } - } + } } } @@ -329,7 +329,7 @@ { m_Ui->Next_Finishbutton->setEnabled(false); QApplication::setOverrideCursor( QCursor(Qt::WaitCursor) ); - + if (!m_imagesSaved) m_hcm->applyShiftsToItems(m_HV_offsets); if (m_doAutoAntighosting) { @@ -606,11 +606,11 @@ m_originalImagesList.clear(); HdrCreationItemContainer data = m_hcm->getData(); - for ( HdrCreationItemContainer::iterator it = data.begin(), + for ( HdrCreationItemContainer::iterator it = data.begin(), itEnd = data.end(); it != itEnd; ++it) { m_originalImagesList.push_back(&it->qimage()); } - + m_previewWidget->setMovable(m_originalImagesList[m_Ui->movableListWidget->currentRow()]); m_previewWidget->setPivot(m_originalImagesList[m_Ui->referenceListWidget->currentRow()]); } @@ -672,7 +672,7 @@ QString filename = m_Ui->movableListWidget->currentItem()->text(); int idx = m_filesMap[filename]; delete m_antiGhostingMasksList[idx]; - m_antiGhostingMasksList[idx] = new QImage(*m_previewWidget->getSavedAgMask()); + m_antiGhostingMasksList[idx] = new QImage(*m_previewWidget->getSavedAgMask()); m_previewWidget->setMask(m_antiGhostingMasksList[idx]); m_previewWidget->updatePreviewImage(); } diff -Nru luminance-hdr-2.5.0/src/HdrWizard/EditingTools.h luminance-hdr-2.5.1/src/HdrWizard/EditingTools.h --- luminance-hdr-2.5.0/src/HdrWizard/EditingTools.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/EditingTools.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Giuseppe Rota @@ -47,34 +47,34 @@ { Q_OBJECT public: - EditingTools(HdrCreationManager *, bool autoAg, QWidget *parent=0); - ~EditingTools(); + EditingTools(HdrCreationManager *, bool autoAg, QWidget *parent=0); + ~EditingTools(); bool isAutoAntighostingEnabled() { return m_doAutoAntighosting == true; } bool isManualAntighostingEnabled() { return m_doManualAntighosting == true; } int getAgGoodImageIndex() { return m_agGoodImageIndex; } protected: - void keyPressEvent(QKeyEvent *); - void keyReleaseEvent(QKeyEvent *); + void keyPressEvent(QKeyEvent *); + void keyReleaseEvent(QKeyEvent *); private: QScopedPointer m_Ui; - QList m_originalImagesList; - QList m_antiGhostingMasksList; + QList m_originalImagesList; + QList m_antiGhostingMasksList; QImage* m_antiGhostingMask; int m_currentAgMaskIndex; - QStringList m_fileList; - HdrCreationManager *m_hcm; + QStringList m_fileList; + HdrCreationManager *m_hcm; QMap m_filesMap; - QScrollArea *m_scrollArea; - PreviewWidget *m_previewWidget; - int m_additionalShiftValue; - QList< QPair > m_HV_offsets; - HistogramLDR *m_histogram; - QSize m_previousPreviewWidgetSize; - bool m_imagesSaved; + QScrollArea *m_scrollArea; + PreviewWidget *m_previewWidget; + int m_additionalShiftValue; + QList< QPair > m_HV_offsets; + HistogramLDR *m_histogram; + QSize m_previousPreviewWidgetSize; + bool m_imagesSaved; int m_agGoodImageIndex; bool m_antiGhosting; - LuminanceOptions m_luminanceOptions; - QVector m_expotimes; + LuminanceOptions m_luminanceOptions; + QVector m_expotimes; bool m_patches[agGridSize][agGridSize]; int m_gridX; int m_gridY; @@ -83,42 +83,42 @@ QImage* m_patchesMask; bool m_patchesEdited; - void setAntiGhostingWidget(QImage*, QPair); + void setAntiGhostingWidget(QImage*, QPair); void cropAgMasks(const QRect& ca); void computeAgMask(); private slots: - void saveImagesButtonClicked(); - void updatePivot(int); - void updateMovable(int); - void upClicked(); - void rightClicked(); - void downClicked(); - void leftClicked(); - void horizShiftChanged(int); - void vertShiftChanged(int); - void resetCurrent(); - void resetAll(); - void prevLeft(); - void nextLeft(); - void prevBoth(); - void nextBoth(); - void prevRight(); - void nextRight(); - void enterWhatsThis(); - void zoomIn(); - void zoomOut(); - void fitPreview(); - void fillPreview(); - void origSize(); - void cropStack(); - void nextClicked(); - void maskColorButtonClicked(); - void lassoColorButtonClicked(); - void antighostToolButtonToggled(bool); - void blendModeCBIndexChanged(int); - void setupConnections(); - void restoreSaveImagesButtonState(); + void saveImagesButtonClicked(); + void updatePivot(int); + void updateMovable(int); + void upClicked(); + void rightClicked(); + void downClicked(); + void leftClicked(); + void horizShiftChanged(int); + void vertShiftChanged(int); + void resetCurrent(); + void resetAll(); + void prevLeft(); + void nextLeft(); + void prevBoth(); + void nextBoth(); + void prevRight(); + void nextRight(); + void enterWhatsThis(); + void zoomIn(); + void zoomOut(); + void fitPreview(); + void fillPreview(); + void origSize(); + void cropStack(); + void nextClicked(); + void maskColorButtonClicked(); + void lassoColorButtonClicked(); + void antighostToolButtonToggled(bool); + void blendModeCBIndexChanged(int); + void setupConnections(); + void restoreSaveImagesButtonState(); void addGoodImage(); void removeGoodImage(); void updateAgMask(int); diff -Nru luminance-hdr-2.5.0/src/HdrWizard/HdrCreationItem.cpp luminance-hdr-2.5.1/src/HdrWizard/HdrCreationItem.cpp --- luminance-hdr-2.5.0/src/HdrWizard/HdrCreationItem.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/HdrCreationItem.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Davide Anastasia * @@ -38,7 +38,6 @@ , m_datamax(1.f) , m_frame(std::make_shared()) , m_thumbnail(new QImage()) - , m_bitDepth(8) { // qDebug() << QString("Building HdrCreationItem for %1").arg(m_filename); } @@ -53,7 +52,6 @@ , m_datamax(1.f) , m_frame(std::make_shared()) , m_thumbnail(new QImage()) - , m_bitDepth(8) { } diff -Nru luminance-hdr-2.5.0/src/HdrWizard/HdrCreationItem.h luminance-hdr-2.5.1/src/HdrWizard/HdrCreationItem.h --- luminance-hdr-2.5.0/src/HdrWizard/HdrCreationItem.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/HdrCreationItem.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Davide Anastasia * @@ -70,8 +70,6 @@ QImage& qimage() { return *m_thumbnail; } const QImage& qimage() const { return *m_thumbnail; } - void setBitDepth(int bps) { m_bitDepth = bps; } - int getBitDepth() { return m_bitDepth; } private: QString m_filename; @@ -83,7 +81,6 @@ float m_datamax; pfs::FramePtr m_frame; QSharedPointer m_thumbnail; - int m_bitDepth; }; typedef std::vector< HdrCreationItem > HdrCreationItemContainer; diff -Nru luminance-hdr-2.5.0/src/HdrWizard/HdrCreationManager.cpp luminance-hdr-2.5.1/src/HdrWizard/HdrCreationManager.cpp --- luminance-hdr-2.5.0/src/HdrWizard/HdrCreationManager.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/HdrCreationManager.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /** * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2010-2012 Franco Comida - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota * @@ -60,6 +60,7 @@ #include #include #include +#include #include "arch/math.h" #include "TonemappingOperators/fattal02/pde.h" @@ -70,6 +71,8 @@ using namespace std; using namespace pfs; using namespace pfs::io; +using namespace colorspace; +using namespace utils; using namespace libhdr::fusion; const FusionOperatorConfig predef_confs[6] = @@ -123,7 +126,7 @@ bool checkFileName(const HdrCreationItem& item, const QString& str) { return (item.filename().compare(str) == 0); } - + void HdrCreationManager::loadFiles(const QStringList &filenames) { for(const auto filename : filenames) @@ -151,7 +154,7 @@ } void HdrCreationManager::loadFilesDone() -{ +{ qDebug() << "HdrCreationManager::loadFilesDone(): Data loaded ... move to internal structure!"; if (m_futureWatcher.isCanceled() ) // LoadFile() threw an exception { @@ -165,9 +168,6 @@ { try { - const int bps = m_tmpdata[0].getBitDepth(); - m_response->setBPS(bps); - m_weight->setBPS(bps); m_response->readFromFile( QFile::encodeName(getResponseCurveInputFilename()).constData()); setLoadResponseCurve(false); @@ -323,7 +323,7 @@ QVector HdrCreationManager::getExpotimes() const { QVector expotimes; - for ( HdrCreationItemContainer::const_iterator it = m_data.begin(), + for ( HdrCreationItemContainer::const_iterator it = m_data.begin(), itEnd = m_data.end(); it != itEnd; ++it) { expotimes.push_back(it->getEV()); } @@ -334,10 +334,10 @@ { size_t width = m_data[0].frame()->getWidth(); size_t height = m_data[0].frame()->getHeight(); - for ( HdrCreationItemContainer::const_iterator it = m_data.begin() + 1, + for ( HdrCreationItemContainer::const_iterator it = m_data.begin() + 1, itEnd = m_data.end(); it != itEnd; ++it) { if (it->frame()->getWidth() != width || it->frame()->getHeight() != height) - return false; + return false; } return true; } @@ -374,7 +374,7 @@ connect(m_align.get(), SIGNAL(failedAligning(QProcess::ProcessError)), this, SIGNAL(ais_failed(QProcess::ProcessError))); connect(m_align.get(), SIGNAL(failedAligning(QProcess::ProcessError)), this, SLOT(ais_failed_slot(QProcess::ProcessError))); connect(m_align.get(), SIGNAL(dataReady(QByteArray)), this, SIGNAL(aisDataReady(QByteArray))); - + m_align->align_with_ais(m_ais_crop_flag); } @@ -387,8 +387,6 @@ pfs::Frame* HdrCreationManager::createHdr() { - const int bps = m_data[0].getBitDepth(); - std::vector frames; for (size_t idx = 0; idx < m_data.size(); ++idx) @@ -396,8 +394,7 @@ frames.push_back( FrameEnhanced( m_data[idx].frame(), - std::pow(2.f, m_data[idx].getEV() - m_evOffset), - bps + std::pow(2.f, m_data[idx].getEV() - m_evOffset) ) ); } @@ -466,7 +463,7 @@ void HdrCreationManager::saveImages(const QString& prefix) { int idx = 0; - for ( HdrCreationItemContainer::const_iterator it = m_data.begin(), + for ( HdrCreationItemContainer::const_iterator it = m_data.begin(), itEnd = m_data.end(); it != itEnd; ++it) { QString filename = prefix + QString("_%1").arg(idx) + ".tiff"; @@ -494,7 +491,7 @@ const int height = m_data[0].frame()->getHeight(); const int gridX = width / agGridSize; const int gridY = height / agGridSize; - const int size = m_data.size(); + const int size = m_data.size(); assert(size >= 2); vector HE(size); @@ -511,13 +508,13 @@ } for (int h = 0; h < size; h++) { - if (h == m_agGoodImageIndex) + if (h == m_agGoodImageIndex) continue; float deltaEV = log2(m_data[m_agGoodImageIndex].getAverageLuminance()) - log2(m_data[h].getAverageLuminance()); int dx = HV_offset[m_agGoodImageIndex].first - HV_offset[h].first; - int dy = HV_offset[m_agGoodImageIndex].second - HV_offset[h].second; + int dy = HV_offset[m_agGoodImageIndex].second - HV_offset[h].second; float sR, sG, sB; - sdv(m_data[m_agGoodImageIndex], m_data[h], deltaEV, dx, dy, sR, sG, sB); + sdv(m_data[m_agGoodImageIndex], m_data[h], deltaEV, dx, dy, sR, sG, sB); //#pragma omp parallel for schedule(static) for (int j = 0; j < agGridSize; j++) { for (int i = 0; i < agGridSize; i++) { @@ -526,7 +523,7 @@ i, j, gridX, gridY, threshold, sR, sG, sB, deltaEV, dx, dy)) { m_patches[i][j] = true; } - } + } } } @@ -547,6 +544,7 @@ return m_agGoodImageIndex; } + pfs::Frame *HdrCreationManager::doAntiGhosting(bool patches[][agGridSize], int h0, bool manualAg, ProgressHelper *ph) { qDebug() << "HdrCreationManager::doAntiGhosting"; @@ -564,215 +562,348 @@ ph->setValue(0); emit progressStarted(); - const Channel *Good_Xc, *Good_Yc, *Good_Zc; - m_data[h0].frame().get()->getXYZChannels(Good_Xc, Good_Yc, Good_Zc); + float cmax[3]; + float cmin[3]; + float Max, Min; + + const Channel *Good_Rc, *Good_Gc, *Good_Bc; + Channel *Ch_Good[3]; + m_data[h0].frame().get()->getXYZChannels(Ch_Good[0], Ch_Good[1], Ch_Good[2]); + + Good_Rc = Ch_Good[0]; + Good_Gc = Ch_Good[1]; + Good_Bc = Ch_Good[2]; - const Channel *Xc, *Yc, *Zc; + const Channel *Rc, *Gc, *Bc; + Channel *Ch[3]; Frame* ghosted = createHdr(); - ghosted->getXYZChannels(Xc, Yc, Zc); - ph->setValue(20); - if (ph->canceled()) return NULL; + ghosted->getXYZChannels(Ch[0], Ch[1], Ch[2]); - Array2Df Good_Rc(*Good_Xc); - Array2Df Good_Gc(*Good_Yc); - Array2Df Good_Bc(*Good_Zc); - - Array2Df Rc(*Xc); - Array2Df Gc(*Xc); - Array2Df Bc(*Xc); + for(int c = 0; c < 3; c++) { + cmax[c] = *max_element(Ch[c]->begin(), Ch[c]->end()); + cmin[c] = *min_element(Ch[c]->begin(), Ch[c]->end()); + } + Max = std::max(cmax[0], std::max(cmax[1], cmax[2])); + Min = std::min(cmin[0], std::min(cmin[1], cmin[2])); - delete ghosted; + for(int c = 0; c < 3; c++) { + replace_if(Ch[c]->begin(), Ch[c]->end(), [](float f){ return !isnormal(f); }, Max); + replace_if(Ch[c]->begin(), Ch[c]->end(), [](float f){ return !isfinite(f); }, Max); + transform(Ch[c]->begin(), Ch[c]->end(), Ch[c]->begin(), Normalizer(Min, Max)); + } - this->reset(); + Rc = Ch[0]; + Gc = Ch[1]; + Bc = Ch[2]; - //RED - Array2Df logIrradiance_R(width, height); - computeLogIrradiance(logIrradiance_R, Rc); - Rc.reset(); - - Array2Df gradientXGood_R(width, height); - Array2Df gradientYGood_R(width, height); - Array2Df logIrradianceGood_R(width, height); - computeLogIrradiance(logIrradianceGood_R, Good_Rc); - computeGradient(gradientXGood_R, gradientYGood_R, logIrradianceGood_R); - Good_Rc.reset(); - logIrradianceGood_R.reset(); - - Array2Df gradientX_R(width, height); - Array2Df gradientY_R(width, height); - computeGradient(gradientX_R, gradientY_R, logIrradiance_R); + ph->setValue(20); + if (ph->canceled()) return NULL; - Array2Df gradientXBlended_R(width, height); - Array2Df gradientYBlended_R(width, height); + Array2Df* logIrradianceGood_R = new Array2Df(width, height); + computeLogIrradiance(*logIrradianceGood_R, *Good_Rc); + ph->setValue(22); + if (ph->canceled()) { + delete logIrradianceGood_R; + return NULL; + } + Array2Df* logIrradianceGood_G = new Array2Df(width, height); + computeLogIrradiance(*logIrradianceGood_G, *Good_Gc); + ph->setValue(24); + if (ph->canceled()) { + delete logIrradianceGood_G; + return NULL; + } + Array2Df* logIrradianceGood_B = new Array2Df(width, height); + computeLogIrradiance(*logIrradianceGood_B, *Good_Bc); + ph->setValue(26); + if (ph->canceled()) { + delete logIrradianceGood_B; + return NULL; + } + Array2Df* logIrradiance_R = new Array2Df(width, height); + computeLogIrradiance(*logIrradiance_R, *Rc); + ph->setValue(28); + if (ph->canceled()) { + delete logIrradiance_R; + return NULL; + } + Array2Df* logIrradiance_G = new Array2Df(width, height); + computeLogIrradiance(*logIrradiance_G, *Gc); + ph->setValue(30); + if (ph->canceled()) { + delete logIrradiance_G; + return NULL; + } + Array2Df* logIrradiance_B = new Array2Df(width, height); + computeLogIrradiance(*logIrradiance_B, *Bc); + ph->setValue(32); + if (ph->canceled()) { + delete logIrradiance_B; + return NULL; + } + Array2Df* gradientXGood_R = new Array2Df(width, height); + Array2Df* gradientYGood_R = new Array2Df(width, height); + Array2Df* gradientX_R = new Array2Df(width, height); + Array2Df* gradientY_R = new Array2Df(width, height); + Array2Df* gradientXBlended_R = new Array2Df(width, height); + Array2Df* gradientYBlended_R = new Array2Df(width, height); + computeGradient(*gradientXGood_R, *gradientYGood_R, *logIrradianceGood_R); + delete logIrradianceGood_R; + ph->setValue(33); + if (ph->canceled()) { + delete gradientXGood_R; + delete gradientYGood_R; + delete gradientX_R; + delete gradientY_R; + delete gradientXBlended_R; + delete gradientYBlended_R; + return NULL; + } + computeGradient(*gradientX_R, *gradientY_R, *logIrradiance_R); + ph->setValue(34); + if (ph->canceled()) { + delete gradientXGood_R; + delete gradientYGood_R; + delete gradientX_R; + delete gradientY_R; + delete gradientXBlended_R; + delete gradientYBlended_R; + return NULL; + } if (manualAg) - blendGradients(gradientXBlended_R, gradientYBlended_R, - gradientX_R, gradientY_R, - gradientXGood_R, gradientYGood_R, + blendGradients(*gradientXBlended_R, *gradientYBlended_R, + *gradientX_R, *gradientY_R, + *gradientXGood_R, *gradientYGood_R, *m_agMask); else - blendGradients(gradientXBlended_R, gradientYBlended_R, - gradientX_R, gradientY_R, - gradientXGood_R, gradientYGood_R, + blendGradients(*gradientXBlended_R, *gradientYBlended_R, + *gradientX_R, *gradientY_R, + *gradientXGood_R, *gradientYGood_R, patches, gridX, gridY); - gradientX_R.reset(); - gradientY_R.reset(); - gradientXGood_R.reset(); - gradientYGood_R.reset(); - - Array2Df divergence_R(width, height); - computeDivergence(divergence_R, gradientXBlended_R, gradientYBlended_R); - gradientXBlended_R.reset(); - gradientYBlended_R.reset(); - //END RED - - //GREEN - Array2Df logIrradiance_G(width, height); - computeLogIrradiance(logIrradiance_G, Gc); - Gc.reset(); - - Array2Df gradientXGood_G(width, height); - Array2Df gradientYGood_G(width, height); - Array2Df logIrradianceGood_G(width, height); - computeGradient(gradientXGood_G, gradientYGood_G, logIrradianceGood_G); - - computeLogIrradiance(logIrradianceGood_G, Good_Gc); - Good_Gc.reset(); - logIrradianceGood_G.reset(); - - Array2Df gradientX_G(width, height); - Array2Df gradientY_G(width, height); - computeGradient(gradientX_G, gradientY_G, logIrradiance_G); - - Array2Df gradientXBlended_G(width, height); - Array2Df gradientYBlended_G(width, height); + delete gradientX_R; + delete gradientY_R; + delete gradientXGood_R; + delete gradientYGood_R; + ph->setValue(35); + if (ph->canceled()) { + delete gradientXBlended_R; + delete gradientYBlended_R; + return NULL; + } + Array2Df* gradientXGood_G = new Array2Df(width, height); + Array2Df* gradientYGood_G = new Array2Df(width, height); + Array2Df* gradientX_G = new Array2Df(width, height); + Array2Df* gradientY_G = new Array2Df(width, height); + Array2Df* gradientXBlended_G = new Array2Df(width, height); + Array2Df* gradientYBlended_G = new Array2Df(width, height); + computeGradient(*gradientXGood_G, *gradientYGood_G, *logIrradianceGood_G); + delete logIrradianceGood_G; + ph->setValue(36); + if (ph->canceled()) { + delete gradientXGood_G; + delete gradientYGood_G; + delete gradientX_G; + delete gradientY_G; + delete gradientXBlended_G; + delete gradientYBlended_G; + return NULL; + } + computeGradient(*gradientX_G, *gradientY_G, *logIrradiance_G); + ph->setValue(37); + if (ph->canceled()) { + delete gradientXGood_G; + delete gradientYGood_G; + delete gradientX_G; + delete gradientY_G; + delete gradientXBlended_G; + delete gradientYBlended_G; + return NULL; + } if (manualAg) - blendGradients(gradientXBlended_G, gradientYBlended_G, - gradientX_G, gradientY_G, - gradientXGood_G, gradientYGood_G, + blendGradients(*gradientXBlended_G, *gradientYBlended_G, + *gradientX_G, *gradientY_G, + *gradientXGood_G, *gradientYGood_G, *m_agMask); else - blendGradients(gradientXBlended_G, gradientYBlended_G, - gradientX_G, gradientY_G, - gradientXGood_G, gradientYGood_G, + blendGradients(*gradientXBlended_G, *gradientYBlended_G, + *gradientX_G, *gradientY_G, + *gradientXGood_G, *gradientYGood_G, patches, gridX, gridY); - gradientX_G.reset(); - gradientY_G.reset(); - gradientXGood_G.reset(); - gradientYGood_G.reset(); - - Array2Df divergence_G(width, height); - computeDivergence(divergence_G, gradientXBlended_G, gradientYBlended_G); - gradientXBlended_G.reset(); - gradientYBlended_G.reset(); - //END GREEN - - //BLUE - Array2Df logIrradiance_B(width, height); - computeLogIrradiance(logIrradiance_B, Bc); - Bc.reset(); - - Array2Df gradientXGood_B(width, height); - Array2Df gradientYGood_B(width, height); - Array2Df logIrradianceGood_B(width, height); - computeLogIrradiance(logIrradianceGood_B, Good_Bc); - computeGradient(gradientXGood_B, gradientYGood_B, logIrradianceGood_B); - Good_Bc.reset(); - logIrradianceGood_B.reset(); - - Array2Df gradientX_B(width, height); - Array2Df gradientY_B(width, height); - computeGradient(gradientX_B, gradientY_B, logIrradiance_B); - - Array2Df gradientXBlended_B(width, height); - Array2Df gradientYBlended_B(width, height); + delete gradientX_G; + delete gradientY_G; + delete gradientXGood_G; + delete gradientYGood_G; + ph->setValue(38); + if (ph->canceled()) { + delete gradientXBlended_G; + delete gradientYBlended_G; + return NULL; + } + Array2Df* gradientXGood_B = new Array2Df(width, height); + Array2Df* gradientYGood_B = new Array2Df(width, height); + Array2Df* gradientX_B = new Array2Df(width, height); + Array2Df* gradientY_B = new Array2Df(width, height); + Array2Df* gradientXBlended_B = new Array2Df(width, height); + Array2Df* gradientYBlended_B = new Array2Df(width, height); + computeGradient(*gradientXGood_B, *gradientYGood_B, *logIrradianceGood_B); + delete logIrradianceGood_B; + ph->setValue(39); + if (ph->canceled()) { + delete gradientXGood_B; + delete gradientYGood_B; + delete gradientX_B; + delete gradientY_B; + delete gradientXBlended_B; + delete gradientYBlended_B; + return NULL; + } + computeGradient(*gradientX_B, *gradientY_B, *logIrradiance_B); + ph->setValue(40); + if (ph->canceled()) { + delete gradientXGood_B; + delete gradientYGood_B; + delete gradientX_B; + delete gradientY_B; + delete gradientXBlended_B; + delete gradientYBlended_B; + return NULL; + } if (manualAg) - blendGradients(gradientXBlended_B, gradientYBlended_B, - gradientX_B, gradientY_B, - gradientXGood_B, gradientYGood_B, + blendGradients(*gradientXBlended_B, *gradientYBlended_B, + *gradientX_B, *gradientY_B, + *gradientXGood_B, *gradientYGood_B, *m_agMask); else - blendGradients(gradientXBlended_B, gradientYBlended_B, - gradientX_B, gradientY_B, - gradientXGood_B, gradientYGood_B, + blendGradients(*gradientXBlended_B, *gradientYBlended_B, + *gradientX_B, *gradientY_B, + *gradientXGood_B, *gradientYGood_B, patches, gridX, gridY); - gradientX_B.reset(); - gradientY_B.reset(); - gradientXGood_B.reset(); - gradientYGood_B.reset(); - - Array2Df divergence_B(width, height); - computeDivergence(divergence_B, gradientXBlended_B, gradientYBlended_B); - gradientXBlended_G.reset(); - gradientYBlended_G.reset(); - //END BLUE + delete gradientX_B; + delete gradientY_B; + delete gradientXGood_B; + delete gradientYGood_B; + ph->setValue(41); + if (ph->canceled()) { + delete gradientXBlended_B; + delete gradientYBlended_B; + return NULL; + } + + Array2Df* divergence_R = new Array2Df(width, height); + computeDivergence(*divergence_R, *gradientXBlended_R, *gradientYBlended_R); + delete gradientXBlended_R; + delete gradientYBlended_R; + ph->setValue(42); + if (ph->canceled()) { + delete divergence_R; + return NULL; + } + Array2Df* divergence_G = new Array2Df(width, height); + computeDivergence(*divergence_G, *gradientXBlended_G, *gradientYBlended_G); + delete gradientXBlended_G; + delete gradientYBlended_G; + ph->setValue(43); + if (ph->canceled()) { + delete divergence_G; + return NULL; + } + Array2Df* divergence_B = new Array2Df(width, height); + computeDivergence(*divergence_B, *gradientXBlended_B, *gradientYBlended_B); + delete gradientXBlended_B; + delete gradientYBlended_B; + ph->setValue(44); + if (ph->canceled()) { + delete divergence_B; + return NULL; + } qDebug() << "solve_pde"; - solve_pde_dct(divergence_R, logIrradiance_R); + solve_pde_dct(*divergence_R, *logIrradiance_R); + qDebug() << "residual: " << residual_pde(logIrradiance_R, divergence_R); + delete divergence_R; ph->setValue(60); - if (ph->canceled()) { + if (ph->canceled()) { + delete logIrradiance_R; return NULL; } qDebug() << "solve_pde"; - solve_pde_dct(divergence_G, logIrradiance_G); + solve_pde_dct(*divergence_G, *logIrradiance_G); + qDebug() << "residual: " << residual_pde(logIrradiance_G, divergence_G); + delete divergence_G; ph->setValue(76); - if (ph->canceled()) { + if (ph->canceled()) { + delete logIrradiance_G; return NULL; } qDebug() << "solve_pde"; - solve_pde_dct(divergence_B, logIrradiance_B); + solve_pde_dct(*divergence_B, *logIrradiance_B); + qDebug() << "residual: " << residual_pde(logIrradiance_B, divergence_B); + delete divergence_B; ph->setValue(93); - if (ph->canceled()) { + if (ph->canceled()) { + delete logIrradiance_B; return NULL; } - QScopedPointer deghosted(new Frame(width, height)); - Channel *Urc, *Ugc, *Ubc; - deghosted->createXYZChannels(Urc, Ugc, Ubc); + Frame* deghosted = new Frame(width, height); + //Channel *Urc, *Ugc, *Ubc; + Channel *Uc[3]; + deghosted->createXYZChannels(Uc[0], Uc[1], Uc[2]); - computeIrradiance(*Urc, logIrradiance_R); - logIrradiance_R.reset(); + computeIrradiance(*Uc[0], *logIrradiance_R); + delete logIrradiance_R; ph->setValue(94); - if (ph->canceled()) { + if (ph->canceled()) { + delete deghosted; return NULL; } - computeIrradiance(*Ugc, logIrradiance_G); - logIrradiance_G.reset(); + computeIrradiance(*Uc[1], *logIrradiance_G); + delete logIrradiance_G; ph->setValue(95); - if (ph->canceled()) { + if (ph->canceled()) { + delete deghosted; return NULL; } - computeIrradiance(*Ubc, logIrradiance_B); - logIrradiance_B.reset(); + computeIrradiance(*Uc[2], *logIrradiance_B); + delete logIrradiance_B; ph->setValue(96); - if (ph->canceled()) { + if (ph->canceled()) { + delete deghosted; return NULL; } + //shadesOfGrayAWB(*Uc[0], *Uc[1], *Uc[2]); - float mr = min(*Urc); - float mg = min(*Ugc); - float mb = min(*Ubc); - float t = min(mr, mg); - float m = min(t,mb); - - clampToZero(*Urc, *Ugc, *Ubc, m); - - shadesOfGrayAWB(*Urc, *Ugc, *Ubc); + for(int c = 0; c < 3; c++) { + cmax[c] = *max_element(Uc[c]->begin(), Uc[c]->end()); + cmin[c] = *min_element(Uc[c]->begin(), Uc[c]->end()); + } + Max = std::max(cmax[0], std::max(cmax[1], cmax[2])); + Min = std::min(cmin[0], std::min(cmin[1], cmin[2])); + + for(int c = 0; c < 3; c++) { + replace_if(Uc[c]->begin(), Uc[c]->end(), [](float f){ return !isnormal(f); }, Max); + replace_if(Uc[c]->begin(), Uc[c]->end(), [](float f){ return !isfinite(f); }, Max); + transform(Uc[c]->begin(), Uc[c]->end(), Uc[c]->begin(), Normalizer(Min, Max)); + } ph->setValue(100); emit progressFinished(); + delete ghosted; + this->reset(); #ifdef TIMER_PROFILING stop_watch.stop_and_update(); std::cout << "doAntiGhosting = " << stop_watch.get_time() << " msec" << std::endl; #endif - return deghosted.take(); + return deghosted; } + void HdrCreationManager::getAgData(bool patches[][agGridSize], int &h0) { memcpy(patches, m_patches, agGridSize*agGridSize); diff -Nru luminance-hdr-2.5.0/src/HdrWizard/HdrCreationManager.h luminance-hdr-2.5.1/src/HdrWizard/HdrCreationManager.h --- luminance-hdr-2.5.0/src/HdrWizard/HdrCreationManager.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/HdrCreationManager.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota * Improvements, bugfixing @@ -60,7 +60,7 @@ public: explicit HdrCreationManager(bool fromCommandLine = false); - ~HdrCreationManager(); + ~HdrCreationManager(); // ----- NEW FUNCTIONS ------ HdrCreationItem& getFile(size_t idx) { return m_data[idx]; } @@ -105,10 +105,10 @@ pfs::Frame* createHdr(); void set_ais_crop_flag(bool flag); - void align_with_ais(); - void align_with_mtb(); + void align_with_ais(); + void align_with_mtb(); - const HdrCreationItemContainer& getData() const { return m_data; } + const HdrCreationItemContainer& getData() const { return m_data; } //const QList& getAntiGhostingMasksList() const { return m_antiGhostingMasksList; } //void setAntiGhostingMasksList(QList& list) { m_antiGhostingMasksList.swap(list); } void setAntiGhostingMask(QImage* mask) { m_agMask = new QImage(*mask); } @@ -119,9 +119,9 @@ void cropAgMasks(const QRect& ca); void saveImages(const QString& prefix); - //void doAntiGhosting(int); + //void doAntiGhosting(int); int computePatches(float threshold, bool patches[][agGridSize], float &percent, QList > HV_offset); - pfs::Frame* doAntiGhosting(bool patches[][agGridSize], int h0, bool manualAg, ProgressHelper *ph); + pfs::Frame* doAntiGhosting(bool patches[][agGridSize], int h0, bool manualAg, ProgressHelper *ph); void getAgData(bool patches[][agGridSize], int &h0); void setPatches(bool patches[][agGridSize]); @@ -144,12 +144,12 @@ void fileLoaded(int index, const QString& fname, float expotime); - void finishedAligning(int); - void expotimeValueChanged(float,int); - void ais_failed(QProcess::ProcessError); + void finishedAligning(int); + void expotimeValueChanged(float,int); + void ais_failed(QProcess::ProcessError); void aisDataReady(const QByteArray& data); - void processed(); - void imagesSaved(); + void processed(); + void imagesSaved(); void loadFilesAborted(); private: @@ -165,7 +165,7 @@ QString m_responseCurveOutputFilename; QFutureWatcher m_futureWatcher; - //QList m_antiGhostingMasksList; //QImages used for manual anti-ghosting + //QList m_antiGhostingMasksList; //QImages used for manual anti-ghosting QImage* m_agMask; LuminanceOptions m_luminance_options; @@ -173,13 +173,13 @@ std::unique_ptr m_align; bool m_ais_crop_flag; - bool fromCommandLine; + bool fromCommandLine; int m_agGoodImageIndex; bool m_patches[agGridSize][agGridSize]; bool m_isLoadResponseCurve; private slots: - void ais_failed_slot(QProcess::ProcessError); + void ais_failed_slot(QProcess::ProcessError); void loadFilesDone(); }; #endif diff -Nru luminance-hdr-2.5.0/src/HdrWizard/HdrWizard.cpp luminance-hdr-2.5.1/src/HdrWizard/HdrWizard.cpp --- luminance-hdr-2.5.0/src/HdrWizard/HdrWizard.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/HdrWizard.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -134,7 +134,7 @@ m_Ui->tableWidget->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch); m_Ui->tableWidget->verticalHeader()->hide(); // m_Ui->tableWidget->resizeColumnsToContents(); - + m_Ui->progressBar->hide(); m_Ui->textEdit->hide(); @@ -150,13 +150,13 @@ // place :( /* QSqlQueryModel model; - model.setQuery("SELECT * FROM parameters"); + model.setQuery("SELECT * FROM parameters"); for (int i = 0; i < model.rowCount(); i++) { m_Ui->predefConfigsComboBox->addItem(tr("Custom config %1").arg(i+1)); - int weight_ = model.record(i).value("weight").toInt(); - int response_ = model.record(i).value("response").toInt(); - int model_ = model.record(i).value("model").toInt(); - QString filename_ = model.record(i).value("filename").toString(); + int weight_ = model.record(i).value("weight").toInt(); + int response_ = model.record(i).value("response").toInt(); + int model_ = model.record(i).value("model").toInt(); + QString filename_ = model.record(i).value("filename").toString(); FusionOperatorConfig ct; switch (weight_) { case 0: @@ -173,30 +173,30 @@ case 0: ct.response_curve = FROM_FILE; ct.LoadCurveFromFilename = filename_; - ct.SaveCurveToFilename = ""; + ct.SaveCurveToFilename = ""; break; case 1: ct.response_curve = LINEAR; - break; + break; case 2: ct.response_curve = GAMMA; - break; + break; case 3: ct.response_curve = LOG10; - break; + break; case 4: ct.response_curve = FROM_ROBERTSON; - break; + break; } switch (model_) { case 0: ct.model = DEBEVEC; - break; + break; case 1: ct.model = ROBERTSON; - break; + break; } - m_customConfig.push_back(ct); + m_customConfig.push_back(ct); } */ } @@ -216,10 +216,10 @@ //connect(m_hdrCreationManager.data(), SIGNAL(progressStarted()), m_Ui->progressBar, SLOT(show()), Qt::DirectConnection); //connect(m_hdrCreationManager.data(), SIGNAL(progressFinished()), m_Ui->progressBar, SLOT(reset())); //connect(m_hdrCreationManager.data(), SIGNAL(progressFinished()), m_Ui->progressBar, SLOT(hide()), Qt::DirectConnection); - + connect(m_hdrCreationManager.data(), SIGNAL(progressRangeChanged(int,int)), this, SIGNAL(setRange(int,int)), Qt::DirectConnection); connect(m_hdrCreationManager.data(), SIGNAL(progressValueChanged(int)), this, SIGNAL(setValue(int)), Qt::DirectConnection); - + connect(this, SIGNAL(setValue(int)), m_Ui->progressBar, SLOT(setValue(int)), Qt::DirectConnection); connect(this, SIGNAL(setRange(int,int)), m_Ui->progressBar, SLOT(setRange(int,int)), Qt::DirectConnection); @@ -803,7 +803,7 @@ void HdrWizard::createHdr() { - m_future = QtConcurrent::run( boost::bind(&HdrCreationManager::createHdr, + m_future = QtConcurrent::run( boost::bind(&HdrCreationManager::createHdr, m_hdrCreationManager.data())); connect(&m_futureWatcher, SIGNAL(finished()), this, SLOT(createHdrFinished()), Qt::DirectConnection); @@ -844,7 +844,7 @@ numldrs = m_hdrCreationManager->getLDRList().size(); else numldrs = m_hdrCreationManager->getMDRList().size(); - + qDebug() << "numldrs = " << numldrs; */ //if (m_hdrCreationManager->inputImageType() == HdrCreationManager::LDR_INPUT_TYPE && numldrs >= 2) { @@ -885,9 +885,6 @@ try { HdrCreationItemContainer c = m_hdrCreationManager->getData(); - int bps = c[0].getBitDepth(); - m_hdrCreationManager->getResponseCurve().setBPS(bps); - m_hdrCreationManager->getWeightFunction().setBPS(bps); m_hdrCreationManager->getResponseCurve().readFromFile( QFile::encodeName(loadcurvefilename).constData()); diff -Nru luminance-hdr-2.5.0/src/HdrWizard/HdrWizard.h luminance-hdr-2.5.1/src/HdrWizard/HdrWizard.h --- luminance-hdr-2.5.0/src/HdrWizard/HdrWizard.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/HdrWizard.h 2017-05-10 19:14:06.000000000 +0000 @@ -78,8 +78,8 @@ QStringList getInputFilesNames(); protected: - void resizeEvent(QResizeEvent *); - void keyPressEvent(QKeyEvent *); + void resizeEvent(QResizeEvent *); + void keyPressEvent(QKeyEvent *); void dragEnterEvent(QDragEnterEvent *); void dropEvent(QDropEvent *); @@ -116,7 +116,7 @@ void alignSelectionClicked(); // HDR Creation Model Functions..... - void predefConfigsComboBoxActivated(int); + void predefConfigsComboBoxActivated(int); void customConfigCheckBoxToggled(bool); void weightingFunctionComboBoxActivated(int); @@ -124,17 +124,17 @@ void modelComboBoxActivated(int); bool loadRespCurve(); - void saveRespCurveFileButtonClicked(); + void saveRespCurveFileButtonClicked(); // ...end! void NextFinishButtonClicked(); - void currentPageChangedInto(int); - void editingEVfinished(); - void reject(); - void ais_failed(QProcess::ProcessError); - void writeAisData(QByteArray data); - void setupConnections(); - void on_pushButtonSaveSettings_clicked(); + void currentPageChangedInto(int); + void editingEVfinished(); + void reject(); + void ais_failed(QProcess::ProcessError); + void writeAisData(QByteArray data); + void setupConnections(); + void on_pushButtonSaveSettings_clicked(); void updateProgressBar(int); void updateThresholdSlider(int); void updateThresholdSpinBox(double); diff -Nru luminance-hdr-2.5.0/src/HdrWizard/PreviewWidget.cpp luminance-hdr-2.5.1/src/HdrWizard/PreviewWidget.cpp --- luminance-hdr-2.5.0/src/HdrWizard/PreviewWidget.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/PreviewWidget.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -42,10 +42,10 @@ static const int BORDER_SIZE = 30; } -PreviewWidget::PreviewWidget(QWidget *parent, QImage *m, const QImage *p) : - QWidget(parent), - m_movableImage(m), - m_pivotImage(p), +PreviewWidget::PreviewWidget(QWidget *parent, QImage *m, const QImage *p) : + QWidget(parent), + m_movableImage(m), + m_pivotImage(p), m_agMask(NULL), m_originalAgMask(NULL), m_patchesMask(NULL), @@ -59,7 +59,7 @@ m_old_mx(0), m_old_my(0), m_agcursorPixmap(NULL), - m_drawingMode(BRUSH) + m_drawingMode(BRUSH) { setFocusPolicy(Qt::StrongFocus); //setMouseTracking(true); @@ -77,7 +77,7 @@ blendmode = &PreviewWidget::computeDiffRgba; m_mode = EditingMode; m_rect = m_movableImage->rect(); - + mVBL = new QVBoxLayout(this); mVBL->setSpacing(0); mVBL->setMargin(0); @@ -119,7 +119,7 @@ mAgPixmap->setZValue(1); mAgPixmap->setVisible(false); mScene->addItem(mPixmap); - + mAgPixmap->setAcceptedMouseButtons(0); } @@ -182,7 +182,7 @@ pivLine = (QRgb*)(m_pivotImage->scanLine(i - m_py)); else pivLine = NULL; - + //for all the columns that we have to paint for(int j = originx; j < originx + W; j++) { //if within bounds considering horizontal offset @@ -209,7 +209,7 @@ { const int W = mask->width(); const int H = mask->height(); - + for(int j = 0; j < H; j++) { for(int i = 0; i < W; i++) { if (((i+mx)>=0 && (i+mx) < W) && ((j+my) >=0 && (j+mytype() == QEvent::MouseButtonPress) { @@ -362,7 +362,7 @@ } } else if (mouse->button() == Qt::MidButton) { - QApplication::restoreOverrideCursor(); + QApplication::restoreOverrideCursor(); } paste(m_agMask, m_agMaskPixmap->toImage(), (m_mx-m_old_mx), (m_my-m_old_my)); delete m_originalAgMask; @@ -375,7 +375,7 @@ else if (m_mode == ViewPatches) QApplication::setOverrideCursor(Qt::PointingHandCursor); else { - if (m_drawingMode == BRUSH) { + if (m_drawingMode == BRUSH) { fillAntiGhostingCursorPixmap(); QApplication::setOverrideCursor(*m_agcursorPixmap); } @@ -384,8 +384,8 @@ } } else if (event->type() == QEvent::Leave) - QApplication::restoreOverrideCursor(); - + QApplication::restoreOverrideCursor(); + return false; } @@ -416,7 +416,7 @@ } void PreviewWidget::setMask(QImage *mask) { - if (m_agMaskPixmap) + if (m_agMaskPixmap) delete m_agMaskPixmap; m_originalAgMask = new QImage(*mask); m_agMask = new QImage(*mask); @@ -426,7 +426,7 @@ } void PreviewWidget::setPatchesMask(QImage *mask) { - if (m_agMaskPixmap) + if (m_agMaskPixmap) m_patchesMask = new QImage(*mask); } @@ -723,7 +723,7 @@ if ((m_mx != m_old_mx) && (m_my != m_old_my)) { delete m_agMask; m_agMask = new QImage(*m_originalAgMask); - paste(m_agMask, m_agMaskPixmap->toImage(), -(m_mx-m_old_mx), -(m_my-m_old_my)); + paste(m_agMask, m_agMaskPixmap->toImage(), -(m_mx-m_old_mx), -(m_my-m_old_my)); delete m_agMaskPixmap; m_agMaskPixmap = new QPixmap(QPixmap::fromImage(*m_agMask)); mAgPixmap->setPixmap(*m_agMaskPixmap); @@ -838,7 +838,7 @@ return m_savedMask; } -void PreviewWidget::timerEvent(QTimerEvent *) +void PreviewWidget::timerEvent(QTimerEvent *) { (m_drawingMode == BRUSH) ? drawWithBrush() : drawPath(); } @@ -870,7 +870,7 @@ if (m_drawingPathEnded) { painter.setCompositionMode(QPainter::CompositionMode_Clear); // Nasty hack, QPen does not draw semi transparent - painter.drawPath(m_path); + painter.drawPath(m_path); if (m_brushAddMode) painter.setCompositionMode(QPainter::CompositionMode_SourceOver); painter.fillPath(m_path, m_requestedPixmapColor); diff -Nru luminance-hdr-2.5.0/src/HdrWizard/PreviewWidget.h luminance-hdr-2.5.1/src/HdrWizard/PreviewWidget.h --- luminance-hdr-2.5.0/src/HdrWizard/PreviewWidget.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/PreviewWidget.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -37,7 +37,7 @@ #include "AutoAntighosting.h" // Just for agGridSize !!! -class IGraphicsView; +class IGraphicsView; class IGraphicsPixmapItem; class PanIconWidget; @@ -58,7 +58,7 @@ QSize sizeHint () const { return m_previewImage->size(); } - float getScaleFactor(); + float getScaleFactor(); QImage * getPreviewImage() { renderPreviewImage(blendmode); return m_previewImage; @@ -77,7 +77,7 @@ bool isFilledToWindow(); bool isNormalSize(); - void setMask(QImage *mask); + void setMask(QImage *mask); QImage* getMask(); // Conversion to QImage to QPixmap is made for speed optimization // we need to return a QImage from the modified QPixmap @@ -100,7 +100,7 @@ void zoomIn(); void zoomOut(); - void fitToWindow(); + void fitToWindow(); void fillToWindow(); void normalSize(); @@ -140,7 +140,7 @@ void patchesEdited(); protected: - bool eventFilter(QObject* object, QEvent* event); + bool eventFilter(QObject* object, QEvent* event); virtual void timerEvent(QTimerEvent *event); private: @@ -228,7 +228,7 @@ void fillAntiGhostingCursorPixmap(); void drawWithBrush(); void drawPath(); - + QPointF m_mousePos; QPointF m_firstPoint; QPointF m_lastPoint; diff -Nru luminance-hdr-2.5.0/src/HdrWizard/WhiteBalance.cpp luminance-hdr-2.5.1/src/HdrWizard/WhiteBalance.cpp --- luminance-hdr-2.5.0/src/HdrWizard/WhiteBalance.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HdrWizard/WhiteBalance.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -15,9 +15,11 @@ #include #include #include +#include "Libpfs/utils/msec_timer.h" using namespace pfs; using namespace pfs::colorspace; +using namespace pfs::utils; void computeHistogram(const pfs::Array2Df& data, std::vector& histogram, float min, float max) diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/CMakeLists.txt luminance-hdr-2.5.1/src/HelpBrowser/CMakeLists.txt --- luminance-hdr-2.5.0/src/HelpBrowser/CMakeLists.txt 2017-04-18 18:27:47.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/CMakeLists.txt 2017-05-10 19:14:06.000000000 +0000 @@ -28,7 +28,7 @@ QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) ADD_LIBRARY(helpbrowser ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H} ${FILES_HXX}) -qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebKit WebKitWidgets PrintSupport) +qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebEngineCore WebEngineWidgets PrintSupport) SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} ${FILES_HXX} PARENT_SCOPE) SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} helpbrowser PARENT_SCOPE) diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.cpp luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.cpp 2017-04-18 18:27:47.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -92,30 +92,30 @@ */ class HistoryParser2 : public QXmlDefaultHandler { - public: - HelpBrowser *helpBrowser; + public: + HelpBrowser *helpBrowser; - bool startDocument() - { - return true; - } - - bool startElement(const QString&, const QString&, const QString& qName, const QXmlAttributes& attrs) - { - if (qName == "item") - { - struct histd2 his; - his.title = attrs.value(0); - his.url = attrs.value(1); - helpBrowser->mHistory[helpBrowser->histMenu->addAction(his.title)] = his; - } - return true; - } - - bool endElement(const QString&, const QString&, const QString&) - { - return true; - } + bool startDocument() + { + return true; + } + + bool startElement(const QString&, const QString&, const QString& qName, const QXmlAttributes& attrs) + { + if (qName == "item") + { + struct histd2 his; + his.title = attrs.value(0); + his.url = attrs.value(1); + helpBrowser->mHistory[helpBrowser->histMenu->addAction(his.title)] = his; + } + return true; + } + + bool endElement(const QString&, const QString&, const QString&) + { + return true; + } }; /*! \brief XML parsef for documantation bookmarks. @@ -126,34 +126,34 @@ */ class BookmarkParser2 : public QXmlDefaultHandler { - public: - QTreeWidget* view; - QMap* quickHelpIndex; - QMap >* bookmarkIndex; - - bool startDocument() - { - return true; - } - - bool startElement(const QString&, const QString&, const QString& qName, const QXmlAttributes& attrs) - { - if (qName == "item") - { - //TODO : This will dump items if bookmarks get loaded into a different GUI language - if (quickHelpIndex->contains(attrs.value(1))) - { - bookmarkIndex->insert(attrs.value(0), qMakePair(attrs.value(1), attrs.value(2))); - view->addTopLevelItem(new QTreeWidgetItem(view, QStringList() << attrs.value(0))); - } - } - return true; - } - - bool endElement(const QString&, const QString&, const QString&) - { - return true; - } + public: + QTreeWidget* view; + QMap* quickHelpIndex; + QMap >* bookmarkIndex; + + bool startDocument() + { + return true; + } + + bool startElement(const QString&, const QString&, const QString& qName, const QXmlAttributes& attrs) + { + if (qName == "item") + { + //TODO : This will dump items if bookmarks get loaded into a different GUI language + if (quickHelpIndex->contains(attrs.value(1))) + { + bookmarkIndex->insert(attrs.value(0), qMakePair(attrs.value(1), attrs.value(2))); + view->addTopLevelItem(new QTreeWidgetItem(view, QStringList() << attrs.value(0))); + } + } + return true; + } + + bool endElement(const QString&, const QString&, const QString&) + { + return true; + } }; HelpBrowser::HelpBrowser(QWidget* parent): @@ -166,12 +166,14 @@ HelpBrowser::HelpBrowser( QWidget* parent, const QString& /*caption*/, const QString& guiLanguage, const QString& jumpToSection, const QString& jumpToFile): QMainWindow( parent ), zoomFactor(1.0), + //m_textBrowser(new QTextDocument), + m_textBrowser(new QTextBrowser), m_Ui(new Ui::HelpBrowser) { m_Ui->setupUi(this); restoreGeometry(LuminanceOptions().value("HelpBrowserGeometry").toByteArray()); - setupLocalUI(); + setupLocalUI(); //m_Ui->htmlPage->page()->setLinkDelegationPolicy(QWebPage::DelegateExternalLinks); //connect(m_Ui->htmlPage, SIGNAL(linkClicked(const QUrl &)), this, SLOT(handleExternalLink(const QUrl &))); @@ -180,26 +182,26 @@ //connect(m_Ui->htmlPage->page(), SIGNAL(linkHovered(const QString &, const QString &, const QString & )), this, SLOT(linkHovered(const QString &, const QString &, const QString & ))); connect(m_Ui->htmlPage->page(), SIGNAL(linkHovered(const QString &)), this, SLOT(linkHovered(const QString &))); - language = guiLanguage.isEmpty() ? QString("en") : guiLanguage.left(2); - finalBaseDir = LuminancePaths::HelpDir(); + language = guiLanguage.isEmpty() ? QString("en") : guiLanguage.left(2); + finalBaseDir = LuminancePaths::HelpDir(); qDebug() << finalBaseDir; m_Ui->htmlPage->setHome( QUrl::fromLocalFile( finalBaseDir + "index.html" )); - menuModel=NULL; + menuModel=NULL; loadMenu(); if (menuModel!=NULL) - { - readBookmarks(); - jumpToHelpSection(jumpToSection, jumpToFile ); - languageChange(); - } - else - { - qDebug("menuModel == NULL"); - displayNoHelp(); - } + { + readBookmarks(); + jumpToHelpSection(jumpToSection, jumpToFile ); + languageChange(); + } + else + { + qDebug("menuModel == NULL"); + displayNoHelp(); + } } HelpBrowser::~HelpBrowser() @@ -209,250 +211,264 @@ void HelpBrowser::closeEvent(QCloseEvent *) { - delete menuModel; + delete menuModel; - // no need to delete child widgets, Qt does it all for us - // bookmarks + // no need to delete child widgets, Qt does it all for us + // bookmarks LuminanceOptions options; { QByteArray ba; - QTextStream stream(&ba); - stream.setCodec("UTF-8"); - stream << "\n"; - stream << "\n"; + QTextStream stream(&ba); + stream.setCodec("UTF-8"); + stream << "\n"; + stream << "\n"; QTreeWidgetItemIterator it(helpSideBar->m_Ui->bookmarksView); - while (*it) - { - if (bookmarkIndex.contains((*it)->text(0))) - { - QString pagetitle(bookmarkIndex.value((*it)->text(0)).first); - QString filename(bookmarkIndex.value((*it)->text(0)).second); - stream << "\ttext(0) << "\" pagetitle=\"" << pagetitle << "\" url=\"" << filename << "\" />\n"; - } - ++it; - } - stream << "\n"; + while (*it) + { + if (bookmarkIndex.contains((*it)->text(0))) + { + QString pagetitle(bookmarkIndex.value((*it)->text(0)).first); + QString filename(bookmarkIndex.value((*it)->text(0)).second); + stream << "\ttext(0) << "\" pagetitle=\"" << pagetitle << "\" url=\"" << filename << "\" />\n"; + } + ++it; + } + stream << "\n"; stream.flush(); options.setValue(KEY_HELP_BOOKMARK, ba); } // history - { + { QByteArray ba; - QTextStream stream(&ba); - stream.setCodec("UTF-8"); - stream << "\n"; - stream << "\n"; - for (QMap::Iterator it = mHistory.begin() ; it != mHistory.end(); ++it) - stream << "\t\n"; - stream << "\n"; + QTextStream stream(&ba); + stream.setCodec("UTF-8"); + stream << "\n"; + stream << "\n"; + for (QMap::Iterator it = mHistory.begin() ; it != mHistory.end(); ++it) + stream << "\t\n"; + stream << "\n"; stream.flush(); options.setValue(KEY_HELP_HISTORY, ba); - } - // size -// prefs->set("xsize", width()); -// prefs->set("ysize", height()); + } + // size +// prefs->set("xsize", width()); +// prefs->set("ysize", height()); - emit closed(); + emit closed(); } void HelpBrowser::setupLocalUI() { - helpSideBar = new HelpSideBar(tr("Help SideBar"), this); - helpSideBar->setFeatures(QDockWidget::AllDockWidgetFeatures); - addDockWidget(Qt::LeftDockWidgetArea, helpSideBar); + helpSideBar = new HelpSideBar(tr("Help SideBar"), this); + helpSideBar->setFeatures(QDockWidget::AllDockWidgetFeatures); + addDockWidget(Qt::LeftDockWidgetArea, helpSideBar); - histMenu=new QMenu(this); - m_Ui->goBack->setMenu(histMenu); + histMenu=new QMenu(this); + m_Ui->goBack->setMenu(histMenu); helpSideBar->m_Ui->listView->header()->hide(); helpSideBar->m_Ui->searchingView->header()->hide(); helpSideBar->m_Ui->bookmarksView->header()->hide(); - //basic ui - connect(m_Ui->filePrint, SIGNAL(triggered()), this, SLOT(print())); - connect(m_Ui->filePrintPreview, SIGNAL(triggered()), this, SLOT(printPreview())); - connect(m_Ui->fileExit, SIGNAL(triggered()), this, SLOT(close())); - connect(m_Ui->editFind, SIGNAL(triggered()), this, SLOT(find())); - connect(m_Ui->editFindNext, SIGNAL(triggered()), this, SLOT(findNext())); - connect(m_Ui->editFindPrev, SIGNAL(triggered()), this, SLOT(findPrevious())); - connect(m_Ui->viewContents, SIGNAL(triggered()), this, SLOT(viewContents_clicked())); - connect(m_Ui->viewSearch, SIGNAL(triggered()), this, SLOT(viewSearch_clicked())); - connect(m_Ui->viewBookmarks, SIGNAL(triggered()), this, SLOT(viewBookmarks_clicked())); - connect(m_Ui->bookAdd, SIGNAL(triggered()), this, SLOT(bookmarkButton_clicked())); - connect(m_Ui->bookDel, SIGNAL(triggered()), this, SLOT(deleteBookmarkButton_clicked())); - connect(m_Ui->bookDelAll, SIGNAL(triggered()), this, SLOT(deleteAllBookmarkButton_clicked())); - connect(m_Ui->goHome, SIGNAL(triggered()), m_Ui->htmlPage, SLOT(home())); - connect(m_Ui->goBack, SIGNAL(triggered()), m_Ui->htmlPage, SLOT(back())); - connect(m_Ui->goFwd, SIGNAL(triggered()), m_Ui->htmlPage, SLOT(forward())); - connect(m_Ui->zoomIn, SIGNAL(triggered()), this, SLOT(zoomIn_clicked())); - connect(m_Ui->zoomOriginal, SIGNAL(triggered()), this, SLOT(zoomOriginal_clicked())); - connect(m_Ui->zoomOut, SIGNAL(triggered()), this, SLOT(zoomOut_clicked())); - connect(histMenu, SIGNAL(triggered(QAction*)), this, SLOT(histChosen(QAction*))); - // searching + //basic ui + connect(m_Ui->filePrint, SIGNAL(triggered()), this, SLOT(print())); + connect(m_Ui->filePrintPreview, SIGNAL(triggered()), this, SLOT(printPreview())); + connect(m_Ui->fileExit, SIGNAL(triggered()), this, SLOT(close())); + connect(m_Ui->editFind, SIGNAL(triggered()), this, SLOT(find())); + connect(m_Ui->editFindNext, SIGNAL(triggered()), this, SLOT(findNext())); + connect(m_Ui->editFindPrev, SIGNAL(triggered()), this, SLOT(findPrevious())); + connect(m_Ui->viewContents, SIGNAL(triggered()), this, SLOT(viewContents_clicked())); + connect(m_Ui->viewSearch, SIGNAL(triggered()), this, SLOT(viewSearch_clicked())); + connect(m_Ui->viewBookmarks, SIGNAL(triggered()), this, SLOT(viewBookmarks_clicked())); + connect(m_Ui->bookAdd, SIGNAL(triggered()), this, SLOT(bookmarkButton_clicked())); + connect(m_Ui->bookDel, SIGNAL(triggered()), this, SLOT(deleteBookmarkButton_clicked())); + connect(m_Ui->bookDelAll, SIGNAL(triggered()), this, SLOT(deleteAllBookmarkButton_clicked())); + connect(m_Ui->goHome, SIGNAL(triggered()), m_Ui->htmlPage, SLOT(home())); + connect(m_Ui->goBack, SIGNAL(triggered()), m_Ui->htmlPage, SLOT(back())); + connect(m_Ui->goFwd, SIGNAL(triggered()), m_Ui->htmlPage, SLOT(forward())); + connect(m_Ui->zoomIn, SIGNAL(triggered()), this, SLOT(zoomIn_clicked())); + connect(m_Ui->zoomOriginal, SIGNAL(triggered()), this, SLOT(zoomOriginal_clicked())); + connect(m_Ui->zoomOut, SIGNAL(triggered()), this, SLOT(zoomOut_clicked())); + connect(histMenu, SIGNAL(triggered(QAction*)), this, SLOT(histChosen(QAction*))); + // searching connect(helpSideBar->m_Ui->searchingEdit, SIGNAL(returnPressed()), this, SLOT(searchingButton_clicked())); connect(helpSideBar->m_Ui->searchingButton, SIGNAL(clicked()), this, SLOT(searchingButton_clicked())); connect(helpSideBar->m_Ui->searchingView, SIGNAL(itemClicked( QTreeWidgetItem *, int)), this, SLOT(itemSearchSelected(QTreeWidgetItem *, int))); - // bookmarks + // bookmarks connect(helpSideBar->m_Ui->bookmarkButton, SIGNAL(clicked()), this, SLOT(bookmarkButton_clicked())); connect(helpSideBar->m_Ui->deleteBookmarkButton, SIGNAL(clicked()), this, SLOT(deleteBookmarkButton_clicked())); connect(helpSideBar->m_Ui->deleteAllBookmarkButton, SIGNAL(clicked()), this, SLOT(deleteAllBookmarkButton_clicked())); connect(helpSideBar->m_Ui->bookmarksView, SIGNAL(itemClicked( QTreeWidgetItem *, int)), this, SLOT(itemBookmarkSelected(QTreeWidgetItem *, int))); - // links hoover + // links hoover connect(m_Ui->htmlPage, SIGNAL(overLink(const QString &)), this, SLOT(showLinkContents(const QString &))); - - languageChange(); + + languageChange(); } void HelpBrowser::showLinkContents(const QString &link) { - statusBar()->showMessage(link); + statusBar()->showMessage(link); } void HelpBrowser::changeEvent(QEvent *e) { - if (e->type() == QEvent::LanguageChange) - { - languageChange(); - } - QWidget::changeEvent(e); + if (e->type() == QEvent::LanguageChange) + { + languageChange(); + } + QWidget::changeEvent(e); } void HelpBrowser::languageChange() { - setWindowTitle( tr( "LuminanceHDR Online Help" ) ); - - m_Ui->fileMenu->setTitle(tr("&File")); - m_Ui->editMenu->setTitle(tr("&Edit")); - m_Ui->viewMenu->setTitle(tr("&View")); - m_Ui->bookMenu->setTitle(tr("&Bookmarks")); - - m_Ui->filePrint->setText(tr("&Print...")); - m_Ui->fileExit->setText(tr("&Quit")); - m_Ui->editFind->setText(tr("&Find...")); - m_Ui->editFindNext->setText(tr("Find &Next")); - m_Ui->editFindPrev->setText(tr("Find &Previous")); - m_Ui->viewContents->setText(tr("&Contents")); - m_Ui->viewSearch->setText(tr("&Search")); - m_Ui->viewBookmarks->setText(tr("&Bookmarks")); - m_Ui->bookAdd->setText(tr("&Add Bookmark")); - m_Ui->bookDel->setText(tr("&Delete")); - m_Ui->bookDelAll->setText(tr("D&elete All")); + setWindowTitle( tr( "LuminanceHDR Online Help" ) ); + + m_Ui->fileMenu->setTitle(tr("&File")); + m_Ui->editMenu->setTitle(tr("&Edit")); + m_Ui->viewMenu->setTitle(tr("&View")); + m_Ui->bookMenu->setTitle(tr("&Bookmarks")); + + m_Ui->filePrint->setText(tr("&Print...")); + m_Ui->fileExit->setText(tr("&Quit")); + m_Ui->editFind->setText(tr("&Find...")); + m_Ui->editFindNext->setText(tr("Find &Next")); + m_Ui->editFindPrev->setText(tr("Find &Previous")); + m_Ui->viewContents->setText(tr("&Contents")); + m_Ui->viewSearch->setText(tr("&Search")); + m_Ui->viewBookmarks->setText(tr("&Bookmarks")); + m_Ui->bookAdd->setText(tr("&Add Bookmark")); + m_Ui->bookDel->setText(tr("&Delete")); + m_Ui->bookDelAll->setText(tr("D&elete All")); m_Ui->retranslateUi(this); } void HelpBrowser::print() { + /* TODO With this method images aren't loaded so I'm passing the html page to a QTextBrowser + m_Ui->htmlPage->page()->toHtml([this](const QString &result){ + this->m_textBrowser->setHtml(result); + this->printAvailable(); + }); + */ + m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); this->printAvailable(); } void HelpBrowser::printAvailable() { - QPrinter printer; - printer.setFullPage(true); - QPrintDialog dialog(&printer, this); - if (dialog.exec()) + QPrinter printer; + printer.setFullPage(true); + QPrintDialog dialog(&printer, this); + if (dialog.exec()) { - m_Ui->htmlPage->print(&printer); + m_textBrowser->print(&printer); } } void HelpBrowser::printPreview() { + /* TODO With this method images aren't loaded so I'm passing the html page to a QTextBrowser + m_Ui->htmlPage->page()->toHtml([this](const QString &result){ + this->m_textBrowser->setHtml(result); + this->printPreviewAvailable(); + }); + */ + m_textBrowser->setSource(m_Ui->htmlPage->page()->url()); this->printPreviewAvailable(); } void HelpBrowser::printPreviewAvailable() { - QPrinter printer; - printer.setFullPage(true); - QPrintPreviewDialog dialog(&printer, this); + QPrinter printer; + printer.setFullPage(true); + QPrintPreviewDialog dialog(&printer, this); connect(&dialog, SIGNAL(paintRequested(QPrinter *)), this, SLOT(paintRequested(QPrinter *))); - dialog.exec(); + dialog.exec(); } void HelpBrowser::paintRequested(QPrinter *printer) { - m_Ui->htmlPage->print(printer); + m_textBrowser->print(printer); } void HelpBrowser::searchingButton_clicked() { - // root files - QApplication::changeOverrideCursor(QCursor(Qt::WaitCursor)); - searchingInDirectory(finalBaseDir); - QApplication::restoreOverrideCursor(); + // root files + QApplication::changeOverrideCursor(QCursor(Qt::WaitCursor)); + searchingInDirectory(finalBaseDir); + QApplication::restoreOverrideCursor(); } void HelpBrowser::searchingInDirectory(const QString& aDir) { - QDir dir(QDir::toNativeSeparators(aDir + "/")); - QStringList in; - in.append("*.html"); - QStringList lst = dir.entryList(in); - for (QStringList::Iterator it = lst.begin(); it != lst.end(); ++it) - { - QString fname(aDir + "/" + (*it)); - QFile f(fname); - if (f.open(QIODevice::ReadOnly)) - { - QTextStream stream(&f); - QString str = stream.readAll(); + QDir dir(QDir::toNativeSeparators(aDir + "/")); + QStringList in; + in.append("*.html"); + QStringList lst = dir.entryList(in); + for (QStringList::Iterator it = lst.begin(); it != lst.end(); ++it) + { + QString fname(aDir + "/" + (*it)); + QFile f(fname); + if (f.open(QIODevice::ReadOnly)) + { + QTextStream stream(&f); + QString str = stream.readAll(); int cnt = str.count(helpSideBar->m_Ui->searchingEdit->text(), Qt::CaseInsensitive); - if (cnt > 0) - { - QString fullname = fname; - QString toFind(fname.remove(finalBaseDir + "/")); - QMapIterator i(quickHelpIndex); - while (i.hasNext()) - { - i.next(); - if (i.value()==toFind) + if (cnt > 0) + { + QString fullname = fname; + QString toFind(fname.remove(finalBaseDir + "/")); + QMapIterator i(quickHelpIndex); + while (i.hasNext()) + { + i.next(); + if (i.value()==toFind) helpSideBar->m_Ui->searchingView->addTopLevelItem(new QTreeWidgetItem(helpSideBar->m_Ui->searchingView, QStringList() << i.key())); - } - } - f.close(); - } - } - // get dirs - ugly recursion - in.clear(); - in.append("*"); - QStringList dst = dir.entryList(in, QDir::Dirs); - for (QStringList::Iterator it = dst.begin(); it != dst.end(); ++it) - if ((*it)!="." && (*it)!="..") - searchingInDirectory(QDir::toNativeSeparators(aDir + QString((*it)) + "/")); + } + } + f.close(); + } + } + // get dirs - ugly recursion + in.clear(); + in.append("*"); + QStringList dst = dir.entryList(in, QDir::Dirs); + for (QStringList::Iterator it = dst.begin(); it != dst.end(); ++it) + if ((*it)!="." && (*it)!="..") + searchingInDirectory(QDir::toNativeSeparators(aDir + QString((*it)) + "/")); } void HelpBrowser::find() { - findText = QInputDialog::getText( this, tr("Find"), tr("Search Term:"), QLineEdit::Normal, findText, 0); - if (findText.isNull()) - return; - findNext(); + findText = QInputDialog::getText( this, tr("Find"), tr("Search Term:"), QLineEdit::Normal, findText, 0); + if (findText.isNull()) + return; + findNext(); } void HelpBrowser::findNext() { - if (findText.isNull()) - { - find(); - return; - } - // find it. finally + if (findText.isNull()) + { + find(); + return; + } + // find it. finally m_Ui->htmlPage->findText(findText, 0); } void HelpBrowser::findPrevious() { - if (findText.isNull()) - { - find(); - return; - } - // find it. finally + if (findText.isNull()) + { + find(); + return; + } + // find it. finally m_Ui->htmlPage->findText(findText); } @@ -460,150 +476,150 @@ { QString title = m_Ui->htmlPage->title(); QString fname(QDir::cleanPath(m_Ui->htmlPage->url().toLocalFile())); - title = QInputDialog::getText(this, tr("New Bookmark"), tr("New Bookmark's Title:"), QLineEdit::Normal, title, 0); - // user cancel - if (title.isNull()) - return; - //TODO: start storing full paths - QString toFind(fname.remove(finalBaseDir)); - toFind=toFind.mid(1, toFind.length()-1); - QMapIterator i(quickHelpIndex); + title = QInputDialog::getText(this, tr("New Bookmark"), tr("New Bookmark's Title:"), QLineEdit::Normal, title, 0); + // user cancel + if (title.isNull()) + return; + //TODO: start storing full paths + QString toFind(fname.remove(finalBaseDir)); + toFind=toFind.mid(1, toFind.length()-1); + QMapIterator i(quickHelpIndex); while (i.hasNext()) - { - i.next(); - if (i.value()==toFind) - { - bookmarkIndex.insert(title, qMakePair(i.key(), i.value())); + { + i.next(); + if (i.value()==toFind) + { + bookmarkIndex.insert(title, qMakePair(i.key(), i.value())); helpSideBar->m_Ui->bookmarksView->addTopLevelItem(new QTreeWidgetItem(helpSideBar->m_Ui->bookmarksView, QStringList() << title)); - } - } + } + } } void HelpBrowser::deleteBookmarkButton_clicked() { QTreeWidgetItem *twi = helpSideBar->m_Ui->bookmarksView->currentItem(); - if (twi!=NULL) - { - if (bookmarkIndex.contains(twi->text(0))) - bookmarkIndex.remove(twi->text(0)); - delete twi; - } + if (twi!=NULL) + { + if (bookmarkIndex.contains(twi->text(0))) + bookmarkIndex.remove(twi->text(0)); + delete twi; + } } void HelpBrowser::deleteAllBookmarkButton_clicked() { - bookmarkIndex.clear(); + bookmarkIndex.clear(); helpSideBar->m_Ui->bookmarksView->clear(); } void HelpBrowser::histChosen(QAction* i) { - if (mHistory.contains(i)) + if (mHistory.contains(i)) m_Ui->htmlPage->load( QUrl::fromLocalFile(mHistory[i].url) ); } void HelpBrowser::jumpToHelpSection(const QString& jumpToSection, const QString& jumpToFile) { - QString toLoad; - bool noDocs=false; + QString toLoad; + bool noDocs=false; - if (jumpToFile.isEmpty()) - { - toLoad = finalBaseDir + "/"; //clean this later to handle 5 char locales - if (jumpToSection.isEmpty()) - { - QModelIndex index=menuModel->index(0,1); - if (index.isValid()) - { + if (jumpToFile.isEmpty()) + { + toLoad = finalBaseDir + "/"; //clean this later to handle 5 char locales + if (jumpToSection.isEmpty()) + { + QModelIndex index=menuModel->index(0,1); + if (index.isValid()) + { helpSideBar->m_Ui->listView->selectionModel()->select(index, QItemSelectionModel::ClearAndSelect); - toLoad += menuModel->data(index, Qt::DisplayRole).toString(); + toLoad += menuModel->data(index, Qt::DisplayRole).toString(); //qDebug("jumpToHelpSection %c / %c", finalBaseDir, menuModel->data(index, Qt::DisplayRole).toString()); - } - else - noDocs=true; - } - } - else - toLoad=jumpToFile; - - if (!noDocs) - loadHelp(toLoad); - else - displayNoHelp(); + } + else + noDocs=true; + } + } + else + toLoad=jumpToFile; + + if (!noDocs) + loadHelp(toLoad); + else + displayNoHelp(); } void HelpBrowser::loadHelp(const QString& filename) { - struct histd2 his; - bool Avail = true; - QString toLoad; - QFileInfo fi; - fi = QFileInfo(filename); - if (fi.fileName().length()>0) - { - if (fi.exists()) - toLoad=filename; - else - { - toLoad = LuminancePaths::HelpDir() + "index.html"; - language="en"; + struct histd2 his; + bool Avail = true; + QString toLoad; + QFileInfo fi; + fi = QFileInfo(filename); + if (fi.fileName().length()>0) + { + if (fi.exists()) + toLoad=filename; + else + { + toLoad = LuminancePaths::HelpDir() + "index.html"; + language="en"; //qDebug("Help index: %c", toLoad); - fi = QFileInfo(toLoad); - if (!fi.exists()) - { - displayNoHelp(); - Avail = false; - } - } - } - else - Avail=false; - if (Avail) - { + fi = QFileInfo(toLoad); + if (!fi.exists()) + { + displayNoHelp(); + Avail = false; + } + } + } + else + Avail=false; + if (Avail) + { m_Ui->htmlPage->load( QUrl::fromLocalFile(toLoad) ); //m_Ui->htmlPage->page()->setBackgroundColor(QColor(25, 25, 25)); - + his.title = m_Ui->htmlPage->title(); - if (his.title.isEmpty()) - his.title = toLoad; - his.url = toLoad; - mHistory[histMenu->addAction(his.title)] = his; - } - if (mHistory.count() > 15) - { - QAction* first=histMenu->actions().first(); - mHistory.remove(first); - histMenu->removeAction(first); - } + if (his.title.isEmpty()) + his.title = toLoad; + his.url = toLoad; + mHistory[histMenu->addAction(his.title)] = his; + } + if (mHistory.count() > 15) + { + QAction* first=histMenu->actions().first(); + mHistory.remove(first); + histMenu->removeAction(first); + } } void HelpBrowser::loadMenu() { QString baseHelpDir(LuminancePaths::HelpDir()); - QString baseHelpMenuFile = baseHelpDir + "menu.xml"; - QFileInfo baseFi = QFileInfo(baseHelpMenuFile); - QString toLoad = baseHelpMenuFile; - finalBaseDir=baseFi.path(); + QString baseHelpMenuFile = baseHelpDir + "menu.xml"; + QFileInfo baseFi = QFileInfo(baseHelpMenuFile); + QString toLoad = baseHelpMenuFile; + finalBaseDir=baseFi.path(); if (baseFi.exists()) - { + { if (menuModel!=NULL) - delete menuModel; - menuModel=new ScHelpTreeModel(toLoad, "Topic", "Location", &quickHelpIndex); - + delete menuModel; + menuModel=new ScHelpTreeModel(toLoad, "Topic", "Location", &quickHelpIndex); + helpSideBar->m_Ui->listView->setModel(menuModel); helpSideBar->m_Ui->listView->setSelectionMode(QAbstractItemView::SingleSelection); - QItemSelectionModel *selectionModel = new QItemSelectionModel(menuModel); + QItemSelectionModel *selectionModel = new QItemSelectionModel(menuModel); helpSideBar->m_Ui->listView->setSelectionModel(selectionModel); connect(helpSideBar->m_Ui->listView->selectionModel(), SIGNAL(selectionChanged( const QItemSelection &, const QItemSelection &)), this, SLOT(itemSelected( const QItemSelection &, const QItemSelection &))); - + helpSideBar->m_Ui->listView->setColumnHidden(1,true); - } - else - { + } + else + { //qDebug("Help menu does not exist: %c", baseHelpMenuFile); - menuModel=NULL; - } + menuModel=NULL; + } } void HelpBrowser::readBookmarks() @@ -611,14 +627,14 @@ LuminanceOptions options; QByteArray ba(options.value(KEY_HELP_BOOKMARK).toByteArray()); QBuffer buffer(&ba); - BookmarkParser2 handler; + BookmarkParser2 handler; handler.view = helpSideBar->m_Ui->bookmarksView; - handler.quickHelpIndex=&quickHelpIndex; - handler.bookmarkIndex=&bookmarkIndex; - QXmlInputSource source(&buffer); - QXmlSimpleReader reader; - reader.setContentHandler(&handler); - reader.parse(source); + handler.quickHelpIndex=&quickHelpIndex; + handler.bookmarkIndex=&bookmarkIndex; + QXmlInputSource source(&buffer); + QXmlSimpleReader reader; + reader.setContentHandler(&handler); + reader.parse(source); } void HelpBrowser::setText(const QString& str) @@ -628,73 +644,73 @@ void HelpBrowser::itemSelected(const QItemSelection & selected, const QItemSelection & deselected) { - Q_UNUSED(deselected); + Q_UNUSED(deselected); - QModelIndex index; - QModelIndexList items = selected.indexes(); - int i=0; - foreach (index, items) - { - if (i==1) // skip 0, as this is always the rootitem, even if we are selecting the rootitem. hmm - { - QString filename(menuModel->data(index, Qt::DisplayRole).toString()); - if (!filename.isEmpty()) - { - loadHelp(finalBaseDir + "/" + filename); - } - } - ++i; - } + QModelIndex index; + QModelIndexList items = selected.indexes(); + int i=0; + foreach (index, items) + { + if (i==1) // skip 0, as this is always the rootitem, even if we are selecting the rootitem. hmm + { + QString filename(menuModel->data(index, Qt::DisplayRole).toString()); + if (!filename.isEmpty()) + { + loadHelp(finalBaseDir + "/" + filename); + } + } + ++i; + } } void HelpBrowser::itemSearchSelected(QTreeWidgetItem *twi, int i) { - Q_UNUSED(i); - if (!twi) - return; - if (quickHelpIndex.contains(twi->text(0))) - { - QString filename(quickHelpIndex.value(twi->text(0))); - if (!filename.isEmpty()) - { - loadHelp(finalBaseDir + "/" + filename); + Q_UNUSED(i); + if (!twi) + return; + if (quickHelpIndex.contains(twi->text(0))) + { + QString filename(quickHelpIndex.value(twi->text(0))); + if (!filename.isEmpty()) + { + loadHelp(finalBaseDir + "/" + filename); findText = helpSideBar->m_Ui->searchingEdit->text(); - findNext(); - } - } + findNext(); + } + } } void HelpBrowser::itemBookmarkSelected(QTreeWidgetItem *twi, int i) { - Q_UNUSED(i); - if (!twi) - return; - if (bookmarkIndex.contains(twi->text(0))) - { - QString filename(bookmarkIndex.value(twi->text(0)).second); - if (!filename.isEmpty()) - loadHelp(finalBaseDir + "/" + filename); - } + Q_UNUSED(i); + if (!twi) + return; + if (bookmarkIndex.contains(twi->text(0))) + { + QString filename(bookmarkIndex.value(twi->text(0)).second); + if (!filename.isEmpty()) + loadHelp(finalBaseDir + "/" + filename); + } } void HelpBrowser::displayNoHelp() { - QString noHelpMsg=tr("

Sorry, no manual is installed!

Please contact your package provider or LuminanceHDR team if you built the application yourself

", "HTML message for no documentation available to show"); + QString noHelpMsg=tr("

Sorry, no manual is installed!

Please contact your package provider or LuminanceHDR team if you built the application yourself

", "HTML message for no documentation available to show"); m_Ui->htmlPage->setHtml(noHelpMsg); - - m_Ui->filePrint->setEnabled(false); - m_Ui->editFind->setEnabled(false); - m_Ui->editFindNext->setEnabled(false); - m_Ui->editFindPrev->setEnabled(false); - m_Ui->bookAdd->setEnabled(false); - m_Ui->bookDel->setEnabled(false); - m_Ui->bookDelAll->setEnabled(false); - m_Ui->goHome->setEnabled(false); - m_Ui->goBack->setEnabled(false); - m_Ui->goFwd->setEnabled(false); - - histMenu->disconnect(); + + m_Ui->filePrint->setEnabled(false); + m_Ui->editFind->setEnabled(false); + m_Ui->editFindNext->setEnabled(false); + m_Ui->editFindPrev->setEnabled(false); + m_Ui->bookAdd->setEnabled(false); + m_Ui->bookDel->setEnabled(false); + m_Ui->bookDelAll->setEnabled(false); + m_Ui->goHome->setEnabled(false); + m_Ui->goBack->setEnabled(false); + m_Ui->goFwd->setEnabled(false); + + histMenu->disconnect(); helpSideBar->m_Ui->searchingEdit->disconnect(); helpSideBar->m_Ui->searchingButton->disconnect(); helpSideBar->m_Ui->searchingView->disconnect(); @@ -721,58 +737,58 @@ } void HelpBrowser::zoomIn_clicked() { - zoomFactor *= 1.2; - if (zoomFactor > 46) - zoomFactor = 46.005; + zoomFactor *= 1.2; + if (zoomFactor > 46) + zoomFactor = 46.005; m_Ui->htmlPage->setZoomFactor(zoomFactor); } void HelpBrowser::zoomOriginal_clicked() { - zoomFactor = 1.0; + zoomFactor = 1.0; m_Ui->htmlPage->setZoomFactor(1.0); } void HelpBrowser::zoomOut_clicked() { - zoomFactor /= 1.2; - if (zoomFactor < .02) - zoomFactor = .0217; + zoomFactor /= 1.2; + if (zoomFactor < .02) + zoomFactor = .0217; m_Ui->htmlPage->setZoomFactor(zoomFactor); } void HelpBrowser::handleExternalLink(const QUrl &url) { //TODO: Check whether handling these protocol internally has now been fixed in Windows - if ((url.scheme() == "http") || url.scheme() == "https") { + if ((url.scheme() == "http") || url.scheme() == "https") { /* #ifdef WIN32 - QDesktopServices::openUrl(url); + QDesktopServices::openUrl(url); #else */ m_Ui->htmlPage->load(url); //#endif - } - else { - QApplication::restoreOverrideCursor(); - if ( QMessageBox::warning(this, tr("LuminanceHDR - Help Browser"), - tr("This protocol is not handled by the help browser.\n" - "Do you want to open the link with the default application \n" - "associated with the protocol?"), - QMessageBox::Yes | QMessageBox::No, QMessageBox::No) == QMessageBox::Yes - ) { - - QDesktopServices::openUrl(url); - } - } + } + else { + QApplication::restoreOverrideCursor(); + if ( QMessageBox::warning(this, tr("LuminanceHDR - Help Browser"), + tr("This protocol is not handled by the help browser.\n" + "Do you want to open the link with the default application \n" + "associated with the protocol?"), + QMessageBox::Yes | QMessageBox::No, QMessageBox::No) == QMessageBox::Yes + ) { + + QDesktopServices::openUrl(url); + } + } } void HelpBrowser::loadStarted() { - QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); + QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); } void HelpBrowser::loadFinished(bool) { - QApplication::restoreOverrideCursor(); - statusBar()->showMessage(""); + QApplication::restoreOverrideCursor(); + statusBar()->showMessage(""); } -void HelpBrowser::linkHovered (const QString &url, const QString &, const QString &) { - statusBar()->showMessage(url); +void HelpBrowser::linkHovered (const QString &url) { + statusBar()->showMessage(url); } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.h luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.h --- luminance-hdr-2.5.0/src/HelpBrowser/helpbrowser.h 2017-04-18 18:27:47.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/helpbrowser.h 2017-05-10 19:14:06.000000000 +0000 @@ -64,6 +64,8 @@ #include #include #include +//#include +#include class ScHelpTreeModel; class QPrinter; @@ -75,8 +77,8 @@ //! \brief A structure holding title/file url reference. struct histd2 { - QString url; - QString title; + QString url; + QString title; }; namespace Ui { @@ -88,130 +90,134 @@ Q_OBJECT public: - explicit HelpBrowser(QWidget* parent); - HelpBrowser(QWidget* parent, const QString& caption, const QString& guiLangage="en", const QString& jumpToSection="", const QString& jumpToFile=""); - ~HelpBrowser(); - - - /*! \brief History menu. It's public because of history reader - separate class */ - QMenu* histMenu; - /*! \brief Mapping the documents for history. */ - QMap mHistory; - /*! \brief Set text to the browser - \param str a QString with text (html) */ - void setText(const QString& str); - + explicit HelpBrowser(QWidget* parent); + HelpBrowser(QWidget* parent, const QString& caption, const QString& guiLangage="en", const QString& jumpToSection="", const QString& jumpToFile=""); + ~HelpBrowser(); + + + /*! \brief History menu. It's public because of history reader - separate class */ + QMenu* histMenu; + /*! \brief Mapping the documents for history. */ + QMap mHistory; + /*! \brief Set text to the browser + \param str a QString with text (html) */ + void setText(const QString& str); + protected: - virtual void changeEvent(QEvent* e); - void closeEvent(QCloseEvent * event); + virtual void changeEvent(QEvent* e); + void closeEvent(QCloseEvent * event); - void setupLocalUI(); - /*! \brief Reads saved bookmarks from external file */ - void readBookmarks(); - /*! \brief Search in doc files in spec. dir. - It uses directory-recursion. I hope that the documentation will have - only 2-3 level dir structure so it doesn't matter. - \author Petr Vanek */ - void searchingInDirectory(const QString&); - - /*! \brief Tell the user there is no help available */ - void displayNoHelp(); - - HelpSideBar *helpSideBar; - qreal zoomFactor; - //! \brief Selected language is here. If there is no docs for this language, "en" is used. - QString language; - //! \brief QString holding location of menu.xml we are using, we load the help files from here - QString finalBaseDir; - /*! \brief Text to be found in document */ - QString findText; - - ScHelpTreeModel* menuModel; - QMap quickHelpIndex; - QMap > bookmarkIndex; + void setupLocalUI(); + /*! \brief Reads saved bookmarks from external file */ + void readBookmarks(); + /*! \brief Search in doc files in spec. dir. + It uses directory-recursion. I hope that the documentation will have + only 2-3 level dir structure so it doesn't matter. + \author Petr Vanek */ + void searchingInDirectory(const QString&); + + /*! \brief Tell the user there is no help available */ + void displayNoHelp(); + + HelpSideBar *helpSideBar; + qreal zoomFactor; + //! \brief Selected language is here. If there is no docs for this language, "en" is used. + QString language; + //! \brief QString holding location of menu.xml we are using, we load the help files from here + QString finalBaseDir; + /*! \brief Text to be found in document */ + QString findText; + + ScHelpTreeModel* menuModel; + QMap quickHelpIndex; + QMap > bookmarkIndex; + + // I need to keep this around because page()->toHtml( ) is asynchronous + //QSharedPointer m_textDocument; + QSharedPointer m_textBrowser; protected slots: - virtual void languageChange(); - void histChosen(QAction* i); - void jumpToHelpSection(const QString& jumpToSection, const QString& jumpToFile=""); - void loadHelp(const QString& filename); - void loadMenu(); - void showLinkContents(const QString &link); - - /*! \brief Load doc file when user select filename in content view. */ - void itemSelected(const QItemSelection & selected, const QItemSelection & deselected); - - /*! \brief Load doc file when user select filename in search view. */ - void itemSearchSelected(QTreeWidgetItem *, int); - - /*! \brief Load doc file when user select filename in bookmark view. */ - void itemBookmarkSelected(QTreeWidgetItem *, int); - - /*! \brief Performs searching in documentation. - It walks through installed documentation and searching in all text files - \author Petr Vanek */ - void searchingButton_clicked(); - - /*! \brief Find text in one document. - Classical ctrl+f searching. - \author Petr Vanek */ - void find(); - - /*! \brief Find next occurences of the text in one document. - \author Petr Vanek */ - void findNext(); - - /*! \brief Find previous occurences of the text in one document. - \author Petr Vanek */ - void findPrevious(); - - /*! \brief Print the documentation. */ - void print(); - void printAvailable(); - - /*! \brief Preview the documentation before printing. */ - void printPreview(); - void printPreviewAvailable(); + virtual void languageChange(); + void histChosen(QAction* i); + void jumpToHelpSection(const QString& jumpToSection, const QString& jumpToFile=""); + void loadHelp(const QString& filename); + void loadMenu(); + void showLinkContents(const QString &link); + + /*! \brief Load doc file when user select filename in content view. */ + void itemSelected(const QItemSelection & selected, const QItemSelection & deselected); + + /*! \brief Load doc file when user select filename in search view. */ + void itemSearchSelected(QTreeWidgetItem *, int); + + /*! \brief Load doc file when user select filename in bookmark view. */ + void itemBookmarkSelected(QTreeWidgetItem *, int); + + /*! \brief Performs searching in documentation. + It walks through installed documentation and searching in all text files + \author Petr Vanek */ + void searchingButton_clicked(); + + /*! \brief Find text in one document. + Classical ctrl+f searching. + \author Petr Vanek */ + void find(); + + /*! \brief Find next occurences of the text in one document. + \author Petr Vanek */ + void findNext(); + + /*! \brief Find previous occurences of the text in one document. + \author Petr Vanek */ + void findPrevious(); + + /*! \brief Print the documentation. */ + void print(); + void printAvailable(); + + /*! \brief Preview the documentation before printing. */ + void printPreview(); + void printPreviewAvailable(); void paintRequested(QPrinter *printer); - /*! \brief Add document into bookmarks. */ - void bookmarkButton_clicked(); + /*! \brief Add document into bookmarks. */ + void bookmarkButton_clicked(); + + /*! \brief Delete selected document from bookmarks. */ + void deleteBookmarkButton_clicked(); + + /*! \brief Delete all bookmarks */ + void deleteAllBookmarkButton_clicked(); + + /*! \brief Show helpSideBar Contents Tab */ + void viewContents_clicked(); + + /*! \brief Show helpSideBar Search Tab */ + void viewSearch_clicked(); + + /*! \brief Show helpSideBar Bookmarks */ + void viewBookmarks_clicked(); + + /*! \brief zoom In */ + void zoomIn_clicked(); + + /*! \brief zoom Original Size */ + void zoomOriginal_clicked(); + + /*! \brief zoom Out*/ + void zoomOut_clicked(); - /*! \brief Delete selected document from bookmarks. */ - void deleteBookmarkButton_clicked(); + /*! \brief User clicked on an external link */ + void handleExternalLink(const QUrl &); - /*! \brief Delete all bookmarks */ - void deleteAllBookmarkButton_clicked(); + /*! \brief Show Wait Cursor while loading a page*/ + void loadStarted(); - /*! \brief Show helpSideBar Contents Tab */ - void viewContents_clicked(); - - /*! \brief Show helpSideBar Search Tab */ - void viewSearch_clicked(); - - /*! \brief Show helpSideBar Bookmarks */ - void viewBookmarks_clicked(); - - /*! \brief zoom In */ - void zoomIn_clicked(); - - /*! \brief zoom Original Size */ - void zoomOriginal_clicked(); - - /*! \brief zoom Out*/ - void zoomOut_clicked(); - - /*! \brief User clicked on an external link */ - void handleExternalLink(const QUrl &); - - /*! \brief Show Wait Cursor while loading a page*/ - void loadStarted(); - - /*! \brief Restore Default Cursor */ - void loadFinished(bool); - void linkHovered (const QString &, const QString &, const QString &); + /*! \brief Restore Default Cursor */ + void loadFinished(bool); + void linkHovered (const QString &); signals: - void closed(); + void closed(); protected: QScopedPointer m_Ui; diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/HelpSideBar.cpp luminance-hdr-2.5.1/src/HelpBrowser/HelpSideBar.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/HelpSideBar.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/HelpSideBar.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -36,7 +36,7 @@ void HelpSideBar::changeEvent(QEvent *event) { - if (event->type() == QEvent::LanguageChange) + if (event->type() == QEvent::LanguageChange) m_Ui->retranslateUi(this); - QWidget::changeEvent(event); + QWidget::changeEvent(event); } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/HelpSideBar.h luminance-hdr-2.5.1/src/HelpBrowser/HelpSideBar.h --- luminance-hdr-2.5.0/src/HelpBrowser/HelpSideBar.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/HelpSideBar.h 2017-05-10 19:14:06.000000000 +0000 @@ -35,10 +35,10 @@ Q_OBJECT public: - HelpSideBar(const QString &title, QWidget *parent = 0, Qt::WindowFlags flags = 0); - ~HelpSideBar(); + HelpSideBar(const QString &title, QWidget *parent = 0, Qt::WindowFlags flags = 0); + ~HelpSideBar(); protected: - virtual void changeEvent(QEvent* event); + virtual void changeEvent(QEvent* event); public: QScopedPointer m_Ui; diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/LuminancePaths.cpp luminance-hdr-2.5.1/src/HelpBrowser/LuminancePaths.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/LuminancePaths.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/LuminancePaths.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -34,9 +34,9 @@ LuminancePaths *LuminancePaths::instance = 0; LuminancePaths * LuminancePaths::getThis() { - if(!instance) - instance = new LuminancePaths; - return instance; + if(!instance) + instance = new LuminancePaths; + return instance; } namespace { @@ -63,33 +63,33 @@ QString hf = LocalizedDirPath(HELPDIR + dirsep); #endif - getThis()->LuminancePathsDB["HelpDir"] = hf; + getThis()->LuminancePathsDB["HelpDir"] = hf; return hf; } QString LuminancePaths::LocalizedDirPath(const QString & base, const QString& fallback ) -{ - QString sep("_"); - QStringList l_c(QLocale::system().name().split(sep)); - QString langcode( l_c.first() ); - QString countrycode(l_c.last()); - - QStringList names; - if((!langcode.isEmpty()) || (!countrycode.isEmpty())) - { - names << base + langcode + sep + countrycode ; - names << base + langcode ; - } - names << base + fallback ; - names << base ; - - foreach(QString t, names) - { - QDir d(t); - if( d.exists() ) - return d.absolutePath() + QString(QDir::separator()) ; - } - - return QString(); +{ + QString sep("_"); + QStringList l_c(QLocale::system().name().split(sep)); + QString langcode( l_c.first() ); + QString countrycode(l_c.last()); + + QStringList names; + if((!langcode.isEmpty()) || (!countrycode.isEmpty())) + { + names << base + langcode + sep + countrycode ; + names << base + langcode ; + } + names << base + fallback ; + names << base ; + + foreach(QString t, names) + { + QDir d(t); + if( d.exists() ) + return d.absolutePath() + QString(QDir::separator()) ; + } + + return QString(); } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/LuminancePaths.h luminance-hdr-2.5.1/src/HelpBrowser/LuminancePaths.h --- luminance-hdr-2.5.0/src/HelpBrowser/LuminancePaths.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/LuminancePaths.h 2017-05-10 19:14:06.000000000 +0000 @@ -36,13 +36,13 @@ class LuminancePaths { - QMap LuminancePathsDB; - LuminancePaths() {} - static LuminancePaths *instance; - static LuminancePaths *getThis(); - - public: - static QString HelpDir(); - static QString LocalizedDirPath(const QString& base, const QString& fallback = QString("en")); + QMap LuminancePathsDB; + LuminancePaths() {} + static LuminancePaths *instance; + static LuminancePaths *getThis(); + + public: + static QString HelpDir(); + static QString LocalizedDirPath(const QString& base, const QString& fallback = QString("en")); }; #endif diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/schelptreemodel.cpp luminance-hdr-2.5.1/src/HelpBrowser/schelptreemodel.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/schelptreemodel.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/schelptreemodel.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -42,169 +42,169 @@ ScHelpTreeModel::ScHelpTreeModel(const QString &dataFile, const QString &col1name, const QString &col2name, QMap* indexToBuild, QObject *parent) : TreeModel(parent) { - QList rootData; - rootData << col1name << col2name; - rootItem = new TreeItem(rootData); - if (!dataFile.isEmpty()) - setupModelData(dataFile, rootItem, indexToBuild); + QList rootData; + rootData << col1name << col2name; + rootItem = new TreeItem(rootData); + if (!dataFile.isEmpty()) + setupModelData(dataFile, rootItem, indexToBuild); } void ScHelpTreeModel::setupModelData(const QString &dataFile, TreeItem *parent, QMap* indexToBuild) { - QFile file( dataFile ); - if ( !file.open( QIODevice::ReadOnly ) ) - return; - QDomDocument doc( "menuentries" ); - if ( !doc.setContent( &file ) ) - { - file.close(); - return; - } - file.close(); - - QList parents; - QList indentations; - parents << parent; - indentations << 0; - QDomElement docElem = doc.documentElement(); - QDomNode n = docElem.firstChild(); -// bool haveTutorials=false; - QList columnData; - int position=0; - while( !n.isNull() ) - { - QDomElement e = n.toElement(); // try to convert the node to an element. - if( !e.isNull() ) - { - if (e.hasAttribute( "text" ) && e.hasAttribute( "file" )) - { - QDomAttr textAttr = e.attributeNode( "text" ); - QDomAttr fileAttr = e.attributeNode( "file" ); - columnData.clear(); - columnData << textAttr.value() << fileAttr.value(); - if (position > indentations.last()) - { - // The last child of the current parent is now the new parent - // unless the current parent has no children. - - if (parents.last()->childCount() > 0) - { - parents << parents.last()->child(parents.last()->childCount()-1); - indentations << position; - } - } - else - { - while (position < indentations.last() && parents.count() > 0) { - parents.pop_back(); - indentations.pop_back(); - } - } - // Append a new item to the current parent's list of children. - parents.last()->appendChild(new TreeItem(columnData, parents.last())); - if (indexToBuild) - indexToBuild->insert(textAttr.value(), fileAttr.value()); - } - - QDomNodeList nl=n.childNodes(); - if (nl.count()>0) - position=1; - for(int i=0 ; i<= nl.count() ; i++) - { - QDomNode child=nl.item(i); - if (child.isElement()) - { - QDomElement ec = child.toElement(); - if (!ec.isNull()) - { - if (ec.hasAttribute( "text" ) && ec.hasAttribute( "file" )) - { - QDomAttr textAttr = ec.attributeNode( "text" ); - QDomAttr fileAttr = ec.attributeNode( "file" ); - columnData.clear(); - columnData << textAttr.value() << fileAttr.value(); - if (position > indentations.last()) - { - // The last child of the current parent is now the new parent - // unless the current parent has no children. + QFile file( dataFile ); + if ( !file.open( QIODevice::ReadOnly ) ) + return; + QDomDocument doc( "menuentries" ); + if ( !doc.setContent( &file ) ) + { + file.close(); + return; + } + file.close(); + + QList parents; + QList indentations; + parents << parent; + indentations << 0; + QDomElement docElem = doc.documentElement(); + QDomNode n = docElem.firstChild(); +// bool haveTutorials=false; + QList columnData; + int position=0; + while( !n.isNull() ) + { + QDomElement e = n.toElement(); // try to convert the node to an element. + if( !e.isNull() ) + { + if (e.hasAttribute( "text" ) && e.hasAttribute( "file" )) + { + QDomAttr textAttr = e.attributeNode( "text" ); + QDomAttr fileAttr = e.attributeNode( "file" ); + columnData.clear(); + columnData << textAttr.value() << fileAttr.value(); + if (position > indentations.last()) + { + // The last child of the current parent is now the new parent + // unless the current parent has no children. + + if (parents.last()->childCount() > 0) + { + parents << parents.last()->child(parents.last()->childCount()-1); + indentations << position; + } + } + else + { + while (position < indentations.last() && parents.count() > 0) { + parents.pop_back(); + indentations.pop_back(); + } + } + // Append a new item to the current parent's list of children. + parents.last()->appendChild(new TreeItem(columnData, parents.last())); + if (indexToBuild) + indexToBuild->insert(textAttr.value(), fileAttr.value()); + } + + QDomNodeList nl=n.childNodes(); + if (nl.count()>0) + position=1; + for(int i=0 ; i<= nl.count() ; i++) + { + QDomNode child=nl.item(i); + if (child.isElement()) + { + QDomElement ec = child.toElement(); + if (!ec.isNull()) + { + if (ec.hasAttribute( "text" ) && ec.hasAttribute( "file" )) + { + QDomAttr textAttr = ec.attributeNode( "text" ); + QDomAttr fileAttr = ec.attributeNode( "file" ); + columnData.clear(); + columnData << textAttr.value() << fileAttr.value(); + if (position > indentations.last()) + { + // The last child of the current parent is now the new parent + // unless the current parent has no children. if (parents.last()->childCount() > 0) - { - parents << parents.last()->child(parents.last()->childCount()-1); - indentations << position; - } - } - else - { - while (position < indentations.last() && parents.count() > 0) { - parents.pop_back(); - indentations.pop_back(); - } - } - // Append a new item to the current parent's list of children. - parents.last()->appendChild(new TreeItem(columnData, parents.last())); - if (indexToBuild) - indexToBuild->insert(textAttr.value(), fileAttr.value()); - } - //3rd level - QDomNodeList nl2=child.childNodes(); - if (nl2.count()>0) - position=2; - for(int i2=0 ; i2<= nl2.count() ; i2++) - { - QDomNode childchild=nl2.item(i2); - if (childchild.isElement()) - { - QDomElement ecc = childchild.toElement(); - if (!ecc.isNull()) - { - QDomAttr textAttr = ecc.attributeNode( "text" ); - QDomAttr fileAttr = ecc.attributeNode( "file" ); - columnData.clear(); - columnData << textAttr.value() << fileAttr.value(); - if (position > indentations.last()) - { - // The last child of the current parent is now the new parent - // unless the current parent has no children. - - if (parents.last()->childCount() > 0) - { - parents << parents.last()->child(parents.last()->childCount()-1); - indentations << position; - } - } - else - { - while (position < indentations.last() && parents.count() > 0) { - parents.pop_back(); - indentations.pop_back(); - } - } - // Append a new item to the current parent's list of children. - parents.last()->appendChild(new TreeItem(columnData, parents.last())); - if (indexToBuild) - indexToBuild->insert(textAttr.value(), fileAttr.value()); - } - } - } - position=1; - } - } - } - position=0; - } - n = n.nextSibling(); - } + { + parents << parents.last()->child(parents.last()->childCount()-1); + indentations << position; + } + } + else + { + while (position < indentations.last() && parents.count() > 0) { + parents.pop_back(); + indentations.pop_back(); + } + } + // Append a new item to the current parent's list of children. + parents.last()->appendChild(new TreeItem(columnData, parents.last())); + if (indexToBuild) + indexToBuild->insert(textAttr.value(), fileAttr.value()); + } + //3rd level + QDomNodeList nl2=child.childNodes(); + if (nl2.count()>0) + position=2; + for(int i2=0 ; i2<= nl2.count() ; i2++) + { + QDomNode childchild=nl2.item(i2); + if (childchild.isElement()) + { + QDomElement ecc = childchild.toElement(); + if (!ecc.isNull()) + { + QDomAttr textAttr = ecc.attributeNode( "text" ); + QDomAttr fileAttr = ecc.attributeNode( "file" ); + columnData.clear(); + columnData << textAttr.value() << fileAttr.value(); + if (position > indentations.last()) + { + // The last child of the current parent is now the new parent + // unless the current parent has no children. + + if (parents.last()->childCount() > 0) + { + parents << parents.last()->child(parents.last()->childCount()-1); + indentations << position; + } + } + else + { + while (position < indentations.last() && parents.count() > 0) { + parents.pop_back(); + indentations.pop_back(); + } + } + // Append a new item to the current parent's list of children. + parents.last()->appendChild(new TreeItem(columnData, parents.last())); + if (indexToBuild) + indexToBuild->insert(textAttr.value(), fileAttr.value()); + } + } + } + position=1; + } + } + } + position=0; + } + n = n.nextSibling(); + } } void ScHelpTreeModel::addRow(const QString& s1, const QString& s2, int /*i*/) { - QList parents; - QList indentations; - parents << rootItem; - if (parents.last()->childCount() > 0) - parents << parents.last()->child(parents.last()->childCount()-1); - QList columnData; - columnData << s1 << s2;// << i; - parents.last()->appendChild(new TreeItem(columnData, parents.last())); + QList parents; + QList indentations; + parents << rootItem; + if (parents.last()->childCount() > 0) + parents << parents.last()->child(parents.last()->childCount()-1); + QList columnData; + columnData << s1 << s2;// << i; + parents.last()->appendChild(new TreeItem(columnData, parents.last())); } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/schelptreemodel.h luminance-hdr-2.5.1/src/HelpBrowser/schelptreemodel.h --- luminance-hdr-2.5.0/src/HelpBrowser/schelptreemodel.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/schelptreemodel.h 2017-05-10 19:14:06.000000000 +0000 @@ -39,16 +39,16 @@ class ScHelpTreeModel : public TreeModel { -// Q_OBJECT +// Q_OBJECT public: - ScHelpTreeModel(const QString &dataFile, const QString &col1name, const QString &col2name, QMap* indexToBuild, QObject *parent = 0); - ~ScHelpTreeModel() {}; + ScHelpTreeModel(const QString &dataFile, const QString &col1name, const QString &col2name, QMap* indexToBuild, QObject *parent = 0); + ~ScHelpTreeModel() {}; - void addRow(const QString&, const QString&, int i); + void addRow(const QString&, const QString&, int i); private: - void setupModelData(const QString &dataFile, TreeItem *parent, QMap* indexToBuild); + void setupModelData(const QString &dataFile, TreeItem *parent, QMap* indexToBuild); }; diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.cpp luminance-hdr-2.5.1/src/HelpBrowser/sctextbrowser.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.cpp 2017-04-18 18:27:47.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/sctextbrowser.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,13 +1,13 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2001–2013 Franz Schmid and rest of the members of the * Scribus Team. * The "Scribus Team" is informally defined as the following people: Franz * Schmid, Peter Linnell, Craig Bradney, Jean Ghali, Hermann Kraus, Riku * Leino, Oleksandr M oskalenko, Christoph Schäfer, Petr VanÄ›k, Andreas * Vox, and Jain Basil. - * + * * This program 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 2 of the License, or @@ -57,12 +57,12 @@ #include "sctextbrowser.h" ScTextBrowser::ScTextBrowser( QWidget * parent ) - : QWebView(parent) + : QWebEngineView(parent) { } void ScTextBrowser::home() { - if(m_home.isValid()) - load(m_home); + if(m_home.isValid()) + load(m_home); } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.h luminance-hdr-2.5.1/src/HelpBrowser/sctextbrowser.h --- luminance-hdr-2.5.0/src/HelpBrowser/sctextbrowser.h 2017-04-18 18:27:47.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/sctextbrowser.h 2017-05-10 19:14:06.000000000 +0000 @@ -45,21 +45,21 @@ #define SCTEXTBROWSER_H #include -#include +#include -class ScTextBrowser : public QWebView +class ScTextBrowser : public QWebEngineView { - Q_OBJECT - QUrl m_home; - public: - explicit ScTextBrowser( QWidget * parent = 0 ); - void setHome(const QUrl& h){m_home = h;} - - signals: - void overLink(const QString &link); - - public slots: - void home(); + Q_OBJECT + QUrl m_home; + public: + explicit ScTextBrowser( QWidget * parent = 0 ); + void setHome(const QUrl& h){m_home = h;} + + signals: + void overLink(const QString &link); + + public slots: + void home(); }; diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/treeitem.cpp luminance-hdr-2.5.1/src/HelpBrowser/treeitem.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/treeitem.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/treeitem.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -38,49 +38,49 @@ TreeItem::TreeItem ( const QList &data, TreeItem *parent ) { - parentItem = parent; - itemData = data; + parentItem = parent; + itemData = data; } TreeItem::~TreeItem() { - qDeleteAll ( childItems ); + qDeleteAll ( childItems ); } void TreeItem::appendChild ( TreeItem *item ) { - childItems.append ( item ); + childItems.append ( item ); } TreeItem *TreeItem::child ( int row ) { - return childItems.value ( row ); + return childItems.value ( row ); } int TreeItem::childCount() const { - return childItems.count(); + return childItems.count(); } int TreeItem::columnCount() const { - return itemData.count(); + return itemData.count(); } QVariant TreeItem::data ( int column ) const { - return itemData.value ( column ); + return itemData.value ( column ); } TreeItem *TreeItem::parent() { - return parentItem; + return parentItem; } int TreeItem::row() const { - if ( parentItem ) - return parentItem->childItems.indexOf ( const_cast ( this ) ); + if ( parentItem ) + return parentItem->childItems.indexOf ( const_cast ( this ) ); - return 0; + return 0; } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/treeitem.h luminance-hdr-2.5.1/src/HelpBrowser/treeitem.h --- luminance-hdr-2.5.0/src/HelpBrowser/treeitem.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/treeitem.h 2017-05-10 19:14:06.000000000 +0000 @@ -34,23 +34,23 @@ class TreeItem { - public: - TreeItem ( const QList &data, TreeItem *parent = 0 ); - ~TreeItem(); + public: + TreeItem ( const QList &data, TreeItem *parent = 0 ); + ~TreeItem(); - void appendChild ( TreeItem *child ); + void appendChild ( TreeItem *child ); - TreeItem *child ( int row ); - int childCount() const; - int columnCount() const; - QVariant data ( int column ) const; - int row() const; - TreeItem *parent(); + TreeItem *child ( int row ); + int childCount() const; + int columnCount() const; + QVariant data ( int column ) const; + int row() const; + TreeItem *parent(); - private: - QList childItems; - QList itemData; - TreeItem *parentItem; + private: + QList childItems; + QList itemData; + TreeItem *parentItem; }; #endif diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/treemodel.cpp luminance-hdr-2.5.1/src/HelpBrowser/treemodel.cpp --- luminance-hdr-2.5.0/src/HelpBrowser/treemodel.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/treemodel.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -39,153 +39,153 @@ #include "treemodel.h" TreeModel::TreeModel ( const QString &data, QObject *parent ) - : QAbstractItemModel ( parent ) + : QAbstractItemModel ( parent ) { - QList rootData; - rootData << "Title" << "Summary"; - rootItem = new TreeItem ( rootData ); - setupModelData ( data.split ( QString ( "\n" ) ), rootItem ); + QList rootData; + rootData << "Title" << "Summary"; + rootItem = new TreeItem ( rootData ); + setupModelData ( data.split ( QString ( "\n" ) ), rootItem ); } TreeModel::~TreeModel() { - delete rootItem; + delete rootItem; } int TreeModel::columnCount ( const QModelIndex &parent ) const { - if ( parent.isValid() ) - return static_cast ( parent.internalPointer() )->columnCount(); - else - return rootItem->columnCount(); + if ( parent.isValid() ) + return static_cast ( parent.internalPointer() )->columnCount(); + else + return rootItem->columnCount(); } QVariant TreeModel::data ( const QModelIndex &index, int role ) const { - if ( !index.isValid() ) - return QVariant(); + if ( !index.isValid() ) + return QVariant(); - if ( role != Qt::DisplayRole ) - return QVariant(); + if ( role != Qt::DisplayRole ) + return QVariant(); - TreeItem *item = static_cast ( index.internalPointer() ); + TreeItem *item = static_cast ( index.internalPointer() ); - return item->data ( index.column() ); + return item->data ( index.column() ); } Qt::ItemFlags TreeModel::flags ( const QModelIndex &index ) const { - if ( !index.isValid() ) - return Qt::ItemIsEnabled; + if ( !index.isValid() ) + return Qt::ItemIsEnabled; - return Qt::ItemIsEnabled | Qt::ItemIsSelectable; + return Qt::ItemIsEnabled | Qt::ItemIsSelectable; } QVariant TreeModel::headerData ( int section, Qt::Orientation orientation, int role ) const { - if ( orientation == Qt::Horizontal && role == Qt::DisplayRole ) - return rootItem->data ( section ); + if ( orientation == Qt::Horizontal && role == Qt::DisplayRole ) + return rootItem->data ( section ); - return QVariant(); + return QVariant(); } QModelIndex TreeModel::index ( int row, int column, const QModelIndex &parent ) const { - TreeItem *parentItem; + TreeItem *parentItem; - if ( !parent.isValid() ) - parentItem = rootItem; - else - parentItem = static_cast ( parent.internalPointer() ); - - TreeItem *childItem = parentItem->child ( row ); - if ( childItem ) - return createIndex ( row, column, childItem ); - else - return QModelIndex(); + if ( !parent.isValid() ) + parentItem = rootItem; + else + parentItem = static_cast ( parent.internalPointer() ); + + TreeItem *childItem = parentItem->child ( row ); + if ( childItem ) + return createIndex ( row, column, childItem ); + else + return QModelIndex(); } QModelIndex TreeModel::parent ( const QModelIndex &index ) const { - if ( !index.isValid() ) - return QModelIndex(); + if ( !index.isValid() ) + return QModelIndex(); - TreeItem *childItem = static_cast ( index.internalPointer() ); - TreeItem *parentItem = childItem->parent(); + TreeItem *childItem = static_cast ( index.internalPointer() ); + TreeItem *parentItem = childItem->parent(); - if ( parentItem == rootItem ) - return QModelIndex(); + if ( parentItem == rootItem ) + return QModelIndex(); - return createIndex ( parentItem->row(), 0, parentItem ); + return createIndex ( parentItem->row(), 0, parentItem ); } int TreeModel::rowCount ( const QModelIndex &parent ) const { - TreeItem *parentItem; + TreeItem *parentItem; - if ( !parent.isValid() ) - parentItem = rootItem; - else - parentItem = static_cast ( parent.internalPointer() ); + if ( !parent.isValid() ) + parentItem = rootItem; + else + parentItem = static_cast ( parent.internalPointer() ); - return parentItem->childCount(); + return parentItem->childCount(); } void TreeModel::setupModelData ( const QStringList &lines, TreeItem *parent ) { - QList parents; - QList indentations; - parents << parent; - indentations << 0; - - int number = 0; - - while ( number < lines.count() ) - { - int position = 0; - while ( position < lines[number].length() ) - { - if ( lines[number].mid ( position, 1 ) != " " ) - break; - position++; - } - - QString lineData = lines[number].mid ( position ).trimmed(); - - if ( !lineData.isEmpty() ) - { - // Read the column data from the rest of the line. - QStringList columnStrings = lineData.split ( "\t", QString::SkipEmptyParts ); - QList columnData; - for ( int column = 0; column < columnStrings.count(); ++column ) - columnData << columnStrings[column]; - - if ( position > indentations.last() ) - { - // The last child of the current parent is now the new parent - // unless the current parent has no children. - - if ( parents.last()->childCount() > 0 ) - { - parents << parents.last()->child ( parents.last()->childCount()-1 ); - indentations << position; - } - } - else - { - while ( position < indentations.last() && parents.count() > 0 ) - { - parents.pop_back(); - indentations.pop_back(); - } - } - - // Append a new item to the current parent's list of children. - parents.last()->appendChild ( new TreeItem ( columnData, parents.last() ) ); - } + QList parents; + QList indentations; + parents << parent; + indentations << 0; + + int number = 0; + + while ( number < lines.count() ) + { + int position = 0; + while ( position < lines[number].length() ) + { + if ( lines[number].mid ( position, 1 ) != " " ) + break; + position++; + } + + QString lineData = lines[number].mid ( position ).trimmed(); + + if ( !lineData.isEmpty() ) + { + // Read the column data from the rest of the line. + QStringList columnStrings = lineData.split ( "\t", QString::SkipEmptyParts ); + QList columnData; + for ( int column = 0; column < columnStrings.count(); ++column ) + columnData << columnStrings[column]; + + if ( position > indentations.last() ) + { + // The last child of the current parent is now the new parent + // unless the current parent has no children. + + if ( parents.last()->childCount() > 0 ) + { + parents << parents.last()->child ( parents.last()->childCount()-1 ); + indentations << position; + } + } + else + { + while ( position < indentations.last() && parents.count() > 0 ) + { + parents.pop_back(); + indentations.pop_back(); + } + } + + // Append a new item to the current parent's list of children. + parents.last()->appendChild ( new TreeItem ( columnData, parents.last() ) ); + } - number++; - } + number++; + } } diff -Nru luminance-hdr-2.5.0/src/HelpBrowser/treemodel.h luminance-hdr-2.5.1/src/HelpBrowser/treemodel.h --- luminance-hdr-2.5.0/src/HelpBrowser/treemodel.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/HelpBrowser/treemodel.h 2017-05-10 19:14:06.000000000 +0000 @@ -37,27 +37,27 @@ class TreeModel : public QAbstractItemModel { -// Q_OBJECT +// Q_OBJECT - public: - TreeModel ( const QString &data, QObject *parent = 0 ); - explicit TreeModel ( QObject * /*parent = 0*/ ) : rootItem(NULL) {}; //CB Added for ScHelpTreeModel - ~TreeModel(); - - QVariant data ( const QModelIndex &index, int role ) const; - Qt::ItemFlags flags ( const QModelIndex &index ) const; - QVariant headerData ( int section, Qt::Orientation orientation, - int role = Qt::DisplayRole ) const; - QModelIndex index ( int row, int column, - const QModelIndex &parent = QModelIndex() ) const; - QModelIndex parent ( const QModelIndex &index ) const; - int rowCount ( const QModelIndex &parent = QModelIndex() ) const; - int columnCount ( const QModelIndex &parent = QModelIndex() ) const; + public: + TreeModel ( const QString &data, QObject *parent = 0 ); + explicit TreeModel ( QObject * /*parent = 0*/ ) : rootItem(NULL) {}; //CB Added for ScHelpTreeModel + ~TreeModel(); + + QVariant data ( const QModelIndex &index, int role ) const; + Qt::ItemFlags flags ( const QModelIndex &index ) const; + QVariant headerData ( int section, Qt::Orientation orientation, + int role = Qt::DisplayRole ) const; + QModelIndex index ( int row, int column, + const QModelIndex &parent = QModelIndex() ) const; + QModelIndex parent ( const QModelIndex &index ) const; + int rowCount ( const QModelIndex &parent = QModelIndex() ) const; + int columnCount ( const QModelIndex &parent = QModelIndex() ) const; - protected: - void setupModelData ( const QStringList &lines, TreeItem *parent ); + protected: + void setupModelData ( const QStringList &lines, TreeItem *parent ); - TreeItem *rootItem; + TreeItem *rootItem; }; #endif diff -Nru luminance-hdr-2.5.0/src/Libpfs/array2d.h luminance-hdr-2.5.1/src/Libpfs/array2d.h --- luminance-hdr-2.5.0/src/Libpfs/array2d.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/array2d.h 2017-05-10 19:14:06.000000000 +0000 @@ -37,7 +37,7 @@ //! most likely, not compatible namespace pfs -{ +{ //! //! \brief Two dimensional array of data //! diff -Nru luminance-hdr-2.5.0/src/Libpfs/channel.h luminance-hdr-2.5.1/src/Libpfs/channel.h --- luminance-hdr-2.5.0/src/Libpfs/channel.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/channel.h 2017-05-10 19:14:06.000000000 +0000 @@ -23,7 +23,7 @@ //! \brief PFS library - PFS Channel //! \author Rafal Mantiuk, //! \author Davide Anastasia - + #ifndef PFS_CHANNEL_H #define PFS_CHANNEL_H diff -Nru luminance-hdr-2.5.0/src/Libpfs/colorspace/colorspace.cpp luminance-hdr-2.5.1/src/Libpfs/colorspace/colorspace.cpp --- luminance-hdr-2.5.0/src/Libpfs/colorspace/colorspace.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/colorspace/colorspace.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -2,9 +2,9 @@ * @brief PFS library - color space transformations * * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either @@ -18,8 +18,8 @@ * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * @author Davide Anastasia (2010 10 13) @@ -180,7 +180,7 @@ v = 9.f*y / (-2.f*x + 12.f*y + 3.f); outY = Y; } - + } void transformYuv2XYZ( const Array2Df *inC1, const Array2Df *inC2, const Array2Df *inC3, @@ -249,7 +249,7 @@ outY = Y; } } - + typedef void (*CSTransformFunc)(const Array2Df *inC1, const Array2Df *inC2, const Array2Df *inC3, Array2Df *outC1, Array2Df *outC2, Array2Df *outC3 ); typedef std::pair CSTransformProfile; @@ -263,13 +263,13 @@ inC3->getCols() == outC1->getCols() && outC1->getCols() == outC2->getCols() && outC2->getCols() == outC3->getCols() ); - + assert( inC1->getRows() == inC2->getRows() && inC2->getRows() == inC3->getRows() && inC3->getRows() == outC1->getRows() && outC1->getRows() == outC2->getRows() && outC2->getRows() == outC3->getRows() ); - + // static dictionary... I already know in advance the subscription I want // to perform, hence this approach is far easier than try to create // automatic subscription to the factory diff -Nru luminance-hdr-2.5.0/src/Libpfs/colorspace/colorspace.h luminance-hdr-2.5.1/src/Libpfs/colorspace/colorspace.h --- luminance-hdr-2.5.0/src/Libpfs/colorspace/colorspace.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/colorspace/colorspace.h 2017-05-10 19:14:06.000000000 +0000 @@ -2,10 +2,10 @@ * @brief PFS library - color space transformations * * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2010-2013 Davide Anastasia - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either @@ -19,8 +19,8 @@ * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * @author Davide Anastasia (2010 10 13) diff -Nru luminance-hdr-2.5.0/src/Libpfs/frame.cpp luminance-hdr-2.5.1/src/Libpfs/frame.cpp --- luminance-hdr-2.5.0/src/Libpfs/frame.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/frame.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -36,7 +36,7 @@ using namespace std; namespace pfs -{ +{ Frame::Frame(size_t width, size_t height ) : m_width( width ) , m_height( height ) diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/exrreader.h luminance-hdr-2.5.1/src/Libpfs/io/exrreader.h --- luminance-hdr-2.5.0/src/Libpfs/io/exrreader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/exrreader.h 2017-05-10 19:14:06.000000000 +0000 @@ -38,7 +38,6 @@ void close(); void open(); void read(Frame &frame, const Params ¶ms); - int getBitDepth() const { return 20; } protected: class EXRReaderData; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/exrwriter.cpp luminance-hdr-2.5.1/src/Libpfs/io/exrwriter.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/exrwriter.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/exrwriter.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -94,21 +94,21 @@ Slice( FLOAT, // type (char*)R->data(), // base sizeof(float) * 1, // xStride - sizeof(float) * frame.getWidth()) ); // yStride + sizeof(float) * frame.getWidth()) ); // yStride header.channels().insert("G", Imf::Channel(FLOAT)); frameBuffer.insert("G", // name Slice( FLOAT, // type (char*)G->data(), // base sizeof(float) * 1, // xStride - sizeof(float) * frame.getWidth()) ); // yStride + sizeof(float) * frame.getWidth()) ); // yStride header.channels().insert("B", Imf::Channel(FLOAT)); frameBuffer.insert("B", // name Slice( FLOAT, // type (char*)B->data(), // base sizeof(float) * 1, // xStride - sizeof(float) * frame.getWidth()) ); // yStride + sizeof(float) * frame.getWidth()) ); // yStride OutputFile file(filename().c_str(), header); file.setFrameBuffer(frameBuffer); diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/fitsreader.h luminance-hdr-2.5.1/src/Libpfs/io/fitsreader.h --- luminance-hdr-2.5.0/src/Libpfs/io/fitsreader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/fitsreader.h 2017-05-10 19:14:06.000000000 +0000 @@ -53,7 +53,6 @@ void open(); void close(); void read(Frame &frame, const Params &); - int getBitDepth() const { return 20; } private: std::unique_ptr m_data; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/framereader.h luminance-hdr-2.5.1/src/Libpfs/io/framereader.h --- luminance-hdr-2.5.0/src/Libpfs/io/framereader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/framereader.h 2017-05-10 19:14:06.000000000 +0000 @@ -53,7 +53,6 @@ virtual bool isOpen() const = 0; virtual void close() = 0; virtual void read(pfs::Frame& frame, const pfs::Params& params); - virtual int getBitDepth() const = 0; protected: void setWidth(size_t width) { m_width = width; } diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/framewriterfactory.cpp luminance-hdr-2.5.1/src/Libpfs/io/framewriterfactory.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/framewriterfactory.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/framewriterfactory.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -33,17 +33,17 @@ FrameWriterPtr FrameWriterFactory::open(const std::string& filename, const pfs::Params& params) { string ext = getFormat(filename); - std::string content; - if (params.get("format", content)) { - if (!content.empty()) - { - FrameWriterCreatorMap::const_iterator it = sm_registry.find(content); - if (it != sm_registry.end()) - { - return (it->second)(filename); - } - } - } + std::string content; + if (params.get("format", content)) { + if (!content.empty()) + { + FrameWriterCreatorMap::const_iterator it = sm_registry.find(content); + if (it != sm_registry.end()) + { + return (it->second)(filename); + } + } + } if ( !ext.empty() ) { FrameWriterCreatorMap::const_iterator it = sm_registry.find(ext); diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/framewriterfactory.h luminance-hdr-2.5.1/src/Libpfs/io/framewriterfactory.h --- luminance-hdr-2.5.0/src/Libpfs/io/framewriterfactory.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/framewriterfactory.h 2017-05-10 19:14:06.000000000 +0000 @@ -39,7 +39,7 @@ typedef FrameWriterPtr (*FrameWriterCreator)(const std::string& filename); typedef std::map FrameWriterCreatorMap; - static FrameWriterPtr open(const std::string& filename, const pfs::Params& params); + static FrameWriterPtr open(const std::string& filename, const pfs::Params& params); static void registerFormat(const std::string& format, FrameWriterCreator creator); static size_t numRegisteredFormats(); diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/jpegreader.cpp luminance-hdr-2.5.1/src/Libpfs/io/jpegreader.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/jpegreader.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/jpegreader.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -49,9 +49,9 @@ // // -#define ICC_MARKER (JPEG_APP0 + 2) /* JPEG marker code for ICC */ -#define ICC_OVERHEAD_LEN 14 /* size of non-profile data in APP2 */ -#define MAX_BYTES_IN_MARKER 65533 /* maximum data len of a JPEG marker */ +#define ICC_MARKER (JPEG_APP0 + 2) /* JPEG marker code for ICC */ +#define ICC_OVERHEAD_LEN 14 /* size of non-profile data in APP2 */ +#define MAX_BYTES_IN_MARKER 65533 /* maximum data len of a JPEG marker */ #define MAX_DATA_BYTES_IN_MARKER (MAX_BYTES_IN_MARKER - ICC_OVERHEAD_LEN) @@ -96,11 +96,11 @@ JOCTET *icc_data; unsigned int total_length; #define MAX_SEQ_NO 255 /* sufficient since marker numbers are bytes */ - char marker_present[MAX_SEQ_NO+1]; /* 1 if marker found */ + char marker_present[MAX_SEQ_NO+1]; /* 1 if marker found */ unsigned int data_length[MAX_SEQ_NO+1]; /* size of profile data in marker */ unsigned int data_offset[MAX_SEQ_NO+1]; /* offset for data in marker */ - *icc_data_ptr = NULL; /* avoid confusion if false return */ + *icc_data_ptr = NULL; /* avoid confusion if false return */ *icc_data_len = 0; /* This first pass over the saved markers discovers whether there are @@ -116,16 +116,16 @@ num_markers = GETJOCTET(marker->data[13]); else if (num_markers != GETJOCTET(marker->data[13])) { PRINT_DEBUG("inconsistent num_markers fields"); - return false; /* inconsistent num_markers fields */ + return false; /* inconsistent num_markers fields */ } seq_no = GETJOCTET(marker->data[12]); if (seq_no <= 0 || seq_no > num_markers) { PRINT_DEBUG("bogus sequence number"); - return false; /* bogus sequence number */ + return false; /* bogus sequence number */ } if (marker_present[seq_no]) { PRINT_DEBUG("duplicate sequence numbers"); - return false; /* duplicate sequence numbers */ + return false; /* duplicate sequence numbers */ } marker_present[seq_no] = 1; data_length[seq_no] = marker->data_length - ICC_OVERHEAD_LEN; @@ -145,7 +145,7 @@ for (seq_no = 1; seq_no <= num_markers; seq_no++) { if (marker_present[seq_no] == 0) { PRINT_DEBUG("missing sequence number"); - return false; /* missing sequence number */ + return false; /* missing sequence number */ } data_offset[seq_no] = total_length; total_length += data_length[seq_no]; @@ -154,13 +154,13 @@ //if (total_length <= 0) { // total_length is unsigned if (total_length == 0) { PRINT_DEBUG("found only empty markers?"); - return false; /* found only empty markers? */ + return false; /* found only empty markers? */ } /* Allocate space for assembled data */ icc_data = (JOCTET *) malloc(total_length * sizeof(JOCTET)); if (icc_data == NULL) - return false; /* oops, out of memory */ + return false; /* oops, out of memory */ /* and fill it in */ for (marker = cinfo->marker_list; marker != NULL; marker = marker->next) { @@ -192,7 +192,7 @@ static void my_error_handler(j_common_ptr cinfo) { - char buffer[JMSG_LENGTH_MAX]; + char buffer[JMSG_LENGTH_MAX]; (*cinfo->err->format_message)(cinfo, buffer); throw pfs::io::ReadException( std::string(buffer) ); } @@ -200,7 +200,7 @@ static void my_output_message(j_common_ptr cinfo) { - char buffer[JMSG_LENGTH_MAX]; + char buffer[JMSG_LENGTH_MAX]; (*cinfo->err->format_message)(cinfo, buffer); throw pfs::io::ReadException( std::string(buffer) ); } diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/jpegreader.h luminance-hdr-2.5.1/src/Libpfs/io/jpegreader.h --- luminance-hdr-2.5.0/src/Libpfs/io/jpegreader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/jpegreader.h 2017-05-10 19:14:06.000000000 +0000 @@ -45,7 +45,6 @@ bool isOpen() const; void close(); void read(Frame &frame, const Params ¶ms); - int getBitDepth() const { return 8; } private: struct JpegReaderData; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/jpegwriter.cpp luminance-hdr-2.5.1/src/Libpfs/io/jpegwriter.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/jpegwriter.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/jpegwriter.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -57,17 +57,17 @@ // (64K), we need provisions to split it into multiple markers. The format // defined by the ICC specifies one or more APP2 markers containing the // following data: -// Identifying string ASCII "ICC_PROFILE\0" (12 bytes) -// Marker sequence number 1 for first APP2, 2 for next, etc (1 byte) -// Number of markers Total number of APP2's used (1 byte) -// Profile data (remainder of APP2 data) +// Identifying string ASCII "ICC_PROFILE\0" (12 bytes) +// Marker sequence number 1 for first APP2, 2 for next, etc (1 byte) +// Number of markers Total number of APP2's used (1 byte) +// Profile data (remainder of APP2 data) // Decoders should use the marker sequence numbers to reassemble the profile, // rather than assuming that the APP2 markers appear in the correct sequence. // -#define ICC_MARKER (JPEG_APP0 + 2) /* JPEG marker code for ICC */ -#define ICC_OVERHEAD_LEN 14 /* size of non-profile data in APP2 */ -#define MAX_BYTES_IN_MARKER 65533 /* maximum data len of a JPEG marker */ +#define ICC_MARKER (JPEG_APP0 + 2) /* JPEG marker code for ICC */ +#define ICC_OVERHEAD_LEN 14 /* size of non-profile data in APP2 */ +#define MAX_BYTES_IN_MARKER 65533 /* maximum data len of a JPEG marker */ #define MAX_DATA_BYTES_IN_MARKER (MAX_BYTES_IN_MARKER - ICC_OVERHEAD_LEN) @@ -81,9 +81,9 @@ void write_icc_profile (j_compress_ptr cinfo, const JOCTET *icc_data_ptr, unsigned int icc_data_len) { - unsigned int num_markers; // total number of markers we'll write + unsigned int num_markers; // total number of markers we'll write int cur_marker = 1; // per spec, counting starts at 1 - unsigned int length; // number of bytes to write in this marker + unsigned int length; // number of bytes to write in this marker // Calculate the number of markers we'll need, rounding up of course num_markers = icc_data_len / MAX_DATA_BYTES_IN_MARKER; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/pfsreader.h luminance-hdr-2.5.1/src/Libpfs/io/pfsreader.h --- luminance-hdr-2.5.0/src/Libpfs/io/pfsreader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/pfsreader.h 2017-05-10 19:14:06.000000000 +0000 @@ -48,7 +48,6 @@ void open(); void close(); void read(pfs::Frame &frame, const pfs::Params &); - int getBitDepth() const { return 20; } private: utils::ScopedStdIoFile m_file; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/pngwriter.cpp luminance-hdr-2.5.1/src/Libpfs/io/pngwriter.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/pngwriter.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/pngwriter.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -4,19 +4,19 @@ * Copyright (C) 2012 Franco Comida * Copyright (C) 2013 Davide Anastasia * - * This program 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 2 of the License, or - * (at your option) any later version. + * This program 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 2 of the License, or + * (at your option) any later version. * - * This program 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. + * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ---------------------------------------------------------------------- */ diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/pngwriter.h luminance-hdr-2.5.1/src/Libpfs/io/pngwriter.h --- luminance-hdr-2.5.0/src/Libpfs/io/pngwriter.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/pngwriter.h 2017-05-10 19:14:06.000000000 +0000 @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ //! \author Franco Comida @@ -52,7 +52,7 @@ bool write(const pfs::Frame& frame, const pfs::Params& params); size_t getFileSize() const; - + private: std::unique_ptr m_impl; }; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/rawreader.cpp luminance-hdr-2.5.1/src/Libpfs/io/rawreader.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/rawreader.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/rawreader.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -54,9 +54,9 @@ * are my own and should be taken with a grain of salt. */ static const double XYZ_to_RGB[3][3] = { - { 3.24071, -0.969258, 0.0556352 }, - {-1.53726, 1.87599, -0.203996 }, - {-0.498571, 0.0415557, 1.05707 } }; + { 3.24071, -0.969258, 0.0556352 }, + {-1.53726, 1.87599, -0.203996 }, + {-0.498571, 0.0415557, 1.05707 } }; static void temperatureToRGB(double T, double RGB[3]) diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/rawreader.h luminance-hdr-2.5.1/src/Libpfs/io/rawreader.h --- luminance-hdr-2.5.0/src/Libpfs/io/rawreader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/rawreader.h 2017-05-10 19:14:06.000000000 +0000 @@ -52,7 +52,6 @@ void close(); void read(Frame &frame, const Params ¶ms); - int getBitDepth() const { return 12; } private: LibRaw m_processor; diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/rgbereader.cpp luminance-hdr-2.5.1/src/Libpfs/io/rgbereader.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/rgbereader.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/rgbereader.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -39,7 +39,7 @@ void rgbe2rgb(const Trgbe_pixel& rgbe, float exposure, float &r, float &g, float &b) { - if ( rgbe.e != 0 ) // a non-zero pixel + if ( rgbe.e != 0 ) // a non-zero pixel { int e = rgbe.e - int(128+8); double f = ldexp( 1.0, e ) * WHITE_EFFICACY / exposure; @@ -198,8 +198,8 @@ size_t rez = fread(scanline.data()+4, sizeof(Trgbe), 4*width-4, file); if ( rez != (size_t)4*width-4 ) { - // DEBUG_STR << "RGBE: scanline " << y - // << "(" << (int)rez << "/" << width << ")" <handle(), TIFFTAG_COMPRESSION, &m_data->compressionType_)) { + if (!TIFFGetField(m_data->handle(), TIFFTAG_COMPRESSION, &m_data->compressionType_)) { m_data->compressionType_ = COMPRESSION_NONE; } // photometric type @@ -521,6 +521,5 @@ FrameReader::read(frame, params); } -int TiffReader::getBitDepth() const { return (m_data->bitsPerSample_ <= 16) ? m_data->bitsPerSample_ : 20; } } // io } // pfs diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/tiffreader.h luminance-hdr-2.5.1/src/Libpfs/io/tiffreader.h --- luminance-hdr-2.5.0/src/Libpfs/io/tiffreader.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/tiffreader.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ #ifndef PFS_IO_TIFFREADER_H @@ -43,7 +43,6 @@ void open(); bool isOpen() const; void close(); - int getBitDepth() const; void read(Frame &frame, const Params ¶ms); diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/tiffwriter.cpp luminance-hdr-2.5.1/src/Libpfs/io/tiffwriter.cpp --- luminance-hdr-2.5.0/src/Libpfs/io/tiffwriter.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/tiffwriter.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -150,7 +150,7 @@ { utils::ScopedCmsProfile hsRGB( cmsCreate_sRGBProfile() ); cmsUInt32Number profileSize = 0; - cmsSaveProfileToMem(hsRGB.data(), NULL, &profileSize); // get the size + cmsSaveProfileToMem(hsRGB.data(), NULL, &profileSize); // get the size std::vector embedBuffer(profileSize); @@ -181,8 +181,8 @@ writeCommonHeader(tif, width, height); writeSRGBProfile(tif); - if (params.deflateCompression_) - TIFFSetField(tif, TIFFTAG_COMPRESSION, COMPRESSION_DEFLATE); + if (params.deflateCompression_) + TIFFSetField(tif, TIFFTAG_COMPRESSION, COMPRESSION_DEFLATE); TIFFSetField(tif, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_RGB); TIFFSetField(tif, TIFFTAG_SAMPLEFORMAT, SAMPLEFORMAT_UINT); TIFFSetField(tif, TIFFTAG_BITSPERSAMPLE, (uint16_t)8*(uint16_t)sizeof(uint8_t)); @@ -375,7 +375,7 @@ TIFFSetField(tif, TIFFTAG_BITSPERSAMPLE, (uint16_t)8*(uint16_t)sizeof(float)); TIFFSetField(tif, TIFFTAG_SAMPLESPERPIXEL, (uint16_t)3); TIFFSetField(tif, TIFFTAG_SGILOGDATAFMT, SGILOGDATAFMT_FLOAT); - TIFFSetField(tif, TIFFTAG_STONITS, 1.); /* not known */ + TIFFSetField(tif, TIFFTAG_STONITS, 1.); /* not known */ tsize_t stripSize = TIFFStripSize(tif); assert( (tsize_t)sizeof(float)*width*3 == stripSize ); diff -Nru luminance-hdr-2.5.0/src/Libpfs/io/tiffwriter.h luminance-hdr-2.5.1/src/Libpfs/io/tiffwriter.h --- luminance-hdr-2.5.0/src/Libpfs/io/tiffwriter.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/io/tiffwriter.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2006 Giuseppe Rota * Copyright (C) 2012-2013 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ //! \brief TIFF facilities diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/copy.cpp luminance-hdr-2.5.1/src/Libpfs/manip/copy.cpp --- luminance-hdr-2.5.0/src/Libpfs/manip/copy.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/copy.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -25,11 +25,13 @@ #include "copy.h" #include "Libpfs/frame.h" +#include "Libpfs/utils/msec_timer.h" #include namespace pfs { +using namespace utils; pfs::Frame *copy(const pfs::Frame *inFrame) { diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/cut.cpp luminance-hdr-2.5.1/src/Libpfs/manip/cut.cpp --- luminance-hdr-2.5.0/src/Libpfs/manip/cut.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/cut.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -50,18 +50,18 @@ msec_timer f_timer; f_timer.start(); #endif - + // ---- Boundary Check! // if (x_ul < 0) x_ul = 0; // if (y_ul < 0) y_ul = 0; if (x_br > inFrame->getWidth()) x_br = inFrame->getWidth(); if (y_br > inFrame->getHeight()) y_br = inFrame->getHeight(); - // ----- - + // ----- + pfs::Frame *outFrame = new pfs::Frame((x_br-x_ul), (y_br-y_ul)); - + const ChannelContainer& channels = inFrame->getChannels(); - + for ( ChannelContainer::const_iterator it = channels.begin(); it != channels.end(); ++it) @@ -73,17 +73,17 @@ cut(inCh, outCh, x_ul, y_ul, x_br, y_br); } - + pfs::copyTags(inFrame, outFrame); - + #ifdef TIMER_PROFILING f_timer.stop_and_update(); std::cout << "pfscut("; std::cout << "[" << x_ul <<", " << y_ul <<"],"; std::cout << "[" << x_br << ", " << y_br <<"]"; std::cout << ") = " << f_timer.get_time() << " msec" << std::endl; -#endif - +#endif + return outFrame; } diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/cut.h luminance-hdr-2.5.1/src/Libpfs/manip/cut.h --- luminance-hdr-2.5.0/src/Libpfs/manip/cut.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/cut.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2009 Franco Comida * Copyrighr (C) 2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/gamma.cpp luminance-hdr-2.5.1/src/Libpfs/manip/gamma.cpp --- luminance-hdr-2.5.0/src/Libpfs/manip/gamma.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/gamma.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ @@ -46,13 +46,13 @@ pfs::Channel *X, *Y, *Z; frame->getXYZChannels( X, Y, Z ); - + applyGamma(X, 1.0f/gamma, multiplier); applyGamma(Y, 1.0f/gamma, multiplier); applyGamma(Z, 1.0f/gamma, multiplier); } - - + + void applyGamma(pfs::Array2Df *array, const float exponent, const float multiplier) { #ifdef TIMER_PROFILING @@ -79,8 +79,8 @@ #ifdef TIMER_PROFILING f_timer.stop_and_update(); std::cout << "applyGamma() = " << f_timer.get_time() << " msec" << std::endl; -#endif +#endif } - + } diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/gamma.h luminance-hdr-2.5.1/src/Libpfs/manip/gamma.h --- luminance-hdr-2.5.0/src/Libpfs/manip/gamma.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/gamma.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ #ifndef PFS_GAMMA_H diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/projection.cpp luminance-hdr-2.5.1/src/Libpfs/manip/projection.cpp --- luminance-hdr-2.5.0/src/Libpfs/manip/projection.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/projection.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -4,7 +4,7 @@ * Copyright (C) 2003-2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2006-2008 Giuseppe Rota * Copyright (C) 2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ @@ -66,7 +66,7 @@ normalize(); } - + double magnitude(void) { return sqrt( x * x + y * y + z * z ); @@ -153,9 +153,9 @@ // TODO: check this function Projection *ProjectionFactory::getProjection(char *name) { - char *opts; - Projection *projection = NULL; - + char *opts; + Projection *projection = NULL; + if( (opts = strchr(name, '/')) ) { *opts++ = '\0'; @@ -172,18 +172,18 @@ projection->setOptions(opts); } - return projection; + return projection; } //FIXME: Lame. Should return an iterator over the names. No time for this now. :/ void ProjectionFactory::listProjectionNames(void) { - map::iterator i = singleton.projections.begin(); + map::iterator i = singleton.projections.begin(); - while(i != singleton.projections.end()) - { - fprintf( stderr, "%s\n", (*i).first.c_str()); - ++i; - } + while(i != singleton.projections.end()) + { + fprintf( stderr, "%s\n", (*i).first.c_str()); + ++i; + } } ///END PROJECTIONFACTORY @@ -534,7 +534,7 @@ const double delta = 1. / transformInfo->oversampleFactor; const double offset = 0.5 / transformInfo->oversampleFactor; const double scaler = 1. / ( transformInfo->oversampleFactor * transformInfo->oversampleFactor ); - + const int outRows = out->getRows(); const int outCols = out->getCols(); diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/projection.h luminance-hdr-2.5.1/src/Libpfs/manip/projection.h --- luminance-hdr-2.5.0/src/Libpfs/manip/projection.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/projection.h 2017-05-10 19:14:06.000000000 +0000 @@ -4,7 +4,7 @@ * Copyright (C) 2003-2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2006-2008 Giuseppe Rota * Copyright (C) 2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ @@ -42,7 +42,7 @@ protected: const char *name; public: - + virtual Vector3D *uvToDirection(double u, double v) = 0; virtual Point2D *directionToUV(Vector3D *direction) = 0; virtual bool isValidPixel(double u, double v) = 0; diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/resize.cpp luminance-hdr-2.5.1/src/Libpfs/manip/resize.cpp --- luminance-hdr-2.5.0/src/Libpfs/manip/resize.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/resize.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,75 +1,75 @@ -/* - * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk - * Copyright (C) 2012 Davide Anastasia - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - */ - -//! \brief Resize images in PFS stream -//! \author Rafal Mantiuk, -//! \author Davide Anastasia - -#include -#include -#include -#include -#include -#include - -#include "resize.h" - -#include "Libpfs/utils/msec_timer.h" - -#include "Libpfs/frame.h" - -namespace pfs -{ - - -Frame* resize(Frame* frame, int xSize) -{ -#ifdef TIMER_PROFILING - msec_timer f_timer; - f_timer.start(); -#endif - - int new_x = xSize; - int new_y = (int)((float)frame->getHeight() * (float)xSize / (float)frame->getWidth()); - - pfs::Frame *resizedFrame = new pfs::Frame( new_x, new_y ); - - const ChannelContainer& channels = frame->getChannels(); - for ( ChannelContainer::const_iterator it = channels.begin(); - it != channels.end(); - ++it) - { - pfs::Channel* newCh = resizedFrame->createChannel( (*it)->getName() ); - - resize(*it, newCh); - } - pfs::copyTags( frame, resizedFrame ); - -#ifdef TIMER_PROFILING - f_timer.stop_and_update(); - std::cout << "resizeFrame() = " << f_timer.get_time() << " msec" << std::endl; -#endif - - return resizedFrame; -} - -} // pfs +/* + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk + * Copyright (C) 2012 Davide Anastasia + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + */ + +//! \brief Resize images in PFS stream +//! \author Rafal Mantiuk, +//! \author Davide Anastasia + +#include +#include +#include +#include +#include +#include + +#include "resize.h" + +#include "Libpfs/utils/msec_timer.h" + +#include "Libpfs/frame.h" + +namespace pfs +{ + + +Frame* resize(Frame* frame, int xSize, InterpolationMethod m) +{ +#ifdef TIMER_PROFILING + msec_timer f_timer; + f_timer.start(); +#endif + + int new_x = xSize; + int new_y = (int)((float)frame->getHeight() * (float)xSize / (float)frame->getWidth()); + + pfs::Frame *resizedFrame = new pfs::Frame( new_x, new_y ); + + const ChannelContainer& channels = frame->getChannels(); + for ( ChannelContainer::const_iterator it = channels.begin(); + it != channels.end(); + ++it) + { + pfs::Channel* newCh = resizedFrame->createChannel( (*it)->getName() ); + + resize(*it, newCh, m); + } + pfs::copyTags( frame, resizedFrame ); + +#ifdef TIMER_PROFILING + f_timer.stop_and_update(); + std::cout << "resizeFrame() = " << f_timer.get_time() << " msec" << std::endl; +#endif + + return resizedFrame; +} + +} // pfs diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/resize.h luminance-hdr-2.5.1/src/Libpfs/manip/resize.h --- luminance-hdr-2.5.0/src/Libpfs/manip/resize.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/resize.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk * Copyright (C) 2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ #ifndef PFS_RESIZE_H @@ -27,21 +27,23 @@ //! \author Rafal Mantiuk, //! \author Davide Anastasia -#include "Libpfs/array2d_fwd.h" +//#include "Libpfs/array2d_fwd.h" +#include "Common/global.h" +#include "Libpfs/array2d.h" namespace pfs { // forward declaration class Frame; -Frame* resize(Frame* frame, int xSize); +Frame* resize(Frame* frame, int xSize, InterpolationMethod m); template -void resize(const Array2D *from, Array2D *to); +void resize(const Array2D *from, Array2D *to, InterpolationMethod m); template -void resize(const Array2D& from, Array2D& to) { - resize(&from, &to); +void resize(const Array2D& from, Array2D& to, InterpolationMethod m) { + resize(&from, &to, m); } } diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/resize.hxx luminance-hdr-2.5.1/src/Libpfs/manip/resize.hxx --- luminance-hdr-2.5.0/src/Libpfs/manip/resize.hxx 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/resize.hxx 2017-05-10 19:14:06.000000000 +0000 @@ -22,13 +22,187 @@ #ifndef PFS_RESIZE_HXX #define PFS_RESIZE_HXX +#include #include "resize.h" #include "copy.h" +#define PI4_Af 0.78515625f +#define PI4_Bf 0.00024127960205078125f +#define PI4_Cf 6.3329935073852539062e-07f +#define PI4_Df 4.9604681473525147339e-10f + namespace pfs { namespace detail { + +//! \author Franco Comida +//! \note Code derived from RawTherapee +//! https://github.com/Beep6581/RawTherapee/blob/dev/rtengine/ipresize.cc + const float RT_1_PI = 2.0f*(float)boost::math::double_constants::one_div_two_pi; + + inline float xrintf(float x) { return x < 0 ? (int)(x - 0.5f) : (int)(x + 0.5f); } + + inline float mlaf(float x, float y, float z) { return x * y + z; } + + inline float xsinf(float d) { + int q; + float u, s; + + q = (int)xrintf(d * RT_1_PI); + + d = mlaf(q, -PI4_Af*4, d); + d = mlaf(q, -PI4_Bf*4, d); + d = mlaf(q, -PI4_Cf*4, d); + d = mlaf(q, -PI4_Df*4, d); + + s = d * d; + + if ((q & 1) != 0) d = -d; + + u = 2.6083159809786593541503e-06f; + u = mlaf(u, s, -0.0001981069071916863322258f); + u = mlaf(u, s, 0.00833307858556509017944336f); + u = mlaf(u, s, -0.166666597127914428710938f); + + u = mlaf(s, u * d, d); + + return u; +} + +static inline float Lanc (float x, float a) +{ + if (x * x < 1e-6f) { + return 1.0f; + } else if (x * x > a * a) { + return 0.0f; + } else { + x = static_cast (boost::math::double_constants::pi) * x; + return a * xsinf (x) * xsinf (x / a) / (x * x); + } +} + +template +void Lanczos (const Type* src, Type* dst, + int W, int H, int W2, int H2) + +{ + + const float scale = static_cast(W2)/static_cast(W); + const float delta = 1.0f / scale; + const float a = 3.0f; + const float sc = std::min (scale, 1.0f); + const int support = static_cast (2.0f * a / sc) + 1; + + const Type zero = static_cast (0); + + #pragma omp parallel + { + // storage for precomputed parameters for horisontal interpolation + float * wwh = new float[support * W2]; + int * jj0 = new int[W2]; + int * jj1 = new int[W2]; + + // temporal storage for vertically-interpolated row of pixels + float * l = new float[W]; + + // Phase 1: precompute coefficients for horisontal interpolation + + for (int j = 0; j < W2; j++) { + + // x coord of the center of pixel on src image + float x0 = (static_cast (j) + 0.5f) * delta - 0.5f; + + // weights for interpolation in horisontal direction + float * w = wwh + j * support; + + // sum of weights used for normalization + float ws = 0.0f; + + jj0[j] = std::max (0, static_cast (floorf (x0 - a / sc)) + 1); + jj1[j] = std::min (W, static_cast (floorf (x0 + a / sc)) + 1); + + // calculate weights + for (int jj = jj0[j]; jj < jj1[j]; jj++) { + int k = jj - jj0[j]; + float z = sc * (x0 - static_cast (jj)); + w[k] = Lanc (z, a); + ws += w[k]; + } + + // normalize weights + for (int k = 0; k < support; k++) { + w[k] /= ws; + } + } + + // Phase 2: do actual interpolation + // weights for interpolation in y direction + float *w = new float[support]; + #pragma omp for + for (int i = 0; i < H2; i++) { + + // y coord of the center of pixel on src image + float y0 = (static_cast (i) + 0.5f) * delta - 0.5f; + + // sum of weights used for normalization + float ws = 0.0f; + + int ii0 = std::max (0, static_cast (floorf (y0 - a / sc)) + 1); + int ii1 = std::min (H, static_cast (floorf (y0 + a / sc)) + 1); + + // calculate weights for vertical interpolation + for (int ii = ii0; ii < ii1; ii++) { + int k = ii - ii0; + float z = sc * (y0 - static_cast (ii)); + w[k] = Lanc (z, a); + ws += w[k]; + } + + // normalize weights + for (int k = 0; k < support; k++) { + w[k] /= ws; + } + + // Do vertical interpolation. Store results. + for (int j = 0; j < W; j++) { + + float o = 0.0f; + + for (int ii = ii0; ii < ii1; ii++) { + int k = ii - ii0; + + o += w[k] * static_cast(src[ii*W + j]); + } + + l[j] = o; + } + + // Do horizontal interpolation + for (int j = 0; j < W2; j++) { + + float * wh = wwh + support * j; + + float o = 0.0f; + + for (int jj = jj0[j]; jj < jj1[j]; jj++) { + int k = jj - jj0[j]; + + o += wh[k] * l[jj]; + } + + dst[i*W2 + j] = max(zero, min(static_cast(o), boost::numeric::bounds::highest())); + } + } + + delete[] w; + delete[] wwh; + delete[] jj0; + delete[] jj1; + delete[] l; + } +} + const size_t BLOCK_FACTOR = 96; //! \author Davide Anastasia @@ -98,17 +272,27 @@ } template -void resample(const ::pfs::Array2D *in, ::pfs::Array2D *out) +void resample(const ::pfs::Array2D *in, ::pfs::Array2D *out, InterpolationMethod m) { - resizeBilinearGray(in->data(), out->data(), + switch ( m ) + { + case LanczosInterp: + Lanczos(in->data(), out->data(), + in->getCols(), in->getRows(), + out->getCols(), out->getRows()); + break; + case BilinearInterp: + resizeBilinearGray(in->data(), out->data(), in->getCols(), in->getRows(), out->getCols(), out->getRows()); + break; + } } } // anonymous template -void resize(const Array2D *in, Array2D *out ) +void resize(const Array2D *in, Array2D *out, InterpolationMethod m) { if ( in->getCols() == out->getCols() && in->getRows() == out->getRows() ) { @@ -116,7 +300,7 @@ } else { - detail::resample(in, out); + detail::resample(in, out, m); } } diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/rotate.cpp luminance-hdr-2.5.1/src/Libpfs/manip/rotate.cpp --- luminance-hdr-2.5.0/src/Libpfs/manip/rotate.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/rotate.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,11 +1,11 @@ /** * @brief Resize images in PFS stream - * + * * This file is a part of PFSTOOLS package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk, * Alexander Efremov - * + * * This program 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 2 of the License, or @@ -19,7 +19,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Alexander Efremov, * @@ -38,7 +38,7 @@ namespace pfs { - + pfs::Frame* rotate(const pfs::Frame* frame, bool clock_wise) { #ifdef TIMER_PROFILING @@ -48,7 +48,7 @@ pfs::Frame *resizedFrame = new pfs::Frame( frame->getHeight(), frame->getWidth() ); - + const ChannelContainer& channels = frame->getChannels(); for ( ChannelContainer::const_iterator it = channels.begin(); @@ -59,14 +59,14 @@ rotate(*it, newCh, clock_wise); } - + pfs::copyTags( frame, resizedFrame ); - + #ifdef TIMER_PROFILING f_timer.stop_and_update(); std::cout << "rotateFrame() = " << f_timer.get_time() << " msec" << std::endl; -#endif - +#endif + return resizedFrame; } diff -Nru luminance-hdr-2.5.0/src/Libpfs/manip/rotate.h luminance-hdr-2.5.1/src/Libpfs/manip/rotate.h --- luminance-hdr-2.5.0/src/Libpfs/manip/rotate.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/manip/rotate.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk, * Alexander Efremov - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ //! \brief Resize images in PFS stream diff -Nru luminance-hdr-2.5.0/src/Libpfs/pfs.h luminance-hdr-2.5.1/src/Libpfs/pfs.h --- luminance-hdr-2.5.0/src/Libpfs/pfs.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/pfs.h 2017-05-10 19:14:06.000000000 +0000 @@ -12,11 +12,11 @@ * internal data, but no STL class can be found the header file * pfs.h. Such design should hopefully give less problems when * extending and updating the library. - * + * * This file is a part of PFSTOOLS package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either @@ -30,8 +30,8 @@ * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * @author Davide Anastasia * @@ -52,7 +52,7 @@ //#define MAX_CHANNEL_COUNT 1024 /** - * All classes and function from PFS library reside in pfs namespace. + * All classes and function from PFS library reside in pfs namespace. */ namespace pfs { diff -Nru luminance-hdr-2.5.0/src/Libpfs/tag.h luminance-hdr-2.5.1/src/Libpfs/tag.h --- luminance-hdr-2.5.0/src/Libpfs/tag.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/tag.h 2017-05-10 19:14:06.000000000 +0000 @@ -24,7 +24,7 @@ //! \author Rafal Mantiuk, //! \author Davide Anastasia //! Modified to use std::map instead than a list of strings - + #ifndef PFS_TAG_H #define PFS_TAG_H diff -Nru luminance-hdr-2.5.0/src/Libpfs/tm/TonemapOperator.cpp luminance-hdr-2.5.1/src/Libpfs/tm/TonemapOperator.cpp --- luminance-hdr-2.5.0/src/Libpfs/tm/TonemapOperator.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/tm/TonemapOperator.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2011 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,11 +17,11 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Giuseppe Rota - * Improvements, bugfixing + * Improvements, bugfixing * @author Franco Comida * Refactory of TMThread.h class to TonemapOperator in order to remove dependency from QObject and QThread * @author Davide Anastasia @@ -65,8 +65,6 @@ { ph.setMaximum(100); - // pfstmo_mantiuk06 not reentrant - m_mutex.lock(); try { pfstmo_mantiuk06(workingFrame, @@ -78,20 +76,12 @@ } catch (...) { - m_mutex.unlock(); throw std::runtime_error("Tonemap Failed"); } - m_mutex.unlock(); } -private: - // It may be removed, because the issue in the race condition of the - // operator has been solved - static boost::mutex m_mutex; }; -boost::mutex TonemapOperatorMantiuk06::m_mutex; // static member - struct TonemapOperatorMantiuk08 : public TonemapOperatorRegister { @@ -139,9 +129,6 @@ else detail_level = 3; - // std::cout << "RATIO = " << ratio << ", "; - // std::cout << "DETAIL_LEVEL = " << detail_level << std::endl; - pfstmo_fattal02(workingframe, opts->operator_options.fattaloptions.alpha, opts->operator_options.fattaloptions.beta, @@ -161,13 +148,20 @@ { ph.setMaximum(100); + m_mutex.lock(); pfstmo_ferradans11(workingframe, opts->operator_options.ferradansoptions.rho, opts->operator_options.ferradansoptions.inv_alpha, ph); + m_mutex.unlock(); } + +private: + static boost::mutex m_mutex; }; +boost::mutex TonemapOperatorFerradans11::m_mutex; + struct TonemapOperatorMai11 : public TonemapOperatorRegister { diff -Nru luminance-hdr-2.5.0/src/Libpfs/tm/TonemapOperator.h luminance-hdr-2.5.1/src/Libpfs/tm/TonemapOperator.h --- luminance-hdr-2.5.0/src/Libpfs/tm/TonemapOperator.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/tm/TonemapOperator.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2011 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,11 +17,11 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Giuseppe Rota - * Improvements, bugfixing + * Improvements, bugfixing * @author Franco Comida * Refactory of TMThread.h class to TonemapOperator in order to remove dependency from QObject and QThread * @author Davide Anastasia diff -Nru luminance-hdr-2.5.0/src/Libpfs/utils/msec_timer.cpp luminance-hdr-2.5.1/src/Libpfs/utils/msec_timer.cpp --- luminance-hdr-2.5.0/src/Libpfs/utils/msec_timer.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/utils/msec_timer.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,7 +1,7 @@ /** * @brief Milliseconds Timer * - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * http://msdn.microsoft.com/en-us/library/ms644904%28v=VS.85%29.aspx * @@ -40,7 +40,7 @@ #elif __APPLE__ mach_timebase_info_data_t info; kern_return_t err = mach_timebase_info( &info ); - + //Convert the timebase into seconds if ( err == 0 ) conversion = (1e-9 * (double) info.numer / (double) info.denom); #else diff -Nru luminance-hdr-2.5.0/src/Libpfs/utils/msec_timer.h luminance-hdr-2.5.1/src/Libpfs/utils/msec_timer.h --- luminance-hdr-2.5.0/src/Libpfs/utils/msec_timer.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/utils/msec_timer.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,7 +1,7 @@ /** * @brief Milliseconds Timer * - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * http://msdn.microsoft.com/en-us/library/ms644904%28v=VS.85%29.aspx * @@ -50,7 +50,7 @@ #include #else //#include -#include +#include #endif class msec_timer { @@ -70,7 +70,7 @@ timeval stop_t; double wrk_time; #endif - + public: msec_timer(); ~msec_timer(); @@ -80,7 +80,7 @@ void stop_and_update(); void reset(); double get_time(); - + void get_timer_type(); }; diff -Nru luminance-hdr-2.5.0/src/Libpfs/utils/numeric.h luminance-hdr-2.5.1/src/Libpfs/utils/numeric.h --- luminance-hdr-2.5.0/src/Libpfs/utils/numeric.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/utils/numeric.h 2017-05-10 19:14:06.000000000 +0000 @@ -70,41 +70,46 @@ template void vmul(const _Type* A, const _Type* B, _Type* C, size_t size); -//! \brief multiplies element-wise \c A and \c B and stores into \c C +//! \brief divides element-wise \c A and \c B and stores into \c C //! C[i] = A[i] / B[i] template void vdiv(const _Type* A, const _Type* B, _Type* C, size_t size); -//! \brief multiplies element-wise \c A and \c B and stores into \c C +//! \brief sum element-wise \c A and \c B and stores into \c C //! C[i] = A[i] + B[i] template void vadd(const _Type* A, const _Type* B, _Type* C, size_t size); -//! \brief multiplies element-wise \c A and \c B and stores into \c C +//! \brief sum element-wise \c s to \c A and stores into \c B +//! B[i] = A[i] + s +template +void vsadd(const _Type* A, const float s, _Type* B, size_t size); + +//! \brief multiplies element-wise \c s and \c B, sum it to \c A and stores into \c C //! C[i] = A[i] + (s * B[i]) template void vadds(const _Type* A, const _Type& s, const _Type* B, _Type* C, size_t size); -//! \brief multiplies element-wise \c A and \c B and stores into \c C +//! \brief subtract element-wise \c A and \c B and stores into \c C //! C[i] = A[i] - B[i] template void vsub(const _Type* A, const _Type* B, _Type* C, size_t size); -//! \brief multiplies element-wise \c A and \c B and stores into \c C +//! \brief multiplies element-wise \c s and \c B, subtract it from \c A and stores into \c C //! C[i] = A[i] - (s * B[i]) template void vsubs(const _Type* A, const _Type& s, const _Type* B, _Type* C, size_t size); //! // O[i] = c * I[i] template -void vsmul(const _Type* I, float c, _Type* O, size_t size); +void vsmul(const _Type* I, const float c, _Type* O, size_t size); template -void vsum_scalar(const _Type* I, float c, _Type* O, size_t size); +void vsum_scalar(const _Type* I, const float c, _Type* O, size_t size); template -void vmul_scalar(const _Type* I, float c, _Type* O, size_t size); +void vmul_scalar(const _Type* I, const float c, _Type* O, size_t size); template void vdiv_scalar(const _Type* I, float c, _Type* O, size_t size); diff -Nru luminance-hdr-2.5.0/src/Libpfs/utils/numeric.hxx luminance-hdr-2.5.1/src/Libpfs/utils/numeric.hxx --- luminance-hdr-2.5.0/src/Libpfs/utils/numeric.hxx 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/utils/numeric.hxx 2017-05-10 19:14:06.000000000 +0000 @@ -75,6 +75,16 @@ } template +void vsadd(const _Type* A, const float s, _Type* B, size_t size) +{ +#pragma omp parallel for + for (int idx = 0; idx < static_cast(size); idx++) + { + B[idx] = A[idx] + s; + } +} + +template void vadds(const _Type* A, const _Type& s, const _Type* B, _Type* C, size_t size) { detail::op(A, B, C, size, numeric::vadds<_Type>(s)); @@ -94,7 +104,7 @@ template -void vsmul(const _Type* I, float c, _Type* O, size_t size) +void vsmul(const _Type* I, const float c, _Type* O, size_t size) { #pragma omp parallel for for (int idx = 0; idx < static_cast(size); idx++) @@ -104,7 +114,7 @@ } template -void vsum_scalar(const _Type* I, float c, _Type* O, size_t size) +void vsum_scalar(const _Type* I, const float c, _Type* O, size_t size) { #pragma omp parallel for for (int idx = 0; idx < static_cast(size); idx++) @@ -114,7 +124,7 @@ } template -void vmul_scalar(const _Type* I, float c, _Type* O, size_t size) +void vmul_scalar(const _Type* I, const float c, _Type* O, size_t size) { #pragma omp parallel for for (int idx = 0; idx < static_cast(size); idx++) @@ -124,7 +134,7 @@ } template -void vdiv_scalar(const _Type* I, float c, _Type* O, size_t size) +void vdiv_scalar(const _Type* I, const float c, _Type* O, size_t size) { #pragma omp parallel for for (int idx = 0; idx < static_cast(size); idx++) diff -Nru luminance-hdr-2.5.0/src/Libpfs/utils/sse.h luminance-hdr-2.5.1/src/Libpfs/utils/sse.h --- luminance-hdr-2.5.0/src/Libpfs/utils/sse.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Libpfs/utils/sse.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,6 +1,6 @@ /* * This file is a part of Luminance HDR package - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2011 Davide Anastasia * * This program is free software; you can redistribute it and/or modify @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- */ //! @brief SSE for high performance vector operations diff -Nru luminance-hdr-2.5.0/src/LibpfsAdditions/formathelper.cpp luminance-hdr-2.5.1/src/LibpfsAdditions/formathelper.cpp --- luminance-hdr-2.5.0/src/LibpfsAdditions/formathelper.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/LibpfsAdditions/formathelper.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,263 +1,263 @@ -/* - * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2015 Daniel Kaneider - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - */ - -//! @author Daniel Kaneider - -#include "formathelper.h" - -#include "UI/TiffModeDialog.h" -#include - -#define KEY_EXPORT_FORMAT "FileFormats/Format" -#define KEY_EXPORT_TIFF_MODE "FileFormats/TiffMode" -#define KEY_EXPORT_QUALITY "FileFormats/Quality" - -namespace pfsadditions -{ - -FormatHelper::FormatHelper() - : QObject() - , m_comboBox(NULL) - , m_settingsButton(NULL) - , m_hdr(false) -{} - -void FormatHelper::initConnection(QComboBox* comboBox, QAbstractButton* settingsButton, bool hdr) -{ - m_comboBox = comboBox; - m_settingsButton = settingsButton; - m_hdr = hdr; - - if (hdr) - { - // FrameWriterFactory::sm_registry - comboBox->addItem(QObject::tr("HDR"), QVariant(0)); - comboBox->addItem(QObject::tr("EXR"), QVariant(1)); - comboBox->addItem(QObject::tr("TIFF"), QVariant(2)); - comboBox->addItem(QObject::tr("PFS"), QVariant(3)); - } - else - { - comboBox->addItem(QObject::tr("TIFF"), QVariant(20)); - comboBox->addItem(QObject::tr("JPEG"), QVariant(21)); - comboBox->addItem(QObject::tr("PNG"), QVariant(22)); - comboBox->addItem(QObject::tr("BMP"), QVariant(23)); - comboBox->addItem(QObject::tr("PPM"), QVariant(24)); - comboBox->addItem(QObject::tr("PBM"), QVariant(25)); - } - - connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(comboBoxIndexChanged(int))); - connect(settingsButton, SIGNAL(pressed()), this, SLOT(buttonPressed())); - - const int format = hdr ? 0 : 20; - setDefaultParams(format); - updateButton(format); -} - -QString FormatHelper::getFileExtension() -{ - int format = m_comboBox->currentData().toInt(); - return getFileExtensionForFormat(format); -} - -QString FormatHelper::getFileExtensionForFormat(int format) -{ - switch (format) - { - case 0: - return ("hdr"); - case 1: - return ("exr"); - case 2: - return ("tiff"); - case 3: - return ("pfs"); - case 20: - return ("tiff"); - case 21: - return ("jpg"); - case 22: - return ("png"); - case 23: - return ("bmp"); - case 24: - return ("ppm"); - case 25: - return ("pbm"); - } - return "tiff"; -} - -void FormatHelper::setDefaultParams(int format) -{ - m_params = getParamsForFormat(format); -} - -pfs::Params FormatHelper::getParamsForFormat(int format) -{ - pfs::Params params; - switch (format) - { - case 0: - params.set("format", std::string("hdr")); - break; - case 1: - params.set("format", std::string("exr")); - break; - case 2: - params.set("format", std::string("tiff")); - break; - case 3: - params.set("format", std::string("pfs")); - break; - case 20: - params.set("format", std::string("tiff")); - break; - case 21: - params.set("format", std::string("jpg")); - params.set("quality", 100); - break; - case 22: - params.set("format", std::string("png")); - params.set("quality", 100); - break; - case 23: - case 24: - case 25: - // default params - break; - default: - break; - } - params.set("fileextension", getFileExtensionForFormat(format)); - return params; -} - -void FormatHelper::comboBoxIndexChanged(int idx) -{ - int format = m_comboBox->currentData().toInt(); - setDefaultParams(format); - updateButton(format); -} - -void FormatHelper::buttonPressed() -{ - int format = m_comboBox->currentData().toInt(); - switch (format) - { - case 2: - case 20: - { - int tiffMode; - if (!m_params.get("tiff_mode", tiffMode)) - tiffMode = -1; - - TiffModeDialog t(format == 2, tiffMode, m_settingsButton); - if (t.exec() == QDialog::Accepted) - { - m_params.set("tiff_mode", t.getTiffWriterMode()); - } - } - break; - case 21: - case 22: - { - size_t quality; - int qual = -1; - if (m_params.get("quality", quality)) - qual = quality; - - ImageQualityDialog d(NULL, format == 21 ? "png" : "jpg", qual, m_settingsButton); - if (d.exec() == QDialog::Accepted) - { - size_t quality = d.getQuality(); - m_params.set("quality", quality); - } - - } - break; - case 3: - m_params.set("format", std::string("pfs")); - break; - default: - break; - } -} - -void FormatHelper::updateButton(int format) -{ - bool enabled = format == 2 // tiff - || format == 20 // tiff-dr - || format == 21 // jpg - || format == 22; // png - m_settingsButton->setEnabled(enabled); -} - -pfs::Params FormatHelper::getParams() -{ - return m_params; -} - -void FormatHelper::loadFromSettings(const LuminanceOptions& options, QString prefix) -{ - - int format = options.value(prefix + "/" + KEY_EXPORT_FORMAT, m_hdr ? 0 : 20).toInt(); - m_comboBox->setCurrentIndex(m_comboBox->findData(format)); - m_params = FormatHelper::getParamsFromSettings(options, prefix, m_hdr); -} - -void FormatHelper::writeSettings(LuminanceOptions& options, QString prefix) -{ - options.setValue(prefix + "/" + KEY_EXPORT_FORMAT, m_comboBox->currentData().toInt()); - int tiffMode; - if (m_params.get("tiff_mode", tiffMode)) - { - options.setValue(prefix + "/" + KEY_EXPORT_TIFF_MODE, tiffMode); - } - size_t quality; - if (m_params.get("quality", quality)) - { - int qual = quality; - options.setValue(prefix + "/" + KEY_EXPORT_QUALITY, qual); - } - -} - -pfs::Params FormatHelper::getParamsFromSettings(const LuminanceOptions& options, QString prefix, bool hdr) -{ - int format = options.value(prefix + "/" + KEY_EXPORT_FORMAT, hdr ? 0 : 20).toInt(); - pfs::Params params = FormatHelper::getParamsForFormat(format); - - int tiffMode = options.value(prefix + "/" + KEY_EXPORT_TIFF_MODE, -1).toInt(); - if (tiffMode >= 0) - params.set("tiff_mode", tiffMode); - int quality = options.value(prefix + "/" + KEY_EXPORT_QUALITY, -1).toInt(); - if (quality >= 0) - { - size_t qual = quality; - params.set("quality", qual); - } - return params; -} - - -} +/* + * This file is a part of LuminanceHDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2015 Daniel Kaneider + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + */ + +//! @author Daniel Kaneider + +#include "formathelper.h" + +#include "UI/TiffModeDialog.h" +#include + +#define KEY_EXPORT_FORMAT "FileFormats/Format" +#define KEY_EXPORT_TIFF_MODE "FileFormats/TiffMode" +#define KEY_EXPORT_QUALITY "FileFormats/Quality" + +namespace pfsadditions +{ + +FormatHelper::FormatHelper() + : QObject() + , m_comboBox(NULL) + , m_settingsButton(NULL) + , m_hdr(false) +{} + +void FormatHelper::initConnection(QComboBox* comboBox, QAbstractButton* settingsButton, bool hdr) +{ + m_comboBox = comboBox; + m_settingsButton = settingsButton; + m_hdr = hdr; + + if (hdr) + { + // FrameWriterFactory::sm_registry + comboBox->addItem(QObject::tr("HDR"), QVariant(0)); + comboBox->addItem(QObject::tr("EXR"), QVariant(1)); + comboBox->addItem(QObject::tr("TIFF"), QVariant(2)); + comboBox->addItem(QObject::tr("PFS"), QVariant(3)); + } + else + { + comboBox->addItem(QObject::tr("TIFF"), QVariant(20)); + comboBox->addItem(QObject::tr("JPEG"), QVariant(21)); + comboBox->addItem(QObject::tr("PNG"), QVariant(22)); + comboBox->addItem(QObject::tr("BMP"), QVariant(23)); + comboBox->addItem(QObject::tr("PPM"), QVariant(24)); + comboBox->addItem(QObject::tr("PBM"), QVariant(25)); + } + + connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(comboBoxIndexChanged(int))); + connect(settingsButton, SIGNAL(pressed()), this, SLOT(buttonPressed())); + + const int format = hdr ? 0 : 20; + setDefaultParams(format); + updateButton(format); +} + +QString FormatHelper::getFileExtension() +{ + int format = m_comboBox->currentData().toInt(); + return getFileExtensionForFormat(format); +} + +QString FormatHelper::getFileExtensionForFormat(int format) +{ + switch (format) + { + case 0: + return ("hdr"); + case 1: + return ("exr"); + case 2: + return ("tiff"); + case 3: + return ("pfs"); + case 20: + return ("tiff"); + case 21: + return ("jpg"); + case 22: + return ("png"); + case 23: + return ("bmp"); + case 24: + return ("ppm"); + case 25: + return ("pbm"); + } + return "tiff"; +} + +void FormatHelper::setDefaultParams(int format) +{ + m_params = getParamsForFormat(format); +} + +pfs::Params FormatHelper::getParamsForFormat(int format) +{ + pfs::Params params; + switch (format) + { + case 0: + params.set("format", std::string("hdr")); + break; + case 1: + params.set("format", std::string("exr")); + break; + case 2: + params.set("format", std::string("tiff")); + break; + case 3: + params.set("format", std::string("pfs")); + break; + case 20: + params.set("format", std::string("tiff")); + break; + case 21: + params.set("format", std::string("jpg")); + params.set("quality", 100); + break; + case 22: + params.set("format", std::string("png")); + params.set("quality", 100); + break; + case 23: + case 24: + case 25: + // default params + break; + default: + break; + } + params.set("fileextension", getFileExtensionForFormat(format)); + return params; +} + +void FormatHelper::comboBoxIndexChanged(int idx) +{ + int format = m_comboBox->currentData().toInt(); + setDefaultParams(format); + updateButton(format); +} + +void FormatHelper::buttonPressed() +{ + int format = m_comboBox->currentData().toInt(); + switch (format) + { + case 2: + case 20: + { + int tiffMode; + if (!m_params.get("tiff_mode", tiffMode)) + tiffMode = -1; + + TiffModeDialog t(format == 2, tiffMode, m_settingsButton); + if (t.exec() == QDialog::Accepted) + { + m_params.set("tiff_mode", t.getTiffWriterMode()); + } + } + break; + case 21: + case 22: + { + size_t quality; + int qual = -1; + if (m_params.get("quality", quality)) + qual = quality; + + ImageQualityDialog d(NULL, format == 21 ? "png" : "jpg", qual, m_settingsButton); + if (d.exec() == QDialog::Accepted) + { + size_t quality = d.getQuality(); + m_params.set("quality", quality); + } + + } + break; + case 3: + m_params.set("format", std::string("pfs")); + break; + default: + break; + } +} + +void FormatHelper::updateButton(int format) +{ + bool enabled = format == 2 // tiff + || format == 20 // tiff-dr + || format == 21 // jpg + || format == 22; // png + m_settingsButton->setEnabled(enabled); +} + +pfs::Params FormatHelper::getParams() +{ + return m_params; +} + +void FormatHelper::loadFromSettings(const LuminanceOptions& options, QString prefix) +{ + + int format = options.value(prefix + "/" + KEY_EXPORT_FORMAT, m_hdr ? 0 : 20).toInt(); + m_comboBox->setCurrentIndex(m_comboBox->findData(format)); + m_params = FormatHelper::getParamsFromSettings(options, prefix, m_hdr); +} + +void FormatHelper::writeSettings(LuminanceOptions& options, QString prefix) +{ + options.setValue(prefix + "/" + KEY_EXPORT_FORMAT, m_comboBox->currentData().toInt()); + int tiffMode; + if (m_params.get("tiff_mode", tiffMode)) + { + options.setValue(prefix + "/" + KEY_EXPORT_TIFF_MODE, tiffMode); + } + size_t quality; + if (m_params.get("quality", quality)) + { + int qual = quality; + options.setValue(prefix + "/" + KEY_EXPORT_QUALITY, qual); + } + +} + +pfs::Params FormatHelper::getParamsFromSettings(const LuminanceOptions& options, QString prefix, bool hdr) +{ + int format = options.value(prefix + "/" + KEY_EXPORT_FORMAT, hdr ? 0 : 20).toInt(); + pfs::Params params = FormatHelper::getParamsForFormat(format); + + int tiffMode = options.value(prefix + "/" + KEY_EXPORT_TIFF_MODE, -1).toInt(); + if (tiffMode >= 0) + params.set("tiff_mode", tiffMode); + int quality = options.value(prefix + "/" + KEY_EXPORT_QUALITY, -1).toInt(); + if (quality >= 0) + { + size_t qual = quality; + params.set("quality", qual); + } + return params; +} + + +} diff -Nru luminance-hdr-2.5.0/src/LibpfsAdditions/formathelper.h luminance-hdr-2.5.1/src/LibpfsAdditions/formathelper.h --- luminance-hdr-2.5.0/src/LibpfsAdditions/formathelper.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/LibpfsAdditions/formathelper.h 2017-05-10 19:14:06.000000000 +0000 @@ -37,44 +37,44 @@ namespace pfsadditions { - class FormatHelper : public QObject - { - Q_OBJECT - - public: - FormatHelper(); - - //! \brief virtual dtor, enable derivation - ~FormatHelper() {} - - void initConnection(QComboBox* comboBox, QAbstractButton* settingsButton, bool hdr); - pfs::Params getParams(); - QString getFileExtension(); + class FormatHelper : public QObject + { + Q_OBJECT + + public: + FormatHelper(); + + //! \brief virtual dtor, enable derivation + ~FormatHelper() {} + + void initConnection(QComboBox* comboBox, QAbstractButton* settingsButton, bool hdr); + pfs::Params getParams(); + QString getFileExtension(); void loadFromSettings(const LuminanceOptions& options, QString prefix); void writeSettings(LuminanceOptions& options, QString prefix); static pfs::Params getParamsFromSettings(const LuminanceOptions& options, QString prefix, bool hdr); - protected: - void setDefaultParams(int format); + protected: + void setDefaultParams(int format); void updateButton(int format); static pfs::Params getParamsForFormat(int format); static QString getFileExtensionForFormat(int format); - protected slots: - void comboBoxIndexChanged(int idx); - void buttonPressed(); - - private: - - QComboBox* m_comboBox; - QAbstractButton* m_settingsButton; - pfs::Params m_params; + protected slots: + void comboBoxIndexChanged(int idx); + void buttonPressed(); + + private: + + QComboBox* m_comboBox; + QAbstractButton* m_settingsButton; + pfs::Params m_params; bool m_hdr; - + }; } diff -Nru luminance-hdr-2.5.0/src/MainCli/commandline.cpp luminance-hdr-2.5.1/src/MainCli/commandline.cpp --- luminance-hdr-2.5.0/src/MainCli/commandline.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainCli/commandline.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -692,9 +692,9 @@ #ifdef QT_DEBUG qDebug() << "XSIZE:" << tmopts->xsize; #endif - if (tmopts->xsize == -2) + if (tmopts->xsize == -2) tmopts->xsize = HDR->getWidth(); - else + else printIfVerbose( tr("Resizing to width %1.").arg(tmopts->xsize) , verbose); if(tmopts->pregamma != 1) @@ -707,7 +707,7 @@ // Build a new TM frame // The scoped pointer will free the memory automatically later on - QScopedPointer tm_frame( tm_worker.computeTonemap(HDR.data(), tmopts.data()) ); + QScopedPointer tm_frame( tm_worker.computeTonemap(HDR.data(), tmopts.data(), BilinearInterp) ); QString inputfname; // to copy EXIF tags from 1st input image to saved LDR if (inputFiles.isEmpty()) @@ -720,7 +720,7 @@ { float minL, maxL, gammaL; QScopedPointer temp_qimage( fromLDRPFStoQImage(tm_frame.data()) ); - computeAutolevels(temp_qimage.data(), minL, maxL, gammaL); + computeAutolevels(temp_qimage.data(), 0.985f, minL, maxL, gammaL); pfs::gammaAndLevels(tm_frame.data(), minL, maxL, 0.f, 1.f, gammaL); } // Create an ad-hoc IOWorker to save the file diff -Nru luminance-hdr-2.5.0/src/MainCli/commandline.h luminance-hdr-2.5.1/src/MainCli/commandline.h --- luminance-hdr-2.5.0/src/MainCli/commandline.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainCli/commandline.h 2017-05-10 19:14:06.000000000 +0000 @@ -70,15 +70,15 @@ void saveHDR(); void printHelp(char *progname); QScopedPointer tmopts; - QScopedPointer tmofileparams; + QScopedPointer tmofileparams; bool verbose; FusionOperatorConfig hdrcreationconfig; QString loadHdrFilename; QStringList inputFiles; - ez::ezETAProgressBar progressBar; - int oldValue; - int maximum; - bool started; + ez::ezETAProgressBar progressBar; + int oldValue; + int maximum; + bool started; float threshold; bool isAutolevels; bool isHtml; @@ -94,12 +94,12 @@ private slots: void finishedLoadingInputFiles(); void ais_failed(QProcess::ProcessError); - void errorWhileLoading(QString); + void errorWhileLoading(QString); void createHDR(int); void execCommandLineParamsSlot(); - void setProgressBar(int); - void updateProgressBar(int); - void readData(QByteArray); + void setProgressBar(int); + void updateProgressBar(int); + void readData(QByteArray); signals: void finishedParsing(); diff -Nru luminance-hdr-2.5.0/src/MainGui/main.cpp luminance-hdr-2.5.1/src/MainGui/main.cpp --- luminance-hdr-2.5.0/src/MainGui/main.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainGui/main.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -60,49 +60,55 @@ #if defined(WIN32) || defined(__APPLE__) void customMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString& msg) { - QString txt; - switch (type) { - case QtDebugMsg: - txt = QString("Debug: %1").arg(msg); - break; - case QtWarningMsg: - txt = QString("Warning: %1").arg(msg); - break; - case QtCriticalMsg: - txt = QString("Critical: %1").arg(msg); - break; - case QtFatalMsg: - txt = QString("Fatal: %1").arg(msg); - abort(); - } - - QFile outFile("debuglog.txt"); - if (outFile.open(QIODevice::WriteOnly | QIODevice::Append)) - { + QString txt; + switch (type) { + case QtDebugMsg: + txt = QString("Debug: %1").arg(msg); + break; + case QtWarningMsg: + txt = QString("Warning: %1").arg(msg); + break; + case QtCriticalMsg: + txt = QString("Critical: %1").arg(msg); + break; + case QtFatalMsg: + txt = QString("Fatal: %1").arg(msg); + abort(); + } + + QFile outFile("debuglog.txt"); + if (outFile.open(QIODevice::WriteOnly | QIODevice::Append)) + { QTextStream ts(&outFile); ts << txt << endl; - } + } } #endif int main( int argc, char ** argv ) { - QCoreApplication::setApplicationName(LUMINANCEAPPLICATION); - QCoreApplication::setOrganizationName(LUMINANCEORGANIZATION); + QCoreApplication::setApplicationName(LUMINANCEAPPLICATION); + QCoreApplication::setOrganizationName(LUMINANCEORGANIZATION); - QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); - QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); +#ifdef WIN32 //TODO: there are problems with HiDPI on X11, let's enable this only on Windows by now + QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); + QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); +#endif - Q_INIT_RESOURCE(icons); + Q_INIT_RESOURCE(icons); QApplication application( argc, argv ); -#if defined(WIN32) || defined(__APPLE__) +#ifdef WIN32 //qInstallMessageHandler(customMessageHandler); QIcon::setThemeSearchPaths( QStringList() << QGuiApplication::applicationDirPath() + QString("/icons/luminance-hdr") ); QIcon::setThemeName("luminance-hdr"); #endif +#ifdef __APPLE__ + QIcon::setThemeSearchPaths( QStringList() << QCoreApplication::applicationDirPath() + QString("/../Resources/icons/luminance-hdr") ); + QIcon::setThemeName("luminance-hdr"); +#endif LuminanceOptions::isCurrentPortableMode = QDir(QGuiApplication::applicationDirPath()).exists("PortableMode.txt"); @@ -118,7 +124,7 @@ LuminanceOptions::conditionallyDoUpgrade(); TranslatorManager::setLanguage(LuminanceOptions().getGuiLang()); - LuminanceOptions().applyTheme(true); + LuminanceOptions().applyTheme(true); DonationDialog::showDonationDialog(); diff -Nru luminance-hdr-2.5.0/src/MainWindow/CMakeLists.txt luminance-hdr-2.5.1/src/MainWindow/CMakeLists.txt --- luminance-hdr-2.5.0/src/MainWindow/CMakeLists.txt 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/CMakeLists.txt 2017-05-10 19:14:06.000000000 +0000 @@ -2,24 +2,18 @@ ${CMAKE_CURRENT_SOURCE_DIR}/MainWindow.ui ${CMAKE_CURRENT_SOURCE_DIR}/DnDOption.ui ${CMAKE_CURRENT_SOURCE_DIR}/DonationDialog.ui -${CMAKE_CURRENT_SOURCE_DIR}/ExportToHtmlDialog.ui -${CMAKE_CURRENT_SOURCE_DIR}/SupportedCamerasDialog.ui ) SET(FILES_H ${CMAKE_CURRENT_SOURCE_DIR}/MainWindow.h ${CMAKE_CURRENT_SOURCE_DIR}/DnDOption.h ${CMAKE_CURRENT_SOURCE_DIR}/UpdateChecker.h ${CMAKE_CURRENT_SOURCE_DIR}/DonationDialog.h -${CMAKE_CURRENT_SOURCE_DIR}/ExportToHtmlDialog.h -${CMAKE_CURRENT_SOURCE_DIR}/SupportedCamerasDialog.h ) SET(FILES_CPP ${CMAKE_CURRENT_SOURCE_DIR}/MainWindow.cpp ${CMAKE_CURRENT_SOURCE_DIR}/DnDOption.cpp ${CMAKE_CURRENT_SOURCE_DIR}/UpdateChecker.cpp ${CMAKE_CURRENT_SOURCE_DIR}/DonationDialog.cpp -${CMAKE_CURRENT_SOURCE_DIR}/ExportToHtmlDialog.cpp -${CMAKE_CURRENT_SOURCE_DIR}/SupportedCamerasDialog.cpp ) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) diff -Nru luminance-hdr-2.5.0/src/MainWindow/DnDOption.cpp luminance-hdr-2.5.1/src/MainWindow/DnDOption.cpp --- luminance-hdr-2.5.0/src/MainWindow/DnDOption.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/DnDOption.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -31,44 +31,44 @@ ui(new Ui::DnDOption) { ui->setupUi(this); - result = ACTION_INVALID; + result = ACTION_INVALID; ui->btnCreateNewHDR->setEnabled(areAllLDRs); ui->btnOpenHDR->setEnabled(areAllHDRs); - if (!(areAllHDRs || areAllLDRs)) - QDialog::accept(); - else - activateWindow(); + if (!(areAllHDRs || areAllLDRs)) + QDialog::accept(); + else + activateWindow(); } DnDOptionDialog::~DnDOptionDialog() { } void DnDOptionDialog::on_btnCancel_clicked() { - QDialog::accept(); + QDialog::accept(); } void DnDOptionDialog::on_btnCreateNewHDR_clicked() { - result = ACTION_NEW_HDR; - QDialog::accept(); + result = ACTION_NEW_HDR; + QDialog::accept(); } void DnDOptionDialog::on_btnOpenHDR_clicked() { - result = ACTION_OPEN_HDR; - QDialog::accept(); + result = ACTION_OPEN_HDR; + QDialog::accept(); } int DnDOptionDialog::showDndDialog(QWidget *parent, QStringList files) { - bool areAllHDRs = true; - bool areAllLDRs = true; - foreach (QString file, files) { - areAllHDRs = areAllHDRs && matchesHdrFilename(file); - areAllLDRs = areAllLDRs && matchesLdrFilename(file); - } - if (areAllHDRs && files.size() == 1) - return ACTION_OPEN_HDR; // just open the files without dialog - else { - DnDOptionDialog dndOption(parent, files, areAllHDRs, areAllLDRs); - dndOption.exec(); - return dndOption.result; - } + bool areAllHDRs = true; + bool areAllLDRs = true; + foreach (QString file, files) { + areAllHDRs = areAllHDRs && matchesHdrFilename(file); + areAllLDRs = areAllLDRs && matchesLdrFilename(file); + } + if (areAllHDRs && files.size() == 1) + return ACTION_OPEN_HDR; // just open the files without dialog + else { + DnDOptionDialog dndOption(parent, files, areAllHDRs, areAllLDRs); + dndOption.exec(); + return dndOption.result; + } } diff -Nru luminance-hdr-2.5.0/src/MainWindow/DnDOption.h luminance-hdr-2.5.1/src/MainWindow/DnDOption.h --- luminance-hdr-2.5.0/src/MainWindow/DnDOption.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/DnDOption.h 2017-05-10 19:14:06.000000000 +0000 @@ -36,22 +36,22 @@ Q_OBJECT public: - static const int ACTION_INVALID = 0; - static const int ACTION_NEW_HDR = 1; - static const int ACTION_OPEN_HDR = 2; + static const int ACTION_INVALID = 0; + static const int ACTION_NEW_HDR = 1; + static const int ACTION_OPEN_HDR = 2; - static int showDndDialog(QWidget *parent, QStringList files); // 1=newHDR, 2=openHDR + static int showDndDialog(QWidget *parent, QStringList files); // 1=newHDR, 2=openHDR - DnDOptionDialog(QWidget *parent, QStringList files, bool allHdrs, bool allLdrs); - ~DnDOptionDialog(); + DnDOptionDialog(QWidget *parent, QStringList files, bool allHdrs, bool allLdrs); + ~DnDOptionDialog(); protected slots: - void on_btnCancel_clicked(); - void on_btnCreateNewHDR_clicked(); - void on_btnOpenHDR_clicked(); + void on_btnCancel_clicked(); + void on_btnCreateNewHDR_clicked(); + void on_btnOpenHDR_clicked(); private: QScopedPointer ui; - int result; // 1=newHDR, 2=openHDR + int result; // 1=newHDR, 2=openHDR }; #endif diff -Nru luminance-hdr-2.5.0/src/MainWindow/DnDOption.ui luminance-hdr-2.5.1/src/MainWindow/DnDOption.ui --- luminance-hdr-2.5.0/src/MainWindow/DnDOption.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/DnDOption.ui 2017-05-10 19:14:06.000000000 +0000 @@ -18,7 +18,7 @@
- :/icons/images/window-duplicate.svg:/icons/images/window-duplicate.svg + :/program-icons/luminance-hdr:/program-icons/luminance-hdr true @@ -51,7 +51,8 @@ &Open - + + .. @@ -70,7 +71,8 @@ &New - + + .. @@ -89,7 +91,8 @@ &Cancel - + + .. diff -Nru luminance-hdr-2.5.0/src/MainWindow/ExportToHtmlDialog.cpp luminance-hdr-2.5.1/src/MainWindow/ExportToHtmlDialog.cpp --- luminance-hdr-2.5.0/src/MainWindow/ExportToHtmlDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/ExportToHtmlDialog.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,144 +0,0 @@ -/** - * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2016 Franco Comida - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * @author Franco Comida - */ - -#include "ExportToHtmlDialog.h" - -#include -#include -#include -#include - -#include "ui_ExportToHtmlDialog.h" -#include "HdrHTML/pfsouthdrhtml.h" -#include "Libpfs/frame.h" -#include "Libpfs/exception.h" -#include "Libpfs/manip/resize.h" -#include "Libpfs/manip/copy.h" - - -ExportToHtmlDialog::ExportToHtmlDialog(QWidget* parent, pfs::Frame *frame) - : QDialog(parent) - , m_frame(frame) - , m_pageName() - , m_outputFolder() - , m_imagesFolder() - , m_Ui(new Ui::ExportToHtmlDialog) -{ - m_Ui->setupUi(this); - - connect(m_Ui->ExportButton, SIGNAL(clicked()), this, SLOT(onExportButtonClicked())); - connect(m_Ui->OutputFolderButton, SIGNAL(clicked()), this, SLOT(onOutputFolderButtonClicked())); - connect(m_Ui->lineEditPageName, SIGNAL(editingFinished()), this, SLOT(onEditPageNameFinished())); - connect(m_Ui->lineEditOutputFolder, SIGNAL(editingFinished()), this, SLOT(onEditOutputFolderFinished())); - connect(m_Ui->lineEditImagesFolder, SIGNAL(editingFinished()), this, SLOT(onEditImagesFolderFinished())); -} - -void ExportToHtmlDialog::onOutputFolderButtonClicked() -{ - QString dirname=QFileDialog::getExistingDirectory(this, tr("Choose a directory"), QDir::homePath() ); - - QFileInfo test(dirname); - if (test.isWritable() && test.exists() && test.isDir() && !dirname.isEmpty()) - { - m_outputFolder = dirname; - - m_Ui->lineEditOutputFolder->setText(dirname); - check_enable_export(); - } -} - -void ExportToHtmlDialog::onExportButtonClicked() -{ - QApplication::setOverrideCursor( QCursor(Qt::WaitCursor) ); - - bool quit = false; - pfs::Frame *resized; - int size_percent = m_Ui->spinBoxSize->value(); - if (size_percent == 100) { - resized = pfs::copy(m_frame); - } - else { - int resized_width = size_percent * (int)((float)m_frame->getWidth() / 100.f); - resized = pfs::resize(m_frame, resized_width); - } - try { - generate_hdrhtml(resized, - m_pageName.toStdString(), m_outputFolder.toStdString(), m_imagesFolder.toStdString(), - "", "", m_Ui->spinBoxQuality->value(), false); - } - catch( pfs::Exception &e) { - delete resized; - QApplication::restoreOverrideCursor(); - QMessageBox::critical(this, tr("Error: "), e.what() , - QMessageBox::Ok, QMessageBox::NoButton); - quit = true; - } - if (!quit) { - QApplication::restoreOverrideCursor(); - if (m_Ui->checkBoxOpenOnBrowser->isChecked()) { - QString url = "file:///" + m_outputFolder + "/" + m_pageName + ".html"; - QDesktopServices::openUrl(QUrl(url)); - } - } - delete resized; - accept(); -} - -void ExportToHtmlDialog::onEditPageNameFinished() -{ - m_pageName = m_Ui->lineEditPageName->text(); - QFileInfo qfi = QFileInfo(m_pageName); - m_pageName = qfi.baseName(); - m_Ui->lineEditPageName->setText(m_pageName); - - check_enable_export(); -} - -void ExportToHtmlDialog::onEditOutputFolderFinished() -{ - m_outputFolder = m_Ui->lineEditOutputFolder->text(); - QFileInfo qfi = QFileInfo(m_outputFolder); - if (!m_outputFolder.isEmpty() && !qfi.isDir()) - QMessageBox::critical(this, tr("Error: "), m_outputFolder + tr(" must be a directory.") , - QMessageBox::Ok, QMessageBox::NoButton); - else - check_enable_export(); -} - -void ExportToHtmlDialog::onEditImagesFolderFinished() -{ - m_imagesFolder = m_Ui->lineEditImagesFolder->text(); - check_enable_export(); -} - -void ExportToHtmlDialog::check_enable_export() -{ - m_Ui->ExportButton->setEnabled( - (!m_Ui->lineEditPageName->text().isEmpty()) && - (!m_Ui->lineEditOutputFolder->text().isEmpty())); -} - -ExportToHtmlDialog::~ExportToHtmlDialog() -{ -} - diff -Nru luminance-hdr-2.5.0/src/MainWindow/ExportToHtmlDialog.h luminance-hdr-2.5.1/src/MainWindow/ExportToHtmlDialog.h --- luminance-hdr-2.5.0/src/MainWindow/ExportToHtmlDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/ExportToHtmlDialog.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,66 +0,0 @@ -/** - * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2016 Franco Comida - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * @author Franco Comida - */ - -#ifndef EXPORTTOHTMLDIALOG_H -#define EXPORTTOHTMLDIALOG_H - -#include -#include - -namespace Ui -{ - class ExportToHtmlDialog; -} - -namespace pfs { - class Frame; -} - -class ExportToHtmlDialog : public QDialog -{ - Q_OBJECT -public: - ExportToHtmlDialog(QWidget* parent, pfs::Frame *frame); - -private: - pfs::Frame *m_frame; - QString m_pageName; - QString m_outputFolder; - QString m_imagesFolder; - - void check_enable_export(); - - QScopedPointer m_Ui; - -private slots: - void onExportButtonClicked(); - void onOutputFolderButtonClicked(); - void onEditPageNameFinished(); - void onEditOutputFolderFinished(); - void onEditImagesFolderFinished(); - -public: - ~ExportToHtmlDialog(); -}; - -#endif // EXPORTTOHTMLDIALOG_H diff -Nru luminance-hdr-2.5.0/src/MainWindow/ExportToHtmlDialog.ui luminance-hdr-2.5.1/src/MainWindow/ExportToHtmlDialog.ui --- luminance-hdr-2.5.0/src/MainWindow/ExportToHtmlDialog.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/ExportToHtmlDialog.ui 1970-01-01 00:00:00.000000000 +0000 @@ -1,397 +0,0 @@ - - - ExportToHtmlDialog - - - - 0 - 0 - 600 - 360 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - Export HDR to HTML - - - - :/program-icons/luminance-hdr:/program-icons/luminance-hdr - - - - - - - - - 16 - 75 - true - - - - Export to HTML - - - Qt::AlignCenter - - - - - - - - - - 0 - 0 - - - - Web page: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - - - - - - - 0 - 0 - - - - Output folder: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - - Qt::Horizontal - - - QSizePolicy::MinimumExpanding - - - - 40 - 20 - - - - - - - - - 0 - 0 - - - - Qt::RightToLeft - - - Open web browser - - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - Size: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - % - - - 1 - - - 100 - - - 100 - - - - - - - - 0 - 0 - - - - Quality: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - 1 - - - 4 - - - 2 - - - - - - - - - false - - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - - - - - - - - false - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - Images folder: - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - Select... - - - - .. - - - - - - - - - Qt::Vertical - - - QSizePolicy::MinimumExpanding - - - - 20 - 40 - - - - - - - - - - Qt::Horizontal - - - - 203 - 20 - - - - - - - - - - Cancel - - - - - - - false - - - Export - - - - - - - - - - - - - - - - lineEditPageName - lineEditOutputFolder - OutputFolderButton - lineEditImagesFolder - checkBoxImagesFolder - checkBoxOpenOnBrowser - spinBoxSize - spinBoxQuality - CancelButton - ExportButton - - - - - - - checkBoxImagesFolder - clicked(bool) - lineEditImagesFolder - setEnabled(bool) - - - 539 - 135 - - - 348 - 140 - - - - - checkBoxImagesFolder - clicked(bool) - label_5 - setEnabled(bool) - - - 542 - 135 - - - 137 - 140 - - - - - CancelButton - clicked() - ExportToHtmlDialog - reject() - - - 443 - 323 - - - 253 - 250 - - - - - diff -Nru luminance-hdr-2.5.0/src/MainWindow/MainWindow.cpp luminance-hdr-2.5.1/src/MainWindow/MainWindow.cpp --- luminance-hdr-2.5.0/src/MainWindow/MainWindow.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/MainWindow.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -58,8 +58,6 @@ #include "MainWindow/DnDOption.h" #include "MainWindow/UpdateChecker.h" #include "MainWindow/DonationDialog.h" -#include "MainWindow/ExportToHtmlDialog.h" -#include "MainWindow/SupportedCamerasDialog.h" #include "Libpfs/frame.h" #include "Libpfs/params.h" @@ -85,6 +83,8 @@ #include "UI/TiffModeDialog.h" #include "UI/UMessageBox.h" #include "UI/GammaAndLevels.h" +#include "UI/ExportToHtmlDialog.h" +#include "UI/SupportedCamerasDialog.h" #ifdef HAVE_CFITSIO #include "UI/FitsImporter.h" @@ -126,9 +126,9 @@ if ( !outputFilename.isEmpty() ) { - QFileInfo qfi(outputFilename); + QFileInfo qfi(outputFilename); - LuminanceOptions().setDefaultPathLdrOut( qfi.path() ); + LuminanceOptions().setDefaultPathLdrOut( qfi.path() ); } return outputFilename; } @@ -136,7 +136,7 @@ QString getHdrFileNameFromSaveDialog(const QString& suggestedFileName, QWidget* parent = 0) { #ifdef QT_DEBUG - qDebug() << "MainWindow::getHdrFileNameFromSaveDialog(" << suggestedFileName << ")"; + qDebug() << "MainWindow::getHdrFileNameFromSaveDialog(" << suggestedFileName << ")"; #endif static const QString filetypes = "OpenEXR (*.exr *.EXR);;" @@ -195,6 +195,7 @@ : QMainWindow(parent) , m_Ui(new Ui::MainWindow) , m_exportQueueSize(0) + , m_interpolationMethod(BilinearInterp) , m_firstWindow(0) , m_winId(0) { @@ -207,6 +208,7 @@ : QMainWindow(parent) , m_Ui(new Ui::MainWindow) , m_exportQueueSize(0) + , m_interpolationMethod(BilinearInterp) , m_firstWindow(0) , m_winId(0) { @@ -291,6 +293,7 @@ qRegisterMetaType >("QVector"); qRegisterMetaType("pfs::Params"); qRegisterMetaType("pfs::Params*"); + qRegisterMetaType("InterpolationMethod"); } createUI(); @@ -301,23 +304,23 @@ createStatusBar(); setupIO(); setupTM(); - setupQueue(); + setupQueue(); createConnections(); OsIntegration::getInstance().init(this); if ( sm_NumMainWindows == 1 ) { - if (OsIntegration::getInstance().isRunningOnSameCpuPlatform()) + if (OsIntegration::getInstance().isRunningOnSameCpuPlatform()) { - sm_updateChecker.reset(new UpdateChecker(this)); - connect(sm_updateChecker.data(), SIGNAL(updateAvailable()), this, SLOT(onUpdateAvailable())); + sm_updateChecker.reset(new UpdateChecker(this)); + connect(sm_updateChecker.data(), SIGNAL(updateAvailable()), this, SLOT(onUpdateAvailable())); m_firstWindow = 2; } - else + else m_firstWindow = 1; } - + } void MainWindow::createUI() @@ -396,9 +399,9 @@ m_bottom_splitter->restoreState(luminance_options->value("MainWindowBottomSplitterState").toByteArray()); m_bottom_splitter->restoreGeometry(luminance_options->value("MainWindowBottomSplitterGeometry").toByteArray()); - QPalette pal = m_tabwidget->palette(); - pal.setColor(QPalette::Dark, Qt::darkGray); - m_tabwidget->setPalette(pal); + QPalette pal = m_tabwidget->palette(); + pal.setColor(QPalette::Dark, Qt::darkGray); + m_tabwidget->setPalette(pal); m_tabwidget->setBackgroundRole(QPalette::Dark); m_tabwidget->setAutoFillBackground( true ); @@ -482,7 +485,7 @@ //recent files initRecentFileActions(); updateRecentFileActions(); - + #ifndef HAVE_CFITSIO m_Ui->actionFits_Importer->setVisible(false); #endif @@ -509,19 +512,19 @@ case Qt::ToolButtonIconOnly: Icons_Only(); m_Ui->actionIcons_Only->setChecked(true); - break; + break; case Qt::ToolButtonTextOnly: Text_Only(); m_Ui->actionText_Only->setChecked(true); - break; + break; case Qt::ToolButtonTextBesideIcon: Text_Alongside_Icons(); m_Ui->actionText_Alongside_Icons->setChecked(true); - break; + break; case Qt::ToolButtonTextUnderIcon: Text_Under_Icons(); m_Ui->actionText_Under_Icons->setChecked(true); - break; + break; } m_Ui->actionShowPreviewPanel->setChecked(luminance_options->isPreviewPanelActive()); m_Ui->actionRealtimePreviews->setChecked(luminance_options->isRealtimePreviewsActive()); @@ -538,7 +541,7 @@ void MainWindow::on_fileNewAction_triggered() { - createNewHdr(QStringList()); // redirect on createNewHdr-method to avoid moc warning + createNewHdr(QStringList()); // redirect on createNewHdr-method to avoid moc warning } void MainWindow::createNewHdr(const QStringList& files) @@ -779,12 +782,12 @@ #ifdef QT_DEBUG qDebug() << "MainWindow::updateActions(" << w << ")"; #endif - bool hasImage = w >= 0; - GenericViewer* g_v = hasImage ? (GenericViewer*)m_tabwidget->widget(w) : 0; - bool isHdr = g_v ? g_v->isHDR() : false; - bool isLdr = g_v ? !g_v->isHDR() : false; - LuminanceOptions luminance_opts; - bool hasPrinterProfile = !luminance_opts.getPrinterProfileFileName().isEmpty(); + bool hasImage = w >= 0; + GenericViewer* g_v = hasImage ? (GenericViewer*)m_tabwidget->widget(w) : 0; + bool isHdr = g_v ? g_v->isHDR() : false; + bool isLdr = g_v ? !g_v->isHDR() : false; + LuminanceOptions luminance_opts; + bool hasPrinterProfile = !luminance_opts.getPrinterProfileFileName().isEmpty(); updateMagnificationButtons(g_v); // g_v ? g_v : 0 @@ -1180,6 +1183,12 @@ this, SLOT(updateMagnificationButtons(GenericViewer*))); connect(newhdr, SIGNAL(reparent(GenericViewer*)), this, SLOT(reparentViewer(GenericViewer*))); + connect(newhdr, SIGNAL(goNext(GenericViewer*)), + this, SLOT(showNextViewer(GenericViewer*))); + connect(newhdr, SIGNAL(goPrevious(GenericViewer*)), + this, SLOT(showPreviousViewer(GenericViewer*))); + connect(newhdr, SIGNAL(syncViewers(GenericViewer*)), + this, SLOT(setSyncViewers(GenericViewer*))); newhdr->setViewerMode( getCurrentViewerMode(*m_tabwidget) ); @@ -1321,7 +1330,7 @@ void MainWindow::on_actionAbout_Luminance_triggered() { - UMessageBox::about(); + UMessageBox::about(); } /* @@ -1437,9 +1446,13 @@ void MainWindow::changeEvent(QEvent *event) { - if (event->type() == QEvent::LanguageChange) - m_Ui->retranslateUi(this); - QWidget::changeEvent(event); + if (event->type() == QEvent::LanguageChange) + { + m_Ui->retranslateUi(this); + setWindowTitle(QString("Luminance HDR " LUMINANCEVERSION " [*]")); + } + + QWidget::changeEvent(event); } void MainWindow::closeEvent( QCloseEvent *event ) @@ -1456,16 +1469,16 @@ bool MainWindow::event(QEvent* event) { - bool result = QMainWindow::event(event); + bool result = QMainWindow::event(event); if (event->type() == QEvent::WindowActivate && m_firstWindow == 1) { m_firstWindow = 2; if (luminance_options->doShowWindowsOnWindows64Message()) { - QMessageBox::warning(this, "Luminance HDR 32-bit on 64-bit", tr("It appears that you are running the 32-bit version Luminance HDR on a 64-bit system.
Please download the 64-bit version from http://qtpfsgui.sourceforge.net to get the best Luminance HDR experience!"), QMessageBox::Ok, QMessageBox::NoButton); + QMessageBox::warning(this, "Luminance HDR 32-bit on 64-bit", tr("It appears that you are running the 32-bit version Luminance HDR on a 64-bit system.
Please download the 64-bit version from http://qtpfsgui.sourceforge.net to get the best Luminance HDR experience!"), QMessageBox::Ok, QMessageBox::NoButton); } - } - return result; + } + return result; } bool MainWindow::maybeSave() @@ -1555,38 +1568,38 @@ void MainWindow::setupQueue() { - m_QueueProgressBar = new TMOProgressIndicator; - m_QueueProgressBar->hide(); - statusBar()->addWidget(m_QueueProgressBar); - - connect(this, SIGNAL(destroyed()), m_QueueProgressBar, SLOT(deleteLater())); - - m_QueueWorker = new TMWorker; - m_QueueThread = new QThread; - - m_QueueWorker->moveToThread(m_QueueThread); - - // Memory Management - connect(this, SIGNAL(destroyed()), m_QueueWorker, SLOT(deleteLater())); - connect(m_QueueWorker, SIGNAL(destroyed()), m_QueueThread, SLOT(deleteLater())); - - // get back result! - //connect(m_QueueWorker, SIGNAL(tonemapSuccess(pfs::Frame*, TonemappingOptions*)), - // this, SLOT(addLdrFrame(pfs::Frame*, TonemappingOptions*))); - connect(m_QueueWorker, SIGNAL(tonemapFailed(QString)), - this, SLOT(tonemapFailed(QString))); - - // progress bar handling - connect(m_QueueWorker, SIGNAL(tonemapBegin()), this, SLOT(exportBegin())); - connect(m_QueueWorker, SIGNAL(tonemapEnd()), this, SLOT(exportEnd())); - - connect(m_QueueWorker, SIGNAL(tonemapSetValue(int)), m_QueueProgressBar, SLOT(setValue(int))); - connect(m_QueueWorker, SIGNAL(tonemapSetMaximum(int)), m_QueueProgressBar, SLOT(setMaximum(int))); - connect(m_QueueWorker, SIGNAL(tonemapSetMinimum(int)), m_QueueProgressBar, SLOT(setMinimum(int))); - connect(m_QueueProgressBar, SIGNAL(terminate()), m_QueueWorker, SIGNAL(tonemapRequestTermination()), Qt::DirectConnection); + m_QueueProgressBar = new TMOProgressIndicator; + m_QueueProgressBar->hide(); + statusBar()->addWidget(m_QueueProgressBar); + + connect(this, SIGNAL(destroyed()), m_QueueProgressBar, SLOT(deleteLater())); + + m_QueueWorker = new TMWorker; + m_QueueThread = new QThread; + + m_QueueWorker->moveToThread(m_QueueThread); + + // Memory Management + connect(this, SIGNAL(destroyed()), m_QueueWorker, SLOT(deleteLater())); + connect(m_QueueWorker, SIGNAL(destroyed()), m_QueueThread, SLOT(deleteLater())); + + // get back result! + //connect(m_QueueWorker, SIGNAL(tonemapSuccess(pfs::Frame*, TonemappingOptions*)), + // this, SLOT(addLdrFrame(pfs::Frame*, TonemappingOptions*))); + connect(m_QueueWorker, SIGNAL(tonemapFailed(QString)), + this, SLOT(tonemapFailed(QString))); + + // progress bar handling + connect(m_QueueWorker, SIGNAL(tonemapBegin()), this, SLOT(exportBegin())); + connect(m_QueueWorker, SIGNAL(tonemapEnd()), this, SLOT(exportEnd())); - // start thread waiting for signals (I/O requests) - m_QueueThread->start(); + connect(m_QueueWorker, SIGNAL(tonemapSetValue(int)), m_QueueProgressBar, SLOT(setValue(int))); + connect(m_QueueWorker, SIGNAL(tonemapSetMaximum(int)), m_QueueProgressBar, SLOT(setMaximum(int))); + connect(m_QueueWorker, SIGNAL(tonemapSetMinimum(int)), m_QueueProgressBar, SLOT(setMinimum(int))); + connect(m_QueueProgressBar, SIGNAL(terminate()), m_QueueWorker, SIGNAL(tonemapRequestTermination()), Qt::DirectConnection); + + // start thread waiting for signals (I/O requests) + m_QueueThread->start(); } void MainWindow::tonemapBegin() @@ -1605,15 +1618,15 @@ void MainWindow::exportBegin() { - m_QueueProgressBar->setMaximum(0); - m_QueueProgressBar->show(); + m_QueueProgressBar->setMaximum(0); + m_QueueProgressBar->show(); } void MainWindow::exportEnd() { - m_tonemapPanel->setExportQueueSize(--m_exportQueueSize); - m_QueueProgressBar->hide(); - m_QueueProgressBar->reset(); + m_tonemapPanel->setExportQueueSize(--m_exportQueueSize); + m_QueueProgressBar->hide(); + m_QueueProgressBar->reset(); } @@ -1681,7 +1694,8 @@ #endif //CALL m_TMWorker->getTonemappedFrame(hdr_viewer->getHDRPfsFrame(), opts); QMetaObject::invokeMethod(m_TMWorker, "computeTonemap", Qt::QueuedConnection, - Q_ARG(pfs::Frame*, hdr_viewer->getFrame()), Q_ARG(TonemappingOptions*,opts)); + Q_ARG(pfs::Frame*, hdr_viewer->getFrame()), Q_ARG(TonemappingOptions*,opts), + Q_ARG(InterpolationMethod, m_interpolationMethod)); } } @@ -1699,16 +1713,17 @@ QString exportDir = luminance_options->getExportDir(); - m_tonemapPanel->setExportQueueSize(++m_exportQueueSize); + m_tonemapPanel->setExportQueueSize(++m_exportQueueSize); - QMetaObject::invokeMethod(m_QueueWorker, "computeTonemapAndExport", Qt::QueuedConnection, + QMetaObject::invokeMethod(m_QueueWorker, "computeTonemapAndExport", Qt::QueuedConnection, Q_ARG(pfs::Frame*, hdr_viewer->getFrame()), Q_ARG(TonemappingOptions*,opts), Q_ARG(pfs::Params,params), Q_ARG(QString, exportDir), Q_ARG(QString, hdrName), Q_ARG(QString, inputfname), - Q_ARG(QVector, m_inputExpoTimes) + Q_ARG(QVector, m_inputExpoTimes), + Q_ARG(InterpolationMethod, m_interpolationMethod) ); } } @@ -1716,10 +1731,11 @@ void MainWindow::addLdrFrame(pfs::Frame *frame, TonemappingOptions* tm_options) { - if (m_tonemapPanel->getAutoLevels()) { - float minL, maxL, gammaL; + if (m_tonemapPanel->doAutoLevels()) { + float threshold, minL, maxL, gammaL; + threshold = m_tonemapPanel->getAutoLevelsThreshold(); QScopedPointer temp_qimage( fromLDRPFStoQImage(frame) ); - computeAutolevels(temp_qimage.data(), minL, maxL, gammaL); + computeAutolevels(temp_qimage.data(), threshold, minL, maxL, gammaL); pfs::gammaAndLevels(frame, minL, maxL, 0.f, 1.f, gammaL); } @@ -1738,6 +1754,9 @@ connect(n, SIGNAL(changed(GenericViewer *)), this, SLOT(syncViewers(GenericViewer *))); connect(n, SIGNAL(changed(GenericViewer*)), this, SLOT(updateMagnificationButtons(GenericViewer*))); connect(n, SIGNAL(reparent(GenericViewer*)), this, SLOT(reparentViewer(GenericViewer*))); + connect(n, SIGNAL(goNext(GenericViewer*)), this, SLOT(showNextViewer(GenericViewer*))); + connect(n, SIGNAL(goPrevious(GenericViewer*)), this, SLOT(showPreviousViewer(GenericViewer*))); + connect(n, SIGNAL(syncViewers(GenericViewer*)), this, SLOT(setSyncViewers(GenericViewer*))); if (num_ldr_generated == 1) m_tabwidget->addTab(n, tr("Untitled")); @@ -1751,14 +1770,14 @@ m_PreviewPanel->setEnabled(true); - if (m_Ui->actionSoft_Proofing->isChecked()) { - LdrViewer *viewer = static_cast(n); - viewer->doSoftProofing(false); - } - else if (m_Ui->actionGamut_Check->isChecked()) { - LdrViewer *viewer = static_cast(n); - viewer->doSoftProofing(true); - } + if (m_Ui->actionSoft_Proofing->isChecked()) { + LdrViewer *viewer = static_cast(n); + viewer->doSoftProofing(false); + } + else if (m_Ui->actionGamut_Check->isChecked()) { + LdrViewer *viewer = static_cast(n); + viewer->doSoftProofing(true); + } } void MainWindow::tonemapFailed(const QString& error_msg) @@ -1807,42 +1826,50 @@ void MainWindow::showPreviewPanel(bool b) { + m_Ui->actionRealtimePreviews->setEnabled(b); if (b) { if (tm_status.is_hdr_ready) { m_PreviewscrollArea->show(); + if (m_Ui->actionRealtimePreviews->isChecked()) + { + connect(m_Ui->actionRealtimePreviews, SIGNAL(toggled(bool)), m_tonemapPanel, SLOT(setRealtimePreviews(bool))); + m_tonemapPanel->setRealtimePreviews(true); + } // ask panel to refresh itself - m_PreviewPanel->setAutolevels(m_tonemapPanel->getAutoLevels()); + m_PreviewPanel->setAutolevels(m_tonemapPanel->doAutoLevels(), m_tonemapPanel->getAutoLevelsThreshold()); m_PreviewPanel->updatePreviews(tm_status.curr_tm_frame->getFrame()); // connect signals connect(this, SIGNAL(updatedHDR(pfs::Frame*)), m_PreviewPanel, SLOT(updatePreviews(pfs::Frame*))); connect(m_PreviewPanel, SIGNAL(startTonemapping(TonemappingOptions*)), this, SLOT(tonemapImage(TonemappingOptions*))); connect(m_PreviewPanel, SIGNAL(startTonemapping(TonemappingOptions*)), m_tonemapPanel, SLOT(updateTonemappingParams(TonemappingOptions*))); - connect(m_tonemapPanel, SIGNAL(autoLevels(bool)), this, SLOT(updatePreviews(bool))); + connect(m_tonemapPanel, SIGNAL(autoLevels(bool, float)), this, SLOT(updatePreviews(bool, float))); } } else { m_PreviewscrollArea->hide(); + m_tonemapPanel->setRealtimePreviews(false); // disconnect signals + disconnect(m_Ui->actionRealtimePreviews, SIGNAL(toggled(bool)), m_tonemapPanel, SLOT(setRealtimePreviews(bool))); disconnect(this, SIGNAL(updatedHDR(pfs::Frame*)), m_PreviewPanel, SLOT(updatePreviews(pfs::Frame*))); disconnect(m_PreviewPanel, SIGNAL(startTonemapping(TonemappingOptions*)), this, SLOT(tonemapImage(TonemappingOptions*))); disconnect(m_PreviewPanel, SIGNAL(startTonemapping(TonemappingOptions*)), m_tonemapPanel, SLOT(updateTonemappingParams(TonemappingOptions*))); - disconnect(m_tonemapPanel, SIGNAL(autoLevels(bool)), this, SLOT(updatePreviews(bool))); + disconnect(m_tonemapPanel, SIGNAL(autoLevels(bool, float)), this, SLOT(updatePreviews(bool, float))); } } -void MainWindow::updatePreviews(bool b) +void MainWindow::updatePreviews(bool b, float th) { if (m_Ui->actionShowPreviewPanel->isChecked()) { if (tm_status.is_hdr_ready) { - m_PreviewPanel->setAutolevels(b); + m_PreviewPanel->setAutolevels(b, th); // ask panel to refresh itself m_PreviewPanel->updatePreviews(tm_status.curr_tm_frame->getFrame()); } @@ -1851,10 +1878,10 @@ void MainWindow::updateMagnificationButtons(GenericViewer* c_v) { - bool hasImage = c_v != NULL; - bool isNormalSize = c_v && c_v->isNormalSize(); - bool isFilledToWindow = c_v && c_v->isFilledToWindow(); - bool isFittedToWindow = c_v && c_v->isFittedToWindow(); + bool hasImage = c_v != NULL; + bool isNormalSize = c_v && c_v->isNormalSize(); + bool isFilledToWindow = c_v && c_v->isFilledToWindow(); + bool isFittedToWindow = c_v && c_v->isFittedToWindow(); m_Ui->zoomInAct->setEnabled(hasImage && (isFilledToWindow || isFittedToWindow)); m_Ui->zoomOutAct->setEnabled(hasImage && !isFittedToWindow); @@ -1869,7 +1896,7 @@ void MainWindow::on_actionRemove_Tab_triggered() { - removeTab(m_tabwidget->currentIndex()); + removeTab(m_tabwidget->currentIndex()); } void MainWindow::removeTab(int t) @@ -1883,7 +1910,7 @@ w->blockSignals(true); if (w->isHDR()) { - bool doClose = false; + bool doClose = false; #ifdef QT_DEBUG qDebug() << "Remove HDR from MainWindow"; @@ -1893,7 +1920,7 @@ if ( maybeSave() ) { // if discard OR saved - doClose = true; + doClose = true; } // if FALSE, it means that the user said "Cancel" // or the saving operation went wrong @@ -1903,25 +1930,25 @@ } } else - doClose = true; + doClose = true; if (doClose) { - m_tabwidget->removeTab(t); - w->deleteLater(); // delete yourself whenever you want + m_tabwidget->removeTab(t); + w->deleteLater(); // delete yourself whenever you want - showPreviewPanel(false); - setWindowModified(false); + showPreviewPanel(false); + setWindowModified(false); - tm_status.is_hdr_ready = false; - tm_status.curr_tm_frame = NULL; - tm_status.curr_tm_options = NULL; + tm_status.is_hdr_ready = false; + tm_status.curr_tm_frame = NULL; + tm_status.curr_tm_options = NULL; m_tonemapPanel->setEnabled(false); m_inputFilesName.clear(); m_inputExpoTimes.clear(); - m_PreviewscrollArea->hide(); + m_PreviewscrollArea->hide(); } } else @@ -1989,9 +2016,9 @@ if (mainWin) mainWin->updateRecentFileActions(); } - + OsIntegration::getInstance().addRecentFile(fileName); - + } void MainWindow::updateRecentFileActions() @@ -2081,9 +2108,9 @@ QApplication::setOverrideCursor( QCursor(Qt::WaitCursor) ); m_Ui->actionWhite_Balance->setEnabled(false); m_processingAWB = true; - m_viewerToProcess = (GenericViewer*) m_tabwidget->currentWidget(); + m_viewerToProcess = (GenericViewer*) m_tabwidget->currentWidget(); m_tabwidget->setTabEnabled(m_tabwidget->currentIndex(), false); - + Frame *frame = m_viewerToProcess->getFrame(); m_futureWatcher.setFuture( @@ -2096,8 +2123,8 @@ void MainWindow::whiteBalanceDone() { QApplication::restoreOverrideCursor(); - m_processingAWB = false; - m_Ui->actionWhite_Balance->setEnabled(true); + m_processingAWB = false; + m_Ui->actionWhite_Balance->setEnabled(true); m_viewerToProcess->setEnabled(true); m_tabwidget->setTabEnabled(m_tabwidget->indexOf(m_viewerToProcess), true); m_tabwidget->setCurrentWidget(m_viewerToProcess); @@ -2110,52 +2137,52 @@ void MainWindow::on_actionSoft_Proofing_toggled(bool doProof) { - GenericViewer* current = (GenericViewer*) m_tabwidget->currentWidget(); + GenericViewer* current = (GenericViewer*) m_tabwidget->currentWidget(); if ( current == NULL ) return; - if ( current->isHDR() ) return; - LdrViewer *viewer = (LdrViewer *) current; - if (doProof) { + if ( current->isHDR() ) return; + LdrViewer *viewer = (LdrViewer *) current; + if (doProof) { #ifdef QT_DEBUG - qDebug() << "MainWindow:: do soft proofing"; + qDebug() << "MainWindow:: do soft proofing"; #endif - if (m_Ui->actionGamut_Check->isChecked()) - m_Ui->actionGamut_Check->setChecked(false); - viewer->doSoftProofing(false); - } - else { + if (m_Ui->actionGamut_Check->isChecked()) + m_Ui->actionGamut_Check->setChecked(false); + viewer->doSoftProofing(false); + } + else { #ifdef QT_DEBUG - qDebug() << "MainWindow:: undo soft proofing"; + qDebug() << "MainWindow:: undo soft proofing"; #endif - viewer->undoSoftProofing(); - } + viewer->undoSoftProofing(); + } } void MainWindow::on_actionGamut_Check_toggled(bool doGamut) { - GenericViewer* current = (GenericViewer*) m_tabwidget->currentWidget(); + GenericViewer* current = (GenericViewer*) m_tabwidget->currentWidget(); if ( current == NULL ) return; - if ( current->isHDR() ) return; - LdrViewer *viewer = (LdrViewer *) current; - if (doGamut) { + if ( current->isHDR() ) return; + LdrViewer *viewer = (LdrViewer *) current; + if (doGamut) { #ifdef QT_DEBUG - qDebug() << "MainWindow:: do gamut check"; + qDebug() << "MainWindow:: do gamut check"; #endif - if (m_Ui->actionSoft_Proofing->isChecked()) - m_Ui->actionSoft_Proofing->setChecked(false); - viewer->doSoftProofing(true); - } - else { + if (m_Ui->actionSoft_Proofing->isChecked()) + m_Ui->actionSoft_Proofing->setChecked(false); + viewer->doSoftProofing(true); + } + else { #ifdef QT_DEBUG - qDebug() << "MainWindow:: undo gamut check"; + qDebug() << "MainWindow:: undo gamut check"; #endif - viewer->undoSoftProofing(); - } + viewer->undoSoftProofing(); + } } void MainWindow::updateSoftProofing(int i) { - QWidget *wgt = m_tabwidget->widget(i); - GenericViewer *g_v = (GenericViewer *)wgt; + QWidget *wgt = m_tabwidget->widget(i); + GenericViewer *g_v = (GenericViewer *)wgt; if (g_v == NULL) return; if ( !g_v->isHDR() ) @@ -2222,3 +2249,70 @@ m_tabwidget->setCurrentIndex(m_viewerIndex); g_v->showNormal(); } + +void MainWindow::showNextViewer(GenericViewer *g_v) +{ + int count = m_tabwidget->count(); + if (count >= 1) + { + m_tabwidget->insertTab(m_viewerIndex, g_v, m_tabText); + m_tabwidget->setCurrentIndex(m_viewerIndex); + //g_v->showNormal(); + int idx = m_tabwidget->currentIndex(); + int next = (idx + 1) % (count + 1); + m_tabwidget->setCurrentIndex(next); + on_actionShow_Image_Full_Screen_triggered(); + } +} + +void MainWindow::showPreviousViewer(GenericViewer *g_v) +{ + int count = m_tabwidget->count(); + if (count >= 1) + { + m_tabwidget->insertTab(m_viewerIndex, g_v, m_tabText); + m_tabwidget->setCurrentIndex(m_viewerIndex); + //g_v->showNormal(); + int idx = m_tabwidget->currentIndex(); + int previous; + if (idx == 0) + { + previous = count; + } + else + { + previous = (idx - 1) % (count + 1); + } + m_tabwidget->setCurrentIndex(previous); + on_actionShow_Image_Full_Screen_triggered(); + } +} + +void MainWindow::setSyncViewers(GenericViewer *g_v) +{ + m_Ui->actionLock->setChecked(!m_Ui->actionLock->isChecked()); + if (m_Ui->actionLock->isChecked() && (m_tabwidget->count() - 1)) + { + syncViewers(g_v); + } +} + +void MainWindow::on_actionSelect_Interpolation_Method_toggled(bool b) +{ + m_interpolationMethod = b ? LanczosInterp: BilinearInterp; +} + +void MainWindow::on_actionOnline_Documentation_triggered() +{ + QDesktopServices::openUrl(QUrl("http://luminancehdr.readthedocs.io/en/latest/")); +} + +void MainWindow::on_actionDevelopers_Website_triggered() +{ + QDesktopServices::openUrl(QUrl("https://github.com/LuminanceHDR/")); +} + +void MainWindow::on_actionLuminance_HDR_Website_triggered() +{ + QDesktopServices::openUrl(QUrl("http://qtpfsgui.sourceforge.net/")); +} diff -Nru luminance-hdr-2.5.0/src/MainWindow/MainWindow.h luminance-hdr-2.5.1/src/MainWindow/MainWindow.h --- luminance-hdr-2.5.0/src/MainWindow/MainWindow.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/MainWindow.h 2017-05-10 19:14:06.000000000 +0000 @@ -48,6 +48,7 @@ #include #include +#include "Common/global.h" #include "Common/LuminanceOptions.h" #define MAX_RECENT_FILES (5) @@ -193,9 +194,9 @@ //void addLDRResult(QImage*, quint16*); void tonemapFailed(const QString&); - // Export queue - void exportBegin(); - void exportEnd(); + // Export queue + void exportBegin(); + void exportEnd(); // lock functionalities void on_actionLock_toggled(bool); @@ -207,18 +208,27 @@ void removeTab(int); void on_actionRemove_Tab_triggered(); - void on_actionSoft_Proofing_toggled(bool); - void on_actionGamut_Check_toggled(bool); - void updateSoftProofing(int); + void on_actionSoft_Proofing_toggled(bool); + void on_actionGamut_Check_toggled(bool); + void updateSoftProofing(int); void on_actionFits_Importer_triggered(); void on_actionShow_Full_Screen_toggled(bool); void on_actionShow_Image_Full_Screen_triggered(); + void on_actionSelect_Interpolation_Method_toggled(bool); - void updatePreviews(bool); + void updatePreviews(bool, float); void reparentViewer(GenericViewer *g_v); + void showNextViewer(GenericViewer *g_v); + void showPreviousViewer(GenericViewer *g_v); + void setSyncViewers(GenericViewer*); + + // Online Docs, Website, GitHub + void on_actionOnline_Documentation_triggered(); + void on_actionDevelopers_Website_triggered(); + void on_actionLuminance_HDR_Website_triggered(); Q_SIGNALS: // update HDR @@ -257,9 +267,9 @@ virtual void dropEvent(QDropEvent *); virtual void changeEvent(QEvent* event); virtual void closeEvent(QCloseEvent *); - virtual bool event(QEvent * event); + virtual bool event(QEvent * event); //! - + void dispatchrotate(bool clockwise); void updateRecentFileActions(); @@ -283,8 +293,8 @@ void createStatusBar(); void setupIO(); void setupTM(); - void setupQueue(); - void createConnections(); + void setupQueue(); + void createConnections(); void updatePreviousNextActions(); @@ -296,9 +306,10 @@ QScrollArea *m_PreviewscrollArea; PreviewPanel *m_PreviewPanel; + private: // UI declaration - Ui::MainWindow* m_Ui; + QScopedPointer m_Ui; // Tone Mapping Panel TonemappingPanel *m_tonemapPanel; @@ -313,19 +324,22 @@ TMWorker* m_TMWorker; TMOProgressIndicator* m_TMProgressBar; - // Export queue - QThread* m_QueueThread; - TMWorker* m_QueueWorker; - TMOProgressIndicator* m_QueueProgressBar; + // Export queue + QThread* m_QueueThread; + TMWorker* m_QueueWorker; + TMOProgressIndicator* m_QueueProgressBar; - int m_exportQueueSize; + int m_exportQueueSize; + + // + InterpolationMethod m_interpolationMethod; QFutureWatcher m_futureWatcher; GenericViewer *m_viewerToProcess; bool m_processingAWB; int m_firstWindow; int m_winId; // unique MainWindow identifier - + static int sm_NumMainWindows; //number of active MainWindows static int sm_counter; // Always increases static QScopedPointer sm_updateChecker; diff -Nru luminance-hdr-2.5.0/src/MainWindow/MainWindow.ui luminance-hdr-2.5.1/src/MainWindow/MainWindow.ui --- luminance-hdr-2.5.0/src/MainWindow/MainWindow.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/MainWindow.ui 2017-05-10 19:14:06.000000000 +0000 @@ -40,6 +40,7 @@ + @@ -52,6 +53,14 @@ &Help + + + Luminance &HDR Online + + + + + @@ -60,6 +69,7 @@ + @@ -1162,6 +1172,53 @@ Ctrl+M + + + true + + + false + + + &Lanczos/Bilinear interpolation + + + <html><head/><body><p>Switch between Lanczos and Bilinear interpolation</p></body></html> + + + Ctrl+K + + + + + &Online Documentation + + + Open Online Documentation Web Site with the System Browser + + + + + &Developers Web Site + + + Developers Web Site + + + Open Developers Web Site with the System Browser + + + + + &Luminance HDR Web Site + + + Luminance HDR Web Site + + + Open Main Web Site with the System Browser + + diff -Nru luminance-hdr-2.5.0/src/MainWindow/SupportedCamerasDialog.cpp luminance-hdr-2.5.1/src/MainWindow/SupportedCamerasDialog.cpp --- luminance-hdr-2.5.0/src/MainWindow/SupportedCamerasDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/SupportedCamerasDialog.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,90 +0,0 @@ -/** - * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2016 Franco Comida - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * @author Franco Comida - */ - -#include -#include "SupportedCamerasDialog.h" -#include "ui_SupportedCamerasDialog.h" -#include "Common/GitSHA1.h" -#include "Common/config.h" - -#ifdef __APPLE__ -#include -#else -#include -#endif - -SupportedCamerasDialog::SupportedCamerasDialog(QWidget* parent) - : QDialog(parent) - , m_Ui(new Ui::SupportedCamerasDialog) -{ - m_Ui->setupUi(this); - - m_Ui->labelVersion->setText(QString(LUMINANCEVERSION) + " [Build " + QString(g_GIT_SHA1).left(6) + "]"); - - const char *version = LibRaw::version(); - int count = LibRaw::cameraCount(); - m_Ui->labelLibRawVersion->setText(m_Ui->labelLibRawVersion->text() + " " + QString(version)); - m_Ui->labelCount->setText(QString("%1").arg(count) + " " + m_Ui->labelCount->text()); - - const char **list = LibRaw::cameraList(); - while (*list) - { - QListWidgetItem *item = new QListWidgetItem(*list++); - m_Ui->listWidget->addItem(item); - m_items.append(new QListWidgetItem(*item)); - } - - connect(m_Ui->lineEdit, SIGNAL(textEdited(const QString &)), this, SLOT(search(const QString &))); -} - -SupportedCamerasDialog::~SupportedCamerasDialog() -{ - while (!m_items.isEmpty()) - delete m_items.takeFirst(); -} - -// I REALLY HATE this implementation!!! -void SupportedCamerasDialog::search(const QString &text) -{ - m_Ui->listWidget->clear(); - - //for (auto i : m_items) - BOOST_FOREACH (QListWidgetItem *i, m_items) - { - m_Ui->listWidget->addItem(new QListWidgetItem(*i)); // listWidget takes ownership of its items - } - QList tmp_found = m_Ui->listWidget->findItems(text, Qt::MatchContains); // still owned by listWidget - QList found; - //for (auto i : tmp_found) - BOOST_FOREACH (QListWidgetItem *i, tmp_found) - { - found.append(new QListWidgetItem(*i)); // new copy owned by found QList - } - m_Ui->listWidget->clear(); - //for (auto i : found) - BOOST_FOREACH (QListWidgetItem *i, found) - { - m_Ui->listWidget->addItem(i); // ownership transferred by found to listWidget - } -} - diff -Nru luminance-hdr-2.5.0/src/MainWindow/SupportedCamerasDialog.h luminance-hdr-2.5.1/src/MainWindow/SupportedCamerasDialog.h --- luminance-hdr-2.5.0/src/MainWindow/SupportedCamerasDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/SupportedCamerasDialog.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,51 +0,0 @@ -/** - * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2016 Franco Comida - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * @author Franco Comida - */ - -#ifndef SUPPORTEDCAMERASDIALOG_H -#define SUPPORTEDCAMERASDIALOG_H - -#include -#include -#include - -namespace Ui -{ - class SupportedCamerasDialog; -} - -class SupportedCamerasDialog : public QDialog -{ - Q_OBJECT -public: - explicit SupportedCamerasDialog(QWidget* parent); - ~SupportedCamerasDialog(); - -private: - QList m_items; - QScopedPointer m_Ui; - -public slots: - void search(const QString &); -}; - -#endif // SUPPORTEDCAMERASDIALOG_H diff -Nru luminance-hdr-2.5.0/src/MainWindow/SupportedCamerasDialog.ui luminance-hdr-2.5.1/src/MainWindow/SupportedCamerasDialog.ui --- luminance-hdr-2.5.0/src/MainWindow/SupportedCamerasDialog.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/SupportedCamerasDialog.ui 1970-01-01 00:00:00.000000000 +0000 @@ -1,225 +0,0 @@ - - - SupportedCamerasDialog - - - - 0 - 0 - 400 - 581 - - - - List of supported cameras - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - 0 - 0 - - - - - - - :/program-icons/luminance-hdr - - - - - - - - 12 - 75 - true - - - - TextLabel - - - - - - - - 14 - 75 - true - - - - <b>Luminance HDR</b> - - - Qt::RichText - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - - - - With LibRaw version - - - - - - - - - - - models listed - - - - - - - - - - - - - - - search... - - - true - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - OK - - - - - - - - - - - - lineEdit - pushButton - listWidget - - - - - - - pushButton - clicked() - SupportedCamerasDialog - accept() - - - 329 - 563 - - - 232 - 555 - - - - - diff -Nru luminance-hdr-2.5.0/src/MainWindow/UpdateChecker.cpp luminance-hdr-2.5.1/src/MainWindow/UpdateChecker.cpp --- luminance-hdr-2.5.0/src/MainWindow/UpdateChecker.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/MainWindow/UpdateChecker.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -43,9 +43,9 @@ connect(m_networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(requestFinished(QNetworkReply*))); connect(m_tray, SIGNAL(messageClicked()), this, SLOT(trayMessageClicked())); connect(m_tray, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayMessageClicked())); - - QNetworkRequest request = QNetworkRequest(QUrl(QString("http://qtpfsgui.sourceforge.net/updater/get.php?c=%1").arg(LUMINANCEVERSION_NUM))); - request.setRawHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1667.0 Safari/537.36"); + + QNetworkRequest request = QNetworkRequest(QUrl(QString("http://qtpfsgui.sourceforge.net/updater/get.php?c=%1").arg(LUMINANCEVERSION_NUM))); + request.setRawHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1667.0 Safari/537.36"); m_networkManager->get(request); } } @@ -68,7 +68,7 @@ { LuminanceOptions options; options.setUpdateChecked(); - + QDomDocument document; document.setContent(reply); @@ -87,7 +87,7 @@ { m_version = nodeVersion.toElement().text(); m_latestUrl = nodeUrl.toElement().text(); - + if (m_version == LUMINANCEVERSION) return; qDebug() << m_version; @@ -125,7 +125,7 @@ } } #endif - } + } } } } diff -Nru luminance-hdr-2.5.0/src/OsIntegration/ecwin7.cpp luminance-hdr-2.5.1/src/OsIntegration/ecwin7.cpp --- luminance-hdr-2.5.0/src/OsIntegration/ecwin7.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/OsIntegration/ecwin7.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -49,23 +49,23 @@ taskbarProgress->setValue(value); } -void EcWin7::associateFileTypes(const QStringList &fileTypes) -{ - QString displayName = QGuiApplication::applicationDisplayName(); - QString filePath = QCoreApplication::applicationFilePath(); - QString fileName = QFileInfo(filePath).fileName(); - - QSettings settings("HKEY_CURRENT_USER\\Software\\Classes\\Applications\\" + fileName, QSettings::NativeFormat); - settings.setValue("FriendlyAppName", displayName); - - settings.beginGroup("SupportedTypes"); - foreach (const QString& fileType, fileTypes) - settings.setValue(fileType, QString()); - settings.endGroup(); - - settings.beginGroup("shell"); - settings.beginGroup("open"); - settings.setValue("FriendlyAppName", displayName); - settings.beginGroup("Command"); - settings.setValue(".", QChar('"') + QDir::toNativeSeparators(filePath) + QString("\" \"%1\"")); +void EcWin7::associateFileTypes(const QStringList &fileTypes) +{ + QString displayName = QGuiApplication::applicationDisplayName(); + QString filePath = QCoreApplication::applicationFilePath(); + QString fileName = QFileInfo(filePath).fileName(); + + QSettings settings("HKEY_CURRENT_USER\\Software\\Classes\\Applications\\" + fileName, QSettings::NativeFormat); + settings.setValue("FriendlyAppName", displayName); + + settings.beginGroup("SupportedTypes"); + foreach (const QString& fileType, fileTypes) + settings.setValue(fileType, QString()); + settings.endGroup(); + + settings.beginGroup("shell"); + settings.beginGroup("open"); + settings.setValue("FriendlyAppName", displayName); + settings.beginGroup("Command"); + settings.setValue(".", QChar('"') + QDir::toNativeSeparators(filePath) + QString("\" \"%1\"")); } \ No newline at end of file diff -Nru luminance-hdr-2.5.0/src/OsIntegration/ecwin7.h luminance-hdr-2.5.1/src/OsIntegration/ecwin7.h --- luminance-hdr-2.5.0/src/OsIntegration/ecwin7.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/OsIntegration/ecwin7.h 2017-05-10 19:14:06.000000000 +0000 @@ -13,7 +13,7 @@ { public: - // Initialization methods + // Initialization methods EcWin7(); void init(QWidget* wid); void addRecentFile(const QString& filename); diff -Nru luminance-hdr-2.5.0/src/OsIntegration/osintegration.cpp luminance-hdr-2.5.1/src/OsIntegration/osintegration.cpp --- luminance-hdr-2.5.0/src/OsIntegration/osintegration.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/OsIntegration/osintegration.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -59,20 +59,20 @@ OsIntegration& OsIntegration::getInstance() { - if (!instance) + if (!instance) { - instance = new OsIntegration(); + instance = new OsIntegration(); } - return *instance; + return *instance; } OsIntegration* OsIntegration::getInstancePtr() { if (!instance) { - instance = new OsIntegration(); + instance = new OsIntegration(); } - return instance; + return instance; } void OsIntegration::init(QWidget* mainWindow) @@ -90,7 +90,7 @@ #ifdef Q_OS_WIN if (m_winProgressbar) { - m_winProgressbar->setProgressValue(value, max); + m_winProgressbar->setProgressValue(value, max); } #endif } @@ -100,7 +100,7 @@ #ifdef Q_OS_WIN if (m_winProgressbar) { - m_winProgressbar->setProgressValue(value, m_progressMax - m_progressMin); + m_winProgressbar->setProgressValue(value, m_progressMax - m_progressMin); } #endif } @@ -116,7 +116,7 @@ #ifdef Q_OS_WIN if (m_winProgressbar) { - m_winProgressbar->addRecentFile(filename); + m_winProgressbar->addRecentFile(filename); } #endif } diff -Nru luminance-hdr-2.5.0/src/OsIntegration/osintegration.h luminance-hdr-2.5.1/src/OsIntegration/osintegration.h --- luminance-hdr-2.5.0/src/OsIntegration/osintegration.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/OsIntegration/osintegration.h 2017-05-10 19:14:06.000000000 +0000 @@ -36,35 +36,35 @@ class OsIntegration : public QObject { Q_OBJECT - + public: - static OsIntegration& getInstance(); + static OsIntegration& getInstance(); static OsIntegration* getInstancePtr(); - void init(QWidget* mainWindow); - void setProgress(int value, int max = 100); + void init(QWidget* mainWindow); + void setProgress(int value, int max = 100); ~OsIntegration(); - + bool isRunningOnSameCpuPlatform(); - + void addRecentFile(const QString& filename); -public Q_SLOTS: - void setProgressValue(int value); - void setProgressRange(int min, int max); +public Q_SLOTS: + void setProgressValue(int value); + void setProgressRange(int min, int max); private: - OsIntegration(); - OsIntegration(const OsIntegration&); - OsIntegration& operator=(const OsIntegration&); - - static OsIntegration* instance; - int m_progressMin; - int m_progressMax; + OsIntegration(); + OsIntegration(const OsIntegration&); + OsIntegration& operator=(const OsIntegration&); + + static OsIntegration* instance; + int m_progressMin; + int m_progressMax; #ifdef Q_OS_WIN - EcWin7* m_winProgressbar; + EcWin7* m_winProgressbar; #endif }; diff -Nru luminance-hdr-2.5.0/src/Preferences/PreferencesDialog.cpp luminance-hdr-2.5.1/src/Preferences/PreferencesDialog.cpp --- luminance-hdr-2.5.0/src/Preferences/PreferencesDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Preferences/PreferencesDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -60,11 +60,11 @@ #define KEY_GREEN_TOOLBUTTON "preference_dialog/green_toolButton" #ifdef WIN32 - #define ICC_PATH "C:\\WINDOWS\\system32\\spool\\drivers\\color" + #define ICC_PATH "C:\\WINDOWS\\system32\\spool\\drivers\\color" #elif defined __APPLE__ - #define ICC_PATH "/Library/ColorSync/Profiles/" + #define ICC_PATH "/Library/ColorSync/Profiles/" #else - #define ICC_PATH "/usr/share/color/icc" + #define ICC_PATH "/usr/share/color/icc" #endif namespace @@ -97,51 +97,51 @@ connect(m_Ui->themeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(on_themeChanged())); #ifdef DEMOSAICING_GPL2 - qDebug() << "PreferencesDialog: Found demosaicing pack GPL2"; - m_Ui->user_qual_comboBox->addItem("DCB"); - m_Ui->user_qual_comboBox->addItem("AHD v2"); - m_Ui->user_qual_comboBox->addItem("AFD"); - m_Ui->user_qual_comboBox->addItem("VCD"); - m_Ui->user_qual_comboBox->addItem("VCD & AHD"); - m_Ui->user_qual_comboBox->addItem("LMMSE"); + qDebug() << "PreferencesDialog: Found demosaicing pack GPL2"; + m_Ui->user_qual_comboBox->addItem("DCB"); + m_Ui->user_qual_comboBox->addItem("AHD v2"); + m_Ui->user_qual_comboBox->addItem("AFD"); + m_Ui->user_qual_comboBox->addItem("VCD"); + m_Ui->user_qual_comboBox->addItem("VCD & AHD"); + m_Ui->user_qual_comboBox->addItem("LMMSE"); #endif #ifdef DEMOSAICING_GPL3 - qDebug() << "PreferencesDialog: Found AMaZE"; - m_Ui->user_qual_comboBox->addItem("AMaZE"); + qDebug() << "PreferencesDialog: Found AMaZE"; + m_Ui->user_qual_comboBox->addItem("AMaZE"); #endif - fromIso639ToGuiIndex["cs"]= 0; + fromIso639ToGuiIndex["cs"]= 0; fromIso639ToGuiIndex["da"]= 1; - fromIso639ToGuiIndex["de"]= 2; - fromIso639ToGuiIndex["en"]= 3; - fromIso639ToGuiIndex["es"]= 4; - fromIso639ToGuiIndex["fr"]= 5; - fromIso639ToGuiIndex["id"]= 6; - fromIso639ToGuiIndex["it"]= 7; - fromIso639ToGuiIndex["hu"]= 8; - fromIso639ToGuiIndex["pl"]= 9; - fromIso639ToGuiIndex["pt_BR"]= 10; - fromIso639ToGuiIndex["ru"]=11; - fromIso639ToGuiIndex["ro"]=12; - fromIso639ToGuiIndex["fi"]=13; - fromIso639ToGuiIndex["tr"]=14; - fromIso639ToGuiIndex["zh"]=15; - - fromGuiIndexToIso639[ 0]="cs"; - fromGuiIndexToIso639[ 1]="da"; - fromGuiIndexToIso639[ 2]="de"; - fromGuiIndexToIso639[ 3]="en"; - fromGuiIndexToIso639[ 4]="es"; - fromGuiIndexToIso639[ 5]="fr"; - fromGuiIndexToIso639[ 6]="id"; - fromGuiIndexToIso639[ 7]="it"; - fromGuiIndexToIso639[ 8]="hu"; - fromGuiIndexToIso639[ 9]="pl"; - fromGuiIndexToIso639[10]="pt_BR"; - fromGuiIndexToIso639[11]="ru"; - fromGuiIndexToIso639[12]="ro"; - fromGuiIndexToIso639[13]="fi"; - fromGuiIndexToIso639[14]="tr"; + fromIso639ToGuiIndex["de"]= 2; + fromIso639ToGuiIndex["en"]= 3; + fromIso639ToGuiIndex["es"]= 4; + fromIso639ToGuiIndex["fr"]= 5; + fromIso639ToGuiIndex["id"]= 6; + fromIso639ToGuiIndex["it"]= 7; + fromIso639ToGuiIndex["hu"]= 8; + fromIso639ToGuiIndex["pl"]= 9; + fromIso639ToGuiIndex["pt_BR"]= 10; + fromIso639ToGuiIndex["ru"]=11; + fromIso639ToGuiIndex["ro"]=12; + fromIso639ToGuiIndex["fi"]=13; + fromIso639ToGuiIndex["tr"]=14; + fromIso639ToGuiIndex["zh"]=15; + + fromGuiIndexToIso639[ 0]="cs"; + fromGuiIndexToIso639[ 1]="da"; + fromGuiIndexToIso639[ 2]="de"; + fromGuiIndexToIso639[ 3]="en"; + fromGuiIndexToIso639[ 4]="es"; + fromGuiIndexToIso639[ 5]="fr"; + fromGuiIndexToIso639[ 6]="id"; + fromGuiIndexToIso639[ 7]="it"; + fromGuiIndexToIso639[ 8]="hu"; + fromGuiIndexToIso639[ 9]="pl"; + fromGuiIndexToIso639[10]="pt_BR"; + fromGuiIndexToIso639[11]="ru"; + fromGuiIndexToIso639[12]="ro"; + fromGuiIndexToIso639[13]="fi"; + fromGuiIndexToIso639[14]="tr"; fromGuiIndexToIso639[15]="zh"; for (QString style : QStyleFactory::keys()) @@ -158,7 +158,7 @@ m_formatHelper.initConnection(m_Ui->exportFormatCombo, m_Ui->exportFormatToolbutton, false); from_options_to_gui(); //update the gui in order to show the options - + toolButtonMapper = new QSignalMapper(this); connect(toolButtonMapper, SIGNAL(mapped(int)), this, SLOT(toolButton_clicked(int))); @@ -172,8 +172,8 @@ }; for (int i = 0; i < 6; i++) { - toolButtonMapper->setMapping(tabEntries[i], i); - connect(tabEntries[i], SIGNAL(clicked()), toolButtonMapper, SLOT(map())); + toolButtonMapper->setMapping(tabEntries[i], i); + connect(tabEntries[i], SIGNAL(clicked()), toolButtonMapper, SLOT(map())); } toolButton_clicked(tab); @@ -181,16 +181,16 @@ PreferencesDialog::~PreferencesDialog() { - delete toolButtonMapper; + delete toolButtonMapper; } void PreferencesDialog::changeEvent(QEvent *event) { - if (event->type() == QEvent::LanguageChange) + if (event->type() == QEvent::LanguageChange) { - m_Ui->retranslateUi(this); + m_Ui->retranslateUi(this); } - QWidget::changeEvent(event); + QWidget::changeEvent(event); } void PreferencesDialog::on_okButton_clicked() @@ -205,16 +205,16 @@ TranslatorManager::setLanguage( luminance_options.getGuiLang() ); } - if (luminance_options.getGuiTheme() != m_Ui->themeComboBox->currentText() || luminance_options.isGuiDarkMode() != m_Ui->chkDarkMode->isChecked()) - { - if (luminance_options.isGuiDarkMode() != m_Ui->chkDarkMode->isChecked() && !m_Ui->chkDarkMode->isChecked()) + if (luminance_options.getGuiTheme() != m_Ui->themeComboBox->currentText() || luminance_options.isGuiDarkMode() != m_Ui->chkDarkMode->isChecked()) + { + if (luminance_options.isGuiDarkMode() != m_Ui->chkDarkMode->isChecked() && !m_Ui->chkDarkMode->isChecked()) { - restartNeeded = true; + restartNeeded = true; } - luminance_options.setGuiTheme(m_Ui->themeComboBox->currentText()); - luminance_options.setGuiDarkMode(m_Ui->chkDarkMode->isChecked()); - luminance_options.applyTheme(false); - } + luminance_options.setGuiTheme(m_Ui->themeComboBox->currentText()); + luminance_options.setGuiDarkMode(m_Ui->chkDarkMode->isChecked()); + luminance_options.applyTheme(false); + } luminance_options.setTempDir( m_Ui->lineEditTempPath->text() ); @@ -238,26 +238,26 @@ // --- RAW parameters luminance_options.setRawFourColorRGB( m_Ui->four_color_rgb_CB->isChecked() ); luminance_options.setRawDoNotUseFujiRotate( m_Ui->do_not_use_fuji_rotate_CB->isChecked() ); - QString user_qual = m_Ui->user_qual_comboBox->itemText( m_Ui->user_qual_comboBox->currentIndex() ); - if (user_qual == "Bilinear" || - user_qual == "VNG" || - user_qual == "PPG" || - user_qual == "AHD") - luminance_options.setRawUserQuality( m_Ui->user_qual_comboBox->currentIndex() ); - else if(user_qual == "DCB") - luminance_options.setRawUserQuality( 4 ); - else if(user_qual == "AHD v2") - luminance_options.setRawUserQuality( 5 ); - else if(user_qual == "AFD") - luminance_options.setRawUserQuality( 6 ); - else if(user_qual == "VCD") - luminance_options.setRawUserQuality( 7 ); - else if(user_qual == "VCD & AHD") - luminance_options.setRawUserQuality( 8 ); - else if(user_qual == "LMMSE") - luminance_options.setRawUserQuality( 9 ); - else if(user_qual == "AMaZE") - luminance_options.setRawUserQuality( 10 ); + QString user_qual = m_Ui->user_qual_comboBox->itemText( m_Ui->user_qual_comboBox->currentIndex() ); + if (user_qual == "Bilinear" || + user_qual == "VNG" || + user_qual == "PPG" || + user_qual == "AHD") + luminance_options.setRawUserQuality( m_Ui->user_qual_comboBox->currentIndex() ); + else if(user_qual == "DCB") + luminance_options.setRawUserQuality( 4 ); + else if(user_qual == "AHD v2") + luminance_options.setRawUserQuality( 5 ); + else if(user_qual == "AFD") + luminance_options.setRawUserQuality( 6 ); + else if(user_qual == "VCD") + luminance_options.setRawUserQuality( 7 ); + else if(user_qual == "VCD & AHD") + luminance_options.setRawUserQuality( 8 ); + else if(user_qual == "LMMSE") + luminance_options.setRawUserQuality( 9 ); + else if(user_qual == "AMaZE") + luminance_options.setRawUserQuality( 10 ); luminance_options.setRawMedPasses( m_Ui->med_passes_spinBox->value() ); luminance_options.setRawWhiteBalanceMethod( m_Ui->wb_method_comboBox->currentIndex() ); luminance_options.setRawTemperatureKelvin( m_Ui->TK_spinBox->value() ); @@ -276,10 +276,10 @@ luminance_options.setRawAber0( m_Ui->red_doubleSpinBox->value() ); luminance_options.setRawAber2( m_Ui->blue_doubleSpinBox->value() ); - // --- Color Management - luminance_options.setCameraProfileFileName( m_Ui->camera_lineEdit->text() ); - luminance_options.setMonitorProfileFileName( m_Ui->monitor_lineEdit->text() ); - luminance_options.setPrinterProfileFileName( m_Ui->printer_lineEdit->text() ); + // --- Color Management + luminance_options.setCameraProfileFileName( m_Ui->camera_lineEdit->text() ); + luminance_options.setMonitorProfileFileName( m_Ui->monitor_lineEdit->text() ); + luminance_options.setPrinterProfileFileName( m_Ui->printer_lineEdit->text() ); // ---- temporary... this rubbish must go away! luminance_options.setValue(KEY_USER_QUAL_TOOLBUTTON, m_Ui->user_qual_toolButton->isEnabled()); @@ -308,12 +308,12 @@ void PreferencesDialog::on_cancelButton_clicked() { - reject(); + reject(); } void PreferencesDialog::on_user_qual_comboBox_currentIndexChanged(int value) { - m_Ui->user_qual_toolButton->setEnabled(value != 0); + m_Ui->user_qual_toolButton->setEnabled(value != 0); } void PreferencesDialog::on_med_passes_spinBox_valueChanged(int value) @@ -323,7 +323,7 @@ void PreferencesDialog::on_wb_method_comboBox_currentIndexChanged(int i) { - bool isManualWb = i == 3; + bool isManualWb = i == 3; m_Ui->TK_label->setEnabled(isManualWb); m_Ui->TK_horizontalSlider->setEnabled(isManualWb); m_Ui->TK_spinBox->setEnabled(isManualWb); @@ -356,7 +356,7 @@ void PreferencesDialog::on_user_sat_spinBox_valueChanged(int value) { - m_Ui->user_sat_toolButton->setEnabled(value != 20000); + m_Ui->user_sat_toolButton->setEnabled(value != 20000); } void PreferencesDialog::on_threshold_spinBox_valueChanged(int value) @@ -366,35 +366,35 @@ void PreferencesDialog::on_use_black_CB_stateChanged(int) { - bool checked = m_Ui->use_black_CB->isChecked(); + bool checked = m_Ui->use_black_CB->isChecked(); m_Ui->user_black_horizontalSlider->setEnabled(checked); m_Ui->user_black_spinBox->setEnabled(checked); } void PreferencesDialog::on_use_sat_CB_stateChanged(int) { - bool checked = m_Ui->use_sat_CB->isChecked(); - m_Ui->user_sat_horizontalSlider->setEnabled(checked); - m_Ui->user_sat_spinBox->setEnabled(checked); + bool checked = m_Ui->use_sat_CB->isChecked(); + m_Ui->user_sat_horizontalSlider->setEnabled(checked); + m_Ui->user_sat_spinBox->setEnabled(checked); } void PreferencesDialog::on_use_noise_CB_stateChanged(int) { - bool checked = m_Ui->use_noise_CB->isChecked(); - m_Ui->threshold_label->setEnabled(checked); - m_Ui->threshold_horizontalSlider->setEnabled(checked); - m_Ui->threshold_spinBox->setEnabled(checked); - m_Ui->threshold_toolButton->setEnabled(checked); + bool checked = m_Ui->use_noise_CB->isChecked(); + m_Ui->threshold_label->setEnabled(checked); + m_Ui->threshold_horizontalSlider->setEnabled(checked); + m_Ui->threshold_spinBox->setEnabled(checked); + m_Ui->threshold_toolButton->setEnabled(checked); } void PreferencesDialog::on_use_chroma_CB_stateChanged(int) { - bool checked = m_Ui->use_chroma_CB->isChecked(); - m_Ui->red_label->setEnabled(checked); - m_Ui->red_horizontalSlider->setEnabled(checked); - m_Ui->red_doubleSpinBox->setEnabled(checked); - m_Ui->blue_label->setEnabled(checked); - m_Ui->blue_horizontalSlider->setEnabled(checked); - m_Ui->blue_doubleSpinBox->setEnabled(checked); + bool checked = m_Ui->use_chroma_CB->isChecked(); + m_Ui->red_label->setEnabled(checked); + m_Ui->red_horizontalSlider->setEnabled(checked); + m_Ui->red_doubleSpinBox->setEnabled(checked); + m_Ui->blue_label->setEnabled(checked); + m_Ui->blue_horizontalSlider->setEnabled(checked); + m_Ui->blue_doubleSpinBox->setEnabled(checked); } void PreferencesDialog::on_brightness_horizontalSlider_valueChanged(int value) @@ -405,7 +405,7 @@ void PreferencesDialog::on_brightness_doubleSpinBox_valueChanged(double value) { m_Ui->brightness_horizontalSlider->setValue((int) (value*m_Ui->brightness_doubleSpinBox->maximum())); - m_Ui->brightness_toolButton->setEnabled(fabs(value - 1.0) >= 1e-4); + m_Ui->brightness_toolButton->setEnabled(fabs(value - 1.0) >= 1e-4); } void PreferencesDialog::on_red_horizontalSlider_valueChanged(int pos) @@ -447,7 +447,7 @@ double maxv = m_Ui->blue_doubleSpinBox->maximum(); m_Ui->blue_horizontalSlider->setValue( value2pos(value, minpos, maxpos, minv, maxv) ); - m_Ui->blue_toolButton->setEnabled(fabs(value - 1.0) >= 1e-4); + m_Ui->blue_toolButton->setEnabled(fabs(value - 1.0) >= 1e-4); } void PreferencesDialog::on_green_horizontalSlider_valueChanged( int pos) @@ -468,12 +468,12 @@ double maxv = m_Ui->green_doubleSpinBox->maximum(); m_Ui->blue_horizontalSlider->setValue( value2pos(value, minpos, maxpos, minv, maxv) ); - m_Ui->green_toolButton->setEnabled(fabs(value - 1.0) >= 1e-4); + m_Ui->green_toolButton->setEnabled(fabs(value - 1.0) >= 1e-4); } void PreferencesDialog::on_user_qual_toolButton_clicked() { - m_Ui->user_qual_comboBox->setCurrentIndex(0); + m_Ui->user_qual_comboBox->setCurrentIndex(0); } void PreferencesDialog::on_med_passes_toolButton_clicked() @@ -600,8 +600,8 @@ luminance_options.setGuiLang("en"); } m_Ui->languageComboBox->setCurrentIndex(fromIso639ToGuiIndex.value(luminance_options.getGuiLang())); - m_Ui->themeComboBox->setCurrentText(luminance_options.getGuiTheme()); - m_Ui->chkDarkMode->setChecked(luminance_options.isGuiDarkMode()); + m_Ui->themeComboBox->setCurrentText(luminance_options.getGuiTheme()); + m_Ui->chkDarkMode->setChecked(luminance_options.isGuiDarkMode()); // Temp directory m_Ui->lineEditTempPath->setText(luminance_options.getTempDir()); @@ -628,23 +628,23 @@ m_Ui->do_not_use_fuji_rotate_CB->setChecked(luminance_options.isRawDoNotUseFujiRotate()); #ifdef DEMOSAICING_GPL2 - bool GPL2 = true; + bool GPL2 = true; #else - bool GPL2 = false; + bool GPL2 = false; #endif #ifdef DEMOSAICING_GPL3 - bool GPL3 = true; + bool GPL3 = true; #else - bool GPL3 = false; + bool GPL3 = false; #endif - int user_quality = luminance_options.getRawUserQuality(); - if (user_quality < 4) - m_Ui->user_qual_comboBox->setCurrentIndex( user_quality ); - else if ((GPL2 && GPL3) || (GPL2 && !GPL3)) // We have both demosaicing packs or only GPL2 - m_Ui->user_qual_comboBox->setCurrentIndex( user_quality ); - else // We have only GPL3 - m_Ui->user_qual_comboBox->setCurrentIndex( 4 ); + int user_quality = luminance_options.getRawUserQuality(); + if (user_quality < 4) + m_Ui->user_qual_comboBox->setCurrentIndex( user_quality ); + else if ((GPL2 && GPL3) || (GPL2 && !GPL3)) // We have both demosaicing packs or only GPL2 + m_Ui->user_qual_comboBox->setCurrentIndex( user_quality ); + else // We have only GPL3 + m_Ui->user_qual_comboBox->setCurrentIndex( 4 ); m_Ui->user_qual_comboBox->setCurrentIndex(luminance_options.getRawUserQuality()); m_Ui->med_passes_horizontalSlider->setValue(luminance_options.getRawMedPasses()); @@ -707,10 +707,10 @@ m_Ui->red_toolButton->setEnabled( luminance_options.value(KEY_RED_TOOLBUTTON).toBool()); m_Ui->blue_toolButton->setEnabled( luminance_options.value(KEY_BLUE_TOOLBUTTON).toBool()); m_Ui->green_toolButton->setEnabled( luminance_options.value(KEY_GREEN_TOOLBUTTON).toBool()); - - m_Ui->camera_lineEdit->setText( luminance_options.getCameraProfileFileName() ); - m_Ui->monitor_lineEdit->setText( luminance_options.getMonitorProfileFileName() ); - m_Ui->printer_lineEdit->setText( luminance_options.getPrinterProfileFileName() ); + + m_Ui->camera_lineEdit->setText( luminance_options.getCameraProfileFileName() ); + m_Ui->monitor_lineEdit->setText( luminance_options.getMonitorProfileFileName() ); + m_Ui->printer_lineEdit->setText( luminance_options.getPrinterProfileFileName() ); m_Ui->exportDirectoryEdit->setText( luminance_options.getExportDir() ); m_formatHelper.loadFromSettings(luminance_options, KEY_FILEFORMAT_QUEUE); @@ -719,10 +719,10 @@ void PreferencesDialog::on_chooseCachePathButton_clicked() { QString dir = QFileDialog::getExistingDirectory(this, - tr("Choose a directory"), - QDir::currentPath(), - QFileDialog::ShowDirsOnly|QFileDialog::DontResolveSymlinks - ); + tr("Choose a directory"), + QDir::currentPath(), + QFileDialog::ShowDirsOnly|QFileDialog::DontResolveSymlinks + ); if (!dir.isEmpty()) { m_Ui->lineEditTempPath->setText(dir); @@ -731,7 +731,7 @@ void PreferencesDialog::enterWhatsThis() { - QWhatsThis::enterWhatsThisMode(); + QWhatsThis::enterWhatsThisMode(); } void PreferencesDialog::on_camera_toolButton_clicked() @@ -752,11 +752,11 @@ void PreferencesDialog::openColorProfile(QLineEdit* lineEdit) { QString fileName = QFileDialog::getOpenFileName(this, tr("Open ICC Profile"), - ICC_PATH, - tr("Color profile (*.icc *.ICC *.icm *.ICM)") - ); - if (!fileName.isEmpty()) - lineEdit->setText(fileName); + ICC_PATH, + tr("Color profile (*.icc *.ICC *.icm *.ICM)") + ); + if (!fileName.isEmpty()) + lineEdit->setText(fileName); } void PreferencesDialog::on_exportFileButton_clicked() diff -Nru luminance-hdr-2.5.0/src/Preferences/PreferencesDialog.h luminance-hdr-2.5.1/src/Preferences/PreferencesDialog.h --- luminance-hdr-2.5.0/src/Preferences/PreferencesDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Preferences/PreferencesDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -45,61 +45,61 @@ public: PreferencesDialog(QWidget *parent, int tab = 0); - ~PreferencesDialog(); + ~PreferencesDialog(); private: void from_options_to_gui(); QColor infnancolor, negcolor; - QMap fromIso639ToGuiIndex; - QMap fromGuiIndexToIso639; - QSignalMapper* toolButtonMapper; + QMap fromIso639ToGuiIndex; + QMap fromGuiIndexToIso639; + QSignalMapper* toolButtonMapper; pfsadditions::FormatHelper m_formatHelper; protected: - virtual void changeEvent(QEvent* event); + virtual void changeEvent(QEvent* event); private Q_SLOTS: - void on_okButton_clicked(); - void on_cancelButton_clicked(); - void on_chooseCachePathButton_clicked(); - void enterWhatsThis(); - - void on_user_qual_comboBox_currentIndexChanged(int); - void on_med_passes_spinBox_valueChanged(int); - void on_wb_method_comboBox_currentIndexChanged(int); - void on_TK_spinBox_valueChanged(int); - void on_highlights_comboBox_currentIndexChanged(int); - void on_level_spinBox_valueChanged(int); - void on_user_black_spinBox_valueChanged(int); - void on_user_sat_spinBox_valueChanged(int); - void on_threshold_spinBox_valueChanged(int); - void on_use_black_CB_stateChanged(int); - void on_use_sat_CB_stateChanged(int); - void on_use_noise_CB_stateChanged(int); - void on_use_chroma_CB_stateChanged(int); - void on_brightness_horizontalSlider_valueChanged(int); - void on_brightness_doubleSpinBox_valueChanged(double); - void on_red_horizontalSlider_valueChanged(int); - void on_red_doubleSpinBox_valueChanged(double); - void on_blue_horizontalSlider_valueChanged(int); - void on_blue_doubleSpinBox_valueChanged(double); - void on_green_horizontalSlider_valueChanged(int); - void on_green_doubleSpinBox_valueChanged(double); - - void on_user_qual_toolButton_clicked(); - void on_med_passes_toolButton_clicked(); - void on_wb_method_toolButton_clicked(); - void on_TK_toolButton_clicked(); - void on_highlights_toolButton_clicked(); - void on_level_toolButton_clicked(); - void on_brightness_toolButton_clicked(); - void on_user_black_toolButton_clicked(); - void on_user_sat_toolButton_clicked(); - void on_threshold_toolButton_clicked(); - void on_red_toolButton_clicked(); - void on_blue_toolButton_clicked(); - void on_green_toolButton_clicked(); + void on_okButton_clicked(); + void on_cancelButton_clicked(); + void on_chooseCachePathButton_clicked(); + void enterWhatsThis(); + + void on_user_qual_comboBox_currentIndexChanged(int); + void on_med_passes_spinBox_valueChanged(int); + void on_wb_method_comboBox_currentIndexChanged(int); + void on_TK_spinBox_valueChanged(int); + void on_highlights_comboBox_currentIndexChanged(int); + void on_level_spinBox_valueChanged(int); + void on_user_black_spinBox_valueChanged(int); + void on_user_sat_spinBox_valueChanged(int); + void on_threshold_spinBox_valueChanged(int); + void on_use_black_CB_stateChanged(int); + void on_use_sat_CB_stateChanged(int); + void on_use_noise_CB_stateChanged(int); + void on_use_chroma_CB_stateChanged(int); + void on_brightness_horizontalSlider_valueChanged(int); + void on_brightness_doubleSpinBox_valueChanged(double); + void on_red_horizontalSlider_valueChanged(int); + void on_red_doubleSpinBox_valueChanged(double); + void on_blue_horizontalSlider_valueChanged(int); + void on_blue_doubleSpinBox_valueChanged(double); + void on_green_horizontalSlider_valueChanged(int); + void on_green_doubleSpinBox_valueChanged(double); + + void on_user_qual_toolButton_clicked(); + void on_med_passes_toolButton_clicked(); + void on_wb_method_toolButton_clicked(); + void on_TK_toolButton_clicked(); + void on_highlights_toolButton_clicked(); + void on_level_toolButton_clicked(); + void on_brightness_toolButton_clicked(); + void on_user_black_toolButton_clicked(); + void on_user_sat_toolButton_clicked(); + void on_threshold_toolButton_clicked(); + void on_red_toolButton_clicked(); + void on_blue_toolButton_clicked(); + void on_green_toolButton_clicked(); void on_exportFileButton_clicked(); @@ -107,7 +107,7 @@ void on_monitor_toolButton_clicked(); void on_printer_toolButton_clicked(); - void toolButton_clicked(int); + void toolButton_clicked(int); void openColorProfile(QLineEdit* lineEdit); diff -Nru luminance-hdr-2.5.0/src/Preferences/PreferencesDialog.ui luminance-hdr-2.5.1/src/Preferences/PreferencesDialog.ui --- luminance-hdr-2.5.0/src/Preferences/PreferencesDialog.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Preferences/PreferencesDialog.ui 2017-05-10 19:14:06.000000000 +0000 @@ -1051,7 +1051,7 @@ - + 0 0 @@ -1113,6 +1113,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1136,7 +1149,7 @@ false
- + 0 0 @@ -1232,6 +1245,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1251,6 +1277,12 @@ false + + + 0 + 0 + + 250 @@ -1331,6 +1363,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1345,7 +1390,7 @@ - + 0 0 @@ -1404,6 +1449,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1418,7 +1476,7 @@ - + 0 0 @@ -1487,6 +1545,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1520,6 +1591,15 @@ + + false + + + + 0 + 0 + + 250 @@ -1528,7 +1608,7 @@ - 250 + 16777215 16777215 @@ -1554,6 +1634,9 @@ + + false + 70 @@ -1599,6 +1682,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1611,6 +1707,9 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Black point</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use a specific black point value to decode RAW pictures. If you set this option to off, the Black Point value will be automatically computed.</p></body></html> + + Qt::RightToLeft + Black @@ -1624,20 +1723,20 @@ false - + 0 0 - 250 + 0 0 - 250 + 16777215 16777215 @@ -1696,6 +1795,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1708,6 +1820,9 @@ <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt; font-weight:600;">Saturation</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:10pt;">When highlights appear pink, you need to lower the saturation level. The default saturation is usually correct.</span></p></body></html> + + Qt::RightToLeft + Saturation @@ -1720,9 +1835,15 @@ false + + + 0 + 0 + + - 250 + 0 0 @@ -1793,6 +1914,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -1935,6 +2069,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -2063,6 +2210,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -2166,6 +2326,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + diff -Nru luminance-hdr-2.5.0/src/PreviewPanel/PreviewLabel.cpp luminance-hdr-2.5.1/src/PreviewPanel/PreviewLabel.cpp --- luminance-hdr-2.5.0/src/PreviewPanel/PreviewLabel.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/PreviewPanel/PreviewLabel.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -78,9 +78,9 @@ QString PreviewLabel::getComment() { return m_comment; -} +} -void PreviewLabel::setIndex(int index) +void PreviewLabel::setIndex(int index) { m_index = index; } diff -Nru luminance-hdr-2.5.0/src/PreviewPanel/PreviewPanel.cpp luminance-hdr-2.5.1/src/PreviewPanel/PreviewPanel.cpp --- luminance-hdr-2.5.0/src/PreviewPanel/PreviewPanel.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/PreviewPanel/PreviewPanel.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -61,11 +61,12 @@ { public: explicit PreviewLabelUpdater(QSharedPointer reference_frame): - m_isAutolevels(false), + m_doAutolevels(false), + m_autolevelThreshold(0.985f), m_ReferenceFrame(reference_frame) {} - void setAutolevels(bool al) { m_isAutolevels = al; } + void setAutolevels(bool al, float th) { m_doAutolevels = al; m_autolevelThreshold = th; } //! \brief QRunnable::run() definition //! \caption I use shared pointer in this function, so I don't have to worry about memory allocation //! in case something wrong happens, it shouldn't leak @@ -96,16 +97,16 @@ //try { //Since nothing here actually throws this isn't useful, i need to check if returned frame != NULL QScopedPointer tmWorker(new TMWorker); - QSharedPointer frame (tmWorker->computeTonemap(temp_frame.data(), tm_options)); - + QSharedPointer frame (tmWorker->computeTonemap(temp_frame.data(), tm_options, BilinearInterp)); + if (!frame.isNull()) { // Create QImage from pfs::Frame into QSharedPointer, and I give it to the preview panel //QSharedPointer qimage(fromLDRPFStoQImage(temp_frame.data())); - if (m_isAutolevels) { + if (m_doAutolevels) { QSharedPointer temp_qimage(fromLDRPFStoQImage(frame.data())); float minL, maxL, gammaL; - computeAutolevels(temp_qimage.data(), minL, maxL, gammaL); + computeAutolevels(temp_qimage.data(), m_autolevelThreshold, minL, maxL, gammaL); pfs::gammaAndLevels(frame.data(), minL, maxL, 0.f, 1.f, gammaL); } @@ -140,7 +141,8 @@ } private: - bool m_isAutolevels; + bool m_doAutolevels; + float m_autolevelThreshold; QSharedPointer m_ReferenceFrame; }; @@ -149,7 +151,7 @@ PreviewPanel::PreviewPanel(QWidget *parent): QWidget(parent), m_original_width_frame(0), - m_isAutolevels(false) + m_doAutolevels(false) { //! \note I need to register the new object to pass this class as parameter inside invokeMethod() //! see run() inside PreviewLabelUpdater @@ -272,20 +274,20 @@ resized_width = PREVIEW_HEIGHT*ratio; } // 1. make a resized copy - QSharedPointer current_frame( pfs::resize(frame, resized_width)); + QSharedPointer current_frame( pfs::resize(frame, resized_width, BilinearInterp)); // 2. (non concurrent) for each PreviewLabel, call PreviewLabelUpdater::operator() if (index == -1) { foreach(PreviewLabel* current_label, m_ListPreviewLabel) { PreviewLabelUpdater updater(current_frame); - updater.setAutolevels(m_isAutolevels); + updater.setAutolevels(m_doAutolevels, m_autolevelThreshold); updater(current_label); } } else { PreviewLabelUpdater updater(current_frame); - updater.setAutolevels(m_isAutolevels); + updater.setAutolevels(m_doAutolevels, m_autolevelThreshold); updater(m_ListPreviewLabel.at(index)); } // 2. (concurrent) for each PreviewLabel, call PreviewLabelUpdater::operator() @@ -314,10 +316,11 @@ return m_ListPreviewLabel.at(index); } -void PreviewPanel::setAutolevels(bool al) +void PreviewPanel::setAutolevels(bool al, float th) { #ifdef QT_DEBUG std::cout << "void PreviewPanel::setAutolevels(" << al << ")" << std::endl; #endif - m_isAutolevels = al; + m_doAutolevels = al; + m_autolevelThreshold = th; } diff -Nru luminance-hdr-2.5.0/src/PreviewPanel/PreviewPanel.h luminance-hdr-2.5.1/src/PreviewPanel/PreviewPanel.h --- luminance-hdr-2.5.0/src/PreviewPanel/PreviewPanel.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/PreviewPanel/PreviewPanel.h 2017-05-10 19:14:06.000000000 +0000 @@ -50,7 +50,7 @@ public Q_SLOTS: void updatePreviews(pfs::Frame* frame, int index = -1); - void setAutolevels(bool); + void setAutolevels(bool, float); protected Q_SLOTS: void tonemapPreview(TonemappingOptions*); @@ -60,7 +60,8 @@ private: int m_original_width_frame; - bool m_isAutolevels; + bool m_doAutolevels; + float m_autolevelThreshold; QList m_ListPreviewLabel; }; #endif diff -Nru luminance-hdr-2.5.0/src/PreviewSettings/PreviewSettings.cpp luminance-hdr-2.5.1/src/PreviewSettings/PreviewSettings.cpp --- luminance-hdr-2.5.0/src/PreviewSettings/PreviewSettings.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/PreviewSettings/PreviewSettings.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -139,7 +139,7 @@ //m_Ui->retranslateUi(this); } - QWidget::changeEvent(event); + QWidget::changeEvent(event); } void PreviewSettings::updatePreviews(pfs::Frame* frame) @@ -158,7 +158,7 @@ resized_width = PREVIEW_HEIGHT*ratio; } // 1. make a resized copy - QSharedPointer current_frame( pfs::resize(frame, resized_width) ); + QSharedPointer current_frame( pfs::resize(frame, resized_width, BilinearInterp) ); // 2. (non concurrent) for each PreviewLabel, call PreviewLabelUpdater::operator() foreach (PreviewLabel* current_label, m_ListPreviewLabel) @@ -191,7 +191,7 @@ { TonemappingOptions *opts = label->getTonemappingOptions(); QString text = opts->getCaption(false, QString("\n")); - + if (label->actions().isEmpty()) { QAction* pAction = new QAction(tr("Load settings"), label); label->addAction(pAction); @@ -209,7 +209,7 @@ for (int i = 0; i < m_flowLayout->getSize(); i++) { QWidget *w = m_flowLayout->itemAt(i)->widget(); QLabel *l = static_cast(w); - l->setLineWidth((i == index) ? 3 : 1); + l->setLineWidth((i == index) ? 3 : 1); } } diff -Nru luminance-hdr-2.5.0/src/PreviewSettings/PreviewSettings.h luminance-hdr-2.5.1/src/PreviewSettings/PreviewSettings.h --- luminance-hdr-2.5.0/src/PreviewSettings/PreviewSettings.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/PreviewSettings/PreviewSettings.h 2017-05-10 19:14:06.000000000 +0000 @@ -49,7 +49,7 @@ int getSize() { return m_ListPreviewLabel.size(); } void clear(); protected: - virtual void changeEvent(QEvent* event); + virtual void changeEvent(QEvent* event); public Q_SLOTS: void selectLabel(int index); diff -Nru luminance-hdr-2.5.0/src/Projection/ProjectionsDialog.cpp luminance-hdr-2.5.1/src/Projection/ProjectionsDialog.cpp --- luminance-hdr-2.5.0/src/Projection/ProjectionsDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Projection/ProjectionsDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -55,13 +55,13 @@ m_Ui->progressBar->hide(); - projectionList.append(&(PolarProjection::singleton)); - projectionList.append(&(AngularProjection::singleton)); - projectionList.append(&(CylindricalProjection::singleton)); - projectionList.append(&(MirrorBallProjection::singleton)); - transforminfo = new TransformInfo(); - transforminfo->srcProjection=projectionList.at(0); - transforminfo->dstProjection=projectionList.at(0); + projectionList.append(&(PolarProjection::singleton)); + projectionList.append(&(AngularProjection::singleton)); + projectionList.append(&(CylindricalProjection::singleton)); + projectionList.append(&(MirrorBallProjection::singleton)); + transforminfo = new TransformInfo(); + transforminfo->srcProjection=projectionList.at(0); + transforminfo->dstProjection=projectionList.at(0); connect(m_Ui->okButton,SIGNAL(clicked()),this,SLOT(okClicked())); connect(m_Ui->sourceProjection,SIGNAL(activated(int)),this,SLOT(srcProjActivated(int))); @@ -77,43 +77,43 @@ } ProjectionsDialog::~ProjectionsDialog() { - delete transforminfo; + delete transforminfo; } void ProjectionsDialog::XRotChanged(int v) { - transforminfo->xRotate=v; + transforminfo->xRotate=v; } void ProjectionsDialog::YRotChanged(int v) { - transforminfo->yRotate=v; + transforminfo->yRotate=v; } void ProjectionsDialog::ZRotChanged(int v) { - transforminfo->zRotate=v; + transforminfo->zRotate=v; } void ProjectionsDialog::oversampleChanged(int v) { - transforminfo->oversampleFactor=v; + transforminfo->oversampleFactor=v; } void ProjectionsDialog::bilinearToggled(bool v) { - transforminfo->interpolate=v; + transforminfo->interpolate=v; } void ProjectionsDialog::dstProjActivated(int gui_index) { - transforminfo->dstProjection=projectionList.at(gui_index); - bool transformIsAngular=transforminfo->dstProjection==&(AngularProjection::singleton); + transforminfo->dstProjection=projectionList.at(gui_index); + bool transformIsAngular=transforminfo->dstProjection==&(AngularProjection::singleton); m_Ui->labelAngles->setEnabled(transformIsAngular); m_Ui->anglesSpinBox->setEnabled(transformIsAngular); - if (transformIsAngular) + if (transformIsAngular) ((AngularProjection*)(transforminfo->dstProjection))->setAngle(m_Ui->anglesSpinBox->value()); } void ProjectionsDialog::srcProjActivated(int gui_index) { - transforminfo->srcProjection=projectionList.at(gui_index); + transforminfo->srcProjection=projectionList.at(gui_index); } void ProjectionsDialog::anglesAngularDestinationProj(int v) { - ((AngularProjection*)(transforminfo->dstProjection))->setAngle(v); + ((AngularProjection*)(transforminfo->dstProjection))->setAngle(v); } void ProjectionsDialog::okClicked() { - qDebug("Projective Transformation from %s to %s", transforminfo->srcProjection->getName(), transforminfo->dstProjection->getName()); + qDebug("Projective Transformation from %s to %s", transforminfo->srcProjection->getName(), transforminfo->dstProjection->getName()); m_Ui->progressBar->setMaximum(0); m_Ui->progressBar->setMinimum(0); @@ -137,5 +137,5 @@ void ProjectionsDialog::projectionFinished() { QApplication::restoreOverrideCursor(); - emit accept(); + emit accept(); } diff -Nru luminance-hdr-2.5.0/src/Projection/ProjectionsDialog.h luminance-hdr-2.5.1/src/Projection/ProjectionsDialog.h --- luminance-hdr-2.5.0/src/Projection/ProjectionsDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Projection/ProjectionsDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -44,25 +44,25 @@ Q_OBJECT public: ProjectionsDialog(QWidget *parent, pfs::Frame *orig); - ~ProjectionsDialog(); + ~ProjectionsDialog(); pfs::Frame* getTranformedFrame(); - TransformInfo *transforminfo; + TransformInfo *transforminfo; private: - pfs::Frame *original, *transformed; - QList projectionList; + pfs::Frame *original, *transformed; + QList projectionList; QScopedPointer m_Ui; QFutureWatcher m_futureWatcher; QFuture m_future; private slots: - void okClicked(); - void XRotChanged(int); - void YRotChanged(int); - void ZRotChanged(int); - void oversampleChanged(int); - void bilinearToggled(bool); - void dstProjActivated(int); - void srcProjActivated(int); - void anglesAngularDestinationProj(int); + void okClicked(); + void XRotChanged(int); + void YRotChanged(int); + void ZRotChanged(int); + void oversampleChanged(int); + void bilinearToggled(bool); + void dstProjActivated(int); + void srcProjActivated(int); + void anglesAngularDestinationProj(int); void projectionFinished(); }; diff -Nru luminance-hdr-2.5.0/src/Resize/ResizeDialog.cpp luminance-hdr-2.5.1/src/Resize/ResizeDialog.cpp --- luminance-hdr-2.5.0/src/Resize/ResizeDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Resize/ResizeDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -49,12 +49,12 @@ m_Ui->heightSpinBox->setDecimals(0); m_Ui->heightSpinBox->setMaximum(2*orig_height); m_Ui->heightSpinBox->setMinimum(1); - //we are now in pixel mode, put directly original pixel values. + //we are now in pixel mode, put directly original pixel values. m_Ui->widthSpinBox->setValue(orig_width); m_Ui->heightSpinBox->setValue(orig_height); from_other_spinbox = false; - updatelabel(); + updatelabel(); connect(m_Ui->scaleButton,SIGNAL(clicked()),this,SLOT(scaledPressed())); connect(m_Ui->widthSpinBox,SIGNAL(editingFinished()),this,SLOT(update_heightSpinBox())); @@ -70,22 +70,22 @@ } pfs::Frame* ResizeDialog::getResizedFrame() { - return m_resized; + return m_resized; } void ResizeDialog::scaledPressed() { - if (orig_width==resized_width) { - emit reject(); - return; - } - m_resized = pfs::resize(m_original, resized_width); - accept(); + if (orig_width==resized_width) { + emit reject(); + return; + } + m_resized = pfs::resize(m_original, resized_width, BilinearInterp); + accept(); } void ResizeDialog::switch_px_percentage(int px_per) { - switch (px_per) { - case 0: + switch (px_per) { + case 0: m_Ui->widthSpinBox->setMaximum(2*orig_width); m_Ui->heightSpinBox->setMaximum(2*orig_height); from_other_spinbox = true; @@ -98,8 +98,8 @@ m_Ui->heightSpinBox->setSuffix(""); m_Ui->heightSpinBox->setDecimals(0); m_Ui->heightSpinBox->setMinimum(1); - break; - case 1: + break; + case 1: m_Ui->widthSpinBox->setDecimals(2); m_Ui->heightSpinBox->setDecimals(2); from_other_spinbox = true; @@ -112,85 +112,85 @@ m_Ui->heightSpinBox->setSuffix("%"); m_Ui->heightSpinBox->setMaximum(200); m_Ui->heightSpinBox->setMinimum(1); - break; - } + break; + } from_other_spinbox = false; - updatelabel(); + updatelabel(); } //get a proper resized_width from a resized_height int ResizeDialog::rw_from_rh() { - return (int)((float)orig_width*(float)resized_height/(float)orig_height); + return (int)((float)orig_width*(float)resized_height/(float)orig_height); } //get a proper resized_height from a resized_width int ResizeDialog::rh_from_rw() { - return (int)((float)orig_height*(float)resized_width/(float)orig_width); + return (int)((float)orig_height*(float)resized_width/(float)orig_width); } void ResizeDialog::update_heightSpinBox() { - if (from_other_spinbox) { - from_other_spinbox=false; - return; - } + if (from_other_spinbox) { + from_other_spinbox=false; + return; + } switch (m_Ui->px_or_percentage->currentIndex()) { - case 0: + case 0: resized_width=(int)m_Ui->widthSpinBox->value(); - resized_height=rh_from_rw(); - from_other_spinbox=true; - //update directly resized_height + resized_height=rh_from_rw(); + from_other_spinbox=true; + //update directly resized_height m_Ui->heightSpinBox->setValue(resized_height); - break; - case 1: + break; + case 1: resized_width=(int)(orig_width*m_Ui->widthSpinBox->value()/100.0); - resized_height=rh_from_rw(); - from_other_spinbox=true; + resized_height=rh_from_rw(); + from_other_spinbox=true; m_Ui->heightSpinBox->setValue((double)resized_height/(double)orig_height*100.0); - break; - } - updatelabel(); + break; + } + updatelabel(); } void ResizeDialog::update_widthSpinBox() { - if (from_other_spinbox) { - from_other_spinbox=false; - return; - } + if (from_other_spinbox) { + from_other_spinbox=false; + return; + } switch (m_Ui->px_or_percentage->currentIndex()) { - case 0: + case 0: resized_height=(int)m_Ui->heightSpinBox->value(); - resized_width=rw_from_rh(); - from_other_spinbox=true; - //update directly resized_width + resized_width=rw_from_rh(); + from_other_spinbox=true; + //update directly resized_width m_Ui->widthSpinBox->setValue(resized_width); - break; - case 1: + break; + case 1: resized_height=(int)(orig_height*m_Ui->heightSpinBox->value()/100.0); - resized_width=rw_from_rh(); - from_other_spinbox=true; + resized_width=rw_from_rh(); + from_other_spinbox=true; m_Ui->widthSpinBox->setValue((double)resized_width/(double)orig_width*100.0); - break; - } - updatelabel(); + break; + } + updatelabel(); } void ResizeDialog::updatelabel() { m_Ui->sizepreview->setText(QString("%1x%2").arg(resized_width).arg(resized_height)); } void ResizeDialog::defaultpressed() { - resized_height=orig_height; - resized_width=orig_width; + resized_height=orig_height; + resized_width=orig_width; switch (m_Ui->px_or_percentage->currentIndex()) { - case 0: - from_other_spinbox=true; + case 0: + from_other_spinbox=true; m_Ui->widthSpinBox->setValue(resized_width); - from_other_spinbox=true; + from_other_spinbox=true; m_Ui->heightSpinBox->setValue(resized_height); - from_other_spinbox=false; - break; - case 1: - from_other_spinbox=true; + from_other_spinbox=false; + break; + case 1: + from_other_spinbox=true; m_Ui->widthSpinBox->setValue(100); - from_other_spinbox=true; + from_other_spinbox=true; m_Ui->heightSpinBox->setValue(100); - from_other_spinbox=false; - break; - } - updatelabel(); + from_other_spinbox=false; + break; + } + updatelabel(); } diff -Nru luminance-hdr-2.5.0/src/Resize/ResizeDialog.h luminance-hdr-2.5.1/src/Resize/ResizeDialog.h --- luminance-hdr-2.5.0/src/Resize/ResizeDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Resize/ResizeDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -39,23 +39,23 @@ Q_OBJECT public: ResizeDialog(QWidget *parent, pfs::Frame *orig); - ~ResizeDialog(); - pfs::Frame* getResizedFrame(); + ~ResizeDialog(); + pfs::Frame* getResizedFrame(); public slots: - void scaledPressed(); - void switch_px_percentage(int); - void update_heightSpinBox(); - void update_widthSpinBox(); - void defaultpressed(); + void scaledPressed(); + void switch_px_percentage(int); + void update_heightSpinBox(); + void update_widthSpinBox(); + void defaultpressed(); private: - pfs::Frame* m_original; - pfs::Frame* m_resized; - int orig_width,orig_height; - int resized_width,resized_height; - void updatelabel(); - int rh_from_rw(); - int rw_from_rh(); - bool from_other_spinbox; + pfs::Frame* m_original; + pfs::Frame* m_resized; + int orig_width,orig_height; + int resized_width,resized_height; + void updatelabel(); + int rh_from_rw(); + int rw_from_rh(); + bool from_other_spinbox; QScopedPointer m_Ui; }; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/ashikhmin02/pfstmo_ashikhmin02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/ashikhmin02/pfstmo_ashikhmin02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/ashikhmin02/pfstmo_ashikhmin02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/ashikhmin02/pfstmo_ashikhmin02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -3,9 +3,9 @@ * Michael Ashikhmin 2002 * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -19,8 +19,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Akiko Yoshida, * @author Grzegorz Krawczyk, * @@ -77,7 +77,7 @@ { throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); } - + pfs::transformColorSpace( pfs::CS_RGB, Xr, Yr, Zr, pfs::CS_XYZ, Xr, Yr, Zr ); float maxLum, avLum, minLum; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/ashikhmin02/pyramid.h luminance-hdr-2.5.1/src/TonemappingOperators/ashikhmin02/pyramid.h --- luminance-hdr-2.5.0/src/TonemappingOperators/ashikhmin02/pyramid.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/ashikhmin02/pyramid.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** * @brief Gaussian Pyramid for Michael Ashikhmin tone mapping operator - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Akiko Yoshida, * @@ -106,7 +106,7 @@ double InterpolateLum(double newX, double newY, Pyramid *pl) { int X_int = (int)newX; int Y_int = (int)newY; - + double dx, omdx, dy, omdy; dx = newX - (double)X_int; omdx = 1.0 - dx; @@ -116,9 +116,9 @@ if(X_int < pl->width-1 && Y_int < pl->height-1) lum = omdx * omdy * pl->getPixel(X_int, Y_int) - + dx * omdy * pl->getPixel(X_int+1, Y_int) - + omdx * dy * pl->getPixel(X_int, Y_int+1) - + dx * dy * pl->getPixel(X_int+1, Y_int+1); + + dx * omdy * pl->getPixel(X_int+1, Y_int) + + omdx * dy * pl->getPixel(X_int, Y_int+1) + + dx * dy * pl->getPixel(X_int+1, Y_int+1); else if(X_int < pl->width-1 && Y_int >= pl->height) { Y_int = pl->height-1; lum = omdx * pl->getPixel(X_int, Y_int) + dx * pl->getPixel(X_int+1, Y_int); @@ -146,19 +146,19 @@ initializeNewLevel(i, new_w, new_h, new_kernel_size, lambda*p[bottom].lambda); for(int y=0; y= 0 && 2*x+m < p[current_index].width) - X = 2*x+m; - else if(2*x+m < 0) - X = 0; - else - X = p[current_index].width-1; - - if(2*y+n >= 0 && 2*y+n < p[current_index].height) - Y = 2*y+n; - else if(2*y+n < 0) - Y = 0; - else - Y = p[current_index].height-1; - - sum += g_weights[m+2][n+2] * p[current_index].getPixel(X, Y); - } - } + double sum = 0.0; + for(int n=-2; n<3; n++) { + for(int m=-2; m<3; m++) { + if(2*x+m >= 0 && 2*x+m < p[current_index].width) + X = 2*x+m; + else if(2*x+m < 0) + X = 0; + else + X = p[current_index].width-1; + + if(2*y+n >= 0 && 2*y+n < p[current_index].height) + Y = 2*y+n; + else if(2*y+n < 0) + Y = 0; + else + Y = p[current_index].height-1; + + sum += g_weights[m+2][n+2] * p[current_index].getPixel(X, Y); + } + } - p[next_index].setPixel(x, y, sum); + p[next_index].setPixel(x, y, sum); } } return next_index; @@ -240,9 +240,9 @@ void constructPyramid(pfs::Array2Df* lum_map, int im_width, int im_height) { initializeNewLevel(0, im_width, im_height, 1, 1.0); - for(int y=0; y * @author Grzegorz Krawczyk, @@ -44,7 +44,7 @@ float calc_LAL_interpolated(GaussianPyramid *myPyramid, int x, int y, int s) { - float ratio = myPyramid->p[s-1].lambda; + float ratio = myPyramid->p[s-1].lambda; float newX = (float)x * ratio; float newY = (float)y * ratio; @@ -82,7 +82,7 @@ } float calc_LAL(GaussianPyramid *myPyramid, int x, int y, int s) { - float ratio = myPyramid->p[s-1].lambda; + float ratio = myPyramid->p[s-1].lambda; float newX = (float)x * ratio; float newY = (float)y * ratio; @@ -106,7 +106,7 @@ // g = calc_LAL(myPyramid, x, y, s); // gg = calc_LAL(myPyramid, x, y, 2*s); - if(fabs((g-gg)/g) >= LOCAL_CONTRAST) + if(fabs((g-gg)/g) >= LOCAL_CONTRAST) return g; } return g; @@ -117,16 +117,16 @@ float C(float lum_val) { // linearly approximated TVI function if(lum_val <= 1e-20) return 0.0; - - if(lum_val < 0.0034) + + if(lum_val < 0.0034) return lum_val/0.0014; - - if(lum_val < 1.0) + + if(lum_val < 1.0) return 2.4483 + log(lum_val/0.0034)/0.4027; - - if(lum_val < 7.2444) + + if(lum_val < 7.2444) return 16.5630 + (lum_val-1.0)/0.4027; - + return 32.0693 + log(lum_val/7.2444)/0.0556; } @@ -165,27 +165,27 @@ assert(Y!=NULL); assert(L!=NULL); - unsigned int nrows = Y->getRows(); // image size + unsigned int nrows = Y->getRows(); // image size unsigned int ncols = Y->getCols(); assert(nrows==L->getRows() && ncols==L->getCols() ); // int im_size = nrows * ncols; - // maxLum /= avLum; // normalize maximum luminance by average luminance + // maxLum /= avLum; // normalize maximum luminance by average luminance // apply ToneMapping function only if(simple_flag) { for(unsigned int y=0; y * @author Grzegorz Krawczyk, * diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/drago03/pfstmo_drago03.cpp luminance-hdr-2.5.1/src/TonemappingOperators/drago03/pfstmo_drago03.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/drago03/pfstmo_drago03.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/drago03/pfstmo_drago03.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,14 +1,14 @@ /** * @brief Adaptive logarithmic tone mapping - * + * * Adaptive logarithmic mapping for displaying high contrast - * scenes. + * scenes. * F. Drago, K. Myszkowski, T. Annen, and N. Chiba. In Eurographics 2003. * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: pfstmo_drago03.cpp,v 1.3 2008/09/04 12:46:48 julians37 Exp $ @@ -57,7 +57,7 @@ { throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); } - + frame.getTags().setTag("LUMINANCE", "RELATIVE"); //--- diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/drago03/tmo_drago03.cpp luminance-hdr-2.5.1/src/TonemappingOperators/drago03/tmo_drago03.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/drago03/tmo_drago03.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/drago03/tmo_drago03.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,14 +1,14 @@ /** * @brief Frederic Drago logmapping operator - * + * * Adaptive logarithmic mapping for displaying high contrast - * scenes. + * scenes. * F. Drago, K. Myszkowski, T. Annen, and N. Chiba. In Eurographics 2003. - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_drago03.cpp,v 1.4 2008/11/04 23:43:08 rafm Exp $ @@ -44,7 +44,7 @@ { inline float biasFunc(float b, float x) { - return std::pow(x, b); // pow(x, log(bias)/log(0.5)) + return std::pow(x, b); // pow(x, log(bias)/log(0.5)) } const float LOG05 = -0.693147f; // log(0.5) @@ -68,7 +68,7 @@ void tmo_drago03(const pfs::Array2Df& Y, pfs::Array2Df& L, - float maxLum, float avLum, float bias, + float maxLum, float avLum, float bias, pfs::Progress &ph) { assert(Y.getRows() == L.getRows()); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/drago03/tmo_drago03.h luminance-hdr-2.5.1/src/TonemappingOperators/drago03/tmo_drago03.h --- luminance-hdr-2.5.0/src/TonemappingOperators/drago03/tmo_drago03.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/drago03/tmo_drago03.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** * @brief Frederic Drago logmapping operator - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -18,8 +18,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_drago03.h,v 1.3 2008/09/04 12:46:48 julians37 Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/durand02/bilateral.cpp luminance-hdr-2.5.1/src/TonemappingOperators/durand02/bilateral.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/durand02/bilateral.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/durand02/bilateral.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -2,11 +2,11 @@ * @file bilateral.cpp * @brief Bilateral filtering * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -20,8 +20,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * @author Grzegorz Krawczyk, * @@ -122,7 +122,7 @@ { float val = 0; float k = 0; - float I_s = (*X1)(x,y); //!! previously 'I' not 'X1' + float I_s = (*X1)(x,y); //!! previously 'I' not 'X1' if( unlikely( !boost::math::isfinite( I_s ) ) ) I_s = 0.0f; @@ -133,7 +133,7 @@ for( int px = max( 0, x - sKernelSize_2), pxmax = min( I->getCols(), x + sKernelSize_2); px < pxmax; px++ ) { - float I_p = (*X1)(px, py); //!! previously 'I' not 'X1' + float I_p = (*X1)(px, py); //!! previously 'I' not 'X1' if( unlikely( !boost::math::isfinite( I_p ) ) ) I_p = 0.0f; @@ -142,9 +142,9 @@ float Ixy = (*I)(px, py); if( unlikely( !boost::math::isfinite( Ixy ) ) ) - Ixy = 0.0f; + Ixy = 0.0f; - val += Ixy * mult; //!! but here we want 'I' + val += Ixy * mult; //!! but here we want 'I' k += mult; } } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/durand02/bilateral.h luminance-hdr-2.5.1/src/TonemappingOperators/durand02/bilateral.h --- luminance-hdr-2.5.0/src/TonemappingOperators/durand02/bilateral.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/durand02/bilateral.h 2017-05-10 19:14:06.000000000 +0000 @@ -2,11 +2,11 @@ * @file bilateral.h * @brief Bilateral filtering * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -20,8 +20,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * @author Grzegorz Krawczyk, * diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/durand02/fastbilateral.cpp luminance-hdr-2.5.1/src/TonemappingOperators/durand02/fastbilateral.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/durand02/fastbilateral.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/durand02/fastbilateral.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -2,11 +2,11 @@ * @file fastbilateral.cpp * @brief Fast bilateral filtering * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -20,8 +20,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: fastbilateral.cpp,v 1.5 2008/09/09 18:10:49 rafm Exp $ @@ -56,7 +56,7 @@ fftwf_plan fplan_in; float sigma; - + public: GaussianBlur( int nx, int ny, float sigma ) : sigma( sigma ) { @@ -68,7 +68,7 @@ // if( source == NULL || freq == NULL ) //TODO: throw exception fplan_fw = fftwf_plan_dft_r2c_2d(nx, ny, source, freq, FFTW_ESTIMATE); - fplan_in = fftwf_plan_dft_c2r_2d(nx, ny, freq, source, FFTW_ESTIMATE); + fplan_in = fftwf_plan_dft_c2r_2d(nx, ny, freq, source, FFTW_ESTIMATE); } @@ -82,7 +82,7 @@ int ox = nx; int oy = ny/2 + 1; // saves half of the data - + for( y=0 ; ygetRows() / (float)out->getRows(); float pad; - + float filterSamplingX = max( modff( dx, &pad ), 0.01f ); float filterSamplingY = max( modff( dy, &pad ), 0.01f ); @@ -160,25 +160,25 @@ float pixVal = 0; float weight = 0; - + for( float ix = max( 0, ceilf( sx-filterSize ) ); ix <= min( floorf(sx+filterSize), inCols-1 ); ix++ ) for( float iy = max( 0, ceilf( sy-filterSize ) ); iy <= min( floorf( sy+filterSize), inRows-1 ); iy++ ) { float fx = fabs( sx - ix ); float fy = fabs( sy - iy ); const float fval = (1.0f-fx)*(1.0f-fy); - + pixVal += (*in)( (int)ix, (int)iy ) * fval; weight += fval; } if( weight == 0 ) { fprintf( stderr, "%g %g %g %g\n", sx, sy, dx, dy ); - } + } // assert( weight != 0 ); (*out)(x,y) = pixVal / weight; - } + } } void downsampleArray( const pfs::Array2D *in, pfs::Array2D *out ) @@ -193,10 +193,10 @@ const float dy = (float)in->getRows() / (float)out->getRows(); const float filterSize = 0.5; - + float sx, sy; int x, y; - + for( y = 0, sy = dy/2-0.5; y < outRows; y++, sy += dy ) for( x = 0, sx = dx/2-0.5; x < outCols; x++, sx += dx ) { @@ -206,24 +206,24 @@ for( float iy = max( 0, ceilf( sy-dx*filterSize ) ); iy <= min( floorf( sy+dx*filterSize), inRows-1 ); iy++ ) { pixVal += (*in)( (int)ix, (int)iy ); w += 1; - } - (*out)(x,y) = pixVal/w; + } + (*out)(x,y) = pixVal/w; } } #endif -/* +/* Pseudocode from the paper: PiecewiseBilateral (Image I, spatial kernel fs , intensity influence gr ) J=0 // set the output to zero - for j=0..NB SEGMENTS + for j=0..NB SEGMENTS ij= minI+j.*(max(I)-min(I))/NB SEGMENTS Gj=gr (I - ij ) // evaluate gr at each pixel Kj=Gj x fs // normalization factor Hj=Gj .* I // compute H for each pixel - Hj=Hj x fs + Hj=Hj x fs Jj=Hj ./ Kj // normalize J=J+Jj .* InterpolationWeight(I, ij ) */ @@ -250,16 +250,16 @@ pfs::Array2Df* JJ; // if( downsample != 1 ) // JJ = new pfs::Array2D(w,h); - + // w /= downsample; // h /= downsample; - + int sizeZ = w*h; // pfs::Array2D* Iz = new pfs::Array2D(w,h); // downsampleArray(I,Iz); const pfs::Array2Df* Iz = &I; // sigma_s /= downsample; - + pfs::Array2Df* jJ = new pfs::Array2Df(w,h); pfs::Array2Df* jG = new pfs::Array2Df(w,h); pfs::Array2Df* jK = new pfs::Array2Df(w,h); @@ -275,10 +275,10 @@ { ph.setValue( j * 100 / NB_SEGMENTS ); if (ph.canceled()) - break; + break; float jI = minI + j*stepI; // current intensity value - + for (int i=0 ; i jI + stepI ) ) - continue; // wi = 0; + continue; // wi = 0; if( likely( I(i) > jI ) ) { float wi = (stepI - (I(i)-jI)) / stepI; J(i) += (*JJ)(i)*wi; - } else + } else J(i) += (*JJ)(i); } } else if( j == NB_SEGMENTS-1 ) { @@ -320,11 +320,11 @@ for (int i=0 ; i * * $Id: fastbilateral.h,v 1.3 2008/09/09 00:56:49 rafm Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/durand02/pfstmo_durand02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/durand02/pfstmo_durand02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/durand02/pfstmo_durand02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/durand02/pfstmo_durand02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * F. Durand and J. Dorsey. * In ACM Transactions on Graphics, 2002. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: pfstmo_durand02.cpp,v 1.5 2009/02/23 19:09:41 rafm Exp $ @@ -38,13 +38,9 @@ #include "Libpfs/colorspace/colorspace.h" #include "Libpfs/exception.h" #include "Libpfs/frame.h" +#include "Libpfs/progress.h" #include "tmo_durand02.h" -namespace pfs -{ -class Progress; -} - namespace { const int downsample = 1; @@ -63,7 +59,7 @@ void pfstmo_durand02(pfs::Frame& frame, float sigma_s, float sigma_r, float baseContrast, pfs::Progress &ph) -{ +{ #ifndef NDEBUG std::stringstream ss; @@ -81,7 +77,7 @@ #endif pfs::Channel *X, *Y, *Z; - + frame.getXYZChannels( X, Y, Z ); frame.getTags().setTag("LUMINANCE", "RELATIVE"); //--- @@ -90,9 +86,12 @@ { throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); } - + tmo_durand02(*X, *Y, *Z, sigma_s, sigma_r, baseContrast, downsample, !original_algorithm, ph); + + if ( !ph.canceled() ) + ph.setValue(100); } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/durand02/tmo_durand02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/durand02/tmo_durand02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/durand02/tmo_durand02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/durand02/tmo_durand02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -7,11 +7,11 @@ * F. Durand and J. Dorsey. * In ACM Transactions on Graphics, 2002. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -25,8 +25,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_durand02.cpp,v 1.6 2009/02/23 19:09:41 rafm Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/durand02/tmo_durand02.h luminance-hdr-2.5.1/src/TonemappingOperators/durand02/tmo_durand02.h --- luminance-hdr-2.5.0/src/TonemappingOperators/durand02/tmo_durand02.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/durand02/tmo_durand02.h 2017-05-10 19:14:06.000000000 +0000 @@ -7,11 +7,11 @@ * F. Durand and J. Dorsey. * In ACM Transactions on Graphics, 2002. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -25,8 +25,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_durand02.h,v 1.4 2009/02/23 19:09:41 rafm Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pde.cpp luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pde.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pde.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pde.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -8,12 +8,12 @@ * @author Rafal Mantiuk, * * Some code from Numerical Recipes in C - * - * + * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -27,8 +27,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * $Id: pde.cpp,v 1.3 2008/09/04 12:46:49 julians37 Exp $ */ @@ -101,7 +101,7 @@ // for( int x = 0; x < width; x++ ) { // fwrite( &((*data)(x,y)), sizeof( float ), 1, fh ); // } - + // fclose( fh ); // } @@ -145,7 +145,7 @@ // void restrict( pfs::Array2D *F, pfs::Array2D *T ) // { // // DEBUG_STR << "restrict" << endl; - + // int sxt = T->getCols(); // int syt = T->getRows(); // int sxf = F->getCols(); @@ -158,7 +158,7 @@ // { // float sum=0.0; float norm=0.0f; // for( int m=-1 ; m<=1 ; m++ ) -// for( int n=-1 ; n<=1 ; n++ ) +// for( int n=-1 ; n<=1 ; n++ ) // { // int xf = 2*x+m; // int yf = 2*y+n; @@ -194,22 +194,22 @@ float pixVal = 0; float weight = 0; - + for( float ix = max( 0, ceilf( sx-filterSize ) ); ix <= min( floorf(sx+filterSize), inCols-1 ); ix++ ) for( float iy = max( 0, ceilf( sy-filterSize ) ); iy <= min( floorf( sy+filterSize), inRows-1 ); iy++ ) { float fx = fabs( sx - ix ); float fy = fabs( sy - iy ); const float fval = (1-fx)*(1-fy); - + pixVal += (*in)( (int)ix, (int)iy ) * fval; weight += fval; } - + assert( weight != 0 ); (*out)(x,y) = pixVal / weight; - } + } } static void exact_sollution( pfs::Array2Df */*F*/, pfs::Array2Df *U ) @@ -227,11 +227,11 @@ /* also works well?? */ return; - + // if( sx==3 && sy==3 ) // { // (*U)(1,1) = -h2* (*F)(1,1) / 4.0f; - + // // boundary points // for( x=0 ; xgetRows(); int cols = U->getCols(); - + const int n = rows*cols; int iter; float err; - + linbcg( n, F->data(), U->data(), BCG_TOL, BCG_STEPS, &iter, &err, rows, cols); // fprintf( stderr, "." ); // Gauss relaxation is too slow - + // int sx = F->getCols(); // int sy = F->getRows(); // int x,y,i; -// int shx; shift x - +// int shx; shift x + // float h = 1.0f/sqrt(sx*sy*1.0f); // float h2 = h*h; @@ -294,9 +294,9 @@ // n = (y == 0 ? 0 : y-1); // s = (y+1 == sy ? y : y+1); // e = (x+1 == sx ? x : x+1); - -// (*U)(x,y) = .25 * ( (*U)(e,y) + (*U)(w,y) + (*U)(x,s) + (*U)(x,n) -// - h2 * (*F)(x,y) ); + +// (*U)(x,y) = .25 * ( (*U)(e,y) + (*U)(w,y) + (*U)(x,s) + (*U)(x,n) +// - h2 * (*F)(x,y) ); // } // } // } @@ -321,11 +321,11 @@ n = (y == 0 ? 0 : y-1); s = (y+1 == sy ? y : y+1); e = (x+1 == sx ? x : x+1); - + (*D)(x,y) = (*F)(x,y) -( (*U)(e,y) + (*U)(w,y) + (*U)(x,n) + (*U)(x,s) - 4.0 * (*U)(x,y) ); } - + } static void add_correction( pfs::Array2Df *U, const pfs::Array2Df *C ) @@ -343,14 +343,14 @@ { int xmax = F->getCols(); int ymax = F->getRows(); - - int i; // index for simple loops - int k; // index for iterating through levels - int k2; // index for iterating through levels in V-cycles + + int i; // index for simple loops + int k; // index for iterating through levels + int k2; // index for iterating through levels in V-cycles // 1. restrict f to coarse-grid (by the way count the number of levels) - // k=0: fine-grid = f - // k=levels: coarsest-grid + // k=0: fine-grid = f + // k=levels: coarsest-grid int levels = 0; int mins = (xmax=MINS ) @@ -379,7 +379,7 @@ // calculate size of next level sx=sx/2+MODYF; sy=sy/2+MODYF; - + RHS[k+1] = new pfs::Array2Df(sx,sy); IU[k+1] = new pfs::Array2Df(sx,sy); VF[k+1] = new pfs::Array2Df(sx,sy); @@ -412,23 +412,23 @@ // 7. pre-smoothing of initial sollution using target function // zero for initial guess at smoothing // (except for level k when iu contains prolongated result) - if( k2!=k ) + if( k2!=k ) IU[k2]->reset(); // fprintf( stderr, "Level: %d --------\n", k2 ); - - for( i=0 ; igetCols(), IU[k2]->getRows()); - calculate_defect( D, IU[k2], VF[k2] ); + calculate_defect( D, IU[k2], VF[k2] ); // 9. restrict deffect as target function for next coarser-grid // def -> f[k2+1] - restrict( D, VF[k2+1] ); - delete D; + restrict( D, VF[k2+1] ); + delete D; } // 10. solve on coarsest-grid (target function is the deffect) @@ -442,16 +442,16 @@ // 12. interpolate correction from last coarser-grid to finer-grid // iu[k2+1] -> cor pfs::Array2Df* C = new pfs::Array2Df(IU[k2]->getCols(), IU[k2]->getRows()); - prolongate( IU[k2+1], C ); + prolongate( IU[k2+1], C ); // 13. add interpolated correction to initial sollution at level k2 - add_correction( IU[k2], C ); - delete C; + add_correction( IU[k2], C ); + delete C; // fprintf( stderr, "Level: %d --------\n", k2 ); - + // 14. post-smoothing of current sollution using target function - for( i=0 ; iOMP_THRESHOLD) schedule(static) - for (long i=0; i(n); i++) { - ans += sx[i]*sx[i]; + ans += sx[i]*sx[i]; } - return sqrt(ans); + return sqrt(ans); } /** @@ -563,82 +563,82 @@ * from Numerical Recipes in C */ static void linbcg(unsigned long n, const float b[], float x[], float tol, int itmax, int *iter, float *err, int rows, int cols) -{ +{ float ak,akden,bk,bkden=1.0,bknum,bnrm=1.0;//zm1nrm,znrm; - float *p,*pp,*r,*rr,*z,*zz; + float *p,*pp,*r,*rr,*z,*zz; - p=new float[n+1]; - pp=new float[n+1]; - r=new float[n+1]; - rr=new float[n+1]; - z=new float[n+1]; - zz=new float[n+1]; + p=new float[n+1]; + pp=new float[n+1]; + r=new float[n+1]; + rr=new float[n+1]; + z=new float[n+1]; + zz=new float[n+1]; - *iter=0; - atimes(x,r, rows, cols); + *iter=0; + atimes(x,r, rows, cols); for (unsigned long j=0;jOMP_THRESHOLD) schedule(static) for (long j=0;j(n);j++) { bknum += z[j]*rr[j]; } - if (*iter == 1) { + if (*iter == 1) { for (long j=0;j(n);j++) { - p[j]=z[j]; + p[j]=z[j]; } for (long j=0;j(n);j++) { - pp[j]=zz[j]; + pp[j]=zz[j]; } - } - else { - bk=bknum/bkden; + } + else { + bk=bknum/bkden; pfs::utils::vadds(z, bk, p, p, n); pfs::utils::vadds(zz, bk, pp, pp, n); - } - bkden=bknum; - atimes(p,z,rows,cols); - akden=0.0; + } + bkden=bknum; + atimes(p,z,rows,cols); + akden=0.0; #pragma omp parallel for shared(z, pp) reduction(+:akden) if (n>OMP_THRESHOLD) schedule(static) for (long j=0;j(n);j++) { akden += z[j]*pp[j]; } - ak=bknum/akden; - atimes(pp,zz,rows,cols); + ak=bknum/akden; + atimes(pp,zz,rows,cols); pfs::utils::vadds(x, ak, p, x, n); pfs::utils::vsubs(r, ak, z, r, n); pfs::utils::vsubs(rr, ak, zz, rr, n); - asolve(r,z, rows, cols); + asolve(r,z, rows, cols); //znrm = 1.0f; *err = snrm(n,r)/bnrm; -// fprintf( stderr, "iter=%4d err=%12.6f\n",*iter,*err); - if (*err <= tol) break; - } - - delete [] p; - delete [] pp; - delete [] r; - delete [] rr; - delete [] z; - delete [] zz; +// fprintf( stderr, "iter=%4d err=%12.6f\n",*iter,*err); + if (*err <= tol) break; + } + + delete [] p; + delete [] pp; + delete [] r; + delete [] rr; + delete [] z; + delete [] zz; } //#undef EPS diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pde_fft.cpp luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pde_fft.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pde_fft.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pde_fft.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -128,7 +128,7 @@ fftwf_plan p; p=fftwf_plan_r2r_2d(height, width, A->data(), T->data(), FFTW_REDFT00, FFTW_REDFT00, FFTW_ESTIMATE); - fftwf_execute(p); + fftwf_execute(p); fftwf_destroy_plan(p); } @@ -144,7 +144,7 @@ fftwf_plan p; p=fftwf_plan_r2r_2d(height, width, A->data(), T->data(), FFTW_REDFT00, FFTW_REDFT00, FFTW_ESTIMATE); - fftwf_execute(p); + fftwf_execute(p); fftwf_destroy_plan(p); // need to scale the output matrix to get the right transform @@ -248,7 +248,7 @@ make_compatible_boundary(F); } - // transforms F into eigenvector space: Ftr = + // transforms F into eigenvector space: Ftr = //DEBUG_STR << "solve_pde_fft: transform F to ev space (fft)" << std::endl; pfs::Array2Df* F_tr = new pfs::Array2Df(width,height); transform_normal2ev(F, F_tr); @@ -260,7 +260,7 @@ delete F_tr; return; } - + //DEBUG_STR << "solve_pde_fft: F_tr(0,0) = " << (*F_tr)(0,0); //DEBUG_STR << " (must be 0 for solution to exist)" << std::endl; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pde.h luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pde.h --- luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pde.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pde.h 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * * @author Grzegorz Krawczyk * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * $Id: pde.h,v 1.2 2008/09/04 12:46:49 julians37 Exp $ */ @@ -52,13 +52,13 @@ * * @param F array of the right hand side (contains div G in this example) * @param U [out] solution - * @param adjust_bound, adjust boundary values of F to make pde solvable + * @param adjust_bound, adjust boundary values of F to make pde solvable */ void solve_pde_fft(pfs::Array2Df *F, pfs::Array2Df *U, pfs::Progress &ph, bool adjust_bound = false); /** - * @brief returns the residual error of the solution U, ie norm(Laplace U - F) + * @brief returns the residual error of the solution U, ie norm(Laplace U - F) * * @param F [in] right hand side * @param U [in] solution diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pfstmo_fattal02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pfstmo_fattal02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/pfstmo_fattal02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/pfstmo_fattal02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * R. Fattal, D. Lischinski, and M. Werman * In ACM Transactions on Graphics, 2002. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: pfstmo_fattal02.cpp,v 1.3 2008/09/04 12:46:49 julians37 Exp $ @@ -83,17 +83,17 @@ pfs::Channel *R, *G, *B; frame.getXYZChannels( R, G, B ); //--- - + if ( !R || !G || !B ) { throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); } - + frame.getTags().setTag("LUMINANCE", "RELATIVE"); // tone mapping const int w = frame.getWidth(); const int h = frame.getHeight(); - + pfs::Array2Df Yr(w,h); pfs::Array2Df L(w,h); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/tmo_fattal02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/tmo_fattal02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/tmo_fattal02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/tmo_fattal02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -7,11 +7,11 @@ * * @author Grzegorz Krawczyk, * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -25,8 +25,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * $Id: tmo_fattal02.cpp,v 1.3 2008/11/04 23:43:08 rafm Exp $ */ @@ -42,12 +42,15 @@ #include "Libpfs/array2d.h" #include "Libpfs/progress.h" +#include "Libpfs/utils/msec_timer.h" #include "TonemappingOperators/pfstmo.h" #include "pde.h" #include "tmo_fattal02.h" using namespace std; +using namespace pfs; +using namespace utils; //!! TODO: for debugging purposes @@ -67,7 +70,7 @@ // for( int x = 0; x < width; x++ ) { // fwrite( &((*data)(x,y)), sizeof( float ), 1, fh ); // } - + // fclose( fh ); // } @@ -95,7 +98,7 @@ } } } - + void gaussianBlur(const pfs::Array2Df& I, pfs::Array2Df& L) { const int width = I.getCols(); @@ -147,14 +150,14 @@ pfs::Array2Df* L = new pfs::Array2Df(width,height); gaussianBlur( *pyramids[0], *L ); - + for ( int k=1 ; k= MSIZE ) { @@ -453,8 +460,8 @@ s = (y+1 == height ? y : y+1); e = (x+1 == width ? x : x+1); - (*Gx)(x,y) = ((*H)(e,y)-(*H)(x,y)) * (*FI)(x,y); - (*Gy)(x,y) = ((*H)(x,s)-(*H)(x,y)) * (*FI)(x,y); + (*Gx)(x,y) = ((*H)(e,y)-(*H)(x,y)) * (*FI)(x,y); + (*Gy)(x,y) = ((*H)(x,s)-(*H)(x,y)) * (*FI)(x,y); } delete H; delete FI; @@ -463,7 +470,7 @@ // dumpPFS( "Gx.pfs", Gx, "Y" ); // dumpPFS( "Gy.pfs", Gy, "Y" ); - + // calculate divergence pfs::Array2Df DivG(width, height); for ( size_t y = 0; y < height; ++y ) @@ -491,7 +498,7 @@ } // dumpPFS( "DivG.pfs", DivG, "Y" ); - + // solve pde and exponentiate (ie recover compressed image) { pfs::Array2Df U(width, height); @@ -518,7 +525,7 @@ } } ph.setValue(95); - + // remove percentile of min and max values and renormalize float cut_min = 0.01f * black_point; float cut_max = 1.0f - 0.01f * white_point; @@ -533,6 +540,11 @@ } // note, we intentionally do not cut off values > 1.0 } +#ifdef TIMER_PROFILING + stop_watch.stop_and_update(); + cout << endl; + cout << "tmo_fattal02 = " << stop_watch.get_time() << " msec" << endl; +#endif ph.setValue(96); } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/tmo_fattal02.h luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/tmo_fattal02.h --- luminance-hdr-2.5.0/src/TonemappingOperators/fattal02/tmo_fattal02.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/fattal02/tmo_fattal02.h 2017-05-10 19:14:06.000000000 +0000 @@ -5,11 +5,11 @@ * Implementation of Gradient Domain High Dynamic Range Compression * by Raanan Fattal, Dani Lischinski, Michael Werman. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -23,8 +23,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_fattal02.h,v 1.2 2008/09/04 12:46:49 julians37 Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/ferradans11/pfstmo_ferradans11.cpp luminance-hdr-2.5.1/src/TonemappingOperators/ferradans11/pfstmo_ferradans11.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/ferradans11/pfstmo_ferradans11.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/ferradans11/pfstmo_ferradans11.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * S. Ferradans, M. Bertalmio, E. Provenzi, V. Caselles * In IEEE Trans. Pattern Analysis and Machine Intelligence 2011 * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Sira Ferradans - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Sira Ferradans, * */ @@ -43,7 +43,7 @@ //--- default tone mapping parameters; //float rho = -2; //float inv_alpha = 5; - + #ifndef NDEBUG std::stringstream ss; ss << "pfstmo_ferradans11 ("; @@ -58,11 +58,11 @@ if( inR==NULL || inG==NULL || inB==NULL) throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); - + frame.getTags().setTag("LUMINANCE", "RELATIVE"); //TODO Check why gamma is 1/4 of gamma in pfstools //pfs::applyGamma(&frame, 0.25f); - + // tone mapping tmo_ferradans11(*inR, *inG, *inB, opt_rho, opt_inv_alpha, ph); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/ferradans11/tmo_ferradans11.cpp luminance-hdr-2.5.1/src/TonemappingOperators/ferradans11/tmo_ferradans11.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/ferradans11/tmo_ferradans11.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/ferradans11/tmo_ferradans11.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,6 +1,6 @@ /** * @file tmo_ferradans11.cpp - * Implementation of the algorithm presented in : + * Implementation of the algorithm presented in : * * An Analysis of Visual Adaptation and Contrast Perception for Tone Mapping * S. Ferradans, M. Bertalmio, E. Provenzi, V. Caselles @@ -9,10 +9,10 @@ * * @author Sira Ferradans Copyright (C) 2013 * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * This program 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 2 of the License, or @@ -26,8 +26,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * */ #include @@ -46,14 +46,17 @@ #include "Libpfs/array2d.h" #include "Libpfs/progress.h" +#include #include "Libpfs/utils/msec_timer.h" #include "TonemappingOperators/pfstmo.h" #include "tmo_ferradans11.h" #include + #include - + using namespace std; using namespace pfs; +using namespace utils; //for debugging purposes #if 0 @@ -71,10 +74,10 @@ for( int y = 0; y < height; y++ ) for( int x = 0; x < width; x++ ) { - float d = (*data)(x,y); + float d = (*data)(x,y); fwrite( &d, sizeof( float ), 1, fh ); } - + fclose( fh ); } #endif @@ -84,7 +87,7 @@ namespace { -static bool abs_compare(float a, float b) +static inline bool abs_compare(float a, float b) { return fabs(a) < fabs(b); } @@ -100,7 +103,7 @@ gr5=Ip*gr4-Ip*Ip*Ip*Ip*I-4*Ip*Ip*I3-I5+4*Ip*I4-2*Ip*Ip*(I3-2*Ip*I2); gr6=Ip*Ip*gr4-Ip*Ip*Ip*Ip*Ip*I-4*Ip*Ip*Ip*I3-Ip*I5+4*Ip*Ip*I4-2*Ip*Ip*Ip*(I3-2*Ip*I2)-(I*Ip*gr4-Ip*Ip*Ip*Ip*I2-4*Ip*Ip*I4-I6+4*Ip*I5-2*Ip*Ip*(I4-2*Ip*I3) ); gr7=Ip*Ip*(Ip*( Ip*Ip*Ip*Ip+4*Ip*Ip*I2+I4-4*Ip*I3+2*Ip*Ip*(I2-2*Ip*I) )-Ip*Ip*Ip*Ip*I-4*Ip*Ip*I3-I5+4*Ip*I4-2*Ip*Ip*(I3-2*Ip*I2))-2*Ip*(Ip*(Ip*Ip*Ip*Ip*I+4*Ip*Ip*I3+I5-4*Ip*I4+2*Ip*Ip*(I3-2*Ip*I2)) -Ip*Ip*Ip*Ip*I2-4*Ip*Ip*I4-I6+4*Ip*I5-2*Ip*Ip*(I4-2*Ip*I3))+Ip*(Ip*Ip*Ip*Ip*I2+4*Ip*Ip*I4+I6-4*Ip*I5+2*Ip*Ip*(I4-2*Ip*I3)) -Ip*Ip*Ip*Ip*I3-4*Ip*Ip*I5-I7+4*Ip*I6-2*Ip*Ip*(I5-2*Ip*I4); - + // Hardcoded coefficients of the polynomial of degree 9 that allows to approximate the neighborhood averaging as a sum of convolutions return(( -7.7456e+00)*gr7+ (3.1255e-16)*gr6+(1.5836e+01)*gr5+(-1.8371e-15)*gr4+(-1.1013e+01)*gr3+(4.4531e-16)*gr2+(3.7891e+00)*gr1+ 1.2391e-15 ) ; } @@ -115,7 +118,8 @@ */ -#define ELEM_SWAP(a,b) { register float t=(a);(a)=(b);(b)=t; } +#define ELEM_SWAP(a,b) { float t=(a);(a)=(b);(b)=t; } +//#define ELEM_SWAP(a,b) { register float t=(a);(a)=(b);(b)=t; } //#define ELEM_SWAP(a,b) { register float t=a;a=b;b=t; } float quick_select(float arr[], int n) @@ -123,43 +127,43 @@ int low, high ; int median; int middle, ll, hh; - + low = 0 ; high = n-1 ; median = (low + high) / 2; for (;;) { if (high <= low) /* One element only */ return arr[median] ; - + if (high == low + 1) { /* Two elements only */ if (arr[low] > arr[high]) ELEM_SWAP(arr[low], arr[high]) ; return arr[median] ; } - + /* Find median of low, middle and high items; swap into position low */ middle = (low + high) / 2; if (arr[middle] > arr[high]) ELEM_SWAP(arr[middle], arr[high]) ; if (arr[low] > arr[high]) ELEM_SWAP(arr[low], arr[high]) ; if (arr[middle] > arr[low]) ELEM_SWAP(arr[middle], arr[low]) ; - + /* Swap low item (now in position middle) into position (low+1) */ ELEM_SWAP(arr[middle], arr[low+1]) ; - + /* Nibble from each end towards middle, swapping items when stuck */ ll = low + 1; hh = high; for (;;) { do ll++; while (arr[low] > arr[ll]) ; do hh--; while (arr[hh] > arr[low]) ; - + if (hh < ll) break; - + ELEM_SWAP(arr[ll], arr[hh]) ; } - + /* Swap middle item (in position low) back into correct position */ ELEM_SWAP(arr[low], arr[hh]) ; - + /* Re-set active partition */ if (hh <= median) low = ll; @@ -181,16 +185,15 @@ float tmp; float v=1.f/escala; float v2=1.f; - int i; - #pragma omp for private(i) - for(i=0;i * * $Id: pfstmo_mantiuk08.cpp,v 1.19 2013/12/28 14:00:54 rafm Exp $ */ +#ifdef _OPENMP +#include +#endif + #include #include #include @@ -37,11 +41,11 @@ #include "Libpfs/utils/msec_timer.h" #ifdef BRANCH_PREDICTION -#define likely(x) __builtin_expect((x),1) -#define unlikely(x) __builtin_expect((x),0) +#define likely(x) __builtin_expect((x),1) +#define unlikely(x) __builtin_expect((x),0) #else -#define likely(x) (x) -#define unlikely(x) (x) +#define likely(x) (x) +#define unlikely(x) (x) #endif /** @@ -183,6 +187,8 @@ #endif const size_t pix_count = width*height; + bool canceled = false; + ph.setValue(0); // Compute log of Luminance float *logL = new float[pix_count]; @@ -193,7 +199,7 @@ ImgHistogram H; H.compute(logL, pix_count ); - + //Instantiate LUT UniformArrayLUT lut( H.L_min, H.L_max, H.bin_count ); @@ -202,21 +208,34 @@ double *s = new double[H.bin_count]; { double d = 0; + #pragma omp parallel for reduction(+:d) for( int bb = 0; bb < H.bin_count; bb++ ) { - ph.setValue(35*bb/H.bin_count); if (ph.canceled()) - goto end; + { + canceled = true; +#ifndef WIN32 + bb = H.bin_count; +#endif + } d += pow( H.p[bb], 1./3. ); } + if (canceled) goto end; d *= H.delta; + #pragma omp parallel for for( int bb = 0; bb < H.bin_count; bb++ ) { - ph.setValue(50*bb/H.bin_count); if (ph.canceled()) - goto end; + { + canceled = true; +#ifndef WIN32 + bb = H.bin_count; +#endif + } s[bb] = pow( H.p[bb], 1./3. )/d; } + if (canceled) goto end; } + ph.setValue(33); #if 0 // TODO: Handling of degenerated cases, e.g. when an image contains uniform color @@ -240,22 +259,32 @@ //Create a tone-curve lut.y_i[0] = 0; + //#pragma omp parallel for private (bb) for( int bb = 1; bb < H.bin_count; bb++ ) { - ph.setValue(60*bb/H.bin_count); if (ph.canceled()) - goto end; + { + canceled = true; + bb = H.bin_count; + } lut.y_i[bb] = lut.y_i[bb-1] + s[bb] * H.delta; } - + if (canceled) goto end; + ph.setValue(66); // Apply the tone-curve - for( unsigned int pp = 0; pp < pix_count; pp++ ) { - ph.setValue(100*pp/pix_count); + #pragma omp parallel for + for( int pp = 0; pp < static_cast(pix_count); pp++ ) { if (ph.canceled()) - goto end; + { + canceled = true; +#ifndef WIN32 + pp = pix_count; +#endif + } R_out[pp] = lut.interp( safelog10f(R_in[pp]) ); G_out[pp] = lut.interp( safelog10f(G_in[pp]) ); B_out[pp] = lut.interp( safelog10f(B_in[pp]) ); } + ph.setValue(99); end: delete [] s; delete [] logL; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mai11/compression_tmo.h luminance-hdr-2.5.1/src/TonemappingOperators/mai11/compression_tmo.h --- luminance-hdr-2.5.0/src/TonemappingOperators/mai11/compression_tmo.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mai11/compression_tmo.h 2017-05-10 19:14:06.000000000 +0000 @@ -2,12 +2,12 @@ * @brief Tone-mapping optimized for backward-compatible HDR image and video compression * * From: - * Mai, Z., Mansour, H., Mantiuk, R., Nasiopoulos, P., Ward, R., & Heidrich, W. - * Optimizing a tone curve for backward-compatible high dynamic range image and video compression. + * Mai, Z., Mansour, H., Mantiuk, R., Nasiopoulos, P., Ward, R., & Heidrich, W. + * Optimizing a tone curve for backward-compatible high dynamic range image and video compression. * IEEE Transactions on Image Processing, 20(6), 1558 – 1571. doi:10.1109/TIP.2010.2095866, 2011 * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -21,8 +21,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: pfstmo_mantiuk08.cpp,v 1.19 2013/12/28 14:00:54 rafm Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mai11/pfstmo_mai11.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mai11/pfstmo_mai11.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mai11/pfstmo_mai11.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mai11/pfstmo_mai11.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -2,12 +2,12 @@ * @brief Tone-mapping optimized for backward-compatible HDR image and video compression * * From: - * Mai, Z., Mansour, H., Mantiuk, R., Nasiopoulos, P., Ward, R., & Heidrich, W. - * Optimizing a tone curve for backward-compatible high dynamic range image and video compression. + * Mai, Z., Mansour, H., Mantiuk, R., Nasiopoulos, P., Ward, R., & Heidrich, W. + * Optimizing a tone curve for backward-compatible high dynamic range image and video compression. * IEEE Transactions on Image Processing, 20(6), 1558 – 1571. doi:10.1109/TIP.2010.2095866, 2011 * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -21,8 +21,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: pfstmo_mantiuk08.cpp,v 1.19 2013/12/28 14:00:54 rafm Exp $ @@ -52,7 +52,7 @@ CompressionTMO tmo; pfs::Channel *inX, *inY, *inZ; - + frame.getXYZChannels(inX, inY, inZ); if ( inX == NULL || inY == NULL || inZ == NULL ) { @@ -63,7 +63,9 @@ tmo.tonemap( inX->data(), inY->data(), inZ->data(), cols, rows, inX->data(), inY->data(), inZ->data(), inY->data(), ph); - + frame.getTags().setTag("LUMINANCE", "DISPLAY"); + if ( !ph.canceled() ) + ph.setValue(100); } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/contrast_domain.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/contrast_domain.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/contrast_domain.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/contrast_domain.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * This file is a part of Luminance HDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Grzegorz Krawczyk * Copyright (C) 2010-2012 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -17,8 +17,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * */ //! \brief Contrast mapping TMO [Mantiuk06] @@ -258,10 +258,6 @@ << std::endl; } } - else - { - ph.setValue( itmax ); - } } void transformToLuminance(PyramidT& pp, Array2Df& Y, @@ -389,7 +385,7 @@ // std::cout << "clip_min = " << clip_min << std::endl; // std::cout << "Ymax = " << Ymax << std::endl; #pragma omp parallel for - for (int idx = 0; idx < Y.size(); idx++) + for (int idx = 0; idx < static_cast(Y.size()); idx++) { if ( R(idx) < clip_min ) R(idx) = clip_min; if ( G(idx) < clip_min ) G(idx) = clip_min; @@ -480,7 +476,7 @@ assert( R.getRows() == G.getRows() ); assert( G.getRows() == B.getRows() ); assert( B.getRows() == Y.getRows() ); - + const size_t r = R.getRows(); const size_t c = R.getCols(); // const size_t n = r*c; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/contrast_domain.h luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/contrast_domain.h --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/contrast_domain.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/contrast_domain.h 2017-05-10 19:14:06.000000000 +0000 @@ -2,16 +2,16 @@ * @brief Contrast mapping TMO * * From: - * + * * Rafal Mantiuk, Karol Myszkowski, Hans-Peter Seidel. * A Perceptual Framework for Contrast Processing of High Dynamic Range Images * In: ACM Transactions on Applied Perception 3 (3), pp. 286-308, 2006 * http://www.mpi-inf.mpg.de/~mantiuk/contrast_domain/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -25,8 +25,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Radoslaw Mantiuk, * @author Rafal Mantiuk, * Updated 2007/12/17 by Ed Brambley diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/pfstmo_mantiuk06.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/pfstmo_mantiuk06.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/pfstmo_mantiuk06.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/pfstmo_mantiuk06.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -2,16 +2,16 @@ * @brief Contrast mapping TMO * * From: - * + * * Rafal Mantiuk, Karol Myszkowski, Hans-Peter Seidel. * A Perceptual Framework for Contrast Processing of High Dynamic Range Images * In: ACM Transactions on Applied Perception 3 (3), pp. 286-308, 2006 * http://www.mpi-inf.mpg.de/~mantiuk/contrast_domain/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -25,8 +25,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Radoslaw Mantiuk, * @author Rafal Mantiuk, * Updated 2007/12/17 by Ed Brambley @@ -44,6 +44,7 @@ #include "Libpfs/pfs.h" #include "Libpfs/frame.h" +#include "Libpfs/progress.h" #include "Libpfs/colorspace/colorspace.h" @@ -83,6 +84,7 @@ std::cout << ss.str(); #endif + ph.setValue(0); if (cont_eq) scaleFactor = -scaleFactor; @@ -94,10 +96,10 @@ { throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); } - + const int cols = frame.getWidth(); const int rows = frame.getHeight(); - + pfs::Array2Df inY( cols, rows ); pfs::transformRGB2Y(inRed, inGreen, inBlue, &inY); @@ -106,4 +108,6 @@ ph); frame.getTags().setTag("LUMINANCE", "RELATIVE"); + if ( !ph.canceled() ) + ph.setValue(100); } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/pyramid.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/pyramid.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/pyramid.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/pyramid.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -115,7 +115,7 @@ // zero dimension Array2D pfs::Array2Df tempSumOfdivG( downscaleBy2(sumOfdivG.getCols()), downscaleBy2(sumOfdivG.getRows()) ); - + if ( (numLevels() % 2) ) { sumOfdivG.swap(tempSumOfdivG); @@ -209,14 +209,14 @@ { PyramidContainer::iterator itCurr = m_pyramid.begin(); PyramidContainer::iterator itEnd = m_pyramid.end(); - + TransformObj transformFunctor(detailFactor); - + while ( itCurr != itEnd ) { std::transform(itCurr->begin(), itCurr->end(), itCurr->begin(), transformFunctor); - + ++itCurr; } } @@ -226,7 +226,7 @@ ScalePyramidS(float multiplier) : multiplier_(multiplier) {} - + void operator()(PyramidS& multiply) { pfs::utils::vsmul(multiply.data(), multiplier_, @@ -251,7 +251,7 @@ // check that the first level of the pyramid has the same size assert( this->getCols() == other.getCols() ); assert( this->getRows() == other.getRows() ); - + PyramidContainer::const_iterator inCurr = other.m_pyramid.begin(); PyramidContainer::const_iterator inEnd = other.m_pyramid.end(); PyramidContainer::iterator outCurr = m_pyramid.begin(); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/pyramid.h luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/pyramid.h --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk06/pyramid.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk06/pyramid.h 2017-05-10 19:14:06.000000000 +0000 @@ -62,13 +62,13 @@ return *this; } - + inline XYGradient& operator*=(const XYGradient& multiplier) { m_Gx *= multiplier.m_Gx; m_Gy *= multiplier.m_Gy; - + return *this; } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/cqpminimizer.c luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/cqpminimizer.c --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/cqpminimizer.c 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/cqpminimizer.c 2017-05-10 19:14:06.000000000 +0000 @@ -230,19 +230,17 @@ /* f = 0.5*(x^t)Qx+(q^t)x */ double f; - int status; - gsl_vector * tmp = gsl_vector_alloc(minimizer->x->size); if(tmp == 0) { GSL_ERROR_VAL ("failed to initialize workspace", GSL_ENOMEM, 0); } - status = gsl_blas_dcopy(minimizer->cqp->q, tmp); + gsl_blas_dcopy(minimizer->cqp->q, tmp); - status = gsl_blas_dsymv(CblasUpper, 0.5, minimizer->cqp->Q, minimizer->x, 1.0, tmp); + gsl_blas_dsymv(CblasUpper, 0.5, minimizer->cqp->Q, minimizer->x, 1.0, tmp); - status = gsl_blas_ddot(minimizer->x, tmp, &f); + gsl_blas_ddot(minimizer->x, tmp, &f); gsl_vector_free(tmp); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/gsl_cqp.h luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/gsl_cqp.h --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/gsl_cqp.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/gsl_cqp.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** * @brief Convex Quadratic Programming library * - * From: + * From: * http://ra.uni-trier.de/~huebner/software.html * - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -18,8 +18,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Ewgenij Hübner * * $$ @@ -45,50 +45,50 @@ typedef struct { - /* objective function: 0.5*(x^t)Qx+(q^t)x */ - gsl_matrix * Q; - gsl_vector * q; - - /* constraints: Ax=b; Cx>=d */ - const gsl_matrix * A; - const gsl_vector * b; - gsl_matrix * C; - gsl_vector * d; + /* objective function: 0.5*(x^t)Qx+(q^t)x */ + gsl_matrix * Q; + gsl_vector * q; + + /* constraints: Ax=b; Cx>=d */ + const gsl_matrix * A; + const gsl_vector * b; + gsl_matrix * C; + gsl_vector * d; } gsl_cqp_data; typedef struct { - const char *name; - size_t size; - int (*alloc) (void *state, size_t n, size_t me, size_t mi); - int (*set) (void *state, const gsl_cqp_data *cqp, gsl_vector *x, gsl_vector *y, gsl_vector *z, + const char *name; + size_t size; + int (*alloc) (void *state, size_t n, size_t me, size_t mi); + int (*set) (void *state, const gsl_cqp_data *cqp, gsl_vector *x, gsl_vector *y, gsl_vector *z, double *gap, double *residuals_norm, double *data_norm, double *inf_barrier, double *inf_barrier_min); - int (*iterate) (void *state, const gsl_cqp_data * cqp, gsl_vector *x, gsl_vector *y, gsl_vector *z, + int (*iterate) (void *state, const gsl_cqp_data * cqp, gsl_vector *x, gsl_vector *y, gsl_vector *z, double *gap, double *residuals_norm, double *inf_barrier, double *inf_barrier_min); - - /* int (*restart) (void *state); */ - void (*free) (void *state); + + /* int (*restart) (void *state); */ + void (*free) (void *state); } gsl_cqpminimizer_type; typedef struct { - const gsl_cqpminimizer_type * type; - - gsl_cqp_data * cqp; - gsl_vector * x; - /* Lagrange-multipliers */ - gsl_vector * y; /*corresponding to Ax=b */ - gsl_vector * z; /*corresponding to CX>=d */ - - double gap; - double residuals_norm; - double data_norm; - double quantity_of_infeasibility; - double quantity_of_infeasibility_min; - - void *state; + const gsl_cqpminimizer_type * type; + + gsl_cqp_data * cqp; + gsl_vector * x; + /* Lagrange-multipliers */ + gsl_vector * y; /*corresponding to Ax=b */ + gsl_vector * z; /*corresponding to CX>=d */ + + double gap; + double residuals_norm; + double data_norm; + double quantity_of_infeasibility; + double quantity_of_infeasibility_min; + + void *state; } gsl_cqpminimizer; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/initial_point.c luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/initial_point.c --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/initial_point.c 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/initial_point.c 2017-05-10 19:14:06.000000000 +0000 @@ -34,7 +34,7 @@ int pdip_initial_point_feasible_x(const gsl_matrix *A, const gsl_vector *b, gsl_vector *x) { - int status, signum; + int signum; /* x = A^t*(AA^t)^{-1}*b */ @@ -64,19 +64,19 @@ } - /* status = gsl_blas_dsyrk(CblasUpper, CblasNoTrans, 1.0, cqp->A, 0.0, AA_t); */ - status = gsl_blas_dgemm(CblasNoTrans, CblasTrans, 1.0, A, A, 0.0, AA_t); + /* status = gsl_blas_dsyrk(CblasUpper, CblasNoTrans, 1.0, cqp->A, 0.0, AA_t); */ + gsl_blas_dgemm(CblasNoTrans, CblasTrans, 1.0, A, A, 0.0, AA_t); /* (AA^t)tmp=b */ - status = gsl_linalg_LU_decomp(AA_t, p, &signum); - status = gsl_linalg_LU_solve(AA_t, p, b, tmp); + gsl_linalg_LU_decomp(AA_t, p, &signum); + gsl_linalg_LU_solve(AA_t, p, b, tmp); /* - status = gsl_blas_dtrsv(CblasUpper, CblasNoTrans, CblasNonUnit, AA_t, tmp); tmp=(AA^t)^{-1}tmp */ + gsl_blas_dtrsv(CblasUpper, CblasNoTrans, CblasNonUnit, AA_t, tmp); tmp=(AA^t)^{-1}tmp */ - status = gsl_blas_dgemv(CblasTrans, 1.0, A, tmp, 0.0, x); + gsl_blas_dgemv(CblasTrans, 1.0, A, tmp, 0.0, x); gsl_matrix_free(AA_t); gsl_vector_free(tmp); @@ -89,13 +89,11 @@ int pdip_initial_point_feasible_s(const gsl_matrix * C, const gsl_vector *d, const gsl_vector *x, gsl_vector *s) { - int status; - /* s=Cx-d */ - status = gsl_blas_dcopy(d, s); + gsl_blas_dcopy(d, s); - status = gsl_blas_dgemv(CblasNoTrans, 1.0, C, x, -1.0, s); + gsl_blas_dgemv(CblasNoTrans, 1.0, C, x, -1.0, s); return GSL_SUCCESS; } @@ -104,7 +102,7 @@ int pdip_initial_point_y(const gsl_matrix *Q, const gsl_vector *q, const gsl_matrix *A, const gsl_vector *x, gsl_vector *y) { - int status, signum; + int signum; /* y=(AA^t)^{-1}(A(Qx+q)) */ @@ -133,11 +131,11 @@ GSL_ERROR_VAL ("failed to initialize space for finding initial point", GSL_ENOMEM, 0); } - status = gsl_blas_dcopy(q, tmp); - status = gsl_blas_dsymv(CblasUpper, 1.0, Q, x, 1.0, tmp); - status = gsl_blas_dgemv(CblasNoTrans, 1.0, A, tmp, 0.0, y); + gsl_blas_dcopy(q, tmp); + gsl_blas_dsymv(CblasUpper, 1.0, Q, x, 1.0, tmp); + gsl_blas_dgemv(CblasNoTrans, 1.0, A, tmp, 0.0, y); - /* status = gsl_blas_dsyrk(CblasUpper, CblasNoTrans, 1.0, cqp->A, 0.0, AA_t); */ + /* gsl_blas_dsyrk(CblasUpper, CblasNoTrans, 1.0, cqp->A, 0.0, AA_t); */ gsl_vector_free(tmp); tmp = gsl_vector_alloc(y->size); @@ -148,15 +146,15 @@ GSL_ERROR_VAL ("failed to initialize space for finding initial point", GSL_ENOMEM, 0); } - status = gsl_blas_dcopy(y, tmp); + gsl_blas_dcopy(y, tmp); - status = gsl_blas_dgemm(CblasNoTrans, CblasTrans, 1.0, A, A, 0.0, AA_t); + gsl_blas_dgemm(CblasNoTrans, CblasTrans, 1.0, A, A, 0.0, AA_t); - status = gsl_linalg_LU_decomp(AA_t, p, &signum); - status = gsl_linalg_LU_solve(AA_t, p, tmp, y); + gsl_linalg_LU_decomp(AA_t, p, &signum); + gsl_linalg_LU_solve(AA_t, p, tmp, y); - /* status = gsl_blas_dtrsv(CblasUpper, CblasNoTrans, CblasNonUnit, AA_t, y); */ + /* gsl_blas_dtrsv(CblasUpper, CblasNoTrans, CblasNonUnit, AA_t, y); */ gsl_matrix_free(AA_t); gsl_vector_free(tmp); @@ -183,7 +181,7 @@ size_t i; - int status; + //int status; delta_x = GSL_MAX_DBL(-1.5*gsl_vector_min(x),0.0); delta_s = GSL_MAX_DBL(-1.5*gsl_vector_min(s),0.0); @@ -191,10 +189,11 @@ if(delta_x < rg && delta_s < rg) { - status = gsl_blas_ddot(x, s, &tmp); + //status = gsl_blas_ddot(x, s, &tmp); + gsl_blas_ddot(x, s, &tmp); if(tmp < rg) /* the initial point is optimal */ - return GSL_SUCCESS; + return GSL_SUCCESS; } @@ -212,8 +211,10 @@ delta_x += 0.5*xs/sum_s; delta_s += 0.5*xs/sum_x; - status = gsl_vector_add_constant(x, delta_x); - status = gsl_vector_add_constant(s, delta_s); + //status = gsl_vector_add_constant(x, delta_x); + //status = gsl_vector_add_constant(s, delta_s); + gsl_vector_add_constant(x, delta_x); + gsl_vector_add_constant(s, delta_s); return GSL_SUCCESS; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/initial_point.h luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/initial_point.h --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/initial_point.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/initial_point.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** * @brief Convex Quadratic Programming library * - * From: + * From: * http://ra.uni-trier.de/~huebner/software.html * - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -18,8 +18,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Ewgenij Hübner * * $$ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/mg_pdip.c luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/mg_pdip.c --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/cqp/mg_pdip.c 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/cqp/mg_pdip.c 2017-05-10 19:14:06.000000000 +0000 @@ -118,7 +118,7 @@ double *gap, double *residuals_norm, double *data_norm, double *infeasibility, double *infeasibility_min) { int status = GSL_SUCCESS; - size_t i, j = 0; //, debug=0; + //size_t i, j = 0; //, debug=0; mg_pdip_state *state = (mg_pdip_state *) vstate; @@ -129,32 +129,47 @@ gsl_vector_set_zero(x); if (status != GSL_SUCCESS) + { return status; + } status = pdip_initial_point_feasible_s(cqp->C, cqp->d, x, state->s); if (status != GSL_SUCCESS) + { return status; + } if( cqp->A->size1 != 0 ) + { status = pdip_initial_point_y(cqp->Q, cqp->q, cqp->A, x, y); + } + status = pdip_initial_point_z(z); if (status != GSL_SUCCESS) + { return status; + } status = pdip_initial_point_strict_feasible(z, state->s); if (status != GSL_SUCCESS) + { return status; + } /* Dualtity gap */ status = gsl_blas_ddot(z, state->s, gap); if (status != GSL_SUCCESS) + { return status; + } *gap /= (double) cqp->C->size1; status = build_kkt_matrix(cqp, z, state->s, state->kkt_matrix); if (status != GSL_SUCCESS) + { return status; + } state->tau = 3.0; @@ -163,14 +178,18 @@ *data_norm = gsl_matrix_max_norm(cqp->Q); if( cqp->A->size1 != 0 ) + { *data_norm = GSL_MAX_DBL(*data_norm, gsl_matrix_max_norm(cqp->A)); + } *data_norm = GSL_MAX_DBL(*data_norm, gsl_matrix_max_norm(cqp->C)); *data_norm = GSL_MAX_DBL(*data_norm, gsl_vector_max_norm(cqp->q)); if( cqp->A->size1 != 0 ) + { *data_norm = GSL_MAX_DBL(*data_norm, gsl_vector_max_norm(cqp->b)); + } *data_norm = GSL_MAX_DBL(*data_norm, gsl_vector_max_norm(cqp->d)); @@ -215,7 +234,7 @@ double *gap, double *residuals_norm, double *infeasibility, double *infeasibility_min) { size_t i, j = 0; //, debug=0; - int status, signum; + int signum; double sigma, alpha, alpha_gondzio; double tmp_v, tmp_vt, tmp_d; @@ -291,14 +310,14 @@ /********* Predictor Step ******************/ /* in the predictor step: r_zs = ZSe */ r_block = gsl_vector_subvector(state->r, cqp->Q->size1+cqp->A->size1, cqp->C->size1); - status = gsl_blas_daxpy(1.0, state->s, &r_block.vector); + gsl_blas_daxpy(1.0, state->s, &r_block.vector); gsl_blas_dscal(-1.0, state->r); /* solve the KKT-system: */ /* evaluate the LU-decomposition of the KKT-matrix*/ - status = gsl_linalg_LU_decomp(state->kkt_matrix, p, &signum); + gsl_linalg_LU_decomp(state->kkt_matrix, p, &signum); /* find the predictor step */ - status = gsl_linalg_LU_solve(state->kkt_matrix, p, state->r, delta); + gsl_linalg_LU_solve(state->kkt_matrix, p, state->r, delta); for(i=0; isize; i++) { @@ -361,7 +380,7 @@ } /* find the corrector step */ - status = gsl_linalg_LU_solve(state->kkt_matrix, p, state->r, delta); + gsl_linalg_LU_solve(state->kkt_matrix, p, state->r, delta); for(i=0; isize; i++) @@ -411,7 +430,7 @@ gsl_vector_set(&r_block.vector, j, gsl_vector_get(&r_block.vector,j)+(tmp_vt-tmp_v)/gsl_vector_get(z,j)); } - status = gsl_linalg_LU_solve(state->kkt_matrix, p, state->r, delta_gondzio); + gsl_linalg_LU_solve(state->kkt_matrix, p, state->r, delta_gondzio); for(j=0; jsize; j++) { gsl_vector_set(delta_s_gondzio, j, (-gsl_vector_get(r_zs,j)+gsl_vector_get(delta_gondzio,cqp->Q->size2+cqp->A->size1+j) @@ -426,8 +445,8 @@ { i++; alpha = alpha_gondzio; - status = gsl_blas_dcopy(delta_gondzio, delta); - status = gsl_blas_dcopy(delta_s_gondzio, delta_s); + gsl_blas_dcopy(delta_gondzio, delta); + gsl_blas_dcopy(delta_s_gondzio, delta_s); } else break; @@ -440,31 +459,31 @@ /* Update */ /* x^k = x^k + alpha*delta_x */ delta_block = gsl_vector_subvector(delta, 0, cqp->Q->size1); - status = gsl_blas_daxpy(alpha, &delta_block.vector, x); + gsl_blas_daxpy(alpha, &delta_block.vector, x); /* y^k = y^k - alpha*(-delta_y) */ if( y != 0 ) { delta_block = gsl_vector_subvector(delta, cqp->Q->size1, cqp->A->size1); - status = gsl_blas_daxpy(-alpha, &delta_block.vector, y); + gsl_blas_daxpy(-alpha, &delta_block.vector, y); } /* z^k = z^k - alpha*(-delta_z) */ delta_block = gsl_vector_subvector(delta, cqp->Q->size1+cqp->A->size1, cqp->C->size1); - status = gsl_blas_daxpy(-alpha, &delta_block.vector, z); + gsl_blas_daxpy(-alpha, &delta_block.vector, z); /* s^k = s^k + alpha*(delta_s) */ - status = gsl_blas_daxpy(alpha, delta_s, state->s); + gsl_blas_daxpy(alpha, delta_s, state->s); /* duality gap */ - status = gsl_blas_ddot(z, state->s, gap); + gsl_blas_ddot(z, state->s, gap); *gap /= cqp->C->size1; /* data for the next iteration */ - status = compute_residuals(cqp, x, y, z, state->s, state->r); + compute_residuals(cqp, x, y, z, state->s, state->r); *residuals_norm = gsl_vector_max_norm(state->r); - status = build_kkt_matrix(cqp, z, state->s, state->kkt_matrix); + build_kkt_matrix(cqp, z, state->s, state->kkt_matrix); /* for the infeasibility test */ *infeasibility = (*residuals_norm+compute_gap_infeasible_points(cqp, x, y, z))/(state->data_norm); @@ -517,32 +536,33 @@ gsl_vector *r) { - int status; gsl_vector_view r_block; /*gsl_cqp_geconstraints * constraints = (gsl_cqp_geconstraints *) cqp->constraints;*/ /* r_Q=Qx+q-A^ty-C^tz */ r_block = gsl_vector_subvector(r, 0, cqp->Q->size1); - status = gsl_blas_dcopy(cqp->q, &r_block.vector); - status = gsl_blas_dsymv(CblasUpper, 1.0, cqp->Q, x, 1.0, &r_block.vector); - /*status = gsl_blas_dgemv(CblasNoTrans, 1.0, cqp->Q, x, 1.0, r_Q);*/ - if( cqp->A->size1 != 0 ) - status = gsl_blas_dgemv(CblasTrans, -1.0, cqp->A, y, 1.0, &r_block.vector); - status = gsl_blas_dgemv(CblasTrans, -1.0, cqp->C, z, 1.0, &r_block.vector); + gsl_blas_dcopy(cqp->q, &r_block.vector); + gsl_blas_dsymv(CblasUpper, 1.0, cqp->Q, x, 1.0, &r_block.vector); + /*gsl_blas_dgemv(CblasNoTrans, 1.0, cqp->Q, x, 1.0, r_Q);*/ + if( cqp->A->size1 != 0 ) + { + gsl_blas_dgemv(CblasTrans, -1.0, cqp->A, y, 1.0, &r_block.vector); + } + gsl_blas_dgemv(CblasTrans, -1.0, cqp->C, z, 1.0, &r_block.vector); /* r_A=Ax-b */ - if( cqp->A->size1 != 0 ) { - r_block = gsl_vector_subvector(r, cqp->Q->size1, cqp->A->size1); - status = gsl_blas_dcopy(cqp->b, &r_block.vector); - status = gsl_blas_dgemv(CblasNoTrans, 1.0, cqp->A, x, -1.0, &r_block.vector); - } + if( cqp->A->size1 != 0 ) { + r_block = gsl_vector_subvector(r, cqp->Q->size1, cqp->A->size1); + gsl_blas_dcopy(cqp->b, &r_block.vector); + gsl_blas_dgemv(CblasNoTrans, 1.0, cqp->A, x, -1.0, &r_block.vector); + } /* r_C=Cx-s-d */ r_block = gsl_vector_subvector(r, cqp->Q->size1+cqp->A->size1, cqp->C->size1); - status = gsl_blas_dcopy(s, &r_block.vector); - status = gsl_blas_daxpy(1.0, cqp->d, &r_block.vector); - status = gsl_blas_dgemv(CblasNoTrans, 1.0, cqp->C, x, -1.0, &r_block.vector); + gsl_blas_dcopy(s, &r_block.vector); + gsl_blas_daxpy(1.0, cqp->d, &r_block.vector); + gsl_blas_dgemv(CblasNoTrans, 1.0, cqp->C, x, -1.0, &r_block.vector); return GSL_SUCCESS; } @@ -552,8 +572,6 @@ { size_t i; - int status; - gsl_matrix_view kkt_block; @@ -566,27 +584,27 @@ */ /* 1. Block */ kkt_block = gsl_matrix_submatrix(kkt_matrix, 0, 0, cqp->Q->size1, cqp->Q->size2); - status = gsl_matrix_memcpy(&kkt_block.matrix, cqp->Q); + gsl_matrix_memcpy(&kkt_block.matrix, cqp->Q); /* 2. Block */ if( cqp->A->size1 != 0 ) { kkt_block = gsl_matrix_submatrix(kkt_matrix, 0, cqp->Q->size2, cqp->A->size2, cqp->A->size1); - status = gsl_matrix_transpose_memcpy(&kkt_block.matrix, cqp->A); + gsl_matrix_transpose_memcpy(&kkt_block.matrix, cqp->A); } /* 3. Block */ kkt_block = gsl_matrix_submatrix(kkt_matrix, 0, cqp->Q->size2+cqp->A->size1, cqp->C->size2, cqp->C->size1); - status = gsl_matrix_transpose_memcpy(&kkt_block.matrix, cqp->C); + gsl_matrix_transpose_memcpy(&kkt_block.matrix, cqp->C); /* 4. Block */ if( cqp->A->size1 != 0 ) { kkt_block = gsl_matrix_submatrix(kkt_matrix, cqp->Q->size1, 0, cqp->A->size1, cqp->A->size2); - status = gsl_matrix_memcpy(&kkt_block.matrix, cqp->A); + gsl_matrix_memcpy(&kkt_block.matrix, cqp->A); } /* 5. Block */ kkt_block = gsl_matrix_submatrix(kkt_matrix, cqp->Q->size1+cqp->A->size1, 0, cqp->C->size1, cqp->C->size2); - status = gsl_matrix_memcpy(&kkt_block.matrix, cqp->C); + gsl_matrix_memcpy(&kkt_block.matrix, cqp->C); /* Null Block */ kkt_block = gsl_matrix_submatrix(kkt_matrix, cqp->Q->size1, cqp->Q->size2, cqp->A->size1+cqp->C->size1, cqp->A->size1+cqp->C->size1); @@ -627,20 +645,19 @@ compute_gap_infeasible_points(const gsl_cqp_data *cqp, const gsl_vector *x, const gsl_vector *y, const gsl_vector *z) { double g, tmp_d; - int status; gsl_vector * tmp_v = gsl_vector_alloc(cqp->q->size); - status = gsl_blas_dcopy(cqp->q, tmp_v); - status = gsl_blas_dsymv(CblasUpper, 1.0, cqp->Q, x, 1.0, tmp_v); - status = gsl_blas_ddot(x, tmp_v, &g); + gsl_blas_dcopy(cqp->q, tmp_v); + gsl_blas_dsymv(CblasUpper, 1.0, cqp->Q, x, 1.0, tmp_v); + gsl_blas_ddot(x, tmp_v, &g); if( cqp->A->size1 != 0 ) { - status = gsl_blas_ddot(cqp->b, y, &tmp_d); + gsl_blas_ddot(cqp->b, y, &tmp_d); g -= tmp_d; } - status = gsl_blas_ddot(cqp->d, z, &tmp_d); + gsl_blas_ddot(cqp->d, z, &tmp_d); g -= tmp_d; gsl_vector_free(tmp_v); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -8,7 +8,7 @@ * http://www.mpi-inf.mpg.de/resources/hdr/datmo/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: display_adaptive_tmo.cpp,v 1.19 2009/02/23 18:46:36 rafm Exp $ @@ -110,7 +110,7 @@ // =============== Tone-curve filtering ============== datmoToneCurve::datmoToneCurve() : own_y_i( false ), x_i( NULL ), y_i( NULL ) -{ +{ } datmoToneCurve::~datmoToneCurve() @@ -121,7 +121,7 @@ void datmoToneCurve::init( size_t n_size, const double *n_x_i, double *n_y_i ) { free(); - + size = n_size; x_i = n_x_i; if( n_y_i == NULL ) { @@ -129,7 +129,7 @@ own_y_i = true; } else { y_i = n_y_i; - own_y_i = false; + own_y_i = false; } } @@ -180,19 +180,19 @@ return min_val; } - + static void mult_rows( const gsl_matrix *A, const gsl_vector *b, gsl_matrix *C ) { assert( A->size1 == b->size ); for( size_t j=0; j < A->size2; j++ ) - for( size_t i=0; i < A->size1; i++ ) - gsl_matrix_set( C, i, j, gsl_matrix_get(A,i,j)*gsl_vector_get(b,i) ); + for( size_t i=0; i < A->size1; i++ ) + gsl_matrix_set( C, i, j, gsl_matrix_get(A,i,j)*gsl_vector_get(b,i) ); } /** * Lookup table on a uniform array & interpolation * - * x_i must be at least two elements + * x_i must be at least two elements * y_i must be initialized after creating an object */ class UniformArrayLUT @@ -233,7 +233,7 @@ this->y_i = new double[lut_size]; own_y_i = true; memcpy(this->y_i, other.y_i, lut_size * sizeof(double)); - + return *this; } @@ -253,13 +253,13 @@ return y_i[0]; if( unlikely(ind_hi >= lut_size) ) return y_i[lut_size-1]; - + if( unlikely(ind_low == ind_hi) ) return y_i[ind_low]; // No interpolation necessary return y_i[ind_low] + (y_i[ind_hi]-y_i[ind_low])*(ind_f-(double)ind_low); // Interpolation } - + }; #ifdef DEBUG @@ -276,7 +276,7 @@ for( int x = 0; x < width; x++ ) { fwrite( &data[x+y*width], sizeof( float ), 1, fh ); } - + fclose( fh ); } #endif @@ -321,9 +321,9 @@ sum += in_raw[r*width+l] * kernel[j]; } temp_raw[r*width+c] = sum; - } + } } - + // Filter columns #pragma omp parallel for default(none) shared(temp_raw, out_raw, kernel) for( int c=0; c < width; c++ ) { @@ -338,21 +338,21 @@ sum += temp_raw[l*width+c] * kernel[j]; } out_raw[r*width+c] = sum; - } - } + } + } } static inline float clamp_channel( const float v ) { - return (v > MIN_PHVAL ? v : MIN_PHVAL); + return (v > MIN_PHVAL ? v : MIN_PHVAL); } - + /** Compute conditional probability density function */ // round_int( (l_max-l_min)/delta ) + 1; -#define X_COUNT (round_int((8.f+8.f)/0.1) + 1) +#define X_COUNT (round_int((8.f+8.f)/0.1) + 1) class conditional_density: public datmoConditionalDensity { @@ -361,7 +361,7 @@ static double x_scale[X_COUNT]; // input log luminance scale double *g_scale; // contrast scale double *f_scale; // frequency scale - + const double g_max; double total; @@ -376,7 +376,7 @@ x_count = X_COUNT; g_count = round_int(g_max/delta)*2 + 1; - + // Find freq. band < 3 cyc per deg int f; for( f=0; f<8; f++ ) { @@ -400,11 +400,11 @@ for( int i=0; i= 0) && (x + g*x_count + f*x_count*g_count < x_count*g_count*f_count) ); return C[x + g*x_count + f*x_count*g_count]; } - + }; datmoConditionalDensity::~datmoConditionalDensity() @@ -435,19 +435,19 @@ pfs::Array2Df buf_1(width, height); pfs::Array2Df buf_2(width, height); pfs::Array2Df temp(width, height); - + std::unique_ptr C(new conditional_density()); const float thr = 0.0043f; // Approx. discrimination threshold in log10 const int pix_count = width*height; - + pfs::Array2Df* LP_low = &buf_1; pfs::Array2Df* LP_high = &buf_2; float* LP_high_raw = LP_high->data(); - + const float min_val = std::max( min_positive( L, pix_count ), MIN_PHVAL ); - + // Compute log10 of an image #pragma omp parallel for default(none) shared(LP_high_raw, L) #ifndef LUMINANCE_USE_SSE @@ -460,21 +460,21 @@ for( int i=pix_count-3; i < pix_count; i++ ) LP_high_raw[i] = safe_log10( L[i], min_val ); #endif - + bool warn_out_of_range = false; C->total = 0; - + for( int f=0; ff_count; f++ ) { - + compute_gaussian_level( width, height, *LP_high, *LP_low, f, temp ); // For debug purposes only -#ifdef DEBUG +#ifdef DEBUG char fname[20]; sprintf( fname, "l_%d.pfs", f+1 ); dumpPFS( fname, width, height, LP_low, "Y" ); -#endif - +#endif + const int gi_tp = C->g_count/2+1; const int gi_tn = C->g_count/2-1; const int gi_t = C->g_count/2; @@ -491,17 +491,17 @@ int g_i = round_int( (g + C->g_max) / C->delta ); if( unlikely(g_i < 0 || g_i >= C->g_count) ) continue; - + if( g > thr && g < C->delta/2 ) { - // above the threshold + + // above the threshold + (*C)(x_i,gi_tp,f)++; } else if( g < -thr && g > -C->delta/2 ) { // above the threshold - - (*C)(x_i,gi_tn,f)++; - } else (*C)(x_i,g_i,f)++; + (*C)(x_i,gi_tn,f)++; + } else (*C)(x_i,g_i,f)++; } - for( int i = 0; i < C->x_count; i++ ) { + for( int i = 0; i < C->x_count; i++ ) { // Special case: flat field and no gradients if( (*C)(i,gi_t,f) == 0 ) continue; @@ -526,7 +526,7 @@ ph.setValue( (f+1)*PROGRESS_CDF/C->f_count ); if (ph.canceled()) - break; + break; } if( warn_out_of_range ) @@ -539,17 +539,17 @@ // for( int i=0; i<(C->x_count*C->g_count*C->f_count); i++ ) { // fprintf( fh, "%g\n", C->C[i] ); // } -// fclose( fh ); +// fclose( fh ); - return std::move(C); + return std::move(C); } - + // =============== Quadratic programming solver ============== -const static gsl_matrix null_matrix = {0,0,0,0,0,0}; -const static gsl_vector null_vector = {0,0,0,0,0}; +const static gsl_matrix null_matrix = {0,0,0,0,0,0}; +const static gsl_vector null_vector = {0,0,0,0,0}; /* objective function: 0.5*(x^t)Qx+(q^t)x */ /* constraints: Cx>=d */ @@ -558,50 +558,50 @@ { gsl_cqp_data cqpd; - + cqpd.Q = Q; cqpd.q = q; // Do not use any equality constraints (Ax=b) - + // Unfortunatelly GSL does not allow for 0-size vectors and matrices // As a work-around we create a phony gsl_matrix that has 0-size. // This matrix must not be passed to any gsl function! - + cqpd.A = &null_matrix; cqpd.b = &null_vector; - + cqpd.C = C; cqpd.d = d; size_t n = cqpd.Q->size1; size_t me = cqpd.b->size; - size_t mi = cqpd.d->size; - + size_t mi = cqpd.d->size; + const size_t max_iter = 100; - + size_t iter=1; - + int status; - + const gsl_cqpminimizer_type * T; - + T = gsl_cqpminimizer_mg_pdip; auto_cqpminimizer s(gsl_cqpminimizer_alloc(T, n, me, mi)); - + status = gsl_cqpminimizer_set(s, &cqpd); - + const bool verbose = false; if( verbose ) fprintf( stderr, "== Itn ======= f ======== ||gap|| ==== ||residual||\n\n"); - + do - { + { status = gsl_cqpminimizer_iterate(s); status = gsl_cqpminimizer_test_convergence(s, 1e-10, 1e-10); - + if( verbose ) fprintf( stderr, "%4lu %14.8f %13.6e %13.6e\n", iter, gsl_cqpminimizer_f(s), gsl_cqpminimizer_gap(s), gsl_cqpminimizer_residuals_norm(s)); - + if(status == GSL_SUCCESS) { size_t j; @@ -611,23 +611,23 @@ fprintf( stderr, "%9.6f ",gsl_vector_get(gsl_cqpminimizer_x(s), j)); fprintf( stderr, "\n\n"); } - - + + // printf("\nLagrange-multipliers for Ax=b\n"); // for(j=0; jsize; j++) // printf("%9.6f ",gsl_vector_get(gsl_cqpminimizer_lm_eq(s), j)); // printf("\n\n"); - + // printf("\nLagrange-multipliers for Cx>=d\n"); // for(j=0; jsize; j++) // printf("%9.6f ",gsl_vector_get(gsl_cqpminimizer_lm_ineq(s), j)); // printf("\n\n"); - } + } else { iter++; - } - + } + } while(status == GSL_CONTINUE && iter<=max_iter); @@ -638,11 +638,11 @@ if( gsl_cqp_minimizer_test_infeasibility( s, 1e-10 ) != GSL_SUCCESS ) valid_solution = false; } - + if( valid_solution ) gsl_vector_memcpy( x, gsl_cqpminimizer_x(s) ); - + return GSL_SUCCESS; } @@ -651,7 +651,7 @@ // =============== HVS functions ============== static double contrast_transducer( double C, double sensitivity, datmoVisualModel visual_model ) -{ +{ if( visual_model & vm_contrast_masking ) { const double W = pow( 10, fabs(C) ) - 1.; @@ -669,11 +669,11 @@ /** * Contrast Sensitivity Function from Daly's VDP paper - * + * * @param rho spatial frequency in cycles per degree * @param theta spatial angle in radians * @param l_adapt luminance of adaptation - * @param img_size image size given in visual degrees^2 + * @param img_size image size given in visual degrees^2 * @param viewing_dist viewing distance in meters (default = 0.5m) * @return sensitivity */ @@ -681,10 +681,10 @@ { if( rho == 0 ) return 0; // To avoid singularity - + // Sensitivity calibration constant (from Daly's paper: 250) const double P = 250.f; - + const double eps = 0.9; const double i_pow2 = im_size; const double l = l_adapt; @@ -695,7 +695,7 @@ const double e = 0.0; // eccentricity in visual degrees const double r_e = 1.0 / (1.0 + 0.24 * e); const double r_a_r_e = r_a * r_e; - + double S1, S2; double B1 = B*eps*rho; @@ -705,13 +705,13 @@ const double ob=0.78; const double r_theta = (1-ob)/2 * cosf(4.0 * theta) + (1+ob)/2; rho = rho / (r_a_r_e * r_theta); - + B1 = B*eps*rho; S2 = powf(pow(3.23 * pow(rho*rho * i_pow2, -0.3), 5.0) + 1.0, -0.2)* A*eps*rho * exp(-B1) * sqrt(1 + 0.06*exp(B1)); - + return (S1 > S2 ? S2 : S1) * P; -} +} static double csf_datmo( double rho, double l_adapt, datmoVisualModel visual_model ) { @@ -742,17 +742,17 @@ // Check how many nodes spans this d_i int j; for ( j = i+1; j < (x_count-1) && skip_lut[j] == -1; j++ ) {}; - + if( j == (x_count-1) ) { // The last node dy = 0; y[i] = cy; cy += gsl_vector_get( x, skip_lut[i] ); continue; - } else + } else dy = gsl_vector_get( x, skip_lut[i] ) / (double)(j-i); } y[i] = cy; - cy += dy; + cy += dy; } y[x_count-1] = cy; @@ -769,9 +769,9 @@ */ static int optimize_tonecurve( datmoConditionalDensity *C_pub, DisplayFunction *dm, DisplaySize */*ds*/, float enh_factor, double *y, const float white_y, datmoVisualModel visual_model, double scene_l_adapt, pfs::Progress &ph ) { - + conditional_density *C = (conditional_density*)C_pub; - + double d_dr = log10( dm->display( 1.f )/dm->display( 0.f ) ); // display dynamic range // Create LUTs for CSF to speed up computations @@ -782,9 +782,9 @@ //csf_lut[f].y_i[i] = csf_daly( C->f_scale[f], 0, pow( 10., C->x_scale[i] ), 1 ); csf_lut[f].y_i[i] = csf_datmo( C->f_scale[f], pow( 10., C->x_scale[i] ), visual_model ); // In pfstmo 2.0.5 } - + const int max_neigh = (C->g_count-1)/2; - + // count number of needed equations and remove not used variables // Create a structure of disconnected frameworks, which can be connected later int k = 0; @@ -793,7 +793,7 @@ memset( &used_var[0], 0, sizeof( used_var[0] )*(C->x_count-1) ); int minmax_i[2] = { C->x_count-1, 0 }; - + for( int f=0; f < C->f_count; f++ ) for( int i=0; i < C->x_count; i++ ) for( int j = std::max(0,i-max_neigh); j < std::min(C->x_count-1,i+max_neigh); j++ ) { @@ -824,14 +824,14 @@ minmax_i[0] = std::min( minmax_i[0], white_i ); minmax_i[1] = std::max( minmax_i[1], white_i ); } - + // Create skip lookup table (to remove selected columns that contain all zeros) int i = 0; int fwrk = 0; // Number if missing contrast ranges for( int l = 0; l < C->x_count-1; l++ ) { if( l < minmax_i[0] || l > minmax_i[1] ) { skip_lut[l] = -1; - continue; + continue; } if( !used_var[l] ) { if( l>0 && !used_var[l-1] ) { @@ -839,10 +839,10 @@ continue; } fwrk++; - } + } skip_lut[l] = i++; } - + const int M = k+fwrk; // number of equations const int L = i; // Number of non-zero d_i variables @@ -851,7 +851,7 @@ // sum of intervals must be equal displayable dynamic range // Ale = [eye(interval_count); -ones(1,interval_count)]; - + auto_matrix Ale(gsl_matrix_calloc(L+1, L)); gsl_matrix_set_identity( Ale ); gsl_matrix_view lower_row = gsl_matrix_submatrix( Ale, L, 0, 1, L ); @@ -859,15 +859,15 @@ // ble = [zeros(interval_count,1); -d_dr]; auto_vector ble(gsl_vector_calloc(L+1)); - gsl_vector_set( ble, L, -d_dr ); - + gsl_vector_set( ble, L, -d_dr ); + auto_matrix A(gsl_matrix_calloc(M, L)); auto_vector B(gsl_vector_alloc(M)); auto_vector N(gsl_vector_alloc(M)); std::vector band(M); // Frequency band (index) - std::vector back_x(M); // Background luminance (index) - + std::vector back_x(M); // Background luminance (index) + k = 0; for( int f=0; f < C->f_count; f++ ) { //const double sensitivity = csf_daly( C->f_scale[f], 0., 1000., 1. ); @@ -882,13 +882,13 @@ const int from = std::min(i,j); const int to = std::max(i,j); - + // A(k,min(i,j):(max(i,j)-1)) = 1; - for( int l = from; l <= to-1; l++ ) { + for( int l = from; l <= to-1; l++ ) { if( skip_lut[l] == -1 ) continue; gsl_matrix_set( A, k, skip_lut[l], 1 ); - } + } if( scene_l_adapt == -1 ) { sensitivity = csf_lut[f].interp( C->x_scale[from] ); @@ -902,22 +902,22 @@ band[k] = f; back_x[k] = i; - + k++; } } - + if( white_y > 0 ) { - for( int l = white_i; l < C->x_count-1; l++ ) { + for( int l = white_i; l < C->x_count-1; l++ ) { if( skip_lut[l] == -1 ) continue; gsl_matrix_set( A, k, skip_lut[l], 1 ); - } - gsl_vector_set( B, k, 0 ); + } + gsl_vector_set( B, k, 0 ); gsl_vector_set( N, k, C->total * 0.1 ); // Strength of reference white anchoring band[k] = 0; back_x[k] = white_i; - k++; + k++; } // Connect disconnected frameworks @@ -930,11 +930,11 @@ while( !used_var[to] ) to++; assert( k < M ); - for( int l = from; l <= to-1; l++ ) { + for( int l = from; l <= to-1; l++ ) { if( skip_lut[l] == -1 ) continue; gsl_matrix_set( A, k, skip_lut[l], 1 ); - } + } //const double sensitivity = csf_daly( C->f_scale[C->f_count-1], 0., 1000., 1. ); //gsl_vector_set( B, k, contrast_transducer( (C->x_scale[to] - C->x_scale[from])*enh_factor, sensitivity ) ); double sensitivity; @@ -951,21 +951,21 @@ back_x[k] = to; k++; i = to; - } + } } } auto_matrix H(gsl_matrix_alloc(L, L)); auto_vector f(gsl_vector_alloc(L)); auto_matrix NA(gsl_matrix_alloc(M, L)); - auto_matrix AK(gsl_matrix_alloc(M, L)); + auto_matrix AK(gsl_matrix_alloc(M, L)); auto_vector Ax(gsl_vector_alloc(M)); auto_vector K(gsl_vector_alloc(M)); auto_vector x(gsl_vector_alloc(L)); auto_vector x_old(gsl_vector_alloc(L)); gsl_vector_set_all( x, d_dr/L ); - + int max_iter = 200; if( !(visual_model & vm_contrast_masking) ) max_iter = 1; @@ -978,7 +978,7 @@ compute_y( y, x, &skip_lut[0], C->x_count, L, dm->display(0), dm->display(1) ); // Ax = A*x - gsl_blas_dgemv( CblasNoTrans, 1, A, x, 0, Ax ); + gsl_blas_dgemv( CblasNoTrans, 1, A, x, 0, Ax ); // T(rng{band}) = cont_transd( Ax(rng{band}), band, DD(rng{band},:)*y' ) ./ Axd(rng{band}); for( int k=0; k < M; k++ ){ @@ -990,19 +990,19 @@ } // AK = A*K; - mult_rows( A, K, AK ); - + mult_rows( A, K, AK ); + // NA = N*A; - mult_rows( AK, N, NA ); - + mult_rows( AK, N, NA ); + // H = AK'*NA; gsl_blas_dgemm( CblasTrans, CblasNoTrans, 1, AK, NA, 0, H ); - + // f = -B'*NA = - NA' * B; gsl_blas_dgemv( CblasTrans, -1, NA, B, 0, f ); gsl_vector_memcpy( x_old, x ); - + solve( H, f, Ale, ble, x ); /* @@ -1024,12 +1024,12 @@ } } if( converged ) - break; + break; } ph.setValue( 95 ); if (ph.canceled()) - return PFSTMO_ABORTED; // PFSTMO_OK is right - + return PFSTMO_ABORTED; // PFSTMO_OK is right + // for( int i=0; i < L; i++ ) // fprintf( stderr, "%9.6f ", gsl_vector_get( x, i ) ); // fprintf( stderr, "\n" ); @@ -1040,7 +1040,7 @@ } int datmo_compute_tone_curve( datmoToneCurve *tc, datmoConditionalDensity *cond_dens, - DisplayFunction *df, DisplaySize *ds, const float enh_factor, + DisplayFunction *df, DisplaySize *ds, const float enh_factor, const float white_y, datmoVisualModel visual_model, double scene_l_adapt, pfs::Progress &ph ) { conditional_density *c = (conditional_density*)cond_dens; @@ -1056,16 +1056,16 @@ int datmo_apply_tone_curve_cc( float *R_out, float *G_out, float *B_out, int width, int height, const float *R_in, const float *G_in, const float *B_in, const float *L_in, datmoToneCurve *tc, DisplayFunction *df, const float saturation_factor ) -{ +{ // Create LUT: log10( lum factor ) -> pixel value - UniformArrayLUT tc_lut( tc->size, tc->x_i ); + UniformArrayLUT tc_lut( tc->size, tc->x_i ); for( size_t i=0; i < tc->size; i++ ) { tc_lut.y_i[i] = (float)pow( 10, tc->y_i[i] ); // tc_lut.y_i[i] = df->inv_display( (float)pow( 10, tc->y_i[i] ) ); - } + } // Create LUT: log10( lum factor ) -> saturation correction (for the tone-level) - UniformArrayLUT cc_lut( tc->size, tc->x_i ); + UniformArrayLUT cc_lut( tc->size, tc->x_i ); for( size_t i=0; i < tc->size-1; i++ ) { //const float contrast = std::max( (tc->y_i[i+1]-tc->y_i[i])/(tc->x_i[i+1]-tc->x_i[i]), 0.d ); // In pfstmo 2.0.5 const float contrast = std::max( (float)(tc->y_i[i+1]-tc->y_i[i])/(float)(tc->x_i[i+1]-tc->x_i[i]), 0.0f ); // In pfstmo 2.0.5 @@ -1074,7 +1074,7 @@ cc_lut.y_i[i] = ( (1 + k1)*pow(contrast,k2) )/( 1 + k1*pow(contrast,k2) ) * saturation_factor; } cc_lut.y_i[tc->size-1] = 1; - + const long pix_count = width*height; #pragma omp parallel for default(none) shared(R_in,G_in,B_in,L_in,R_out,G_out,B_out,tc_lut,cc_lut,df) @@ -1101,7 +1101,7 @@ #endif } - return PFSTMO_OK; + return PFSTMO_OK; } // Pre-computed IIR filters - for different frame rates diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.h luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.h --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_adaptive_tmo.h 2017-05-10 19:14:06.000000000 +0000 @@ -8,7 +8,7 @@ * http://www.mpi-inf.mpg.de/resources/hdr/datmo/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: display_adaptive_tmo.h,v 1.12 2009/02/23 18:46:36 rafm Exp $ @@ -55,7 +55,7 @@ void init( size_t n_size, const double *n_x_i, double *n_y_i = NULL ); void free(); - + }; @@ -160,7 +160,7 @@ * function. If interactive tuning of the TMO parameters is needed, * this function can be executed once per image and then * datmo_compute_tone_curve() can be executed as many times as needed. - * + * * @param width image width in pixels * @param height image height in pixels * @param L input luminance map (L=0.212656*R + 0.715158*G + 0.072186*B) @@ -199,9 +199,9 @@ /** * Deprectaied: use datmo_apply_tone_curve_cc() - * + * * Tone-map image using the tone-curve computed with datmo_compute_tone_curve(). - * + * * @param R_out output red-channel (in pixel values). Can be the same * as R_in. * @param G_out output green-channel (in pixel values). Can be the same @@ -233,7 +233,7 @@ * Color Correction for Tone Mapping * Radosław Mantiuk, Rafał Mantiuk, Anna Tomaszewska, Wolfgang Heidrich. * In: Computer Graphics Forum (Proc. of EUROGRAPHICS'09), 28(2), 2009 - * + * * @param R_out output red-channel (in pixel values). Can be the same * as R_in. * @param G_out output green-channel (in pixel values). Can be the same diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_function.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_function.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_function.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_function.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -8,7 +8,7 @@ * http://www.mpi-inf.mpg.de/resources/hdr/datmo/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: display_function.cpp,v 1.3 2008/06/16 18:42:58 rafm Exp $ @@ -43,7 +43,7 @@ // ========== GGBA Display Function ============== -DisplayFunctionGGBA::DisplayFunctionGGBA( float gamma, float L_max, float L_black, float E_amb, float screen_refl ) +DisplayFunctionGGBA::DisplayFunctionGGBA( float gamma, float L_max, float L_black, float E_amb, float screen_refl ) { init( gamma, L_max, L_black, E_amb, screen_refl ); } @@ -141,7 +141,7 @@ if( L_buf <= 0 ) { fclose( fh ); - throw pfs::Exception( "Improper LUT: luminance must be greater than 0" ); + throw pfs::Exception( "Improper LUT: luminance must be greater than 0" ); } L_lut[i] = log10( L_buf ); pix_lut[i] = p_buf; @@ -149,14 +149,14 @@ if( i >= max_lut_size ) { fclose( fh ); - throw pfs::Exception( "LUT too large (more than 4096 entries)" ); + throw pfs::Exception( "LUT too large (more than 4096 entries)" ); } } lut_size = i; if( pix_lut[0] != 0 || pix_lut[lut_size-1]!= 1 ) { fclose( fh ); - throw pfs::Exception( "The first and last LUT entries for pixel value should be 0 and 1" ); + throw pfs::Exception( "The first and last LUT entries for pixel value should be 0 and 1" ); } fclose( fh ); } @@ -173,7 +173,7 @@ return lut_y[0]; if( x >= lut_x[lutSize-1] ) return lut_y[lutSize-1]; - + size_t l = 0, r = lutSize; while( true ) { size_t m = (l+r)/2; @@ -185,7 +185,7 @@ } return lut_y[l] + (lut_y[l+1]-lut_y[l])*(x-lut_x[l]); } - + float DisplayFunctionLUT::inv_display( float L ) { return bin_search_interp( log10( L ), L_lut, pix_lut, lut_size ); @@ -193,7 +193,7 @@ float DisplayFunctionLUT::display( float pix ) { - return pow( 10, bin_search_interp( pix, pix_lut, L_lut, lut_size ) ); + return pow( 10, bin_search_interp( pix, pix_lut, L_lut, lut_size ) ); } void DisplayFunctionLUT::print( FILE *fh ) @@ -207,7 +207,7 @@ DisplayFunction *createDisplayFunctionFromArgs( int &argc, char* argv[] ) { DisplayFunction *df = 0; - + for( int i=1 ; i * * $Id: display_function.h,v 1.3 2008/06/16 18:42:58 rafm Exp $ @@ -44,7 +44,7 @@ /** Convert input luminance (cd/m^2) to pixel value (0-1) */ virtual float inv_display( float L ) = 0; - + /** Convert pixel value (0-1) to input luminance (cd/m^2) */ virtual float display( float pix ) = 0; @@ -55,11 +55,11 @@ #endif virtual void print( FILE *fh ) = 0; - + virtual ~DisplayFunction() { } - + }; @@ -69,7 +69,7 @@ class DisplayFunctionGGBA : public DisplayFunction { float gamma, L_max, L_offset, L_black, E_amb, screen_refl; - + public: DisplayFunctionGGBA( float gamma, float L_max, float L_black, float E_amb, float screen_refl ); DisplayFunctionGGBA( const char *predefined ); @@ -82,7 +82,7 @@ virtual v4sf display( v4sf L ); #endif - void print( FILE *fh ); + void print( FILE *fh ); private: void init( float gamma, float L_max, float L_black, float E_amb, float screen_refl ); @@ -92,14 +92,14 @@ { float *pix_lut, *L_lut; size_t lut_size; - + public: DisplayFunctionLUT( const char *file_name ); ~DisplayFunctionLUT(); - + float inv_display( float L ); float display( float pix ); - void print( FILE *fh ); + void print( FILE *fh ); }; //DisplayFunction *createDisplayFunctionFromArgs( int &argc, char* argv[] ); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_size.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_size.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/display_size.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/display_size.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -8,7 +8,7 @@ * http://www.mpi-inf.mpg.de/resources/hdr/datmo/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: display_size.cpp,v 1.3 2008/06/16 18:42:58 rafm Exp $ @@ -59,7 +59,7 @@ fprintf( fh, " viewing distance = %g [meters]\n", (double)getViewD() ); } - + float DisplaySize::getPixPerDeg() { return ppd; @@ -76,7 +76,7 @@ DisplaySize *createDisplaySizeFromArgs( int &argc, char* argv[] ) { DisplaySize *ds = 0; - + for( int i=1 ; i * * $Id: display_size.h,v 1.2 2008/06/16 18:42:58 rafm Exp $ @@ -47,7 +47,7 @@ */ DisplaySize( int vres, float vd_screen_h, float vd_meters = 0.5 ); - + /** * @param ppd number of pixels per one visual degree (e.g. 30) * @param vd_meters viewing distance in meters @@ -55,7 +55,7 @@ DisplaySize( float ppd, float vd_meters = 0.5 ); void print( FILE *fh ); - + float getPixPerDeg(); float getViewD(); }; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/pfstmo_mantiuk08.cpp luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/pfstmo_mantiuk08.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/mantiuk08/pfstmo_mantiuk08.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/mantiuk08/pfstmo_mantiuk08.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -8,7 +8,7 @@ * http://www.mpi-inf.mpg.de/resources/hdr/datmo/ * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -22,8 +22,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * * $Id: pfstmo_mantiuk08.cpp,v 1.12 2009/02/23 18:46:36 rafm Exp $ @@ -56,13 +56,13 @@ if (!setluminance) white_y = -2.f; - + if ( contrast_enhance_factor <= 0.0f ) throw pfs::Exception("incorrect contrast enhancement factor, accepted value is any positive number"); - + if ( saturation_factor < 0.0f || saturation_factor > 2.0f ) throw pfs::Exception("incorrect saturation factor, accepted range is (0..2)"); - + #ifndef NDEBUG std::cout << "pfstmo_mantiuk08 ("; std::cout << "saturation factor: " << saturation_factor; @@ -70,16 +70,16 @@ std::cout << ", white_y: " << white_y; std::cout << ", setluminance: " << setluminance << ")" << std::endl; #endif - + DisplayFunction *df = NULL; DisplaySize *ds = NULL; - + if( df == NULL ) // As of now df is not selected by users but hardcoded here df = new DisplayFunctionGGBA( "lcd" ); - + if( ds == NULL ) // As of now ds is not selected by users but hardcoded here - ds = new DisplaySize( 30.f, 0.5f ); - + ds = new DisplaySize( 30.f, 0.5f ); + #ifndef NDEBUG df->print( stderr ); ds->print( stderr ); @@ -94,13 +94,13 @@ delete df; throw pfs::Exception( "Missing X, Y, Z channels in the PFS stream" ); } - + const int cols = frame.getWidth(); const int rows = frame.getHeight(); - + pfs::Array2Df R( cols, rows ); pfs::transformColorSpace(pfs::CS_XYZ, inX, inY, inZ, pfs::CS_RGB, inX, &R, inZ); - + if( white_y == -2.f ) { std::string white_y_str = frame.getTags().getTag( "WHITE_Y" ); @@ -114,14 +114,14 @@ } } } - + /* no need for flushing stdout with this stuff fprintf( stderr, "Luminance factor of the reference white: " ); if( white_y < 0 ) fprintf( stderr, "not specified\n" ); else fprintf( stderr, "%g\n", white_y ); - + std::string lum_data = frame.getTags().getTag("LUMINANCE"); if( !lum_data.empty() && lum_data != "DISPLAY" ) { fprintf( stderr, "warning: input image should be in linear (not gamma corrected) luminance factor units. Use '--linear' option with pfsin* commands.\n" ); @@ -135,7 +135,7 @@ delete ds; throw pfs::Exception("failed to analyse the image"); } - + datmoTCFilter rc_filter( fps, log10(df->display(0)), log10(df->display(1)) ); //datmoToneCurve tc; @@ -161,11 +161,12 @@ throw pfs::Exception( "failed to tone-map the image" ); } - ph.setValue( 100 ); - pfs::transformColorSpace( pfs::CS_RGB, inX, &R, inZ, pfs::CS_XYZ, inX, inY, inZ ); frame.getTags().setTag("LUMINANCE", "DISPLAY"); + if ( !ph.canceled() ) + ph.setValue(100); + delete df; delete ds; } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/pattanaik00/pfstmo_pattanaik00.cpp luminance-hdr-2.5.1/src/TonemappingOperators/pattanaik00/pfstmo_pattanaik00.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/pattanaik00/pfstmo_pattanaik00.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/pattanaik00/pfstmo_pattanaik00.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * S.N. Pattanaik, J. Tumblin, H. Yee, and D.P. Greenberg * In Proceedings of ACM SIGGRAPH 2000 * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: pfstmo_pattanaik00.cpp,v 1.3 2008/09/04 12:46:49 julians37 Exp $ @@ -61,7 +61,7 @@ bool local, float multiplier, float Acone, float Arod, bool autolum, pfs::Progress &ph) -{ +{ //--- default tone mapping parameters; const bool timedependence = false; //bool local = false; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.cpp luminance-hdr-2.5.1/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * S.N. Pattanaik, J. Tumblin, H. Yee, and D.P. Greenberg * In Proceedings of ACM SIGGRAPH 2000 * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_pattanaik00.cpp,v 1.3 2008/11/04 23:43:08 rafm Exp $ @@ -106,7 +106,7 @@ void tmo_pattanaik00(pfs::Array2Df& R, pfs::Array2Df& G, pfs::Array2Df& B, const pfs::Array2Df& Y, VisualAdaptationModel* am, bool local, pfs::Progress &ph) -{ +{ ///--- initialization of parameters /// cones level of adaptation float Acone = am->getAcone(); @@ -267,10 +267,10 @@ // float j = 0.00001f / (5.0f*I + 0.00001f); // float fls = 3800*pow(j,2.0f)*5*I+0.2*pow(1-pow(j,2.0f),4.0f)*pow(5*I,1.0f/6.0f); // float sigma_rod = pow(2,1.0f/n) / fls * I; - + float j = 1.0f / (5*1e4*I+1); float j2 = j*j; - + float sigma_rod = (2.5874f*I)/(19000.0f*j2*I+0.2615f*pow(1.0f-j2,4)*pow(I,1.0f/6.0f)); return sigma_rod; } @@ -283,7 +283,7 @@ // float fl = 0.2f*5.0f*pow(k,4.0f)*I // + 0.1f*pow(1.0f-pow(k,4.0f),2.0f)*pow(5*I,1.0f/3.0f); // float sigma_cone = pow(2.0f,1.0f/n) / fl * (5.0f*I); - + float k = 1.0f/(5.0f*I+1); float k4 = pow(k,4.0f); float sigma_cone = (12.9223f*I) / ( k4*I+0.171 * pow(1.0f-k4,2) * powf(I,1.0f/3.0f)); diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.h luminance-hdr-2.5.1/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.h --- luminance-hdr-2.5.0/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/pattanaik00/tmo_pattanaik00.h 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * S.N. Pattanaik, J. Tumblin, H. Yee, and D.P. Greenberg * In Proceedings of ACM SIGGRAPH 2000 * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_pattanaik00.h,v 1.2 2008/09/04 12:46:49 julians37 Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/pfstmo.h luminance-hdr-2.5.1/src/TonemappingOperators/pfstmo.h --- luminance-hdr-2.5.0/src/TonemappingOperators/pfstmo.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/pfstmo.h 2017-05-10 19:14:06.000000000 +0000 @@ -3,7 +3,7 @@ * Interfaces for TM Operators * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * This program 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 2 of the License, or @@ -17,8 +17,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Rafal Mantiuk, * @author Davide Anastasia * Merge of different replicated files diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/approx.cpp luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/approx.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/approx.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/approx.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -21,7 +21,7 @@ // interpolated version of approximation (always use this one!) (:krawczyk) #define INTERPOLATED -extern double **luminance; +extern double **luminance; int ImageWidth, ImageHeight; double ***Pyramid; @@ -35,7 +35,7 @@ /* PRE: */ { // int n, s; - + /* Level 0 is a special case, the value is just the image */ if (level == 0) { if ( (x < 0) || (y < 0) || (x >= ImageWidth) || (y >= ImageHeight) ) @@ -48,7 +48,7 @@ level--; // n = 1 << level; int s = PyramidWidth0 >> level; - + //x = x >> level; //y = y >> level; @@ -68,7 +68,7 @@ // int height, pyramid_height; double sum = 0; - + double a = 0.4; double b = 0.25; double c = b - a/2; @@ -80,7 +80,7 @@ w[2] = a; w[3] = w[1]; w[4] = w[0]; - + /* Build the pyramid slices. The bottom of the pyramid is the luminace */ /* image, and is not in the Pyramid array. */ /* For simplicity, the first level is padded to a square whose side is a */ @@ -88,7 +88,7 @@ ImageWidth = image_width; ImageHeight = image_height; - + /* Compute the size of the Pyramid array */ max_dim = (ImageHeight > ImageWidth ? ImageHeight : ImageWidth); PyramidHeight = (int) floor(log(max_dim - 0.5)/log(2.0f)) + 1; @@ -98,7 +98,7 @@ PyramidWidth0 = width; // fprintf(stderr, "max_dim %d height %d\n", max_dim, PyramidHeight); - + /* Allocate the outer Pyramid array */ Pyramid = (double***) calloc(PyramidHeight, sizeof(double**)); if (!Pyramid) { @@ -108,11 +108,11 @@ /* Allocate and assign the Pyramid slices */ k = 0; - + while (width) { // fprintf(stderr, "level %d, width = %d\n", k, width); - + /* Allocate the slice */ Pyramid[k] = (double**) calloc(width, sizeof(double*)); if (!Pyramid[k]) { @@ -137,7 +137,7 @@ sum += w[i]*w[j]*pyramid_lookup(2*x + i - 2, 2*y + j - 2, k); } } - Pyramid[k][y][x] = sum; + Pyramid[k][y][x] = sum; } } @@ -173,7 +173,7 @@ return(luminance[y][x]); /* Compute the size of the slice */ - + x = x >> level; y = y >> level; @@ -186,7 +186,7 @@ int x0, y0; int l, size; double s, t; - + /* Level 0 is a special case, the value is just the image */ if (level == 0) return(luminance[y][x]); @@ -199,17 +199,17 @@ x0 = (x0 >= size ? size - 1 : x0); y0 = (y0 >= size ? size - 1 : y0); - + s = (double)(x - x0*l)/(double)l; t = (double)(y - y0*l)/(double)l; - + level--; //!! FIX: a quick fix for boundary conditions int x01,y01; x01 = (x0 == size-1 ? x0 : x0+1); y01 = (y0 == size-1 ? y0 : y0+1); - + return((1-s)*(1-t)*Pyramid[level][y0][x0] + s*(1-t)*Pyramid[level][y0][x01] + (1-s)*t*Pyramid[level][y01][x0] + s*t*Pyramid[level][y01][x01]); } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/pfstmo_reinhard02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/pfstmo_reinhard02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/pfstmo_reinhard02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/pfstmo_reinhard02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * E. Reinhard, M. Stark, P. Shirley, and J. Ferwerda. * In ACM Transactions on Graphics, 2002. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: pfstmo_reinhard02.cpp,v 1.3 2008/09/04 12:46:49 julians37 Exp $ @@ -37,13 +37,9 @@ #include "Libpfs/frame.h" #include "Libpfs/exception.h" +#include "Libpfs/progress.h" #include "tmo_reinhard02.h" -namespace pfs -{ -class Progress; -} - void pfstmo_reinhard02(pfs::Frame& frame, float key, float phi, int num, int low, int high, bool use_scales, pfs::Progress &ph ) { //--- default tone mapping parameters; @@ -98,4 +94,8 @@ (*Z)(x,y) *= scale; } } + if (!ph.canceled()) + { + ph.setValue(100); + } } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/tmo_reinhard02.cpp luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/tmo_reinhard02.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/tmo_reinhard02.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/tmo_reinhard02.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -3,7 +3,7 @@ * @brief Tone map luminance channel using Reinhard02 model * * This file is a part of LuminanceHDR package. - * Implementation courtesy of Erik Reinhard. + * Implementation courtesy of Erik Reinhard. * * Original source code note: * Tonemap.c University of Utah / Erik Reinhard / October 2001 @@ -119,17 +119,17 @@ { if (m_use_scales) { - prefscale = m_range - 1; - for (scale = 0; scale < m_range - 1; scale++) - if ( scale >= PyramidHeight || fabs (ACTIVITY(x,y,scale)) > m_threshold) - { - prefscale = scale; - break; - } - m_image[y][x][0] /= 1. + V1(x,y,prefscale); + prefscale = m_range - 1; + for (scale = 0; scale < m_range - 1; scale++) + if ( scale >= PyramidHeight || fabs (ACTIVITY(x,y,scale)) > m_threshold) + { + prefscale = scale; + break; + } + m_image[y][x][0] /= 1. + V1(x,y,prefscale); } else - m_image[y][x][0] = m_image[y][x][0] * (1. + (m_image[y][x][0] / Lmax2)) / (1. + m_image[y][x][0]); + m_image[y][x][0] = m_image[y][x][0] * (1. + (m_image[y][x][0] / Lmax2)) / (1. + m_image[y][x][0]); // image[y][x][0] /= (1. + image[y][x][0]); } } @@ -177,22 +177,22 @@ m_avg_luminance.set( log_average() ); avg = m_avg_luminance.get(); } else avg = log_average(); - + scale_factor = 1.0 / avg; for (y = 0; y < m_cvts.ymax; y++) for (x = 0; x < m_cvts.xmax; x++) { if (m_use_border) { - u = (x > hw) ? m_cvts.xmax - x : x; - v = (y > hh) ? m_cvts.ymax - y : y; - d = (u < v) ? u : v; - factor = (d < border_size) ? (m_key - low_tone) * - kaiserbessel (border_size - d, 0, border_size) + + u = (x > hw) ? m_cvts.xmax - x : x; + v = (y > hh) ? m_cvts.ymax - y : y; + d = (u < v) ? u : v; + factor = (d < border_size) ? (m_key - low_tone) * + kaiserbessel (border_size - d, 0, border_size) + low_tone : m_key; } else - factor = m_key; + factor = m_key; m_image[y][x][0] *= scale_factor * factor; m_luminance[y][x] *= scale_factor * factor; } @@ -247,10 +247,10 @@ for (y = 0; y < m_cvts.ymax; y++) { if ((m_luminance[y][x] < minval) && - (m_luminance[y][x] > 0.0)) - minval = m_luminance[y][x]; + (m_luminance[y][x] > 0.0)) + minval = m_luminance[y][x]; if (m_luminance[y][x] > maxval) - maxval = m_luminance[y][x]; + maxval = m_luminance[y][x]; } } @@ -307,7 +307,7 @@ m_ph.setValue( 10 ); if (m_ph.canceled()) - goto end; + goto end; // reading image for( y=0 ; y= size ? size - 1 : x0); y0 = (y0 >= size ? size - 1 : y0); - + s = (double)(x - x0*l)/(double)l; t = (double)(y - y0*l)/(double)l; - + level--; //!! FIX: a quick fix for boundary conditions int x01,y01; x01 = (x0 == size-1 ? x0 : x0+1); y01 = (y0 == size-1 ? y0 : y0+1); - + return((1-s)*(1-t)*Pyramid[level][y0][x0] + s*(1-t)*Pyramid[level][y0][x01] + (1-s)*t*Pyramid[level][y01][x0] + s*t*Pyramid[level][y01][x01]); } @@ -396,7 +396,7 @@ double Reinhard02::pyramid_lookup( unsigned int x, unsigned int y, int level ) { // int n, s; - + /* Level 0 is a special case, the value is just the image */ if (level == 0) { if ( (x < 0) || (y < 0) || (x >= m_width) || (y >= m_height) ) @@ -409,7 +409,7 @@ level--; // n = 1 << level; unsigned int s = PyramidWidth0 >> level; - + //x = x >> level; //y = y >> level; @@ -429,7 +429,7 @@ // int height, pyramid_height; double sum = 0; - + double a = 0.4; double b = 0.25; double c = b - a/2; @@ -441,7 +441,7 @@ w[2] = a; w[3] = w[1]; w[4] = w[0]; - + /* Build the pyramid slices. The bottom of the pyramid is the luminace */ /* image, and is not in the Pyramid array. */ /* For simplicity, the first level is padded to a square whose side is a */ @@ -456,7 +456,7 @@ PyramidWidth0 = width; // fprintf(stderr, "max_dim %d height %d\n", max_dim, PyramidHeight); - + /* Allocate the outer Pyramid array */ Pyramid = (double***) calloc(PyramidHeight, sizeof(double**)); if (!Pyramid) { @@ -470,7 +470,7 @@ while (width) { // fprintf(stderr, "level %d, width = %d\n", k, width); - + /* Allocate the slice */ Pyramid[k] = (double**) calloc(width, sizeof(double*)); if (!Pyramid[k]) { @@ -495,7 +495,7 @@ sum += w[i]*w[j]*pyramid_lookup(2*x + i - 2, 2*y + j - 2, k); } } - Pyramid[k][y][x] = sum; + Pyramid[k][y][x] = sum; } } diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/tmo_reinhard02.h luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/tmo_reinhard02.h --- luminance-hdr-2.5.0/src/TonemappingOperators/reinhard02/tmo_reinhard02.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/reinhard02/tmo_reinhard02.h 2017-05-10 19:14:06.000000000 +0000 @@ -31,12 +31,12 @@ { return 0.01 * luminance; } - + public: TemporalSmoothVariable() : value( -1 ) { } - + void set( T new_value ) { if( value == -1 ) @@ -49,11 +49,11 @@ value += delta; } } - + T get() const { return value; - } + } }; //--- from defines.h @@ -105,43 +105,43 @@ void tmo_reinhard02(); private: - TemporalSmoothVariable m_avg_luminance, m_max_luminance; - CVTS m_cvts; - COLOR **m_image; - double m_sigma_0, m_sigma_1; - double **m_luminance; + TemporalSmoothVariable m_avg_luminance, m_max_luminance; + CVTS m_cvts; + COLOR **m_image; + double m_sigma_0, m_sigma_1; + double **m_luminance; unsigned int m_width, m_height; const pfs::Array2Df* m_Y; pfs::Array2Df* m_L; - bool m_use_scales; - bool m_use_border; - double m_key, m_phi, m_white; - int m_range, m_scale_low, m_scale_high; - bool m_temporal_coherent; - const double m_alpha; - double m_bbeta; - double m_threshold; + bool m_use_scales; + bool m_use_border; + double m_key, m_phi, m_white; + int m_range, m_scale_low, m_scale_high; + bool m_temporal_coherent; + const double m_alpha; + double m_bbeta; + double m_threshold; pfs::Progress &m_ph; - double ***Pyramid; - int PyramidHeight; - int PyramidWidth0; - - double bessel(double); - void compute_bessel(); - double kaiserbessel(double, double, double); - double get_maxvalue(); - void tonemap_image(); - void clamp_image(); - double log_average(); - void scale_to_midtone(); - void copy_luminance(); - void allocate_memory(); - void deallocate_memory(); - void dynamic_range(); - double V1(int, int, int); - double pyramid_lookup(unsigned int, unsigned int, int); - void build_pyramid(double **, int, int); - void clean_pyramid(); + double ***Pyramid; + int PyramidHeight; + int PyramidWidth0; + + double bessel(double); + void compute_bessel(); + double kaiserbessel(double, double, double); + double get_maxvalue(); + void tonemap_image(); + void clamp_image(); + double log_average(); + void scale_to_midtone(); + void copy_luminance(); + void allocate_memory(); + void deallocate_memory(); + void dynamic_range(); + double V1(int, int, int); + double pyramid_lookup(unsigned int, unsigned int, int); + void build_pyramid(double **, int, int); + void clean_pyramid(); }; #endif // TMO_REINHARD02_H diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/reinhard05/pfstmo_reinhard05.cpp luminance-hdr-2.5.1/src/TonemappingOperators/reinhard05/pfstmo_reinhard05.cpp --- luminance-hdr-2.5.0/src/TonemappingOperators/reinhard05/pfstmo_reinhard05.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/reinhard05/pfstmo_reinhard05.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -6,11 +6,11 @@ * E. Reinhard and K. Devlin. * In IEEE Transactions on Visualization and Computer Graphics, 2005. * - * + * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -24,8 +24,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: pfstmo_reinhard05.cpp,v 1.2 2008/09/04 12:46:49 julians37 Exp $ @@ -43,7 +43,7 @@ #include "Libpfs/progress.h" void pfstmo_reinhard05(pfs::Frame &frame, float brightness, float chromaticadaptation, float lightadaptation, pfs::Progress &ph) -{ +{ //--- default tone mapping parameters; //float brightness = 0.0f; //float chromaticadaptation = 0.5f; diff -Nru luminance-hdr-2.5.0/src/TonemappingOperators/reinhard05/tmo_reinhard05.h luminance-hdr-2.5.1/src/TonemappingOperators/reinhard05/tmo_reinhard05.h --- luminance-hdr-2.5.0/src/TonemappingOperators/reinhard05/tmo_reinhard05.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingOperators/reinhard05/tmo_reinhard05.h 2017-05-10 19:14:06.000000000 +0000 @@ -7,9 +7,9 @@ * In IEEE Transactions on Visualization and Computer Graphics, 2005. * * This file is a part of LuminanceHDR package, based on pfstmo. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2007 Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -23,8 +23,8 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * + * ---------------------------------------------------------------------- + * * @author Grzegorz Krawczyk, * * $Id: tmo_reinhard05.h,v 1.2 2008/09/04 12:46:49 julians37 Exp $ diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/CMakeLists.txt luminance-hdr-2.5.1/src/TonemappingPanel/CMakeLists.txt --- luminance-hdr-2.5.0/src/TonemappingPanel/CMakeLists.txt 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/CMakeLists.txt 2017-05-10 19:14:06.000000000 +0000 @@ -1,18 +1,22 @@ SET(FILES_UI ${CMAKE_CURRENT_SOURCE_DIR}/SavingParametersDialog.ui ${CMAKE_CURRENT_SOURCE_DIR}/TonemappingPanel.ui -${CMAKE_CURRENT_SOURCE_DIR}/TonemappingSettings.ui) +${CMAKE_CURRENT_SOURCE_DIR}/TonemappingSettings.ui +${CMAKE_CURRENT_SOURCE_DIR}/ThresholdWidget.ui +) SET(FILES_H ${CMAKE_CURRENT_SOURCE_DIR}/SavingParametersDialog.h ${CMAKE_CURRENT_SOURCE_DIR}/TMOProgressIndicator.h ${CMAKE_CURRENT_SOURCE_DIR}/TonemappingPanel.h ${CMAKE_CURRENT_SOURCE_DIR}/TonemappingSettings.h +${CMAKE_CURRENT_SOURCE_DIR}/ThresholdWidget.h ) SET(FILES_CPP ${CMAKE_CURRENT_SOURCE_DIR}/SavingParametersDialog.cpp ${CMAKE_CURRENT_SOURCE_DIR}/TMOProgressIndicator.cpp ${CMAKE_CURRENT_SOURCE_DIR}/TonemappingPanel.cpp ${CMAKE_CURRENT_SOURCE_DIR}/TonemappingSettings.cpp +${CMAKE_CURRENT_SOURCE_DIR}/ThresholdWidget.cpp ) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/SavingParametersDialog.cpp luminance-hdr-2.5.1/src/TonemappingPanel/SavingParametersDialog.cpp --- luminance-hdr-2.5.0/src/TonemappingPanel/SavingParametersDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/SavingParametersDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -24,8 +24,8 @@ #include "SavingParametersDialog.h" -SavingParameters::SavingParameters(QWidget *parent): - QDialog(parent) +SavingParameters::SavingParameters(QWidget *parent): + QDialog(parent) { - setupUi(this); + setupUi(this); } diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/SavingParametersDialog.h luminance-hdr-2.5.1/src/TonemappingPanel/SavingParametersDialog.h --- luminance-hdr-2.5.0/src/TonemappingPanel/SavingParametersDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/SavingParametersDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -33,7 +33,7 @@ public: SavingParameters(QWidget *parent = 0); - QString getComment() { return comment->text(); } + QString getComment() { return comment->text(); } }; #endif diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/ThresholdWidget.cpp luminance-hdr-2.5.1/src/TonemappingPanel/ThresholdWidget.cpp --- luminance-hdr-2.5.0/src/TonemappingPanel/ThresholdWidget.cpp 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/ThresholdWidget.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,61 @@ +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2011 Franco Comida + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Franco Comida + * + */ + +#include "ThresholdWidget.h" +#include "ui_ThresholdWidget.h" + +ThresholdWidget::ThresholdWidget(QWidget *parent, Qt::WindowFlags flags): + QFrame(parent, flags), + m_Ui(new Ui::ThresholdWidget) +{ + m_Ui->setupUi(this); +} + +ThresholdWidget::~ThresholdWidget() +{ +} + +float ThresholdWidget::threshold() const +{ + return m_Ui->thresholdDoubleSpinBox->value(); +} + +void ThresholdWidget::on_thresholdDoubleSpinBox_valueChanged(double value) +{ + int maxv = m_Ui->thresholdHorizontalSlider->maximum(); + m_Ui->thresholdHorizontalSlider->setValue((int)(value*(maxv+1))); +} + +void ThresholdWidget::on_thresholdHorizontalSlider_valueChanged(int pos) +{ + int maxv = m_Ui->thresholdHorizontalSlider->maximum(); + m_Ui->thresholdDoubleSpinBox->setValue( (double)pos/(maxv+1) ); +} + +void ThresholdWidget::keyPressEvent(QKeyEvent *event) +{ + if (event->key() == Qt::Key_Return || event->key() == Qt::Key_Enter) { + emit ready(); + } +} diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/ThresholdWidget.h luminance-hdr-2.5.1/src/TonemappingPanel/ThresholdWidget.h --- luminance-hdr-2.5.0/src/TonemappingPanel/ThresholdWidget.h 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/ThresholdWidget.h 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,57 @@ +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2011 Franco Comida + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Franco Comida + * + */ + +#ifndef THRESHOLDWIDGET_H +#define THRESHOLDWIDGET_H + +#include +#include + +namespace Ui +{ + class ThresholdWidget; +} + +class ThresholdWidget : public QFrame +{ + Q_OBJECT + +public: + ThresholdWidget(QWidget *parent = 0, Qt::WindowFlags flags=Qt::Popup); + ~ThresholdWidget(); + float threshold() const; + +protected: + void keyPressEvent(QKeyEvent *event); + QScopedPointer m_Ui; + +Q_SIGNALS: + void ready(); + +protected Q_SLOTS: + void on_thresholdDoubleSpinBox_valueChanged(double value); + void on_thresholdHorizontalSlider_valueChanged(int pos); +}; + +#endif diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/ThresholdWidget.ui luminance-hdr-2.5.1/src/TonemappingPanel/ThresholdWidget.ui --- luminance-hdr-2.5.0/src/TonemappingPanel/ThresholdWidget.ui 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/ThresholdWidget.ui 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,88 @@ + + + ThresholdWidget + + + Qt::ApplicationModal + + + + 0 + 0 + 400 + 49 + + + + + 0 + 0 + + + + Frame + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + + Threshold + + + + + + + 800 + + + 999 + + + 985 + + + Qt::Horizontal + + + QSlider::TicksBelow + + + 10 + + + + + + + 3 + + + 0.800000000000000 + + + 0.999000000000000 + + + 0.001000000000000 + + + 0.985000000000000 + + + + + + + + + + diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/TMOProgressIndicator.cpp luminance-hdr-2.5.1/src/TonemappingPanel/TMOProgressIndicator.cpp --- luminance-hdr-2.5.0/src/TonemappingPanel/TMOProgressIndicator.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/TMOProgressIndicator.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -46,7 +46,7 @@ m_abortButton->resize(22,22); m_abortButton->setIcon(QIcon::fromTheme("tab-close", QIcon(":/program-icons/tab-close"))); m_abortButton->setToolTip(QString(tr("Abort computation"))); - + m_hbl->addWidget(m_progressBar); m_hbl->addWidget(m_abortButton); diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingPanel.cpp luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingPanel.cpp --- luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingPanel.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingPanel.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -58,13 +58,16 @@ TonemappingPanel::TonemappingPanel(int mainWinNumber, PreviewPanel *panel, QWidget *parent): QWidget(parent), - adding_custom_size(false), + adding_custom_size(false), m_previewPanel(panel), m_mainWinNumber(mainWinNumber), + m_autolevelThreshold(0.985f), + m_thd(new ThresholdWidget(this)), m_Ui(new Ui::TonemappingPanel) { m_Ui->setupUi(this); + connect(m_thd.data(), SIGNAL(ready()), this, SLOT(thresholdReady())); if ( !QIcon::hasThemeIcon("edit-download") ) m_Ui->saveButton->setIcon(QIcon(":/program-icons/edit-download")); @@ -102,9 +105,9 @@ noiseGang = new Gang(m_Ui->noiseSlider, m_Ui->noisedsb, NULL,NULL,NULL,NULL, 0, 1.f, FATTAL02_NOISE_REDUX); // oldFattalGang = new Gang(NULL,NULL, m_Ui->oldFattalCheckBox); fftSolverGang = new Gang(NULL, NULL,m_Ui->fftVersionCheckBox); - + // ferradans11 - rhoGang = new Gang(m_Ui->rhoSlider, m_Ui->rhodsb, NULL,NULL,NULL,NULL, -5.f, 0.f, FERRADANS11_RHO); + rhoGang = new Gang(m_Ui->rhoSlider, m_Ui->rhodsb, NULL,NULL,NULL,NULL, -10.f, 10.f, FERRADANS11_RHO); connect(rhoGang, SIGNAL(enableUndo(bool)), m_Ui->undoButton, SLOT(setEnabled(bool))); connect(rhoGang, SIGNAL(enableRedo(bool)), m_Ui->redoButton, SLOT(setEnabled(bool))); @@ -176,31 +179,31 @@ connect(m_Ui->loadButton, SIGNAL(clicked()), this, SLOT(loadParameters())); connect(m_Ui->saveButton, SIGNAL(clicked()), this, SLOT(saveParameters())); - connect(m_Ui->autoLevelsCheckBox, SIGNAL(toggled(bool)), this, SIGNAL(autoLevels(bool))); + connect(m_Ui->autoLevelsCheckBox, SIGNAL(toggled(bool)), this, SLOT(autoLevels(bool))); + + m_spinner = new QtWaitingSpinner(this); + + m_spinner->setRoundness(70.0); + m_spinner->setMinimumTrailOpacity(15.0); + m_spinner->setTrailFadePercentage(70.0); + m_spinner->setNumberOfLines(12); + m_spinner->setLineLength(5); + m_spinner->setLineWidth(2); + m_spinner->setInnerRadius(5); + m_spinner->setRevolutionsPerSecond(1); + + m_spinner->start(); - m_spinner = new QtWaitingSpinner(this); + m_Ui->frameSpinner->addWidget(m_spinner); + m_spinner->setVisible(false); - m_spinner->setRoundness(70.0); - m_spinner->setMinimumTrailOpacity(15.0); - m_spinner->setTrailFadePercentage(70.0); - m_spinner->setNumberOfLines(12); - m_spinner->setLineLength(5); - m_spinner->setLineWidth(2); - m_spinner->setInnerRadius(5); - m_spinner->setRevolutionsPerSecond(1); - - m_spinner->start(); - - m_Ui->frameSpinner->addWidget(m_spinner); - m_spinner->setVisible(false); - createDatabase(); } void TonemappingPanel::setExportQueueSize(int size) { - m_spinner->setVisible(size > 0); - m_Ui->lblQueueSize->setText(QString(tr("Queue size: %1")).arg(size)); + m_spinner->setVisible(size > 0); + m_Ui->lblQueueSize->setText(QString(tr("Queue size: %1")).arg(size)); } @@ -244,78 +247,78 @@ delete pregammaGang; delete m_spinner; - qDeleteAll(toneMappingOptionsToDelete); + qDeleteAll(toneMappingOptionsToDelete); if (m_mainWinNumber == 0) { - QSqlDatabase db = QSqlDatabase::database(); - db.close(); + QSqlDatabase db = QSqlDatabase::database(); + db.close(); } } void TonemappingPanel::changeEvent(QEvent *event) { - if (event->type() == QEvent::LanguageChange) - m_Ui->retranslateUi(this); - QWidget::changeEvent(event); + if (event->type() == QEvent::LanguageChange) + m_Ui->retranslateUi(this); + QWidget::changeEvent(event); } void TonemappingPanel::createDatabase() { LuminanceOptions options; - QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); + QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName(options.getDatabaseFileName()); - db.setHostName("localhost"); - bool ok = db.open(); - if (!ok) - { - QMessageBox::warning(this,tr("TM Database Problem"), + db.setHostName("localhost"); + bool ok = db.open(); + if (!ok) + { + QMessageBox::warning(this,tr("TM Database Problem"), tr("The database used for saving TM parameters cannot be opened.\n" - "Error: %1").arg(db.lastError().databaseText()), + "Error: %1").arg(db.lastError().databaseText()), QMessageBox::Ok,QMessageBox::NoButton); - return; - } - QSqlQuery query; - // Mantiuk 06 - bool res = query.exec(" CREATE TABLE IF NOT EXISTS mantiuk06 (contrastEqualization boolean NOT NULL, contrastFactor real, saturationFactor real, detailFactor real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Mantiuk 08 - res = query.exec(" CREATE TABLE IF NOT EXISTS mantiuk08 (colorSaturation real, contrastEnhancement real, luminanceLevel real, manualLuminanceLevel boolean NOT NULL, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Ashikhmin - res = query.exec(" CREATE TABLE IF NOT EXISTS ashikhmin (simple boolean NOT NULL, eq2 boolean NOT NULL, lct real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Drago - res = query.exec(" CREATE TABLE IF NOT EXISTS drago (bias real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Durand - res = query.exec(" CREATE TABLE IF NOT EXISTS durand (spatial real, range real, base real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Fattal - res = query.exec(" CREATE TABLE IF NOT EXISTS fattal (alpha real, beta real, colorSaturation real, noiseReduction real, oldFattal boolean NOT NULL, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Fattal - res = query.exec(" CREATE TABLE IF NOT EXISTS ferradans (rho real, inv_alpha real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Pattanaik - res = query.exec(" CREATE TABLE IF NOT EXISTS pattanaik (autolum boolean NOT NULL, local boolean NOT NULL, cone real, rod real, multiplier real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Reinhard02 - res = query.exec(" CREATE TABLE IF NOT EXISTS reinhard02 (scales boolean NOT NULL, key real, phi real, range int, lower int, upper int, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); - // Reinhard05 - res = query.exec(" CREATE TABLE IF NOT EXISTS reinhard05 (brightness real, chromaticAdaptation real, lightAdaptation real, pregamma real, comment varchar(150));"); - if (res == false) - qDebug() << query.lastError(); + return; + } + QSqlQuery query; + // Mantiuk 06 + bool res = query.exec(" CREATE TABLE IF NOT EXISTS mantiuk06 (contrastEqualization boolean NOT NULL, contrastFactor real, saturationFactor real, detailFactor real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Mantiuk 08 + res = query.exec(" CREATE TABLE IF NOT EXISTS mantiuk08 (colorSaturation real, contrastEnhancement real, luminanceLevel real, manualLuminanceLevel boolean NOT NULL, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Ashikhmin + res = query.exec(" CREATE TABLE IF NOT EXISTS ashikhmin (simple boolean NOT NULL, eq2 boolean NOT NULL, lct real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Drago + res = query.exec(" CREATE TABLE IF NOT EXISTS drago (bias real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Durand + res = query.exec(" CREATE TABLE IF NOT EXISTS durand (spatial real, range real, base real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Fattal + res = query.exec(" CREATE TABLE IF NOT EXISTS fattal (alpha real, beta real, colorSaturation real, noiseReduction real, oldFattal boolean NOT NULL, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Fattal + res = query.exec(" CREATE TABLE IF NOT EXISTS ferradans (rho real, inv_alpha real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Pattanaik + res = query.exec(" CREATE TABLE IF NOT EXISTS pattanaik (autolum boolean NOT NULL, local boolean NOT NULL, cone real, rod real, multiplier real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Reinhard02 + res = query.exec(" CREATE TABLE IF NOT EXISTS reinhard02 (scales boolean NOT NULL, key real, phi real, range int, lower int, upper int, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); + // Reinhard05 + res = query.exec(" CREATE TABLE IF NOT EXISTS reinhard05 (brightness real, chromaticAdaptation real, lightAdaptation real, pregamma real, comment varchar(150));"); + if (res == false) + qDebug() << query.lastError(); // Hdr creation custom config parameters res = query.exec("CREATE TABLE IF NOT EXISTS parameters (weight integer, response integer, model integer, filename varchar(150));"); if (res == false) @@ -475,7 +478,7 @@ void TonemappingPanel::fillToneMappingOptions(bool exportMode) { - toneMappingOptions = new TonemappingOptions; + toneMappingOptions = new TonemappingOptions; if (!exportMode) { toneMappingOptionsToDelete.push_back(toneMappingOptions); @@ -522,7 +525,7 @@ toneMappingOptions->operator_options.ferradansoptions.rho=rhoGang->v(); toneMappingOptions->operator_options.ferradansoptions.inv_alpha=inv_alphaGang->v(); break; - case mai: + case mai: toneMappingOptions->tmoperator = mai; break; case mantiuk06: @@ -707,8 +710,8 @@ void TonemappingPanel::on_lblOpenQueue_linkActivated(const QString& link) { - LuminanceOptions options; - QDesktopServices::openUrl(QUrl::fromLocalFile(options.getExportDir())); + LuminanceOptions options; + QDesktopServices::openUrl(QUrl::fromLocalFile(options.getExportDir())); } @@ -895,23 +898,23 @@ return; } } - else if (field == "XSIZE") - { - int idx; + else if (field == "XSIZE") + { + int idx; for (idx = 0; idx < m_Ui->sizeComboBox->count(); idx++) - { - if (sizes[idx] == value.toInt()) - break; - } + { + if (sizes[idx] == value.toInt()) + break; + } if (idx == m_Ui->sizeComboBox->count()) // Custom XSIZE - { - sizes.push_back(value.toInt()); - fillCustomSizeComboBox(); + { + sizes.push_back(value.toInt()); + fillCustomSizeComboBox(); m_Ui->sizeComboBox->setCurrentIndex(m_Ui->sizeComboBox->count() - 1); - } - else + } + else m_Ui->sizeComboBox->setCurrentIndex(idx); - } + } //else if ( field == "QUALITY" å) //{ // m_Ui->qualityHS->setValue(value.toInt()); @@ -1058,7 +1061,7 @@ { if (b) { - updateUndoState(); + updateUndoState(); } else { @@ -1072,9 +1075,10 @@ m_Ui->applyButton->setEnabled(b); m_Ui->queueButton->setEnabled(b); - m_Ui->lblOpenQueue->setVisible(b); + m_Ui->lblOpenQueue->setVisible(b); m_Ui->replaceLdrCheckBox->setEnabled(b); m_Ui->autoLevelsCheckBox->setEnabled(b); + m_Ui->toolButtonThreshold->setEnabled(b); /* // Operator select m_Ui->cmbOperators->setEnabled(b); @@ -1096,9 +1100,9 @@ // Tonemap m_Ui->applyButton->setEnabled(b); m_Ui->queueButton->setEnabled(b); - m_Ui->lblOpenQueue->setVisible(b); + m_Ui->lblOpenQueue->setVisible(b); - // DB + // DB m_Ui->loadButton->setEnabled(b); m_Ui->saveButton->setEnabled(b); @@ -1108,7 +1112,7 @@ m_Ui->replaceLdrCheckBox->setEnabled(b); m_Ui->autoLevelsCheckBox->setEnabled(b); - // Labels + // Labels m_Ui->lblOperators->setEnabled(b); m_Ui->groupSaveLoadTMOsetting->setEnabled(b); m_Ui->label->setEnabled(b); @@ -1137,221 +1141,221 @@ void TonemappingPanel::saveParameters() { - SavingParameters dialog; - if (dialog.exec()) - { - // Ashikhmin - float lct; - bool simple, - eq2; - // Drago - float bias; - // Durand - float spatial, - range, - base; - // Fattal - float alpha, - beta, - colorSat, - noiseReduction; - bool oldFattal; - // Ferradans - float rho, - inv_alpha; - // Mantiuk 06 - float contrastFactor, - saturationFactor, - detailFactor; - bool contrastEqualization; - // Mantiuk 08 - float colorSaturation, - contrastEnhancement, - luminanceLevel; - bool manualLuminanceLevel; - // Pattanaik - float multiplier, - rod, - cone; - bool autolum, - local; - // Reinhard 02 - bool scales; - float key, - phi; - int irange, - lower, - upper; - // Reinhard 05 - float brightness, - chromaticAdaptation, - lightAdaptation; - - QString comment = dialog.getComment(); - - switch (currentTmoOperator) { - case ashikhmin: - simple = simpleGang->isCheckBox1Checked(); - eq2 = eq2Gang->isRadioButton1Checked(); - lct = contrastGang->v(); - execAshikhminQuery(simple, eq2, lct, comment); - break; - case drago: - bias = biasGang->v(); - execDragoQuery(bias, comment); - break; - case durand: - spatial = spatialGang->v(); - range = rangeGang->v(); - base = baseGang->v(); - execDurandQuery(spatial, range, base, comment); - break; - case fattal: - alpha = alphaGang->v(); - beta = betaGang->v(); - colorSat = saturation2Gang->v(); - noiseReduction = noiseGang->v(); + SavingParameters dialog; + if (dialog.exec()) + { + // Ashikhmin + float lct; + bool simple, + eq2; + // Drago + float bias; + // Durand + float spatial, + range, + base; + // Fattal + float alpha, + beta, + colorSat, + noiseReduction; + bool oldFattal; + // Ferradans + float rho, + inv_alpha; + // Mantiuk 06 + float contrastFactor, + saturationFactor, + detailFactor; + bool contrastEqualization; + // Mantiuk 08 + float colorSaturation, + contrastEnhancement, + luminanceLevel; + bool manualLuminanceLevel; + // Pattanaik + float multiplier, + rod, + cone; + bool autolum, + local; + // Reinhard 02 + bool scales; + float key, + phi; + int irange, + lower, + upper; + // Reinhard 05 + float brightness, + chromaticAdaptation, + lightAdaptation; + + QString comment = dialog.getComment(); + + switch (currentTmoOperator) { + case ashikhmin: + simple = simpleGang->isCheckBox1Checked(); + eq2 = eq2Gang->isRadioButton1Checked(); + lct = contrastGang->v(); + execAshikhminQuery(simple, eq2, lct, comment); + break; + case drago: + bias = biasGang->v(); + execDragoQuery(bias, comment); + break; + case durand: + spatial = spatialGang->v(); + range = rangeGang->v(); + base = baseGang->v(); + execDurandQuery(spatial, range, base, comment); + break; + case fattal: + alpha = alphaGang->v(); + beta = betaGang->v(); + colorSat = saturation2Gang->v(); + noiseReduction = noiseGang->v(); oldFattal = !fftSolverGang->isCheckBox1Checked(); - execFattalQuery(alpha, beta, colorSat, noiseReduction, oldFattal, comment); - break; - case ferradans: - rho = rhoGang->v(); - inv_alpha = inv_alphaGang->v(); - execFerradansQuery(rho, inv_alpha, comment); - break; - case mai: //no options - break; - case mantiuk06: - contrastFactor = contrastfactorGang->v(); - saturationFactor = saturationfactorGang->v(); - detailFactor = detailfactorGang->v(); - contrastEqualization = contrastfactorGang->isCheckBox1Checked(); - execMantiuk06Query(contrastEqualization, contrastFactor, saturationFactor, detailFactor, comment); - break; - case mantiuk08: - colorSaturation = colorSaturationGang->v(); - contrastEnhancement = contrastEnhancementGang->v(); - luminanceLevel = luminanceLevelGang->v(); - manualLuminanceLevel = luminanceLevelGang->isCheckBox1Checked(); - execMantiuk08Query(colorSaturation, contrastEnhancement, luminanceLevel, manualLuminanceLevel, comment); - break; - case pattanaik: - autolum=autoYGang->isCheckBox1Checked(); - local=pattalocalGang->isCheckBox1Checked(); - cone=coneGang->v(); - rod=rodGang->v(); - multiplier=multiplierGang->v(); - execPattanaikQuery(autolum, local, cone, rod, multiplier, comment); - break; - case reinhard02: - scales = usescalesGang->isCheckBox1Checked(); - key = keyGang->v(); - phi = phiGang->v(); - irange = (int) range2Gang->v(); - lower = (int) lowerGang->v(); - upper = (int) upperGang->v(); - execReinhard02Query(scales, key, phi, irange, lower, upper, comment); - break; - case reinhard05: - brightness = brightnessGang->v(); - chromaticAdaptation = chromaticGang->v(); - lightAdaptation = lightGang->v(); - execReinhard05Query(brightness, chromaticAdaptation, lightAdaptation, comment); - break; - } - } + execFattalQuery(alpha, beta, colorSat, noiseReduction, oldFattal, comment); + break; + case ferradans: + rho = rhoGang->v(); + inv_alpha = inv_alphaGang->v(); + execFerradansQuery(rho, inv_alpha, comment); + break; + case mai: //no options + break; + case mantiuk06: + contrastFactor = contrastfactorGang->v(); + saturationFactor = saturationfactorGang->v(); + detailFactor = detailfactorGang->v(); + contrastEqualization = contrastfactorGang->isCheckBox1Checked(); + execMantiuk06Query(contrastEqualization, contrastFactor, saturationFactor, detailFactor, comment); + break; + case mantiuk08: + colorSaturation = colorSaturationGang->v(); + contrastEnhancement = contrastEnhancementGang->v(); + luminanceLevel = luminanceLevelGang->v(); + manualLuminanceLevel = luminanceLevelGang->isCheckBox1Checked(); + execMantiuk08Query(colorSaturation, contrastEnhancement, luminanceLevel, manualLuminanceLevel, comment); + break; + case pattanaik: + autolum=autoYGang->isCheckBox1Checked(); + local=pattalocalGang->isCheckBox1Checked(); + cone=coneGang->v(); + rod=rodGang->v(); + multiplier=multiplierGang->v(); + execPattanaikQuery(autolum, local, cone, rod, multiplier, comment); + break; + case reinhard02: + scales = usescalesGang->isCheckBox1Checked(); + key = keyGang->v(); + phi = phiGang->v(); + irange = (int) range2Gang->v(); + lower = (int) lowerGang->v(); + upper = (int) upperGang->v(); + execReinhard02Query(scales, key, phi, irange, lower, upper, comment); + break; + case reinhard05: + brightness = brightnessGang->v(); + chromaticAdaptation = chromaticGang->v(); + lightAdaptation = lightGang->v(); + execReinhard05Query(brightness, chromaticAdaptation, lightAdaptation, comment); + break; + } + } } void TonemappingPanel::loadParameters() { TonemappingSettings dialog(this, m_currentFrame); - if (dialog.exec()) - { + if (dialog.exec()) + { LuminanceOptions *luminance_options = new LuminanceOptions; setRealtimePreviews(false); TonemappingOptions *tmopts = dialog.getTonemappingOptions(); - // Ashikhmin - bool simple, - eq2; - float lct; - // Drago - float bias; - // Durand - float spatial, - range, - base; - // Fattal - float alpha, - beta, - colorSat, - noiseReduction; - bool fftsolver; - // Ferradans - float rho, - inv_alpha; - // Mantiuk 06 - bool contrastEqualization; - float contrastFactor; - float saturationFactor; - float detailFactor; - // Mantiuk 08 - float colorSaturation, - contrastEnhancement, - luminanceLevel; - bool manualLuminanceLevel; - // Pattanaik - float multiplier, - rod, - cone; - bool autolum, - local; - // Reinhard 02 - bool scales; - float key, - phi; - int irange, - lower, - upper; - // Reinhard 05 - float brightness, - chromaticAdaptation, - lightAdaptation; - // Pre-gamma - float pregamma; + // Ashikhmin + bool simple, + eq2; + float lct; + // Drago + float bias; + // Durand + float spatial, + range, + base; + // Fattal + float alpha, + beta, + colorSat, + noiseReduction; + bool fftsolver; + // Ferradans + float rho, + inv_alpha; + // Mantiuk 06 + bool contrastEqualization; + float contrastFactor; + float saturationFactor; + float detailFactor; + // Mantiuk 08 + float colorSaturation, + contrastEnhancement, + luminanceLevel; + bool manualLuminanceLevel; + // Pattanaik + float multiplier, + rod, + cone; + bool autolum, + local; + // Reinhard 02 + bool scales; + float key, + phi; + int irange, + lower, + upper; + // Reinhard 05 + float brightness, + chromaticAdaptation, + lightAdaptation; + // Pre-gamma + float pregamma; - switch (tmopts->tmoperator) { - case ashikhmin: + switch (tmopts->tmoperator) { + case ashikhmin: m_Ui->stackedWidget_operators->setCurrentIndex(ashikhmin); - simple = tmopts->operator_options.ashikhminoptions.simple; - eq2 = tmopts->operator_options.ashikhminoptions.eq2; - lct = tmopts->operator_options.ashikhminoptions.lct; - pregamma = tmopts->pregamma; + simple = tmopts->operator_options.ashikhminoptions.simple; + eq2 = tmopts->operator_options.ashikhminoptions.eq2; + lct = tmopts->operator_options.ashikhminoptions.lct; + pregamma = tmopts->pregamma; m_Ui->simpleCheckBox->setChecked(simple); - if (eq2) + if (eq2) m_Ui->eq2RadioButton->setChecked(true); - else + else m_Ui->eq4RadioButton->setChecked(true); m_Ui->contrastSlider->setValue(lct); m_Ui->contrastdsb->setValue(lct); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case drago: + break; + case drago: m_Ui->stackedWidget_operators->setCurrentIndex(drago); - bias = tmopts->operator_options.dragooptions.bias; - pregamma = tmopts->pregamma; + bias = tmopts->operator_options.dragooptions.bias; + pregamma = tmopts->pregamma; m_Ui->biasSlider->setValue(bias); m_Ui->biasdsb->setValue(bias); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case durand: + break; + case durand: m_Ui->stackedWidget_operators->setCurrentIndex(durand); - spatial = tmopts->operator_options.durandoptions.spatial; - range = tmopts->operator_options.durandoptions.range; - base = tmopts->operator_options.durandoptions.base; - pregamma = tmopts->pregamma; + spatial = tmopts->operator_options.durandoptions.spatial; + range = tmopts->operator_options.durandoptions.range; + base = tmopts->operator_options.durandoptions.base; + pregamma = tmopts->pregamma; m_Ui->spatialSlider->setValue(spatial); m_Ui->spatialdsb->setValue(spatial); m_Ui->rangeSlider->setValue(range); @@ -1360,15 +1364,15 @@ m_Ui->basedsb->setValue(base); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case fattal: + break; + case fattal: m_Ui->stackedWidget_operators->setCurrentIndex(fattal); - alpha = tmopts->operator_options.fattaloptions.alpha; - beta = tmopts->operator_options.fattaloptions.beta; - colorSat = tmopts->operator_options.fattaloptions.color; - noiseReduction = tmopts->operator_options.fattaloptions.noiseredux; - fftsolver = tmopts->operator_options.fattaloptions.fftsolver; - pregamma = tmopts->pregamma; + alpha = tmopts->operator_options.fattaloptions.alpha; + beta = tmopts->operator_options.fattaloptions.beta; + colorSat = tmopts->operator_options.fattaloptions.color; + noiseReduction = tmopts->operator_options.fattaloptions.noiseredux; + fftsolver = tmopts->operator_options.fattaloptions.fftsolver; + pregamma = tmopts->pregamma; m_Ui->alphaSlider->setValue(alpha); m_Ui->alphadsb->setValue(alpha); m_Ui->betaSlider->setValue(beta); @@ -1380,30 +1384,30 @@ m_Ui->fftVersionCheckBox->setChecked(fftsolver); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case ferradans: + break; + case ferradans: m_Ui->stackedWidget_operators->setCurrentIndex(ferradans); - rho = tmopts->operator_options.ferradansoptions.rho; - inv_alpha = tmopts->operator_options.ferradansoptions.inv_alpha; - pregamma = tmopts->pregamma; + rho = tmopts->operator_options.ferradansoptions.rho; + inv_alpha = tmopts->operator_options.ferradansoptions.inv_alpha; + pregamma = tmopts->pregamma; m_Ui->rhoSlider->setValue(rho); m_Ui->rhodsb->setValue(rho); m_Ui->inv_alphaSlider->setValue(inv_alpha); m_Ui->inv_alphadsb->setValue(inv_alpha); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case mai: + break; + case mai: m_Ui->stackedWidget_operators->setCurrentIndex(mai); - pregamma = tmopts->pregamma; - break; - case mantiuk06: + pregamma = tmopts->pregamma; + break; + case mantiuk06: m_Ui->stackedWidget_operators->setCurrentIndex(mantiuk06); - contrastEqualization = tmopts->operator_options.mantiuk06options.contrastequalization; - contrastFactor = tmopts->operator_options.mantiuk06options.contrastfactor; - saturationFactor = tmopts->operator_options.mantiuk06options.saturationfactor; - detailFactor = tmopts->operator_options.mantiuk06options.detailfactor; - pregamma = tmopts->pregamma; + contrastEqualization = tmopts->operator_options.mantiuk06options.contrastequalization; + contrastFactor = tmopts->operator_options.mantiuk06options.contrastfactor; + saturationFactor = tmopts->operator_options.mantiuk06options.saturationfactor; + detailFactor = tmopts->operator_options.mantiuk06options.detailfactor; + pregamma = tmopts->pregamma; m_Ui->contrastEqualizCheckBox->setChecked(contrastEqualization); m_Ui->contrastFactorSlider->setValue(contrastFactor); m_Ui->contrastFactordsb->setValue(contrastFactor); @@ -1413,14 +1417,14 @@ m_Ui->detailFactordsb->setValue(detailFactor); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case mantiuk08: + break; + case mantiuk08: m_Ui->stackedWidget_operators->setCurrentIndex(mantiuk08); - colorSaturation = tmopts->operator_options.mantiuk08options.colorsaturation; - contrastEnhancement = tmopts->operator_options.mantiuk08options.contrastenhancement; - luminanceLevel = tmopts->operator_options.mantiuk08options.luminancelevel; - manualLuminanceLevel = tmopts->operator_options.mantiuk08options.setluminance; - pregamma = tmopts->pregamma; + colorSaturation = tmopts->operator_options.mantiuk08options.colorsaturation; + contrastEnhancement = tmopts->operator_options.mantiuk08options.contrastenhancement; + luminanceLevel = tmopts->operator_options.mantiuk08options.luminancelevel; + manualLuminanceLevel = tmopts->operator_options.mantiuk08options.setluminance; + pregamma = tmopts->pregamma; m_Ui->colorSaturationSlider->setValue(colorSaturation); m_Ui->colorSaturationDSB->setValue(colorSaturation); m_Ui->contrastEnhancementSlider->setValue(contrastEnhancement); @@ -1430,15 +1434,15 @@ m_Ui->luminanceLevelCheckBox->setChecked(manualLuminanceLevel); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case pattanaik: + break; + case pattanaik: m_Ui->stackedWidget_operators->setCurrentIndex(pattanaik); - multiplier = tmopts->operator_options.pattanaikoptions.multiplier; - rod = tmopts->operator_options.pattanaikoptions.rod; - cone = tmopts->operator_options.pattanaikoptions.cone; - autolum = tmopts->operator_options.pattanaikoptions.autolum; - local = tmopts->operator_options.pattanaikoptions.local; - pregamma = tmopts->pregamma; + multiplier = tmopts->operator_options.pattanaikoptions.multiplier; + rod = tmopts->operator_options.pattanaikoptions.rod; + cone = tmopts->operator_options.pattanaikoptions.cone; + autolum = tmopts->operator_options.pattanaikoptions.autolum; + local = tmopts->operator_options.pattanaikoptions.local; + pregamma = tmopts->pregamma; m_Ui->multiplierSlider->setValue(multiplier); m_Ui->multiplierdsb->setValue(multiplier); m_Ui->coneSlider->setValue(cone); @@ -1449,16 +1453,16 @@ m_Ui->autoYcheckbox->setChecked(autolum); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case reinhard02: + break; + case reinhard02: m_Ui->stackedWidget_operators->setCurrentIndex(reinhard02); - scales = tmopts->operator_options.reinhard02options.scales; - key = tmopts->operator_options.reinhard02options.key; - phi = tmopts->operator_options.reinhard02options.phi; - irange = tmopts->operator_options.reinhard02options.range; - lower = tmopts->operator_options.reinhard02options.lower; - upper = tmopts->operator_options.reinhard02options.upper; - pregamma = tmopts->pregamma; + scales = tmopts->operator_options.reinhard02options.scales; + key = tmopts->operator_options.reinhard02options.key; + phi = tmopts->operator_options.reinhard02options.phi; + irange = tmopts->operator_options.reinhard02options.range; + lower = tmopts->operator_options.reinhard02options.lower; + upper = tmopts->operator_options.reinhard02options.upper; + pregamma = tmopts->pregamma; m_Ui->usescalescheckbox->setChecked(scales); m_Ui->keySlider->setValue(key); m_Ui->keydsb->setValue(key); @@ -1472,13 +1476,13 @@ m_Ui->upperdsb->setValue(upper); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - case reinhard05: + break; + case reinhard05: m_Ui->stackedWidget_operators->setCurrentIndex(reinhard05); - brightness = tmopts->operator_options.reinhard05options.brightness; - chromaticAdaptation = tmopts->operator_options.reinhard05options.chromaticAdaptation; - lightAdaptation = tmopts->operator_options.reinhard05options.lightAdaptation; - pregamma = tmopts->pregamma; + brightness = tmopts->operator_options.reinhard05options.brightness; + chromaticAdaptation = tmopts->operator_options.reinhard05options.chromaticAdaptation; + lightAdaptation = tmopts->operator_options.reinhard05options.lightAdaptation; + pregamma = tmopts->pregamma; m_Ui->brightnessSlider->setValue(brightness); m_Ui->brightnessdsb->setValue(brightness); m_Ui->chromaticAdaptSlider->setValue(chromaticAdaptation); @@ -1487,205 +1491,205 @@ m_Ui->lightAdaptdsb->setValue(lightAdaptation); m_Ui->pregammaSlider->setValue(pregamma); m_Ui->pregammadsb->setValue(pregamma); - break; - } + break; + } if (dialog.wantsTonemap()) { TonemappingOptions *t = new TonemappingOptions(*tmopts); - toneMappingOptionsToDelete.push_back(t); + toneMappingOptionsToDelete.push_back(t); t->origxsize = sizes[0]; t->xsize = sizes[0]; emit startTonemapping(t); } setRealtimePreviews(luminance_options->isRealtimePreviewsActive()); delete luminance_options; - } + } } void TonemappingPanel::execMantiuk06Query(bool contrastEqualization, float contrastFactor, float saturationFactor, - float detailFactor, QString comment) + float detailFactor, QString comment) { - qDebug() << "TonemappingPanel::execMantiuk06Query"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execMantiuk06Query"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO mantiuk06 (contrastEqualization, contrastFactor, saturationFactor, detailFactor, pregamma, comment) " - "VALUES (:contrastEqualization, :contrastFactor, :saturationFactor, :detailFactor, :pregamma, :comment)"); - query.bindValue(":contrastEqualization", contrastEqualization); - query.bindValue(":contrastFactor", contrastFactor); - query.bindValue(":saturationFactor", saturationFactor); - query.bindValue(":detailFactor", detailFactor); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO mantiuk06 (contrastEqualization, contrastFactor, saturationFactor, detailFactor, pregamma, comment) " + "VALUES (:contrastEqualization, :contrastFactor, :saturationFactor, :detailFactor, :pregamma, :comment)"); + query.bindValue(":contrastEqualization", contrastEqualization); + query.bindValue(":contrastFactor", contrastFactor); + query.bindValue(":saturationFactor", saturationFactor); + query.bindValue(":detailFactor", detailFactor); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execMantiuk08Query(float colorSaturation, float contrastEnhancement, float luminanceLevel, - bool manualLuminanceLevel, QString comment) + bool manualLuminanceLevel, QString comment) { - qDebug() << "TonemappingPanel::execMantiuk08Query"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execMantiuk08Query"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO mantiuk08 (colorSaturation, contrastEnhancement, luminanceLevel, manualLuminanceLevel, pregamma, comment) " - "VALUES (:colorSaturation, :contrastEnhancement, :luminanceLevel, :manualLuminanceLevel, :pregamma, :comment)"); - query.bindValue(":colorSaturation", colorSaturation); - query.bindValue(":contrastEnhancement", contrastEnhancement); - query.bindValue(":luminanceLevel", luminanceLevel); - query.bindValue(":manualLuminanceLevel", manualLuminanceLevel); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO mantiuk08 (colorSaturation, contrastEnhancement, luminanceLevel, manualLuminanceLevel, pregamma, comment) " + "VALUES (:colorSaturation, :contrastEnhancement, :luminanceLevel, :manualLuminanceLevel, :pregamma, :comment)"); + query.bindValue(":colorSaturation", colorSaturation); + query.bindValue(":contrastEnhancement", contrastEnhancement); + query.bindValue(":luminanceLevel", luminanceLevel); + query.bindValue(":manualLuminanceLevel", manualLuminanceLevel); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execAshikhminQuery(bool simple, bool eq2, float lct, QString comment) { - qDebug() << "TonemappingPanel::execAshikhminQuery"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execAshikhminQuery"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO ashikhmin (simple, eq2, lct, pregamma, comment) " - "VALUES (:simple, :eq2, :lct, :pregamma, :comment)"); - query.bindValue(":simple", simple); - query.bindValue(":eq2", eq2); - query.bindValue(":lct", lct); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO ashikhmin (simple, eq2, lct, pregamma, comment) " + "VALUES (:simple, :eq2, :lct, :pregamma, :comment)"); + query.bindValue(":simple", simple); + query.bindValue(":eq2", eq2); + query.bindValue(":lct", lct); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execDragoQuery(float bias, QString comment) { - qDebug() << "TonemappingPanel::execDragoQuery"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execDragoQuery"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO drago (bias, pregamma, comment) " - "VALUES (:bias, :pregamma, :comment)"); - query.bindValue(":bias", bias); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO drago (bias, pregamma, comment) " + "VALUES (:bias, :pregamma, :comment)"); + query.bindValue(":bias", bias); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execDurandQuery(float spatial, float range, float base, QString comment) { - qDebug() << "TonemappingPanel::execDurandQuery"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execDurandQuery"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO durand (spatial, range, base, pregamma, comment) " - "VALUES (:spatial, :range, :base, :pregamma, :comment)"); - query.bindValue(":spatial", spatial); - query.bindValue(":base", base); - query.bindValue(":range", range); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO durand (spatial, range, base, pregamma, comment) " + "VALUES (:spatial, :range, :base, :pregamma, :comment)"); + query.bindValue(":spatial", spatial); + query.bindValue(":base", base); + query.bindValue(":range", range); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execFattalQuery(float alpha, float beta, float colorSaturation, float noiseReduction, bool oldFattal, QString comment) { - qDebug() << "TonemappingPanel::execFattalQuery"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execFattalQuery"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO fattal (alpha, beta, colorSaturation, noiseReduction, oldFattal, pregamma, comment) " - "VALUES (:alpha, :beta, :colorSaturation, :noiseReduction, :oldFattal, :pregamma, :comment)"); - query.bindValue(":alpha", alpha); - query.bindValue(":beta", beta); - query.bindValue(":colorSaturation", colorSaturation); - query.bindValue(":noiseReduction", noiseReduction); + query.prepare("INSERT INTO fattal (alpha, beta, colorSaturation, noiseReduction, oldFattal, pregamma, comment) " + "VALUES (:alpha, :beta, :colorSaturation, :noiseReduction, :oldFattal, :pregamma, :comment)"); + query.bindValue(":alpha", alpha); + query.bindValue(":beta", beta); + query.bindValue(":colorSaturation", colorSaturation); + query.bindValue(":noiseReduction", noiseReduction); query.bindValue(":oldFattal", oldFattal); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execFerradansQuery(float rho, float inv_alpha, QString comment) { - qDebug() << "TonemappingPanel::execFerradansQuery"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execFerradansQuery"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO ferradans (rho, inv_alpha, pregamma, comment) " - "VALUES (:rho, :inv_alpha, :pregamma, :comment)"); - query.bindValue(":rho", rho); - query.bindValue(":inv_alpha", inv_alpha); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO ferradans (rho, inv_alpha, pregamma, comment) " + "VALUES (:rho, :inv_alpha, :pregamma, :comment)"); + query.bindValue(":rho", rho); + query.bindValue(":inv_alpha", inv_alpha); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execPattanaikQuery(bool autolum, bool local, float cone, float rod, float multiplier, QString comment) { - qDebug() << "TonemappingPanel::execPattanaikQuery"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execPattanaikQuery"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO pattanaik (autolum, local, cone, rod, multiplier, pregamma, comment) " - "VALUES (:autolum, :local, :cone, :rod, :multiplier, :pregamma, :comment)"); - query.bindValue(":autolum", autolum); - query.bindValue(":local", local); - query.bindValue(":cone", cone); - query.bindValue(":rod", rod); - query.bindValue(":multiplier", multiplier); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO pattanaik (autolum, local, cone, rod, multiplier, pregamma, comment) " + "VALUES (:autolum, :local, :cone, :rod, :multiplier, :pregamma, :comment)"); + query.bindValue(":autolum", autolum); + query.bindValue(":local", local); + query.bindValue(":cone", cone); + query.bindValue(":rod", rod); + query.bindValue(":multiplier", multiplier); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execReinhard02Query(bool scales, float key, float phi, int range, int lower, int upper, QString comment) { - qDebug() << "TonemappingPanel::execReinhard02Query"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execReinhard02Query"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO reinhard02 (scales, key, phi, range, lower, upper, pregamma, comment) " - "VALUES (:scales, :key, :phi, :range, :lower, :upper, :pregamma, :comment)"); - query.bindValue(":scales", scales); - query.bindValue(":key", key); - query.bindValue(":phi", phi); - query.bindValue(":range", range); - query.bindValue(":lower", lower); - query.bindValue(":upper", upper); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO reinhard02 (scales, key, phi, range, lower, upper, pregamma, comment) " + "VALUES (:scales, :key, :phi, :range, :lower, :upper, :pregamma, :comment)"); + query.bindValue(":scales", scales); + query.bindValue(":key", key); + query.bindValue(":phi", phi); + query.bindValue(":range", range); + query.bindValue(":lower", lower); + query.bindValue(":upper", upper); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } void TonemappingPanel::execReinhard05Query(float brightness, float chromaticAdaptation, float lightAdaptation, QString comment) { - qDebug() << "TonemappingPanel::execReinhard05Query"; - QSqlDatabase db = QSqlDatabase::database(); - QSqlQuery query(db); + qDebug() << "TonemappingPanel::execReinhard05Query"; + QSqlDatabase db = QSqlDatabase::database(); + QSqlQuery query(db); float pregamma = m_Ui->pregammadsb->value(); - query.prepare("INSERT INTO reinhard05 (brightness, chromaticAdaptation, lightAdaptation, pregamma, comment) " - "VALUES (:brightness, :chromaticAdaptation, :lightAdaptation, :pregamma, :comment)"); - query.bindValue(":brightness", brightness); - query.bindValue(":chromaticAdaptation", chromaticAdaptation); - query.bindValue(":lightAdaptation", lightAdaptation); - query.bindValue(":pregamma", pregamma); - query.bindValue(":comment", comment); - bool res = query.exec(); - if (res == false) - qDebug() << query.lastError(); + query.prepare("INSERT INTO reinhard05 (brightness, chromaticAdaptation, lightAdaptation, pregamma, comment) " + "VALUES (:brightness, :chromaticAdaptation, :lightAdaptation, :pregamma, :comment)"); + query.bindValue(":brightness", brightness); + query.bindValue(":chromaticAdaptation", chromaticAdaptation); + query.bindValue(":lightAdaptation", lightAdaptation); + query.bindValue(":pregamma", pregamma); + query.bindValue(":comment", comment); + bool res = query.exec(); + if (res == false) + qDebug() << query.lastError(); } bool TonemappingPanel::replaceLdr() @@ -1693,11 +1697,16 @@ return m_Ui->replaceLdrCheckBox->isChecked(); } -bool TonemappingPanel::getAutoLevels() +bool TonemappingPanel::doAutoLevels() { return m_Ui->autoLevelsCheckBox->isChecked(); } +float TonemappingPanel::getAutoLevelsThreshold() +{ + return m_autolevelThreshold; +} + void TonemappingPanel::updatePreviews(double v) { int index = m_Ui->stackedWidget_operators->currentIndex(); @@ -1972,4 +1981,35 @@ disconnect(m_Ui->eq2RadioButton, SIGNAL(toggled(bool)), this, SLOT(updatePreviewsRB(bool))); } } + +void TonemappingPanel::on_pattalocal_toggled(bool b) +{ + bool autoY = m_Ui->autoYcheckbox->isChecked(); + + m_Ui->label_cone->setDisabled(b || autoY); + m_Ui->coneSlider->setDisabled(b || autoY); + m_Ui->conedsb->setDisabled(b || autoY); + m_Ui->label_rod->setDisabled(b || autoY); + m_Ui->rodSlider->setDisabled(b || autoY); + m_Ui->roddsb->setDisabled(b || autoY); +} + +void TonemappingPanel::autoLevels(bool b) +{ + emit autoLevels(b, m_autolevelThreshold); +} + +void TonemappingPanel::on_toolButtonThreshold_clicked() +{ + QPoint pos = mapToGlobal(m_Ui->toolButtonThreshold->pos()); + m_thd->move(pos.x() - 40, pos.y() - 20); + m_thd->show(); +} + +void TonemappingPanel::thresholdReady() +{ + m_autolevelThreshold = m_thd->threshold(); + m_thd->hide(); + emit autoLevels(doAutoLevels(), m_autolevelThreshold); +} // ------------------------- // END FILE diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingPanel.h luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingPanel.h --- luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingPanel.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingPanel.h 2017-05-10 19:14:06.000000000 +0000 @@ -33,6 +33,7 @@ #include "Core/TonemappingOptions.h" #include "Libpfs/frame.h" #include "PreviewPanel/PreviewPanel.h" +#include "ThresholdWidget.h" class Gang; class QtWaitingSpinner; @@ -98,7 +99,7 @@ TMOperator currentTmoOperator; TonemappingOptions *toneMappingOptions; - QList toneMappingOptionsToDelete; + QList toneMappingOptionsToDelete; QVector sizes; void fillToneMappingOptions(bool exportMode); void setupUndo(); @@ -115,10 +116,12 @@ int m_mainWinNumber; pfs::Frame *m_currentFrame; + float m_autolevelThreshold; + QScopedPointer m_thd; QScopedPointer m_Ui; protected Q_SLOTS: - virtual void changeEvent(QEvent* event); + virtual void changeEvent(QEvent* event); void on_pregammadefault_clicked(); void on_defaultButton_clicked(); void on_applyButton_clicked(); @@ -127,7 +130,7 @@ void on_savesettingsbutton_clicked(); void on_loadsettingsbutton_clicked(); void on_queueButton_clicked(); - void on_lblOpenQueue_linkActivated(const QString& link); + void on_lblOpenQueue_linkActivated(const QString& link); //APPLY tmo settings from text file void fromTxt2Gui(); @@ -136,46 +139,52 @@ void fillCustomSizeComboBox(); void updateCurrentTmoOperator(int); void updateUndoState(); - void loadParameters(); - void saveParameters(); - void execMantiuk06Query(bool, float, float, float, QString); - void execMantiuk08Query(float, float, float, bool, QString); - void execAshikhminQuery(bool, bool, float, QString); - void execDragoQuery(float, QString); - void execDurandQuery(float, float, float, QString); - void execFattalQuery(float, float, float, float, bool, QString); - void execFerradansQuery(float, float, QString); - void execPattanaikQuery(bool, bool, float, float, float, QString); - void execReinhard02Query(bool, float, float, int, int, int, QString); - void execReinhard05Query(float, float, float, QString); - + void loadParameters(); + void saveParameters(); + void execMantiuk06Query(bool, float, float, float, QString); + void execMantiuk08Query(float, float, float, bool, QString); + void execAshikhminQuery(bool, bool, float, QString); + void execDragoQuery(float, QString); + void execDurandQuery(float, float, float, QString); + void execFattalQuery(float, float, float, float, bool, QString); + void execFerradansQuery(float, float, QString); + void execPattanaikQuery(bool, bool, float, float, float, QString); + void execReinhard02Query(bool, float, float, int, int, int, QString); + void execReinhard05Query(float, float, float, QString); + void updatePreviews(double); void updatePreviewsCB(int); void updatePreviewsRB(bool); + void on_pattalocal_toggled(bool); + void on_toolButtonThreshold_clicked(); + void thresholdReady(); + public: TonemappingPanel(int mainWinNumber, PreviewPanel *p = 0, QWidget *parent = 0); ~TonemappingPanel(); void setSizes(int, int); - bool replaceLdr(); - bool getAutoLevels(); - void setExportQueueSize(int); + bool replaceLdr(); + bool doAutoLevels(); + float getAutoLevelsThreshold(); + void setExportQueueSize(int); public Q_SLOTS: void setEnabled(bool); void updatedHDR(pfs::Frame*); void updateTonemappingParams(TonemappingOptions *opts); void setRealtimePreviews(bool); + void autoLevels(bool b); signals: void startTonemapping(TonemappingOptions*); void startExport(TonemappingOptions*); - void autoLevels(bool); + void autoLevels(bool, float); private: void onUndoRedo(bool undo); - QtWaitingSpinner* m_spinner; + QtWaitingSpinner* m_spinner; }; diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingPanel.ui luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingPanel.ui --- luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingPanel.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingPanel.ui 2017-05-10 19:14:06.000000000 +0000 @@ -9,12 +9,12 @@ 0 0 - 514 - 672 + 511 + 590 - + 0 0 @@ -24,21 +24,279 @@ :/icons/luminance-hdr.png:/icons/luminance-hdr.png - - - - true - + + + + + + + 0 + 0 + + + + + + + Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. + + + Tone Mapping Settings + + + + 4 + + + 4 + + + 4 + + + 4 + + + + + + + + 0 + 0 + + + + + 16777215 + 33 + + + + Save current parameters to a text file + + + Save current parameters (pregamma and TMO) to a text file. + + + + .. + + + + + + + + 0 + 0 + + + + + 16777215 + 33 + + + + Load an existing text file containing pregamma and TMO settings + + + Load an existing text file containing pregamma and TMO settings. + + + + .. + + + + + + + + 0 + 0 + + + + + 16777215 + 33 + + + + Save current parameters + + + + .. + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 0 + 20 + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 33 + + + + Load saved parameters + + + + .. + + + + + + + + + + + + + 0 + 0 + + + + Export + + + + 6 + + + + + + + + 0 + 0 + + + + Fast export + + + + .. + + + Qt::ToolButtonTextBesideIcon + + + + + + + + 0 + 0 + + + + Opens the current export direcotory. This can be changed in the preferences! + + + <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> + + + false + + + Qt::LinksAccessibleByMouse + + + + + + + 0 + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 0 + 20 + + + + + + + + + + + + + + + + + + + + - + 0 0 + + + + + Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. + - Tonemap + Process - + 4 @@ -51,1049 +309,476 @@ 4 - - - - - - 0 + + + + + + + 0 + 0 + - + + Result Si&ze + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + true - - - Mantiuk '06 - - - - - Mantiuk '08 - - - - - Fattal - - - - - Ferradans - - - - - Drago - - - - - Durand - - - - - Reinhard '02 - - - - - Reinhard '05 - - - - - Ashikhmin - - - - - Pattanaik - - - - - Mai - - + + 1 + + + sizeComboBox + - - - - - 100 - 0 - + + + + Gamma applied before tonemapping - - - 100 - 16777215 - + + Qt::AlignCenter - - Operator + + QAbstractSpinBox::NoButtons - - Qt::RichText + + 2 - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + 0.100000000000000 + + + 5.000000000000000 + + + 0.100000000000000 + + + 1.000000000000000 - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - 0 - - - - - 0 - 0 - - - - - 0 + + + + + 0 + 0 + - - 0 + + Gamma applied before tonemapping - - 0 + + Pre-&gamma - - 0 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - Contrast Factor - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - Qt::LeftToRight - - - Saturation Factor - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - - 0 - 0 - - - - PointingHandCursor - - - 0 - - - 1000 - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - PointingHandCursor - - - 1000 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 0.000000000000000 - - - 1.000000000000000 - - - 0.200000000000000 - - - 0.100000000000000 - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 0.000000000000000 - - - 2.000000000000000 - - - 0.200000000000000 - - - 0.800000000000000 - - - - - - - true - - - Qt::LeftToRight - - - Detail Factor - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - true - - - - 0 - 0 - - - - PointingHandCursor - - - 1000 - - - Qt::Horizontal - - - - - - - true - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 1 - - - 1.000000000000000 - - - 99.000000000000000 - - - 1.000000000000000 - - - 1.000000000000000 - - - - - - - - 0 - 0 - - - - Contrast Equalization - - - - - - - Qt::Vertical - - - - 0 - 0 - - - - - - - - - - - - 0 - 0 - - - - - 0 - - - 0 + + 1 - - 0 + + -1 - - 0 + + pregammaSlider - - - - - - Predefined Display - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - - 0 - 0 - - - - - Lcd Office - - - - - Lcd - - - - - Lcd Bright - - - - - CRT - - - - - - - - Color Saturation - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - Contrast Enhancement - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - - 0 - 0 - - - - Enable -Luminace Level - - - - - - - false - - - - 100 - 0 - - - - - 100 - 16777215 - - - - Luminance Level - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - false - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 100.000000000000000 - - - - - - - false - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 0.010000000000000 - - - 10.000000000000000 - - - 0.100000000000000 - - - - - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2.000000000000000 - - - 0.100000000000000 - - - 1.000000000000000 - - - - - - - 100 - - - Qt::Horizontal - - - - - - - Qt::Vertical - - - - 0 - 0 - - - - - + + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 31 + 0 + + + + + 16777215 + 16777215 + + + + Restore pregamma's default value (1) + + + + + + + .. + + + + 10 + 10 + + + - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - - Alpha - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - true - - - PointingHandCursor - - - 100 - - - Qt::Horizontal - - - - - - - true - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 0.000000000000000 - - - 2.000000000000000 - - - 0.050000000000000 - - - 1.000000000000000 - - - - - - - Beta - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - PointingHandCursor - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 0.100000000000000 - - - 2.000000000000000 - - - 0.050000000000000 - - - 0.900000000000000 - - - - - - - Color Saturation - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - PointingHandCursor - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 1.500000000000000 - - - 0.050000000000000 - - - 0.800000000000000 - - - - - - - Noise Reduction - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - PointingHandCursor - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 1.000000000000000 - - - 0.010000000000000 - - - 0.000000000000000 - - - - - - - Qt::Vertical - - - - 0 - 0 - - - - - - - - Version 2.3.0 - - - true - - - - + + + + + + + + 0 + 0 + + + + Size of the resulting LDR image + + + Here you can choose the size of the resulting LDR image. + + + QComboBox::NoInsert + + + + + + + + 0 + 0 + + + + + 31 + 0 + + + + + 16777215 + 16777215 + + + + + 0 + 0 + + + + PointingHandCursor + + + Set Custom Output Size + + + Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. + + + Qt::LeftToRight + + + + .. + + + + 10 + 10 + + + - - - - - - - - - -100 - - - 0 - - - -40 - - - Qt::Horizontal - - - - - - - Inverse Alpha - - - - - - - Rho - - - - - - - Qt::Horizontal - - - - - - - 10.000000000000000 - - - 0.100000000000000 - - - 5.000000000000000 - - - - - - - 2 - - - -5.000000000000000 - - - 0.000000000000000 - - - 0.100000000000000 - - - -2.000000000000000 - - - - - - - Qt::Vertical - - - - 312 - 13 - - - - - - - - - - - - 0 - 0 - - - - - 0 - - - 0 + + + + + + + + + + + + + 0 + 0 + + + + Start tonemapping (CTRL+T) + + + Use current parameters above (pregamma and tone mapping operator) to compute an LDR image + + + &Update preview + + + Ctrl+T + + + + + + + + 0 + 0 + + + + Qt::RightToLeft + + + Update current LDR + + + true + + + true + + + + + + + + 0 + 0 + + + + Qt::RightToLeft + + + Auto Levels + + + true + + + + + + + true + + + <html><head/><body><p>set auto levels threshold</p></body></html> + + + ... + + + Qt::ToolButtonIconOnly + + + Qt::DownArrow + + + + + + + + + true + + + + 0 + 0 + + + + Tonemap + + + + 4 + + + 4 + + + 4 + + + 4 + + + + + + + + 0 + 0 + - + 0 - - 0 + + true - - - - - - Bias - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - PointingHandCursor - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 0.000000000000000 - - - 1.000000000000000 - - - 0.010000000000000 - - - 0.850000000000000 - - - - - - - Qt::Vertical - - - - 0 - 0 - - - - - + + + Mantiuk '06 + - - - - - - 0 - 0 - - - - + + + Mantiuk '08 + + + + + Fattal + + + + + Ferradans + + + + + Drago + + + + + Durand + + + + + Reinhard '02 + + + + + Reinhard '05 + + + + + Ashikhmin + + + + + Pattanaik + + + + + Mai + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Operator + + + Qt::RichText + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + QFrame::NoFrame + + + QFrame::Plain + + + 0 + + + + + 0 + 0 + + + + 0 @@ -1106,17 +791,42 @@ 0 - + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Contrast Factor + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + - + - + 0 0 + + Qt::LeftToRight + - Spatial Kernel Sigma + Saturation Factor Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1126,10 +836,10 @@ - - + + - + 0 0 @@ -1137,8 +847,11 @@ PointingHandCursor + + 0 + - 100 + 1000 Qt::Horizontal @@ -1146,9 +859,31 @@ - - - true + + + + 0 + 0 + + + + PointingHandCursor + + + 1000 + + + Qt::Horizontal + + + + + + + + 0 + 0 + Qt::AlignCenter @@ -1156,27 +891,70 @@ QAbstractSpinBox::NoButtons + + 2 + + + 0.000000000000000 + - 100.000000000000000 + 1.000000000000000 - 1.000000000000000 + 0.200000000000000 + 0.100000000000000 + + + + + + + + 0 + 0 + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 2 + + + 0.000000000000000 + + 2.000000000000000 + + 0.200000000000000 + + + 0.800000000000000 + - + + + true + - + 0 0 + + Qt::LeftToRight + - Range Kernel Sigma + Detail Factor Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1186,10 +964,13 @@ - - + + + + true + - + 0 0 @@ -1198,114 +979,88 @@ PointingHandCursor - 100 + 1000 Qt::Horizontal - - + + + + true + + + + 0 + 0 + + Qt::AlignCenter QAbstractSpinBox::NoButtons + + 1 + - 0.010000000000000 + 1.000000000000000 - 10.000000000000000 + 99.000000000000000 - 0.100000000000000 + 1.000000000000000 - 0.400000000000000 + 1.000000000000000 - - - - Qt::Vertical - - - - 0 - 0 - - - - - - + + - + 0 0 - Base Contrast - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true + Contrast Equalization - - - - - 0 - 0 - - - - PointingHandCursor - - - 100 - + + - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons + Qt::Vertical - - 10.000000000000000 + + QSizePolicy::MinimumExpanding - - 5.000000000000000 + + + 0 + 0 + - + - + - + 0 0 - + 0 @@ -1319,11 +1074,17 @@ 0 - + - + + + + 0 + 0 + + - Key Value + Predefined Display Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1334,47 +1095,45 @@ - + - + 0 0 - - PointingHandCursor - - - 100 - - - Qt::Horizontal - - - - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 1.000000000000000 - - - 0.010000000000000 - - - 0.180000000000000 - + + + Lcd Office + + + + + Lcd + + + + + Lcd Bright + + + + + CRT + + - + + + + 0 + 0 + + - Phi + Color Saturation Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1384,48 +1143,46 @@ - - + + - + 0 0 - - PointingHandCursor + + Contrast Enhancement - - 1000 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - Qt::Horizontal + + true - - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 100.000000000000000 - - - 1.000000000000000 + + + + + 0 + 0 + - - 1.000000000000000 + + Enable +Luminace Level - - + + + + false + - + 0 0 @@ -1433,116 +1190,88 @@ 0 - 28 + 0 + + + + + 16777215 + 16777215 - Use Scales + Luminance Level + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true - - + + + + false + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 100.000000000000000 + + + + + false - + 0 0 - - PointingHandCursor - - - 1 - 100 - - 10 - - - 1 - Qt::Horizontal - - - - false - + + Qt::AlignCenter QAbstractSpinBox::NoButtons - - 0 - - 1.000000000000000 + 0.010000000000000 - 32.000000000000000 + 10.000000000000000 - - 8.000000000000000 + + 0.100000000000000 - - - - false - - - Range - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - - - - - false - - - Lower Scale - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - false - + + - + 0 0 - - PointingHandCursor - - - 0 - 100 @@ -1551,64 +1280,33 @@ - - - - false - + + Qt::AlignCenter QAbstractSpinBox::NoButtons - - 0 - - - 1.000000000000000 - - 100.000000000000000 + 2.000000000000000 - 10.000000000000000 + 0.100000000000000 1.000000000000000 - - - - false - - - Upper Scale - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - false - + + - + 0 0 - - PointingHandCursor - - - 0 - 100 @@ -1617,39 +1315,14 @@ - - - - false - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 0 - - - 1.000000000000000 - - - 100.000000000000000 - - - 1.000000000000000 - - - 43.000000000000000 - - - - - + + Qt::Vertical + + QSizePolicy::MinimumExpanding + 0 @@ -1662,14 +1335,14 @@ - + - + 0 0 - + 0 @@ -1683,33 +1356,33 @@ 0 - + - - - - 100 - 0 - - - - - 100 - 16777215 - + + + + 0 + 0 + - Brightness + Alpha Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + true + - + + + true + - + 0 0 @@ -1717,61 +1390,52 @@ PointingHandCursor - - -100 - 100 - - 1 - - - 10 - Qt::Horizontal - + + + true + Qt::AlignCenter QAbstractSpinBox::NoButtons + + 2 + - -20.000000000000000 + 0.000000000000000 - 20.000000000000000 + 2.000000000000000 - 0.100000000000000 + 0.050000000000000 - 0.000000000000000 + 1.000000000000000 - - - - 100 - 0 - - - - - 100 - 16777215 - + + + + 0 + 0 + - Chromatic Adaptation + Beta Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1782,9 +1446,9 @@ - + - + 0 0 @@ -1801,46 +1465,40 @@ - + Qt::AlignCenter QAbstractSpinBox::NoButtons + + 2 + - 0.000000000000000 + 0.100000000000000 - 1.000000000000000 + 2.000000000000000 - 0.100000000000000 + 0.050000000000000 - 0.000000000000000 + 0.900000000000000 - - - - 100 - 0 - - - - - 100 - 16777215 - - - - Qt::LeftToRight + + + + 0 + 0 + - Light Adaptation + Color Saturation Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1851,9 +1509,9 @@ - + - + 0 0 @@ -1870,85 +1528,37 @@ - + Qt::AlignCenter QAbstractSpinBox::NoButtons - - 0.000000000000000 + + 2 - 1.000000000000000 + 1.500000000000000 - 0.100000000000000 + 0.050000000000000 - 1.000000000000000 + 0.800000000000000 - - - - Qt::Vertical + + + + + 0 + 0 + - - - 0 - 0 - - - - - - - - - - - true - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - - - 100 - 0 - - - - - 100 - 16777215 - - - - Local Contrast Threshold + + Noise Reduction Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1958,8 +1568,14 @@ - - + + + + + 0 + 0 + + PointingHandCursor @@ -1971,11 +1587,8 @@ - - - - Qt::StrongFocus - + + Qt::AlignCenter @@ -1989,108 +1602,164 @@ 1.000000000000000 - 0.100000000000000 + 0.010000000000000 - 0.500000000000000 + 0.000000000000000 - - - + + + + Qt::Vertical + + + QSizePolicy::MinimumExpanding + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + Version 2.3.0 + + true + + + + + + + + + + + + - + 0 0 - - - 0 - 28 - + + -100 - - - 16777215 - 28 - + + 100 - - Simple + + -40 + + + Qt::Horizontal - - - - 100 - 0 - - - - - 100 - 16777215 - + + + + 0 + 0 + - Equation Number + Inverse Alpha - Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - true + + + + + + + 0 + 0 + + + + Rho + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - 0 - 0 - - - - Eqn &2 - - - true - - - - - - - - 0 - 0 - - - - Eqn &4 - - - - + + + + 0 + 0 + + + + Qt::Horizontal + + - - + + + + 10.000000000000000 + + + 0.100000000000000 + + + 5.000000000000000 + + + + + + + 2 + + + -10.000000000000000 + + + 10.000000000000000 + + + 0.100000000000000 + + + -2.000000000000000 + + + + + Qt::Vertical + + QSizePolicy::MinimumExpanding + - 0 - 0 + 312 + 13 @@ -2099,14 +1768,14 @@ - + - + 0 0 - + 0 @@ -2120,29 +1789,17 @@ 0 - + - + - + 0 0 - - - 100 - 0 - - - - - 100 - 16777215 - - - Multiplier + Bias Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -2153,9 +1810,9 @@ - + - + 0 0 @@ -2164,7 +1821,7 @@ PointingHandCursor - 1000 + 100 Qt::Horizontal @@ -2172,87 +1829,92 @@ - + Qt::AlignCenter QAbstractSpinBox::NoButtons - - 2 - 0.000000000000000 - 1000.000000000000000 + 1.000000000000000 + + + 0.010000000000000 - 1.000000000000000 + 0.850000000000000 - - - - 0 - 0 - + + + Qt::Vertical - - - 0 - 32 - + + QSizePolicy::MinimumExpanding - + - 16777215 - 32 + 0 + 0 - - Local Tone Mapping - - + - - + + + + + + + + 0 + 0 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + - + 0 0 - - - 0 - 28 - - - - - 16777215 - 28 - - - Auto Cone/Rod + Spatial Kernel Sigma - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + true - - - - false - + + - + 0 0 @@ -2268,31 +1930,38 @@ - - - - false + + + + true + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 100.000000000000000 + + + 1.000000000000000 + + + 2.000000000000000 + + + + - + 0 0 - - - 100 - 0 - - - - - 100 - 16777215 - - - Cone Level + Range Kernel Sigma Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -2302,53 +1971,73 @@ - - - - false + + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + Qt::AlignCenter QAbstractSpinBox::NoButtons + + 0.010000000000000 + - 1.000000000000000 + 10.000000000000000 0.100000000000000 - 0.500000000000000 + 0.400000000000000 - - - - false + + + + Qt::Vertical - - - 0 - 0 - + + QSizePolicy::MinimumExpanding - + - 100 + 0 0 - - - 100 - 16777215 - + + + + + + + 0 + 0 + - Rod Level + Base Contrast Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -2358,13 +2047,10 @@ - - - - false - + + - + 0 0 @@ -2380,11 +2066,8 @@ - - - - false - + + Qt::AlignCenter @@ -2392,665 +2075,1397 @@ QAbstractSpinBox::NoButtons - 1.000000000000000 - - - 0.100000000000000 + 10.000000000000000 - 0.500000000000000 + 5.000000000000000 - - - - Qt::Vertical - - - - 0 - 0 - - - - - - - - - - Qt::Vertical - - - - 20 - 79 - - - - - - - - Qt::Horizontal - - - - 146 - 20 - - - - - - - - This operator has no options - - - - - - - Qt::Horizontal - - - - 146 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 79 - - - - - - - - - - - - - - Restore operator's default values - - - Restore - - - - .. - - - Qt::ToolButtonTextBesideIcon - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - false - - - Previous applied settings - - - Previous - - - - .. - - - Qt::ToolButtonTextBesideIcon - - - - - - - false - - - Next applied settings - - - + + + + 0 + 0 + + + + + 0 - - Next + + 0 - - - .. + + 0 - - Qt::ToolButtonTextBesideIcon + + 0 - - - - - - - - - - - - - - 0 - 0 - - - - - - - Here you can load and save a tone mapping settings file.<br>You can also apply the contents of the currently loaded settings file. - - - Tone Mapping Settings - - - - 4 - - - 4 - - - 4 - - - 4 - - - - - - - 0 - 0 - - - - Save current parameters to a text file - - - Save current parameters (pregamma and TMO) to a text file. - - - &Save to File - - - - .. - - - - - - - - 0 - 0 - - - - Load an existing text file containing pregamma and TMO settings - - - Load an existing text file containing pregamma and TMO settings. - - - &Load from File - - - - .. - - - - - - - Save current parameters - - - ... - - - - .. - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Load saved parameters - - - ... - - - - .. - - + + + + + + 0 + 0 + + + + Key Value + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 1.000000000000000 + + + 0.010000000000000 + + + 0.180000000000000 + + + + + + + + 0 + 0 + + + + Phi + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + 1000 + + + Qt::Horizontal + + + + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 100.000000000000000 + + + 1.000000000000000 + + + 1.000000000000000 + + + + + + + + 0 + 0 + + + + + 0 + 28 + + + + Use Scales + + + + + + + false + + + + 0 + 0 + + + + PointingHandCursor + + + 1 + + + 100 + + + 10 + + + 1 + + + Qt::Horizontal + + + + + + + false + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 0 + + + 1.000000000000000 + + + 32.000000000000000 + + + 8.000000000000000 + + + + + + + false + + + + 0 + 0 + + + + Range + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + false + + + + 0 + 0 + + + + Lower Scale + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + false + + + + 0 + 0 + + + + PointingHandCursor + + + 0 + + + 100 + + + Qt::Horizontal + + + + + + + false + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 0 + + + 1.000000000000000 + + + 100.000000000000000 + + + 10.000000000000000 + + + 1.000000000000000 + + + + + + + false + + + + 0 + 0 + + + + Upper Scale + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + false + + + + 0 + 0 + + + + PointingHandCursor + + + 0 + + + 100 + + + Qt::Horizontal + + + + + + + false + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 0 + + + 1.000000000000000 + + + 100.000000000000000 + + + 1.000000000000000 + + + 43.000000000000000 + + + + + + + Qt::Vertical + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Brightness + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + -100 + + + 100 + + + 1 + + + 10 + + + Qt::Horizontal + + + + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + -20.000000000000000 + + + 20.000000000000000 + + + 0.100000000000000 + + + 0.000000000000000 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Chromatic Adaptation + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 0.000000000000000 + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.000000000000000 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Qt::LeftToRight + + + Light Adaptation + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 0.000000000000000 + + + 1.000000000000000 + + + 0.100000000000000 + + + 1.000000000000000 + + + + + + + Qt::Vertical + + + QSizePolicy::MinimumExpanding + + + + 0 + 0 + + + + + + + + + + + true + + + + 0 + 0 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Local Contrast Threshold + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + + + + Qt::StrongFocus + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 2 + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.500000000000000 + + + + + + + true + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Simple + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Equation Number + + + Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing + + + true + + + + + + + + + + 0 + 0 + + + + Eqn &2 + + + true + + + + + + + + 0 + 0 + + + + Eqn &4 + + + + + + + + + Qt::Vertical + + + QSizePolicy::MinimumExpanding + + + + 0 + 0 + + + + + - - - - - - - - - 0 - 0 - - - - Export - - - - 6 - - - - - - - Fast export - - - - .. - - - Qt::ToolButtonTextBesideIcon - - - - - - - Opens the current export direcotory. This can be changed in the preferences! - - - <html><head/><body><p><a href="Open"><span style=" text-decoration: underline; color:#0000ff;">Open</span></a></p></body></html> - - - false - - - Qt::LinksAccessibleByMouse - - - - - - - 0 - + + + + + 0 + 0 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Multiplier + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + 1000 + + + Qt::Horizontal + + + + + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 2 + + + 0.000000000000000 + + + 1000.000000000000000 + + + 1.000000000000000 + + + + + + + + 0 + 0 + + + + + 0 + 32 + + + + + 16777215 + 32 + + + + Local Tone Mapping + + + + + + + + 0 + 0 + + + + + 0 + 28 + + + + + 16777215 + 28 + + + + Auto Cone/Rod + + + true + + + + + + + false + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + + + + false + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Cone Level + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + false + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.500000000000000 + + + + + + + false + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Rod Level + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + true + + + + + + + false + + + + 0 + 0 + + + + PointingHandCursor + + + 100 + + + Qt::Horizontal + + + + + + + false + + + Qt::AlignCenter + + + QAbstractSpinBox::NoButtons + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.500000000000000 + + + + + + + Qt::Vertical + + + QSizePolicy::MinimumExpanding + + + + 0 + 0 + + + + - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - - - - - - - - - - - - Here you can apply a gamma correction to the HDR.<br>The gamma correction will applied before tone mapping. - - - Process - - - - 4 - - - 4 - - - 4 - - - 4 - - - - - - - Result Si&ze - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - true - - - 1 - - - sizeComboBox - - - - - - - Gamma applied before tonemapping - - - Qt::AlignCenter - - - QAbstractSpinBox::NoButtons - - - 2 - - - 0.100000000000000 - - - 5.000000000000000 - - - 0.100000000000000 - - - 1.000000000000000 - - - - - - - Gamma applied before tonemapping - - - Pre-&gamma - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - 1 - - - -1 - - - pregammaSlider - - - - - - - - - PointingHandCursor - - - Qt::Horizontal - - - - - - - - 0 - 0 - + + + + + + + Qt::Vertical - - - 26 - 26 - + + QSizePolicy::MinimumExpanding - + - 26 - 26 + 20 + 79 - - Restore pregamma's default value (1) - - - + + + + + + Qt::Horizontal - - - .. + + QSizePolicy::MinimumExpanding - + - 10 - 10 + 0 + 20 - + - - - - - - + + - + 0 0 - - Size of the resulting LDR image - - - Here you can choose the size of the resulting LDR image. - - - QComboBox::NoInsert + + This operator has no options - - - - - 26 - 26 - + + + + Qt::Horizontal - - - 26 - 26 - + + QSizePolicy::MinimumExpanding - + 0 - 0 + 20 - - PointingHandCursor - - - Set Custom Output Size - - - Clicking this button you will be able to insert a <i>width</i> value for the size of the resulting LDR image.<br>After pressing Enter (or Return) a height value will be automatically computed and the new size added to the list. - - - Qt::LeftToRight + + + + + + Qt::Vertical - - - .. + + QSizePolicy::MinimumExpanding - + - 10 - 10 + 20 + 79 - + + + + + + + + + + + 0 + 0 + + + + Restore operator's default values + + + Restore + + + + .. + + + Qt::ToolButtonTextBesideIcon + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 0 + 20 + + + + + + + + false + + + + 0 + 0 + + + + Previous applied settings + + + Previous + + + + .. + + + Qt::ToolButtonTextBesideIcon + + + + + + + false + + + + 0 + 0 + + + + Next applied settings + + + + + + Next + + + + .. + + + Qt::ToolButtonTextBesideIcon + + - - - - - - - 0 - 0 - - - - Start tonemapping (CTRL+T) - - - Use current parameters above (pregamma and tone mapping operator) to compute an LDR image - - - &Update preview - - - Ctrl+T - - - - - - - - 0 - 0 - - - - Qt::RightToLeft - - - Update current LDR - - - true - - - true - - - - - - - Qt::RightToLeft - - - Auto Levels - - - true - - - - - @@ -3142,12 +3557,12 @@ setDisabled(bool) - 272 - 180 + 111 + 103 - 247 - 217 + 111 + 105 @@ -3158,12 +3573,12 @@ setDisabled(bool) - 271 - 180 + 111 + 103 - 62 - 219 + 85 + 105 @@ -3174,12 +3589,12 @@ setDisabled(bool) - 272 - 180 + 111 + 103 - 247 - 260 + 111 + 105 @@ -3190,12 +3605,12 @@ setDisabled(bool) - 272 - 180 + 111 + 103 - 436 - 219 + 111 + 105 @@ -3206,12 +3621,12 @@ setDisabled(bool) - 272 - 180 + 111 + 103 - 62 - 262 + 85 + 105 @@ -3222,12 +3637,12 @@ setDisabled(bool) - 272 - 180 + 111 + 103 - 436 - 262 + 111 + 105 @@ -3238,12 +3653,12 @@ setEnabled(bool) - 246 - 227 + 111 + 105 - 62 - 264 + 74 + 105 @@ -3254,12 +3669,12 @@ setEnabled(bool) - 218 - 227 + 111 + 105 - 436 - 264 + 111 + 105 @@ -3270,12 +3685,12 @@ setEnabled(bool) - 269 - 227 + 111 + 105 - 247 - 262 + 111 + 105 @@ -3302,12 +3717,12 @@ setEnabled(bool) - 273 - 164 + 111 + 105 - 247 - 269 + 111 + 105 @@ -3318,12 +3733,12 @@ setDisabled(bool) - 223 - 92 + 111 + 105 - 236 - 266 + 111 + 105 @@ -3334,12 +3749,12 @@ setEnabled(bool) - 273 - 164 + 111 + 105 - 247 - 232 + 111 + 105 @@ -3350,12 +3765,12 @@ setEnabled(bool) - 273 - 164 + 111 + 105 - 62 - 271 + 74 + 105 @@ -3366,12 +3781,12 @@ setDisabled(bool) - 223 - 92 + 111 + 105 - 54 - 271 + 79 + 105 @@ -3382,12 +3797,12 @@ setEnabled(bool) - 273 - 164 + 111 + 105 - 436 - 271 + 111 + 105 @@ -3398,12 +3813,12 @@ setEnabled(bool) - 271 - 164 + 111 + 105 - 247 - 195 + 111 + 105 @@ -3414,12 +3829,12 @@ setEnabled(bool) - 273 - 164 + 111 + 105 - 436 - 234 + 111 + 105 @@ -3430,12 +3845,12 @@ setEnabled(bool) - 273 - 164 + 111 + 105 - 436 - 197 + 111 + 105 @@ -3446,12 +3861,12 @@ setEnabled(bool) - 252 - 164 + 111 + 105 - 62 - 197 + 74 + 105 @@ -3478,12 +3893,12 @@ setEnabled(bool) - 267 - 164 + 111 + 105 - 62 - 234 + 74 + 105 @@ -3494,12 +3909,12 @@ setDisabled(bool) - 223 - 92 + 111 + 105 - 436 - 267 + 111 + 105 @@ -3510,44 +3925,12 @@ setDisabled(bool) - 248 - 111 - - - 248 - 147 - - - - - pattalocal - toggled(bool) - coneSlider - setDisabled(bool) - - - 248 - 111 - - - 248 - 182 - - - - - pattalocal - toggled(bool) - rodSlider - setDisabled(bool) - - - 248 - 111 + 111 + 107 - 248 - 217 + 111 + 103 diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingSettings.cpp luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingSettings.cpp --- luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingSettings.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingSettings.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -68,7 +68,7 @@ m_Ui(new Ui::TonemappingSettings) { m_Ui->setupUi(this); - + m_Ui->splitter->setStretchFactor(0,1); m_Ui->splitter->setStretchFactor(1,10); @@ -80,7 +80,7 @@ fillPreviews(); - if (m_Ui->listWidget->count() != 0) { + if (m_Ui->listWidget->count() != 0) { m_currentIndex = 0; m_Ui->listWidget->setCurrentRow(0); m_previewSettings->selectLabel(0); @@ -122,13 +122,13 @@ eq2 = m_modelPreviews->record(selectedRow).value("eq2").toBool(); lct = m_modelPreviews->record(selectedRow).value("lct").toFloat(); - fillCommonValues(tmoAshikhmin, origxsize, PREVIEW_WIDTH, ashikhmin, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoAshikhmin, origxsize, PREVIEW_WIDTH, ashikhmin, m_modelPreviews->record(selectedRow)); - tmoAshikhmin->operator_options.ashikhminoptions.simple = simple; + tmoAshikhmin->operator_options.ashikhminoptions.simple = simple; tmoAshikhmin->operator_options.ashikhminoptions.eq2 = eq2; tmoAshikhmin->operator_options.ashikhminoptions.lct = lct; - addPreview(new PreviewLabel(0, tmoAshikhmin, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoAshikhmin, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'drago' AS operator FROM drago"; @@ -138,13 +138,13 @@ for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoDrago = new TonemappingOptions; - bias = m_modelPreviews->record(selectedRow).value("bias").toFloat(); + bias = m_modelPreviews->record(selectedRow).value("bias").toFloat(); - fillCommonValues(tmoDrago, origxsize, PREVIEW_WIDTH, drago, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoDrago, origxsize, PREVIEW_WIDTH, drago, m_modelPreviews->record(selectedRow)); - tmoDrago->operator_options.dragooptions.bias = bias; + tmoDrago->operator_options.dragooptions.bias = bias; - addPreview(new PreviewLabel(0, tmoDrago, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoDrago, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'durand' AS operator FROM durand"; @@ -156,17 +156,17 @@ for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoDurand = new TonemappingOptions; - spatial = m_modelPreviews->record(selectedRow).value("spatial").toFloat(); - range = m_modelPreviews->record(selectedRow).value("range").toFloat(); - base = m_modelPreviews->record(selectedRow).value("base").toFloat(); + spatial = m_modelPreviews->record(selectedRow).value("spatial").toFloat(); + range = m_modelPreviews->record(selectedRow).value("range").toFloat(); + base = m_modelPreviews->record(selectedRow).value("base").toFloat(); - fillCommonValues(tmoDurand, origxsize, PREVIEW_WIDTH, durand, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoDurand, origxsize, PREVIEW_WIDTH, durand, m_modelPreviews->record(selectedRow)); - tmoDurand->operator_options.durandoptions.spatial = spatial; + tmoDurand->operator_options.durandoptions.spatial = spatial; tmoDurand->operator_options.durandoptions.range = range; tmoDurand->operator_options.durandoptions.base = base; - addPreview(new PreviewLabel(0, tmoDurand, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoDurand, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'fattal' AS operator FROM fattal"; @@ -177,24 +177,24 @@ colorSat, noiseReduction; bool fftsolver; - + for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoFattal = new TonemappingOptions; - alpha = m_modelPreviews->record(selectedRow).value("alpha").toFloat(); - beta = m_modelPreviews->record(selectedRow).value("beta").toFloat(); - colorSat = m_modelPreviews->record(selectedRow).value("colorSaturation").toFloat(); - noiseReduction = m_modelPreviews->record(selectedRow).value("noiseReduction").toFloat(); - fftsolver = !m_modelPreviews->record(selectedRow).value("oldFattal").toBool(); + alpha = m_modelPreviews->record(selectedRow).value("alpha").toFloat(); + beta = m_modelPreviews->record(selectedRow).value("beta").toFloat(); + colorSat = m_modelPreviews->record(selectedRow).value("colorSaturation").toFloat(); + noiseReduction = m_modelPreviews->record(selectedRow).value("noiseReduction").toFloat(); + fftsolver = !m_modelPreviews->record(selectedRow).value("oldFattal").toBool(); - fillCommonValues(tmoFattal, origxsize, PREVIEW_WIDTH, fattal, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoFattal, origxsize, PREVIEW_WIDTH, fattal, m_modelPreviews->record(selectedRow)); - tmoFattal->operator_options.fattaloptions.alpha = alpha; + tmoFattal->operator_options.fattaloptions.alpha = alpha; tmoFattal->operator_options.fattaloptions.beta = beta; tmoFattal->operator_options.fattaloptions.color = colorSat; tmoFattal->operator_options.fattaloptions.noiseredux = noiseReduction; tmoFattal->operator_options.fattaloptions.fftsolver = fftsolver; - addPreview(new PreviewLabel(0, tmoFattal, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoFattal, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'ferradans' AS operator FROM ferradans"; @@ -202,18 +202,18 @@ float rho, inv_alpha; - + for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoFerradans = new TonemappingOptions; - rho = m_modelPreviews->record(selectedRow).value("rho").toFloat(); - inv_alpha = m_modelPreviews->record(selectedRow).value("inv_alpha").toFloat(); + rho = m_modelPreviews->record(selectedRow).value("rho").toFloat(); + inv_alpha = m_modelPreviews->record(selectedRow).value("inv_alpha").toFloat(); - fillCommonValues(tmoFerradans, origxsize, PREVIEW_WIDTH, ferradans, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoFerradans, origxsize, PREVIEW_WIDTH, ferradans, m_modelPreviews->record(selectedRow)); - tmoFerradans->operator_options.ferradansoptions.rho = rho; + tmoFerradans->operator_options.ferradansoptions.rho = rho; tmoFerradans->operator_options.ferradansoptions.inv_alpha = inv_alpha; - addPreview(new PreviewLabel(0, tmoFerradans, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoFerradans, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'mantiuk06' AS operator FROM mantiuk06"; @@ -223,22 +223,22 @@ float contrastFactor; float saturationFactor; float detailFactor; - + for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoMantiuk06 = new TonemappingOptions; - contrastEqualization = m_modelPreviews->record(selectedRow).value("contrastEqualization").toBool(); - contrastFactor = m_modelPreviews->record(selectedRow).value("contrastFactor").toFloat(); - saturationFactor = m_modelPreviews->record(selectedRow).value("saturationFactor").toFloat(); - detailFactor = m_modelPreviews->record(selectedRow).value("detailFactor").toFloat(); + contrastEqualization = m_modelPreviews->record(selectedRow).value("contrastEqualization").toBool(); + contrastFactor = m_modelPreviews->record(selectedRow).value("contrastFactor").toFloat(); + saturationFactor = m_modelPreviews->record(selectedRow).value("saturationFactor").toFloat(); + detailFactor = m_modelPreviews->record(selectedRow).value("detailFactor").toFloat(); - fillCommonValues(tmoMantiuk06, origxsize, PREVIEW_WIDTH, mantiuk06, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoMantiuk06, origxsize, PREVIEW_WIDTH, mantiuk06, m_modelPreviews->record(selectedRow)); - tmoMantiuk06->operator_options.mantiuk06options.contrastfactor = contrastFactor; + tmoMantiuk06->operator_options.mantiuk06options.contrastfactor = contrastFactor; tmoMantiuk06->operator_options.mantiuk06options.saturationfactor = saturationFactor; tmoMantiuk06->operator_options.mantiuk06options.detailfactor = detailFactor; tmoMantiuk06->operator_options.mantiuk06options.contrastequalization = contrastEqualization; - addPreview(new PreviewLabel(0, tmoMantiuk06, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoMantiuk06, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'mantiuk08' AS operator FROM mantiuk08"; @@ -248,22 +248,22 @@ contrastEnhancement, luminanceLevel; bool manualLuminanceLevel; - + for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoMantiuk08 = new TonemappingOptions; - colorSaturation = m_modelPreviews->record(selectedRow).value("colorSaturation").toFloat(); - contrastEnhancement = m_modelPreviews->record(selectedRow).value("contrastEnhancement").toFloat(); - luminanceLevel = m_modelPreviews->record(selectedRow).value("luminanceLevel").toFloat(); - manualLuminanceLevel = m_modelPreviews->record(selectedRow).value("manualLuminanceLevel").toBool(); + colorSaturation = m_modelPreviews->record(selectedRow).value("colorSaturation").toFloat(); + contrastEnhancement = m_modelPreviews->record(selectedRow).value("contrastEnhancement").toFloat(); + luminanceLevel = m_modelPreviews->record(selectedRow).value("luminanceLevel").toFloat(); + manualLuminanceLevel = m_modelPreviews->record(selectedRow).value("manualLuminanceLevel").toBool(); - fillCommonValues(tmoMantiuk08, origxsize, PREVIEW_WIDTH, mantiuk08, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoMantiuk08, origxsize, PREVIEW_WIDTH, mantiuk08, m_modelPreviews->record(selectedRow)); - tmoMantiuk08->operator_options.mantiuk08options.colorsaturation = colorSaturation; + tmoMantiuk08->operator_options.mantiuk08options.colorsaturation = colorSaturation; tmoMantiuk08->operator_options.mantiuk08options.contrastenhancement = contrastEnhancement; tmoMantiuk08->operator_options.mantiuk08options.luminancelevel = luminanceLevel; tmoMantiuk08->operator_options.mantiuk08options.setluminance = manualLuminanceLevel; - addPreview(new PreviewLabel(0, tmoMantiuk08, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoMantiuk08, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'pattanaik' AS operator FROM pattanaik"; @@ -274,16 +274,16 @@ cone; bool autolum, local; - + for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoPattanaik = new TonemappingOptions; - multiplier = m_modelPreviews->record(selectedRow).value("multiplier").toFloat(); - rod = m_modelPreviews->record(selectedRow).value("rod").toFloat(); - cone = m_modelPreviews->record(selectedRow).value("cone").toFloat(); - autolum = m_modelPreviews->record(selectedRow).value("autolum").toBool(); - local = m_modelPreviews->record(selectedRow).value("local").toBool(); + multiplier = m_modelPreviews->record(selectedRow).value("multiplier").toFloat(); + rod = m_modelPreviews->record(selectedRow).value("rod").toFloat(); + cone = m_modelPreviews->record(selectedRow).value("cone").toFloat(); + autolum = m_modelPreviews->record(selectedRow).value("autolum").toBool(); + local = m_modelPreviews->record(selectedRow).value("local").toBool(); - fillCommonValues(tmoPattanaik, origxsize, PREVIEW_WIDTH, pattanaik, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoPattanaik, origxsize, PREVIEW_WIDTH, pattanaik, m_modelPreviews->record(selectedRow)); tmoPattanaik->operator_options.pattanaikoptions.autolum = autolum; tmoPattanaik->operator_options.pattanaikoptions.local = local; @@ -291,7 +291,7 @@ tmoPattanaik->operator_options.pattanaikoptions.rod = rod; tmoPattanaik->operator_options.pattanaikoptions.multiplier = multiplier; - addPreview(new PreviewLabel(0, tmoPattanaik, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoPattanaik, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'reinhard02' AS operator FROM reinhard02"; @@ -306,14 +306,14 @@ for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoReinhard02 = new TonemappingOptions; - scales = m_modelPreviews->record(selectedRow).value("scales").toBool(); - key = m_modelPreviews->record(selectedRow).value("key").toFloat(); - phi = m_modelPreviews->record(selectedRow).value("phi").toFloat(); - irange = m_modelPreviews->record(selectedRow).value("range").toInt(); - lower = m_modelPreviews->record(selectedRow).value("lower").toInt(); - upper = m_modelPreviews->record(selectedRow).value("upper").toInt(); + scales = m_modelPreviews->record(selectedRow).value("scales").toBool(); + key = m_modelPreviews->record(selectedRow).value("key").toFloat(); + phi = m_modelPreviews->record(selectedRow).value("phi").toFloat(); + irange = m_modelPreviews->record(selectedRow).value("range").toInt(); + lower = m_modelPreviews->record(selectedRow).value("lower").toInt(); + upper = m_modelPreviews->record(selectedRow).value("upper").toInt(); - fillCommonValues(tmoReinhard02, origxsize, PREVIEW_WIDTH, reinhard02, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoReinhard02, origxsize, PREVIEW_WIDTH, reinhard02, m_modelPreviews->record(selectedRow)); tmoReinhard02->operator_options.reinhard02options.scales = scales; tmoReinhard02->operator_options.reinhard02options.key = key; @@ -322,7 +322,7 @@ tmoReinhard02->operator_options.reinhard02options.lower = lower; tmoReinhard02->operator_options.reinhard02options.upper = upper; - addPreview(new PreviewLabel(0, tmoReinhard02, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoReinhard02, index++), m_modelPreviews->record(selectedRow)); } sqlQuery = "SELECT *, 'reinhard05' AS operator FROM reinhard05"; @@ -334,38 +334,38 @@ for (int selectedRow = 0; selectedRow < m_modelPreviews->rowCount(); selectedRow++) { TonemappingOptions *tmoReinhard05 = new TonemappingOptions; - brightness = m_modelPreviews->record(selectedRow).value("brightness").toFloat(); - chromaticAdaptation = m_modelPreviews->record(selectedRow).value("chromaticAdaptation").toFloat(); - lightAdaptation = m_modelPreviews->record(selectedRow).value("lightAdaptation").toFloat(); + brightness = m_modelPreviews->record(selectedRow).value("brightness").toFloat(); + chromaticAdaptation = m_modelPreviews->record(selectedRow).value("chromaticAdaptation").toFloat(); + lightAdaptation = m_modelPreviews->record(selectedRow).value("lightAdaptation").toFloat(); - fillCommonValues(tmoReinhard05, origxsize, PREVIEW_WIDTH, reinhard05, m_modelPreviews->record(selectedRow)); + fillCommonValues(tmoReinhard05, origxsize, PREVIEW_WIDTH, reinhard05, m_modelPreviews->record(selectedRow)); tmoReinhard05->operator_options.reinhard05options.brightness = brightness; tmoReinhard05->operator_options.reinhard05options.chromaticAdaptation = chromaticAdaptation; tmoReinhard05->operator_options.reinhard05options.lightAdaptation = lightAdaptation; - addPreview(new PreviewLabel(0, tmoReinhard05, index++), m_modelPreviews->record(selectedRow)); + addPreview(new PreviewLabel(0, tmoReinhard05, index++), m_modelPreviews->record(selectedRow)); } m_previewSettings->updatePreviews(m_frame); } void TonemappingSettings::addPreview(PreviewLabel* previewLabel, const QSqlRecord& record) { - QString comment = record.value("comment").toString(); + QString comment = record.value("comment").toString(); - m_previewLabelList.append(previewLabel); + m_previewLabelList.append(previewLabel); - previewLabel->setComment(comment); - connect(previewLabel, SIGNAL(clicked(int)), m_previewSettings, SLOT(selectLabel(int))); - connect(previewLabel, SIGNAL(clicked(int)), this, SLOT(updateListView(int))); - connect(previewLabel, SIGNAL(clicked(TonemappingOptions *)), this, SLOT(tonemapPreview(TonemappingOptions *))); - m_previewSettings->addPreviewLabel(previewLabel); - m_Ui->listWidget->addItem(comment); + previewLabel->setComment(comment); + connect(previewLabel, SIGNAL(clicked(int)), m_previewSettings, SLOT(selectLabel(int))); + connect(previewLabel, SIGNAL(clicked(int)), this, SLOT(updateListView(int))); + connect(previewLabel, SIGNAL(clicked(TonemappingOptions *)), this, SLOT(tonemapPreview(TonemappingOptions *))); + m_previewSettings->addPreviewLabel(previewLabel); + m_Ui->listWidget->addItem(comment); } void TonemappingSettings::fillCommonValues(TonemappingOptions * tmOptions, int origxsize, int previewWidth, TMOperator tOperator, const QSqlRecord& record) { - float pregamma = record.value("pregamma").toFloat(); + float pregamma = record.value("pregamma").toFloat(); tmOptions->origxsize = origxsize; tmOptions->xsize = previewWidth; @@ -411,7 +411,7 @@ pl->setIndex(i); m_previewSettings->addPreviewLabel(pl); m_Ui->listWidget->addItem(pl->getComment()); - } + } m_Ui->listWidget->setCurrentRow(0); m_previewSettings->selectLabel(0); m_currentIndex = 0; diff -Nru luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingSettings.h luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingSettings.h --- luminance-hdr-2.5.0/src/TonemappingPanel/TonemappingSettings.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TonemappingPanel/TonemappingSettings.h 2017-05-10 19:14:06.000000000 +0000 @@ -66,8 +66,8 @@ void on_btnTonemap_clicked(); private: - void addPreview(PreviewLabel* previewLabel, const QSqlRecord& record); - void fillCommonValues(TonemappingOptions * tmOptions, int origxsize, int previewWidth, TMOperator tOperator, const QSqlRecord& record); + void addPreview(PreviewLabel* previewLabel, const QSqlRecord& record); + void fillCommonValues(TonemappingOptions * tmOptions, int origxsize, int previewWidth, TMOperator tOperator, const QSqlRecord& record); }; #endif diff -Nru luminance-hdr-2.5.0/src/TransplantExif/TransplantExifDialog.cpp luminance-hdr-2.5.1/src/TransplantExif/TransplantExifDialog.cpp --- luminance-hdr-2.5.0/src/TransplantExif/TransplantExifDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TransplantExif/TransplantExifDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -60,23 +60,23 @@ m_Ui->Log_Widget->setWordWrap(true); - connect(m_Ui->moveup_left_button, SIGNAL(clicked()),this,SLOT(moveup_left())); - connect(m_Ui->moveup_right_button, SIGNAL(clicked()),this,SLOT(moveup_right())); - connect(m_Ui->movedown_left_button, SIGNAL(clicked()),this,SLOT(movedown_left())); - connect(m_Ui->movedown_right_button, SIGNAL(clicked()),this,SLOT(movedown_right())); - connect(m_Ui->removeleft, SIGNAL(clicked()),this,SLOT(remove_left())); - connect(m_Ui->removeright, SIGNAL(clicked()),this,SLOT(remove_right())); - connect(m_Ui->addleft, SIGNAL(clicked()),this,SLOT(append_left())); - connect(m_Ui->addright, SIGNAL(clicked()),this,SLOT(append_right())); - connect(m_Ui->TransplantButton, SIGNAL(clicked()),this,SLOT(transplant_requested())); - /* connect(HelpButton, SIGNAL(clicked()),this,SLOT(help_requested())); */ + connect(m_Ui->moveup_left_button, SIGNAL(clicked()),this,SLOT(moveup_left())); + connect(m_Ui->moveup_right_button, SIGNAL(clicked()),this,SLOT(moveup_right())); + connect(m_Ui->movedown_left_button, SIGNAL(clicked()),this,SLOT(movedown_left())); + connect(m_Ui->movedown_right_button, SIGNAL(clicked()),this,SLOT(movedown_right())); + connect(m_Ui->removeleft, SIGNAL(clicked()),this,SLOT(remove_left())); + connect(m_Ui->removeright, SIGNAL(clicked()),this,SLOT(remove_right())); + connect(m_Ui->addleft, SIGNAL(clicked()),this,SLOT(append_left())); + connect(m_Ui->addright, SIGNAL(clicked()),this,SLOT(append_right())); + connect(m_Ui->TransplantButton, SIGNAL(clicked()),this,SLOT(transplant_requested())); + /* connect(HelpButton, SIGNAL(clicked()),this,SLOT(help_requested())); */ connect(m_Ui->filterComboBox, SIGNAL(activated(int)), this, SLOT(filterComboBoxActivated(int))); connect(m_Ui->filterLineEdit, SIGNAL(textChanged(const QString&)), this, SLOT(filterChanged(const QString&))); full_Log_Model = new QStringListModel(); log_filter = new QSortFilterProxyModel(this); - log_filter->setDynamicSortFilter(true); - log_filter->setSourceModel(full_Log_Model); + log_filter->setDynamicSortFilter(true); + log_filter->setSourceModel(full_Log_Model); m_Ui->Log_Widget->setModel(log_filter); // TODO: clean up this implementation: this guys should not be here @@ -95,215 +95,215 @@ //TODO void TransplantExifDialog::help_requested() { -/* QDialog *help=new QDialog(); - help->setAttribute(Qt::WA_DeleteOnClose); - Ui::HelpDialog ui; - ui.setupUi(help); - ui.tb->setSearchPaths(QStringList("/usr/share/luminance/html") << "/usr/local/share/luminance/html" << "./html"); - ui.tb->setSource(QUrl("manual.html#copyexif")); - help->exec();*/ +/* QDialog *help=new QDialog(); + help->setAttribute(Qt::WA_DeleteOnClose); + Ui::HelpDialog ui; + ui.setupUi(help); + ui.tb->setSearchPaths(QStringList("/usr/share/luminance/html") << "/usr/local/share/luminance/html" << "./html"); + ui.tb->setSource(QUrl("manual.html#copyexif")); + help->exec();*/ } void TransplantExifDialog::updateinterval(bool left) { - if (left) { + if (left) { start_left=m_Ui->leftlist->count(); - stop_left=-1; + stop_left=-1; for (int i=0; ileftlist->count(); i++) { if (m_Ui->leftlist->isItemSelected(m_Ui->leftlist->item(i))) { - start_left= (start_left>i) ? i : start_left; - stop_left= (stop_lefti) ? i : start_left; + stop_left= (stop_leftrightlist->count(); - stop_right=-1; + stop_right=-1; for (int i=0; irightlist->count(); i++) { if (m_Ui->rightlist->isItemSelected(m_Ui->rightlist->item(i))) { start_right = (start_right>i) ? i : start_right; stop_right = (stop_rightleftlist->count()==0 || start_left==-1 || stop_left==-1 || start_left==0) - return; - //"VIEW" - //copy the before-first element to the past-end of the selection + return; + //"VIEW" + //copy the before-first element to the past-end of the selection m_Ui->leftlist->insertItem(stop_left+1,QFileInfo(from.at(start_left-1)).fileName()); - //remove the before-first element + //remove the before-first element m_Ui->leftlist->takeItem(start_left-1); - //"MODEL" - from.insert(stop_left+1,from.at(start_left-1)); - from.removeAt(start_left-1); - start_left--; - stop_left--; + //"MODEL" + from.insert(stop_left+1,from.at(start_left-1)); + from.removeAt(start_left-1); + start_left--; + stop_left--; } void TransplantExifDialog::moveup_right() { - updateinterval(false); + updateinterval(false); if (m_Ui->rightlist->count()==0 || start_right==-1 || stop_right==-1 || start_right==0) - return; - //"VIEW" - //copy the before-first element to the past-end of the selection + return; + //"VIEW" + //copy the before-first element to the past-end of the selection m_Ui->rightlist->insertItem(stop_right+1,QFileInfo(to.at(start_right-1)).fileName()); - //remove the before-first element + //remove the before-first element m_Ui->rightlist->takeItem(start_right-1); - //"MODEL" - to.insert(stop_right+1,to.at(start_right-1)); - to.removeAt(start_right-1); - start_right--; - stop_right--; + //"MODEL" + to.insert(stop_right+1,to.at(start_right-1)); + to.removeAt(start_right-1); + start_right--; + stop_right--; } void TransplantExifDialog::movedown_left() { - updateinterval(true); + updateinterval(true); if (m_Ui->leftlist->count()==0 || start_left==-1 || stop_left==-1 || stop_left==m_Ui->leftlist->count()-1) - return; - //"VIEW" - //copy the past-end to the before-first element of the selection + return; + //"VIEW" + //copy the past-end to the before-first element of the selection m_Ui->leftlist->insertItem(start_left,QFileInfo(from.at(stop_left+1)).fileName()); - //remove the past-end + //remove the past-end m_Ui->leftlist->takeItem(stop_left+2); - //"MODEL" - from.insert(start_left,from.at(stop_left+1)); - from.removeAt(stop_left+2); - start_left++; - stop_left++; + //"MODEL" + from.insert(start_left,from.at(stop_left+1)); + from.removeAt(stop_left+2); + start_left++; + stop_left++; } void TransplantExifDialog::movedown_right() { - updateinterval(false); + updateinterval(false); if (m_Ui->rightlist->count()==0 || start_right==-1 || stop_right==-1 || stop_right==m_Ui->rightlist->count()-1) - return; - //"VIEW" - //copy the past-end to the before-first element of the selection + return; + //"VIEW" + //copy the past-end to the before-first element of the selection m_Ui->rightlist->insertItem(start_right,QFileInfo(to.at(stop_right+1)).fileName()); - //remove the past-end + //remove the past-end m_Ui->rightlist->takeItem(stop_right+2); - //"MODEL" - to.insert(start_right,to.at(stop_right+1)); - to.removeAt(stop_right+2); - start_right++; - stop_right++; + //"MODEL" + to.insert(start_right,to.at(stop_right+1)); + to.removeAt(stop_right+2); + start_right++; + stop_right++; } void TransplantExifDialog::remove_left() { - updateinterval(true); + updateinterval(true); if (m_Ui->leftlist->count()==0 || start_left==-1 || stop_left==-1) - return; - for (int i=stop_left-start_left+1; i>0; i--) { + return; + for (int i=stop_left-start_left+1; i>0; i--) { m_Ui->leftlist->takeItem(start_left); - from.removeAt(start_left); - } - start_left=stop_left=-1; + from.removeAt(start_left); + } + start_left=stop_left=-1; m_Ui->TransplantButton->setEnabled( m_Ui->leftlist->count()==m_Ui->rightlist->count() && m_Ui->rightlist->count()!=0 ); } void TransplantExifDialog::remove_right() { - updateinterval(false); + updateinterval(false); if (m_Ui->rightlist->count()==0 || start_right==-1 || stop_right==-1) - return; - for (int i=stop_right-start_right+1; i>0; i--) { + return; + for (int i=stop_right-start_right+1; i>0; i--) { m_Ui->rightlist->takeItem(start_right); - to.removeAt(start_right); - } - start_right=stop_right=-1; + to.removeAt(start_right); + } + start_right=stop_right=-1; m_Ui->TransplantButton->setEnabled( (m_Ui->leftlist->count() == m_Ui->rightlist->count()) && (m_Ui->rightlist->count() != 0) ); } void TransplantExifDialog::append_left() { - QString filetypes = tr("All Supported formats"); + QString filetypes = tr("All Supported formats"); filetypes += " (*.jpeg *.jpg *.tif *.tiff *.crw *.cr2 *.nef *.dng *.mrw *.orf *.kdc *.dcr *.arw *.ptx *.pef *.x3f *.raw *.rw2 *.sr2 " "*.JPEG *.JPG *.TIF *.TIFF *.CRW *.CR2 *.NEF *.DNG *.MRW *.ORF *.KDC *.DCR *.ARW *.PTX *.PEF *.X3F *.RAW *.RW2 *.SR2)"; - QStringList files = QFileDialog::getOpenFileNames(this, tr("Select the input images"), RecentDirEXIFfrom, filetypes ); - if (!files.isEmpty()) { - QFileInfo qfi(files.at(0)); + QStringList files = QFileDialog::getOpenFileNames(this, tr("Select the input images"), RecentDirEXIFfrom, filetypes ); + if (!files.isEmpty()) { + QFileInfo qfi(files.at(0)); // if the new dir, the one just chosen by the user, is different from the one stored in the settings, update the luminance_options. - if (RecentDirEXIFfrom != qfi.path()) { - // update internal field variable - RecentDirEXIFfrom=qfi.path(); + if (RecentDirEXIFfrom != qfi.path()) { + // update internal field variable + RecentDirEXIFfrom=qfi.path(); luminance_options.setValue(KEY_RECENT_PATH_EXIF_FROM, RecentDirEXIFfrom); - } - QStringList::Iterator it = files.begin(); + } + QStringList::Iterator it = files.begin(); while ( it != files.end() ) { QFileInfo *qfi = new QFileInfo(*it); m_Ui->leftlist->addItem( qfi->fileName() ); //fill graphical list - ++it; - delete qfi; - } + ++it; + delete qfi; + } from += files; // add the new files to the "model" m_Ui->TransplantButton->setEnabled( (m_Ui->leftlist->count() == m_Ui->rightlist->count()) && (m_Ui->rightlist->count() != 0) ); - } + } } void TransplantExifDialog::append_right() { - QString filetypes = tr("All Supported formats") - + " (*.jpeg *.jpg *.JPEG *.JPG " + QString filetypes = tr("All Supported formats") + + " (*.jpeg *.jpg *.JPEG *.JPG " #if EXIV2_TEST_VERSION(0,18,0) + "*.tif *.tiff *.TIF *.TIFF " #endif - + "*.crw *.orf *.kdc *.dcr *.ptx *.x3f *.CRW *.ORF *.KDC *.DCR *.PTX *.X3F)"; - QStringList files = QFileDialog::getOpenFileNames(this, tr("Select the input images"), RecentDirEXIFto, filetypes ); - if (!files.isEmpty()) { - QFileInfo qfi(files.at(0)); + + "*.crw *.orf *.kdc *.dcr *.ptx *.x3f *.CRW *.ORF *.KDC *.DCR *.PTX *.X3F)"; + QStringList files = QFileDialog::getOpenFileNames(this, tr("Select the input images"), RecentDirEXIFto, filetypes ); + if (!files.isEmpty()) { + QFileInfo qfi(files.at(0)); // if the new dir, the one just chosen by the user, is different from the one stored in the settings, update the luminance_options. - if (RecentDirEXIFto != qfi.path()) { - // update internal field variable - RecentDirEXIFto=qfi.path(); + if (RecentDirEXIFto != qfi.path()) { + // update internal field variable + RecentDirEXIFto=qfi.path(); luminance_options.setValue(KEY_RECENT_PATH_EXIF_TO, RecentDirEXIFto); - } - QStringList::Iterator it = files.begin(); + } + QStringList::Iterator it = files.begin(); while ( it != files.end() ) { - QFileInfo *qfi=new QFileInfo(*it); + QFileInfo *qfi=new QFileInfo(*it); m_Ui->rightlist->addItem(qfi->fileName()); //fill graphical list - ++it; - delete qfi; - } + ++it; + delete qfi; + } to += files; // add the new files to the "model" m_Ui->TransplantButton->setEnabled( (m_Ui->leftlist->count() == m_Ui->rightlist->count()) && (m_Ui->rightlist->count() != 0) ); - } + } } void TransplantExifDialog::transplant_requested() { - if (done) { - accept(); - return; - } + if (done) { + accept(); + return; + } m_Ui->progressBar->show(); m_Ui->progressBar->setMaximum(m_Ui->leftlist->count()); - //initialize string iterators to the beginning of the lists. - QStringList::const_iterator i_source = from.constBegin(); - QStringList::const_iterator i_dest = to.constBegin(); - - int index=0; - //for all the input files - for (; i_source != from.constEnd(); ++i_source, ++i_dest) { - try { - add_log_message(*i_source + "-->" + *i_dest); - //ExifOperations methods want a std::string, we need to use the QFile::encodeName(QString).constData() trick to cope with local 8-bit encoding determined by the user's locale. + //initialize string iterators to the beginning of the lists. + QStringList::const_iterator i_source = from.constBegin(); + QStringList::const_iterator i_dest = to.constBegin(); + + int index=0; + //for all the input files + for (; i_source != from.constEnd(); ++i_source, ++i_dest) { + try { + add_log_message(*i_source + "-->" + *i_dest); + //ExifOperations methods want a std::string, we need to use the QFile::encodeName(QString).constData() trick to cope with local 8-bit encoding determined by the user's locale. ExifOperations::copyExifData(QFile::encodeName((*i_source)).constData(), QFile::encodeName((*i_dest)).constData(), m_Ui->checkBox_dont_overwrite->isChecked()); m_Ui->rightlist->item(index)->setBackground(QBrush("#a0ff87")); - } catch (Exiv2::AnyError& e) { - add_log_message("ERROR:" + QString::fromStdString(e.what()) ); + } catch (Exiv2::AnyError& e) { + add_log_message("ERROR:" + QString::fromStdString(e.what()) ); m_Ui->rightlist->item(index)->setBackground(QBrush("#ff743d")); - } + } m_Ui->progressBar->setValue( m_Ui->progressBar->value()+1 ); // increment progressbar - index++; - } + index++; + } - done=true; + done=true; m_Ui->TransplantButton->setText(tr("&Done")); m_Ui->moveup_left_button->setDisabled(true); m_Ui->moveup_right_button->setDisabled(true); @@ -318,8 +318,8 @@ void TransplantExifDialog::add_log_message(const QString& message) { - full_Log_Model->insertRows(full_Log_Model->rowCount(),1); - full_Log_Model->setData(full_Log_Model->index(full_Log_Model->rowCount()-1), message, Qt::DisplayRole); + full_Log_Model->insertRows(full_Log_Model->rowCount(),1); + full_Log_Model->setData(full_Log_Model->index(full_Log_Model->rowCount()-1), message, Qt::DisplayRole); m_Ui->Log_Widget->scrollToBottom(); } @@ -329,23 +329,23 @@ m_Ui->filterComboBox->setEnabled(no_text); m_Ui->filterLabel1->setEnabled(no_text); m_Ui->clearTextToolButton->setEnabled(!no_text); - if (no_text) + if (no_text) filterComboBoxActivated(m_Ui->filterComboBox->currentIndex()); - else - log_filter->setFilterRegExp(QRegExp(newtext, Qt::CaseInsensitive, QRegExp::RegExp)); + else + log_filter->setFilterRegExp(QRegExp(newtext, Qt::CaseInsensitive, QRegExp::RegExp)); } void TransplantExifDialog::filterComboBoxActivated(int index) { - QString regexp; - switch (index) { - case 0: - regexp=".*"; - break; - case 1: - regexp="error"; - break; - } - log_filter->setFilterRegExp(QRegExp(regexp, Qt::CaseInsensitive, QRegExp::RegExp)); + QString regexp; + switch (index) { + case 0: + regexp=".*"; + break; + case 1: + regexp="error"; + break; + } + log_filter->setFilterRegExp(QRegExp(regexp, Qt::CaseInsensitive, QRegExp::RegExp)); } diff -Nru luminance-hdr-2.5.0/src/TransplantExif/TransplantExifDialog.h luminance-hdr-2.5.1/src/TransplantExif/TransplantExifDialog.h --- luminance-hdr-2.5.0/src/TransplantExif/TransplantExifDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/TransplantExif/TransplantExifDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -38,37 +38,37 @@ class TransplantExifDialog : public QDialog { Q_OBJECT public: - TransplantExifDialog(QWidget *); - ~TransplantExifDialog(); + TransplantExifDialog(QWidget *); + ~TransplantExifDialog(); private: - int start_left,stop_left,start_right,stop_right; - QStringList from,to; - bool done; - void updateinterval(bool); - QString RecentDirEXIFfrom; - QString RecentDirEXIFto; - //fuction that adds a log message to the model - void add_log_message(const QString &); - //the class that performs regexp filtering - QSortFilterProxyModel *log_filter; - //the model that holds the data - QStringListModel *full_Log_Model; + int start_left,stop_left,start_right,stop_right; + QStringList from,to; + bool done; + void updateinterval(bool); + QString RecentDirEXIFfrom; + QString RecentDirEXIFto; + //fuction that adds a log message to the model + void add_log_message(const QString &); + //the class that performs regexp filtering + QSortFilterProxyModel *log_filter; + //the model that holds the data + QStringListModel *full_Log_Model; LuminanceOptions luminance_options; QScopedPointer m_Ui; private slots: - void transplant_requested(); - void help_requested(); - void moveup_left(); - void moveup_right(); - void movedown_left(); - void movedown_right(); - void remove_left(); - void remove_right(); - void append_left(); - void append_right(); - void filterChanged(const QString&); - void filterComboBoxActivated(int); + void transplant_requested(); + void help_requested(); + void moveup_left(); + void moveup_right(); + void movedown_left(); + void movedown_right(); + void remove_left(); + void remove_right(); + void append_left(); + void append_right(); + void filterChanged(const QString&); + void filterComboBoxActivated(int); }; #endif diff -Nru luminance-hdr-2.5.0/src/UI/about.ui luminance-hdr-2.5.1/src/UI/about.ui --- luminance-hdr-2.5.0/src/UI/about.ui 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/about.ui 2017-05-10 19:14:06.000000000 +0000 @@ -11,7 +11,7 @@ - About Luminance + About Luminance HDR @@ -62,7 +62,7 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#00007f;">Luminance HDR</span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse @@ -93,8 +93,8 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:11pt; font-weight:400; font-style:normal;"> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#00007f;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> -<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:12pt; font-weight:600; color:#0078dc;">Luminance HDR</span><span style=" font-family:'Sans Serif';"> — HDR imaging workflow application<br />(c) 2006-2009, Giuseppe Rota</span></p> +<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">(c) 2010-2017, Franco Comida, Davide Anastasia<br /></span><a href="http://qtpfsgui.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">http://qtpfsgui.sourceforge.net</span></a></p></body></html> Qt::AutoText @@ -121,26 +121,26 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Main developer QtPfsGui</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Giuseppe Rota<br /> </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">grota@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Main Developers Luminance HDR</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Franco Comida</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">fcomida@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:fcomida@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">fcomida@users.sourceforge.net</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:10pt;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Davide Anastasia</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">davideanastasia@users.sourceforge.net</span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:davideanastasia@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">davideanastasia@users.sourceforge.net</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Improvements, bugfixing</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Daniel Kaneider</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">danielkaneider@users.sourceforge.net</span></a></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mantiuk@mpi-sb.mpg.de </span></a></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Norwegian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif'; color:#000000;"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Turkish translato</span><span style=" font-family:'Sans Serif'; color:#000000;">r<br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">French translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Spanish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">German translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Czech translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Polish translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Romanian translator</span><span style=" font-family:'Sans Serif'; color:#000000;"><br /> Andrei Răcăşan<br /></span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">Chinese translator</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; color:#000000;"> Lei Zhao</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; color:#000000;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600; color:#000000;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif'; color:#000000;"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> </span><a href="mailto:danielkaneider@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">danielkaneider@users.sourceforge.net</span></a></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">pfs{tools|calibration|tmo} codebase</span><span style=" font-family:'Sans Serif';"><br /> Grzegorz Krawczyk<br /> </span><a href="mailto:krawczyk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">krawczyk@mpi-sb.mpg.de</span></a><span style=" font-family:'Sans Serif';"><br /> <br /> Rafal Mantiuk<br /> </span><a href="mailto:mantiuk@mpi-sb.mpg.de"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mantiuk@mpi-sb.mpg.de </span></a></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;"><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">G.Ward's Mean Threshold Bitmap (MTB) algorithm </span><span style=" font-family:'Sans Serif';"><br /> Nicholas Phillips<br /> </span><a href="ngphillips@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">ngphillips@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Russian translator, usability fixes, user manual, .desktop file</span><span style=" font-family:'Sans Serif';"><br /> Alexandre Prokoudine<br /> </span><a href="alexandre.prokoudine@gmail.com"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">alexandre.prokoudine@gmail.com</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Norwegian translator</span><span style=" font-family:'Sans Serif';"><br /> Åsmund Ødegård<br /> </span><a href="mandus@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">mandus@users.sourceforge.net</span></a><span style=" font-family:'Sans Serif';"><br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Turkish translator</span><span style=" font-family:'Sans Serif';"><br /> Mustafa GÜNAY<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">French translator</span><span style=" font-family:'Sans Serif';"><br /> Cyril Lavier<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Spanish translator</span><span style=" font-family:'Sans Serif';"><br /> Alberto Garcia<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">German translator</span><span style=" font-family:'Sans Serif';"><br /> Christian Raue<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Czech translator</span><span style=" font-family:'Sans Serif';"><br /> Jan Gemela<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Polish translator</span><span style=" font-family:'Sans Serif';"><br /> Maciej Dziardziel<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Romanian translator</span><span style=" font-family:'Sans Serif';"><br /> Andrei Răcăşan<br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Chinese translator</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';"> Lei Zhao</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">FreeBSD patches and maintainers</span><span style=" font-family:'Sans Serif';"><br />Joao Rocha Braga Filho, Bertrand Petit and Steffen Beyer<br /></span></p></body></html> true @@ -164,7 +164,7 @@ <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans'; font-size:9pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0000ff;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0057ae;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif';">Please </span><a href="mailto:grota@users.sourceforge.net"><span style=" font-family:'Sans Serif'; text-decoration: underline; color:#0078dc;">let me know</span></a><span style=" font-family:'Sans Serif';">, if I forgot to add someone to this list.<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">All the community on </span><a href="http://www.flickr.com/groups/qtpfsgui"><span style=" font-family:'Sans Serif'; font-size:10pt; text-decoration: underline; color:#0078dc;">Flickr</span></a><span style=" font-family:'Sans Serif';"><br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Hugin's </span><span style=" font-family:'Sans Serif'; font-weight:600; font-style:italic;">align_image_stack</span><span style=" font-family:'Sans Serif'; font-weight:600;"> and more</span><span style=" font-family:'Sans Serif';"><br /> Pablo D'Angelo<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Opensuse 10.2 and 10.3 packager</span><span style=" font-family:'Sans Serif';"><br /> Peter Linnell<br /> <br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">Fedora packager and bug reports</span><span style=" font-family:'Sans Serif';"><br /> Douglas E. Warner<br /><br /></span><span style=" font-family:'Sans Serif'; font-weight:600;">openSUSE 10.2 packager</span><span style=" font-family:'Sans Serif';"><br /> Rauch Christian<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Gentoo Linux Ebuild</span><span style=" font-family:'Sans Serif';"><br /> Rene Zbinden<br /></span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-weight:600;">Various suggestions</span><span style=" font-family:'Sans Serif';"><br /> Arne Hagenah<br /></span></p> @@ -201,6 +201,9 @@ true + + QAbstractScrollArea::AdjustToContents + QTextEdit::AutoAll @@ -211,6 +214,9 @@ </style></head><body style=" font-family:'Noto Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p align="justify" style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p></body></html> + + 4 + diff -Nru luminance-hdr-2.5.0/src/UI/CMakeLists.txt luminance-hdr-2.5.1/src/UI/CMakeLists.txt --- luminance-hdr-2.5.0/src/UI/CMakeLists.txt 2017-04-18 18:27:47.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/CMakeLists.txt 2017-05-10 19:14:06.000000000 +0000 @@ -3,6 +3,8 @@ ${CMAKE_CURRENT_SOURCE_DIR}/ImageQualityDialog.ui ${CMAKE_CURRENT_SOURCE_DIR}/TiffModeDialog.ui ${CMAKE_CURRENT_SOURCE_DIR}/about.ui + ${CMAKE_CURRENT_SOURCE_DIR}/ExportToHtmlDialog.ui + ${CMAKE_CURRENT_SOURCE_DIR}/SupportedCamerasDialog.ui ) SET(FILES_H ${CMAKE_CURRENT_SOURCE_DIR}/ExtWizardPage.h @@ -14,6 +16,8 @@ ${CMAKE_CURRENT_SOURCE_DIR}/SimplePreviewLabel.h ${CMAKE_CURRENT_SOURCE_DIR}/UMessageBox.h ${CMAKE_CURRENT_SOURCE_DIR}/FlowLayout.h + ${CMAKE_CURRENT_SOURCE_DIR}/ExportToHtmlDialog.h + ${CMAKE_CURRENT_SOURCE_DIR}/SupportedCamerasDialog.h ) SET(FILES_CPP ${CMAKE_CURRENT_SOURCE_DIR}/ExtWizardPage.cpp @@ -25,6 +29,8 @@ ${CMAKE_CURRENT_SOURCE_DIR}/TiffModeDialog.cpp ${CMAKE_CURRENT_SOURCE_DIR}/PreviewFrame.cpp ${CMAKE_CURRENT_SOURCE_DIR}/SimplePreviewLabel.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/ExportToHtmlDialog.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/SupportedCamerasDialog.cpp ) IF(CFITSIO_FOUND) @@ -41,7 +47,7 @@ QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) ADD_LIBRARY(ui ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H}) -qt5_use_modules(ui Core Concurrent Gui Widgets WebKitWidgets) +qt5_use_modules(ui Core Concurrent Gui Widgets WebEngineWidgets) SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} PARENT_SCOPE) SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} ui PARENT_SCOPE) diff -Nru luminance-hdr-2.5.0/src/UI/ExportToHtmlDialog.cpp luminance-hdr-2.5.1/src/UI/ExportToHtmlDialog.cpp --- luminance-hdr-2.5.0/src/UI/ExportToHtmlDialog.cpp 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/ExportToHtmlDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,144 @@ +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2016 Franco Comida + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Franco Comida + */ + +#include "ExportToHtmlDialog.h" + +#include +#include +#include +#include + +#include "ui_ExportToHtmlDialog.h" +#include "HdrHTML/pfsouthdrhtml.h" +#include "Libpfs/frame.h" +#include "Libpfs/exception.h" +#include "Libpfs/manip/resize.h" +#include "Libpfs/manip/copy.h" + + +ExportToHtmlDialog::ExportToHtmlDialog(QWidget* parent, pfs::Frame *frame) + : QDialog(parent) + , m_frame(frame) + , m_pageName() + , m_outputFolder() + , m_imagesFolder() + , m_Ui(new Ui::ExportToHtmlDialog) +{ + m_Ui->setupUi(this); + + connect(m_Ui->ExportButton, SIGNAL(clicked()), this, SLOT(onExportButtonClicked())); + connect(m_Ui->OutputFolderButton, SIGNAL(clicked()), this, SLOT(onOutputFolderButtonClicked())); + connect(m_Ui->lineEditPageName, SIGNAL(editingFinished()), this, SLOT(onEditPageNameFinished())); + connect(m_Ui->lineEditOutputFolder, SIGNAL(editingFinished()), this, SLOT(onEditOutputFolderFinished())); + connect(m_Ui->lineEditImagesFolder, SIGNAL(editingFinished()), this, SLOT(onEditImagesFolderFinished())); +} + +void ExportToHtmlDialog::onOutputFolderButtonClicked() +{ + QString dirname=QFileDialog::getExistingDirectory(this, tr("Choose a directory"), QDir::homePath() ); + + QFileInfo test(dirname); + if (test.isWritable() && test.exists() && test.isDir() && !dirname.isEmpty()) + { + m_outputFolder = dirname; + + m_Ui->lineEditOutputFolder->setText(dirname); + check_enable_export(); + } +} + +void ExportToHtmlDialog::onExportButtonClicked() +{ + QApplication::setOverrideCursor( QCursor(Qt::WaitCursor) ); + + bool quit = false; + pfs::Frame *resized; + int size_percent = m_Ui->spinBoxSize->value(); + if (size_percent == 100) { + resized = pfs::copy(m_frame); + } + else { + int resized_width = (int)((float)(size_percent*m_frame->getWidth()) / 100.f); + resized = pfs::resize(m_frame, resized_width, BilinearInterp); + } + try { + generate_hdrhtml(resized, + m_pageName.toStdString(), m_outputFolder.toStdString(), m_imagesFolder.toStdString(), + "", "", m_Ui->spinBoxQuality->value(), false); + } + catch( pfs::Exception &e) { + delete resized; + QApplication::restoreOverrideCursor(); + QMessageBox::critical(this, tr("Error: "), e.what() , + QMessageBox::Ok, QMessageBox::NoButton); + quit = true; + } + if (!quit) { + QApplication::restoreOverrideCursor(); + if (m_Ui->checkBoxOpenOnBrowser->isChecked()) { + QString url = "file:///" + m_outputFolder + "/" + m_pageName + ".html"; + QDesktopServices::openUrl(QUrl(url)); + } + } + delete resized; + accept(); +} + +void ExportToHtmlDialog::onEditPageNameFinished() +{ + m_pageName = m_Ui->lineEditPageName->text(); + QFileInfo qfi = QFileInfo(m_pageName); + m_pageName = qfi.baseName(); + m_Ui->lineEditPageName->setText(m_pageName); + + check_enable_export(); +} + +void ExportToHtmlDialog::onEditOutputFolderFinished() +{ + m_outputFolder = m_Ui->lineEditOutputFolder->text(); + QFileInfo qfi = QFileInfo(m_outputFolder); + if (!m_outputFolder.isEmpty() && !qfi.isDir()) + QMessageBox::critical(this, tr("Error: "), m_outputFolder + tr(" must be a directory.") , + QMessageBox::Ok, QMessageBox::NoButton); + else + check_enable_export(); +} + +void ExportToHtmlDialog::onEditImagesFolderFinished() +{ + m_imagesFolder = m_Ui->lineEditImagesFolder->text(); + check_enable_export(); +} + +void ExportToHtmlDialog::check_enable_export() +{ + m_Ui->ExportButton->setEnabled( + (!m_Ui->lineEditPageName->text().isEmpty()) && + (!m_Ui->lineEditOutputFolder->text().isEmpty())); +} + +ExportToHtmlDialog::~ExportToHtmlDialog() +{ +} + diff -Nru luminance-hdr-2.5.0/src/UI/ExportToHtmlDialog.h luminance-hdr-2.5.1/src/UI/ExportToHtmlDialog.h --- luminance-hdr-2.5.0/src/UI/ExportToHtmlDialog.h 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/ExportToHtmlDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,66 @@ +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2016 Franco Comida + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Franco Comida + */ + +#ifndef EXPORTTOHTMLDIALOG_H +#define EXPORTTOHTMLDIALOG_H + +#include +#include + +namespace Ui +{ + class ExportToHtmlDialog; +} + +namespace pfs { + class Frame; +} + +class ExportToHtmlDialog : public QDialog +{ + Q_OBJECT +public: + ExportToHtmlDialog(QWidget* parent, pfs::Frame *frame); + +private: + pfs::Frame *m_frame; + QString m_pageName; + QString m_outputFolder; + QString m_imagesFolder; + + void check_enable_export(); + + QScopedPointer m_Ui; + +private slots: + void onExportButtonClicked(); + void onOutputFolderButtonClicked(); + void onEditPageNameFinished(); + void onEditOutputFolderFinished(); + void onEditImagesFolderFinished(); + +public: + ~ExportToHtmlDialog(); +}; + +#endif // EXPORTTOHTMLDIALOG_H diff -Nru luminance-hdr-2.5.0/src/UI/ExportToHtmlDialog.ui luminance-hdr-2.5.1/src/UI/ExportToHtmlDialog.ui --- luminance-hdr-2.5.0/src/UI/ExportToHtmlDialog.ui 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/ExportToHtmlDialog.ui 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,407 @@ + + + ExportToHtmlDialog + + + + 0 + 0 + 600 + 360 + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Export HDR to HTML + + + + :/program-icons/luminance-hdr:/program-icons/luminance-hdr + + + + + + + + + 16 + 75 + true + + + + Export to HTML + + + Qt::AlignCenter + + + + + + + + + + 0 + 0 + + + + Web page: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + + + + + 0 + 0 + + + + Output folder: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + Qt::RightToLeft + + + Open web browser + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Size: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + % + + + 1 + + + 100 + + + 100 + + + + + + + + 0 + 0 + + + + Quality: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + 1 + + + 4 + + + 2 + + + + + + + + + false + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + + + + + + + + false + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Images folder: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + Select... + + + + .. + + + false + + + + + + + + + Qt::Vertical + + + QSizePolicy::MinimumExpanding + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 203 + 20 + + + + + + + + + + Cancel + + + false + + + + + + + false + + + Export + + + + .. + + + false + + + + + + + + + + + + + lineEditPageName + lineEditOutputFolder + OutputFolderButton + lineEditImagesFolder + checkBoxImagesFolder + checkBoxOpenOnBrowser + spinBoxSize + spinBoxQuality + CancelButton + ExportButton + + + + + + + checkBoxImagesFolder + clicked(bool) + lineEditImagesFolder + setEnabled(bool) + + + 539 + 135 + + + 348 + 140 + + + + + checkBoxImagesFolder + clicked(bool) + label_5 + setEnabled(bool) + + + 542 + 135 + + + 137 + 140 + + + + + CancelButton + clicked() + ExportToHtmlDialog + reject() + + + 443 + 323 + + + 253 + 250 + + + + + diff -Nru luminance-hdr-2.5.0/src/UI/ExtWizardPage.h luminance-hdr-2.5.1/src/UI/ExtWizardPage.h --- luminance-hdr-2.5.0/src/UI/ExtWizardPage.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/ExtWizardPage.h 2017-05-10 19:14:06.000000000 +0000 @@ -13,7 +13,7 @@ enum CompleteStatus {Undefined, AlwaysTrue, AlwaysFalse}; Q_OBJECT - + public: ExtWizardPage(QWidget* parent = 0); diff -Nru luminance-hdr-2.5.0/src/UI/FitsImporter.cpp luminance-hdr-2.5.1/src/UI/FitsImporter.cpp --- luminance-hdr-2.5.0/src/UI/FitsImporter.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/FitsImporter.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -54,7 +54,7 @@ static const int previewWidth = 300; static const int previewHeight = 200; -FitsImporter::~FitsImporter() +FitsImporter::~FitsImporter() { } @@ -86,7 +86,7 @@ m_previewLabel = new QLabel(this); m_previewLabel->resize(600,400); m_previewLabel->setScaledContents(true); - QPalette* palette = new QPalette(); + QPalette* palette = new QPalette(); palette->setColor(QPalette::Foreground,Qt::red); m_previewLabel->setPalette(*palette); m_previewLabel->setFrameStyle(QFrame::Box); @@ -106,9 +106,9 @@ m_previewFrame->show(); connect(this, SIGNAL(setValue(int)), m_Ui->progressBar, SLOT(setValue(int)), Qt::DirectConnection); connect(this, SIGNAL(setRange(int,int)), m_Ui->progressBar, SLOT(setRange(int,int)), Qt::DirectConnection); - + // wizard stuff - + m_Ui->wizardPageLoadFiles->setCompleteStatus(ExtWizardPage::CompleteStatus::AlwaysFalse); m_Ui->wizardPageLoadFiles->registerExtField("lineEditRed*", m_Ui->lineEditRed); m_Ui->wizardPageLoadFiles->registerExtField("lineEditGreen*", m_Ui->lineEditGreen); @@ -215,7 +215,7 @@ } void FitsImporter::loadFilesDone(QString error_string) -{ +{ qDebug() << "Data loaded ... move to internal structure!"; //disconnect(&m_futureWatcher, SIGNAL(finished()), this, SLOT(loadFilesDone())); @@ -294,14 +294,14 @@ qDebug() << "Gamma " << gamma; QImage tempImage(previewWidth, previewHeight, QImage::Format_ARGB32_Premultiplied); - + ConvertSample toFloat; ConvertToQRgb convertToQRgb(1.f + gamma); if (!m_luminosityChannel.isEmpty()) { - for (int j = 0; j < previewHeight; j++) + for (int j = 0; j < previewHeight; j++) { - for (int i = 0; i < previewWidth; i++) + for (int i = 0; i < previewWidth; i++) { float red = toFloat(qRed(m_qimages[0].pixel(i, j))); float green = toFloat(qRed(m_qimages[1].pixel(i, j))); @@ -327,13 +327,13 @@ convertToQRgb(redH, g, b, rgb); tempImage.setPixel(i, j, rgb); } - } + } } else { - for (int j = 0; j < previewHeight; j++) + for (int j = 0; j < previewHeight; j++) { - for (int i = 0; i < previewWidth; i++) + for (int i = 0; i < previewWidth; i++) { float red = toFloat(qRed(m_qimages[0].pixel(i, j))); float green = toFloat(qRed(m_qimages[1].pixel(i, j))); @@ -356,7 +356,7 @@ convertToQRgb(redH, g, b, rgb); tempImage.setPixel(i, j, rgb); } - } + } } m_Ui->previewLabel->setPixmap(QPixmap::fromImage(tempImage)); } @@ -407,7 +407,7 @@ pfs::colorspace::Normalizer normalize(datamin, datamax); std::transform(C->begin(), C->end(), C->begin(), normalize); - std::copy(C->begin(), C->end(), m_contents[i].begin()); + std::copy(C->begin(), C->end(), m_contents[i].begin()); m_qimages.push_back(m_data[i].qimage().scaled(previewWidth, previewHeight)); } } @@ -425,7 +425,7 @@ if (!m_luminosityChannel.isEmpty()) { - for (size_t i = 0; i < m_width*m_height; i++) + for (size_t i = 0; i < m_width*m_height; i++) { //float r = redRed * m_contents[2][i]; float r = redRed * m_contents[0][i]; @@ -437,11 +437,11 @@ (*Xc)(i) = r + m_contents[4][i]; (*Yc)(i) = g; (*Zc)(i) = b; - } + } } else { - for (size_t i = 0; i < m_width*m_height; i++) + for (size_t i = 0; i < m_width*m_height; i++) { float r = redRed * m_contents[0][i]; float g = greenGreen * m_contents[1][i]; @@ -449,8 +449,8 @@ (*Xc)(i) = r + m_contents[4][i]; (*Yc)(i) = g; (*Zc)(i) = b; - } - } + } + } } void FitsImporter::align_with_ais() @@ -460,7 +460,7 @@ connect(m_align.get(), SIGNAL(finishedAligning(int)), this, SLOT(ais_finished(int))); connect(m_align.get(), SIGNAL(failedAligning(QProcess::ProcessError)), this, SLOT(ais_failed_slot(QProcess::ProcessError))); connect(m_align.get(), SIGNAL(dataReady(QByteArray)), this, SLOT(readData(QByteArray))); - + m_align->align_with_ais(m_Ui->autoCropCheckBox->isChecked()); } @@ -497,12 +497,12 @@ return false; const size_t width = it->frame()->getWidth(); const size_t height = it->frame()->getHeight(); - for ( HdrCreationItemContainer::const_iterator it = m_data.begin() + 1, + for ( HdrCreationItemContainer::const_iterator it = m_data.begin() + 1, itEnd = m_data.end(); it != itEnd; ++it) { if (it->filename().isEmpty()) continue; if (it->frame()->getWidth() != width || it->frame()->getHeight() != height) - return false; + return false; } return true; } @@ -564,7 +564,7 @@ m_previewLabel->setPixmap(*m_previewFrame->getLabel(m_previewFrame->getSelectedLabel())->pixmap()); } Channel *C = m_data[index].frame()->getChannel("X"); - std::copy(C->begin(), C->end(), m_contents[index].begin()); + std::copy(C->begin(), C->end(), m_contents[index].begin()); QImage tmp = m_data[index].qimage().scaled(previewWidth, previewHeight); m_qimages[index].swap(tmp); //buildPreview(); @@ -693,7 +693,7 @@ { int current = currentId(); if (current == 22) // alignment progress - { + { if (m_Ui->ais_radioButton->isChecked()) { align_with_ais(); } diff -Nru luminance-hdr-2.5.0/src/UI/FitsImporter.h luminance-hdr-2.5.1/src/UI/FitsImporter.h --- luminance-hdr-2.5.0/src/UI/FitsImporter.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/FitsImporter.h 2017-05-10 19:14:06.000000000 +0000 @@ -49,7 +49,7 @@ ~FitsImporter(); pfs::Frame *getFrame(); - + protected slots: void on_pushButtonLuminosity_clicked(); void on_pushButtonRed_clicked(); @@ -77,14 +77,14 @@ signals: void setValue(int); - void setRange(int, int); + void setRange(int, int); protected: virtual int nextId() const; virtual bool validateCurrentPage(); virtual void initializePage(int id); - + void checkLoadButton(); bool framesHaveSameSize(); void buildContents(); @@ -124,4 +124,4 @@ void selectInputFile(QLineEdit* textField, QString* channel); }; -#endif +#endif diff -Nru luminance-hdr-2.5.0/src/UI/FlowLayout.cpp luminance-hdr-2.5.1/src/UI/FlowLayout.cpp --- luminance-hdr-2.5.0/src/UI/FlowLayout.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/FlowLayout.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,213 +1,213 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include - -#include "FlowLayout.h" -//! [1] -FlowLayout::FlowLayout(QWidget *parent, int margin, int hSpacing, int vSpacing) - : QLayout(parent), m_hSpace(hSpacing), m_vSpace(vSpacing) -{ - setContentsMargins(margin, margin, margin, margin); -} - -FlowLayout::FlowLayout(int margin, int hSpacing, int vSpacing) - : m_hSpace(hSpacing), m_vSpace(vSpacing) -{ - setContentsMargins(margin, margin, margin, margin); -} -//! [1] - -//! [2] -FlowLayout::~FlowLayout() -{ - QLayoutItem *item; - while ((item = takeAt(0))) - delete item; -} -//! [2] - -//! [3] -void FlowLayout::addItem(QLayoutItem *item) -{ - itemList.append(item); -} -//! [3] - -//! [4] -int FlowLayout::horizontalSpacing() const -{ - if (m_hSpace >= 0) { - return m_hSpace; - } else { - return smartSpacing(QStyle::PM_LayoutHorizontalSpacing); - } -} - -int FlowLayout::verticalSpacing() const -{ - if (m_vSpace >= 0) { - return m_vSpace; - } else { - return smartSpacing(QStyle::PM_LayoutVerticalSpacing); - } -} -//! [4] - -//! [5] -int FlowLayout::count() const -{ - return itemList.size(); -} - -QLayoutItem *FlowLayout::itemAt(int index) const -{ - return itemList.value(index); -} - -QLayoutItem *FlowLayout::takeAt(int index) -{ - if (index >= 0 && index < itemList.size()) - return itemList.takeAt(index); - else - return 0; -} -//! [5] - -//! [6] -Qt::Orientations FlowLayout::expandingDirections() const -{ - return 0; -} -//! [6] - -//! [7] -bool FlowLayout::hasHeightForWidth() const -{ - return true; -} - -int FlowLayout::heightForWidth(int width) const -{ - int height = doLayout(QRect(0, 0, width, 0), true); - return height; -} -//! [7] - -//! [8] -void FlowLayout::setGeometry(const QRect &rect) -{ - QLayout::setGeometry(rect); - doLayout(rect, false); -} - -QSize FlowLayout::sizeHint() const -{ - return minimumSize(); -} - -QSize FlowLayout::minimumSize() const -{ - QSize size; - QLayoutItem *item; - foreach (item, itemList) - size = size.expandedTo(item->minimumSize()); - - size += QSize(2*margin(), 2*margin()); - return size; -} -//! [8] - -//! [9] -int FlowLayout::doLayout(const QRect &rect, bool testOnly) const -{ - int left, top, right, bottom; - getContentsMargins(&left, &top, &right, &bottom); - QRect effectiveRect = rect.adjusted(+left, +top, -right, -bottom); - int x = effectiveRect.x(); - int y = effectiveRect.y(); - int lineHeight = 0; -//! [9] - -//! [10] - QLayoutItem *item; - foreach (item, itemList) { - QWidget *wid = item->widget(); - int spaceX = horizontalSpacing(); - if (spaceX == -1) - spaceX = wid->style()->layoutSpacing( - QSizePolicy::PushButton, QSizePolicy::PushButton, Qt::Horizontal); - int spaceY = verticalSpacing(); - if (spaceY == -1) - spaceY = wid->style()->layoutSpacing( - QSizePolicy::PushButton, QSizePolicy::PushButton, Qt::Vertical); -//! [10] -//! [11] - int nextX = x + item->sizeHint().width() + spaceX; - if (nextX - spaceX > effectiveRect.right() && lineHeight > 0) { - x = effectiveRect.x(); - y = y + lineHeight + spaceY; - nextX = x + item->sizeHint().width() + spaceX; - lineHeight = 0; - } - - if (!testOnly) - item->setGeometry(QRect(QPoint(x, y), item->sizeHint())); - - x = nextX; - lineHeight = qMax(lineHeight, item->sizeHint().height()); - } - return y + lineHeight - rect.y() + bottom; -} -//! [11] -//! [12] -int FlowLayout::smartSpacing(QStyle::PixelMetric pm) const -{ - QObject *parent = this->parent(); - if (!parent) { - return -1; - } else if (parent->isWidgetType()) { - QWidget *pw = static_cast(parent); - return pw->style()->pixelMetric(pm, 0, pw); - } else { - return static_cast(parent)->spacing(); - } -} -//! [12] +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include + +#include "FlowLayout.h" +//! [1] +FlowLayout::FlowLayout(QWidget *parent, int margin, int hSpacing, int vSpacing) + : QLayout(parent), m_hSpace(hSpacing), m_vSpace(vSpacing) +{ + setContentsMargins(margin, margin, margin, margin); +} + +FlowLayout::FlowLayout(int margin, int hSpacing, int vSpacing) + : m_hSpace(hSpacing), m_vSpace(vSpacing) +{ + setContentsMargins(margin, margin, margin, margin); +} +//! [1] + +//! [2] +FlowLayout::~FlowLayout() +{ + QLayoutItem *item; + while ((item = takeAt(0))) + delete item; +} +//! [2] + +//! [3] +void FlowLayout::addItem(QLayoutItem *item) +{ + itemList.append(item); +} +//! [3] + +//! [4] +int FlowLayout::horizontalSpacing() const +{ + if (m_hSpace >= 0) { + return m_hSpace; + } else { + return smartSpacing(QStyle::PM_LayoutHorizontalSpacing); + } +} + +int FlowLayout::verticalSpacing() const +{ + if (m_vSpace >= 0) { + return m_vSpace; + } else { + return smartSpacing(QStyle::PM_LayoutVerticalSpacing); + } +} +//! [4] + +//! [5] +int FlowLayout::count() const +{ + return itemList.size(); +} + +QLayoutItem *FlowLayout::itemAt(int index) const +{ + return itemList.value(index); +} + +QLayoutItem *FlowLayout::takeAt(int index) +{ + if (index >= 0 && index < itemList.size()) + return itemList.takeAt(index); + else + return 0; +} +//! [5] + +//! [6] +Qt::Orientations FlowLayout::expandingDirections() const +{ + return 0; +} +//! [6] + +//! [7] +bool FlowLayout::hasHeightForWidth() const +{ + return true; +} + +int FlowLayout::heightForWidth(int width) const +{ + int height = doLayout(QRect(0, 0, width, 0), true); + return height; +} +//! [7] + +//! [8] +void FlowLayout::setGeometry(const QRect &rect) +{ + QLayout::setGeometry(rect); + doLayout(rect, false); +} + +QSize FlowLayout::sizeHint() const +{ + return minimumSize(); +} + +QSize FlowLayout::minimumSize() const +{ + QSize size; + QLayoutItem *item; + foreach (item, itemList) + size = size.expandedTo(item->minimumSize()); + + size += QSize(2*margin(), 2*margin()); + return size; +} +//! [8] + +//! [9] +int FlowLayout::doLayout(const QRect &rect, bool testOnly) const +{ + int left, top, right, bottom; + getContentsMargins(&left, &top, &right, &bottom); + QRect effectiveRect = rect.adjusted(+left, +top, -right, -bottom); + int x = effectiveRect.x(); + int y = effectiveRect.y(); + int lineHeight = 0; +//! [9] + +//! [10] + QLayoutItem *item; + foreach (item, itemList) { + QWidget *wid = item->widget(); + int spaceX = horizontalSpacing(); + if (spaceX == -1) + spaceX = wid->style()->layoutSpacing( + QSizePolicy::PushButton, QSizePolicy::PushButton, Qt::Horizontal); + int spaceY = verticalSpacing(); + if (spaceY == -1) + spaceY = wid->style()->layoutSpacing( + QSizePolicy::PushButton, QSizePolicy::PushButton, Qt::Vertical); +//! [10] +//! [11] + int nextX = x + item->sizeHint().width() + spaceX; + if (nextX - spaceX > effectiveRect.right() && lineHeight > 0) { + x = effectiveRect.x(); + y = y + lineHeight + spaceY; + nextX = x + item->sizeHint().width() + spaceX; + lineHeight = 0; + } + + if (!testOnly) + item->setGeometry(QRect(QPoint(x, y), item->sizeHint())); + + x = nextX; + lineHeight = qMax(lineHeight, item->sizeHint().height()); + } + return y + lineHeight - rect.y() + bottom; +} +//! [11] +//! [12] +int FlowLayout::smartSpacing(QStyle::PixelMetric pm) const +{ + QObject *parent = this->parent(); + if (!parent) { + return -1; + } else if (parent->isWidgetType()) { + QWidget *pw = static_cast(parent); + return pw->style()->pixelMetric(pm, 0, pw); + } else { + return static_cast(parent)->spacing(); + } +} +//! [12] diff -Nru luminance-hdr-2.5.0/src/UI/FlowLayout.h luminance-hdr-2.5.1/src/UI/FlowLayout.h --- luminance-hdr-2.5.0/src/UI/FlowLayout.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/FlowLayout.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,82 +1,82 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef FLOWLAYOUT_H -#define FLOWLAYOUT_H - -#include -#include -#include -#include -//! [0] -class FlowLayout : public QLayout -{ - Q_OBJECT - -public: - FlowLayout(QWidget *parent, int margin = -1, int hSpacing = -1, int vSpacing = -1); - FlowLayout(int margin = -1, int hSpacing = -1, int vSpacing = -1); - ~FlowLayout(); - - void addItem(QLayoutItem *item); - int horizontalSpacing() const; - int verticalSpacing() const; - Qt::Orientations expandingDirections() const; - bool hasHeightForWidth() const; - int heightForWidth(int) const; - int count() const; - QLayoutItem *itemAt(int index) const; - QSize minimumSize() const; - void setGeometry(const QRect &rect); - QSize sizeHint() const; - QLayoutItem *takeAt(int index); - int getSize() { return itemList.size(); } - -private: - int doLayout(const QRect &rect, bool testOnly) const; - int smartSpacing(QStyle::PixelMetric pm) const; - - QList itemList; - int m_hSpace; - int m_vSpace; -}; -//! [0] - -#endif +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef FLOWLAYOUT_H +#define FLOWLAYOUT_H + +#include +#include +#include +#include +//! [0] +class FlowLayout : public QLayout +{ + Q_OBJECT + +public: + FlowLayout(QWidget *parent, int margin = -1, int hSpacing = -1, int vSpacing = -1); + FlowLayout(int margin = -1, int hSpacing = -1, int vSpacing = -1); + ~FlowLayout(); + + void addItem(QLayoutItem *item); + int horizontalSpacing() const; + int verticalSpacing() const; + Qt::Orientations expandingDirections() const; + bool hasHeightForWidth() const; + int heightForWidth(int) const; + int count() const; + QLayoutItem *itemAt(int index) const; + QSize minimumSize() const; + void setGeometry(const QRect &rect); + QSize sizeHint() const; + QLayoutItem *takeAt(int index); + int getSize() { return itemList.size(); } + +private: + int doLayout(const QRect &rect, bool testOnly) const; + int smartSpacing(QStyle::PixelMetric pm) const; + + QList itemList; + int m_hSpace; + int m_vSpace; +}; +//! [0] + +#endif diff -Nru luminance-hdr-2.5.0/src/UI/GammaAndLevels.cpp luminance-hdr-2.5.1/src/UI/GammaAndLevels.cpp --- luminance-hdr-2.5.0/src/UI/GammaAndLevels.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/GammaAndLevels.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -108,49 +108,49 @@ void GammaAndLevels::defaultGammaBlackWhiteIn() { - qDebug("GammaAndLevels::defaultGammaBlackWhiteIn"); - blackin=0; - gamma=1.0f; - whitein=255; + qDebug("GammaAndLevels::defaultGammaBlackWhiteIn"); + blackin=0; + gamma=1.0f; + whitein=255; } void GammaAndLevels::defaultBlackWhiteOut() { - qDebug("GammaAndLevels::defaultBlackWhiteOut"); - blackout=0; - whiteout=255; + qDebug("GammaAndLevels::defaultBlackWhiteOut"); + blackout=0; + whiteout=255; } void GammaAndLevels::updateBlackIn(int v) { - qDebug("GammaAndLevels::updateBlackIn"); + qDebug("GammaAndLevels::updateBlackIn"); m_Ui->black_in_spinbox->setValue(v); - blackin=v; - refreshLUT(); + blackin=v; + refreshLUT(); } void GammaAndLevels::updateGamma(double v) { - qDebug("GammaAndLevels::updateGamma"); - gb1->dont_emit=true; + qDebug("GammaAndLevels::updateGamma"); + gb1->dont_emit=true; m_Ui->gamma_spinbox->setValue(v); - gamma=v; - refreshLUT(); + gamma=v; + refreshLUT(); } void GammaAndLevels::updateWhiteIn(int v) { - qDebug("GammaAndLevels::updateWhiteIn"); + qDebug("GammaAndLevels::updateWhiteIn"); m_Ui->white_in_spinbox->setValue(v); - whitein=v; - refreshLUT(); + whitein=v; + refreshLUT(); } void GammaAndLevels::updateBlackOut(int v) { - qDebug("GammaAndLevels::updateBlackOut"); + qDebug("GammaAndLevels::updateBlackOut"); m_Ui->black_out_spinbox->setValue(v); - blackout=v; - refreshLUT(); + blackout=v; + refreshLUT(); } void GammaAndLevels::updateWhiteOut(int v) { - qDebug("GammaAndLevels::updateWhiteOut"); + qDebug("GammaAndLevels::updateWhiteOut"); m_Ui->white_out_spinbox->setValue(v); - whiteout=v; - refreshLUT(); + whiteout=v; + refreshLUT(); } void GammaAndLevels::resetValues() @@ -417,240 +417,240 @@ QWidget(parent), dont_emit(false) { - twohandles=two_handles; - dragging=DRAGNONE; -// qDebug("width=%d, height=%d",width(),height()); + twohandles=two_handles; + dragging=DRAGNONE; +// qDebug("width=%d, height=%d",width(),height()); } QSize GrayBar::sizeHint () const { - return QSize( 500, 22 ); + return QSize( 500, 22 ); } QSize GrayBar::minimumSizeHint () const { - return QSize( 400, 22 ); + return QSize( 400, 22 ); } void GrayBar::mouseMoveEvent( QMouseEvent * e ) { - if (dragging==DRAGNONE) - return; + if (dragging==DRAGNONE) + return; - //here we have to make sure that we keep the "order": black,(gray),white - if (dragging==DRAGBLACK) { - if (e->x()<=whitepos && e->x()>=0) { - //update graphical position of gray handle - gammapos=e->x()+(int)(blackgrayratio*(whitepos-e->x())); - //update graphical position of black handle - blackpos=e->x(); - update(); - } - return; - } - if (dragging==DRAGWHITE) { - if (e->x()>=blackpos && e->x()<=width()) { - //update graphical position of gray handle - gammapos=e->x()-(int)((1.0f-blackgrayratio)*(e->x()-blackpos)); - //update graphical position of white handle - whitepos=e->x(); - update(); - } - return; - } - if (dragging==DRAGGRAY) { - if (e->x()>=blackpos && e->x()<=whitepos) { - //update graphical position of gray handle - blackgrayratio=(float)(e->x()-blackpos)/(float)(whitepos-blackpos); - //update graphical position of white handle - gammapos=e->x(); - update(); - } - return; - } + //here we have to make sure that we keep the "order": black,(gray),white + if (dragging==DRAGBLACK) { + if (e->x()<=whitepos && e->x()>=0) { + //update graphical position of gray handle + gammapos=e->x()+(int)(blackgrayratio*(whitepos-e->x())); + //update graphical position of black handle + blackpos=e->x(); + update(); + } + return; + } + if (dragging==DRAGWHITE) { + if (e->x()>=blackpos && e->x()<=width()) { + //update graphical position of gray handle + gammapos=e->x()-(int)((1.0f-blackgrayratio)*(e->x()-blackpos)); + //update graphical position of white handle + whitepos=e->x(); + update(); + } + return; + } + if (dragging==DRAGGRAY) { + if (e->x()>=blackpos && e->x()<=whitepos) { + //update graphical position of gray handle + blackgrayratio=(float)(e->x()-blackpos)/(float)(whitepos-blackpos); + //update graphical position of white handle + gammapos=e->x(); + update(); + } + return; + } } void GrayBar::mousePressEvent( QMouseEvent * e ) { - dragging=findHandle(e->x(),e->y()); + dragging=findHandle(e->x(),e->y()); } void GrayBar::mouseReleaseEvent( QMouseEvent * e) { - if (dragging==DRAGBLACK) { - emit black_changed( (int)(255*((float)(blackpos)/(float)(width()))) ); - } - if (dragging==DRAGWHITE) { - emit white_changed( (int)(255*((float)(whitepos)/(float)(width()))) ); - } - if (dragging==DRAGGRAY) { - float mediumpos = (float)blackpos+ ((float)whitepos-(float)blackpos)/2.0f; - if (e->x()>mediumpos) { + if (dragging==DRAGBLACK) { + emit black_changed( (int)(255*((float)(blackpos)/(float)(width()))) ); + } + if (dragging==DRAGWHITE) { + emit white_changed( (int)(255*((float)(whitepos)/(float)(width()))) ); + } + if (dragging==DRAGGRAY) { + float mediumpos = (float)blackpos+ ((float)whitepos-(float)blackpos)/2.0f; + if (e->x()>mediumpos) { //exp10f is not defined on MinGW in windows. #ifdef _GNU_SOURCE - emit gamma_changed( exp10f( (mediumpos-(float)e->x())/((float)(whitepos)-mediumpos) ) ); - } else { - emit gamma_changed( exp10f( (mediumpos-(float)e->x())/(mediumpos-(float)(blackpos)) ) ); + emit gamma_changed( exp10f( (mediumpos-(float)e->x())/((float)(whitepos)-mediumpos) ) ); + } else { + emit gamma_changed( exp10f( (mediumpos-(float)e->x())/(mediumpos-(float)(blackpos)) ) ); #else - emit gamma_changed( powf(10.0f, (mediumpos-(float)e->x())/((float)(whitepos)-mediumpos) ) ); - } else { - emit gamma_changed( powf(10.0f, (mediumpos-(float)e->x())/(mediumpos-(float)(blackpos)) ) ); + emit gamma_changed( powf(10.0f, (mediumpos-(float)e->x())/((float)(whitepos)-mediumpos) ) ); + } else { + emit gamma_changed( powf(10.0f, (mediumpos-(float)e->x())/(mediumpos-(float)(blackpos)) ) ); #endif - } - } - dragging=DRAGNONE; - update(); + } + } + dragging=DRAGNONE; + update(); } GrayBar::draggingT GrayBar::findHandle(int x, int y) { - QRect black_rect(blackpos-25,1+(height()-1)/2, 50, (height()-1)-(1+(height()-1)/2)); - QRect white_rect(whitepos-25,1+(height()-1)/2, 50, (height()-1)-(1+(height()-1)/2)); + QRect black_rect(blackpos-25,1+(height()-1)/2, 50, (height()-1)-(1+(height()-1)/2)); + QRect white_rect(whitepos-25,1+(height()-1)/2, 50, (height()-1)-(1+(height()-1)/2)); + + //mouse click belongs to both white and black rects, and there's some space on the left of the black coordinate + if ( black_rect.contains(x,y,false) && white_rect.contains(x,y,false) && blackpos!=0 ) { + return DRAGBLACK; + } + //mouse click belongs to both white and black rects, and there's some space on the right of the white coordinate + if ( black_rect.contains(x,y,false) && white_rect.contains(x,y,false) && whitepos!=width() ) { + return DRAGWHITE; + } + + //check if we clicked on black handle + if ( black_rect.contains(x,y,false) ) { + return DRAGBLACK; + } - //mouse click belongs to both white and black rects, and there's some space on the left of the black coordinate - if ( black_rect.contains(x,y,false) && white_rect.contains(x,y,false) && blackpos!=0 ) { - return DRAGBLACK; - } - //mouse click belongs to both white and black rects, and there's some space on the right of the white coordinate - if ( black_rect.contains(x,y,false) && white_rect.contains(x,y,false) && whitepos!=width() ) { - return DRAGWHITE; - } - - //check if we clicked on black handle - if ( black_rect.contains(x,y,false) ) { - return DRAGBLACK; - } - - //check if we clicked on white handle - if ( white_rect.contains(x,y,false) ) { - return DRAGWHITE; - } - - //check if we clicked on gray handle - if (!twohandles) { - QRect gray_rect(gammapos-25,1+(height() - 1)/2, 50, (height() - 1)-(1+(height() - 1)/2)); - if ( gray_rect.contains(x,y,false) ) { - return DRAGGRAY; - } - } - return DRAGNONE; + //check if we clicked on white handle + if ( white_rect.contains(x,y,false) ) { + return DRAGWHITE; + } + + //check if we clicked on gray handle + if (!twohandles) { + QRect gray_rect(gammapos-25,1+(height() - 1)/2, 50, (height() - 1)-(1+(height() - 1)/2)); + if ( gray_rect.contains(x,y,false) ) { + return DRAGGRAY; + } + } + return DRAGNONE; } void GrayBar::resizeEvent ( QResizeEvent * ) { - qDebug("GrayBar::resizeEvent"); - resetvalues(); + qDebug("GrayBar::resizeEvent"); + resetvalues(); //this one below does not work, we resetvalues for the time being. -// float factor=(float)(e->size().width())/(float)(e->oldSize().width()); -// qDebug("factor=%f",factor); -// blackpos=(int)( (float)blackpos*( factor ) ); -// whitepos=(int)( (float)whitepos*( factor ) ); -// gammapos=(int)( (float)gammapos*( factor ) ); -// update(); +// float factor=(float)(e->size().width())/(float)(e->oldSize().width()); +// qDebug("factor=%f",factor); +// blackpos=(int)( (float)blackpos*( factor ) ); +// whitepos=(int)( (float)whitepos*( factor ) ); +// gammapos=(int)( (float)gammapos*( factor ) ); +// update(); } void GrayBar::paintEvent( QPaintEvent * ) { - QPainter painter(this); - QLinearGradient linearGradient(0, height()/2, width(), height()/2); - linearGradient.setColorAt(0.0, Qt::black); - linearGradient.setColorAt(0.5, Qt::darkGray); - linearGradient.setColorAt(1.0, Qt::white); - painter.setBrush(linearGradient); - painter.setPen(Qt::NoPen); - painter.drawRect(QRect(0, 0, width() - 1, (height() - 1)/2)); - - painter.setPen(Qt::black); - //draw black triangle - static QPoint black_tri[3] = { - QPoint(blackpos, 1+(height() - 1)/2), - QPoint(blackpos-5, (height() - 1)), - QPoint(blackpos+5, (height() - 1)), - }; - black_tri[0].setX(blackpos); - black_tri[1].setX(blackpos-5); - black_tri[2].setX(blackpos+5); - black_tri[0].setY(1+(height() - 1)/2); - black_tri[1].setY(height()-1); - black_tri[2].setY(height()-1); - painter.setBrush(QBrush(Qt::black)); - painter.drawPolygon(black_tri,3); - //draw white triangle - static QPoint white_tri[3] = { - QPoint(whitepos, 1+(height() - 1)/2), - QPoint(whitepos-5, (height() - 1)), - QPoint(whitepos+5, (height() - 1)), - }; - white_tri[0].setX(whitepos); - white_tri[1].setX(whitepos-5); - white_tri[2].setX(whitepos+5); - white_tri[0].setY(1+(height()-1)/2); - white_tri[1].setY(height()-1); - white_tri[2].setY(height()-1); - painter.setBrush(QBrush(Qt::white)); - painter.drawPolygon(white_tri,3); - //in case, draw gray triangle - if (!twohandles) { - static QPoint gray_tri[3] = { - QPoint(gammapos, 1+(height() - 1)/2), - QPoint(gammapos-5, (height() - 1)), - QPoint(gammapos+5, (height() - 1)), - }; - gray_tri[0].setX(gammapos); - gray_tri[1].setX(gammapos-5); - gray_tri[2].setX(gammapos+5); - gray_tri[0].setY(1+(height()-1)/2); - gray_tri[1].setY(height()-1); - gray_tri[2].setY(height()-1); - painter.setBrush(QBrush(Qt::darkGray)); - painter.drawPolygon(gray_tri,3); - } -// qDebug("paint width=%d, height=%d",width(),height()); -// qDebug("blackpos=%d, gammapos=%d, whitepos=%d",blackpos,gammapos,whitepos); + QPainter painter(this); + QLinearGradient linearGradient(0, height()/2, width(), height()/2); + linearGradient.setColorAt(0.0, Qt::black); + linearGradient.setColorAt(0.5, Qt::darkGray); + linearGradient.setColorAt(1.0, Qt::white); + painter.setBrush(linearGradient); + painter.setPen(Qt::NoPen); + painter.drawRect(QRect(0, 0, width() - 1, (height() - 1)/2)); + + painter.setPen(Qt::black); + //draw black triangle + static QPoint black_tri[3] = { + QPoint(blackpos, 1+(height() - 1)/2), + QPoint(blackpos-5, (height() - 1)), + QPoint(blackpos+5, (height() - 1)), + }; + black_tri[0].setX(blackpos); + black_tri[1].setX(blackpos-5); + black_tri[2].setX(blackpos+5); + black_tri[0].setY(1+(height() - 1)/2); + black_tri[1].setY(height()-1); + black_tri[2].setY(height()-1); + painter.setBrush(QBrush(Qt::black)); + painter.drawPolygon(black_tri,3); + //draw white triangle + static QPoint white_tri[3] = { + QPoint(whitepos, 1+(height() - 1)/2), + QPoint(whitepos-5, (height() - 1)), + QPoint(whitepos+5, (height() - 1)), + }; + white_tri[0].setX(whitepos); + white_tri[1].setX(whitepos-5); + white_tri[2].setX(whitepos+5); + white_tri[0].setY(1+(height()-1)/2); + white_tri[1].setY(height()-1); + white_tri[2].setY(height()-1); + painter.setBrush(QBrush(Qt::white)); + painter.drawPolygon(white_tri,3); + //in case, draw gray triangle + if (!twohandles) { + static QPoint gray_tri[3] = { + QPoint(gammapos, 1+(height() - 1)/2), + QPoint(gammapos-5, (height() - 1)), + QPoint(gammapos+5, (height() - 1)), + }; + gray_tri[0].setX(gammapos); + gray_tri[1].setX(gammapos-5); + gray_tri[2].setX(gammapos+5); + gray_tri[0].setY(1+(height()-1)/2); + gray_tri[1].setY(height()-1); + gray_tri[2].setY(height()-1); + painter.setBrush(QBrush(Qt::darkGray)); + painter.drawPolygon(gray_tri,3); + } +// qDebug("paint width=%d, height=%d",width(),height()); +// qDebug("blackpos=%d, gammapos=%d, whitepos=%d",blackpos,gammapos,whitepos); } void GrayBar::resetvalues() { - qDebug("GrayBar::resetvalues"); - blackpos=0; - gammapos=width()/2; - blackgrayratio=0.5f; - whitepos=width(); - - if (twohandles) - emit default_black_white(); - else - emit default_gamma_black_white(); - update(); + qDebug("GrayBar::resetvalues"); + blackpos=0; + gammapos=width()/2; + blackgrayratio=0.5f; + whitepos=width(); + + if (twohandles) + emit default_black_white(); + else + emit default_gamma_black_white(); + update(); } void GrayBar::changeBlack(int v) { - if ((int)(255*((float)(blackpos)/(float)(width()))) == v) - return; - qDebug("GrayBar::changeBlack"); - blackpos=(int) (v*width()/255.0f) < whitepos ? (int) (v*width()/255.0f) : blackpos; - gammapos=blackpos+(int)(blackgrayratio*(whitepos-blackpos)); - update(); - emit black_changed(v); + if ((int)(255*((float)(blackpos)/(float)(width()))) == v) + return; + qDebug("GrayBar::changeBlack"); + blackpos=(int) (v*width()/255.0f) < whitepos ? (int) (v*width()/255.0f) : blackpos; + gammapos=blackpos+(int)(blackgrayratio*(whitepos-blackpos)); + update(); + emit black_changed(v); } void GrayBar::changeGamma(double v) { - float mediumpos = (float)blackpos+ ((float)whitepos-(float)blackpos)/2.0f; - if (v<1.0f) { - gammapos=(int)( mediumpos-((float)(whitepos)-mediumpos)*log10f(v) ); - } else { - gammapos=(int)( mediumpos-(mediumpos-(float)(blackpos))*log10f(v) ); - } - qDebug("GrayBar::changeGamma %f",v); - blackgrayratio=(float)(gammapos-blackpos)/(float)(whitepos-blackpos); - update(); - if (dont_emit) { - dont_emit=false; - return; - } - emit gamma_changed (v); + float mediumpos = (float)blackpos+ ((float)whitepos-(float)blackpos)/2.0f; + if (v<1.0f) { + gammapos=(int)( mediumpos-((float)(whitepos)-mediumpos)*log10f(v) ); + } else { + gammapos=(int)( mediumpos-(mediumpos-(float)(blackpos))*log10f(v) ); + } + qDebug("GrayBar::changeGamma %f",v); + blackgrayratio=(float)(gammapos-blackpos)/(float)(whitepos-blackpos); + update(); + if (dont_emit) { + dont_emit=false; + return; + } + emit gamma_changed (v); } void GrayBar::changeWhite(int v) { - if ((int)(255*((float)(whitepos)/(float)(width()))) == v) - return; - qDebug("GrayBar::changeWhite, %d", v); - whitepos=(int) (v*width()/255.0f) > blackpos ? (int) (v*width()/255.0f) : whitepos; - gammapos=whitepos-(int)((1.0f-blackgrayratio)*(whitepos-blackpos)); - update(); - emit white_changed(v); + if ((int)(255*((float)(whitepos)/(float)(width()))) == v) + return; + qDebug("GrayBar::changeWhite, %d", v); + whitepos=(int) (v*width()/255.0f) > blackpos ? (int) (v*width()/255.0f) : whitepos; + gammapos=whitepos-(int)((1.0f-blackgrayratio)*(whitepos-blackpos)); + update(); + emit white_changed(v); } diff -Nru luminance-hdr-2.5.0/src/UI/GammaAndLevels.h luminance-hdr-2.5.1/src/UI/GammaAndLevels.h --- luminance-hdr-2.5.0/src/UI/GammaAndLevels.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/GammaAndLevels.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota */ @@ -39,34 +39,34 @@ { Q_OBJECT public: - GrayBar(QWidget *parent, bool two_handles=false); - QSize sizeHint () const; - QSize minimumSizeHint () const; - bool dont_emit; + GrayBar(QWidget *parent, bool two_handles=false); + QSize sizeHint () const; + QSize minimumSizeHint () const; + bool dont_emit; protected: - void paintEvent( QPaintEvent * ); - void resizeEvent ( QResizeEvent * event ); - void mouseMoveEvent ( QMouseEvent * event ); - void mousePressEvent ( QMouseEvent * event ); - void mouseReleaseEvent ( QMouseEvent * event ); + void paintEvent( QPaintEvent * ); + void resizeEvent ( QResizeEvent * event ); + void mouseMoveEvent ( QMouseEvent * event ); + void mousePressEvent ( QMouseEvent * event ); + void mouseReleaseEvent ( QMouseEvent * event ); private: - //graphical coordinate, 0-width(), NOT 0-255 - int blackpos,gammapos,whitepos; - float blackgrayratio; - bool twohandles; - enum draggingT {DRAGNONE,DRAGBLACK,DRAGGRAY,DRAGWHITE} dragging; - draggingT findHandle(int x, int y); + //graphical coordinate, 0-width(), NOT 0-255 + int blackpos,gammapos,whitepos; + float blackgrayratio; + bool twohandles; + enum draggingT {DRAGNONE,DRAGBLACK,DRAGGRAY,DRAGWHITE} dragging; + draggingT findHandle(int x, int y); public slots: - void resetvalues(); - void changeBlack(int); - void changeGamma(double); - void changeWhite(int); + void resetvalues(); + void changeBlack(int); + void changeGamma(double); + void changeWhite(int); signals: - void black_changed(int); - void gamma_changed(double); - void white_changed(int); - void default_gamma_black_white(); - void default_black_white(); + void black_changed(int); + void gamma_changed(double); + void white_changed(int); + void default_gamma_black_white(); + void default_black_white(); }; class HistogramLDR : public QWidget @@ -120,7 +120,7 @@ void refreshLUT(); public: GammaAndLevels(QWidget *parent, const QImage& image); - ~GammaAndLevels(); + ~GammaAndLevels(); QImage getReferenceQImage(); @@ -134,14 +134,14 @@ void updateQImage(QImage image); private slots: - void resetValues(); - void updateBlackIn(int); - void updateGamma(double); - void updateWhiteIn(int); - void updateBlackOut(int); - void updateWhiteOut(int); - void defaultGammaBlackWhiteIn(); - void defaultBlackWhiteOut(); + void resetValues(); + void updateBlackIn(int); + void updateGamma(double); + void updateWhiteIn(int); + void updateBlackOut(int); + void updateWhiteOut(int); + void defaultGammaBlackWhiteIn(); + void defaultBlackWhiteOut(); }; #endif diff -Nru luminance-hdr-2.5.0/src/UI/Gang.cpp luminance-hdr-2.5.1/src/UI/Gang.cpp --- luminance-hdr-2.5.0/src/UI/Gang.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/Gang.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota * Copyright (C) 2002-2005 Nicholas Phillips - * + * * This program 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 2 of the License, or @@ -17,13 +17,13 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * based on previous GPL code from qpfstmo, by Nicholas Phillips. * * Original Work * @author Giuseppe Rota - * + * * Improvements, bugfixing * @author Franco Comida * @@ -36,199 +36,199 @@ //#include using namespace std; -Gang::Gang(QSlider* slider, QDoubleSpinBox* doublespinbox, - QCheckBox *chkbox1, QCheckBox *chkbox2, QRadioButton *rb1, QRadioButton *rb2, - const float minvalue, const float maxvalue, - const float vv, const bool logs) : - s(slider), dsb(doublespinbox), cbx1(chkbox1), cbx2(chkbox2), rb1(rb1), rb2(rb2), - minv(minvalue), maxv(maxvalue), defaultv(vv), logscaling(logs), - undoState(false), redoState(false) -{ - if (cbx1) - isCbx1Checked_default = cbx1->isChecked(); - if (cbx2) - isCbx2Checked_default = cbx2->isChecked(); - if (rb1) - isRb1Checked_default = rb1->isChecked(); - if (rb2) - isRb2Checked_default = rb2->isChecked(); - - tmoSettingsList = new TmoSettingsList(); - graphics_only = false; - - if (s) - s->setTracking(false); - - if (s) { - connect( s, SIGNAL(sliderMoved(int)), this, SLOT(sliderMoved(int))); - connect( s, SIGNAL(valueChanged(int)), this, SLOT(sliderValueChanged(int))); - } - - if (dsb) - //connect( dsb, SIGNAL(editingFinished()), this, SLOT(spinboxFocusEnter())); - connect( dsb, SIGNAL(valueChanged(double)), this, SLOT(spinboxValueChanged(double))); - - if (cbx1) - connect( cbx1, SIGNAL(toggled(bool)), this, SLOT(checkBox1Checked(bool))); - - if (cbx2) - connect( cbx2, SIGNAL(toggled(bool)), this, SLOT(checkBox2Checked(bool))); - - if (rb1) - connect( rb1, SIGNAL(clicked(bool)), this, SLOT(radioButton1Checked(bool))); - - if (rb2) - connect( rb2, SIGNAL(clicked(bool)), this, SLOT(radioButton2Checked(bool))); - - setDefault(); +Gang::Gang(QSlider* slider, QDoubleSpinBox* doublespinbox, + QCheckBox *chkbox1, QCheckBox *chkbox2, QRadioButton *rb1, QRadioButton *rb2, + const float minvalue, const float maxvalue, + const float vv, const bool logs) : + s(slider), dsb(doublespinbox), cbx1(chkbox1), cbx2(chkbox2), rb1(rb1), rb2(rb2), + minv(minvalue), maxv(maxvalue), defaultv(vv), logscaling(logs), + undoState(false), redoState(false) +{ + if (cbx1) + isCbx1Checked_default = cbx1->isChecked(); + if (cbx2) + isCbx2Checked_default = cbx2->isChecked(); + if (rb1) + isRb1Checked_default = rb1->isChecked(); + if (rb2) + isRb2Checked_default = rb2->isChecked(); + + tmoSettingsList = new TmoSettingsList(); + graphics_only = false; + + if (s) + s->setTracking(false); + + if (s) { + connect( s, SIGNAL(sliderMoved(int)), this, SLOT(sliderMoved(int))); + connect( s, SIGNAL(valueChanged(int)), this, SLOT(sliderValueChanged(int))); + } + + if (dsb) + //connect( dsb, SIGNAL(editingFinished()), this, SLOT(spinboxFocusEnter())); + connect( dsb, SIGNAL(valueChanged(double)), this, SLOT(spinboxValueChanged(double))); + + if (cbx1) + connect( cbx1, SIGNAL(toggled(bool)), this, SLOT(checkBox1Checked(bool))); + + if (cbx2) + connect( cbx2, SIGNAL(toggled(bool)), this, SLOT(checkBox2Checked(bool))); + + if (rb1) + connect( rb1, SIGNAL(clicked(bool)), this, SLOT(radioButton1Checked(bool))); + + if (rb2) + connect( rb2, SIGNAL(clicked(bool)), this, SLOT(radioButton2Checked(bool))); + + setDefault(); } Gang::~Gang() { delete tmoSettingsList; -} +} float Gang::p2v(const int p) const { - float x = (p-s->minimum())/( (float) (s->maximum() - s->minimum() ) ) ; - if( logscaling ) { - //cout << "p: " << p << ", x: " << x << ", " << minv*exp(log(maxv/minv)*x ) << endl; - return minv*exp(log(maxv/minv)*x ); - } - return (maxv-minv)*x + minv; + float x = (p-s->minimum())/( (float) (s->maximum() - s->minimum() ) ) ; + if( logscaling ) { + //cout << "p: " << p << ", x: " << x << ", " << minv*exp(log(maxv/minv)*x ) << endl; + return minv*exp(log(maxv/minv)*x ); + } + return (maxv-minv)*x + minv; } int Gang::v2p(const float x) const { - float y = (x - minv)/(maxv - minv); - if( logscaling ) { - y = (log(x)-log(minv))/(log(maxv)-log(minv)); - //cout << "x: " << x << ", y: " << y << ", " << log(x) << endl; - } - return (int) ( (s->maximum() - s->minimum() )*y + s->minimum() ); + float y = (x - minv)/(maxv - minv); + if( logscaling ) { + y = (log(x)-log(minv))/(log(maxv)-log(minv)); + //cout << "x: " << x << ", y: " << y << ", " << log(x) << endl; + } + return (int) ( (s->maximum() - s->minimum() )*y + s->minimum() ); } void Gang::sliderMoved(int p) { - //qDebug("Slider moved"); - if( value_from_text ) { - value_from_text = false; - //qDebug("bailing out"); - return; - } - value_from_slider = true; - value = p2v(p); - dsb->setValue(value); - changed_ = true; - value_from_slider = false; + //qDebug("Slider moved"); + if( value_from_text ) { + value_from_text = false; + //qDebug("bailing out"); + return; + } + value_from_slider = true; + value = p2v(p); + dsb->setValue(value); + changed_ = true; + value_from_slider = false; } void Gang::sliderValueChanged(int p) { - //qDebug("Slider changed"); - if( value_from_text ) { - value_from_text = false; - //qDebug("bailing out"); - if (!graphics_only) - emit finished(); - return; - } - value_from_slider = true; - value = p2v(p); - dsb->setValue(value); - value = dsb->value(); - changed_ = true; - value_from_slider = false; - if (!graphics_only) - emit finished(); + //qDebug("Slider changed"); + if( value_from_text ) { + value_from_text = false; + //qDebug("bailing out"); + if (!graphics_only) + emit finished(); + return; + } + value_from_slider = true; + value = p2v(p); + dsb->setValue(value); + value = dsb->value(); + changed_ = true; + value_from_slider = false; + if (!graphics_only) + emit finished(); } // void Gang::spinboxFocusEnter() // { -// qDebug("Spinbox lost_focus/enter"); -// if( value_from_slider ) { -// value_from_slider = false; -// qDebug("bailing out"); -// return; -// } -// double x = dsb->value(); -// value = x; -// // value_from_text = true; -// qDebug("0"); -// s->setValue( v2p(value ) ); -// qDebug("1"); -// changed_ = true; -// return; +// qDebug("Spinbox lost_focus/enter"); +// if( value_from_slider ) { +// value_from_slider = false; +// qDebug("bailing out"); +// return; +// } +// double x = dsb->value(); +// value = x; +// // value_from_text = true; +// qDebug("0"); +// s->setValue( v2p(value ) ); +// qDebug("1"); +// changed_ = true; +// return; // } void Gang::spinboxValueChanged(double x) { - //qDebug("Spinbox value_changed"); - if( value_from_slider ) { - value_from_slider = false; - //qDebug("bailing out"); - return; - } - value = x; - value_from_text = true; - s->setValue( v2p(value ) ); - changed_ = true; + //qDebug("Spinbox value_changed"); + if( value_from_slider ) { + value_from_slider = false; + //qDebug("bailing out"); + return; + } + value = x; + value_from_text = true; + s->setValue( v2p(value ) ); + changed_ = true; } void Gang::checkBox1Checked(bool b) { - isCbx1Checked = b; + isCbx1Checked = b; } void Gang::checkBox2Checked(bool b) { - isCbx2Checked = b; + isCbx2Checked = b; } void Gang::radioButton1Checked(bool b) { - isRb1Checked = b; - isRb2Checked = !b; - //cout << "isRb1Checked: " << b << endl; - //cout << "isRb2Checked: " << !b << endl; + isRb1Checked = b; + isRb2Checked = !b; + //cout << "isRb1Checked: " << b << endl; + //cout << "isRb2Checked: " << !b << endl; } void Gang::radioButton2Checked(bool b) { - isRb2Checked = b; - isRb1Checked = !b; - //cout << "isRb1Checked: " << !b << endl; - //cout << "isRb2Checked: " << b << endl; + isRb2Checked = b; + isRb1Checked = !b; + //cout << "isRb1Checked: " << !b << endl; + //cout << "isRb2Checked: " << b << endl; } void Gang::setDefault() { -// qDebug("def"); - graphics_only = true; - value = defaultv; - value_from_slider = true; - if (dsb) { - dsb->setValue(value); - value = dsb->value(); - } - value_from_text = true; - if (s) - s->setValue( v2p(value) ); - changed_ = false; - value_from_text = false; - value_from_slider = false; - graphics_only = false; - if (cbx1) - isCbx1Checked = isCbx1Checked_default; - if (cbx2) - isCbx2Checked = isCbx2Checked_default; - if (rb1) - isRb1Checked = isRb1Checked_default; - if (rb2) - isRb2Checked = isRb2Checked_default; - - //cout << "Gang::setDefault()" << endl; - //cout << "v: " << value << endl; - //cout << "cbx1: " << isCbx1Checked << endl; - //cout << "cbx2: " << isCbx2Checked << endl; - //cout << "rb1: " << isRb1Checked << endl; - //cout << "rb2: " << isRb2Checked << endl; - //cout << "/Gang::setDefault()" << endl; +// qDebug("def"); + graphics_only = true; + value = defaultv; + value_from_slider = true; + if (dsb) { + dsb->setValue(value); + value = dsb->value(); + } + value_from_text = true; + if (s) + s->setValue( v2p(value) ); + changed_ = false; + value_from_text = false; + value_from_slider = false; + graphics_only = false; + if (cbx1) + isCbx1Checked = isCbx1Checked_default; + if (cbx2) + isCbx2Checked = isCbx2Checked_default; + if (rb1) + isRb1Checked = isRb1Checked_default; + if (rb2) + isRb2Checked = isRb2Checked_default; + + //cout << "Gang::setDefault()" << endl; + //cout << "v: " << value << endl; + //cout << "cbx1: " << isCbx1Checked << endl; + //cout << "cbx2: " << isCbx2Checked << endl; + //cout << "rb1: " << isRb1Checked << endl; + //cout << "rb2: " << isRb2Checked << endl; + //cout << "/Gang::setDefault()" << endl; } QString Gang::flag(const QString& f) const @@ -247,159 +247,159 @@ void Gang::setupUndo() { - bool isCbx1Checked = false; - bool isCbx2Checked = false; - bool isRb1Checked = false; - bool isRb2Checked = false; - float v = 0.0; - - if (s) - v = value; - if (cbx1) - isCbx1Checked = cbx1->isChecked(); - if (cbx2) - isCbx2Checked = cbx2->isChecked(); - if (rb1) - isRb1Checked = rb1->isChecked(); - if (rb2) - isRb2Checked = rb2->isChecked(); + bool isCbx1Checked = false; + bool isCbx2Checked = false; + bool isRb1Checked = false; + bool isRb2Checked = false; + float v = 0.0; + + if (s) + v = value; + if (cbx1) + isCbx1Checked = cbx1->isChecked(); + if (cbx2) + isCbx2Checked = cbx2->isChecked(); + if (rb1) + isRb1Checked = rb1->isChecked(); + if (rb2) + isRb2Checked = rb2->isChecked(); tmoSettingsList->append( TmoSettings(this, v, isCbx1Checked, isCbx2Checked, isRb1Checked, isRb2Checked) ); - if (tmoSettingsList->index() == 1) { - emit enableUndo(true); - undoState = true; - } - if (tmoSettingsList->index() == tmoSettingsList->size() - 1) { - emit enableRedo(false); - redoState = false; - } - - //cout << "Gang::setupUndo()" << endl; - //cout << "size: " << tmoSettingsList->size() << endl; - //cout << "index: " << tmoSettingsList->index() << endl; - //cout << "v: " << v << endl; - //cout << "cbx1: " << isCbx1Checked << endl; - //cout << "cbx2: " << isCbx2Checked << endl; - //cout << "rb: " << isRbChecked << endl; - //cout << "/Gang::setupUndo()" << endl; + if (tmoSettingsList->index() == 1) { + emit enableUndo(true); + undoState = true; + } + if (tmoSettingsList->index() == tmoSettingsList->size() - 1) { + emit enableRedo(false); + redoState = false; + } + + //cout << "Gang::setupUndo()" << endl; + //cout << "size: " << tmoSettingsList->size() << endl; + //cout << "index: " << tmoSettingsList->index() << endl; + //cout << "v: " << v << endl; + //cout << "cbx1: " << isCbx1Checked << endl; + //cout << "cbx2: " << isCbx2Checked << endl; + //cout << "rb: " << isRbChecked << endl; + //cout << "/Gang::setupUndo()" << endl; } void Gang::undo() { - //cout << "Gang::undo(): size: " << tmoSettingsList->size() << endl; - //cout << "Gang::undo(): index: " << tmoSettingsList->index() << endl; - if (tmoSettingsList->index() == tmoSettingsList->size() - 1) { - emit enableRedo(true); - redoState = true; - } - - tmoSettingsList->previous(); - - if (tmoSettingsList->index() == 0) { - emit enableUndo(false); - undoState = false; - } - //cout << "/Gang::undo(): size: " << tmoSettingsList->size() << endl; - //cout << "/Gang::undo(): index: " << tmoSettingsList->index() << endl; + //cout << "Gang::undo(): size: " << tmoSettingsList->size() << endl; + //cout << "Gang::undo(): index: " << tmoSettingsList->index() << endl; + if (tmoSettingsList->index() == tmoSettingsList->size() - 1) { + emit enableRedo(true); + redoState = true; + } + + tmoSettingsList->previous(); + + if (tmoSettingsList->index() == 0) { + emit enableUndo(false); + undoState = false; + } + //cout << "/Gang::undo(): size: " << tmoSettingsList->size() << endl; + //cout << "/Gang::undo(): index: " << tmoSettingsList->index() << endl; } void Gang::redo() { - //cout << "Gang::redo()" << endl; - //cout << "Gang::redo(): size: " << tmoSettingsList->size() << endl; - //cout << "Gang::redo(): index: " << tmoSettingsList->index() << endl; - if (tmoSettingsList->index() == 0) { - emit enableUndo(true); - undoState = true; - } - - tmoSettingsList->next(); - - if (tmoSettingsList->index() == tmoSettingsList->size() - 1) { - emit enableRedo(false); - redoState = false; - } + //cout << "Gang::redo()" << endl; + //cout << "Gang::redo(): size: " << tmoSettingsList->size() << endl; + //cout << "Gang::redo(): index: " << tmoSettingsList->index() << endl; + if (tmoSettingsList->index() == 0) { + emit enableUndo(true); + undoState = true; + } + + tmoSettingsList->next(); + + if (tmoSettingsList->index() == tmoSettingsList->size() - 1) { + emit enableRedo(false); + redoState = false; + } - //cout << "/Gang::redo(): size: " << tmoSettingsList->size() << endl; - //cout << "/Gang::redo(): index: " << tmoSettingsList->index() << endl; + //cout << "/Gang::redo(): size: " << tmoSettingsList->size() << endl; + //cout << "/Gang::redo(): index: " << tmoSettingsList->index() << endl; } void Gang::updateUndoState() { - //cout << "Gang::updateUndoState()" << endl; - //cout << "undoState: " << undoState << endl; - //cout << "redoState: " << redoState << endl; - //cout << "/Gang::updateUndoState()" << endl; - emit enableUndo(undoState); - emit enableRedo(redoState); + //cout << "Gang::updateUndoState()" << endl; + //cout << "undoState: " << undoState << endl; + //cout << "redoState: " << redoState << endl; + //cout << "/Gang::updateUndoState()" << endl; + emit enableUndo(undoState); + emit enableRedo(redoState); } // //===================================== Undo/Redo ============================================ // TmoSettings::TmoSettings(Gang *gangPtr, float v, bool isCbx1, bool isCbx2, bool isRB1C, bool isRB2C): - gangPtr(gangPtr) + gangPtr(gangPtr) { - if (gangPtr->cbx1) { - isCbx1Checked = isCbx1; - } - if (gangPtr->cbx2) { - isCbx2Checked = isCbx2; - } - if (gangPtr->rb1) { - isRb1Checked = isRB1C; - - } - if (gangPtr->rb2) { - isRb2Checked = isRB2C; - - } - if (gangPtr->s) { - value = v; - } + if (gangPtr->cbx1) { + isCbx1Checked = isCbx1; + } + if (gangPtr->cbx2) { + isCbx2Checked = isCbx2; + } + if (gangPtr->rb1) { + isRb1Checked = isRB1C; + + } + if (gangPtr->rb2) { + isRb2Checked = isRB2C; + + } + if (gangPtr->s) { + value = v; + } } void TmoSettings::apply() const { - //cout << "TmoSettings::apply()" << endl; - if (gangPtr->s) - gangPtr->s->setValue(gangPtr->v2p(value)); - if (gangPtr->dsb) { - gangPtr->dsb->setValue(value); - gangPtr->value = gangPtr->dsb->value(); - } - if (gangPtr->cbx1) - gangPtr->cbx1->setChecked(isCbx1Checked); - if (gangPtr->cbx2) - gangPtr->cbx2->setChecked(isCbx2Checked); - if (gangPtr->rb1) - gangPtr->rb1->setChecked(isRb1Checked); - if (gangPtr->rb2) - gangPtr->rb2->setChecked(isRb2Checked); + //cout << "TmoSettings::apply()" << endl; + if (gangPtr->s) + gangPtr->s->setValue(gangPtr->v2p(value)); + if (gangPtr->dsb) { + gangPtr->dsb->setValue(value); + gangPtr->value = gangPtr->dsb->value(); + } + if (gangPtr->cbx1) + gangPtr->cbx1->setChecked(isCbx1Checked); + if (gangPtr->cbx2) + gangPtr->cbx2->setChecked(isCbx2Checked); + if (gangPtr->rb1) + gangPtr->rb1->setChecked(isRb1Checked); + if (gangPtr->rb2) + gangPtr->rb2->setChecked(isRb2Checked); } // // TmoSettingsList Implementation // -TmoSettingsList::TmoSettingsList(): QList(), m_index(-1) {} +TmoSettingsList::TmoSettingsList(): QList(), m_index(-1) {} TmoSettingsList::~TmoSettingsList() {} void TmoSettingsList::previous() { - if (m_index > 0) { - m_index--; - at(m_index).apply(); - } + if (m_index > 0) { + m_index--; + at(m_index).apply(); + } } void TmoSettingsList::next() { - if (m_index < size()) { - m_index++; - at(m_index).apply(); - } + if (m_index < size()) { + m_index++; + at(m_index).apply(); + } } int TmoSettingsList::index() { - return m_index; + return m_index; } void TmoSettingsList::append(const TmoSettings &value) { - QList::append(value); - m_index++; + QList::append(value); + m_index++; } diff -Nru luminance-hdr-2.5.0/src/UI/Gang.h luminance-hdr-2.5.1/src/UI/Gang.h --- luminance-hdr-2.5.0/src/UI/Gang.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/Gang.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * based on previous GPL code from qpfstmo * Original Work @@ -39,7 +39,7 @@ class Gang : public QObject { - Q_OBJECT + Q_OBJECT public: friend class TmoSettings; @@ -55,58 +55,58 @@ bool isCheckBox2Checked() const; bool isRadioButton1Checked() const; bool isRadioButton2Checked() const; - float p2v(const int p) const; - int v2p(const float x) const; - void setDefault(); + float p2v(const int p) const; + int v2p(const float x) const; + void setDefault(); bool changed() const; QString flag(const QString& f) const; QString fname(const QString& f) const; - void setupUndo(); - void undo(); - void redo(); - void updateUndoState(); + void setupUndo(); + void undo(); + void redo(); + void updateUndoState(); protected slots: - void sliderMoved(int p); - void sliderValueChanged(int p); - void spinboxValueChanged(double); - void checkBox1Checked(bool); - void checkBox2Checked(bool); - void radioButton1Checked(bool); - void radioButton2Checked(bool); + void sliderMoved(int p); + void sliderValueChanged(int p); + void spinboxValueChanged(double); + void checkBox1Checked(bool); + void checkBox2Checked(bool); + void radioButton1Checked(bool); + void radioButton2Checked(bool); signals: - void finished(); - void enableUndo(bool); - void enableRedo(bool); + void finished(); + void enableUndo(bool); + void enableRedo(bool); private: - QSlider *s; - QDoubleSpinBox *dsb; - QCheckBox *cbx1; - QCheckBox *cbx2; - QRadioButton *rb1; - QRadioButton *rb2; - bool isCbx1Checked; - bool isCbx2Checked; - bool isRb1Checked; - bool isRb2Checked; - bool isCbx1Checked_default; - bool isCbx2Checked_default; - bool isRb1Checked_default; - bool isRb2Checked_default; - float minv; - float maxv; - float defaultv; - bool logscaling; - float value; - bool value_from_text; - bool value_from_slider; - bool graphics_only; - bool changed_; - bool undoState; - bool redoState; - TmoSettingsList *tmoSettingsList; + QSlider *s; + QDoubleSpinBox *dsb; + QCheckBox *cbx1; + QCheckBox *cbx2; + QRadioButton *rb1; + QRadioButton *rb2; + bool isCbx1Checked; + bool isCbx2Checked; + bool isRb1Checked; + bool isRb2Checked; + bool isCbx1Checked_default; + bool isCbx2Checked_default; + bool isRb1Checked_default; + bool isRb2Checked_default; + float minv; + float maxv; + float defaultv; + bool logscaling; + float value; + bool value_from_text; + bool value_from_slider; + bool graphics_only; + bool changed_; + bool undoState; + bool redoState; + TmoSettingsList *tmoSettingsList; }; inline float Gang::v() const @@ -134,27 +134,27 @@ // class TmoSettings { public: - TmoSettings(Gang *gangPtr, float, bool, bool, bool, bool); - void apply() const; + TmoSettings(Gang *gangPtr, float, bool, bool, bool, bool); + void apply() const; protected: - Gang *gangPtr; - bool isCbx1Checked; - bool isCbx2Checked; - bool isRb1Checked; - bool isRb2Checked; - float value; + Gang *gangPtr; + bool isCbx1Checked; + bool isCbx2Checked; + bool isRb1Checked; + bool isRb2Checked; + float value; }; class TmoSettingsList : public QList { public: - TmoSettingsList(); - ~TmoSettingsList(); - void previous(); - void next(); - int index(); - void append(const TmoSettings &value); + TmoSettingsList(); + ~TmoSettingsList(); + void previous(); + void next(); + int index(); + void append(const TmoSettings &value); private: - int m_index; + int m_index; }; #endif diff -Nru luminance-hdr-2.5.0/src/UI/ImageQualityDialog.cpp luminance-hdr-2.5.1/src/UI/ImageQualityDialog.cpp --- luminance-hdr-2.5.0/src/UI/ImageQualityDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/ImageQualityDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -41,37 +41,37 @@ ImageQualityDialog::ImageQualityDialog(const pfs::Frame* frame, const QString& fmt, int defaultValue, QWidget *parent) - : QDialog(parent) - , m_frame(frame) - , m_format(fmt) - , m_ui(new Ui::ImgQualityDialog) - , m_options(new LuminanceOptions()) + : QDialog(parent) + , m_frame(frame) + , m_format(fmt) + , m_ui(new Ui::ImgQualityDialog) + , m_options(new LuminanceOptions()) { - m_ui->setupUi(this); + m_ui->setupUi(this); if (defaultValue >= 0) { m_ui->spinBox->setValue(defaultValue); } else if (frame) - { - m_ui->spinBox->setValue(m_options->value(IMAGE_QUALITY_KEY, IMAGE_QUALITY_DEFAULT).toInt()); - } - else - { - m_ui->spinBox->setValue(100); - } - - if (frame) - { - connect(m_ui->spinBox, SIGNAL(valueChanged(int)), - this, SLOT(reset(int))); - connect(m_ui->horizontalSlider, SIGNAL(valueChanged(int)), - this, SLOT(reset(int))); - } - else - { - m_ui->fileSizePanel->setVisible(false); - } + { + m_ui->spinBox->setValue(m_options->value(IMAGE_QUALITY_KEY, IMAGE_QUALITY_DEFAULT).toInt()); + } + else + { + m_ui->spinBox->setValue(100); + } + + if (frame) + { + connect(m_ui->spinBox, SIGNAL(valueChanged(int)), + this, SLOT(reset(int))); + connect(m_ui->horizontalSlider, SIGNAL(valueChanged(int)), + this, SLOT(reset(int))); + } + else + { + m_ui->fileSizePanel->setVisible(false); + } #ifdef Q_OS_MAC this->setWindowModality(Qt::WindowModal); // In OS X, the QMessageBox is modal to the window @@ -80,10 +80,10 @@ ImageQualityDialog::~ImageQualityDialog() { - if (m_frame) - { - m_options->setValue(IMAGE_QUALITY_KEY, getQuality()); - } + if (m_frame) + { + m_options->setValue(IMAGE_QUALITY_KEY, getQuality()); + } } int ImageQualityDialog::getQuality(void) const @@ -102,22 +102,22 @@ pfs::io::JpegWriter writer; writer.write(*m_frame, params); size = writer.getFileSize(); - } + } else if (m_format.startsWith("png")) { pfs::io::PngWriter writer; writer.write(*m_frame, params); size = writer.getFileSize(); - } + } else { return; } // else // { -// QByteArray ba; -// QBuffer buffer(&ba); -// buffer.open(QIODevice::WriteOnly); +// QByteArray ba; +// QBuffer buffer(&ba); +// buffer.open(QIODevice::WriteOnly); // m_image->save(&buffer, m_format.toLatin1().constData(), quality); -// size = ba.size(); -// } +// size = ba.size(); +// } QLocale def; QString s = def.toString(size); diff -Nru luminance-hdr-2.5.0/src/UI/PreviewFrame.cpp luminance-hdr-2.5.1/src/UI/PreviewFrame.cpp --- luminance-hdr-2.5.0/src/UI/PreviewFrame.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/PreviewFrame.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -26,11 +26,11 @@ PreviewFrame::PreviewFrame(QWidget *parent) : QFrame(parent), - m_index(0) + m_index(0) { m_flowLayout = new FlowLayout; setLayout(m_flowLayout); - QPalette* palette = new QPalette(); + QPalette* palette = new QPalette(); palette->setColor(QPalette::Foreground,Qt::red); setPalette(*palette); } diff -Nru luminance-hdr-2.5.0/src/UI/PreviewFrame.h luminance-hdr-2.5.1/src/UI/PreviewFrame.h --- luminance-hdr-2.5.0/src/UI/PreviewFrame.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/PreviewFrame.h 2017-05-10 19:14:06.000000000 +0000 @@ -40,7 +40,7 @@ void addLabel(SimplePreviewLabel* label); SimplePreviewLabel* getLabel(int index) { return m_labels[index]; } int getSelectedLabel() { return m_index; } - + public slots: void selectLabel(int index); diff -Nru luminance-hdr-2.5.0/src/UI/SupportedCamerasDialog.cpp luminance-hdr-2.5.1/src/UI/SupportedCamerasDialog.cpp --- luminance-hdr-2.5.0/src/UI/SupportedCamerasDialog.cpp 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/SupportedCamerasDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,90 @@ +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2016 Franco Comida + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Franco Comida + */ + +#include +#include "SupportedCamerasDialog.h" +#include "ui_SupportedCamerasDialog.h" +#include "Common/GitSHA1.h" +#include "Common/config.h" + +#ifdef __APPLE__ +#include +#else +#include +#endif + +SupportedCamerasDialog::SupportedCamerasDialog(QWidget* parent) + : QDialog(parent) + , m_Ui(new Ui::SupportedCamerasDialog) +{ + m_Ui->setupUi(this); + + m_Ui->labelVersion->setText(QString(LUMINANCEVERSION) + " [Build " + QString(g_GIT_SHA1).left(6) + "]"); + + const char *version = LibRaw::version(); + int count = LibRaw::cameraCount(); + m_Ui->labelLibRawVersion->setText(m_Ui->labelLibRawVersion->text() + " " + QString(version)); + m_Ui->labelCount->setText(QString("%1").arg(count) + " " + m_Ui->labelCount->text()); + + const char **list = LibRaw::cameraList(); + while (*list) + { + QListWidgetItem *item = new QListWidgetItem(*list++); + m_Ui->listWidget->addItem(item); + m_items.append(new QListWidgetItem(*item)); + } + + connect(m_Ui->lineEdit, SIGNAL(textEdited(const QString &)), this, SLOT(search(const QString &))); +} + +SupportedCamerasDialog::~SupportedCamerasDialog() +{ + while (!m_items.isEmpty()) + delete m_items.takeFirst(); +} + +// I REALLY HATE this implementation!!! +void SupportedCamerasDialog::search(const QString &text) +{ + m_Ui->listWidget->clear(); + + //for (auto i : m_items) + BOOST_FOREACH (QListWidgetItem *i, m_items) + { + m_Ui->listWidget->addItem(new QListWidgetItem(*i)); // listWidget takes ownership of its items + } + QList tmp_found = m_Ui->listWidget->findItems(text, Qt::MatchContains); // still owned by listWidget + QList found; + //for (auto i : tmp_found) + BOOST_FOREACH (QListWidgetItem *i, tmp_found) + { + found.append(new QListWidgetItem(*i)); // new copy owned by found QList + } + m_Ui->listWidget->clear(); + //for (auto i : found) + BOOST_FOREACH (QListWidgetItem *i, found) + { + m_Ui->listWidget->addItem(i); // ownership transferred by found to listWidget + } +} + diff -Nru luminance-hdr-2.5.0/src/UI/SupportedCamerasDialog.h luminance-hdr-2.5.1/src/UI/SupportedCamerasDialog.h --- luminance-hdr-2.5.0/src/UI/SupportedCamerasDialog.h 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/SupportedCamerasDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,51 @@ +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2016 Franco Comida + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Franco Comida + */ + +#ifndef SUPPORTEDCAMERASDIALOG_H +#define SUPPORTEDCAMERASDIALOG_H + +#include +#include +#include + +namespace Ui +{ + class SupportedCamerasDialog; +} + +class SupportedCamerasDialog : public QDialog +{ + Q_OBJECT +public: + explicit SupportedCamerasDialog(QWidget* parent); + ~SupportedCamerasDialog(); + +private: + QList m_items; + QScopedPointer m_Ui; + +public slots: + void search(const QString &); +}; + +#endif // SUPPORTEDCAMERASDIALOG_H diff -Nru luminance-hdr-2.5.0/src/UI/SupportedCamerasDialog.ui luminance-hdr-2.5.1/src/UI/SupportedCamerasDialog.ui --- luminance-hdr-2.5.0/src/UI/SupportedCamerasDialog.ui 1970-01-01 00:00:00.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/SupportedCamerasDialog.ui 2017-05-10 19:14:06.000000000 +0000 @@ -0,0 +1,225 @@ + + + SupportedCamerasDialog + + + + 0 + 0 + 400 + 581 + + + + List of supported cameras + + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + + 0 + 0 + + + + + + + :/program-icons/luminance-hdr + + + + + + + + 12 + 75 + true + + + + TextLabel + + + + + + + + 14 + 75 + true + + + + <html><head/><body><p><span style=" font-weight:600; color:#0078dc;">Luminance HDR</span></p></body></html> + + + Qt::RichText + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + + + + + With LibRaw version + + + + + + + + + + + models listed + + + + + + + + + + + + + + + search... + + + true + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + OK + + + + + + + + + + + + lineEdit + pushButton + listWidget + + + + + + + pushButton + clicked() + SupportedCamerasDialog + accept() + + + 329 + 563 + + + 232 + 555 + + + + + diff -Nru luminance-hdr-2.5.0/src/UI/TiffModeDialog.cpp luminance-hdr-2.5.1/src/UI/TiffModeDialog.cpp --- luminance-hdr-2.5.0/src/UI/TiffModeDialog.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/TiffModeDialog.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2013 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * */ diff -Nru luminance-hdr-2.5.0/src/UI/TiffModeDialog.h luminance-hdr-2.5.1/src/UI/TiffModeDialog.h --- luminance-hdr-2.5.0/src/UI/TiffModeDialog.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/TiffModeDialog.h 2017-05-10 19:14:06.000000000 +0000 @@ -35,11 +35,11 @@ class TiffModeDialog : public QDialog { Q_OBJECT - + public: explicit TiffModeDialog(bool hdrMode = false, int defaultValue = -1, QWidget *parent = 0); ~TiffModeDialog(); - + int getTiffWriterMode(); private: diff -Nru luminance-hdr-2.5.0/src/UI/UMessageBox.h luminance-hdr-2.5.1/src/UI/UMessageBox.h --- luminance-hdr-2.5.0/src/UI/UMessageBox.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/UI/UMessageBox.h 2017-05-10 19:14:06.000000000 +0000 @@ -41,7 +41,7 @@ class UMessageBox : public QMessageBox { Q_OBJECT - + public: explicit UMessageBox(QWidget *parent = 0); diff -Nru luminance-hdr-2.5.0/src/Viewers/GenericViewer.cpp luminance-hdr-2.5.1/src/Viewers/GenericViewer.cpp --- luminance-hdr-2.5.0/src/Viewers/GenericViewer.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/GenericViewer.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -93,12 +93,6 @@ GenericViewer::~GenericViewer() { - /* - if (mFrame) - delete mFrame; - if (mPixmap) - delete mPixmap; - */ } void GenericViewer::retranslateUi() @@ -108,9 +102,9 @@ void GenericViewer::changeEvent(QEvent *event) { - if (event->type() == QEvent::LanguageChange) - retranslateUi(); - QWidget::changeEvent(event); + if (event->type() == QEvent::LanguageChange) + retranslateUi(); + QWidget::changeEvent(event); } void GenericViewer::fitToWindow(bool /* checked */) @@ -132,11 +126,7 @@ // update only if the change is above the 0.05% if ( qAbs(sf - static_cast(1.0)) > 0.05 ) { -#ifdef QT_DEBUG - //qDebug() << "void GenericViewer::fitToWindow().sf = " << sf; -#endif mView->scale(sf,sf); - emit changed(this); } } @@ -165,11 +155,7 @@ // update only if the change is above the 0.05% if ( qAbs(sf - static_cast(1.0)) > 0.05 ) { -#ifdef QT_DEBUG - //qDebug() << "void GenericViewer::fillToWindow().sf = " << sf; -#endif mView->scale(sf,sf); - emit changed(this); } } @@ -375,9 +361,8 @@ void GenericViewer::setQImage(const QImage& qimage) { - QPixmap pixmap = QPixmap::fromImage(qimage); - //pixmap.setDevicePixelRatio(m_devicePixelRatio); - pixmap.setDevicePixelRatio(m_devicePixelRatio); + QPixmap pixmap = QPixmap::fromImage(qimage); + pixmap.setDevicePixelRatio(m_devicePixelRatio); mPixmap->setPixmap(pixmap); } @@ -408,7 +393,7 @@ // update tonemappingoptions (if available) // in the current implementation, only LdrViewer redefines this function if (tmopts != NULL) - setTonemappingOptions(tmopts); + setTonemappingOptions(tmopts); // reset boundaries updateView(); @@ -421,11 +406,11 @@ void GenericViewer::startDragging() { - QDrag *drag = new QDrag(this); - QMimeData *mimeData = new QMimeData; - mimeData->setImageData(mPixmap->pixmap().toImage()); - drag->setMimeData(mimeData); - drag->setPixmap(mPixmap->pixmap().scaledToHeight(mPixmap->pixmap().height()/10)); + QDrag *drag = new QDrag(this); + QMimeData *mimeData = new QMimeData; + mimeData->setImageData(mPixmap->pixmap().toImage()); + drag->setMimeData(mimeData); + drag->setPixmap(mPixmap->pixmap().scaledToHeight(mPixmap->pixmap().height()/10)); /*Qt::DropAction dropAction =*/ drag->exec(); } @@ -435,6 +420,15 @@ if (event->key() == Qt::Key_F10) { emit reparent(this); } + else if (event->key() == Qt::Key_N) { + emit goNext(this); + } + else if (event->key() == Qt::Key_P) { + emit goPrevious(this); + } + else if (event->key() == Qt::Key_S) { + emit syncViewers(this); + } else if (event->key() == Qt::Key_Plus) { zoomIn(); } diff -Nru luminance-hdr-2.5.0/src/Viewers/GenericViewer.h luminance-hdr-2.5.1/src/Viewers/GenericViewer.h --- luminance-hdr-2.5.0/src/Viewers/GenericViewer.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/GenericViewer.h 2017-05-10 19:14:06.000000000 +0000 @@ -47,7 +47,7 @@ class IGraphicsPixmapItem; // #include "Viewers/IGraphicsPixmapItem.h" class TonemappingOptions; -class GenericViewer : public QWidget +class GenericViewer : public QWidget { Q_OBJECT public: @@ -154,8 +154,8 @@ //! \brief set new QImage void setQImage(const QImage& qimage); - //! \brief - void setDevicePixelRatio(const float s); + //! \brief + void setDevicePixelRatio(const float s); //! this function returns an handle to the internal data type //! it would be better if the return pointer is const @@ -173,12 +173,12 @@ /*virtual*/ void slotCornerButtonPressed(); /*virtual*/ void scrollBarChanged(int /*value*/); - void startDragging(); + void startDragging(); protected: - virtual void retranslateUi(); - virtual void changeEvent(QEvent* event); + virtual void retranslateUi(); + virtual void changeEvent(QEvent* event); QToolBar* mToolBar; QToolButton* mCornerButton; @@ -210,12 +210,15 @@ QAction* m_actionClose; - float m_devicePixelRatio = 1.0; + float m_devicePixelRatio = 1.0; Q_SIGNALS: void selectionReady(bool isReady); void changed(GenericViewer *v); // emitted when zoomed in/out, scrolled .... void reparent(GenericViewer *v); // emitted when exit fullscreen + void goNext(GenericViewer *v); // shows next image in fullscreen + void goPrevious(GenericViewer *v); // shows previous image in fullscreen + void syncViewers(GenericViewer *v); // toggle viewers syncronization }; inline @@ -245,6 +248,6 @@ inline void GenericViewer::setDevicePixelRatio(const float s) { - m_devicePixelRatio = s; + m_devicePixelRatio = s; } #endif diff -Nru luminance-hdr-2.5.0/src/Viewers/HdrViewer.cpp luminance-hdr-2.5.1/src/Viewers/HdrViewer.cpp --- luminance-hdr-2.5.0/src/Viewers/HdrViewer.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/HdrViewer.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -67,24 +67,21 @@ { initUi(); - if (frame) // In new fullscreen viewer we have a NULL frame at construction - { - // I prefer to do everything by hand, so the flow of the calls is clear - m_lumRange->blockSignals(true); - - m_lumRange->setHistogramImage(getPrimaryChannel(*getFrame())); - m_lumRange->fitToDynamicRange(); - - m_mappingMethod = static_cast( m_mappingMethodCB->currentIndex() ); - m_minValue = powf( 10.0f, m_lumRange->getRangeWindowMin() ); - m_maxValue = powf( 10.0f, m_lumRange->getRangeWindowMax() ); - - QScopedPointer qImage(mapFrameToImage(getFrame())); - mPixmap->setPixmap(QPixmap::fromImage(*qImage)); - - updateView(); - m_lumRange->blockSignals(false); - } + // I prefer to do everything by hand, so the flow of the calls is clear + m_lumRange->blockSignals(true); + + m_lumRange->setHistogramImage(getPrimaryChannel(*getFrame())); + m_lumRange->fitToDynamicRange(); + + m_mappingMethod = static_cast( m_mappingMethodCB->currentIndex() ); + m_minValue = powf( 10.0f, m_lumRange->getRangeWindowMin() ); + m_maxValue = powf( 10.0f, m_lumRange->getRangeWindowMax() ); + + QScopedPointer qImage(mapFrameToImage(getFrame())); + mPixmap->setPixmap(QPixmap::fromImage(*qImage)); + + updateView(); + m_lumRange->blockSignals(false); } void HdrViewer::initUi() @@ -116,13 +113,13 @@ int oldMappingMethodIndex = m_mappingMethodCB->currentIndex(); disconnect( m_mappingMethodCB, SIGNAL( activated( int ) ), this, SLOT( setLumMappingMethod(int) ) ); - QStringList methods; - methods << tr("Linear") - << tr("Gamma 1.4") - << tr("Gamma 1.8") - << tr("Gamma 2.2") - << tr("Gamma 2.6") - << tr("Logarithmic"); + QStringList methods; + methods << tr("Linear") + << tr("Gamma 1.4") + << tr("Gamma 1.8") + << tr("Gamma 2.2") + << tr("Gamma 2.6") + << tr("Logarithmic"); m_mappingMethodCB->clear(); m_mappingMethodCB->addItems(methods); @@ -130,7 +127,7 @@ connect(m_mappingMethodCB, SIGNAL(activated( int )), this, SLOT(setLumMappingMethod(int))); connect(m_mappingMethodCB, SIGNAL(currentIndexChanged(int)), m_mappingMethodCB, SLOT(setFocus())); - GenericViewer::retranslateUi(); + GenericViewer::retranslateUi(); } void HdrViewer::refreshPixmap() diff -Nru luminance-hdr-2.5.0/src/Viewers/HdrViewer.h luminance-hdr-2.5.1/src/Viewers/HdrViewer.h --- luminance-hdr-2.5.0/src/Viewers/HdrViewer.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/HdrViewer.h 2017-05-10 19:14:06.000000000 +0000 @@ -83,7 +83,7 @@ protected: // Methods - virtual void retranslateUi(); + virtual void retranslateUi(); void setRangeWindow(float min, float max); void keyPressEvent(QKeyEvent *event); diff -Nru luminance-hdr-2.5.0/src/Viewers/Histogram.cpp luminance-hdr-2.5.1/src/Viewers/Histogram.cpp --- luminance-hdr-2.5.0/src/Viewers/Histogram.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/Histogram.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,10 +1,10 @@ /** - * @brief - * + * @brief + * * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Rafal Mantiuk, * @@ -51,7 +51,7 @@ { min = 999999999.0f; max = -999999999.0f; - + for( int i = 0; i < size; i += accuracy ) { float v = (*image)(i); if( v > max ) max = v; @@ -65,7 +65,7 @@ void Histogram::computeLog( const pfs::Array2Df *image, float min, float max ) { const int size = image->getRows()*image->getCols(); - + // Empty all bins for( int i = 0; i < bins; i++ ) P[i] = 0; @@ -86,7 +86,7 @@ // Normalize, to get probability for( int i = 0; i < bins; i++ ) P[i] /= (float)(count/accuracy); - + } float Histogram::getMaxP() const @@ -95,7 +95,7 @@ for( int i = 0; i < bins; i++ ) { if( P[i] > maxP ) { maxP = P[i]; - } + } } return maxP; } diff -Nru luminance-hdr-2.5.0/src/Viewers/Histogram.h luminance-hdr-2.5.1/src/Viewers/Histogram.h --- luminance-hdr-2.5.0/src/Viewers/Histogram.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/Histogram.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,12 +1,12 @@ #ifndef HISTOGRAM_H #define HISTOGRAM_H /** - * @brief - * + * @brief + * * This file is a part of PFSTOOLS package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -20,7 +20,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Rafal Mantiuk, * @@ -34,7 +34,7 @@ { int bins; int accuracy; - + float *P; public: @@ -44,7 +44,7 @@ void computeLog( const pfs::Array2Df *image ); void computeLog( const pfs::Array2Df *image, float min, float max ); - int getBins() const + int getBins() const { return bins; } @@ -55,9 +55,9 @@ assert( bin < bins ); return P[bin]; } - - - + + + }; #endif diff -Nru luminance-hdr-2.5.0/src/Viewers/IGraphicsPixmapItem.cpp luminance-hdr-2.5.1/src/Viewers/IGraphicsPixmapItem.cpp --- luminance-hdr-2.5.0/src/Viewers/IGraphicsPixmapItem.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/IGraphicsPixmapItem.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -38,6 +38,7 @@ mDropShadow->setBlurRadius(10); mDropShadow->setOffset(0,0); //this->setGraphicsEffect(mDropShadow); + setTransformationMode(Qt::SmoothTransformation); } IGraphicsPixmapItem::~IGraphicsPixmapItem() @@ -74,9 +75,9 @@ void IGraphicsPixmapItem::mousePressEvent(QGraphicsSceneMouseEvent *event) { if (!mIsSelectionEnabled && event->button() == Qt::LeftButton) { - emit startDragging(); - return; - } + emit startDragging(); + return; + } if (event->button() == Qt::LeftButton) { diff -Nru luminance-hdr-2.5.0/src/Viewers/IGraphicsPixmapItem.h luminance-hdr-2.5.1/src/Viewers/IGraphicsPixmapItem.h --- luminance-hdr-2.5.0/src/Viewers/IGraphicsPixmapItem.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/IGraphicsPixmapItem.h 2017-05-10 19:14:06.000000000 +0000 @@ -51,7 +51,7 @@ Q_SIGNALS: void selectionReady(bool); - void startDragging(); + void startDragging(); protected: virtual void mousePressEvent(QGraphicsSceneMouseEvent *e); diff -Nru luminance-hdr-2.5.0/src/Viewers/IGraphicsView.cpp luminance-hdr-2.5.1/src/Viewers/IGraphicsView.cpp --- luminance-hdr-2.5.0/src/Viewers/IGraphicsView.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/IGraphicsView.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2011 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Davide Anastasia @@ -42,6 +42,7 @@ void IGraphicsView::init() { //setDragMode(QGraphicsView::RubberBandDrag); + setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform); } IGraphicsView::~IGraphicsView() diff -Nru luminance-hdr-2.5.0/src/Viewers/IGraphicsView.h luminance-hdr-2.5.1/src/Viewers/IGraphicsView.h --- luminance-hdr-2.5.0/src/Viewers/IGraphicsView.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/IGraphicsView.h 2017-05-10 19:14:06.000000000 +0000 @@ -2,7 +2,7 @@ * This file is a part of Luminance HDR package. * ---------------------------------------------------------------------- * Copyright (C) 2011 Davide Anastasia - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * Original Work * @author Davide Anastasia diff -Nru luminance-hdr-2.5.0/src/Viewers/ISelectionAnchor.cpp luminance-hdr-2.5.1/src/Viewers/ISelectionAnchor.cpp --- luminance-hdr-2.5.0/src/Viewers/ISelectionAnchor.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/ISelectionAnchor.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,137 +1,137 @@ -/** - * This file is a part of Luminance HDR package. - * ---------------------------------------------------------------------- - * Copyright (C) 2011 Davide Anastasia - * - * This program 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 2 of the License, or - * (at your option) any later version. - * - * This program 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 this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- - * - * @author Davide Anastasia - * - */ - -#include -#include - -#include "Viewers/ISelectionAnchor.h" - -ISelectionAnchor::ISelectionAnchor(AnchorPosition position, QGraphicsItem *parent): - QGraphicsItem(parent), - mAnchorColor(Qt::black), - mSize(ANCHOR_SIZE), - mPosition(position), - mMouseState(MOUSE_BUTTON_RELEASED) -{ - setParentItem(parent); - - this->setAcceptHoverEvents(true); -} - -// we have to implement the mouse events to keep the linker happy, -// just set accepted to false since are not actually handling them - -//void ISelectionAnchor::mouseMoveEvent(QGraphicsSceneDragDropEvent *event) -//{ -// event->setAccepted(false); -//} - -//void ISelectionAnchor::mousePressEvent(QGraphicsSceneDragDropEvent *event) -//{ -// event->setAccepted(false); -//} - -void ISelectionAnchor::mouseReleaseEvent(QGraphicsSceneMouseEvent* event) -{ - mMouseState = MOUSE_BUTTON_RELEASED; - event->setAccepted(false); -} - -void ISelectionAnchor::mousePressEvent(QGraphicsSceneMouseEvent* event) -{ - mMouseState = MOUSE_BUTTON_PRESSED; - event->setAccepted(false); -} - -void ISelectionAnchor::mouseMoveEvent(QGraphicsSceneMouseEvent* event) -{ - mMouseState = MOUSE_MOVING; - event->setAccepted(false); -} - -// change the color on hover events to indicate to the use the object has -// been captured by the mouse - -void ISelectionAnchor::hoverLeaveEvent(QGraphicsSceneHoverEvent*) -{ - unsetCursor(); - mAnchorColor = Qt::black; - this->update(); -} - -void ISelectionAnchor::hoverEnterEvent(QGraphicsSceneHoverEvent*) -{ - setCursor(Qt::CrossCursor); - -// switch (mPosition) -// { -// case TOP_LEFT: -// case BOTTOM_RIGHT: -// setCursor(Qt::SizeFDiagCursor); -// break; -// case TOP_RIGHT: -// case BOTTOM_LEFT: -// setCursor(Qt::SizeBDiagCursor); -// break; -// case LEFT: case RIGHT: -// setCursor(Qt::SizeHorCursor); -// break; -// case TOP: case BOTTOM: -// setCursor(Qt::SizeVerCursor); -// break; -// } - - mAnchorColor = Qt::red; - this->update(); -} - -QRectF ISelectionAnchor::boundingRect() const -{ - return QRectF(-mSize/qreal(2.), -mSize/qreal(2.), mSize, mSize).normalized() ; -} - -#include - -void ISelectionAnchor::paint(QPainter* painter, const QStyleOptionGraphicsItem*, QWidget*) -{ - QList views = this->scene()->views(); - - // I only consider the first one for speed, being sure that - if ( views.count() >= 1) - { - QGraphicsView* view = views.at(0); - qreal sf = 1.0/view->transform().m11(); - - mSize = qFloor(ANCHOR_SIZE*sf); - } - else - { - // default values - mSize = ANCHOR_SIZE; - } - - painter->setPen( Qt::NoPen ); - painter->setBrush( QBrush(mAnchorColor, Qt::SolidPattern) ); - painter->drawEllipse( QRectF(-mSize/qreal(2.), -mSize/qreal(2.), mSize, mSize).normalized() ); -} +/** + * This file is a part of Luminance HDR package. + * ---------------------------------------------------------------------- + * Copyright (C) 2011 Davide Anastasia + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * ---------------------------------------------------------------------- + * + * @author Davide Anastasia + * + */ + +#include +#include + +#include "Viewers/ISelectionAnchor.h" + +ISelectionAnchor::ISelectionAnchor(AnchorPosition position, QGraphicsItem *parent): + QGraphicsItem(parent), + mAnchorColor(Qt::black), + mSize(ANCHOR_SIZE), + mPosition(position), + mMouseState(MOUSE_BUTTON_RELEASED) +{ + setParentItem(parent); + + this->setAcceptHoverEvents(true); +} + +// we have to implement the mouse events to keep the linker happy, +// just set accepted to false since are not actually handling them + +//void ISelectionAnchor::mouseMoveEvent(QGraphicsSceneDragDropEvent *event) +//{ +// event->setAccepted(false); +//} + +//void ISelectionAnchor::mousePressEvent(QGraphicsSceneDragDropEvent *event) +//{ +// event->setAccepted(false); +//} + +void ISelectionAnchor::mouseReleaseEvent(QGraphicsSceneMouseEvent* event) +{ + mMouseState = MOUSE_BUTTON_RELEASED; + event->setAccepted(false); +} + +void ISelectionAnchor::mousePressEvent(QGraphicsSceneMouseEvent* event) +{ + mMouseState = MOUSE_BUTTON_PRESSED; + event->setAccepted(false); +} + +void ISelectionAnchor::mouseMoveEvent(QGraphicsSceneMouseEvent* event) +{ + mMouseState = MOUSE_MOVING; + event->setAccepted(false); +} + +// change the color on hover events to indicate to the use the object has +// been captured by the mouse + +void ISelectionAnchor::hoverLeaveEvent(QGraphicsSceneHoverEvent*) +{ + unsetCursor(); + mAnchorColor = Qt::black; + this->update(); +} + +void ISelectionAnchor::hoverEnterEvent(QGraphicsSceneHoverEvent*) +{ + setCursor(Qt::CrossCursor); + +// switch (mPosition) +// { +// case TOP_LEFT: +// case BOTTOM_RIGHT: +// setCursor(Qt::SizeFDiagCursor); +// break; +// case TOP_RIGHT: +// case BOTTOM_LEFT: +// setCursor(Qt::SizeBDiagCursor); +// break; +// case LEFT: case RIGHT: +// setCursor(Qt::SizeHorCursor); +// break; +// case TOP: case BOTTOM: +// setCursor(Qt::SizeVerCursor); +// break; +// } + + mAnchorColor = Qt::red; + this->update(); +} + +QRectF ISelectionAnchor::boundingRect() const +{ + return QRectF(-mSize/qreal(2.), -mSize/qreal(2.), mSize, mSize).normalized() ; +} + +#include + +void ISelectionAnchor::paint(QPainter* painter, const QStyleOptionGraphicsItem*, QWidget*) +{ + QList views = this->scene()->views(); + + // I only consider the first one for speed, being sure that + if ( views.count() >= 1) + { + QGraphicsView* view = views.at(0); + qreal sf = 1.0/view->transform().m11(); + + mSize = qFloor(ANCHOR_SIZE*sf); + } + else + { + // default values + mSize = ANCHOR_SIZE; + } + + painter->setPen( Qt::NoPen ); + painter->setBrush( QBrush(mAnchorColor, Qt::SolidPattern) ); + painter->drawEllipse( QRectF(-mSize/qreal(2.), -mSize/qreal(2.), mSize, mSize).normalized() ); +} diff -Nru luminance-hdr-2.5.0/src/Viewers/LdrViewer.cpp luminance-hdr-2.5.1/src/Viewers/LdrViewer.cpp --- luminance-hdr-2.5.0/src/Viewers/LdrViewer.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/LdrViewer.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -159,26 +159,25 @@ , informativeLabel(new QLabel(mToolBar)) , mTonemappingOptions(opts) { + informativeLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred); + informativeLabel->setMinimumSize(QSize(200,36)); mToolBar->addWidget(informativeLabel); setDevicePixelRatio(devicePixelRatio); mPixmap->disableSelectionTool(); // disable by default crop functionalities - if (frame) // In new fullscreen viewer we have a NULL frame at construction - { - // I shouldn't call a virtual function straight from the constructor, - // but specifing correctly which version of this virtual function I want to call, - // I am safe - LdrViewer::setTonemappingOptions(opts); - - QScopedPointer temp_qimage( fromLDRPFStoQImage(getFrame()) ); - doCMSTransform(*temp_qimage, false, false); - setQImage(*temp_qimage); + // I shouldn't call a virtual function straight from the constructor, + // but specifing correctly which version of this virtual function I want to call, + // I am safe + LdrViewer::setTonemappingOptions(opts); - updateView(); - retranslateUi(); - } + QScopedPointer temp_qimage( fromLDRPFStoQImage(getFrame()) ); + doCMSTransform(*temp_qimage, false, false); + setQImage(*temp_qimage); + + updateView(); + retranslateUi(); } LdrViewer::~LdrViewer() @@ -190,9 +189,10 @@ void LdrViewer::retranslateUi() { - informativeLabel->setText( tr("LDR image [%1 x %2]").arg(getWidth()).arg(getHeight()) ); + parseOptions(mTonemappingOptions, caption); + informativeLabel->setText( tr("LDR image [%1 x %2]: %3").arg(getWidth()).arg(getHeight()).arg( caption )); - GenericViewer::retranslateUi(); + GenericViewer::retranslateUi(); } QString LdrViewer::getFileNamePostFix() @@ -224,7 +224,8 @@ doCMSTransform(*temp_qimage, false, false); mPixmap->setPixmap(QPixmap::fromImage(*temp_qimage)); - informativeLabel->setText( tr("LDR image [%1 x %2]").arg(getWidth()).arg(getHeight()) ); + parseOptions(mTonemappingOptions, caption); + informativeLabel->setText( tr("LDR image [%1 x %2]: %3").arg(getWidth()).arg(getHeight()).arg( caption )); } void LdrViewer::setTonemappingOptions(TonemappingOptions* tmopts) @@ -233,7 +234,8 @@ parseOptions(tmopts, caption); setWindowTitle(caption); - setToolTip(caption); + //setToolTip(caption); + informativeLabel->setText( tr("LDR image [%1 x %2]: %3").arg(getWidth()).arg(getHeight()).arg( caption )); } TonemappingOptions* LdrViewer::getTonemappingOptions() diff -Nru luminance-hdr-2.5.0/src/Viewers/LdrViewer.h luminance-hdr-2.5.1/src/Viewers/LdrViewer.h --- luminance-hdr-2.5.0/src/Viewers/LdrViewer.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/LdrViewer.h 2017-05-10 19:14:06.000000000 +0000 @@ -64,14 +64,14 @@ //! \brief returns min value of the handled frame float getMinLuminanceValue(); - void doSoftProofing(bool); - void undoSoftProofing(); + void doSoftProofing(bool); + void undoSoftProofing(); protected Q_SLOTS: virtual void updatePixmap(); protected: - virtual void retranslateUi(); + virtual void retranslateUi(); private: QString caption; // ,postfix,exif_comment; diff -Nru luminance-hdr-2.5.0/src/Viewers/LuminanceRangeWidget.cpp luminance-hdr-2.5.1/src/Viewers/LuminanceRangeWidget.cpp --- luminance-hdr-2.5.0/src/Viewers/LuminanceRangeWidget.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/LuminanceRangeWidget.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,11 +1,11 @@ /** - * @brief - * + * @brief + * * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004 Rafal Mantiuk and Grzegorz Krawczyk * 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -19,7 +19,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Rafal Mantiuk, * @author Giuseppe Rota @@ -53,7 +53,7 @@ LuminanceRangeWidget::LuminanceRangeWidget( QWidget *parent ): QFrame( parent ), dragMode(DRAG_NO), showVP( false ), valuePointer(0.f), histogram( NULL ), histogramImage( NULL ) - + { setFrameStyle( QFrame::Panel|QFrame::Sunken ); setMouseTracking( true ); @@ -65,13 +65,13 @@ mouseDragStart = -1; dragShift = 0; - + } LuminanceRangeWidget::~LuminanceRangeWidget() { delete histogram; - + } @@ -112,7 +112,7 @@ histogram = new Histogram( fRect.width(), accuracy ); histogram->computeLog( histogramImage, minValue, maxValue ); } - + float maxP = histogram->getMaxP(); int i = 0; p.setPen( Qt::green ); @@ -177,7 +177,7 @@ void LuminanceRangeWidget::mousePressEvent ( QMouseEvent * me ) { if( dragMode == DRAG_NO ) return; - + mouseDragStart = me->x(); dragShift = 0; update(); @@ -204,14 +204,14 @@ if( mouseDragStart != DRAGNOTSTARTED ) { QRect fRect = getPaintRect(); - + int windowCordShift = me->x() - mouseDragStart; - dragShift = (float)windowCordShift / (float)fRect.width() * (maxValue - minValue); + dragShift = (float)windowCordShift / (float)fRect.width() * (maxValue - minValue); update(); } - + } else { - + QRect fRect = rect(); int winBegPos = getWindowX( windowMin ); int winEndPos = getWindowX( windowMax ); @@ -232,7 +232,7 @@ } } - + void LuminanceRangeWidget::increaseExposure() { windowMin -= exposureStep; @@ -291,7 +291,7 @@ if( min <= 0.000001f ) min = 0.000001f; // If data contains negative values windowMin = log10( min ); - windowMax = log10( max ); + windowMax = log10( max ); if( windowMax - windowMin < 0.5 ) { // Window too small float m = (windowMin + windowMax)/2.f; @@ -307,7 +307,7 @@ { windowMin = 1.0f; windowMax = 3.0f; - + update(); emit updateRangeWindow(); } @@ -317,7 +317,7 @@ QRect fRect = frameRect(); fRect.setLeft( fRect.left()+1 ); fRect.setTop( fRect.top()+1 ); - fRect.setBottom( fRect.bottom()-1 ); + fRect.setBottom( fRect.bottom()-1 ); fRect.setRight( fRect.right()-1 ); return fRect; } @@ -332,11 +332,11 @@ int newx = getWindowX( valuePointer ); if( oldx == -1 ) oldx = newx; - + QRect updateRect( min( oldx, newx ), fRect.top(), max( oldx, newx ) - min(oldx, newx )+1, fRect.height() ); - - + + update( updateRect ); } @@ -353,7 +353,7 @@ void LuminanceRangeWidget::hideValuePointer() { showVP = false; - update(); + update(); } diff -Nru luminance-hdr-2.5.0/src/Viewers/LuminanceRangeWidget.h luminance-hdr-2.5.1/src/Viewers/LuminanceRangeWidget.h --- luminance-hdr-2.5.0/src/Viewers/LuminanceRangeWidget.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/LuminanceRangeWidget.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,9 +1,9 @@ /** - * + * * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2003,2004,2005,2006,2007 Rafal Mantiuk and Grzegorz Krawczyk - * + * * This program 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 2 of the License, or @@ -17,7 +17,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Rafal Mantiuk, * @@ -47,7 +47,7 @@ float draggedMin(); float draggedMax(); - + signals: void updateRangeWindow(); public slots: @@ -57,24 +57,24 @@ void shrinkRange(); void fitToDynamicRange(); void lowDynamicRange(); - + private: float minValue; float maxValue; float windowMin; float windowMax; - + static const int DRAGNOTSTARTED = -1; int mouseDragStart; float dragShift; - enum DragMode + enum DragMode { DRAG_MIN, DRAG_MAX, DRAG_MINMAX, DRAG_NO }; DragMode dragMode; - + bool showVP; float valuePointer; @@ -83,7 +83,7 @@ const pfs::Array2Df *histogramImage; QRect getPaintRect() const; - + public: float getRangeWindowMin() const { @@ -95,7 +95,7 @@ } void setRangeWindowMinMax( float min, float max ); - + void setHistogramImage( const pfs::Array2Df *image ); void showValuePointer( float value ); diff -Nru luminance-hdr-2.5.0/src/Viewers/PanIconWidget.cpp luminance-hdr-2.5.1/src/Viewers/PanIconWidget.cpp --- luminance-hdr-2.5.0/src/Viewers/PanIconWidget.cpp 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/PanIconWidget.cpp 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota * @@ -38,28 +38,28 @@ QFrame(parent,flags), xpos(0), ypos(0), m_width(0), m_height(0), m_orgWidth(0), m_orgHeight(0) { - this->setAttribute(Qt::WA_DeleteOnClose); -// this->setFrameStyle(QFrame::Box|QFrame::Plain); -// setLineWidth(1); -// setMidLineWidth(2); -// setContentsMargins(2,2,2,2); - m_image=NULL; - moveSelection = false; - setMouseTracking(true); //necessary? + this->setAttribute(Qt::WA_DeleteOnClose); +// this->setFrameStyle(QFrame::Box|QFrame::Plain); +// setLineWidth(1); +// setMidLineWidth(2); +// setContentsMargins(2,2,2,2); + m_image=NULL; + moveSelection = false; + setMouseTracking(true); //necessary? } void PanIconWidget::setImage(const QImage *fullsize) { m_image = new QImage(fullsize->scaled(180,120,Qt::KeepAspectRatio)); - m_width = m_image->width(); - m_height = m_image->height(); + m_width = m_image->width(); + m_height = m_image->height(); m_orgWidth = fullsize->width(); m_orgHeight = fullsize->height(); - setFixedSize(m_width+2*frameWidth(), m_height+2*frameWidth()); -// m_rect = QRect(width()/2-m_width/2, height()/2-m_height/2, m_width, m_height); - //KPopupFrame::setMainWidget = resize - resize(m_width+2*frameWidth(), m_height+2*frameWidth()); -// qDebug("wanted w=%d, h=%d",m_width+2*frameWidth(), m_height+2*frameWidth()); + setFixedSize(m_width+2*frameWidth(), m_height+2*frameWidth()); +// m_rect = QRect(width()/2-m_width/2, height()/2-m_height/2, m_width, m_height); + //KPopupFrame::setMainWidget = resize + resize(m_width+2*frameWidth(), m_height+2*frameWidth()); +// qDebug("wanted w=%d, h=%d",m_width+2*frameWidth(), m_height+2*frameWidth()); } void PanIconWidget::regionSelectionMoved() @@ -100,21 +100,21 @@ } void PanIconWidget::setRegionSelection(QRect rs) { - //rs is the rect of viewport (xy,wh) over entire image area (corrected considering zoom) - //store it - this->regionSelection = rs; - //and now scale it to this widget's size/original_image_size - m_localRegionSelection.setX( /*m_rect.x() +*/ (int)((float)rs.x() * - ((float)m_width / (float)m_orgWidth)) ); + //rs is the rect of viewport (xy,wh) over entire image area (corrected considering zoom) + //store it + this->regionSelection = rs; + //and now scale it to this widget's size/original_image_size + m_localRegionSelection.setX( /*m_rect.x() +*/ (int)((float)rs.x() * + ((float)m_width / (float)m_orgWidth)) ); - m_localRegionSelection.setY( /*m_rect.y() +*/ (int)((float)rs.y() * - ((float)m_height / (float)m_orgHeight)) ); + m_localRegionSelection.setY( /*m_rect.y() +*/ (int)((float)rs.y() * + ((float)m_height / (float)m_orgHeight)) ); - m_localRegionSelection.setWidth( (int)((float)rs.width() * - ((float)m_width / (float)m_orgWidth)) ); + m_localRegionSelection.setWidth( (int)((float)rs.width() * + ((float)m_width / (float)m_orgWidth)) ); - m_localRegionSelection.setHeight( (int)((float)rs.height() * - ((float)m_height / (float)m_orgHeight)) ); + m_localRegionSelection.setHeight( (int)((float)rs.height() * + ((float)m_height / (float)m_orgHeight)) ); } void PanIconWidget::mousePressEvent ( QMouseEvent * e ) @@ -131,7 +131,7 @@ void PanIconWidget::mouseMoveEvent ( QMouseEvent * e ) { - if ( moveSelection && + if ( moveSelection && (e->buttons() == Qt::LeftButton || e->buttons() == Qt::MidButton) ) { int newxpos = e->x(); @@ -160,7 +160,7 @@ regionSelectionMoved(); return; } - else + else { if ( m_localRegionSelection.contains( e->x(), e->y() ) ) QApplication::setOverrideCursor( QCursor(Qt::PointingHandCursor)); @@ -176,53 +176,53 @@ moveSelection = false; QApplication::restoreOverrideCursor(); regionSelectionMoved(); - emit finished(); + emit finished(); } } PanIconWidget::~PanIconWidget() { - if (m_image) delete m_image; + if (m_image) delete m_image; } void PanIconWidget::paintEvent(QPaintEvent *e) { - if (m_image==NULL) - return; - QPainter p(this); - p.drawImage(e->rect(),*m_image); - - p.setPen(QPen(Qt::white, 1, Qt::SolidLine)); - p.drawRect(m_localRegionSelection.x(), - m_localRegionSelection.y(), - m_localRegionSelection.width(), - m_localRegionSelection.height()); - - p.setPen(QPen(Qt::red, 1, Qt::DotLine)); - - p.drawRect(m_localRegionSelection.x(), - m_localRegionSelection.y(), - m_localRegionSelection.width(), - m_localRegionSelection.height()); -// qDebug("m_image w=%d, h=%d",m_image->width(), m_image->height()); + if (m_image==NULL) + return; + QPainter p(this); + p.drawImage(e->rect(),*m_image); + + p.setPen(QPen(Qt::white, 1, Qt::SolidLine)); + p.drawRect(m_localRegionSelection.x(), + m_localRegionSelection.y(), + m_localRegionSelection.width(), + m_localRegionSelection.height()); + + p.setPen(QPen(Qt::red, 1, Qt::DotLine)); + + p.drawRect(m_localRegionSelection.x(), + m_localRegionSelection.y(), + m_localRegionSelection.width(), + m_localRegionSelection.height()); +// qDebug("m_image w=%d, h=%d",m_image->width(), m_image->height()); } void PanIconWidget::popup(const QPoint &pos) { - QRect d = QApplication::desktop()->screenGeometry(); - int x = pos.x(); - int y = pos.y(); - int w = width(); - int h = height(); - if (x+w > d.x()+d.width()) - x = d.width() - w; - if (y+h > d.y()+d.height()) - y = d.height() - h; - if (x < d.x()) - x = 0; - if (y < d.y()) - y = 0; - - // Pop the thingy up. - move(x, y); - show(); + QRect d = QApplication::desktop()->screenGeometry(); + int x = pos.x(); + int y = pos.y(); + int w = width(); + int h = height(); + if (x+w > d.x()+d.width()) + x = d.width() - w; + if (y+h > d.y()+d.height()) + y = d.height() - h; + if (x < d.x()) + x = 0; + if (y < d.y()) + y = 0; + + // Pop the thingy up. + move(x, y); + show(); } // KPopupFrame::resizeEvent(QResizeEvent*) // main->setGeometry(frameWidth(), frameWidth(), diff -Nru luminance-hdr-2.5.0/src/Viewers/PanIconWidget.h luminance-hdr-2.5.1/src/Viewers/PanIconWidget.h --- luminance-hdr-2.5.0/src/Viewers/PanIconWidget.h 2017-04-16 18:33:50.000000000 +0000 +++ luminance-hdr-2.5.1/src/Viewers/PanIconWidget.h 2017-05-10 19:14:06.000000000 +0000 @@ -1,8 +1,8 @@ /** * This file is a part of LuminanceHDR package. - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * Copyright (C) 2006,2007 Giuseppe Rota - * + * * This program 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 2 of the License, or @@ -16,7 +16,7 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * ---------------------------------------------------------------------- + * ---------------------------------------------------------------------- * * @author Giuseppe Rota * @@ -46,23 +46,23 @@ public slots: protected: - void paintEvent(QPaintEvent *); - void mousePressEvent(QMouseEvent *); - void mouseReleaseEvent(QMouseEvent *); - void mouseMoveEvent(QMouseEvent *); + void paintEvent(QPaintEvent *); + void mousePressEvent(QMouseEvent *); + void mouseReleaseEvent(QMouseEvent *); + void mouseMoveEvent(QMouseEvent *); private: - /** Recalculate the target selection position and emit 'selectionMoved'.*/ - void regionSelectionMoved( ); - //coordinates relative to this widget - int xpos; - int ypos; - bool moveSelection; - QRect regionSelection; // Original size image selection. - QRect m_localRegionSelection; // Thumbnail size selection. - int m_width; - int m_height; - int m_orgWidth; - int m_orgHeight; - QImage *m_image; + /** Recalculate the target selection position and emit 'selectionMoved'.*/ + void regionSelectionMoved( ); + //coordinates relative to this widget + int xpos; + int ypos; + bool moveSelection; + QRect regionSelection; // Original size image selection. + QRect m_localRegionSelection; // Thumbnail size selection. + int m_width; + int m_height; + int m_orgWidth; + int m_orgHeight; + QImage *m_image; }; #endif