Стажировка по проекту
Компания: ООО «зеница»
определение глаукомы по изображению радужной оболочки
Суть 1 этапа проекта
Задача
Для чего
Вводные данные
Выходные данные
Идентификация пациента по радужной оболочке глаза (Iris ID)
Класс идентификации. Embedding извлекаются из снимков и сохраняются/читаются из файла iris.csv. Финальный этап реализована идентификация пациентов на оборудовании заказчика
Цветные изображения переднего сегмента глаз в формате png с разрешением 1920x1080. В качестве источника датасета задействованы 10 человек
Проект реализован для применения в системе цифровой биомикроскопии глаз, для автоматизации процесса идентификации, а также для идентификации в случаях, когда пациент не находится в сознании или психически нормальном состоянии (например, находится в алкогольном или наркотическом опьянении)
Участники
команды 1 этапа проекта
  • Терещенко Алексей
    Тимлид проекта
    Алексей - руководитель группы разработчиков, отвечал за полную разработку проекта
  • Нестеров николай
    Инженер-сметчик в строительной компании и главный инженер Завода ППСБ№1 в Севастополе
    • Разработка альтернативной системы выделения значимых признаков из радужной оболочки глаза;
    • Написание кода для упрощенного сегментирования картинки на Python;
    • Опробование различных типов сетей на массиве, выделенном из значимых признаков;
    • Доработка альтернативной системы под редкие случаи глазных болезней, при которых зрачок имеет оттенок, не являясь черным;
    • Испытание различных подходов обработки информации, выделенной из значимых признаков, для снижения нагрузки на оборудование;
    • Разработка варианта выделения значимых признаков радужной оболочки путем сшивания зон вокруг зрачка с удалением бликов от засветки;
    • Разработка варианта определения повторяющихся сегментов радужной оболочки на основе выделенных вокруг зрачка зон при помощи простых нейросетей
  • Закуцкий Андрей
    Веб-предприниматель (интернет-магазины, онлайн-курсы)/менеджер по сетям связи (работал в Skylink, Tele2, ЭР-Телеком)
    • Подготовка датасетов для корректного обучения и тестирования различных моделей;
    • Тестирование моделей простых сверточных сетей;
    • Тестирование гипотез аугментации данных средствами TF;
    • Создание, обучение и тестирование модели классификации на основе пред обученной сети ResNet 50v2 + Transfer learning
  • Шляпников Сергей
    Инженер строитель – технолог. Малоэтажное строительство домов и коттеджей
    • Анализ данных/поиск материалов;
    • Загрузка моделей и датасета Iris. Эксперименты с обученными моделями на платформе Терры АI;
    • Обучение модели, классификации, на датасете Iris;
    • Перебор активационных функций и оптимизаторов;
    • Создание журнал экспериментов
  • Кобызев Юрий
    Начальник отдела информационных систем ООО СТЭККОМ
    (специалист по биллинговым системам операторов связи)
    • Подготовка датасетов для идентификации по радужной оболочке глаза;
    • Выбор архитектуры и дообучение сети для получения эмбеддингов радужки;
    • Подготовка класса для инференса и идентификации человека на основании эмбеддинг изображения радужки обученной моделью;
    • Развертывание кода инференса на raspberry pi 4 aarch64 bullseye + Intel NCS 2
  • Смирнов Даниил
    Геодезист: занимается инженерно-геодезическими изысканими под строительство
    • Анализ данных/поиск материалов;
    • Разработка сети кластеризации на основе Resnet_50_v2 с применением triple loss;
    • Обучение модели, классификации;
    • Перебор активационных функций и оптимизаторов;
    • Создание журнал экспериментов
  • Носова Светлана
    Сотрудник банка по работе с Юридическими лицами
    • Подготовка базы данных;
    • Запуск Yolo 8 для классификации;
    • Тестирование всех моделей Yolo 8 и выбор максимально точной для данного проекта;
    • Запуск нейросети для классификации, предобученной на xception;
    • Работа по карте признаков из Yolo 5 классификация
  • Вусатая Наталия
    Писатель в жанре научной фантастики
    • Анализ сбора данных;
    • Применение сиамских нейронных сетей;
    • Сбор нейронные сети по классификации;
    • Моделирование архитектуры сетей
Суть 2 этапа проекта
Задача
Для чего
Вводные данные
Выходные данные
Идентификация пациента по радужной оболочке глаза (Iris ID)
Точность определения класса достигает 100%, используются метод подготовки данных с развёртыванием изображений круглой радужной оболочки из полярной в декартову систему координат
Сегментированные цветные изображения области глаза с радужной оболочкой в формате png с разрешением 768x576. В качестве источника датасета задействованы 64 человека. Для дообучения были получены изображения от ещё 25 пациентов с разрешением 396х366
Для получения дообучаемой модели нейронной сети, способной с высокой точностью определять личность пациента по цифровому сегментированному снимку его радужной оболочки
Участники
команды 2 этапа проекта
  • Рубцов Антон
    Тимлид проекта
    Антон - руководитель группы разработчиков, отвечал за полную разработку проекта
  • Красиков Виталий
    Доцент кафедры информатики в Российском экономическом университете им. Г.В. Плеханова
    • Анализ данных и подбор алгоритмов решения;
    • Преобразование изображений радужной оболочки от полярной системы координат к декартовой с.к. средствами Numpy, os, OpenCV, Math;
    • Сегментация и разметка радужки вручную;
    • Аугментация данных с использованием класса ImageDataGenerator;
    • Решение задачи классификации изображений с помощью модели CNN;
    • Дообучение модели на новых классах. Создание функции, которая позволяет добавить в модель новые классы, сохранив при этом веса, отвечающие за старые;
    • Визуализация результатов обучения. Matplotlib, Confusion Matrix
  • Шалунов Андрей
    Технический руководитель, Системный Архитектор. Работал по всему миру на проектах внедрения OSS, BSS в Telecom и IoT сфере
    • Анализ данных и подбор алгоритмов решения;
    • Преобразование изображений радужной оболочки от полярной системы координат к декартовой системе средствами Numpy, os, OpenCV, Math, PIL;
    • Аугментация данных средствами OpenCV, random, ImageDataGenerator;
    • Подбор архитектуры CNN для обучения модели нейронной сети;
    • Визуализация результатов обучения. Matplotlib, Confusion Matrix
  • Прохоренко Евгений
    Инженер слаботочных систем: работает на проекте определение стоимости объектов в Москве и Московской области
    • Анализ данных и подбор алгоритмов решения;
    • Преобразование изображений радужной оболочки от полярной системы координат к декартовой системе средствами Numpy, os, OpenCV, Math;
    • Аугментация данных. Использование os, Augmentor, PIL;
    • Подбор гиперпараметров в AutoKeras, CNN для решения задачи;
    • Визуализация результатов обучения. Matplotlib, Seaborn и Confusion Matrix
  • Бойков Сергей
    Разработчик ПО (С# .NET, ASP.NET Core, Angular, SQL, Python / Django, C++)
    • Изучение и корректировка готового кода Python;
    • Анализ данных и подбор алгоритмов решения;
    • Подготовка данных, использование os, shutil и OpenCV, PIL;
    • Применение ImageDataGenerator и Callback при обучении CNN;
    • Дообучение модели на новых классах с изменение нейронов последнего слоя модели;
    • Визуализация результатов обучения. Использование Matplotlib, Confusion Matrix
  • Рюнтю Сергей
    QA инженер в SberDevices
    • Загрузка и подготовка данных. Библиотеки os и OpenCV;
    • Применение ImageDataGenerator и Callbacks при обучении сети;
    • Подбор предобученных моделей VGG16, Resnet50 и самописной CNN для решения задачи;
    • Визуализация результатов обучения. Matplotlib, Seaborn и Confusion Matrix;
    • Разработка алгоритма для анализа фотографии, определяющий успешность идентификации на основе вероятности распределения классов моделью.
  • Ищенко Екатерина
    Риэлтор, индивидуальный предприниматель
    • Изучение и корректировка готового кода Python;
    • Анализ данных и подбор алгоритмов решения;
    • Подготовка данных, использование os, zipfile;
    • Применение ImageDataGenerator при обучении CNN;
    • Визуализация результатов обучения. Использование Matplotlib, Confusion Matrix
  • Жакыпакунова Айгул
    Бухгалтер
    • Изучение и корректировка готового кода Python;
    • Подготовка данных, использование os, zipfile;
    • Применение ImageDataGenerator и Callback при обучении CNN;
    • Визуализация результатов обучения. Использование Matplotlib, Confusion Matrix
  • Гайдаш Алексей
    Ведущий разработчик в RussOutdoor. Занимается разработкой front и back части приложения, которое упрощает выход рекламодателей, рекламных агентств на рынок наружной и транзитной рекламы
    • Анализ данных и подбор алгоритмов решения;
    • Подготовка данных библиотекой os и предобработка изображений библиотекой PIL;
    • Обучение нейронной сети CNN, с помощью tensorflow.keras.layers;
    • Визуализация результатов обучения. Использование Matplotlib, Seaborn и Confusion Matrix;
    • Дообучение модели на новых классах с изменение нейронов последнего слоя модели
  • Кулешов Алексей
    Геолог, инженер-изыскатель, строитель: участвовал в реализации строительства объектов ВСТО (ВостокОйл)
    • Изучение и корректировка готового кода Python;
    • Подготовка данных, использование os, zipfile;
    • Применение ImageDataGenerator при обучении CNN;
    • Визуализация результатов обучения. Использование Matplotlib, Confusion Matrix
  • Кузьминов Руслан
    Предприниматель
    • Анализ данных и подбор алгоритмов решения;
    • Подготовка данных. Numpy, os, OpenCV;
    • Аугментация данных средствами math, random, PIL;
    • Использование PyTorch, Keras и Callbacks для решения задачи;
    • Визуализация результатов обучения. Matplotlib
  • Морозов Артем
    Инженер-проектировщик
    • Анализ данных и подбор алгоритмов решения;
    • Загрузка и подготовка данных. Библиотеки os и PIL;
    • Применение ImageDataGenerator и Callback при обучении сети;
    • Использование модели VGG16 и cамописной CNN;
    • Разметка изображений в CVAT для YOLO v8 решения задачи
  • Ким Сергей
    Руководитель работ по экспресс-аналитике в здравоохранении, Казахстан, Астана
    • Изучение и корректировка готового кода Python;
    • Анализ данных и подбор алгоритмов решения;
    • Подготовка данных, использование os, zipfile;
    • Сегментация и разметка радужки вручную;
    • Применение ImageDataGenerator и Callback при обучении CNN;
    • Визуализация результатов обучения. Использование Matplotlib, Confusion Matrix
  • Антимонова Анастасия
    • Изучение и корректировка готового кода Python;
    • Подготовка данных, библиотеки os, PIL;
    • Аугментация данных, ImageDataGenerator;
    • Подбор архитектуры CNN для обучения модели нейронной сети;
    • Визуализация результатов обучения. Matplotlib, Confusion Matrix
  • Татаринов Алексей
    • Анализ данных и подбор алгоритмов решения;
    • Подготовка данных. Использование os, shutil и OpenCV, Augmentor, PIL;
    • Подбор гиперпараметров в AutoKeras, Resnet50, CNN для решения задачи;
    • Визуализация результатов обучения. Использование Matplotlib, Seaborn и Confusion Matrix
Демонстрация проекта 1 команды
Демонстрация проекта 2 команды
Благодарность университетУ