Reptorian G'MIC Filters

No, it doesn’t. Also, the downside of the new method is that I can’t replicate what I did with balance option on the version that’s available in gmic-community. Balance is the minimum value or maximum from the combined convolution of different stroke angles. If that can be solved, then potentially, this filter and rodilus filter can be 3 times faster i.e from 15 s to 5 s flat.

EDIT: I’m looking at this though I don’t know how to code for g’mic c++ side of thing.

https://www.spiral.net/software/sfft.html

If I’m reading the benchmark right, then it might in theory solve the speed issue.

1 Like

Interesting. Full of links and code for further investigation.
Likely @David_Tschumperle territory (if he has the time).

Precisely not ! :slight_smile:

I have a look to the backslash problem in Custom code.
Also, for defining a 5x5 kernel full of 1, it is shorter to write: 5,5,1,1,1.

Your filter attempt made me experiment some funny idea, based on the computation of 1D-blurred versions of rotated versions of the input image, followed by a median blending at the end.
The results looks a bit like what you obtain :

I wonder if this could do an interesting filter.
Here is the code:

test :
  W,H={0,[w,h]}
  repeat 7
    ang={$>*360/7}
    +rotate[0] $ang,1 b. x,10%,0 rotate. -$ang,1 r. $W,$H,1,100%,0,0,0.5,0.5
    n. 0,255 sharpen. 100 equalize. 256
  done
  blend_median +ac "normalize_local ,",ycbcr_y blend alpha,0.5

And when I’m using single-sided oriented convolution kernels, that looks good also (and the timing is not bad, like 2-3 second for a 800x800 image).

I get this:

With the code:

test2 :
  W,H={0,[w,h]}
  repeat 5
    ang={$>*360/5}
    130,1 gaussian. 20%,0.1 f. "x>w/2?i:0" rotate. $ang,1 /. {is}
    +convolve_fft[0] .,0 rm..
    n. 0,255 sharpen. 100
  done
  rm[0] blend_median +ac "normalize_local ,",ycbcr_y blend alpha,0.5

Playing with the final blending modes and different options of the filter, I think it deserves to be published as a new filter.
I’ll doing that this afternoon.

Filter done. Available at Degradations / Blur [Multidirectional].
Some results below:




1 Like

Looks like someone has repressed anger. :smiling_imp:

Is popcorn fractal the same as in Apophysis flame fractal ?

I don’t use Apophysis, however I got the formula from here - Pickover Popcorn | Element90 Fractals

Okay, now I got new progress. However, I would like to be able to run a command to verify if window is on since I am running run(w[-1], and it is used to check on the progress of DLA.

Here’s a example involving new code.

image

You see that it’s growing around the text image? Let’s say I close the window. I should expect to end with that. I can always add a option to add boundary option to limit numbers of vector though.


EDIT:

Solved the mask issue. Also, I added a new option to erase mask after processing.

image

2 Likes

New Filter! - Diffusion Limited Aggregation

I’m finished with the filter. Finally, that was difficult to make.

Check by in a hour or two if it haven’t arrived after refresh.

1 Like

New Filter! - Pseudorandom Noise

There is a bug on the filter with double pixel axis mode, but single pixel axis looks better anyway, so I wouldn’t be so pressed about it. I will fix that bug when the time comes. It rarely shows up anyway.

New Filter! - Tiled Zoom


Non-Isometric Tiling Tool now has fill tool built-in to it. Read the instruction to use it. I thought it was going to be difficult, but highlighting lines with KDE Kate really makes it easy.

Reptorian, could you create this kind of organic generator

Not without code and without the name. I do not do request.

I don’t know what is called. It’s basically this you’ve already done only smoothed out and having soft transitions- Reptorian G'MIC Filters - #554 by Reptorian

You linked to this thread. The smoothening and transition part exists. Just not the structure. From a theoretical perspective, I can take a look at TR’s source code to one of his filter and do something like that.

I made a simple glitch filter to experiment with.

rgb2yiq8
f "begin(
 rv(v)=(
  rv=0;
  n=v;
  do(
  rv=int(rv)*10+n%10;
  n=int(n)/10;
  ,int(n)>0);
  int(rv);
 );
);
rv(i);
"
yiq82rgb

What this does is reverse digits. @Joan_Rake1 I’m sure you can do something interesting here.

A little modification leads me to this.

image

EDIT: I just had pushed the Reverse Digits glitch filter.

1 Like

Upgraded filter - Modulus Operation

At long last, I finally upgraded it. It took me a while to do so.