ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ГОРОДА МОСКВЫ
«ШКОЛА № 000»
РАЗРАБОТКА МОБИЛЬНОГО ПРИЛОЖЕНИЯ С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ ДОПОЛНЕННОЙ РЕАЛЬНОСТИ К УЧЕБНИКУ ГЕОМЕТРИИ
Проект выполнил Учащийся 8 «Г» класса |
Руководитель учитель информатики |
|
Консультант Учитель математики |
Москва 2018
ОГЛАВЛЕНИЕ
Команда проекта 3
ВВЕДЕНИЕ 4
ГЛАВА 1. СФЕРЫ ПРИМЕНЕНИЯ ДОПОЛНЕННОЙ РЕАЛЬНОСТИ 5
Анализ существующих решений 7
ГЛАВА 2. РАЗРАБОТКА ПРИЛОЖЕНИЯ С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ ДОПОЛНЕННОЙ РЕАЛЬНОСТИ 8
ГЛАВА 3. ЭТАПЫ РАБОТЫ 9
ЗАКЛЮЧЕНИЕ 13
СПИСОК ИСТОЧНИКОВ 14
ПРИЛОЖЕНИЕ 1 15
ПРИЛОЖЕНИЕ 2 17
ПРИЛОЖЕНИЕ 3 20
ПРИЛОЖЕНИЕ 4 21
ПРИЛОЖЕНИЕ 5 23
Приложение 6 24
Приложение 7 25
Работа над проектом выполнялась на базе следующей организации:
ГАОУ «Школа № 000»
1. Научное и организационное руководство
2. Занятия в рамках проектной деятельности
3. Проведение консультаций
Команда проекта
ФИО | ОУ и класс / организация и должность | Функция в проекте | Задачи в проекте |
ГАОУ «Школа № 000», учитель информатики и робототехники | Научный руководитель | Организация проектной работы; Научное сопровождение | |
ГАОУ «Школа № 000», учитель математики | Научный консультант | Консультации по геометрии за 10-11 класс | |
ГАОУ «Школа № 000», обучающийся 8 класса «Г» | Автор проекта | Разработка программного обеспечения Разработка инструкций по работе с ПО Подготовка брошюры с оптимизированными таргетами |
ВВЕДЕНИЕ
Дополненная реальность представляет собой результат введения в поле восприятия любых сенсорных данных с целью дополнения сведений об окружении и улучшения восприятия информации. Дополненная реальность вносит отдельные искусственные элементы в восприятие мира реального.
Актуальность проекта обусловлена, во-первых, необходимостью более наглядного иллюстрирования учебных материалов ряда предметов и особенно геометрии, во-вторых, все возрастающей ролью технологии дополненной реальности среди приложений для мобильных устройств.
Предметом проекта является технология дополненной реальности для создания образовательного приложения к учебнику по геометрии для 10-11 классов.
Целью проекта является создание приложения для мобильного устройства с использованием технологий дополненной реальности.
Для достижения данной цели был поставлен ряд задач:
- Изучить технологию дополненной реальности; Освоить ряд тем из учебника по геометрии для 10-11 класса, чтобы определить возможности использования технологии AR для из изучения; Разработать приложение с использованием технологий дополненной реальности, заключающее в себе наглядное представление геометрических фигур, способствующее пониманию и более качественному освоению учебного материала.
Практическая значимость работы заключается в создании образовательного приложения, способствующего развитию пространственного мышления и помогающего изучению стереометрии с использованием технологии дополненной реальности. Благодаря виртуальности экономится место, требуемое для реального наглядного материала. При этом приложение доступно в любое время и в любом месте.
Структура работы организована таким образом, чтобы дать определение дополненной реальности, ознакомить с основными решениями, имеющимися на рынке, и представить собственную разработку в данной области.
ГЛАВА 1. СФЕРЫ ПРИМЕНЕНИЯ ДОПОЛНЕННОЙ РЕАЛЬНОСТИ
Существует несколько определений дополненной реальности. Мы будем опираться на определение, данное исследователем Рональдом Азума (Ronald Azuma) в 1997 году: это система, которая:
совмещает виртуальное и реальное; обеспечивает взаимодействие в реальном времени; работает в 3D.Существует множество программных продуктов для мобильных устройств, которые позволяют при помощи дополненной реальности получить необходимые сведения об окружении: браузеры дополненной реальности и специализированные программы для отдельных сервисов, компаний или даже единственных моделей. Само распространение дополненной реальности и нарастающая популярность технологии среди потребителей связаны с тем, что вычислительная мощность и набор датчиков в аппаратных платформах для смартфонов и планшетов-компьютеров в настоящее время позволяют производить наложение любых цифровых данных на получаемое в реальном времени со встроенных в устройства камер изображение. Часть решений в этой области реализуется в виде носимых компьютеров (в том числе в качестве элементов умной одежды) для постоянного контакта со средой дополненной реальности.
Корпорация Google работает над гарнитурой Project Glass (одна из первых попыток донести дополненную реальность до широкого потребителя, датируется 2013 годом, программа заморожена в 2015 году. Параллельно шла разработка платформы для дополненной реальности Tango, выпущена в 2016 году), а Vuzix — над Smart Glasses M100. Компания «Майкрософт» в 2016 году выпустила шлем дополненной реальности Hololens для бизнеса и разработчиков. В июне 2017 года Apple анонсировала платформу ARKit. Аналогичные разработки ведут другие крупные компании (включая Canon с AR-очками для профессиональных дизайнеров MREAL), а также многие стартапы.
Дополненная реальность широко используется на Западе в печатной продукции благодаря распространению так называемых браузеров дополненной реальности — в частности, Wikitude, Layar, blippAR и других. В газеты, буклеты, проспекты, журналы и даже географические карты помещаются изображения, служащие таргетами для последующей визуализации цифровых объектов. В роли дополняющей информации может выступать текст, изображения, видео, звук или трехмерные объекты, статичные или анимированные — то есть абсолютно любые цифровые данные. С помощью специальных программ-браузеров, установленных на планшеты и смартфоны, пользователи сканируют метки, получая доступ к дополнительному контенту.
В периодике дополненная реальность чаще всего используется для визуализации рекламы. Однако встречаются проекты, направленные на решение социальных задач: интересным примером здесь выступает инициатива японской газеты «Токио Симбун», тексты которой при помощи мобильных устройств адаптируются для детского восприятия, что направлено на создание общего информационного поля у детей и их родителей, что, в свою очередь, способствует укреплению связей в семье.
Дополненная реальность используется в медицине, военной технике, в компьютерных играх. Данная технология очень перспективна для применения в образовании: благодаря наглядности, интерактивности обеспечивается удобство объяснения материала, а благодаря относительной дешевизне (для использования приложения необходим только смартфон) может использоваться повсеместно.
Дополненная реальность используется и во многих других сферах. Мы же рассмотрим дополненную реальность применительно к изучению геометрии.
Анализ существующих решений
На данный момент аналогов данного приложения не существует. В магазине приложений Google Play имеется ряд приложений со схожей тематикой и реализованных с использованием технологии дополненной реальности. В частности, имеется большое количество приложений к учебникам по геометрии, представляющих собой стандартные приложения под Android с задачами, решениями и двумерным представлением геометрических тел. Например, это приложения «Геометрия 7, 8, 9, 10, 11 класс», «Geometrix: геометрия – расчеты и формулы» и многие другие.
Также имеется несколько приложений по геометрии, реализованных с использованием технологии дополненной реальности. В частности, это Arloon Geometry испанского разработчика Arloon. Данное приложение также предназначено для образовательных целей, однако не ориентировано на определенный учебник. Кроме того, приложение является платным, что существенно снижает его доступность для пользователей. Также можно отметить приложения CleverBooks Geometry ирландского разработчика CleverBooks (с частично платным контентом) и Geometria – Realidad Aumentada разработчика Марио Бермудеса (Испания). Данные приложения имеют образовательную направленность, не ориентированы на какой-либо учебник и созданы иностранными разработчиками.
Следует отметить, что мое приложение AR Geometry, являясь отечественной разработкой, предназначено для учебника геометрии, широко используемого в российских школах и рекомендованного Министерством образования Российской Федерации. Кроме того, приложение AR Geometry является бесплатным, в нем отсутствует платный контент, что повышает доступность приложения для образовательных учреждений и отдельных пользователей. Также в приложении не содержится реклама, благодаря чему отсутствуют факторы, отвлекающие от учебного процесса.
ГЛАВА 2. РАЗРАБОТКА ПРИЛОЖЕНИЯ С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ ДОПОЛНЕННОЙ РЕАЛЬНОСТИ
Для создания приложения дополненной реальности с 3D-элементами использовался инструмент для разработки двух- и трехмерных приложений Unity 5.3.2 и Vuforia - платформа дополненной реальности и инструментарий разработчика программного обеспечения дополненной реальности для мобильных устройств.
После создания проекта в Unity возможна загрузка ассетов, внутреннее содержимое которых может быть использовано при создании приложения. Ассет Vuforia, который был использован в разработке AR-приложения, предоставляет различные префабы, представляющие собой элементы, использование которых упрощает создание приложения дополненной реальности.
Vuforia использует технологии компьютерного зрения, а также отслеживания плоских изображений и простых объемных реальных объектов (к примеру, кубических) в реальном времени. Возможность регистрации изображений позволяет разработчикам располагать и ориентировать виртуальные объекты, такие, как 3D-модели и медиаконтент, в связке с реальными образами при просмотре через камеры мобильных устройств. Виртуальный объект ориентируется на реальном изображении так, чтобы точка зрения наблюдателя относилась к ним одинаковым образом для достижения основного эффекта — ощущения, что виртуальный объект является частью реального мира. Vuforia поддерживает 2D - и 3D-таргеты, включая безмаркерные Image Target, трехмерные мишени Multi-Target, а также реперные маркеры, выделяющие в сцене объекты для их распознавания. SDK Vuforia предоставляет возможность разработать базу таргетов, которая после создания может быть загружена как ассет в проект Unity, который, в свою очередь, будет использован префабом ImageTarget или подобным ему при работе AR-приложения для определения таргета и выполнения какого-либо действия, связанного с ним.
Vuforia предоставляет возможности программирования приложений на языках C++, Java, Objective-C, и .Net через интеграцию с игровым движком Unity. Vuforia также поддерживает разработку нативных AR-приложений для iOS и Android, в то же время предполагая разработку в Unity, результаты которой могут быть легко перенесены на обе платформы. Приложения дополненной реальности, реализованные на платформе Vuforia, совместимы с широким спектром устройств, включая iPad, iPhone смартфоны и планшеты на Android, начиная с версии 2.2.
ГЛАВА 3. ЭТАПЫ РАБОТЫ
Для применения технологии считывания таргетов и наложения на них объектов требуется создать базу данных, состоящую из изображений, при наведении на которые будут строиться объекты. Так как приложение выполняет построение 3Д-моделей на некоторых изображениях из учебника «Геометрия. 10-11 классы», то в нем используются таргеты, представляющие собой изображения из данного учебника. Для этой цели была создана база данных на сайте developer. под названием “TargetsARGeometry”, в которую были загружены фотографии изображений из учебника, которые после загрузки были оценены системой по пятибалльной шкале на считываемость изображения. Так как считываемость изображения зависит от количества элементов, которые возможно считать, были оптимизированы таргеты благодаря добавлению надписи «Доступно в AR», увеличивающей количество элементов изображения, которые возможно считать. После того как файлы добавлены в базу данных, она была загружена на компьютер в формате, предназначенном для работы в Unity.

Рисунок 1. База данных “TargetsARGeometry” на сайте developer.
База данных была загружена в проект Unity в качестве ассета, в результате чего ее содержимое могло быть использовано в данном проекте. Из папки с префабами Vuforia в проект была добавлена ARCamera, на основе которой строится интерфейс приложения и на основе которой возможно считывание таргетов. К ARCamera была подключена база данных. Также в проект были добавлены из папки с префабами объекты ImageTarget, каждому из которых назначается изображение из базы данных.

Рисунок 2. Список объектов из папки с префабами, используемых в проекте
Для работы приложения требуется активировать лицензионный ключ в настройках Vuforia, который возможно бесплатно получить на сайте developer. в разделе “License Manager”. Для того чтобы в результате работы приложения при наведении на таргет строились соответствующие объекты, требуется добавить их к ImageTarget. Далее выполнены следующие шаги:
Моделирование – это процесс разработки 3Д-модели. Для моделирования использована система Unity. Для построения некоторых моделей потребовалось написание скриптов (см. Приложение 1 и 2). Настройка готовых ассетов. Использование ассетов – дополнений к проекту Unity, облегчает создание приложения, поэтому их следует использовать не только новичкам, но и опытным разработчикам. Настройка освещения заключается в создании, направлении и настройке виртуальных источников света. В проекте использован направленный свет (Directional Light), представляющий множество параллельных друг другу лучей. Рендеринг – процесс построения изображения. Композитинг – совмещение и наложение 3Д-объектов в целостную систему. Указание идентификатора приложения в настройках проекта. Построение приложения с поддержкой дополненной реальности для операционной системы Android и публикация в Google Play.
Рисунок 3. Окно построения проекта в Unity
В результате получено приложение, обеспечивающее наглядную 3Д-визуализацию объектов, представленных в начале учебника (см. Приложение 4).
Во время работы над приложением обнаружилось, что на изображениях, приведенных в учебнике, невозможно построить модели дополненной реальности ввиду их недостаточной считываемости. Для решения этой проблемы пришлось прибегнуть к оптимизации изображений-таргетов – усложнить их, чтобы обеспечить возможность их распознавания смартфоном. Оптимизированные таргеты к учебнику можно скачать по адресу: http:///forum/4-2311-1 по отдельности или единым файлом.
ЗАКЛЮЧЕНИЕ
В результате выполнения проекта были решены все поставленные задачи:
1. Изучена технология дополненной реальности, области применения, основные критерии аппаратного и программного обеспечения.
2. Изучены некоторые темы раздела «Стереометрия» из курса геометрии за 10-11 класс (, , Геометрия. 10-11 классы. Учебник.), и определена возможность использования AR для их изучения;
3. Разработано приложение с использованием технологии дополненной реальности, которое позволяет с помощью смартфона демонстрировать геометрические фигуры, заданные чертежами в учебнике, в объемном виде;
В целом достигнута цель: разработано приложение для мобильного устройства под Android с использованием технологии дополненной реальности и размещено в Google Play в целях апробации. Для получения обратной связи пользователей организовано обсуждение на сайте автора проекта по адресу http:///forum/4-2311-1.
В заключение необходимо отметить, что разработка приложений дополненной реальности является перспективным направлением, призванным предоставить пользователю опыт, который он не может получить в реальной жизни. Такие приложения могут иметь не только игровое и развлекательное, но также социальное и образовательное значение.
В перспективе намечается доработка приложения – визуализация изображений оставшихся глав учебника. Рассматривается возможность издания специального дополнения к учебнику с оптимизированными таргетами, которое призвано решить вопрос построения моделей в целях внедрения приложения в повседневный учебный процесс.
СПИСОК ИСТОЧНИКОВ
Прокачай свою реальность https://xakep. ru/2011/08/24/56240/ 09.09. 2017 ARToolKit https://en. wikipedia. org/wiki/ARToolKit 09.09.0217 Берешь телефон, сканируешь пространство — и твоя комната превращается в пещеру https://meduza. io/feature/2017/09/04/beresh-telefon-skaniruesh-prostranstvo-i-tvoya-komnata-prevraschaetsya-v-pescheru 04.09.2017 Разработка приложения дополненной реальности http://dgng. pstu. ru/conf2017/papers/125/ 04.09.2017 12 платформ разработки приложений дополненной реальности http://apptractor. ru/info/articles/12-platform-razrabotki-prilozheniy-dopolnennoy-realnosti. html 04.09.2017 Виртуальность и мир. Лучшие приложения дополненной реальности для iOS и Android http://hitech. vesti. ru/article/619061/ 04.09.2017 Делаем приложение с дополненной реальностью как PokemonGo http://www. fandroid. info/delaem-prilozhenie-s-dopolnennoj-realnostyu-kak-pokemongo/ 04.09.2017 Разработка Android-приложений с Augmented Reality http://www. /products/ebook/%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0-android-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9-%D1%81-augmented-reality/804d9ce0-6312-45db-8ecb-76342424b30e/preview/preview. html 09.09.2017 , Геометрия. 10-11 классы. Учебник. Базовый и профильный уровни. ФГОС. Москва, «Просвещение», 2017. https://developer. – Портал разработчиков AR-приложений посредством VuforiaПРИЛОЖЕНИЕ 1
Построение модели тетраэдра. Скрипт построения меша тетраэдра и сохранения в ассет меша
using UnityEngine;
using UnityEditor;
using System. Collections;
public class TetrahedronMesh : MonoBehaviour {
// Use this for initialization
void Start () {
Mesh mesh = Tetrahedron(1f);
AssetDatabase. CreateAsset(mesh, "Assets/mesh1.asset");
AssetDatabase. SaveAssets();
}
public static Mesh Triangle(Vector3 vertex0, Vector3 vertex1, Vector3 vertex2)
{
var mesh = new Mesh();
mesh. vertices = new[] { vertex0, vertex1, vertex2 };
mesh. triangles = new[] { 0, 1, 2 };
return mesh;
}
public static Mesh Tetrahedron(float radius)
{
var v0 = new Vector3(0, radius, 0);
var v1 = new Vector3(0, - radius * 0.333f, radius * 0.943f);
var v2 = new Vector3(radius * 0.816f, - radius * 0.333f, - radius * 0.471f);
var v3 = new Vector3(-radius * 0.816f, - radius * 0.333f, - radius * 0.471f);
var combine = new CombineInstance[4];
combine[0].mesh = Triangle(v0, v1, v2);
combine[1].mesh = Triangle(v1, v3, v2);
combine[2].mesh = Triangle(v0, v2, v3);
combine[3].mesh = Triangle(v0, v3, v1);
var mesh = new Mesh();
bineMeshes(combine, true, false);
return mesh;
}
}
ПРИЛОЖЕНИЕ 2
Разрезание фигуры. Скрипт визуализации объекта для установки параметров и построения и сохранения в ассет мешей на основе существующего скрипта MeshCut с возвращаемым значением типа Mesh[] при выполнении условия
using UnityEngine;
using UnityEditor;
using System. Collections;
public class ToolUser : MonoBehaviour {
public Material capMaterial;
// Use this for initialization
void Start () {
}
void Update(){
if(Input. GetMouseButtonDown(0)){
RaycastHit hit;
if(Physics. Raycast(transform. position, transform. forward, out hit)){
GameObject victim = hit. collider. gameObject;
GameObject[] pieces = BLINDED_AM_ME. MeshCut. Cut(victim, transform. position, transform. right, capMaterial);
if(!pieces[1].GetComponent<Rigidbody>())
pieces[1].AddComponent<Rigidbody>();
Mesh m1 = pieces[1].GetComponent<MeshFilter>().mesh;
Mesh m2 = pieces[0].GetComponent<MeshFilter>().mesh;
AssetDatabase. CreateAsset(m1, "Assets/mesh1.asset");
AssetDatabase. SaveAssets();
AssetDatabase. CreateAsset(m2, "Assets/mesh2.asset");
AssetDatabase. SaveAssets();
}
}
}
void OnDrawGizmosSelected() {
Gizmos. color = Color. green;
Gizmos. DrawLine(transform. position, transform. position + transform. forward * 5.0f);
Gizmos. DrawLine(transform. position + transform. up * 0.5f, transform. position + transform. up * 0.5f + transform. forward * 5.0f);
Gizmos. DrawLine(transform. position + - transform. up * 0.5f, transform. position + - transform. up * 0.5f + transform. forward * 5.0f);
Gizmos. DrawLine(transform. position, transform. position + transform. up * 0.5f);
Gizmos. DrawLine(transform. position, transform. position + - transform. up * 0.5f);
}
}
ПРИЛОЖЕНИЕ 3
Инструкция по использованию приложения
1. Найти изображение с надписью «Доступно в AR»;
2. Навести камеру на изображение на расстоянии 15 сантиметров в условиях достаточной освещенности;
3. Держать устройство на расстоянии от 15 до 30 сантиметров.
ПРИЛОЖЕНИЕ 4
Скриншоты работы приложения




