Giter VIP home page Giter VIP logo

Comments (3)

sn4k3 avatar sn4k3 commented on May 20, 2024 1

Just un-check: Repair Layers and issues, gap closing and noise removal will only run if that check box is ticked, but yeah i can add extra code to auto disable it when both are 0 and not trigger such error.
Carefull with island removal, don't remove big masses.
PS: Gap closing does the inverse of Noise Removal: Dilate and Erode

from uvtools.

sn4k3 avatar sn4k3 commented on May 20, 2024

Noise removal eliminates tiny groups of alone pixels, which in some cases can remove required pixels.
Iteration = 1 will erode 1px from mass perimeter, after it dilate by 1px to restore image size, but eroded groups which turn into all blacks will not be dilated since they are erased. The more iterations more it will kill the noise/details.

Example:

Take this square 3x3

* * *
* * *
* * *

Run noise removal - iteration = 1:

Original / Erode / Dilate
* * *                         * * *
* * *    =>     *   =>        * * *
* * *                         * * *

in this case nothing happen to the object but if square was 2 x 2 for example the result will be erased object

Run noise removal - iteration = 2:

Original / Erode / Dilate
* * *                         
* * *    =>        =>     
* * *                         

In the end is just what you think, very small details will be erased.
You can test this by draw a alone shape and run noise removal on the current layer, this way you can visualize and understand better
I will set default to 0 in next version, i already should done that as many people print more small details than big parts

from uvtools.

byancey avatar byancey commented on May 20, 2024

Thanks for the explanation. I do tend to print a lot of very small miniatures with fine details, so this probably isn't a feature I'm very likely to use. I've got it defaulting to zero in my settings, so I'm covered here, but probably not a bad idea to set the software default to 0 as well, as you have suggested.

Now that I understand this better, I have a follow-up question. As I was troubleshooting this, I noticed that I can turn gap closing off (iterations=0), or I can turn noise removal off (iterations=0), but if I try to turn both of them off by setting both iteration values to 0, I get an error "Any of opening and closing iterations must be non 0."

I think I understand what gap closing is doing, and with your explanation I now understand what noise removal is doing. These are both nice feature enhancements to assist with island removal, but they appear to be independent of the actual island removal functionality itself. Is there any reason not to be able to turn both of these features off and just rely on UVTools to remove existing islands (basically default to the same functionality found in photon validator).

Oh, great tool BTW. I just recently switched to a new large format SLA printer requires files to be sliced in CTB format. I was previously using photon validator, but it does not support the CTB format, so I was glad to find an alternative that did support CTB. I'm also finding some of the extra layer editing tools provided by UVTools to be extremely useful for manual layer corrections.

Great work and thanks!!

from uvtools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.