I’m trying to modify the height of a plane (or a rectangular solid) with subdivisions based on a .png file. My goal is to print out the final product and then hand color or paint it using raised topology as a guide, so it is necessary to modify the mesh, not just apply a, say, bitmap.
I’ve tried several tutorials on the internet without success. Ideally, I would like to use just Blender, but I have access to GIMP as well. And I would like to avoid a single use tool, but eventually I’ll give in and do it if I have to.
I’ve seen references to converting an image to Grease Pencil and then to Bezier Curves, but I couldn’t get it to create a Grease Pencil object.
I tried using a texture to modify a subdivision surface, but nothing seemed to happen.
I’d be happy to use geometry nodes, as well.
But what I need is a very simple, efficient workflow to use a PNG or JPG with a smattering of dots into raised bumps on a flat mesh.
Here are 2 very simple images to illustrate what I’m trying to do.

Figure 1: Simplified PNG image
I would like to either directly modify the mesh below or use a Boolean operation to add it to the mesh.

Figure 2: Simple mesh

Figure 3: Simplified outcome, showing perpendicular extrusion
- I drew a low resolution image using GIMP
- I imported the PNG using Add > Image > Images as Planes [needs config]
- I subdivided by 100 using Edit Mode > A > Edge > Subdivide > Number of Cuts: 10 , Repeat

Figure 4: Subdividing the Plane ( at 10 x 10)
- I added a Displace: Modifiers > Deform > Displace
- Built a texture with the image: Texture > Open
- Set the displace texture
- Set displace strength to -0.2
And it mocks me.

Figure 5: Clearly, I need another approach
Next up, Geometry Nodes!