12560 Commits

Author SHA1 Message Date
Lawrence Lee
29a344aef1
Fix some more compiler warnings 2024-11-18 23:42:33 -08:00
Daniel Gao
45bde1c999 Add uniform relative sizing method to framing tool 2024-11-18 15:33:55 -05:00
Daniel Gao
bbb3efd81d Fix resize scale adjustment with framing 2024-11-18 15:33:55 -05:00
Daniel Gao
57ef07f3f6 Improve framing tool usability
* Rename "Resize" to "Resize & Framing" from discoverability
* Add ColorPreview class for displaying a solid color
* Add border color preview
2024-11-18 15:33:55 -05:00
Daniel Gao
2458ba4a29 Fix missing FramingParams equality check in ProcParams 2024-11-18 15:33:55 -05:00
Daniel Gao
4358c2d7a6 Fix computation errors in framing tool
* Compute image aspect ratio if required instead of leaving at 0
* Fix divide by zero error in computing framed size
* Compute resize scale based on original crop
* Reword "Current" aspect ratio to "As Image"
2024-11-18 15:33:55 -05:00
Daniel Gao
55480f40ea Fix framing tool batch mode behavior
* Add adjuster add/set options to preferences
* Update width/height limits
* Trim adjuster values
* Batch mode fixes
  * Display all settings with sensitivity
  * Add "(Unchanged)" option to combo boxes
  * Fix checked button toggle modes
2024-11-18 15:33:55 -05:00
Daniel Gao
7ccab91434 Implement drawing border for framing tool
* Draws border after all resize operations are complete
* Update the RGB sliders for 16-bit channels
2024-11-18 15:33:55 -05:00
Daniel Gao
a96dc4cdde Calculate required image and frame sizes
* Refactor simpleprocess.cc to be more clear on resize dimensions
* Implement image and frame sizing calculations
* Resizes the image based on adjusted framing calculations
* Missing functionality to draw border around image after resizing
2024-11-18 15:33:54 -05:00
Daniel Gao
b88ad569c2 Tweak framing tool GUI
* Set sensitivity of aspect ratio and orientation combo boxes
* Sensitivity determined by absolute/relative sizing method
* Show allow upscaling box for BBOX framing method
2024-11-18 15:33:54 -05:00
Daniel Gao
29945f4a35 Implement ProcEvents for framing tool
* Add new events to ProcEvents
* Add new events to refresh map under RESIZE category
* Add new strings for displaying events in history panel
* Hook up GUI events with emitting ProcEvents
2024-11-18 15:33:54 -05:00
Daniel Gao
757a0a032a Implement partial profile for framing tool
* Update partial profile load/save GUI to include framing tool
* Allows for loading/saving framing tool parameters from the clipboard
2024-11-18 15:33:54 -05:00
Daniel Gao
114a4680de Implement FramingParamsEdited operations
* Implements edited param manipulation operations for framing tool
2024-11-18 15:33:54 -05:00
Daniel Gao
d1148539bb Implement load/save for FramingParams
* Implement writing FramingParams to keyfile
* Implement reading FramingParams from keyfile
2024-11-18 15:33:54 -05:00
Daniel Gao
8e68eccb85 Add framing tool ProcParams
* Adds FramingParams parameter struct to ProcParams
* Implement saving and writing to struct from framing tool GUI
2024-11-18 15:33:53 -05:00
Daniel Gao
b472fbf2ab Add RAII listener blocking utility
* Added for ToolPanel listener and Adjuster
* Follows style of ConnectionBlocker for sigc::connection
2024-11-18 15:33:53 -05:00
Daniel Gao
03a73eb3a4 Add framing tool GUI
* Added under the Resize tool like PR sharpening
* Adds FramingParams and FramingParamsEdited structs
* No parameter read/write implemented
* No support for batch mode
* No adjuster listeners implemented
* Signals and callback functions are defined but do nothing
2024-11-18 15:33:53 -05:00
Daniel Gao
96ad7051cf Refactor aspect ratios out of crop.cc 2024-11-18 15:33:53 -05:00
Lawrence Lee
721d664136
Fix compiler warnings 2024-11-17 22:11:57 -08:00
Lawrence Lee
cf20964b59
Fix compiler warnings 2024-11-17 15:39:07 -08:00
Lawrence Lee
4e9ceff1e9
Merge remote-tracking branch 'origin/fix-warnings-5.9' into fix-warnings-5.12 2024-11-16 22:27:29 -08:00
Daniel Gao
711f274403 Get rid of relative include paths
* Use target_include_directories to specify include paths
* Specify project root (parent of rtgui and rtengine) as include path
* Replace relative includes with normal includes
2024-11-16 17:20:02 -05:00
Lawrence Lee
0051a4cd95
Fix Canon R8 black level with electronic shutter
Remove bad pixels from the masked areas. The top ~40 rows are slightly
brighter than the rest, and the remaining rows at the top near the
center are brighter too (not as bright as the top 40 rows though).
2024-11-16 12:21:44 -08:00
Lawrence Lee
31076f0a62
Fix dcraw reading of black level for Sony
Don't set black level from tiff_bps if a black level is in the metadata.

