-
Notifications
You must be signed in to change notification settings - Fork 129
Add HDRMerge #164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add HDRMerge #164
Conversation
I have no experiences with HDRMerge, could you perhaps add a folder with an example image set for testing? |
I could not attached due to file size/type so here is a link to some raws for testing: HDRMerge is basically supposed to take in a stack of bracketed raw photos and merge them in to a single DNG with a wide dynamic range. |
Now only checks for binary proper install once the functionality of the program is actually utilized. This avoids to many external command calls at dt startup just to check if certain things are installed.
I now understand how preferences work better and have removed the extraneous widgets which were doing nothing
Let me make the few changes requested here. Similarly, I have a much better grasp on LUA and the dt API then when I first wrote this, so I may take some time to clean a few other things up. I also had some glitchy behavior on my Win 10 dt 2.6 machine the other day I need to investigate. I'll update back here with changes. |
After experiencing some issues after upgrading to dt2.6 I decided it would be worthwhile to refactor the code for more reliable performance. Specifically the script would crash dt when attempting to apply a style on import and sometimes just fail to run. I have refactored this in a manor that should make it more logical for future users to add/maintain as applicable. Refactored script has only been tested on Windows 10 w/ dt2.6. Hopefullt all cross-platform aspects have been maintained.
I have added comments throughout, mainly to the functions I improved the performance of the CleanSpaces() function Improved communication to user via dt.print()
I have uploaded a refactored version. A few weeks back, after upgrading to dt 2.6 I had some issue with my enfuseAdvanced script. That code was a mess and a hack-job from Holger Klemms original so troubleshooting was a nightmare. I decided it was best to refactor that code and developed a clear structure for programs and GUI elements. (I'll be making a PR for the refactored enfuseAdvanced soon, once I've got more testing on it). I maintained that same structure in this newly refactored HDRMerge. The new structuring was probably overkill for this relatively simple script, but I am hoping the consistency across scripts will prove useful in the long run and make maintenance and understanding easier. |
Just a note that I'll be working on modifying how the executable gets requested from the user. I have suddenly gotten busy with other stuff, so this may take me a bit of time to get around to. |
The GUI is now made of a stack which has two boxes in it. One box contains all the normal GUI elements, the other contains a file chooser button and a normal button to call an update routine. This box is only displayed if an issue is found. I decided to track the install status via a preference boolean, rather than calling df_check_if_bin_exists at startup every time. I do this because on my windows PC I was starting to get slow startups with too many scripts installed and many many flashing CMD windows at startup as well, which was a nuisance.
previous commit failed to actually utilize the newly created file chooser to set the path preference
Move the preference.write() call inside the for loop
These latest commits are ready for review. This incorprates changes which eliminate the executable chooser in preferences and instead moves it into the module's GUI. |
Do you plan to mark the sting for translation? This is something I would say is missing. |
Yea, I do need to do that still. EDIT: done now |
@supertobi or @wpferguson I'm pretty sure this latest version of the script is all good to go. Have a look when you all get a chance |
My head's been in "code mode" for the last few weeks while I've been trying to finish the API extensions. That's done now. I have a couple of life things to take care of that I put off while coding, but I should have those all cleaned up by the start of next week so I can tackle the PR list again. @supertobi I've been thinking of ways to use the tools on this site such as the projects and wiki to try and communicate better with the developers/users. We could use the project tools to track each PR through the "stages" of acceptance. It might also help us "formalize" the process somewhat so that we're not so hit or miss (at least me). I know that when I'm jumping back and forth I sometimes forget where I was and end up repeating my work. @BzKevin you're welcome to chime in on this as well as any other developers/users. |
@wpferguson no big rush from my standpoint, just wanted to make sure you all were aware I had made what I think to be the last of changes for a while. I'm unfamiliar with those aspects of Github, I'll take a look and familiarize myself with them so I can offer an informed opinion. Ironically, at my day job we are working heavily to nail down proper processes via a new system we've just switched over to. |
Just a reminder that this should be good to go. |
This looks good to me. If there are still problems we can fix it later. I'll merge it now. |
Adds a plugin for HDRMerge capabilities. This should be cross-platform compatible.