Giter Site home page Giter Site logo

bootchk / resynthesizer Goto Github PK

View Code? Open in Web Editor NEW
1.4K 60.0 162.0 18.51 MB

Suite of gimp plugins for texture synthesis

License: GNU General Public License v3.0

Python 18.52% Shell 14.88% C 60.36% C++ 3.64% HTML 0.23% Makefile 1.29% M4 0.99% CMake 0.08%
texture-synthesis gimp-plugin style-transfer inpainting

resynthesizer's Introduction

GIMP Resynthesizer Plugin Suite

A set of plugins for the GIMP image editing app.

Copyright 2000 2008 Paul Francis Harrison
Copyright 2002 Laurent Despeyroux
Copyright 2002 David Rodríguez García
Copyright 2010-2021 Lloyd Konneker

Build Status

A library implementing the "resynthesizer" algorithm for texture transfer among images.

And a suite of plugins, that use the algorithm, for the GIMP image processing application. The plugins do not come with GIMP, they are "third-party" plugins.

Resources

Quick user's guide to the Resynthesizer plugins for GIMP

Developer's guide

Resynthesizer and GIMP version 3

More topics are in the Resynthesizer wiki

Installation

install flatpaked Resynthesizer for Linux

install Resynthesizer for Windows

install Resynthesizer for MacOS

build from source

Acknowledgements

Paul Harrison had the original idea and implementation. He did the hard work, took the leap of faith and experimented with a new algorithm. His website has many examples of using the Resynthesizer, links to an explanation of the algorithm, and other cool ideas.

I fixed a few bugs (due to changes in GIMP), rewrote the Scheme plugins into Python, wrote a few plugins, made it better deal with alpha (transparency), threaded it, and made it into a reentrant library in C.

Rob Antonishen contributed the basis for one plugin. Several people have helped with the build process and with translations.

License

GNU General Public License v3.0

resynthesizer's People

Contributors

artoria2e5 avatar bootchk avatar bryant1410 avatar granjow avatar joaolimaneto avatar jrbastien avatar kchr avatar ketsuban avatar prokoudine avatar rharrison10 avatar ryandesign avatar sonoro1234 avatar tofilwiktor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

resynthesizer's Issues

Wont work with 64bit Gimp on Linux

Tried both compiling and using precompiled version, but both resolve to the following error:
`
(gimp-2.8:19837): Gimp-Widgets-CRITICAL **: gimp_device_info_set_device: assertion '(info->device == NULL && GDK_IS_DEVICE (device)) || (GDK_IS_DEVICE (info->device) && device == NULL)' failed
Skipping duplicate plug-in: '/usr/lib/gimp/2.0/plug-ins/resynthesizer'
/home/eek/.gimp-2.8/plug-ins/resynthesizer: error while loading shared libraries: libgimpui-2.0.so.0: wrong ELF class: ELFCLASS64

(gimp-2.8:19837): LibGimpBase-WARNING **: gimp-2.8: gimp_wire_read(): error
/home/eek/.gimp-2.8/plug-ins/resynthesizer-gui: error while loading shared libraries: libgimpui-2.0.so.0: wrong ELF class: ELFCLASS64
`
Using Kubuntu 14.04 64bit with kernel 3.13.0-83

Deprecated commands in plugin-heal-transparency.py

Using Partha's build of GIMP 2.7.5 and 2.7.6 I get the following warnings when using the Heal transparency plug-in.

WARNING: Plug-In "plugin-heal-transparency.py" ... called deprecated procedure 'gimp-selection-layer-alpha'. It should call 'gimp-image-select-item' instead!

WARNING: Plug-In "plugin-heal-transparency.py" ... called deprecated procedure 'gimp-selection-load'. It should call 'gimp-image-select-item' instead!

At present this is merely an annoyance since the plug-in still functions, but in the long run those functions will probably disappear and leave this plug-in nonfunctional.

Heal selection doesn't show up in Enhancement menu

Arch linux:

