1
$\begingroup$

my question is, can you take a single photo en convert it to grayscale relief or 3d? for example i have a photo off my kids and i want to create a file so i can get a sort of 3d effect that i can route on my cnc. hope you can help me. i tryed different thing on blender loke working with nodes to manipulate my photo and a coupple of other things, nothing seems to work.

with friendly regards

$\endgroup$
2
  • $\begingroup$ Blender won't be able to solve this however you can use software that estimates depth map from a single photograph, which you could then use as a bump or displacement map. Unfortunately most of these projects are from research publication ("deep learning") and getting the code up and running is a bit challenging. $\endgroup$
    – Robert Gützkow
    Aug 2, 2019 at 21:43
  • $\begingroup$ Related 2d image to a 3d model $\endgroup$
    – batFINGER
    Aug 3, 2019 at 11:26

3 Answers 3

2
$\begingroup$

I'm not sure exactly what you mean (what's a CNC?) but the short answer is, the 3D information needs to be available somehow. Blender cannot invent or deduce it.

My suggestions:

  • you can take 2D to 3D if you have enough visual elements. That means a few pictures. Meshroom can help you.

  • You can remodel a scene. For sceneries, rooms and the like, fSpy can help for camera angles and measurements

  • This tutorial about projection mapping can help: https://www.youtube.com/watch?v=p9IfDeNU8K0, but there will be no miracles. It works well with planes, mostly.

  • You may be after parallax effect, which can be achieved as explained here: https://www.youtube.com/watch?v=gvaiHqBuTz8

For grey scale relief, there is a Gimp filter that does it (something like emboss). If you want to do it on a sequence of images, I suggest you try Natron rather than Blender.

$\endgroup$
1
$\begingroup$

You can do that - brighter colors will be higher, however this is not going to look well. There is no depth information in a single photograph, so it will not magically be created in any way and the heights will be as random as the colors in the photographs. This will not resemble the actual 3d forms in any way.

You can however take many photographs and reconstruct the forms this way. This is called photogrammetry. It does require expensive multiple camera rigs for moving subjects as well as expensive software other than Blender so it's out of the scope of Blender Stack Exchange.

$\endgroup$
6
  • $\begingroup$ If the person can keep relatively still, it's possible to do (simple) photogrammetry with a single handheld camera. Software is free too for example alicevision.org/#meshroom $\endgroup$
    – Robert Gützkow
    Aug 2, 2019 at 22:32
  • $\begingroup$ In motion will be difficult to translate to a CNC milled piece anyway. One the things I don't know is if Blender supports output formats that can be easily used for CNC. $\endgroup$
    – Robert Gützkow
    Aug 2, 2019 at 22:33
  • $\begingroup$ I meant, a person is always a moving object. It is practically impossible to get good results with something alive and a single camera, multiple cameras need to be used at the same time. I agree that Meshroom is definitely worth having a look at even though it's still hard for me to compare it with the easy of use and maturity of functionality of software like Agisoft's Metashape(former PhotoScan). I hope it's gonna improve though. Seems very promising. In any case Photogrammetry is a very long way from expectation to be able to do this with a single photo... $\endgroup$ Aug 2, 2019 at 23:00
  • $\begingroup$ True a person won't be perfectly still, but for something gimmicky like a small 3D printed portrait it could work. It won't reach professional quality obviously. Unfortunately Meshroom doesn't have masking atm. Photoscan/Metashape works very well, although not the fastest on the market. Depth estimation from CNN or GAN would be better suited, but that is even further out of scope. $\endgroup$
    – Robert Gützkow
    Aug 2, 2019 at 23:15
  • $\begingroup$ I have tried reconstructing a face with a single camera. The guy really looked still during the photographing and I really thought it would work, but even half a millimeter movement is enough to cause all sorts of trouble and even when keeping still people tend to move really a lot if it's milimeters we are talking about. I really don't think this can be practical. I think that is a waste of time. And you can waste a whole lot of time while trying. I did. Even if it is possible(I would be surprised to see half good results), that is not practical at all. Multiple cameras need to be used. $\endgroup$ Aug 2, 2019 at 23:51
0
$\begingroup$

If you don't need the full 3d model, you could try taking the picture in a dark room with a large consistent light source in front of you (maybe strobe whole white wall if a light source is a problem). This could get you an effect of the closest pixels to the camera being the brightest. The resulting image could then be used as the basis of a distortion map, but it would likely still need some work (contrast, color issues, blurring excessive detail, for example). This distortion map can be applied to a plane, which could be applied and used as a reference for a CNC sculpt. If you have access to IR camera/lighting, this might improve the map by eliminating color data (I think this effect is similar to how Wii and Xbox Kinect worked). I have not tested this process, but it is probably the first approach I'd try.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .