2418 Commits

Author SHA1 Message Date
Lawrence
f514a69104 Group perspective adjusters in frames
Divide perspective correction adjusters into three groups: camera
attributes, post-correction adjustments, and perspective distortion
recovery.
2019-12-27 20:50:18 -08:00
Lawrence
f9a8875bb5 Add more perspective correction adjusters
Add camera lens/sensor shift support with horizontal/vertical shift
adjusters.

Add shifting and rotation of corrected image. This allows
post-correction adjustments to be made more easily given the fixed image
canvas size.

Add scaling of final result. This also helps reduce frustrations with
the fixed image canvas size.

Replace field of view with focal length and crop factor. Use of focal
length and crop factor is more common than diagonal angular field of
view. The new adjusters should be more intuitive for most photographers.
The implementation of perspective correction uses a focal length
relative to the image dimensions. The existing code calculates that
focal length with trigonometry. The new code does it by multiplying
by a ratio.

Replace vertical bias with horizontal and vertical perspective
distortion recovery. Vertical bias is not intuitive as it causes
vertical lines to converge off-center if horizontal correction is
applied. The new adjusters perform perspective distortion on the
projection of the corrected image, allowing vertical/horizontal lines to
converge towards the center lines of the image.

Refactor perspective transformation math to use dynamically computed
homogeneous coordinate matrices instead of pre-calculated formulas. This
should add some overhead, but results in more maintainable code and
possible improved performance due to the reduced number of arithmetic
and assignments needed for each pixel.

Integrate new adjusters in the GUI. This includes fine granularity for
batch processing add/set modes and history.
2019-12-27 16:40:41 -08:00
Desmis
37e91268a1 merge with dev 2019-12-27 14:52:41 +01:00
Morgan Hardwood
898527732b ./tools/generateTranslationDiffs 2019-12-23 12:42:19 +01:00
Morgan Hardwood
c75cc32268 Japanese translation updated by Yz2house
Closes #5576
2019-12-23 12:41:36 +01:00
Desmis
e1a938e3a4 Add chroma to blur levels 2019-12-22 06:47:08 +01:00
Desmis
8d38dda3ce Added chroma level to wavelet pyramid by level 2019-12-21 17:56:57 +01:00
Desmis
8884561a79 Improve some labels and tooltip 2019-12-21 13:44:41 +01:00
Desmis
46b9aa95e2 Added mask to local contrast 2019-12-21 12:51:27 +01:00
Desmis
bd7f445de2 merge with dev 2019-12-21 06:35:28 +01:00
Desmis
8361591e0e Simplify denoise curve replace 4 sliders luminance 2019-12-20 08:52:52 +01:00
Desmis
c85428ef18 Another label change 2019-12-19 12:22:42 +01:00
Desmis
0a97248e0c Improve some labels and tooltip - clean code 2019-12-19 09:05:26 +01:00
Lawrence
f4c37598ee Generalize perspective correction
Revise perspective transformation to remove hard-coded angular field of
view and horizontal perspective axis of rotation. Add vertical bias
parameter to retain ability to perform vertical perspective
transformation independent of the horizontal perspective axis of
rotation. Add field of view parameter as a tentative method for
specifying angular field of view.

The current implementation of perspective transformation applies
horizontal perspective transformation in such a way that preserves the
orientation of a horizontal line going through the center of the image.
In common use cases, horizontal lines such as the horizon do not go
through the center of the image. In such cases, the horizontal
perspective axis of rotation should not be parallel to the image's
y-axis. This commit makes the axis of rotation dependent on the vertical
parameter.

