
Я хочу знать высоту размера реального объекта
У меня есть информация
У меня есть снимок с размером 1620 * 2220 (ширина * высота [пиксель])
Iзнать, где находится реальный объект, который я хочу измерить на снимке.Это значение известно как значение координаты
Если вы обратитесь к этому вопросу, вы можете получить приблизительное представление о том, как я знаю значения координат.
Комусоздать ограничивающую рамку в текстуре в Unity
Я могу снимать Raycast из значения координат экрана, и я могу найти положение удара Якоря, SurfcaeARCore.
Я могу получить расстояние от камеры до точки, где она коснулась поверхности.
Я могу получить камеруугол, потому что я использую ARCore API
Если вы посмотрите на картинку
Я знаю длину красных линий и точку координат метки xи я хочу узнать высоту реального объекта на зеленой линии.
Я получаю нижнюю и верхнюю координаты из моментального снимка и примерно знаю размер реального объекта.
Теперь я использую ARcore, снимаю Raycast с точки ниже и помещаюОбъект находится в том месте, где он ударился о поверхность.
Однако, чем ближе или больше расстояние экрана и попадание Raycast, тем больше необходимо изменить размер объекта.
I 'Я видел это раньше, но я не применял это
https://blogs.unity3d.com/kr/2017/11/16/dealing-with-scale-in-ar/
Как я могу получить реальный размер объекта только с вышеуказанной информацией?
Обновление 1
Я просто вычисляю разницу между точками вверх и вниз в снимке и преобразую их в см.
Например, если верхняя координата y равна 300, а нижняя координата равна 100 y, я делаю 300 - 100 и преобразовываю 200 пикселей в см.
Но я думаю, что есть и большая проблема.