Remove the Sony ILCE-7M3 black level from camconst.json. The black level
is in the metadata (512 for ISOs < 128000, 1024 for ISOs >= 128000).
2024-11-16 12:11:49 -08:00
Desmis
b73840cf3c
Gamut compression - reduce artifacts resulting from out of gamut (#7205)
* First functions needs for ACES

* New file GUI compressgamut

* GUI first step

* GUI first step

* Gui step 2

* GUI procparams and paramsedit

* GUI read

* GUI step 4

* GUI step 5

* First tooltip

* Gamut compression tooltips

* Various GUI improvment

* History msg

* Comment code with Aces remarks

* First change improccoordinator and events

* Save work on matrix

* Compress gamut next work

* First try gamut compress

* Replace cout by printf in invertmatrix

* Change tooltips and events

* Added namespace std to iplab2rgb

* Comment code

* Active rtthumbnail

* Change tooltip

* Various improvment GUI and rolloff

* Added adobeRGB gamut

* Appimage windows yml

* Remove rttumbnail gamutcompr

* Change event to COMPR

* Change tooltip and verbose

* Restore raw de-haze history message

* Refactor ACES gamut compression functions

* Fix gamut compression color space history message

Correctly display the color space name.

* Add "unchanged" for gamut compression color space

Allow "unchanged" in batch mode.

* Fix gamut compression yellow distance for batch

* Update copyright for gamut compression GUI

* Fix gamut compression color space names

* Refactor gamut compression code

* Remove comment rtthumnail.cc - Acesp1 default

* Change matrix DCI-P3 - threshold maximum to 1 in GUI and in gamut compression - tooltips

* Change tooltip

* Clean code - change tooltips

* Remove appimage windows yml

---------

Co-authored-by: Lawrence Lee <45837045+Lawrence37@users.noreply.github.com>
2024-11-14 13:08:52 +01:00
Desmis
691fe80896
Revert "Generalized Hyperbolic Stretch in Selective Editing (#7210)" (#7250)
This reverts commit 16db6186ddf4f1d8e2cc0c6d744071ce1195163d.
2024-11-14 10:29:29 +01:00
Desmis
16db6186dd
Generalized Hyperbolic Stretch in Selective Editing (#7210)
* GHS GUI first step

* GHS GUI first step

* GUI step 3

* Hide show ghsmethod

* Siril functions for ghs

* Init ghs in iplocallab

* ghs step 2

* ghs step 4

* Comment copyright Pixlnsight 2021

* Smooth highlights and tooltips

* Enabled saturation and luminance ghs mode

* First tooltip

* Ghs tooltips

* Remove wrong packstart inverssh

* Change labels and tooltips

* Disabled mask in global and other improvments

* Comment code

* appimage and windows yml ghs

* Change tooltip

* Ghsmethod hue and change tolltips

* Change tooltip

* Inverse Stretch step 1

* Inverse GHS

* GHS tooltips

* Change tooltips

* Change tooltip

* Linear black point

* Small change to blackpoint

* Change tooltip

* Clean and comment code

* forgotten GHS highlight attenuation msg in history

* Comment code with Transformation equations

* Change tooltip

* Wrong default value balck point

* Comment code iplocallab

* Ghs curve step 1

* GHS curve step 2

* Show GHS setting in a Curve Box

* Tooltip for ghs S curve

* Disabled warning in compilation simpleprocess

* Simplified code part 1

* Simplified code GHS graph part 2

* Improve black point with negatives values

* Improve BP and tooltip

* Listener enable only with GHS

* White point for GHS

* Change label and tooltip

* Improve behavior white point and black point

* Link sliders ghs_SP ghs_LP ghs_HP and change code to avoid balck screen

* hide unused button in diagonal curve GHS

* prevents the GHS representation in S from displaying artifacts if ghs-d=0

* Change tooltips

* Improvment and tooltips

* Forgotten tooltip

* Improve GUI GHS S curve - change tooltips

* Set transition gray areas in S curve GHS with values of the RT-spot

* Change label GHS

* setlogscale blackpoint and symmetry

* Set recursive reference enable by default in controlspotpanel

* Change lastlocalCurvesDir Dirghs in locallabtools and options - change labels

* Added in converttonormal ghsMode.. not sure if this is useful

* DIY to make GHS curve work without the choices

* Change RGB calculation with luminance function working profile

* 5 modes GHS method

* Label to show datas clipped Black point and White point

* Various change white point tooltips

* Bad behavior wp bp labels

* Small change to improccordinator call to ghschanged ghsbwchanged

* Set log scale ghs_D

* Hide Graduated filter if GHS enable

* Luminance Lab in ghsmethod

* Lab slope factor step 1

* Slope and Chromaticity GHS improvments

* Fixed bad sqrt line 17477 iplocallab

* Workaround linear GHS - re-enable Graduated filer GHS

* Change limits slope lab factor

* Ghs chromaticity Lab (Lch)

* Improve ghs chromaticity

* Change labels and tooltips Lab chroma

* Slope Lab to 100

* Noise and saturation RGB

* Saturation RGB standard and labels

* Change histogram and navigator panel without gamma when using working profile

* Remove gray in GHS curve

* Local contrast a minima

* Regularization stretch

* Improve Graduated Filter in all cases GHS Color and Light etc.

* Improves nlmeans to reduce noise after GHS

* Change to GF - tooltip Nlmeans

* Added oW oH tW tH etc.

* Added call GF

* tX tY for previewProps

* Comment code GF

* Improve local contrast ghs

* Change norm to norm2

* Improve GUI mode complexity and Lab GHS

* Show values BP WP in GUI

* Labgrid ghs step 1

* Labgrid for simulation GHS - step 2

* More points for Labgrid ghs

* Clean and comment code

* Fixed crash in inverse GHS white point - set to 10 points for GSH simulation

* Change to black point in inverse GHS

* Intilialize simulation with nothing if new spot

* Remove curve GHS - optimize code simulation - improve GUI

* set ghs default - fixed crash is case HP SP LP

* Fixed crash - I hope in inverse GHS

* Simplify WP and BP limits to avoid crash in inverse GHS

* Clean code with ghscurve - ghsshape

* Change tooltips

* Change to D - GUI - comment code

* Simulation with 4 more points

* Best simulation with point 0.05 and 0.95

* Clean code - change for crsah in Inverse GHS

* Show values WP and BP
2024-11-13 08:23:41 +01:00
Lawrence Lee
d2e2f0f839
Add offset times to default selected EXIF 2024-11-10 17:32:28 -08:00
Lawrence Lee
cdc07717d8
Update cammatrices.json from ART (ADC 16.5) 2024-11-10 15:26:00 -08:00
Lawrence Lee
63a51c8e1b
Add cammatrices.json update tool (taken from ART) 2024-11-10 15:22:07 -08:00
Lawrence Lee
6bd9d410ca
Move camera constants into multiple JSON files
Create dcraw.json for dcraw constants, rt.json for RawTherapee overrides
for dcraw, and cammatrices.json for color matrices from Adobe DNG
Converter.

Cherry-picked from ART, commit 4f360f3a883f6920f6507c533646db275853093f.
2024-11-10 14:59:16 -08:00
Lawrence Lee
7bc69bc5dd
Fix EXIF when resetting history with batch edit
Resetting the history to the first entry in the batch edit tab caused
all the EXIF keys to become selected. There should be no modifications
to the selection because EXIF editing is not available in batch edit
mode.
2024-11-09 21:14:40 -08:00
Lawrence37
bc2fbfad66
Merge pull request #7212 from Lawrence37/canon-burst
Support for images with more than 6 sub-frames
2024-11-08 22:01:58 -08:00
Lawrence37
24214fbd57
Disable exposure Laplacian when CBDL enabled
Avoids crashes due to NaNs.
2024-11-05 23:14:39 -08:00
Lawrence37
3347569d88
Fix channel mixer deactivation
The channel mixer deactivates when the primary values are set to 10.
2024-11-05 22:35:42 -08:00
Lawrence Lee
9b16f407aa
Fix blur radius when using the Fourier method
Fix the formula, adapt old pp3s, and change the maximum blur radius
where applicable.
2024-10-27 18:45:58 -07:00
Lawrence37
ca329d9013
Merge pull request #7220 from pano9000/patch-1
Fix duplicate tag in Deutsch locale
2024-10-26 12:23:56 -07:00
Lawrence37
a924a81b31
Merge pull request #7215 from Lawrence37/pixelshift-ilce-7cr
make_arq and Sony ILCE-7CR Pixel Shift support
2024-10-26 12:23:25 -07:00
Lawrence Lee
1d03fba1c4
Add Ukrainian translation
Provided by strange-sparrow in
https://github.com/Beep6581/RawTherapee/issues/7216.
2024-10-26 12:13:30 -07:00
Lawrence Lee
b16287ff6f
Fix rank, color label, and trash status reset
The rank, color label, and trash status from a previous session would
reset after editing an image or clearing the processing profile.
2024-10-20 15:14:50 -07:00
Panagiotis Papadopoulos
10bba092fe
fix duplicate tag in Deutsch locale 2024-10-15 21:31:49 +02:00
Lawrence Lee
eac9cdaa00
Improve Sony Pixel Shift support
Detect images created by make_arq as pixel shift.
Add raw crop for Sony ILCE-7CR pixel shift.
2024-10-07 21:10:16 -07:00
Lawrence Lee
860306dc35
Allow reading more than 6 sub-frames
This allows all images to be read from a Canon burst raw file.

Refactor raw image source to use unique_ptr.
2024-10-06 18:01:40 -07:00
Desmis
00360a6dbb
Remove GUI mask in Global mode (#7207)
* Hide GUI mask and recovery in global mode

* Disabled enamask in Global mode
2024-10-01 09:10:59 +02:00
Lawrence37
bce20bbd09
Merge pull request #6576 from SimonSegerblomRex/fix-6575
Fix TileOffsets for DNGs containing one tile
2024-09-27 21:50:54 -07:00
Lawrence37
f8386306c9
Merge pull request #6689 from abrock/defish
De-fish
2024-09-27 21:48:55 -07:00
Lawrence37
1e0265f98c
Merge pull request #7183 from Lawrence37/ilme-fx3-black-level-dcraw
Sony SR2SubIFD BlackLevel tag
2024-09-17 21:10:21 -07:00
Desmis
7cdfa941c2
Enable ToneMapping when Cam02 enabled and Ciecam disabled (#7190) 2024-09-17 08:30:11 +02:00
Desmis
348c8e8894
Improve Dehaze for Raw files - Raw black point (#7133)
* Show min raw values in console, #5769

* Speedup

* outsourced calculation of raw min values

* First try GUI

* Improve GUI

* Clean code

* Change behavior GUI

* First step GUI Xtrans

* Second step GUI Xtrans

* Last step X-trans black dehaze

* Appimage and windows yml poordeha

* disabled sliders R G B when dehaze enabled

* Remove idle_register autoblackchanged

* Changes suggested by Lawrence37 to improve double processing

* Remove yml appaimage windows

---------

Co-authored-by: Ingo Weyrich <heckflosse67@gmx.de>
2024-09-17 08:29:21 +02:00
Alexander Brock
d9886b7b5c Make the behaviour of manually-set scale the same as auto-fill scale 2024-09-12 21:26:32 +02:00