$ pacman -Q gimp-git gimp-plugin-resynthesizer-git
gimp-git 20150908.gdf2a485-1
gimp-plugin-resynthesizer-git 2.0.r15.g462b0b7-1

those python plugins are where they are supposed to be (I think) with exec flags alright:

$ ls -la /usr/lib/gimp/2.0/plug-ins/plugin-*
-rwxr-xr-x 1 root root 23424 Sep  8 23:01 /usr/lib/gimp/2.0/plug-ins/plugin-browser
-rwxr-xr-x 1 root root  6596 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-heal-selection.py
-rwxr-xr-x 1 root root  3154 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-heal-transparency.py
-rwxr-xr-x 1 root root 17195 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-map-style.py
-rwxr-xr-x 1 root root  7685 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-render-texture.py
-rwxr-xr-x 1 root root  3304 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-resynth-enlarge.py
-rwxr-xr-x 1 root root  3610 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-resynth-fill-pattern.py
-rwxr-xr-x 1 root root  3263 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-resynth-sharpen.py
-rwxr-xr-x 1 root root  6012 Sep  9 03:28 /usr/lib/gimp/2.0/plug-ins/plugin-uncrop.py

but nothing shows up in enhancement menu: http://i.imgur.com/4UfnumE.png

I've tries copying those python scripts to respective home config:

$ ls -la ~/.config/GIMP/2.9/plug-ins/
total 116
drwxr-xr-x  2 marek users  4096 Sep 10 20:02 .
drwxr-xr-x 25 marek users  4096 Sep 11 12:07 ..
-rwxr-xr-x  1 marek users  6596 Sep  9 03:28 plugin-heal-selection.py
-rwxr-xr-x  1 marek users  3154 Sep  9 03:28 plugin-heal-transparency.py
-rwxr-xr-x  1 marek users 17195 Sep  9 03:28 plugin-map-style.py
-rwxr-xr-x  1 marek users  7685 Sep  9 03:28 plugin-render-texture.py
-rwxr-xr-x  1 marek users  3304 Sep  9 03:28 plugin-resynth-enlarge.py
-rwxr-xr-x  1 marek users  3610 Sep  9 03:28 plugin-resynth-fill-pattern.py
-rwxr-xr-x  1 marek users  3263 Sep  9 03:28 plugin-resynth-sharpen.py
-rwxr-xr-x  1 marek users 31592 Sep  9 03:28 resynthesizer
-rwxr-xr-x  1 marek users 23560 Sep  9 03:28 resynthesizer_gui

Didn't help. The curious thing is that I have Filters->Map->Resynthesize allright. I saw #21 and I don't fully understand how to emulate that Heal Selection with Resynthesize. I've tried cloning/selecting/sourcing all I could think of, but all it did was just warp things in the selection.

[PATCH] autogen.sh logic for checking autoconf version not working on Debian

Hi,

The Debian Linux distribution is using an autoconf wrapper script to determine if it should use version 2.13 or >= 2.50. This script breaks the logic used in autogen.sh for verifying the currently installed version of autoconf.

What this wrapper does is basically the following (cut from autoconf(1) in Debian 8.0):

The following heuristics are used to choose an Autoconf version:

  •  If file configure.ac exists, Autoconf 2.50 is used.  Autoconf 2.13 used the name configure.in instead, but version 2.50 supports both. (Usually autoconf is run without nonoption arguments.  If a filename is supplied on the command line, then version 2.50 is used if the filename ends in .ac.)
    
  •  Otherwise, configure.in (or the file specified on the command line, if any) is read.  It is checked for the presence of an AC_PREREQ directive.  If it specifies a minimum version higher than 2.13, Autoconf 2.50 is used.  aclocal.m4, if present, is also scanned.
    
  •  Otherwise, Autoconf 2.13 is used.
    

To let the user know which version has been selected by the wrapper, it adds a bottom line to the version information output:

$ autoconf --version
autoconf (GNU Autoconf) 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+/Autoconf: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>, <http://gnu.org/licenses/exceptions.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by David J. MacKenzie and Akim Demaille.

