I am looking for open source software that will find negatives on a sheet of scanned negatives and extract each one. Some of these negatives are Kodak disc, so the software needs to find rectangles of arbitrary rotation, rotate the images, and create new files. All of the rectangles are the same size.

This sounds like a capstone project in a computer science image processing course. It can't be that hard to do, and it seems like a common request, but I haven't found anything. If I can't find the software, what are the building blocks that I would use to write it myself?


I found this blog post which provides a ksh script that uses trigonometry to compute the location of the disc images from three control points. This is super-cool, but you need to manually find the control points. And it doesn't work with my other negatives, which are from a minox camera.

(For those who are interested, I am scanning the Minox images by laying them flat on my Epson flatbed scanner and covering them with a block of optical glass, and then using the scanner's transparency mode.)


1 Answer 1


GIMP can probably do that with the Divide scanned images script. I'm not sure how it would handle the Kodak disc, but perhaps by tweaking the settings (partially outlined in this blog post) you can get it to work.

The first steps are outlined on the DivideScannedImages Github page:

  • Download and install the latest version of GIMP
  • (Optionally) Download deskew.exe to GIMP’s plugin directory.
    • On my Windows computer this is C:\Program Files\GIMP 2\lib\gimp\2.0\plug-ins
  • Download DivideScannedImages.scm (from this repository) and copy it to the GIMP scripts folder.
    • On my computer this is C:\Program Files\GIMP 2\share\gimp\2.0\scripts
  • Restart GIMP. You should now see the "Divide Scanned Images..." listed at the bottom of the "Filters" context menu (accessed from the menu bar). Click on it.
  • For batch-processing a directory of scanned pages you can also access a batch-mode ”Batch Divide Scanned Images…” in the Filters -> Batch Tools sub-menu.
  • \$\begingroup\$ Neat. I didn't know that Gimp was programmable in Lisp. That's pretty cool. I'll give it a try and report back. \$\endgroup\$
    – vy32
    Commented Jul 31, 2020 at 11:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.