Научная статья на тему 'РАЗРАБОТКА МОБИЛЬНОГО ПРИЛОЖЕНИЯ, ОКАЗЫВАЮЩЕГО ПОМОЩЬ ЛЮДЯМ БОЛЕЮЩИМ ДАЛЬТОНИЗМОМ'

РАЗРАБОТКА МОБИЛЬНОГО ПРИЛОЖЕНИЯ, ОКАЗЫВАЮЩЕГО ПОМОЩЬ ЛЮДЯМ БОЛЕЮЩИМ ДАЛЬТОНИЗМОМ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
359
68
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОБИЛЬНОЕ ПРИЛОЖЕНИЕ / ПРОГРАММИРОВАНИЕ / ДАЛЬТОНИЗМ / РАЗРАБОТКА / ЯЗЫК ПРОГРАММИРОВАНИЯ JAVA / ANDROID STUDIO

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Краснова Анна Сергеевна, Обухов Андрей Дмитриевич, Романова Анна Александровна, Сусанов Алексей Дмитриевич

В данной статье рассматривается разработка мобильного приложения на языке программирования Java, оказывающего помощь людям болеющим дальтонизмом. Описывается метод разработки мобильного приложения, который включает в себя сравнение аналогов, алгоритм написания ключевой функции приложения, принцип, демонстрация и объяснение работы приложения. Указывается область применения разработанного приложения. Главное преимущество приложения - это значительное количество режимов цветового восприятия окружающего мира, настраиваемые для каждого человека индивидуально и хорошо обученные нейронные сети способные в зависимости от ситуации определённым образом виртуально взаимодействовать с объектами реального мира, именно это позволит сделать данное приложение удобным. Особенность данного продукта заключается в отсутствии каких-либо других аналогов на рынке. Руководствуясь этим, можно утверждать, что данная разработка определенно облегчит жизнь миллионам людей с дальтонизмом. Мобильное приложение имеет множество режимов, которые могут быть индивидуально настроены для каждого пользователя. Приложение переводит те цвета, которые не видит пользователь, в другую часть цветового спектра, который пользователь видит - это позволит пользователю выделять нужный ему объект на фоне остальных. Перечисленные режимы выбираются нейронной сетью на основании оптимального и наиболее подходящего для данной ситуации варианта, также она может комбинировать их. Приложение содержит библиотеки настроек для каждой разновидности дальтонизма.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Краснова Анна Сергеевна, Обухов Андрей Дмитриевич, Романова Анна Александровна, Сусанов Алексей Дмитриевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MOBILE APPLICATION, PROGRAMMING, COLORBLINDNESS, DEVELOPMENT, JAVA PROGRAMMING LANGUAGE, ANDROID STUDIO

This article discusses the development of a mobile application in the Java programming language that helps people with color blindness. A method for developing a mobile application is described, which includes a comparison of analogues, an algorithm for writing the key function of the application, the principle, demonstration and explanation of the application. The scope of the developed application is indicated. The main advantage of the application is a significant number of modes of color perception of the surrounding world, individually configurable for each person and well-trained neural networks, which, depending on the situation, can virtually interact with objects in the real world in a certain way, this is what will make this application convenient. The peculiarity of this product is the absence of any other analogues on the market. Based on this, it can be argued that this development will definitely make life easier for millions of people with color blindness. The mobile application has many modes that can be individually configured for each user. The application translates those colors that the user does not see into another part of the color spectrum that the user sees - this will allow the user to highlight the object he needs against the background of the rest. The listed modes are selected by the neural network based on the optimal and most suitable option for the given situation, and it can also combine them. The application contains libraries of settings for each type of color blindness.

Текст научной работы на тему «РАЗРАБОТКА МОБИЛЬНОГО ПРИЛОЖЕНИЯ, ОКАЗЫВАЮЩЕГО ПОМОЩЬ ЛЮДЯМ БОЛЕЮЩИМ ДАЛЬТОНИЗМОМ»

Разработка мобильного приложения, оказывающего помощь людям болеющим дальтонизмом

А.С. Краснова, А.Д. Обухо:

