“Dual sparse max-approximation to binary erosion. One of the most interesting properties of mathematical morphology is the duality by the complement of pairs of operators, and in particular the duality between the dilation and the erosion. “
It’s the duality btwn erosion and dilation which makes for a complete lattice.
The reason I am so enthralled by mathematical morphology is that it is a pragmatic use of these things as its purpose is to improve the very difficult task of medical imaging.
“In this paper we described a new geometric approach on generating a skeleton out of point clouds by investigating the attributes/behaviour of points in a closed volume (an octree cell).
From this attributes we extracted a describing graph, under the assumption of a basic element, which is the star graph from all touched sides to the midpoint of the cell. ”
In this particular case, this algorithm has found practical use in modeling actual living tree and especially in improving long distance laser scanning of dense forestry, judging by the citations of it.
Awesome! I just didn’t want you to reinvent. Shoulders of giants and all.
I love that it found use in tree scanning. That makes sense to have the binary primitive shape of a living tree be a star graph.
I’m not stealing thunder — just trying to help where I can. Our tech is primitive in a lot of ways. A laser scanner is great BUT what’s its limitation?
a dot at a time.
But the beauty of mathematical morphology is that you have custom SHAPES of the dots – the primitives — and that affects what you can do with it, broadening possibilities far beyond what a mere filled-in block can do.
So, if you represent a point cloud as a cloud of star graphs, when you start working with it, connecting and removing based on whatever image cleanup is needed (dilation and erosion) – you’re working with sparse representation down to the SMALLEST possible primitive.
Its solid is open and tree-like. A “web of possibility”.
It may or may not get you to n-dimensional skeletons but it can certainly do 2D and 3D quite nicely.
https://www.hindawi.com/journals/ijo/2017/5408503/fig9/ This is beautiful.
Look how their method captures the ENTIRE branching area as a SINGLE unit.
My head gets lost in pure abstract math but if I can GROUND it somehow (ground truth), I have my head peeking into the Platonic while my feet also touch the ground.
I can’t just be on the ground but I can’t live in the clouds either. Need both. Satisfies my inner Drill Sargent and inner cloud watcher simultaneously.
I visualize the points emerging from the complex plane, “behind the paper”.
This is usually how programming logic primitives are described:
“The three primitive logic structures in programming are selection, loop and sequence. Any algorithm can be written using just these three structures.”
I find “selection” is the “most human” of all algorithm processes.
Matching, certainly. I don’t know if TRUE/FALSE is sufficient though.
Criteria. Bounds. That caveat *is* the thing. In mathematical morphology (and all complete lattices) it’s called supremum and infimum.
I’ll give a standard:
“A set is bounded if it is bounded both from above and below. The supremum of a set is its least upper bound and the infimum is its greatest upper bound.”
It’s a range of acceptability. Anything OUTSIDE is discarded. If there is an OUTSIDE-OF the set, it is bounded.
What this means to me is if you even do so much as say “TRUE =/= FALSE”, you’ve JUST created a bounded set, hence a complete lattice, hence amenable to working in a complete lattice frame.
The alternative is similar to untyped lambda calculus.
I think you can but it will be bounded by a higher order, even if the lower order has infinite freedoms.
Downward causation – from abstract to the physics