Hi Lindsey!
I’m sorry, but I’m still not aware of a way to do this directly off the top of my head.
When automated grouping methods come up short, you have to resort to manual grouping. Give PolyGroupIt a try, and see if that’s useful. It will let you expand every polygrouped region you make independently of the others, and then fill in the gaps when your general zones are established.
There is also just good old fashioned “hide and group”. Make sure you are familiar with the shortcuts and mechanisms for quickly hiding sections of geometry, and then group visible.
You could also polypaint your mesh in the zones you want, and convert that polypaint to polygroups.
Theoretical:
Thing to remember is, polygroups, masking, and polypaint are all interchangeable. If you can get to one in the region you want, you can convert it to the other. I can sort of imagine theoretical workflows that might let you indirectly arrive at polygrouping based roughly on density, but most would involve having a low poly version of your mesh with multiple subdivision levels, possibly getting UVs and textures involved–and I suspect you probably have a high poly mesh with no subD levels because of the photogrammetry. That could be created from your current mesh with a bit of work, and may make it easier to manage and polygroup. The procedure is described below if interested. Beyond that, I will give your issue some thought, and see if I can work out something more definite.
Click here for procedure to create new version of high poly mesh with multiple subd levels.
If your mesh currently does not have a low poly base with multiple subdivision levels, you can create them with a bit of work. Duplicate your mesh subtool, and ZRemesh it as desired. This will create a low poly version of the mesh with well distributed topology. You will lose detail when you reduce polygons, but that’s ok. Subdivide your new mesh up to sufficient subdivision level to hold the detail from the original, then project the detail (sculpting +polypaint) from the original mesh onto the duplicate. The procedure for transferring detail can be found here.