The two axes of rotation should be placed at the appropriate distance
from the image in order to prevent stretched or compressed proportions.
In the current implementation, the axes are at a fixed relative distance
from the image. This commit adds the ability to specify the distance in
the form of the diagonal angular field of view.
2019-12-18 10:22:05 -08:00
Hombre57
8b60ea4794 Bugfix in SpotRemoval tool GUI (Batch Editor) + Partial Paste handling 2019-12-17 21:46:18 +01:00
Desmis
3f4f144ec6 Improve settings balance 2019-12-17 16:08:14 +01:00
Desmis
f6f03fb8fc Some improvments and Tooltip 2019-12-17 11:34:16 +01:00
Morgan Hardwood
56de2e7a07 Help button - new icon, simplified code #5567 2019-12-17 10:38:04 +01:00
Morgan Hardwood
d6f65dc8e2 Added help button to main menu #5566
Opens RawPedia in the default URI handler
2019-12-16 23:43:09 +01:00
Desmis
81e08265ec 2nd levels and resid dynamic range compression contrast wavelet 2019-12-16 14:16:12 +01:00
Desmis
1981b17245 First levels dynamic range compress Contrast wavelet 2019-12-16 12:36:45 +01:00
Desmis
fd8bd9fba6 Various adjustements and optimize code clarity 2019-12-15 17:04:26 +01:00
Desmis
2b1e94e6bd Others improvments to wavelet pyramid 2019-12-15 13:29:32 +01:00
Desmis
cf674f0818 several improvment to process wavelet contrast 2019-12-15 11:53:46 +01:00
Desmis
b2c1f5de66 merge with dev 2019-12-15 08:24:35 +01:00
Desmis
025f444d7e Improve contrast levels with sigma 2019-12-15 08:21:41 +01:00
Desmis
2f414e20ed Add contrast by level to wavelet pyramid 2019-12-14 09:08:12 +01:00
Desmis
290fa796e8 Third commit Wavelet pyramid - Blur level curve by level 2019-12-13 18:27:54 +01:00
Desmis
e73c8666e2 Second commit Wavelet Pyramid - Blur levels simplified 2019-12-13 16:24:52 +01:00
Desmis
8c6c06121a merge with dev 2019-12-13 13:39:29 +01:00
Desmis
446ae7b49c First commit Wavelet Pyramid - Clarity and Blur Residual 2019-12-13 13:37:16 +01:00
Morgan Hardwood
0edbdc8862 Added image/x-canon-cr3 mime type #5319 2019-12-12 12:53:39 +01:00
Desmis
ab50cfdc58 Encoding log - add slider base log 2019-12-11 15:07:40 +01:00
Desmis
534cfc15fc Improve and simplify GUI Retinex 2019-12-11 09:23:57 +01:00
Desmis
0a024f432e Simplify GUI Tone Equalizer TRC 2019-12-11 08:52:26 +01:00
Desmis
40e151275e Improve GUI expanders etc. for Exposure 2019-12-10 17:15:32 +01:00
Desmis
fb3d8c44c8 Improve GUI - expanders etc for Color and light 2019-12-10 10:03:08 +01:00
Desmis
5419cc32d4 Change to GUI labels expanders 2019-12-09 18:29:11 +01:00
Desmis
c97223abbc Use auto FFTW in 'normal' mode if radius greater than 30 2019-12-08 09:32:27 +01:00
Desmis
f911db97fb Negative values Dehaze - thanks to Alberto 2019-12-08 06:24:26 +01:00
Hombre57
c23f976302 Merge branch 'dev' into spot-removal-tool 2019-12-08 00:37:54 +01:00
Desmis
44e01ffcb9 merge with dev 2019-12-06 17:30:03 +01:00
Desmis
4761b28333 merge with dev 2019-12-06 17:19:21 +01:00
Desmis
b2b4ffe3d7 add full image control 2019-12-05 18:44:07 +01:00
Desmis
9ccd282d42 Add Local Encoding Log 1st - thanks to Alberto - Disabled 2019-12-05 14:03:03 +01:00
Desmis
1d45e92f86 Save work 2019-12-04 14:32:11 +01:00
Desmis
554d43eef9 clean code and test for FFTW 2019-12-02 18:34:20 +01:00
Desmis
1b76685897 merge with dev 2019-12-02 15:32:47 +01:00
Morgan Hardwood
164fab28e0 Added Slovenian translation
Translation by Matjaž Jeran / matjazjeran

Closes #5488
2019-12-02 11:25:57 +01:00
Morgan Hardwood
98ac8d5f76 generateTranslationDiffs 2019-12-02 11:24:15 +01:00