---
Autoconf 2.50 chosen by Debian wrapper script.
For information and tuning advice see autoconf(1).

The reason autogen.sh fails is simply because of the grep line looking for the version number, which is matching all occurances of major and minor numbering within parentheses:

     VER=`autoconf --version \
          | grep -iw autoconf | sed "s/.* \([0-9.]*\)[-a-z0-9]*$/\1/"`

In the case of Debian this results in two matches, but we're only interested in the first one. I have made a patch for the autogen.sh script making the grep command stop after the first match (on the top-most row):

     VER=`autoconf --version \
          | grep -m 1 -iw autoconf | sed "s/.* \([0-9.]*\)[-a-z0-9]*$/\1/"`

This seems to be a more safe way of checking the version, and should not break anything.

It looks like autogen.sh doesn't recognize automake versions > 1.14

I tried compiling resynthesizer and the first step was to run ./autogen.sh. I had automake installed, and it was above version 1.6 (automake --version gave me 1.14-1), but autogen.sh said I still didn't fulfill the automake requirement.

I briefly glanced over autogen.sh and it looks like the acceptable automake versions are hardcoded (as in literally a list of elifs of automake-1.6, automake-1.7, automake-1.8, etc.). I don't know if this was intentional, but it makes autogen.sh very brittle when it comes to recognizing new versions of automake.

error while loading shared libraries: libgimpui-2.0.so.0

I'm getting these errors when trying to run the plugin in GIMP 2.8.20

Any ideas whay I can do?

(gimp:7127): GEGL-gegl-operation.c-WARNING **: Cannot change name of operation class 0x19146F0 from "gimp:point-layer-mode" to "gimp:anti-erase-mode"
/home/90158/.gimp-2.8/plug-ins/resynthesizer: error while loading shared libraries: libgimpui-2.0.so.0: wrong ELF class: ELFCLASS64

(gimp:7127): LibGimpBase-WARNING **: gimp: gimp_wire_read(): error
/home/90158/.gimp-2.8/plug-ins/resynthesizer-gui: error while loading shared libraries: libgimpui-2.0.so.0: wrong ELF class: ELFCLASS64

(gimp:7127): LibGimpBase-WARNING **: gimp: gimp_wire_read(): error

Compiling Resynthesizer v2.0

I took some time and compiled Resynthesizer on my Ubuntu VM, transferred the Python files over to Windows, put them in the appropriate directory, and tried them out. When comparing it to the 1.0 files, there seems to be no clear speed increase. Looking at my Task Manager, the CPU usage and clock speed also seem about the same. The only thing I can think of that might be causing this is me compiling it incorrectly. I followed the instructions listed in the REAMDE.md file.

What exactly could I be doing wrong?

New release with new tarball

Hello

Please make a new release with a new tarball so that distros will agree to pick it up - they are lax when it comes to shipping git snapshots.

Not working anymore on GIMP 2.9

Trying to use "Heal selection" or any other resynthesizer module results in the following error under GIMP 2.9:

"WARNING: Plug-In "plugin-heal-selection.py"
(/usr/lib/gimp/2.0/plug-ins/plugin-heal-selection.py)
called deprecated procedure 'gimp-selection-combine'.
It should call 'gimp-image-select-item' instead!"

Additional choices for heal selection

Hi

First of all, thanks for maintaining this useful plugin.

Can I make an request for a simple additional feature? It would be great if "filling order" can allow 4 additional choices, namely "from left to right", from right to left", "from top to bottom" and "from bottom to top".

The reason is that when I apply "heal selection" to a selection which touches, say, the right border of the image, and under the "sample from = sides" and "filling order = inward towards center" options, the plugin would produce great result on the left half of the selection but bad result on the right half of the selection (i.e. the half close to the border). I figure if it had a "from left to right" filling order option, it would probably produce good result throughout the selection. Hopefully this feature can be implemented. Thanks a lot.

Cheers,
Jim

Multi-CPU version for Windows installation?

Hi,

first of all, a big thank you for keeping this most useful plugin alive and working! I read in the readme of the most downloaded Windows v1.0 version this sentence:

(This is v1.0 of the resynthesizer. A later version, v2.0, does the same things, only faster, if you have a multicore processor.)

And I was wondering how to install this version? Is it possible to do it the same wasy way of copying files do plug-ins folder as the v1.0? I haven't found the same files I think. Is it necessary to compile it?

Thanks for you time,
Adam Preisler

`gimp-plugin-registry` package

It might be worth noting in the README that (at least on Debian 9) the gimp-plugin-repository package goes by gimp-plugin-registry instead. I don't know if the name changed at some point, or what, but I only found the right name via tab-completion.

fails to build, missing math library

Enrico Ottavi reports:

/usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld:
resynthesizer.o: undefined reference to symbol 'atan2@@GLIBC_2.2.5'
/usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld:
note: 'atan2@@GLIBC_2.2.5' is defined in DSO /lib64/libm.so.6 so try adding it
to the linker command line
/lib64/libm.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status

Apparently a change to linking loader (ld) on some platforms:.
See:http: //fedoraproject.org/wiki/Features/ChangeInImplicitDSOLinking

Apparently, in your Makefile.am you need to explicitly specify all libraries used, since the ld will no longer find symbols through other libraries.

Resynthesizer used atan2() from libm. Possibly should used atan2 from a gimp math library?

Different resynthesizer results from library vs plugin

I am trying to incorporate the resynthesizer library in an application to remove some unwanted image regions but the results that I obtain are significantly different from the results I get using the plugin in GIMP.
resynthcomparison

From the attached image, you can see that the more desirable and seamless result is obtained using the resynthesizer via GIMP. Am I missing something? I am using the parameters found in the python script for the plugin but the results are clearly different. Please enlighten.

Thanks in advance.

map-style issue

Hi,
when I perform map-style on gimp 2.9.5 I have this error:

Traceback (most recent call last):
File "/usr/local/lib/gimp/2.0/python/gimpfu.py", line 740, in response
dialog.res = run_script(params)
File "/usr/local/lib/gimp/2.0/python/gimpfu.py", line 361, in run_script
return apply(function, params)
File "/usr/local/lib/gimp/2.0/plug-ins/plugin-map-style.py", line 280, in transfer_style
if original_source_base_type == INDEXED :
NameError: global name 'INDEXED' is not defined

Plug-in "plugin-map-style.py"
(/usr/local/lib/gimp/2.0/plug-ins/plugin-map-style.py)
called deprecated procedure 'gimp-drawable-get-image'.
It should call 'gimp-item-get-image' instead!

Any hints??
Cheers
Gabriele

Explicit gthread linking required

Building on an Ubuntu 12.04 system, build fails with the following error:

gcc -g -O2 -Wall -o resynthesizer resynthesizer.o engineParams.o imageFormat.o -lgimpui-2.0 -lgimpwidgets-2.0 -lgimpmodule-2.0 -lgimp-2.0 -lgimpmath-2.0 -lgimpconfig-2.0 -lgimpcolor-2.0 -lgimpbase-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lglib-2.0 libimagesynth.a -lm
resynthesizer.c:314: error: undefined reference to 'g_thread_init'
refinerThreaded.h:319: error: undefined reference to 'g_thread_init'
collect2: ld returned 1 exit status
make[2]: *** [resynthesizer] Error 1
make[2]: Leaving directory `/home/sam/devel/resynthesizer/src'

Manually adding -lgthread-2.0 to GIMP_LIBS in src/Makefile fixes it. I guess something needs to be changed in the autoconf magic, but I have no idea how that works and a quick grep didn't reveal any obvious candidates.

GIMP 2.8 plug-in protocol

How can I help make Resynthesizer work in GIMP 2.8? I just built it, and when I tried to run it, I got the following two errors:

GIMP Message
gimp_plug_in_handle_proc_run: ERROR

Resynthesize Message
Could not execute plug-in "resynthesizer-gui" (/opt/gimp/lib/gimp/2.0/plug-ins/resynthesizer-gui) because it uses an obsolete version of the plug-in protocol.

What is the plug-in protocol, and where can I find documentation about it?

Please provide Windows binaries

I'm a developer, but I never touched MinGW before. I tried for whole hours to set it up correctly on more than one VM, but always I get various errors, frustration, and sadness.

I cannot possibly imagine a non-developer could ever hope to use your (supposedly awesome) plugin on Windows. Heck, even the sample images seem to be PPMs instead of PNGs.

Considering that Gimp is such a good gateway for people on Windows to consider switching to Linux, I think it should be friendly to them, so I urge you to please consider providing Windows binaries, since it looks like you could make them.

Thank you in advance.

How to specify install path

I cloned to ~/programs/code-resynthesizer/ and want to install to ~/programs/resynthesizer/
README says:

Installs to the shared Gimp directories. Except on Ubuntu, it installs to /usr/local/lib/gimp/2.0/plug-ins and you may need to set the GIMP Edit>Preferences>Folders>Plugins> to include that path.

How do I change that?
I tried ./configure --prefix=$HOME/programs/resynthesizer but it still tried to install to the wrong folder and failed:
/usr/bin/install: cannot create regular file '/usr/lib64/gimp/2.0/plug-ins/resynthesizer': Permission denied

Use in iOS app?

Trying to figure out how to use this in an iOS application. I want to be able to take an image and image mask and run it through the heal algorithm. I tried dropping all the files into an Xcode project, but of course that doesn't retain any of the specific build configuration stuff that's in this repo. Any advice on how to get this building in an iOS project?

Using Resynthesizer as a Library

I am working on an application that uses "heal selection" (inpainting) as a key feature. I have looked at dozens of open source implementations of inpainting, but none of them come close to the quality and speed that Resynthesizer has. I want to use the heal selection tool as a library that I can pass in an image and mask to inpaint. So far I have two ideas but I want to make sure there is not a better way to approach this:

  1. Use Gimp Batch mode and Script-Fu to call "heal selection" using GIMP
  2. Use the lib functions to run "heal selection" stand alone. I was looking at compiling the lib folder independently to test the functions but was not sure if there was an easier way than creating a new make file/environment. I am also not sure if the python "heal selection" helper script will be hard to reproduce when calling the backing core functions.

Thank you so much!

build fails (mac osx mavericks)

Davids-MacBook-Pro-5:resynthesizer daviddouglas$ ACLOCAL_FLAGS="-I /usr/local/Cellar/intltool/0.50.2/share/aclocal" ./autogen.sh

I am testing that you have the required versions of autoconf,
automake, glib-gettextize and intltoolize...

-n checking for autoconf >= 2.54 ...
yes (version 2.69)
-n checking for automake >= 1.6 ...
-n checking for glib-gettextize >= 2.0.0 ...
yes (version 2.38.2)
-n checking for intltool >= 0.17 ...
yes (version 0.50.2)

I am going to run ./configure with the following arguments:

--enable-maintainer-mode

If you wish to pass additional arguments, please specify them
on the ./autogen.sh command line or set the AUTOGEN_CONFIGURE_ARGS
environment variable.

aclocal-1.14: warning: autoconf input should be named 'configure.ac', not 'configure.in'
automake-1.14: warning: autoconf input should be named 'configure.ac', not 'configure.in'
automake-1.14: warning: autoconf input should be named 'configure.ac', not 'configure.in'
src/Makefile.am:75: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Copying file po/Makefile.in.in

Please add the files
codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
progtest.m4
from the /usr/local/octave/3.8.0/share/aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/Users/daviddouglas/Develop/builds/resynthesizer/missing: Unknown --is-lightweight' option Try/Users/daviddouglas/Develop/builds/resynthesizer/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for library containing strerror... none required
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/local/octave/3.8.0/bin/grep
checking for egrep... /usr/local/octave/3.8.0/bin/grep -E
checking for ANSI C header files... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
./configure: line 5790: syntax error near unexpected token GIMP,' ./configure: line 5790:PKG_CHECK_MODULES(GIMP,'

Configure failed or did not finish!

How to use Resynthesizer to remove things from images?

It used to be that I could select part of an image, hit Filters->Map->Resynthesize, hit Ok, and then the selection would be cleanly removed from the image. That was on some older Ubuntu version with the gimp and gimp-resynthesizer packages installed a few years ago.

Now I have GIMP 2.8.10 installed from the Ubuntu repos. There is no gimp-resynthesizer package anymore, so I got it from here and compiled this myself. Resynthesizer shows up under the Filters->Map menu just as it did before, but now when I use it, it doesn't remove the selected item. It just kind of uselessly warps it instead, without using the surrounding imagery. Here's an example of what happens when I use it on someone's face. Before, after. This is definitely not how I remember it working. I remember it more like this: https://www.youtube.com/watch?v=EvFLCRywh7g

What am I doing wrong? Is there a different menu option to use Resynthesizer to remove things from images? Was it renamed? Do I have some setting set backwards? Did I miss something in the documentation? (I'm making this an issue here because the docs seem a bit weak and I can't be the only one with this issue.)

Can't install Resynthesizer on Ubuntu 18.04 Gimp 2.10.6

Hi, I'm trying to install the package using the commands from the readme, but when I run ./autogen.sh I get the error

configure: error: GIMP development libraries not found; please install.

I installed GIMP using the otto-kesselgulasch/gimp repository. Could that be the problem?

I have already (successfully) installed the dependencies mentioned in the build chain section.

A few things I have tried after some googling (I'm not sure if these tries are actually related to ho to solve this problem, but I'll share it anyway).

  1. apt-get install gimp-plugin-registry gives the error

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
gimp-plugin-registry : Depends: gimp (>= 2.6) but it is not going to be installed
Recommends: gimp-gmic
E: Unable to correct problems, you have held broken packages.

  1. apt-get install gimp

gimp is already the newest version (2.10.6+om-0ubu18.04.2~ppa)

  1. snap install gimp

snap "gimp" is already installed, see 'snap help refresh'

EDIT 1:

  1. apt-get install libgimp2.0-dev

libgimp2.0-dev is already the newest version (2.10.6+om-0ubu18.04.2~ppa).

Any ideas?
Thanks!

autogen automake check for 1.12

There needs to be a check for automake version 1.12. However, instead of adding additional entries and possible bug reports every time a new automake version is released, why not instead use:

if [[ AUTOMAKE="$(command -v automake)" && (("$("$AUTOMAKE" --version sed -n 's/automake .*[[:digit:]].\([[:digit:]]\+\).[[:digit:]]$/\1/p')">=6)) ]]; then echo "GOOD"; fi

Compiling on OS X

I'm not terribly good at building compile scripts and I was wondering if I might get some direction on how to compile this on OS X Lion?

error: procedure not found

Using gimp 2.10 flatpak ubuntu. Looked through closed issues, looks like this is some 64bit problem? I only saw 64 bit versions for win, anyone know how to fix on linux? Or is this really the problem?

I am not sure if this is because I cant access /app. I did copy python files/execs to home plugin dir with proper permissions. When gimp booted All of the options were available under enhance/map, they just gave the error.

Thanks much!

Python scripts are not installed to the proper location on a 64-bit system

I couldn't find any of the Python scripts in Gimp on my system, until I looked around the filesystem.

With ./configure --prefix=/usr (to make sure Gimp did see the plugin when installing it), I noticed the scripts were installed to /usr/lib/gimp/2.0/ instead of /usr/lib64/gimp/2.0/.

This seems to have only affected the Python scripts, and not the actual plugin itself.

Threading

I will upload a threaded version 2.0 will be uploaded soon. Don't bother with v1.0.1.

Resynthesize acting weird

Hi!

I'm using Gimp 2.8.2 and I've downloaded Resythesize (v2.0) from Github. The plugin doesn't work properly, I get weird errors like those here: http://www.gimpchat.com/viewtopic.php?f=8&t=3577 (NachResynth01.jpg).

Regardless of the picture and tweaks I get stuff like that. With the resynthesize from the repos it works well though. I guess it's the old 0.16 version.

Resynthesizer Failed to execute child process (Permission denied) GIMP

Resynthesizer Fail - GIMP

Hi guys, I'm trying install the plugin Resynthesizer

How I was installed it:

I've download from http://registry.gimp.org/node/27986 the Resynthesizer file and uncompress in:

  • /usr/lib/gimp/2.0/plug-ins

The Errors

But when I execute gimp from my console with "sudo gimp", the console shows this errors:

(gimp:22874): GLib-GObject-WARNING **: g_object_set_is_valid_property: object class 'GeglConfig' has no property named 'cache-size'
Skipping duplicate plug-in: '/usr/lib/gimp/2.0/plug-ins/resynthesizer'
/usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 1: /usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 354: not found
/usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 2: /usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 6: not found
/usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 3: /usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: x���i��T����: not found
/usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 3: /usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: ̗�}��~�J�: not found
/usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: 4: /usr/lib/gimp/2.0/plug-ins/gmic_film_cluts.gmz: Syntax error: "(" unexpected

(gimp:22874): LibGimpBase-WARNING **: gimp: gimp_wire_read(): error

(gimp:22874): LibGimpBase-WARNING **: gimp: gimp_wire_read(): error
/usr/lib/gimp/2.0/plug-ins/resynthesizer-gui: error while loading shared libraries: libgimpui-2.0.so.0: wrong ELF class: ELFCLASS64

(gimp:22874): LibGimpBase-WARNING **: gimp: gimp_wire_read(): error
GIMP-Error: Unable to run plug-in "resynthesizer"
(/root/.gimp-2.8/plug-ins/resynthesizer)

Failed to execute child process “/root/.gimp-2.8/plug-ins/resynthesizer” (Permission denied)

image

What I've tried:

I was try do:
apt-get install libgimp2.0*
chmod +x /usr/lib/gimp/2.0/plug-ins
but it is not the problem

Also:

git clone https://github.com/bootchk/resynthesizer.git
cd resynthesizer
./autogen.sh
./configure
make
make install

apparently all works nice in the process of compiling

My SO and Python:

  • I am in kali linux 64bits, is a debian jessie based distro.
  • Python 2.7 as main.

Can you help me.. Thank you very much

Heal selection not working in GIMP 2.8.20 on macOS

When I make a selection and go to Filters > Enhance > Heal selection..., I get these errors:

Calling error for procedure 'gimp-procedural-db-proc-info':
Procedure 'plug-in-resynthesizer' not found

and

An error occurred running python_fu_heal_selection

error: procedure not found

Traceback (most recent call last):
File "/Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 736, in response
dialog.res = run_script(params)
File "/Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 361, in run_script
return apply(function, params)
File "/Users/iulian/Library/Application Support/GIMP/2.8/plug-ins/plugin-heal-selection.py", line 148, in heal_selection
pdb.plug_in_resynthesizer(timg, tdrawable, 0,0, useBorder, work_drawable.ID, -1, -1, 0.0, 0.117, 16, 500)
error: procedure not found

Could this be related to the fact that Filters > Map > Resynthesize... is missing?

This is the content of the plug-ins folder:

 17:00:19 ~/Library/Application Support/GIMP/2.8/plug-ins
> ls -al
total 376
drwxr-xr-x  13 iulian  staff    442 Aug 10 17:00 .
drwxr-xr-x  41 iulian  staff   1394 Aug 10 16:46 ..
-rw-r--r--@  1 iulian  staff   6148 Aug 10 16:43 .DS_Store
-rwxr--r--@  1 iulian  staff   6595 Apr 13  2011 plugin-heal-selection.py
-rwxr--r--@  1 iulian  staff   3153 Apr 13  2011 plugin-heal-transparency.py
-rwxr--r--@  1 iulian  staff  17194 Apr 13  2011 plugin-map-style.py
-rwxr--r--@  1 iulian  staff   7684 Apr 13  2011 plugin-render-texture.py
-rwxr--r--@  1 iulian  staff   3303 Apr 13  2011 plugin-resynth-enlarge.py
-rwxr--r--@  1 iulian  staff   3609 Apr 15  2011 plugin-resynth-fill-pattern.py
-rwxr--r--@  1 iulian  staff   3262 Apr 13  2011 plugin-resynth-sharpen.py
-rwxr--r--@  1 iulian  staff   6011 Apr 13  2011 plugin-uncrop.py
-rwxr-xr-x@  1 iulian  staff  62838 Apr 16  2011 resynthesizer
-rwxr-xr-x@  1 iulian  staff  53607 Apr 16  2011 resynthesizer-gui

Python scripts are not executable in GIMP Registry package

Contents of the package found at http://registry.gimp.org/node/27986:

Permissions Size User     Date Modified Name
.rw-r--r--@ 6.6k raxod502 13 Apr  2011  plugin-heal-selection.py
.rw-r--r--@ 3.2k raxod502 13 Apr  2011  plugin-heal-transparency.py
.rw-r--r--@  17k raxod502 13 Apr  2011  plugin-map-style.py
.rw-r--r--@ 7.7k raxod502 13 Apr  2011  plugin-render-texture.py
.rw-r--r--@ 3.3k raxod502 13 Apr  2011  plugin-resynth-enlarge.py
.rw-r--r--@ 3.6k raxod502 15 Apr  2011  plugin-resynth-fill-pattern.py
.rw-r--r--@ 3.3k raxod502 13 Apr  2011  plugin-resynth-sharpen.py
.rw-r--r--@ 6.0k raxod502 13 Apr  2011  plugin-uncrop.py
.rwxr-xr-x@  62k raxod502 15 Apr  2011  resynthesizer
.rwxr-xr-x@  53k raxod502 15 Apr  2011  resynthesizer-gui

This is wrong, and as a result the plugin cannot be loaded by GIMP, as I found out by asking the mailing list. The Python scripts need to be made executable; after I fixed this it worked fine.

How about fixing the issue in the Registry package?

a few questions/suggestions

Hi.

Very good plugin, thank you very much.

Just a few questions/suggestions:

  1. How can I heal non contiguous areas? Every time I try it shows me error.
    The plugin could divide them into contiguous areas and heal them.
    Currently I have to select and heal them one at a time, which is not very pleasant...

  2. If the area I want to heal has already most of the background, how can I use this to improve
    the "reconstruction"?
    For example, in my work, over 90% of the original background is preserved.
    For some images, using this plugin is actually making them look worst.

  3. If I want to sample from all the sides but with a different width for each, how can I do it?
    Or if I want to select an area inside the area to heal...
    It would be a lot more easy and efficient to include a small editor to select the area(s) to sample.

  4. How about using the heal in Gimp animation too?
    The user sets it for a frame and Gimp would repeat it for all frames...

Best regards,
David

GIMP 2.10: Application error (0x000007b)

Any chance to get the updated windows binaries, working for GIMP 2.10 at
http://registry.gimp.org/node/27986 ?

I just upgraded GIMP to 2.10 and it gives me the errors (freely translated)

Application error (0x000007b). Couldn't start the app correctly.

for resynthesizer.exe and resynthesizer-gui.exe
When using the http://registry.gimp.org/files/Resynthesizer_v1.0-i686.zip files.
Thank you.

Resynthesizer is extremely slow

Is it only me?
I've used (Gimp) Filters -> Enhance -> Sharpen by synthesis on a 20Mpixel image.
After 1 hour CPU time I had to kill it without any result.

Gimp was running on a AMD Ryzen Threadripper 1950X 16-Core Processor with 64 Gb RAM.
I've compiled both Gimp and resynthesizer with -O3 gcc flag.

What am I missing?
Many thanks for a hint,
Helmut.

executable stack

the library plugins contain an executable stack. I can't figure out why, but this is a security concern.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.