ПРИЛОЖЕНИЕ 5
Политика конфидициальности (опубликована по адресу: http:///_fr/23/Privacy_policy. txt)
1. Термин “личная информация”, используемый в настоящем документе, определяется как любая информация, которая идентифицирует или может использоваться для идентификации, связи или поиска человека, к которому такая информация относится. Личная информация, которую мы собираем, будет являться предметом настоящей политики конфиденциальности, с вносимыми время от времени поправками.
2. Мы не запрашиваем Ваш адрес электронной почты, телефон или какую-нибудь информацию о Вас.
3. Мы не продаем контент.
4. Мы не требуем регистрации.
5. Безопасность Вашей персональной информации не будет нарушена.
6. Мы не просим информацию о местоположении через наше мобильное приложение.
7. Мы не отправляем на электронную почту рассылку новостей.
Требуемые разрешения
1. Доступ к камере используется для поиска таргетов.
Контакты: *****@***net
Приложение 6
Дорожная карта проекта
Направления работы Сроки | Сентябрь | Октябрь | Ноябрь | Декабрь | Январь | Февраль |
Введение в тематику проекта | ||||||
Изучение тем по стереометрии за 10 класс | ||||||
Изучение технологии дополненной реальности | ||||||
Написание скриптов | ||||||
Построение моделей | ||||||
Построение приложения | ||||||
Подготовка инструкции по использованию приложения | ||||||
Публикация таргетов | ||||||
Подготовка политики конфиденциальности | ||||||
Публикация приложения в Google Play | ||||||
Написание текста с обобщением результатов проекта | ||||||
Защита проекта на школьной конференции | ||||||
Защита проекта на межрайонной конференции | ||||||
Подготовка к городской конференции |
Приложение 7
Список ресурсов
Название | Назначение | Кем предоставлен | Условия предоставления |
Смартфон Samsung Galaxy S8+ с операционной системой Android | Считывание таргетов и построение моделей | Семья | Личная собственность |
Персональный компьютер HP под управлением Windows 10 | Работа со средой программирования, написание и запуск скриптов, построение приложения, публикация | Семья | Личная собственность |
Unity 5.3.2 | Разработка приложения | Unity | Бесплатная лицензия Unity Personal |
Vuforia | Визуализация геометрических тел в дополненной реальности | Qualcomm | Бесплатная лицензия для проектов в Unity |


