Hello Matthew,
Please see simple example of model face selection by color:
import Metashape
doc = Metashape.app.document
chunk = doc.chunk
model = chunk.model
vertices = model.vertices
red = 100
green = 239
blue = 99
color = 3 * Metashape.Vector([red, green, blue])
tolerance = 20
n_selected = 0
for face in model.faces:
face_color = Metashape.Vector([0, 0, 0])
for i in range(0, 3):
face_color += Metashape.Vector([vertices[face.vertices[i]].color[0], vertices[face.vertices[i]].color[1], vertices[face.vertices[i]].color[2]])
if (color - face_color).norm() < tolerance*3:
face.selected = True
n_selected +=1
Metashape.app.update()
Metashape.app.messageBox("Selected {:d} faces. Press OK.\n".format(n_selected))
Red, green, blue values should be defined in script body.