PyImageFuser 0.5.0 released

140 views
Skip to first unread message

Harry van der Wolf

unread,
May 29, 2022, 1:05:08 PM5/29/22
to hugi...@googlegroups.com
Hi,

PyImageFuser is a Python3 PySimpleGUI program to exposure fuse bracketed images, reduce noise in stacks and do focus stacking. It uses align_image_stack and enfuse to accomplish this.


In 2009-2010 I wrote ImageFuser in Applescript and released that as a bundled app for MacOS (MacOS/X at that time). After leaving MacOS for Linux, I also wrote KImagefuser for Linux, but the used Kommander scripting died.
In the past couple of  weeks I wrote PyImageFuser: a GPLv3 Python3 GUI frontend for enfuse and align_image_stack (both GPLv2), written in/using PySimpleGUI. (The tkinter based version)

Why did I write PyImageFuser? Why not use a few scripts, Hugin or Lux (pv) for the same purpose? Or use builtin camera/phone HDR options?
- Well, I do use 3 scripts for enfuse and align_image_stack (and lux and align_image_stack) but they do not allow much tweaking.
- Hugin is for me an excellent panorama tool, but it's like using a 70+ functions swiss army knife when you only need a toothbrush and a toothpick. Next to that: it doesn't give an as flexible option to tweak align_image_stack and enfuse if you do not know all command line options from the top of your head.
- Lux (pv) also does an excellent job, but is also more aimed at "live" panorama making and I still can't get used to the interface. Tweaking options for exposure blending are (for me) more difficult, and align_image_stack, when needed, can only be used from the command line.
- Cameras simply lack the CPU-power to do a good exposure bracketing and completely lack the power for aligning images. Phones nowadays have horse power enough to do both on sets of 3 images, but lack features and still have small sensors.
- And finally: Very simple, I could do it (and even very simple using PyimpleGUI) and I wanted to have something "dedicated" for this kind of work.

I privately only use Linux and Chromebooks. Business wise I use Windows. Occasionally I touch a Mac. All those systems have their own shortcut/keyboard combinations, which I by now don't use anymore.
PyImageFuser is only meant for exposure bracketing, noise reduction and focus stacking using a conventional user interface ;).

If you are interested in PyImageFuser you can download it from the Releases page. It still needs further tweaking (and undoubtedly bug fixing and platform "hardening"), but it does what I want it to do.

Best regards,
Harry

Luís Henrique Camargo Quiroz

unread,
May 30, 2022, 7:54:29 AM5/30/22
to hugi...@googlegroups.com

   Thanks Harry!

   I have some photos (not panoramas) for exposure stacking and will try PyImageFuser with them, it arrived just in time!

  regards,

  Luís Henrique

--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hugin-ptx/CAGARPpv7Ef%3DgAwiagxm4S%3DBEzusxyHdOuCTLH4S9n1U7DMzFzw%40mail.gmail.com.


--

David W. Jones

unread,
Jun 1, 2022, 3:47:10 AM6/1/22
to hugi...@googlegroups.com
Hi, Harry!

Sounds fascinating and useful to me!

I went to the releases page, it mentions a pyimagefuser-0.5.0-amd64.deb
package but only has links to an AppImage.

I don't do AppImages. Link for DEB package? I have Debian 11.
> <https://github.com/hvdwolf/PyImageFuser/tree/main> you can download it
> from the Releases <https://github.com/hvdwolf/jExifToolGUI/releases>
> page. It still needs further tweaking (and undoubtedly bug fixing and
> platform "hardening"), but it does what I want it to do.
> /
> /
> Best regards,
> Harry


--
David W. Jones
gnome...@gmail.com
wandering the landscape of god
http://dancingtreefrog.com
My password is the last 8 digits of π.

Harry van der Wolf

unread,
Jun 3, 2022, 6:23:52 AM6/3/22
to hugi...@googlegroups.com
Hi David,

Sorry for my somewhat late reaction.  I had a Go Live of a project and we had a few more issues than anticipated.

There are armhf and amd64 packages:
See below the Assets area of the releases page.
Don't you see these entries?


Op wo 1 jun. 2022 om 09:47 schreef David W. Jones <gnome...@gmail.com>:
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.

Harry van der Wolf

unread,
Jun 7, 2022, 1:14:26 PM6/7/22
to hugi...@googlegroups.com
Hi,

I now also added an Intel x86 MacOS bundle (stamped as 0.5.0.1). The only modification (fix) is in relation to internal bundle PATHs.
As I do not have an M1 Mac, I can't build an M1 bundle, but the M1 does simulate an x86_64 as still many packages have not yet been converted.

Harry 

Op vr 3 jun. 2022 om 12:23 schreef Harry van der Wolf <hvd...@gmail.com>:

dgjohnston

unread,
Jun 8, 2022, 12:32:45 PM6/8/22
to hugi...@googlegroups.com


> On Jun 7, 2022, at 11:14 AM, Harry van der Wolf <hvd...@gmail.com> wrote:
>
> Hi,
>
> I now also added an Intel x86 MacOS bundle (stamped as 0.5.0.1). The only modification (fix) is in relation to internal bundle PATHs.
> As I do not have an M1 Mac, I can't build an M1 bundle, but the M1 does simulate an x86_64 as still many packages have not yet been converted.
>
> Harry
>

Harry, I have an M1 based MacBook Pro and I have Rosetta 2 install to simulate an intel 86. When I try running you PyImageFuser for Mac OS I get the error message: "“PyImageFuser.app” is damaged and can’t be opened. You should move it to the Trash.”

Don J.

Harry van der Wolf

unread,
Jun 10, 2022, 3:22:29 AM6/10/22
to hugi...@googlegroups.com
Hi Don,

Thanks for taking a look at it.
For now I have no idea what is going wrong as I have no experience whatsoever with an M1.

The app is actually a kick-starter (built with pyinstaller) calling python and necessary plugins and then starting the main script. This all with necessary libs included, but no system libs. And this all bundled in a Mac bundled app.
Your M1 system might support the kickstarter and the x86 python packaged with it, but maybe my x86_64 package expects x86_64 libraries not on your system.

I do not know how experienced you are with bundles and the command line. A MacOS bundle is actually a special kind of folder structure.
If you open a terminal and go to the folder where you have the app.
Can you please cd into the app folder structure and start it "manually".

like:
cd PyImageFuser.app/Contents/MacOs
./PyImageFuser &

and see if you can start it from there.

best,
Harry

Op wo 8 jun. 2022 om 18:32 schreef dgjohnston <dgjoh...@accesscomm.ca>:
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.

dgjohnston

unread,
Jun 11, 2022, 9:29:07 PM6/11/22
to hugi...@googlegroups.com
Hi Harry,

Yes I have used the Contents/MacOs directory before to get an application to run properly … but I hadn’t thought about testing PyImageFuser that way.

But … I gave it a try from terminal and received:

…..-MBP MacOs % ./PyImageFuser &
[1] 31277
…..-MBP MacOs % 
[1]  + killed     ./PyImageFuser

Just after the 31277 was listed a pop-up window gave the same error about Py being damaged.

Don J.

Gunter Königsmann

unread,
Jun 12, 2022, 12:10:01 PM6/12/22
to Harry van der Wolf, hugi...@googlegroups.com
I believe that error message to mean that the app wasn't signed with one of that keys apple sells for $100 per year. I believe in the app's right-click menu you can tell your computer you still want to execute it even if no-one payed apple for telling "that guy has a lot of money. He cannot possibly do any wrong to a computer"

dgjohnston

unread,
Jun 13, 2022, 3:54:43 PM6/13/22
to hugi...@googlegroups.com, Harry van der Wolf
Thanks Gunter … but no luck here.

Don J.

On Jun 12, 2022, at 10:09 AM, Gunter Königsmann <gunter.ko...@gmail.com> wrote:

I believe that error message to mean that the app wasn't signed with one of that keys apple sells for $100 per year. I believe in the app's right-click menu you can tell your computer you still want to execute it even if no-one payed apple for telling "that guy has a lot of money. He cannot possibly do any wrong to a computer"

--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.

J. Schneider*

unread,
Jun 19, 2022, 10:09:27 AM6/19/22
to hugi...@googlegroups.com
Great! I seldom used stacking, but with a dedicated tool I might do it
more often. I just tried with an old project where I wasn't content with
the result so far.
I got the error message:

Traceback (most recent call last):
  File "PyImageFuser.py", line 303, in <module>
  File "PyImageFuser.py", line 291, in main
  File "image_functions.py", line 671, in displayImageWindow
  File "image_functions.py", line 652, in reorient_img
  File "PIL\Image.py", line 3677, in __getitem__
KeyError: 274

Can you tell me what has gone wrong?
I'm on Windows 11 Pro.

Best regards
Joachim

J. Schneider*

unread,
Jun 19, 2022, 10:15:05 AM6/19/22
to hugi...@googlegroups.com
I overlooked: In spite of the error message, there is a result in the
folder. It's perfect!
Thank you for that nice tool!
Would of course still be interested in what that error was.

Best regards
Joachim

Am 19.06.22 um 16:09 schrieb J. Schneider*:

Harry van der Wolf

unread,
Jun 21, 2022, 4:49:46 PM6/21/22
to hugi...@googlegroups.com
Hi,

It is hard to say. It can be that your (old) image is not entirely correct. This error occurs when some of the blocks being read of the image is not correct.
It is supposed to be corrected by adding "ImageFile.LOAD_TRUNCATED_IMAGES = True" to the code. I did that but can't reproduce the error.
Can you please share your images? Or the image that gives the error?

best,
Harry

Op zo 19 jun. 2022 om 16:15 schreef J. Schneider* <j-sc...@gmx.de>:
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.

J. Schneider*

unread,
Sep 23, 2023, 1:23:08 PM9/23/23
to hugi...@googlegroups.com
Hello,
I really like PyImageFuser because it makes exposure fusion really simple. But: When it doesn't give a good result with default parameters, I can't see anything change when changing the parameter sliders (and regenerating the preview).
I'm using the Windows version.
What's wrong? Do I have to do anything else for changed parameters to take effect?

Best regards, Joachim
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages