Под «калибровкой», я полагаю, вы имеете в виду «приспособиться к гравитации» с акселерометром и «установить базовое преобразование» для гироскопа и/или положения и внешних датчиков преобразования?
Без какой-либо ссылки на ссылку, например, на магнитометр (который должен быть откалиброван на локальные данные магнитного поля в какой-то момент) или предварительно откалиброванные данные внешнего датчика (например, использование Rift, Vive и PSVR), вы не можете откалибровать датчики движения без ручного вмешательства.
Вы можете установить основу, предложив пользователю через полноэкранную презентацию/текст, чтобы они стояли неподвижно на мгновение, в удобном положении, возможно, показывая экран «Калибровка ...» во время сбора данных , но это примерно так же автоматизировано, как вы можете действительно сделать свою калибровку.
К сожалению, вы неизбежно получите «дрейф» данных гироскопа и акселерометра, без магнометра (который обычно не присутствует в телефонах) или другой формы коррекции (например, повторной калибровки, вызванной нажатием кнопки). Это неизбежно на аппаратном уровне - нет никакой магии, чтобы избежать этого.
Возможно, вы сможете создать решение для настройки программного обеспечения после измерения дрейфа в течение длительного периода времени, попросив пользователя разместить устройство на поверхности в течение некоторого периода времени, пока вы собираете данные.
Пожалуйста, отредактируйте ваш вопрос, чтобы показать [что вы пробовали до сих пор] (http://whathaveyoutried.com). Вы должны включить [mcve] кода, с которым у вас возникают проблемы, тогда мы можем попытаться помочь с конкретной проблемой. Вы также должны прочитать [ask]. –