Can "The GIMP" freeware be scripted on Linux to do simpleoperations?

Discussion in 'Digital Photography' started by Danny D., Mar 27, 2013.

  1. Danny D.

    Danny D. Guest

    I frequently operate on a picture, using the same sequence in The GIMP on Linux.
    Is it possible to script these actions?

    $ gimp pic1.jpg
    -----
    [GIMP]Filters->Map->Illusion->OK
    [GIMP]File->Save As->pic2.jpg->Save->Save
    [GIMP]Edit->Undo the last operation
    -----
    [GIMP]Filters->Artistic->Oilify->OK
    [GIMP]File->Save As->pic3.jpg->Save->Save
    [GIMP]Edit->Undo the last operation
    -----
    Filters->Decor->Old Photo->OK
    [GIMP]File->Save As->pic4.jpg->Save->Save
    [GIMP]Edit->Undo the last operation
    -----
    [GIMP]Filters->Edge Detect->Difference of Gaussians->OK->
    [GIMP]File->Save As->pic5.jpg->Save->Save
    [GIMP]Edit->Undo the last operation
    -----
    etc.

    The goal would be to run the script on a photo, resulting in
    the five files shown above.

    Any idea how to script The Gimp on Linux?
     
    Danny D., Mar 27, 2013
    #1
    1. Advertising

  2. Re: Can "The GIMP" freeware be scripted on Linux to do simple operations?

    On Wed, 27 Mar 2013 18:24:13 +0000 (UTC), "Danny D."
    <> wrote:

    >I frequently operate on a picture, using the same sequence in The GIMP on Linux.
    >Is it possible to script these actions?
    >
    >$ gimp pic1.jpg
    >-----
    >[GIMP]Filters->Map->Illusion->OK
    >[GIMP]File->Save As->pic2.jpg->Save->Save
    >[GIMP]Edit->Undo the last operation
    >-----
    >[GIMP]Filters->Artistic->Oilify->OK
    >[GIMP]File->Save As->pic3.jpg->Save->Save
    >[GIMP]Edit->Undo the last operation
    >-----
    >Filters->Decor->Old Photo->OK
    >[GIMP]File->Save As->pic4.jpg->Save->Save
    >[GIMP]Edit->Undo the last operation
    >-----
    >[GIMP]Filters->Edge Detect->Difference of Gaussians->OK->
    >[GIMP]File->Save As->pic5.jpg->Save->Save
    >[GIMP]Edit->Undo the last operation
    >-----
    >etc.
    >
    >The goal would be to run the script on a photo, resulting in
    >the five files shown above.
    >
    >Any idea how to script The Gimp on Linux?


    Script-Fu is the magic word I think.

    http://docs.gimp.org/2.6/en/gimp-concepts-script-fu.html

    --
    p-0.0-h the cat

    Attention new posters. Beware: ACF is under attack by a small number of
    trolls who post false and misleading replies to questions here, and run
    campaigns of lies against some of the long term regulars in order to get
    them killfiled.

    These are my recommendations to filter their malicious trollspam

    By filtering out messages containing
    << q34wsk20-at-yahoo.com>> AND <<>> in the "From:" header
    and messages containing "ccountrynet" in the path statement you will knock
    out more than half or even three quarters of the trollspamming in this group.

    I also recommend filtering all crossposts, anonymous remailers, and any
    posts with these providers in the path:

    eternal-september.org
    dotsrc.org
    ccountrynet < especially this one
    individual.net
    easynews.com
    anonymous
     
    p-0''0-h the cat (ES), Mar 27, 2013
    #2
    1. Advertising

  3. Danny D.

    Danny D. Guest

    On Wed, 27 Mar 2013 19:18:16 +0000 p-0''0-h the cat (ES) wrote:
    >>I frequently operate on a picture, using the same sequence
    >>Is it possible to script these actions?


    > Script-Fu is the magic word I think.
    > http://docs.gimp.org/2.6/en/gimp-concepts-script-fu.html


    Ah. I see. Script-Fu is installed by default, so I'll use that.

    I'll dig about to see HOW to simply make the Script-Fu get
    spit out as a log file of my actions.

    I can then just re-run that log file (or so the theory goes).

    I'll report back when/if I figure it out, so that others can
    more easily follow in my footsteps.
     
    Danny D., Mar 28, 2013
    #3
  4. Re: Can "The GIMP" freeware be scripted on Linux to do simple operations?

    On Thu, 28 Mar 2013 14:10:05 +0000 (UTC), "Danny D."
    <> wrote:

    >On Wed, 27 Mar 2013 19:18:16 +0000 p-0''0-h the cat (ES) wrote:
    >>>I frequently operate on a picture, using the same sequence
    >>>Is it possible to script these actions?

    >
    >> Script-Fu is the magic word I think.
    >> http://docs.gimp.org/2.6/en/gimp-concepts-script-fu.html

    >
    >Ah. I see. Script-Fu is installed by default, so I'll use that.
    >
    >I'll dig about to see HOW to simply make the Script-Fu get
    >spit out as a log file of my actions.
    >
    >I can then just re-run that log file (or so the theory goes).
    >
    >I'll report back when/if I figure it out, so that others can
    >more easily follow in my footsteps.


    Thanks. I'd be interested to see that.

    --
    p-0.0-h the cat

    Attention new posters. Beware: ACF is under attack by a small number of
    trolls who post false and misleading replies to questions here, and run
    campaigns of lies against some of the long term regulars in order to get
    them killfiled.

    These are my recommendations to filter their malicious trollspam

    By filtering out messages containing
    << q34wsk20-at-yahoo.com>> AND <<>> in the "From:" header
    and messages containing "ccountrynet" in the path statement you will knock
    out more than half or even three quarters of the trollspamming in this group.

    I also recommend filtering all crossposts, anonymous remailers, and any
    posts with these providers in the path:

    eternal-september.org
    dotsrc.org
    ccountrynet < especially this one
    individual.net
    easynews.com
    anonymous
     
    p-0''0-h the cat (ES), Mar 28, 2013
    #4
  5. Danny D.

    Dave Guest

    On Thu, 28 Mar 2013 14:10:05 +0000, Danny D. wrote:

    > On Wed, 27 Mar 2013 19:18:16 +0000 p-0''0-h the cat (ES) wrote:
    >>>I frequently operate on a picture, using the same sequence
    >>>Is it possible to script these actions?

    >
    >> Script-Fu is the magic word I think.
    >> http://docs.gimp.org/2.6/en/gimp-concepts-script-fu.html

    >
    > Ah. I see. Script-Fu is installed by default, so I'll use that.
    >
    > I'll dig about to see HOW to simply make the Script-Fu get
    > spit out as a log file of my actions.
    >
    > I can then just re-run that log file (or so the theory goes).
    >
    > I'll report back when/if I figure it out, so that others can
    > more easily follow in my footsteps.


    Might take a look at GimpScripter too.It generates Python code for plugins.
    http://registry.gimp.org/node/25305

    I haven't played with it much yet but it seems like a nice idea.

    Dave

    --
    Registered Linux User #444770
    Fedora
     
    Dave, Mar 28, 2013
    #5
  6. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 14:20:03 +0000 p-0''0-h the cat (ES) wrote:

    >>I'll report back when/if I figure it out, so that others can
    >>more easily follow in my footsteps.

    >
    > Thanks. I'd be interested to see that.


    Quick update:

    Unfortunately, GIMP doesn't have a native "log file" mode
    where GIMP can record scripts as ready-made "macros":
    https://bugzilla.gnome.org/show_bug.cgi?id=51937

    But, there does appear to be a 3rd-party macro recorder:
    http://registry.gimp.org/node/25305

    And, GIMP does seem to have a batch mode:
    http://www.gimp.org/tutorials/Basic_Batch/

    So, I'll try some of these (script-fu, GimpScripter, gimp -i -b,
    etc.) and report back.
     
    Danny D., Mar 28, 2013
    #6
  7. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 15:27:06 +0000 Dave wrote:

    > Might take a look at GimpScripter too.It generates Python code for plugins.
    > http://registry.gimp.org/node/25305


    This is what I will try first, although the comments on that web
    page (and others) say GimpScripter is clearly NOT a macro recorder.
    http://registry.gimp.org/node/25305
    http://gimp.linux.pl/index.php/server/registry/query/L25vZGUvMjUzMDU=

    They say GimpScripter is a plugin authoring tool (whatever that means).
    http://www.gimpusers.com/forums/gim...scripter-plugin-authoring-tool-beta-prototype

    That having been said, those web pages don't seem to 'contain' any
    GimpScripter code though. So, googling, I found this source:
    https://github.com/bootchk/gimpscripter

    But, of that source, I could only download the main plugin python script.
    I could not (yet) find a download for the directory named "gimpscripter".

    $ wget https://raw.github.com/bootchk/gimpscripter/master/plugin-gimpscripter.py
    $ cp -r gimpscripter ~/.gimp-2.6/plug-ins
    $ cp plugin-gimpscripter.py ~/.gimp-2.6/plug-ins
    $ chmod +x ~/.gimp-2.6/plug-ins/plugin-gimpscripter.py

    So, at the moment, I'm looking for HOW we're supposed to download the
    directory named "gimpscripter" at that location.
     
    Danny D., Mar 28, 2013
    #7
  8. Danny D.

    Danny D. Guest

    Danny D., Mar 28, 2013
    #8
  9. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 16:41:59 +0000 Danny D. wrote:

    > $ wget https://raw.github.com/bootchk/gimpscripter/master/plugin-gimpscripter.py
    > $ cp -r gimpscripter ~/.gimp-2.6/plug-ins
    > $ cp plugin-gimpscripter.py ~/.gimp-2.6/plug-ins
    > $ chmod +x ~/.gimp-2.6/plug-ins/plugin-gimpscripter.py
    >
    > So, at the moment, I'm looking for HOW we're supposed to download the
    > directory named "gimpscripter" at that location.


    This failed to download the gimpscripter directory (due to robot restrictions):
    $ wget -r --no-parent https://github.com/bootchk/gimpscripter/tree/master/gimpscripter
     
    Danny D., Mar 28, 2013
    #9
  10. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 16:49:08 +0000 Danny D. wrote:

    > This failed to download the gimpscripter directory (due to robot restrictions):
    > $ wget -r --no-parent https://github.com/bootchk/gimpscripter/tree/master/gimpscripter


    Well, it's a dumb way to do anything, but I used this manual sequence to
    download the gimpscripter directory, which others can use (or improve):

    $ wget https://raw.github.com/bootchk/gimpscripter/master/plugin-gimpscripter.py
    $ cp plugin-gimpscripter.py ~/.gimp-2.6/plug-ins
    $ chmod +x ~/.gimp-2.6/plug-ins/plugin-gimpscripter.py
    ....
    $ mkdir -p gimpscripter/{gui,mockmenu}
    $ cd ./gimpscripter/gui
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/gui/__init__.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/gui/gimpscripter.glade
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/gui/main_gui.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/gui/param_dialog.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/gui/param_widgets.py
    ....
    $ cd ../mockmenu
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/mockmenu/db_treemodel.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/mockmenu/__init__.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/mockmenu/map_procedures.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/mockmenu/path_treemodel.py
    $ wget https://github.com/bootchk/gimpscripter/tree/master/gimpscripter/mockmenu/plugindb.py
    ....
    $ cd ..
    $ cp -r gimpscripter ~/.gimp-2.6/plug-ins

    At this point, I 'think' I have gimpscripter installed.
    Now it's time to figure out how to use it.
     
    Danny D., Mar 28, 2013
    #10
  11. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 17:06:22 +0000 Danny D. wrote:

    > At this point, I 'think' I have gimpscripter installed.
    > Now it's time to figure out how to use it.


    Actually, that method (using wget) failed somehow.
    Here's what happened when I ran GIMP:

    $ gimp picture1.jpg
    [GIMP]Filters->Gimpscripter


    Starting Gimpscripter
    Starting Gimpscripter
    Traceback (most recent call last):
    File "/usr/lib64/gimp/2.0/python/gimpfu.py", line 801, in _run
    res = apply(func, params[1:])
    File "/home/user1/.gimp-2.6/plug-ins/plugin-gimpscripter.py", line 75, in plugin_main
    from gimpscripter.gui import main_gui
    File "/home/user1/.gimp-2.6/plug-ins/gimpscripter/__init__.py", line 4
    <!DOCTYPE html>
    ^
    SyntaxError: invalid syntax
     
    Danny D., Mar 28, 2013
    #11
  12. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 17:11:12 +0000 Danny D. wrote:

    > Actually, that method (using wget) failed somehow.


    Unless we can find a download for gimpscripter, I'll move
    on to the second suggested method, i.e., scripts.

    I tried the tutorial script, and it worked fine.
    http://www.gimp.org/tutorials/Basic_Batch/

    So, now I'm trying to edit THAT script to perform the task:
    GIMP: Filters->Map->Make Seamless

    Clearly, the line that needs to be edited in the script is:
    (plug-in-unsharp-mask RUN-NONINTERACTIVE
    image drawable radius amount threshold)

    I have to change "pllug-in-unsharp-mask" to "Make Seamless".
    But what is the name of the "make seamless" plugin?

    Highlighting "Filters->Map->Make Seamless" in GIMP, and
    then pressing the "F1" key, brings up this web page:
    http://docs.gimp.org/2.6/en/plug-in-make-seamless.html

    But, that web page does NOT say what the make-seamless tiling
    function is named. Googling about, I find this web page:
    http://docs.gimp.org/2.6/en/gimp-scripting.html

    Which implies I can find the name of the command at the
    Xtns/Plugins Details
    page. But what is "Xtns" (extensions?).

    There is no GIMP menu named "extensions" or "Xtns", so, the
    best I can find are these two browsers:
    GIMP:Help->Plug-In Browser (271 plug-ins)
    GIMP:Help->Procedure Browser (1,060 procedures)

    I have no clue whether GIMP:Filters->Map->Make Seamless is
    a "procedure" or a "plug-in", so, I'll look at both types.

    There must be a better way than sequential searches, but,
    using that manual method, one by one, I finally found in
    both the "Plug-In Browser" and in the "Procedure Browser",
    the "Tile" procedure or plugin named "plug-in-tile".
    http://www1.picturepush.com/photo/a/12530254/img/12530254.png

    So, I will try to see if I can get "plug-in-tile" to work
    via a GIMP batch operation.
     
    Danny D., Mar 28, 2013
    #12
  13. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 18:01:51 +0000 Danny D. wrote:

    > So, I will try to see if I can get "plug-in-tile" to work
    > via a GIMP batch operation.


    Starting with the working tutorial, I will try to get it to
    work for GIMP:Filters->Map->Make Seamless, which, I think is
    the "plug-in-tile" procedure or plug-in.

    So, let's change this line from:
    (plug-in-unsharp-mask RUN-NONINTERACTIVE
    image drawable radius amount threshold)
    To:
    (plug-in-tile RUN-NONINTERACTIVE
    image drawable radius amount threshold)

    In this simple-unsharp-mask.scm tutorial script, which is run by:
    $ gimp -i -b '(simple-unsharp-mask "foo.png" 5.0 0.5 0)' -b '(gimp-quit 0)'
    REPORTED: batch command executed successfully

    With this ~/.gimp-2.6/scripts/simple-unsharp-mask.scm
    (define (simple-unsharp-mask filename radius amount threshold)
    (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
    (drawable (car (gimp-image-get-active-layer image))))
    (plug-in-unsharp-mask RUN-NONINTERACTIVE image drawable radius amount threshold)
    (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
    (gimp-image-delete image)))

    We can create this simple-tile.scm test script, run by:
    $ gimp -i -b '(simple-tile "foo.png" 5.0 0.5 0)' -b '(gimp-quit 0)'
    REPORTED: batch command executed successfully

    With this ~/.gimp-2.6/scripts/simple-tile.scm
    (define (simple-tile filename radius amount threshold)
    (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
    (drawable (car (gimp-image-get-active-layer image))))
    (plug-in-tile RUN-NONINTERACTIVE image drawable radius amount threshold)
    (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
    (gimp-image-delete image)))

    Bummer. Nothing gave an error - but nothing happened either.
    Time to debug ...

    WIP: What I need to figure out is HOW to tell what command to call
    based only on the menu name.
     
    Danny D., Mar 28, 2013
    #13
  14. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 18:15:11 +0000 Danny D. wrote:

    > WIP: What I need to figure out is HOW to tell what command to call
    > based only on the menu name.


    Trying another approach to find the menu name, I started GIMP
    and went to GIMP:Help->Procedure Browser and typed in "seamless".

    This found the procedure "plug-in-make-seamless" as shown below:
    http://www1.picturepush.com/photo/a/12530364/img/12530364.png

    So, I'll try that procedure (which doesn't take any arguments).

    1. I created ~/.gimp-2.6/scripts/simple-seamless.scm
    (define (simple-seamless filename)
    (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
    (drawable (car (gimp-image-get-active-layer image))))
    (plug-in-make-seamless RUN-NONINTERACTIVE
    image drawable)
    (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
    (gimp-image-delete image)))

    2. Which I then ran in batch mode with the command:
    $ gimp -i -b '(simple-seamless "foo.png")' -b '(gimp-quit 0)'
    REPORTED: batch command executed successfully

    3. Woo hoo! It worked. The foo.png was now changed to a seamless tile.

    Now it's time to work on the next operation!
     
    Danny D., Mar 28, 2013
    #14
  15. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 18:39:07 +0000 Danny D. wrote:

    > Now it's time to work on the next operation!


    The next operation is to replicate this command:
    [GIMP]:Filters->Map->Illusion (Divisions=8, Mode=1)

    1. We find the desired procedure name to be "plug-in-illusion"
    [GIMP]:Help->Plug-In Browser->illusion
    http://www2.picturepush.com/photo/a/12530570/img/12530570.png

    2. We create a script using the original tutorial template:
    $ cd ~/.gimp-2.6/scripts
    $ cp unsharp.scm simple-illusion.scm
    $ vi !$
    (define (simple-illusion filename division type)
    (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
    (drawable (car (gimp-image-get-active-layer image))))
    (plug-in-illusion RUN-NONINTERACTIVE image drawable division type)
    (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
    (gimp-image-delete image)))

    3. We run GIMP, adding desired values for the Divisions & Mode arguments:
    $ gimp -i -b '(simple-illusion "foo.png" 8 1)' -b '(gimp-quit 0)'

    Woo hoo! That worked.

    Now I can begin scripting the operations to create multiple files:
    $ cp original.png foo.png
    $ gimp -i -b '(simple-seamless "foo.png")' -b '(gimp-quit 0)'
    $ cp foo.png foo_1.png; cp original.png foo.png
    $ gimp -i -b '(simple-illusion "foo.png" 8 1)' -b '(gimp-quit 0)'
    $ cp foo.png foo_2.png; cp original.png foo.png

    Now it's time to work on the next procedure.
     
    Danny D., Mar 28, 2013
    #15
  16. Danny D.

    Danny D. Guest

    On Thu, 28 Mar 2013 19:09:11 +0000 Danny D. wrote:

    > $ cp original.png foo.png
    > $ gimp -i -b '(simple-seamless "foo.png")' -b '(gimp-quit 0)'
    > $ cp foo.png foo_1.png; cp original.png foo.png
    > $ gimp -i -b '(simple-illusion "foo.png" 8 1)' -b '(gimp-quit 0)'
    > $ cp foo.png foo_2.png; cp original.png foo.png
    > Now it's time to work on the next procedure.


    The next operation is to replicate this command:
    [GIMP]:Filters->Decor->Old Photo
    [x]Defocus, Border size=20, [x]Sepia, [ ]Mottle, [ ]Work on copy

    1. We find the desired procedure name to be "script-fu-old-photo"
    [GIMP]:Help->Plug-In Browser->old photo
    http://www2.picturepush.com/photo/a/12530755/img/12530755.png

    2. That help tells us the 8 arguments to "script-fu-old-photo" are:
    a. Interactive, non-interactive
    b. The image
    c. The layer
    d. Defocus (toggle)
    e. Border size (which we will set to 20.0)
    f. Sepia (toggle)
    g. Mottle (toggle)
    h. Work on copy (toggle)

    2. We create a script using the original tutorial template:
    $ cd ~/.gimp-2.6/scripts
    $ cp unsharp.scm simple-oldphoto.scm
    $ vi !$
    (define (simple-oldphoto filename defocus border sepia mottle workoncopy)
    (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
    (drawable (car (gimp-image-get-active-layer image))))
    (script-fu-old-photo RUN-NONINTERACTIVE
    image drawable defocus border sepia mottle workoncopy)
    (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
    (gimp-image-delete image)))

    3. We run GIMP, with values for defocus, border, sepia, mottle, & workoncopy:
    Note: I'm assuming that the toggle takes true (t) or nil (n) arguments.

    $ gimp -i -b '(simple-oldphoto "foo.png" t 20.0 t n n)' -b '(gimp-quit 0)'
    REPORTED: batch command experienced an execution error
    Note: I don't know HOW to get a better log file for the error (do you?).

    4. Trying "0" for "nil" and "1" for "true":
    $ gimp -i -b '(simple-oldphoto "foo.png" 1 20.0 1 0 0)' -b '(gimp-quit 0)'
    REPORTS:
    GIMP-Error: Calling error for procedure 'gimp-file-save':
    Procedure 'gimp-file-save' has been called with an invalid ID for argument 'drawable'.
    Most likely a plug-in is trying to work on a layer that doesn't exist any longer.
    batch command experienced an execution error

    5. NOTE: Hmmm... I remember something about that in the tutorial ...
    http://www.gimp.org/tutorials/Basic_Batch/
    Which warns:
    6. So, let's see where we can add that line in the simple-oldphoto.scm script:
    (define (simple-oldphoto filename defocus border sepia mottle workoncopy)
    (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
    (drawable (car (gimp-image-get-active-layer image))))
    (script-fu-old-photo RUN-NONINTERACTIVE
    image drawable defocus border sepia mottle workoncopy)
    (set! drawable (car (gimp-image-get-active-layer image)))
    (gimp-file-save RUN-NONINTERACTIVE image drawable filename filename)
    (gimp-image-delete image)))

    7. Hmmm... there was no error - but we didn't get the old photo either:
    $ gimp -i -b '(simple-oldphoto "foo.png" 1 20.0 1 0 0)' -b '(gimp-quit 0)'
    REPORTS: batch command executed successfully

    Comparing the original photo with the results, showed "something" happened,
    but not what we had wanted to happen.

    Need to debug ... WIP

    NOTE: I wish there were better debugging procedures available or known!
     
    Danny D., Mar 28, 2013
    #16
  17. Danny D.

    Whiskers Guest

    On 2013-03-28, Danny D. <> wrote:
    > On Thu, 28 Mar 2013 15:27:06 +0000 Dave wrote:
    >
    >> Might take a look at GimpScripter too.It generates Python code for plugins.
    >> http://registry.gimp.org/node/25305

    >
    > This is what I will try first, although the comments on that web
    > page (and others) say GimpScripter is clearly NOT a macro recorder.
    > http://registry.gimp.org/node/25305
    > http://gimp.linux.pl/index.php/server/registry/query/L25vZGUvMjUzMDU=


    [...]

    I suggest taking at look at the command-line tools "imagemagick" and
    "graphicsmagick".


    --
    -- ^^^^^^^^^^
    -- Whiskers
    -- ~~~~~~~~~~
     
    Whiskers, Mar 29, 2013
    #17
  18. Danny D.

    Danny D. Guest

    On Fri, 29 Mar 2013 01:10:24 +0000 Whiskers wrote:

    > I suggest taking at look at the command-line tools "imagemagick" and
    > "graphicsmagick".


    They're powerful tools, I will grant that.
    But do they have filters?

    For example, do they have a filter that makes old photos?
    Do they have a filter that makes pencil drawings?
    Do they have a filter that will change the lighting direction?
    etc.

    I know GIMP has them. So that's why I'm scripting GIMP.
     
    Danny D., Mar 29, 2013
    #18
  19. Danny D.

    Whiskers Guest

    On 2013-03-29, Danny D. <> wrote:
    > On Fri, 29 Mar 2013 01:10:24 +0000 Whiskers wrote:
    >
    >> I suggest taking at look at the command-line tools "imagemagick" and
    >> "graphicsmagick".

    >
    > They're powerful tools, I will grant that.
    > But do they have filters?
    >
    > For example, do they have a filter that makes old photos?
    > Do they have a filter that makes pencil drawings?
    > Do they have a filter that will change the lighting direction?
    > etc.
    >
    > I know GIMP has them. So that's why I'm scripting GIMP.


    See <http://www.imagemagick.org/Usage/> and
    <http://www.graphicsmagick.org/utilities.html>

    --
    -- ^^^^^^^^^^
    -- Whiskers
    -- ~~~~~~~~~~
     
    Whiskers, Mar 29, 2013
    #19
  20. Danny D.

    Danny D. Guest

    On Fri, 29 Mar 2013 17:09:15 +0000 Whiskers wrote:

    > See <http://www.imagemagick.org/Usage/> and


    That's an interestingly organized set of functions.

    Reviewing the table, I saw the Photo Handling section,
    which does have some of the desired 'fiters', e.g.,
    "double exposures", "pencil sketch", and "adding texture
    to an image".
    http://www.imagemagick.org/Usage/photos/

    In addition, there was an "Advanced Techniques" section,
    which covered "Complex manipulations of images", containing
    Jigsaw pieces, gel effects, and radial flares:
    http://www.imagemagick.org/Usage/advanced/

    Since the overall goal is to take a portrait photo, and
    to enhance it artistically, by automated means, such that
    out of the plethora of automated results, one or three
    can be chosen, by virtue of the artistry of the batched
    results ... I must conclude that we 'can' add Imagemagick
    to our repertoire (currently consisting of The GIMP).

    thanks.
     
    Danny D., Mar 30, 2013
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. joe mama

    Any GIMP users (Linux)

    joe mama, May 10, 2006, in forum: Digital Photography
    Replies:
    93
    Views:
    1,650
    ASAAR
    Jul 9, 2006
  2. Ivan Danicic

    gimp on linux

    Ivan Danicic, Aug 21, 2006, in forum: Digital Photography
    Replies:
    15
    Views:
    571
    Ivan Danicic
    Aug 23, 2006
  3. Have a nice cup of pee

    Linux... yeah linux.. Linux

    Have a nice cup of pee, Apr 12, 2006, in forum: NZ Computing
    Replies:
    19
    Views:
    687
    Bette Noir
    Apr 17, 2006
  4. jm
    Replies:
    21
    Views:
    12,470
    Wolfgang Weisselberg
    Sep 6, 2010
  5. Dr Rig
    Replies:
    15
    Views:
    5,672
    Spamblk
    Oct 31, 2010
Loading...

Share This Page