Reptillian

Members
  • Content Count

    566
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by Reptillian

  1. Actually, this isn't true at all. If you connect all the dots, you can definitely determine which region is the outside and filter it out. Then reconnect the dot separately with distance threshold. However, I must add that this is too much work to do no matter what scripting language or programming language you're using.
  2. G'MIC 2.9 is not available for PDN, but I'd like to share this news of a filter. It's basically another version of @Red ochre Dryad plugin. Coming to 2.9.
  3. The thing is that it's not consistent within the spokes. That's why I suggest polar transform. Generate the outlines within pre-transform vector, then polar transform right back. But, I'm not so qualified to know c# limitation in context of paint.net, but this is indeed possible within g'mic-qt and c++ within other programs.
  4. Agreed, there is actually a theoretical way I know how to do it. But, it requires warping image assuming distance from center is y and square borders as x, then create linear stroke, and transform it back where x axis is x and y axis is y. But, that is not easy at all. Actually maybe polar transformation would be easier to code in. A lot easier in fact.
  5. You can run a virtual machine, install Windows in it, and then run Paint.NET. Otherwise, you're going to have to go into alternative, and any software that supports G'MIC also provides similar effects to plugins that are offered here. GIMP, Krita, Photoflare, Photoflow all supports G'MIC, but GIMP and Krita offers the best support for it.
  6. A surprise recommended music from youtube
  7. All typos fixed and added alpha support. Thanks, Remake.
  8. Inspired by @ReMake, I have decided to take my version which contains more variety. (Two different source codes for this is provided below. C# and G'MIC-QT). All this filter does is to interpolate between rgb and grayscale value. Download - RGB to Linear Interpolation.dll It's under Effects/Colors ------ License - CeCiLLv2.0 - https://cecill.info/licences/Licence_CeCILL_V2-en.html Source code in C# Source Code in G'MIC-QT
  9. @ReMake Is it not possible to merge Saturation RGB with this? It appears so as they both have the common denominator of color2gray, and linear interpolation using the value of gray, and value of channel with different weight assigned per channel.
  10. Linear interpolation between image intensity and the image respective channel? I really like this idea.
  11. Minor update: I have added new color space for G'MIC. Xerox's YES. Those options are available for Nebulous and Color Modulo Texture. I might add some more color space like TSL, and Kodak series. Kodak series of color space and YES are obscure, but they are found within a blog.
  12. For anyone that listens to soft Evanescense music or Steve Morgan or Amethystium
  13. Donut Distortion filter has been pushed! EDIT: Donut Distortion has been renamed to Rotate by Torus Map
  14. Looks like I'm bringing new filters at a faster rate again. I'm making a new filter now. Paste this to code filters inside gmic-qt and see what you get. Yes, it's a better variant of one of MadJik's Donut Distort with new modes, and there's the option to wrap around the image with different boundary condition. Obligatory note: Permission been granted to use his code. #$1=_torus_circu_min_dimension_percent_1# #$2=_torus_circu_min_dimension_percent_2# #$3=_mode_1# #$4=_mode_2# #$5=_mode_percent_comb# #$6=_offset# #$7=_offset_duplicates# #$8=_interpolation# #$9=_boundary# #$10=_eff_mix# {w*2},{h*2},1,1," begin( ww=w-1; hh=h-1; sd=max(w,h)/min(w,h); sx=w>h?sd:1; sy=w>h?1:sd; torus_val_1=.85; torus_val_2=.5; new_min=min(torus_val_1,torus_val_2); new_max=max(torus_val_1,torus_val_2); old_max=max(1,0); old_min=min(1,0); nm(v)=((old_max-old_min)/(new_max-new_min))*(v-new_max)+new_max; oldcut(v)=v>old_max?old_max:(v<old_min?old_min:v); bndcut(v)=v>old_max||v<old_min?0:1; ); xx=(x/ww-.5)*2*sx; yy=(y/hh-.5)*2*sy; radial_gradient=sqrt(xx^2+yy^2); [oldcut(nm(radial_gradient)),bndcut(nm(radial_gradient))]; " r2dx. 50%,3 r. 100%,100%,100%,2 f. "begin( dist=min(w,h)/2; sd=max(w,h)/min(w,h); sx=w>h?sd:1; sy=w>h?1:sd; ww=w-1; hh=h-1; max_ang=40; max_ang*=-1; ang2rad(v)=pi*(v/180); rot_x(a,b,c)=a*cos(ang2rad(c))-b*sin(ang2rad(c)); rot_y(a,b,c)=a*sin(ang2rad(c))+b*cos(ang2rad(c)); softmode(v)=(cos(v*(2*pi)-pi)+1)/2; midmode(v)=abs(cos(v*pi+pi/2)); hardmode(v)=sqrt(1-(abs(v-.5)*2)^2); distroymode(v)=cos(v*pi)*i1; invdistroymode(v)=(cos(v*pi)*-1)*i1; quadextrudemode(v)=1-abs(v-.5)*2; hexextrudemode(v)=(r=(1-abs(v-.5)*2)*2;r>1?1:r); ); z_depth=quadextrudemode(i0)*max_ang; xx=(x/ww-.5)*2*sx; yy=(y/hh-.5)*2*sy; XX=rot_x(xx,yy,z_depth); YY=rot_y(xx,yy,z_depth); XX/=2*sx; YY/=2*sy; XX+=.5; YY+=.5; XX*=ww; YY*=hh; [x-XX,y-YY] " shift. 0%,0%,0,0,2,1 f[^-1] "i(x-i(#-1,x,y,z,0),y-i(#-1,x,y,z,1),z,c,1,3)" rm.
  15. Can you provide the evidence that HSV corresponds with human perception of luminosity/lightness? LAB, XYZ does those by far better, and they're more about human vision than HSV, but they can't be represented in monitors because of the limitations within RGB models. HSV doesn't take into consideration of perceived brightness, and that's what XYZ and its childs address.
  16. I thought human eye perception color space models would be CieLUV, CieLAB, LCH, and XYZ. XYZ being the primary source. My guess is that this has to do with rounding. As you can see with the output of gmic-qt code, there's decimal point after 191. Internally, your source either ceiling or round or Paint.NET either floor or round. This would be something @Rick Brewster can answer as none of us other than @Rick Brewster has access to. If it were up to me to change how this works, I would use round than ceiling or flooring to have more accuracy.
  17. You can try thispersondoesnotexist website to get some pictures. I use it to test filters.
  18. Pexels is a good source. I always attribute images if used regardless of not requiring attribution.
  19. 2 New Filters 1. Point Warp 2. Prime Surface This picture below is made with prime surface+gmic smooth[anistropic]. I applied heavy JPEG compression as the idea is important.
  20. Also, I would like to add that RGB INT8 can have a degree of error when converting from HSV to RGB. @toe_head2001 alluded to that, but I'll say it anyway. As you can see with the example above, note the decimal point. RGB INT8 has no concept of decimal point. So, it's not that accurate, but just accurate for production.
  21. You aren't going to always have a very accurate conversion from HSV to RGB. For the sake of discussion, I ran this code within code filters of g'mic-qt and you'd see the result with display debug. f [210,1,.75,255] hsi2rgb s c #RGBA: 0,191.3,382.5,255# RGBA INT8 has a range of 0-255. Hue of 210 with 100% Saturation and 75% Intensity is equivalent of 0,191.3,382.5. That's not possible with RGBA INT8 restriction.
  22. Minor feature added to Glass Vignette -> Len Size (%). All this does is to change the size of the len.
  23. Sorry that I haven't responded to this thread as I knew the answer. But, G'MIC QT do offers Polygonize filter. It doesn't solve everything though. It's just a step.