Как найти расстояние между Pupil Center и Eyeglass Frame Edge - PullRequest
1 голос
/ 13 апреля 2020

Я пытаюсь измерить реальное расстояние между центром зрачка и верхним краем нижней части оправы очков, на которых пользователь носит, как показано на фотографии:

pupil to eyeglass frame distance

Я использую ARKIt, а используя faceAnchor.leftEyeTransform & faceAnchor.rightEyeTransform, я могу надежно получить центр учеников индивидуально.

Я борясь, однако, с обнаружением края кадра. Все ссылки в Интернете указывают на обнаружение самолетов с ARKit, что в данном случае, похоже, не применимо. Это определенно можно сделать, как я видел iOS приложений, делающих это.

1 Ответ

3 голосов
/ 20 апреля 2020

Обнаружение кадров невозможно при использовании одного ARKit. ARKit отслеживает только детали лица и лица. Чтобы обнаружить кадры, вам потребуется использовать CoreML и некоторое машинное обучение.

Более конкретно, вы захотите использовать модель, аналогичную Yolo V3 (https://towardsdatascience.com/training-a-yolov3-object-detection-model-with-a-custom-dataset-4981fa480af0), чтобы обнаружить кадры и указать ограничивающий прямоугольник, где на изображении они существуют. Нижняя горизонтальная граница будет представлять нижнюю часть кадра. Измерение расстояния от зрачка до нижних горизонтальных границ даст вам достаточно точную оценку расстояния от зрачка до нижней части очков.

...