Здравствуйте, Александр,
Можно попробовать воспользоваться функцией model.pickPoint() которая находит точку пересечения луча с мешем.
Пример скрипта ниже, находит наименьшее расстояние до модели для точек с исходного изображения, соответствующего камере. Для ускорения работы, скрипт просматривает не каждый пиксель, а бежит с шагом в 50 точек.
chunk = PhotoScan.app.document.chunk
model = chunk.model
camera = chunk.cameras[0]
dist = 1E10
for x in range(0, camera.sensor.width, 100):
for y in range(0, camera.sensor.height, 100):
point = PhotoScan.Vector([x, y])
point3D = model.pickPoint(camera.center, camera.transform.mulp(camera.sensor.calibration.unproject(point)))
if point3D:
dist = min(dist, (camera.center - point3D).norm())
print(dist * chunk.transform.scale)