Добрый день. Меня зовут Александр Тимохин. Учусь в НИУ ВШЭ, работаю физиком. В этой статье я расскажу, чем занимался на стажировке в Сбере в центре медицины лаборатории ИИ, в ходе которой была предпринята попытка разработки дешевой и портативной фундус-камеры для индивидуального применения.
Введение
Глазное дно - единственная часть организма, в которой нервная ткань человека (сетчатка), сосуды не прикрыты кожей и другими непрозрачными тканями и могут быть исследованы визуально. Врач может в реальном времени, глазами, увидеть и оценить состояние этих структур, наблюдать их функционирование.
Фотография глазного дна незаменима для клинического выявления и лечения глазных заболеваний. Традиционная фотография глазного дна оценивает качество среды, зрительного нерва, сосудистой сети сетчатки и сосудистой оболочки глаза и широко используется в клинической практике для диагностики и мониторинга заболеваний глаз. Обычно, получение изображений с высоким разрешением зависит от высококачественной фундус-камеры - специального устройства, используемого врачами для фотографирования сетчатки, зрительного нерва и сосудов. Как правило, это дорогая, стационарная настольная система, требующая опытного фотографа, который знаком как с системой визуализации, так и с анатомией сетчатки. В последнее время, с развитием технологий, ручные фундус-камеры набирают популярность, поскольку они экономичны, портативны и просты в обращении, а качество фотографий сетчатки улучшается. Однако даже на такие модели цены начинаются от 600 000 рублей. Целью данной работы является создание дешевой фундус-камеры. В данной статье я постарался описать оптические принципы и полезность недорогой, портативной, бесконтактной фундус-камеры, собранной из доступных средств для получения фотографий глазного дна. По задумке планировалось разработать устройство, которое пациент, не имеющий профильных навыков, может использовать самостоятельно для диагностики заболеваний глаз.
Методика
Главной задачей при создании бюджетной фундус-камеры было обеспечение возможности получить качественные изображения глазного дна при использовании доступных компонентов. При этом нужно было учесть сложность работы со зрачком.
Основная проблема создания фундус-камеры заключается в том, что сквозь небольшое отверстие человеческого зрачка нужно и осветить сетчатку, и сфотографировать ее. Для решения этой проблемы часто применяют мидриатические средства - глазные капли, которые на некоторое время расширяют зрачок пациента. Однако действие данного препарата продолжается несколько часов, в течение которых пациент теряет возможность четко видеть.
Мы нашли альтернативный подход: фотографируем глаз в темноте с помощью короткой вспышки, срабатывающей быстрее, чем зрачок успевает отреагировать.
Известно, что человеческий глаз не реагирует на инфракрасное излучение, поэтому его можно использовать для фокусировки камеры в темноте на нужную область глаза.
Подведем небольшой итог. Предположим, у нас есть некая система линз (объектив), камера и пара светодиодов в излучающих свет в видимой и инфракрасной частях спектра. Первым делом блокируем весь свет поступающий в глаз, ждем примерно 30 секунд пока зрачок расширится наблюдать за этим процессом можно через камеру освещая глаз ИК светом, далее нужно навестись на сетчатку глаза (используя все тот же ИК светодиод), после чего нужно одновременно сделать вспышку продолжительностью не более 250 миллисекунд (именно столько составляет среднее время срабатывания зрачкового рефлекса) и сфотографировать глаз. О технических решениях этого плана и пойдет речь в данной статье.
Описание экспериментальной установки
В первую очередь решили повторить оптическую схему из статьи «Design, simulation and experimental analysis of an anti-stray-light illumination system of fundus camera, November 2014»
На рисунке представлена схема первого прототипа камеры. Здесь луч от кольцевого источника проходит через систему освещения и край зрачка и достигает тканей глазного дна. А свет, отраженный глазным дном, собирается системой визуализации. Ниже (рисунок 3) приведены фотографии первого прототипа.
Предлагаемая фундус-камера состоит из системы освещения и системы визуализации. Система формирования изображения включает в себя окуляр, релейную линзу, линзу объектива и ПЗС-матрицу. Система освещения включает в себя кольцевой источник света, конденсационную линзу и окуляр. Источник света сопряжен с роговицей. Для повышения эффективности использования световой энергии, система освещения и система формирования изображения имеют общий окуляр и соединены светоделителем. Как показано на рисунке 2, луч от кольцевого источника сначала проходит по пути освящения и формирует реальное изображение на роговице, где темное отверстие изображения закрывает центр роговицы и освещается только край зрачка. Затем луч освещения проходит через внутриглазную среду и достигает тканей глазного дна. А свет, отраженный глазным дном, собирается по траектории визуализации.
Полученные изображения на данную камеру представлены на рисунке 4. Если постараться, то можно разглядеть очертание сосудов.
Предполагаю, что не удалось получить изображения из-за слишком засвеченной конструкции и неправильно подобранной линзы. В последствии понял что для фокусирования на сетчатки глаза фронтальная линза (окуляр) должно быть как можно с меньшим радиусом кривизны поверхности, чтобы избежать сильной аберрации и вообще иметь возможность сфокусировать свет на сетчатку.
Далее решили изменить подход, а именно полностью пересобрать оптическую схему. За основу решили взять схему портативной фундус-камеры компании oDocs Eye Care. Кадр с внутренним устройством их камеры представлен на рисунке 5.
В данном решении цифровая матрица камеры и осветительная часть располагаются рядом друг с другом вблизи оптической оси. Для проверки данной гипотезы была собрана простейшая установка (ее схема и фотография представлены на рисунке 6).
В данном случае источники света располагаются перед линзой и через зрачок освещают область глаза, свет отражается от сетчатки и направляется в пространство между светодиодами, за которыми расположена линза фокусирующая изображение на камеру. Сама камера располагается на расстоянии примерно 180 мм от зрачка. В такой конфигурации получили какое-то изображение сетчатки.
Исходя из данной конструкции и проведя несколько экспериментов мы пришли к выводу что лучше всего светодиоды располагать рядом с используемой камерой за системой линз. Трехмерная модель следующей оптической схемы представлена на рисунке 7.
Передняя линза играет ключевую роль в данной конструкции, она фокусирует через отверстие зрачка свет от светодиода на радужку. Вторая линза, располагающаяся в центре конструкции фокусирует изображение на камеру. За данными линзами располагаются два источника света: один работает в инфракрасном диапазоне, другой излучает белый свет. Человеческий зрачок расширяется в темноте поэтому для непрерывного освещения, наблюдения и фокусирования на сетчатку глаза используется ближний инфракрасный источник с длиной волны 800 нм.
Однако во всех доступных к покупке камерах установлен инфракрасный фильтр. Обычно он выглядит как небольшое красное стеклышко. Его ставят чтобы при съемке в дневном свете инфракрасное излучение не засвечивало изображение. Для нашего проекта требуется удалить этот фильтр.
Напомню, что изначально планировалось сделать устройство, которым может пользоваться один человек, однако в этом случае конструкция крепилась бы к одному глазу, а вторым нужно как то следить за настройкой изображений, однако если на один глаз попадает свет, то второй тоже реагирует на это и уменьшает размер зрачка, поэтому для использования данного устройства требуется еще один человек – оператор.
В данной конструкции фундус-камеры, после того как оператор сфокусировался на сетчатку он должен воспользоваться тумблером для переключения светодиодов. Однако на практике данное действие приводило к колебанию всей конструкции из-за чего сбивалась фокусировка. К тому же резкая вспышка засвечивала матрицу камеры, а за время автоэкспозиции зрачок успевал закрыться. Второй недостаток данной конструкции заключается в малой площади получаемого изображения, что впоследствии приводит к плохому качеству картинки.
В следующий конструкции применены ряд технических модификаций. Во-первых, перед камерой была добавлена еще одна линза. Ее функция заключается в увеличении получаемого изображения и в его фокусировке на камеру. В результате чего изображение получилось более четким и заняло больше места на матрице камеры. Во-вторых, в конструкцию камеры была добавлена аппаратная часть, а именно 2 белых светодиода и один инфракрасный были подключены к микроконтроллеру Arduino Uno, также к нему была подключена физическая кнопка. Было написано приложение на питоне которое считывало изображение с веб камеры, подключенной к компьютеру (это та самая камера, которая фотографирует сетчатку). Кроме того, данное приложение считывает информацию с COM-порта которому подключена плата. При нажатии на кнопку происходит выключение инфракрасного светодиода после чего делаются 2 короткие последовательные вспышки 2 светодиодами видимого света длиной 150 миллисекунд, в это время программа, написанная на языке Python делает фотографии с веб камеры. В результате чего получаем 2 снимка сетчатки глаза. Возможно, вы спросите: «Зачем нам нужно делать 2 снимка?». Дело в том что светодиоды дают блики на всех 3 линзах и на зрачке, чтобы получить изображение без бликов мы используем систему из 2 светодиодов для получения бликов в разных частях изображения, далее при помощи специально созданного программного обеспечения 2 изображения склеиваются в одно таким образом, чтобы исключить засвеченные участки. Трехмерная модель финальной конструкции фундус-камеры представлена на рисунке 8.
Печать корпуса камеры:
Тестирование и результаты
Одним из ключевых этапов разработки дешевой фундус-камеры было тестирование системы как в лабораторных условиях, так и на реальных пациентах. Испытания проводились в несколько этапов для проверки точности настройки оптики, качества изображений и работы программного обеспечения.
1. Испытания с искусственным глазом
Первая часть тестирования проводилась в лабораторных условиях с использованием искусственного глаза. Оптическая система настраивалась опытным методом. Линзы, при помощи оптической скамьи, располагались на одной оптической оси, и расстояние между оптическими компонентами (линзами, светодиодами и камерой) подбиралось вручную для достижения оптимального фокусного расстояния. Основной объектив включал линзу диаметром 40 мм с фокусным расстоянием 20 мм, характеристики последующих линз зависели от используемой камеры.
На этом этапе сначала проверялась работа системы с камерой iPhone 14 для получения базовых изображений. Это было сделано для того, чтобы убедиться в правильной настройке системы линз, так как камера телефона обладает гораздо лучшим качеством изображения по сравнению с бюджетной веб-камерой. После того как качество изображения на iPhone удовлетворяло требованиям, в систему устанавливалась веб-камера, и оптика подстраивалась под её особенности. Такой подход позволил значительно упростить процесс настройки линз для работы с дешевой камерой. Изображения полученные на iPhone14 и на веб-камеру представлены на рисунках 9 и 10 соответственно.
2. Испытания в реальных условиях
После лабораторных испытаний камера была протестирована на реальных пациентах. В этом эксперименте приняли участие два добровольца из лаборатории ИИ Сбера. Основной целью было убедиться, что устройство функционирует на живом глазу. Однако возникли определенные трудности с получением изображений из-за движения глаза и отсутствия расширения зрачка у пациентов. Несмотря на это, удалось получить снимки сетчатки с небольшой площадью, что подтвердило работоспособность системы (рис. 11).
Проблемы и их решение
Одной из главных сложностей было добиться точного совмещения оптической оси камеры и глаза пациента, так как естественные движения глаза затрудняли фокусировку. В будущем можно предусмотреть установку внутри корпуса камеры визуальных меток, чтобы пациент мог зафиксировать взгляд, тем самым улучшив качество получаемых снимков.
Ещё одной проблемой стал затвор камеры. Он срабатывал слишком рано — до включения светодиодов, что приводило к засвеченным снимкам. Для решения этого вопроса в программном обеспечении для Arduino и в Python-скрипте были внесены корректировки, позволяющие настроить задержку времени затвора и синхронизировать его с моментом вспышки.
Заключение
В ходе разработки бюджетной фундус-камеры была продемонстрирована возможность создания эффективного устройства для диагностики глазных заболеваний при использовании доступных компонентов. Эксперименты показали, что комбинация простых оптических элементов и программного обеспечения может обеспечить получение качественных изображений глазного дна. Однако при работе с живым глазом (без использования препаратов для расширения зрачка) возник ряд проблем, таких как сложность фокусировки и влияние зрачкового рефлекса, которые требуют дальнейшей доработки. Для улучшения функциональности камеры в будущем планируется усовершенствование оптической системы, улучшение фокусировки и внедрение автоматической синхронизации с затвором. Так же следует использовать более качественную камеру, в статьях обычно используют матрицу 27 Мп, а в данном проекте было всего 2 Мп. Такие шаги позволят сделать устройство более надежным, компактным и удобным для использования как в лабораторных условиях, так и в полевых.
Результирующие снимки, собранные фундус-камерой были продемонстрированы квалифицированным офтальмологам. Мы спросили их: «Можно ли поставить диагноз глазных заболеваний по этим фото?». Ниже представлены их отзывы:
Отзыв 1:
«Здравствуйте) с телефона лучше, поставить диагноз можно. Но камера фотографирует не всю сетчатку, условно центр, если проблема в центре - то да»
Отзыв 2:
«Диагноз можно поставить»
Отзыв 3:
«Даааа супер. Даже ваще не ожидала что может так хорошо получиться)))). Особенно на телефон. Искажения есть, но даже на крутых фундус-камерах бывают такие засветы которые выглядят как патология - типа друзы например.»
Отзыв 4:
«Здравствуйте! Да, я тоже полагаю что диагноз можно поставить.»
Результаты экспериментов подтверждают, что даже при ограниченных ресурсах возможно создать фундус-камеру, способную проводить диагностику глазных заболеваний. Процесс разработки оказался непростым и потребовал экспериментов с множеством решений и подходов. Несмотря на сложности, эта работа открыла новые возможности для дальнейших улучшений устройства, сделав его еще более доступным и эффективным. Такой опыт не только углубил понимание принципов работы офтальмологической оптики, но и вдохновил на новые идеи, которые помогут сделать диагностику более удобной и доступной для всех.
Комментарии (15)
nikolz
02.11.2024 01:21Так же следует использовать более качественную камеру, в статьях обычно используют матрицу 27 Мп, а в данном проекте было всего 2 Мп.
И почему же сразу не взяли более качественную камеру?
Например такую:
или такую:
Alexandr0_o Автор
02.11.2024 01:21У нас был очень ограниченный бюджет и время, и целью данной работы было показать что вообще возможно собрать такой прибор. Кроме того мне нужно было удалить ИК фильтр из объектива камеры, а ковыряться и ломать дорогую камеру не очень хотелось, к тому же дешевые вебки легко разбираются, что не скажешь о более дорогих моделях. Да и вебку легче подключить к компу и работать с ней.
nikolz
02.11.2024 01:21По-моему мнению, Ваша ошибка в том, что Вы не определили изначально требуемое разрешение оптической системы, а лепили из того, что было.
Ладно бы, Вы это делали по собственной инициативе как хобби. Но под флагом сбера:
чем занимался на стажировке в Сбере в центре медицины лаборатории ИИ
это слабая работа для сбера и их центра, просто "ползучий эмпиризм" какой-то.
Dynasaur
02.11.2024 01:21Человек в рамках стажировки сделал работающий прототип, определил направления доработки, проанализировал недостатки, получил обнадёживающие результаты. Его работу из интернета взяли и обозвали слабой. Мне просто интересно, кто-то в рамках НИОКР сразу всё делает идеально и на выходе получает серийное изделие с первой попытки? Особенно в рамках стажировки?
nikolz
02.11.2024 01:21Я написал ранее -это студент и к нему никаких претензий.
Но как у стажера у него был руководитель. Очевидно слабый и не объяснил стажеру как делается НИРОКР. Если бы сначала подумали и составили план разработки, то не потратили бы столько времени на "метод тыка"
----------------
Довод об ограниченном бюджете вообще смешной. 50$ это не деньги для сбера.
-----------------------
и еще
В статье показано, что если взять плохое оборудование, но дешево и бесплатный труд студента, то можно сделать поделку для студенческой выставки и только. Но не доказано, что можно сделать доступный по цене и с хорошими характеристиками прибор для медиков.
nikolz
02.11.2024 01:21Однако даже на такие модели цены начинаются от 600 000 рублей.
вот нашел дешевле:
PereslavlFoto
Какой получилась себестоимость этого прототипа?
Что должны сделать другие офтальмологи, чтобы получить от вас проектные документы и сделать себе такой же прибор?
randomsimplenumber
Купить 3Д принтер и научиться с ним работать, для начала. И паяльник.
Vadim_1984
А можно без капексов? Ведь уже кто-то купил его, и научился работать, и загрузил заказами, отточив фазы печати. Что за мода - призывать к увеличению бремени собственности. Паяльник в фикс-прайсе можно и за 300 рублей купить, и паять довольно легко. Кстати, в конце описания проекта обычно добавляют ссылки на stl, и прочий bom, схемы
Alexandr0_o Автор
Спасибо, за замечание, не знал что так принято)
PereslavlFoto
Без таких материалов статья окажется бесполезной. Ну да, студент в вузе научился и сделал. А всем остальным-то как это сделать?
randomsimplenumber
Студент в вузе сделал работоспособный макет. Нужно ли всем остальным повторять его ошибки (не та камера, етц)?
Alexandr0_o Автор
Себестоимость компонентов составляет около 5000 руб. (цены на маркетплейсах могут варьироваться). Если вас интересуют подробности или возможное сотрудничество, пишите на sashatimokhin123@bk.ru — у меня также есть несколько интересных проектов в области медицинской оптики.