Как мы применили ИИ для диагностики туберкулёза

Как мы применили ИИ для диагностики туберкулёза

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

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

Содержание

Идея и челлендж проекта

К нам обратился стартап, который задумался о современной диагностике туберкулёза у африканских пациентов. Основной идеей стал анализ звука дыхания лёгких при помощи искусственного интеллекта.

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

Анатомия проекта

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

Часто ии-модуль переносят в облака, особенно если речь идет про AWS, ведь AWS может предоставить большие мощности, а различные сервисы могут улучшить результат распознавания, но в данном проекте это было лишним и позже мы расскажем, почему.

Как мы применили ИИ для диагностики туберкулёза

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

  • Регистрация пациента;
  • Подписание согласия на медицинское обследование;
  • Анкетирование/осмотр пациента;
  • Медицинское обследование - запись звука дыхания пациента;
  • Анализ записи звука дыхания пациента;
  • Синхронизация данных с облачным хранилищем;
  • Вывод результатов анализа.
Как мы применили ИИ для диагностики туберкулёза

Челендж #1: стетоскоп и его прошивка

Стетоскоп сообщается с планшетом или PC на ОС windows посредством прошивки. Когда клиент разрабатывал прошивку, у него были одни входные данные. Но когда разработка приложения непосредственно началась, условия поменялись.

Была необходима доработка прошивки.

Решение #1

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

Челендж #2: защита от воровства

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

Решение #2

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

Во-вторых, можно настроить в приложении режим поверх всех окон по умолчанию. Так его никто не сможет и никогда свернуть (кроме администратора, который обладает паролем). Поэтому мы разработали приложение таким образом, что оно всегда располагается поверх всех окон без возможности быть свёрнутым. Это было отдельным челенджем под ОС Windows.

Челендж #3: автономная работа и облака

Как мы уже говорили, ии-модуль часто переносят в облака, особенно если речь идет про AWS, ведь AWS может предоставить большие мощности, а различные сервисы могут улучшить результат распознавания.

Как мы применили ИИ для диагностики туберкулёза

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

Решение #3

Чтобы обеспечить автономную работу, ии модуль должен анализировать записи дыхания пациентов на устройстве. А с облачным хранилищем AWS S3 сообщаться только для хранения данных. Мы так и поступили.

Как мы применили ИИ для диагностики туберкулёза

Челендж #4: распознавание звука

Когда врач слушает пациента, он ищет в его дыхании определенные маркеры болезни:

  • везикулярное, ослабленное, усиленное дыхание;
  • отсутствие дыхательных шумов;
  • разнокалиберные влажные, сухие хрипы.

Решение #4

Все эти звуки, которые врач слушает ухом, имеют четкое визуальное представление на звуковой волне. Поэтому мы решали данную задачу через компьютерное зрение. Научить искусственный интеллект слушать можно через компьютерное зрение.

Как мы применили ИИ для диагностики туберкулёза

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

Результаты

На настоящий момент приложение передано в бета-тестирование клиенту. Десктопное приложение разработано на платформе .NET 6 и WPF c применением node.js, SQLite, PostgreSQL, Python, PyTorch. Более технические детали проекта можно прочесть в нашем разделе с проектами.

Спасибо за внимание! Оставайтесь на связи, впереди еще много интересных кейсов.

44
Начать дискуссию