PNG to SVG problems with geometry

I have a black PNG image (attached) that I want to turn it into vector, so that the black parts are faces and the transparent parts are gone. I then want to solidify it in blender and 3d print it. Theoretically it would be very easy for the printer to print some planes with very little thickness but the image has a lot of details and maybe this is the issue.

First I tried to convert it online to SVG but it has a lot of issues, some black parts are gone and vice versa. Tried resizing it or inverting the colors but it still gave the same result. I tried several converters, but maybe there are some out there that I missed. Also he SVG files were very large.

Secondly I tried converting it online to an STL format but even tho it had the same detail I wanted, I couldn’t save it as a plane. It had to have 3 dimensions, so when I import the STL model in Blender its geometry is very bad, and the printing surface is not smooth. I remeshed it and turned the spikey surfaces to a plane but the model now is 1GB and the slicer in the 3d printer has a difficult time doing that.

Wonder if there is a better way?

Here is the link for the images and the SVG and STL files https://drive.google.com/drive/folders/1NzU7ZjpCihKaIvZHpAuSHo86BR07dhcS?usp=sharing

Some more info about the project I will attach the black parts of the image that will now have some thickness to a plane underneath so that the plane is 3mm below. I will then 3d print it and it will be a working engraving design ready to print on paper! (this in not relevant to my question but someone could be wondering why I do this)

Forget the SVG, it’s possible but you would need to purchase one of the converters out there…
Better to just use a Multires and displace modifier, then you can convert that to Real geometry by applying the modifiers…

1 Like

I was able to convert it to SVG but with the exrtusions, the model is 100MB
I will also try what u say. Maybe u could tell me how bog your file is?
Thank you so much!

Not sure as I didn’t save nor what it would be as an STL if converted, but I doubt it would be larger than yours since it was still in the modifier stage, so applying and converting would maybe get it up to 200mb as an STL…

Another way with the image and geo-nodes, no SVG needed.

Hope that helps

i will also try this but as i can see from the image a lot of the details re gone. maybe i will have to subdivide more

You may have as large a number as your computer can handle in here…

It will increase the res

Heres the thing at 4096x4096.

I can now see the banding in the image at the top…

image_displace.zip (104.3 KB)

1 Like

Ok I will check it out. Thank you so much. I will be back with the updates

1 Like

You will be better off if you could find a picture that isn’t a pattern of dots, but solid areas…

Something more like this would work fine…
image

But the News paper-like image you have just doesn’t work well.
I worked up a different example…using a solid 4 color method…of the original picture…

Here it is converted already…
Blender 4.3.3 File
ALF-Extrude.blend (331.3 KB)

Edit: I forgot to extrude Path3 on the Blend File…

Screenshot 2025-01-06 120339

2 Likes

Oh you found the original ALF image cool!
So the thing is it has to be only black and white and not grayscale and this is the challenge hahah


So far I have successfully made the mesh I want with correct geometry (black parts 0.4 cm above white parts) but is has so many polygons that the printer doesn’t do the best job (I think)

Looks like they’re about to liberate that animal from the mortal coil.

1 Like

I think with 3d printing, producing this as a lithophane would be a better method, where the thickness of the printed material (opacity) is varied to produce the greyscale values. I believe that is what RSEhlers is suggesting.

I used a color ramp to squeeze out the grey tones in the Texture I imported …it is down on the Bottom of the texture…Like this…

For the second one above I used a 4 color SVG image to import and then added the extrusions… @chrisd hit it right on the nose, that was exactly what I suggested as per your original question… PNG to SVG Problems

1 Like

I will try this but I believe it loses a lot of detail, as I think I tried it before. I made this effect on photoshop on top of the original photo cause it looked good for the bnw tone i need, and it kept the detail i need. But maybe what u say has a better balance between detail and printabily.

A lithophane gets its depth from the grayscale image, and i need this with a bnw image like the one i attached. The printed object in the end would have 2 layers

You can increase the number of colors, instead of a 4-color SVG jump it to 6 or 8, which will add more and more detail, and remove the DOTs which doesn’t work well with a 3d print…

Instead of trying to completely remove the background (white) so that it is open, you can use your image to displace the geometry as in a heightmap, so there are no holes. You could still use the half tone pattern, as you have now, and you would have basically two colors. The white areas would have minimal thickness, and the black area would have the maximum thickness. You would need to use a function that will close off the back to provide the thickness.

Well…this is what I have done. What u are describing is what I did with the model in the link attached

Your photo shows holes in the print in the "white " areas. If you have a minimal thickness for the “white” areas, perhaps that is too thin for your printer to reproduce. Most consumer level printers cannot reliably produce a thickness below 1mm, unless it is a resin printer.

I made the thickness 3 or 4 mm. Maybe it is this printers deffect that I can’t print it even in 300% scale which the printed plane would be 65*70cm which is huge