G'MIC fun with afre

Edit #1: I removed Neon from the title since I intend to add fun new effects that I discover along the way. Feel free to share and discuss interesting stuff you have come across that don’t fit into the one-liner challenge thread (see link in original post below).

Edit #2: This is intended for new effects that you have made either from scratch or on top of other filters. Doesn’t have to be unique; just fun.


Error with updated Neon command inspired me to play around with the idea of neon lights. I started from scratch and came up with something interesting. It isn’t a One-liner challenge qualifier, so I decided to share the results.

neon_flower

neon_barbara

neon_eagle

zombie lisa

4 Likes

This is why I (try to) make filters. I’d love to use the code to add some sort of glow and boost glow to it.

I made this thread broader by replacing the word Neon with G’MIC. Feel free to share and discuss random effects that you have discovered. :slight_smile:

apples

duck

I’m a fan or Dream Smoothing.

1 Like

I refined the purpose of the thread a bit more.

I have yet to try it. Which settings do you typically use?

The default setting usually work well with large images. It can take some time to process however. Here’s an image of my bike, I used 2 iterations setting on this one.

More fun: this time a “blueprint” effect.

blueprint

2 Likes

I discovered that the effect in post #3 has an interesting application. It helped highlight spots that needed healing when I did this PlayRaw entry.

Here is another fun effect. Its temp name is “ludic”: not quite lucid. :slight_smile: (I used something similar for my second alt on [PlayRaw] Landsat 8 image of Lake Elton

ludic_flower

Reminds me of GIMP’s alien map filter. Do you have the script code?

Sure; it is not in #@gui format yet. It is different from the alien map filter. Since it piqued your interest, I might consider adding it as a filter. I have to figure out GitHub and GitLab someday… :stuck_out_tongue:

afre_ludic: skip ${1=14.5},${2=0},${3=0}
  if {$1<1||$1>15}
    e[] "\n  NB: Argument '$"1"' is not between 1 and 15.\n" v - q fi
  repeat $! l[$>]
    if !$2 b 1,1,1 fi
    n 0,{2^16-1} & {2^$1-1}
    if $2 b 1,1,1 fi
    n 0,255
    if $3 negate n 0,255 fi
  endl done

I see a main parameter, a skip parameter and a negation parameter. I’ll see what I can do.

I have a bunch of techniques in my head but I usually forget about them. This is one of them.

1. skip is for cli and is a list of the default parameters.
2. The key line is n 0,{2^16-1} & {2^$1-1}. This filter is basically an application of bit planing.

Bit-planing is something I’ve been wanting to achieve for a while, as it happens. I gave up on it but this’ll help a lot.

Glad I could help. I like simple concepts and implementations. One thing to note is that the default parameter is set to 14.5, which does not represent a bit plane per se. You would need positive integers; i.e., 1,2,3,... up to the max plane.

I’ve quickly made a bit plane decomposer for 8-bit RGB images:

to_rgb
repeat 8
[0]
l[-1] & {2^$>} endl
done
rm[0]
#n 0,255

Making a reverse command shouldn’t be difficult (without that extra commented n it’s just a case of blend add but it might require some kind of idiotproofing to cram values into a plane before recomposition.

The reverse command is +. :slight_smile:

Thanks for the help, here’s what I have now:

##decompose
to_rgb
repeat 8
[0]
&[-1] {2^$>}
done
rm[0]
#n 0,255

##recompose
#repeat 8
#n[{$>}] 0,{2^$>}
#done
+
binary_planes :
  sp lena

  # Decompose (as a 8-slices volume).
  100%,100%,8,100%,"(i(#-1,x,y,0,c)>>z)&1"

  # Recompose.
  100%,100%,1,100%,"a=0;for(k=0,k<8,++k,a+=i(#-1,x,y,k)*2^k)"
1 Like