It looks like a chicken and egg problem, to find the peaks and holes you need to sample the texture and for that you need a mesh with enough resolution.
You can look at that : Tenochtitlan (wip) - #4 by ThomasKole
For adaptive subdiv according to a map, it’s slow to compute too but might sparks some idea !
Good luck !