You are here

Copy Move Plugin

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0
Rate this item!

This plugin finds places on images which have been altered with the clone tool.
It's based on the stand-alone copymove sourcecode from John Graham-Cumming:
This detector uses the technique described in:
'Detection of Copy-Move Forgery in Digital Images', Fridrich, Soukal and Lukas

Build and install it with:
$ CC=g++ CFLAGS=-O3 gimptool-2.0 --install elsamuko-copy-move.c

You'll find it then under Image->Copy Move.

Warning: The algorithm needs a lot of time to scan the image for duplicates, try it on small images first.
Also the image should be smaller than 1.5 MP, else you could run out of memory (and the plugin crashes).

For a Windows version and more example images go here:

Update1: Linux version with multithreading and can be used for bigger images now.
Update2: Massive speed gain thanks to the hint of Luca Del Tongo:
The calculation only uses the lower frequencies of the DCT now.

If you like it, hug someone.
Example image (cc) from Mark Hogan:

elsamuko-copy-move.c25.46 KB
GIMP Version: 
Code License: 


This plugin is not working in Gimp 2.8
It keep crashing with a undo error: "Plug-In 'Copy Move' left image undo in inconsistent state, closing open undo groups."
Has anyone got it running on windows?

I have tried to follow your instructions in the page, but I cannot compile any "*.c" script since I have no idea. I get this screen reecord:

fran@fran-VirtualBox:~$ CC=g++ CFLAGS=-O3 gimptool-2.0 --install elsamuko-copy-move.c
g++ -O3 -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gimp-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pixman-1 -o /home/fran/.gimp-2.6/plug-ins/elsamuko-copy-move elsamuko-copy-move.c -pthread -L/usr/lib/i386-linux-gnu -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 -lm -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0
g++: elsamuko-copy-move.c: No existe el fichero o el directorio

It says file or folder does not exist (the last but one line)
As you see, I use Ubuntu inside VirtualBox. The thing is that I cannot compile any of your scripts since I have no idea; I can use the others (scm extension), but I also would like to get the other scripts/plugins for Forensic Analysis. Could anyone help me, plz?


It's possible that the download changed the name of your .c file. Try checking the file name again and make sure it matches, then try compiling again.

Mahvin, I checked name at first, but it is ok. When downloaded, I put the file in "Script" and in "Plug-in" folder before compiling, but it appears whst I posted before. I have gimp 2.6, Ubuntu latest built updated...
What am I doing wrong? Plz, do not write easy joke "using ubuntu", since I wanna learn... ;)

Thanks for writing

gimptool is a program that is doing the compiling and installing.

You don't need to put the downloaded file in any particular directory, since gimptool will compile it and copy the compiled version to the right place, that is, install it. Most people would create a temporary directory, download the file to it, change (cd) to that directory, invoke gimptool (as in the command above) to compile and install the plugin, and then delete the temporary directory (since you can always go back to the web to get the source.)

To help you further, we need proof that the file exists and that you have read permission on it. Run these commands and post the output:

$ls -al
$(the gimptool command you have been using)
$ls -al

Hello- I cant figure out how to go to systems>admin!!!!!! I'm trying to learn how to batch resize. PLEASE anyone!!

in ubuntu install gimp-plugin-registry:
$ sudo apt-get install gimp-plugin-registry
in gimp:
filter -> batch

Subscribe to Comments for "Copy Move Plugin"