Аннотация — В данной статье рассматривается разработка мобильного приложения на языке программирования Java, оказывающего помощь людям болеющим дальтонизмом. Описывается метод разработки мобильного приложения, который включает в себя сравнение аналогов, алгоритм написания ключевой функции приложения, принцип, демонстрация и объяснение работы приложения. Указывается область применения разработанного приложения. Главное преимущество приложения - это значительное количество режимов цветового восприятия окружающего мира, настраиваемые для каждого человека индивидуально и хорошо обученные нейронные сети способные в зависимости от ситуации определённым образом виртуально взаимодействовать с объектами реального мира, именно это позволит сделать данное приложение удобным. Особенность данного продукта заключается в отсутствии каких-либо других аналогов на рынке. Руководствуясь этим, можно утверждать, что данная разработка определенно облегчит жизнь миллионам людей с дальтонизмом. Мобильное приложение имеет множество режимов, которые могут быть индивидуально настроены для каждого пользователя. Приложение переводит те цвета, которые не видит пользователь, в другую часть цветового спектра, который пользователь видит - это позволит пользователю выделять нужный ему объект на фоне остальных. Перечисленные режимы выбираются нейронной сетью на основании оптимального и наиболее подходящего для данной ситуации варианта, также она может комбинировать их. Приложение содержит библиотеки настроек для каждой разновидности дальтонизма.

Ключевые слова — мобильное приложение, программирование, дальтонизм, разработка, язык программирования Java, Android Studio.

Статья получена 04 апреля 2022

Краснова Анна Сергеевна, Нижегородский государственный инженерно-экономический университет. (e-mail:

shochina96@mail.ru).

Обухов Андрей Дмитриевич Нижегородский государственный инженерно-экономический университет (e-mail:

adobukhov@gmail.com).

Романова Анна Александровна, Нижегородский государственный инженерно-экономический университет (e-mail: anya-romanova-07@yandex.ru).

А. А. Романова, А.Д. Сусанов

Сусанов Алексей Дмитриевич Нижегородский государственный инженерно-экономический университет (e-mail:

alexs4sanovru55@yandex.ru).

I. Введение

Дальтонизм или цветовая слепота - это патология зрения, при которой человек теряет способность полностью или частично различать цвета [1]. Данная проблема крайне актуальна на данный момент. Цветовая слепота или дефицит цветного зрения поражает примерно 1 из 12 мужчин (8%) и 1 из 200 женщин в мире. На Земле насчитывается около 300 миллионов дальтоников (около 4,5% всего населения), большинство из которых мужчины. Для человека с диагнозом дальтонизм существует ряд ограничений, которые в первую очередь связаны с управлением автомобильным и мототранспортным средствами [1,2]. Так как навигация на автомобильных дорогах преимущественно осуществляется посредством светофорных комплексов, соответственно, пациент, не различающий цвета, лишен возможности полноценно управлять транспортным средством. Так же накладывается ограничение на получение водительских прав, которое введено в России в 2014 году и действует по настоящее время.

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

железнодорожника. Под запретом оказывается ряд военных специальностей. У подавляющего большинства людей с плохим цветовым зрением состояние генетическое, именно оно является неизлечимым.

Вышеизложенное свидетельствует об актуальности рассматриваемой проблемы, которая имеет инженерно-техническое решение. В данной работе подробно рассмотрены вопросы разработки специального мобильного приложения,

направленного на решение данной проблемы.

Актуальность спроса на мобильные приложения обусловлена тем, что уже у практически половины населения Земли есть смартфоны, а вторая половина скорее всего обзаведется ими в ближайшее время -следовательно, целевая аудитория производителей мобильных приложений будет постоянно расти [3].

II. Описание метода решения задачи

ИССЛЕДОВАНИЯ

Мобильному приложению, разработка которого рассматривается в данном исследовании, было дано

название «Vision of color», что в переводе с английского языка означает «Видение цвета». У данного мобильного приложения есть аналог - это приложение «Color Blind Pal» [4] разработчиком, которого является компания Vincent Fiorentini.

Таблица 1 - Сравнение мобильных приложений «Vision of color» и «Color Blind Pal» [4], оказывающих помощь

людям болеющим дальтонизмом

Название мобильного приложения

Vision of color Color Blind Pal

Информирование пользователя о том, для чего предназначено приложение Имеется Отсутствует

Стабильность работы Приложение создано для новой версии Android, поэтому стабильно работает на новых устройствах, но не может работать на устройствах со старой версией Android Не может стабильно работать на новых устройствах с новыми версиями Android, происходит внезапное прекращение работы приложения, случаются ошибки, из-за которых функции начинают работать неправильно

Поддержка приложения Приложение поддерживается, развивается, происходят обновления Поддержка приложения прекращена, последнее обновление было 8 марта 2017 года

Удобство использования и лёгкость освоения Приложение имеет интуитивно понятный интерфейс, в котором легко разобраться даже не русскоязычному пользователю Приложение имеет сложный запутанный интерфейс, в котором тяжело разобраться.

Функциональность Функции приложения выполнены максимально качественно. Приложение выдаёт точный неоспоримый результат. Результат, выдаваемый приложением, практически не зависит от освещённости предмета. Имеется возможность быстрого перехода из режима цветового восприятия окружающего мира в приложение камеры, чтобы запечатлеть интересующий пользователя объект. Приложение выдаёт результат в реальном времени, причём результат наглядный, то есть пользователь может в реальном времени увидеть перекрашенный приложением объект в видимую для пользователя часть цветового спектра, благодаря чему пользователь может в реальном времени отличать объекты одних цветов от других. Приложение имеет меньше функций по сравнению с Color Blind Pal. Приложение имеет больше функций по сравнению с Vision of color. Приложение не позволяет получить точный результат, так как он зависит от освещённости предмета. Работа приложения построена следующим образом, с камеры считывается цвет одного пикселя изображения, затем название цвета, который имеет этот пиксель, выводится пользователю на экран. Минус такого способа заключается в том, что если предмет плохо освещён, то будет сложно узнать настоящий цвет данного предмета, так как его настоящий цвет будет затемняться чёрным. Также в приложении имеется функция по заливке предметов, имеющих красный цвет синим цветом, но данная заливка не прозрачная из-за чего невидно текстуры объекта видно лишь его очертание, то есть контур объекта и данный режим можно включить только для красного цвета, а для зелёного и синего нельзя. Также не менее важно то, что в приложении отсутствует функция, позволяющая пользователю сфотографировать предмет.

Уникальность приложения «Vision of color» заключается в получении точных и наглядных результатов в режиме реального времени, а также в простоте освоения, удобстве использования и возможности сфотографировать видимый

пользователем объект.

Для мобильного приложения, разработка которого рассматривается в данном исследовании, создание режимов цветового восприятия окружающего мира на примере режима цветового восприятия для зелёного цвета будет выглядеть следующим образом.

Таблица 2 - Код режима цветового восприятия окружающего мира для зелёного цвета с объяснением

Номер строки Код Объяснение кода

1. imageAnalysis.setAnalyzer(Cont extCompat.getMainExecutor(Main Activity4.this), Добавление класса анализатора, который содержит код операций выполняемых с получаемым с камеры изображением

2. new ImageAnalysis.Analyzer() { Путём ввода данной строки создаём новый анализатор изображений. Ввод данной строки создаёт строки 3 и 4

3. @Override Получаем объект типа «ImageProxy» откуда можем извлечь данные изображения

4. public void analyze(@NonNull ImageProxy image) {

5. Image img = image.getImage(); Получаем изображение

6. Bitmap bitmap = translator.translateYUV(img, MainActivity4.this); Выполняем преобразование исходного изображения в карту пикселей «Bitmap», то есть массив, содержащий в себе получаемые с изображения пиксели с которыми можно выполнять различные преобразования

7. int size = bitmap.getWidth() * bitmap.getHeight(); Задаём размер массива с пикселями

8. int[] pixels = new int[size]; Получаем пиксели изображения в массив указанного размера

9. bitmap.getPixels(pixels, 0, bitmap.getWidth(), 0, 0, Копируем массив с пикселями изображения в карту пикселей

10. bitmap.getWidth(), bitmap.getHeight());

11. for (int i = 0; i < size; i++) { Перебираем массив

12. int color = pixels[i]; Получаем цвет

13. int r = color >> 16 & 0xff; Получаем из изображения отдельно красный цвет

14. int g = color >> 8 & 0xff; Получаем из изображения отдельно зелёный цвет

15. int b = color & 0xff; Получаем из изображения отдельно синий цвет

16. int red = r; Присваиваем переменной «red» красный цвет

17. int green = g / 0x999999; Присваиваем переменной «green» зелёный цвет, перекрашенный в оттенок серого с помощью формулы «g / 0x999999», где «0x999999» оттенок серого. Посмотреть кодировки цветов в шестнадцатеричном коде можно на сайте [12]

18. int blue = b; Присваиваем переменной «blue» синий цвет

19. int black = 0xff000000; Присваиваем переменной «black» чёрный цвет «0xff000000»

20. pixels[i] = black | red << 16 | green << 8 | blue; Записываем результат в массив с индексом «i». Записываем в массив чёрный цвет «black» или «|» красный цвет «red << 16» или «|» перекрашенный в оттенок серого зелёный цвет «green << 8» или «|» синий цвет «blue» в конце строки ставим точку с запятой, которая обозначает завершение строки «;»

21. }

22. bitmap.setPixels(pixels, 0, bitmap.getWidth(), 0, 0, Записываем в карту пикселей преобразованные пиксели изображения

23. bitmap.getWidth(), bitmap.getHeight());

24. preview.setRotation(image.getI mageInfo().getRotationDegrees( )); Отправляем полученную карту пикселей в элемент «imageView» выводящий на экран приложения получаемое изображение. Для того чтобы

получаемое изображение не было перевёрнутым вводим параметр «setRotation(image.getImageInfo().getRotationDegrees() )» задающий поворот получаемого изображения

25. preview.setImageBitmap(bitmap) ; Выводим на экран приложения правильно повёрнутое изображение

26. image.close(); Завершаем работу с данным изображением и подаём на вход анализатора новое изображение

27. }

28. });

29. cameraProvider.bindToLifecycle (MainActivity4.this, cameraSelector, imageAnalysis); Запускаем на исполнение написанный сценарий работы анализатора

Iii. Прикладная интерпретация и иллюстрация

ПОЛУЧЕННЫХ РЕЗУЛЬТАТОВ ИССЛЕДОВАНИЯ

По результатам исследования было разработано мобильное приложение, способное оказать помощь людям болеющим дальтонизмом.

Алгоритм работы разработанного мобильного приложения будет выглядеть следующим образом.

После установки приложения на экране смартфона отобразится его название и логотип.

09:41 IS @ m

"■J JS _ О Sil ШМ> 100%

Vision of color

Vision of

Рис. 1 Название и логотип приложения

После выполнения входа в приложение отобразится главный экран приложения, приветствующий пользователя и объясняющий ему предназначение данного приложения, что показано на рисунке 2. Далее после нажатия на кнопку «НАЧАТЬ» выполняется переход на экран выбора режимов цветового восприятия окружающего мира.

ION OF COLOR

Рис. 2 Главный экран приложения

На экране выбора режимов отображается получаемый с камеры объект (рисунок 3(а)). Данная функция позволят пользователю увидеть объект, который будет сфотографирован по средством кнопки «Камера» в приложение камеры (рисунок 3(б)) или же рассмотреть этот объект в режимах цветового восприятия функцию реализуют кнопки «Я», «в» или «В». Под названиями режимов, то есть под названиями цветов, находятся цвета соответствующие названиям (Д - красный, G - зелёный, В - синий). Ниже названий с цветами им в соответствие поставлены оттенки серого, в которые будут перекрашиваться красный и зелёный цвета. Синему цвету поставлен в соответствие оттенок серого, который увидит только человек с дальтонизмом.

(№S5 © ® & О -.il П- 100%

Vision of color

h о

а б

Рис. 3 Отображение получаемого с камеры объекта

Для объяснения работы режимов было использовано приложение «Sim Daltonism», которое позволяет увидеть мир, так как его видят люди с дальтонизмом.

На рисунке 4 можно увидеть, как красный и зелёный цвета на экране ноутбука видит человек со здоровым зрением, то есть слева располагается красный, а справа зелёный цвет.

На рисунке 5 продемонстрировало то, как данные цвета видит человек с дальтонизмом, а именно с протанопией, то есть не видением красного цвета. То есть красный цвет, расположенный слева, человек с протанопией будет видеть, как зелёный. Таким образом, получается, что данный человек не сможет отличить красный от зелёного, так как оба этих цвета он видит, как зелёный.

Рис. 4 Видимость красного и зелёного цвета человека со здоровым зрением

Рис. 5 Видимость красного и зелёного цвета человека с протанопией

Возникает вопрос о том возможно ли отличить друг от друга эти два цвета. Именно эту задачу и решает разработанное в данном исследовании мобильное приложение «Vision of color», которое помогает людям болеющим дальтонизмом различать цвета, которые им кажутся одинаковыми. На рисунке 6 можно увидеть, как приложение перекрашивает распложённый слева красный в оттенок серого, благодаря чему человек болеющий дальтонизмом может отличить его от расположенного справа зелёного цвета.

12:38 <9 О fall H- 100%

Vision of color

Камера

Рис. 6 Перекрашивание красного в оттенок серого

Аналогичным образом работает режим цветового восприятия для зеленого цвета. Рисунок 7 - как видит данное изображение человек со здоровым зрением (слева зелёная коробка, справа красная). Рисунок 8 -как видит данное изображение человек болеющий дальтонизмом, а именно дейтеранопией, то есть не видением зелёного цвета (слева и справа красная коробка). Рисунок 9 - как приложение помогает отличить цвета друг от друга (слева серая (перекрашенная приложением зелёная) коробка, справа красная).

Рис. 7 Изображение человека со здоровым зрением

Рис. 8 Изображение человека болеющий дальтонизмом

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рис. 9 Отличия цвета друг от друга при помощи приложения

Режим цветового восприятия для синего цвета работает немного иначе. Приложение не перекрашивает синий цвет в оттенок серого, а делает синий цвет более ярким и насыщенным. Это работает так, потому что человек болеющий дальтонизмом, а именно тританопией видит синий цвет как оттенок серого, и чтобы оттенки серого который выдаёт приложение и видит человек болеющий дальтонизмом отличались приложение делает синий цвет более ярким и насыщенным благодаря чему получается более светлый оттенок серого, чем тот оттенок серого который в жизни видит человек болеющий дальтонизмом. Рисунок 10 - как видит данное изображение человек со здоровым зрением (слева синий кейс, справа серый кейс).

Рис. 10 Изображение человека со здоровым зрением

Рисунок 11 - как видит данное изображение человек болеющий дальтонизмом, а именно

120

тританопией (слева и справа серый кейс). Рисунок 12 - как человек болеющий дальтонизмом увидит выдаваемое приложением изображение и как он сможет отличить цвета друг от друга. Исходя из того, что слева кейс светло серого оттенка, можно сказать, что он является, синим, а расположенный справа кейс является серым.

i. - ■ ° - - _

Рис. 11 Изображение человека, болеющего дальтонизмом

Камера

I © <S> û

Рис. 12 Различие цветов для человека, болеющего дальтонизмом при помощи приложения

VII. Заключение

По результатам исследования было разработано мобильное приложение «Vision of color» на языке программирования Java, оказывающее помощь людям болеющим дальтонизмом. Данное приложение сможет найти применение в различных отраслях, таких как: на уроках в школе (университете) при выполнении заданий требующих работы с иллюстрационным материалом (карты, атласы); в работе графического дизайнера при разработке

графического дизайна сайтов (программ); в работе химика, при смешении различных веществ; при получении прав на управление транспортным средством; в работе электрика; в робототехнике при создании роботов из деталей и проводов различных цветов, имеющих свое смысловое значение на схемах и в других областях.

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

Библиография

[1] Дальтонизм - причины, симптомы, диагностика и лечение - Режим доступа: https://www.krasotaimedicina.ru/diseases/ ophthalmology/daltonism (дата обращения: 16.10.2021).

[2] Фаустова Ю. П. и др. ДАЛЬТОНИЗМ //Аллея науки. -2021. - Т. 1. - №. 5. - С. 165-167.

[3] Перспективы рынка мобильных приложений - Режим доступа: https://artjoker.ua/ru/blog/perspektivy-rynka-mobilnykh-prilozheniy (дата обращения 07.12.2021).

[4] Уникальное приложение позволяет дальтоникам увидеть красочный мир - Режим доступа: https://www.ridus.ru/news/306556 (дата обращения 15.12.2021).

[5] 105+ уроков по обучению Adobe Illustrator - Режим доступа: https://videoinfographica.com/illustrator-tutorials/ (дата обращения 17.12.2021).

[6] Ресурсы и макеты экрана приложения, ConstraintLayout в Android Studio - Режим доступа: https://www.fandroid.info/urok-3-resursy-i-makety-ekrana-prilozheniya-constraintlayout-v-android-studio/ (дата обращения 18.12.2021).

[7] Уроки Android Studio - Режим доступа: https://itproger.eom/course/java-android/7 (дата обращения 10.01.2022).

Development of a mobile application that helps people with color blindness

A. Krasnova, A. Obukhov, A. Romanova, A. Susanov

Abstract - This article discusses the development of a mobile application in the Java programming language that helps people with color blindness. A method for developing a mobile application is described, which includes a comparison of analogues, an algorithm for writing the key function of the application, the principle, demonstration and explanation of the application. The scope of the developed application is indicated.

The main advantage of the application is a significant number of modes of color perception of the surrounding world, individually configurable for each person and well-trained neural networks, which, depending on the situation, can virtually interact with objects in the real world in a certain way, this is what will make this application convenient. The peculiarity of this product is the absence of any other analogues on the market. Based on this, it can be argued that this development will definitely make life easier for millions of people with color blindness. The mobile application has many modes that can be individually configured for each user. The application translates those colors that the user does not see into another part of the color spectrum that the user sees - this will allow the user to highlight the object he needs against the background of the rest. The listed modes are selected by the neural network based on the optimal and most suitable option for the given situation, and it can also combine them. The application contains libraries of settings for each type of color blindness.

Keywords - mobile application, programming, colorblindness, development, Java programming language, Android Studio.

REFERENCES

[1] Dal'tonizm - prichiny, simptomy, diagnostika i lecheniye -Rezhim dostupa: https://www.krasotaimedicina.ru/diseases/ ophthalmology/daltonism (data obrashcheniya: 16.10.2022).

[2] Faustova YU. P. i dr. DAL'TONIZM //Alleya nauki. - 2021. - T. 1. - №. 5. - S. 165-167.

[3] Perspektivy rynka mobil'nykh prilozheniy - Rezhim dostupa: https://artjoker.ua/ru/blog/perspektivy-rynka-mobilnykh-prilozheniy (data obrashcheniya 07.03.2022).

[4] Unikal'noye prilozheniye pozvolyayet dal'tonikam uvidet' krasochnyy mir - Rezhim dostupa: https://www.ridus.ru/news/306556 (data obrashcheniya 07.03.2022).

[5] 105+ urokov po obucheniyu Adobe Illustrator - Rezhim dostupa: https://videoinfographica.com/illustrator-tutorials/ (data obrashcheniya 07.03.2022).

[6] Resursy i makety ekrana prilozheniya, ConstraintLayout v Android Studio - Rezhim dostupa: https://www.fandroid.info/urok-3-resursy-i-makety-ekrana-prilozheniya-constraintlayout-v-android-studio/ (data obrashcheniya 07.03.2022).

[7] Uroki Android Studio - Rezhim dostupa: https://itproger.com/course/java-androidZ7 (data obrashcheniya 07.03.2022).

i Надоели баннеры? Вы всегда можете отключить рекламу.