darktable-org / darktable

darktable is an open source photography workflow application and raw developer
https://www.darktable.org
GNU General Public License v3.0
9.69k stars 1.14k forks source link

Empty Data when running Enfuse from DT #10233

Closed thomcck closed 3 years ago

thomcck commented 3 years ago

Hello DT-Team

I am now 4 month using DT on a powerfull windows 10 Server and I am very happy with your software. Big THANK YOU to all of your team.

Unfortunately I am missing some features. HDR an Panorama. But there are the LUA scripts! I install Git , Hugin, Gim to implement and improof DT to my needs. After some experiments it looks like that everything is working fine. Stand alone the programs doing that what they should.

Git loads the additional scripts from the repository and as well the enfuseAdvance scripts run. Now for the first step i use a bracked Image from the old Canon 7d (Mk1) and try to make a HDR image with enfuseAdvance. After some time and many output in console screens , I receive a resulting image. The Image is a black tif file. Nothing to see. Same in PNG or Jpg file format. I try it with reduced image sizes, nothing better...

Now I starting a investigation what I am doing wrong . Deinstall DT and install it new, reading manuals, looking into the faq's and try to find help.

At the end , i open the Script and try to understand what the Scripting Manager should do if he is running the script. And then i understand that the screenshot may not happend. Enfuse receives only zero settings.
As you can see in the screenshot, i make manually settings in a valid range.

C:\Program Files\darktable>"C:\Program Files\Hugin\bin\enfuse.exe" --exposure-weight=0.0 --exposure-optimum=0.0 --contrast-min-curvature= --exposure-width=0.0 --contrast-window-size=0 --contrast-edge-scale=0.0 --contrast-weight=0.0 --saturation-weight=0.0 --depth=32 --output="C:\Users\tp-pr\Desktop\IMG_5138-5140_02.png" "C:\windows\Temp\aligned_0000.tif" "C:\windows\Temp\aligned_0001.tif" "C:\windows\Temp\aligned_0002.tif"

Next stupid thing is that Ais is working fine. I mean that AIS should receive the information of file, storageplace, temp folder and so on. Do to the fact that ais is working, I wonder why Enfuse gets no data.

Let me make one comment( if this is helpfull? may be)

When I installed everything new then in the first start of the enfuse wiget as far as i understand it right, the sliders should be presetted.

local function UpdateActivePreference() --sliders & entry boxes do not have a click/changed callback, so their values must be saved to the active preference 'manually' local enf = {'exposure_weight','saturation_weight','contrast_weight','exposure_optimum','exposurewidth'} for ,descriptor in pairs(enf) do temp = GUI.ENF[descriptor].value dt.preferences.write(mod, 'active_'..descriptor, 'float', temp) end temp = GUI.Target.compression_level_jpg.value temp = math.floor(temp) dt.preferences.write(mod, 'active_compression_level_jpg', 'integer', temp) temp = GUI.Target.add_tags.text dt.preferences.write(mod, 'active_add_tags', 'string', temp) end

But they did not !

The setttings you see in the screenshot are made manually by me !


local function PreCall(progtbls) --looks to see if this is the first call, if so checks to see if program is installed properly for ,prog in pairs(prog_tbls) do if prog.first_run then prog.bin = df.check_if_bin_exists(prog.name) if not prog.bin then prog.install_error = true dt.preferences.write(mod, 'bin_exists', 'bool', false) else prog.bin = CleanSpaces(prog.bin) end prog.first_run = false end end if not dt.preferences.read(mod, 'bin_exists', 'bool') then GUI.options_contain.active = 4 GUI.showoptions.sensitive = false dt.print(('please update your binary locations')) end end

local function ExeUpdate(prog_tbl) --updates executable paths and verifies them dt.preferences.write(mod, 'bin_exists', 'bool', true) for x,prog in pairs(prog_tbl) do dt.preferences.write('executable_paths', prog.name, 'string', GUI.exes[prog.name].value) prog.bin = df.check_if_bin_exists(prog.name) if not prog.bin then prog.install_error = true dt.preferences.write(mod, 'binexists', 'bool', false) dt.print(('issue with ')..prog.name.._(' executable')) else prog.bin = CleanSpaces(prog.bin) end prog.first_run = false end

If I running the script the first time, I shoud enter the binary path. For AIS, enfuse and exiftool. But honestly spoken, I saw no tooltip what is helping/asking me. And if I enter the wrong order,(exiftool,AIS,Enfuse) DT crashes !

What I expect ? I hope you can follow my discription( and my stupid english) and have a usefull solution for the problem. If not please let me know in which way DT communicates whith enfuse and in what way enfuse receives Data from DT. If you need additional information please feel free to contact me. Thomas

Hardware Gerätename IBM-3850-X5 Prozessor Intel(R) Xeon(R) CPU E7- 8870 @ 2.40GHz 2.40 GHz (4 Prozessoren) Installierter RAM 256 GB Geräte-ID E197CDF4-9390-xxxxxxxxxxxxx Produkt-ID xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Systemtyp 64-Bit-Betriebssystem, x64-basierter Prozessor

Software Edition Windows 10 Pro N for Workstations Version 20H2 Installed 29.‎04.‎2021 Build 19042.1288 Windows Feature Experience Pack 120.2212.3920.0

Using DT 3.6.1 latest version

Lua Scripts from git repository

Find enclosed a zipfile containing Darktable -d all data darktable-log.zip

IMG_5138-5140_05

wpferguson commented 3 years ago

This is an issue with the lua scripts and should be reported at https://github.com/darktable-org/lua-scripts/issues. There are some known issues with enfuseAdvanced including the lack of reasonable presets. Issue opened in lua-scripts, https://github.com/darktable-org/lua-scripts/issues/367. @thomcck please add a comment on the issue I opened in the lua-scripts repository so that you can keep informed of the progress on this.