As mentioned elsewhere on this site, the photo organization scripts available for download on this page are very old and unsupported. If you would like a fully-packaged KDE/Qt based package instead of these scripts, along with a database backend to store, archive and search through your images, please take a look at the iOta software package. Binaries are available for FreeBSD and Linux, but should compile easily on most Unix-like platforms running KDE/Qt.


If, on the other hand, you are interested in the scripts themselves to customize and use them to organize, archive and publish your digital images from a digital camera or a scanner, they have been described below. Most of these scripts are rudimentary, but do the job well. Therefore, please do not expect fancy error-checking from them. On the other hand, they are free to use and to modify by anyone as they deem necessary, i.e., in more formal terms, they adhere to the BSD Licence.

Before downloading the scripts on this page, please read the organization and publishing tips.



Scripts for Archiving Photographs

  • iRename
    Renames image files according to the time and date information.

    To run it:
        iRename
    This script expects the following in the current directory:

    • A set of downloaded photographs from a digital camera.
    This script creates the following in the current directory:
    • The same set of photographs, untouched, but renamed according to date and time, such as 2001-10-10++14-10-20



  • iGenIndex
    Generates an index.html of all the photographs in the current directory.

    To run in:
        iGenIndex [yourname_with_underscores_for_spaces] i.e.,
        iGenIndex [vijoy_pandey]

    This script expects the following in the current directory:

    • A set of photographs renamed using Rename
    • An optional txtfile which is a text file containing a line describing the category of the photographs (such as Kings Canyon National Park), a line describing the major equipment used (such as Olympus D-460 Zoom), and pairs of lines describing each photograph (as mentioned earlier). All lines should be followed by the separator (#). So, txtfile could look something like this.

      Kings Canyon National Park #
      Olympus D-460 Zoom #

      Moss, minerals and mountain, Kings Canyon National Park, California #
      abstract colors green red rocks #
      Oil swirls over water, Parking lot, Kings Canyon National Park, California
      #
      colors abstract yellow
      puddle reflection #



  • If you are lazy and didn't have the time to label all your photographs (please refrain from this laziness if you can - you will regret it later), you could just plug in the category and the equipment and leave out the descriptions. At least you will be able to search on category later when you file them. The script will create the following in the current directory.
    • A directory called Thumbs containing thumbnails to each of your photographs. These thumbnails are the ones which will have the category, equipment and description information embedded in them. The originals are left untouched. You can view the information by typing
          strings 2001-10-10++14-10-20 | more
    • A file called index.html which presents the photos in a browsable format.



  • iMainIndex
    Generates the master index file.

    To run it:
        iMainIndex

    This script expects the following in the current directory:

    • A list of top-level directories which in turn contain the photographs already indexed by iGenIndex. For example, in the current directory, you could have directories called Kings and DeathValley containing photographs already massaged by iGenIndex, and hence these directories already contain an index.html each.

    This script creates the following in the current directory:

    • A master index.html which points to all the slave index.html files. This is the directory that you should burn to a CD-R.




  • Scripts for Web Publishing


  • iMultiBorder
    Generates bordered thumbnails and bordered images for web publishing.

    To run it:
        iMultiBorder [yourname_with_underscores_for_spaces] i.e.,
        iMultiBorder [vijoy_pandey]

    This script expects the following in the current directory:

    • A set of photographs.

    This script creates the following in the current directory:

    • A directory called Thumbs containing thumbnails.
    • Changes the originals to be smaller and bordered for web publishing.




  • iAddComment
    Adds descriptions to each bordered photograph for use with a CGI script.

    To run it:
        iAddComment

    This script expects the following in the current directory:

    • A set of bordered photographs (after using iMultiBorder, above).
    • A textfile, txtfile, containing the [,] pairs for each photograph in this directory. An easy way to do this is to create txtfile as:     ls * > txtfile
      Open txtfile in your fav editor and add the descriptions. After this step, tctfile should look something like this:
      2001-10-10++14-10-20 #
      Moss, minerals and mountain, Kings Canyon National Park, California
      #
      2001-10-10++15-15-32 # Oil swirls over water, Parking lot, Kings Canyon National Park, California #

    This script creates the following in the current directory:

    • The same photographs, but with the descriptions embedded into them, to be used later by a CGI script.




  • Miscellaneous


  • iGetInfo
    Get information about a single photograph
  • iAddBorder
    Add a border to a single photograph