Превратить экран Macbook в сенсорный с помощью машинного распознавания образов, зеркала, горячего клея — и потратить $1 Статьи редакции
Перевод материала из блога студента Массачусетского технологического института Аниша Аталье.
Мы превратили экран Macbook в сенсорный с помощью оборудования общей стоимостью $1 и машинного распознавания образов. Эксперимент под названием «Сикстинский проект» (в честь нашей фотографии-пародии на фреску «Создание Адама») разработан и проведён мной, Кевином, Гильермо и Логаном за 16 часов.
Механизм работы
Основной принцип работы устройства прост: если посмотреть на поверхность монитора под углом, можно увидеть отражение и по положению пальца понять, касается он экрана или нет. Если палец лежит на экране, то он как бы упирается в своё отражение.
Кевин ещё в средней школе заметил это и создал ShinyTouch. С помощью внешней веб-камеры он построил систему сенсорного ввода, не требующую практически никаких настроек.
Мы решили попробовать усовершенствовать эту систему без использования внешней камеры — установить маленькое зеркало перед встроенной в ноутбук камерой так, чтобы направить объектив на монитор под острым углом. Камера увидит пальцы, дотрагивающиеся до экрана, и мы сможем перевести видеозапись в касания с помощью машинного распознавания образов.
Оборудование
Настроить аппаратуру оказалось просто. Всё, что требовалось от нас, — установить зеркало перед камерой под определённым углом. Вот список использованных материалов:
- Маленькое зеркало.
- Жёсткий лист бумаги.
- Дверная петля.
- Горячий клей.
Мы попробовали несколько разных вариантов и остановились на устройстве, которое можно собрать за несколько минут при помощи ножа и специального пистолета для горячего клея.
Вот как выглядит готовое изделие:
Обнаружение касания
Прежде чем начать процесс обработки видео, необходимо обнаружить палец. Вот пример того, что видит веб-камера:
Алгоритм обнаружения пальца должен найти точку касания, чтобы обработать данные. Сейчас наш метод использует обычную технику машинного распознавания образов. Обработка данных включает в себя следующие шаги:
- Отфильтровать цвет кожи и провести бинаризацию изображения.
- Обнаружить контуры.
Найти два длинных контура — пальца и его отражения — и убедиться, что они пересекаются по горизонтали и что меньший контур находится над большим.
Установить точку касания в центре линии, по которой соединяются верхушка нижнего контура и низ верхнего контура.
Отличить касание от зависшего над монитором пальца по длине между двумя контурами.
Преобразование данных и настройка
Заключительный шаг обработки данных — преобразование координат точки касания с веб-камеры на координаты на мониторе. Они гомографически соответствуют друг другу. Мы вычисляем гомографическую матрицу с помощью настройки, во время которой пользователь должен дотронуться до определённых точек на мониторе.
Собрав все данные, которые сопоставляют координаты веб-камеры с координатами на мониторе, мы можем выполнить гомографическое преобразование с помощью метода RANSAC (Random Sample Consensus — метод оценки на основе случайных выборок). Оно даст нам матрицу проекции, которая преобразует координаты камеры в координаты на мониторе.
На видео выше можно увидеть процесс настройки, во время которого пользователь должен вести палец по точке, пока та перемещается по монитору. Также там отображается информация о процессе отладки, поступающая в видеоформате в режиме реального времени.
Точка касания по координатам камеры показана ярко-розовым цветом. После окончания настройки матрица проекции показывается красным, а программа переключается в режим, при котором расчётная точка касания обозначается синим.
Применение
Сейчас мы переводим касания и наведения в события мыши, делая существующие приложения сенсорными.
Если мы решим создавать собственные приложения, управляемые сенсорно, то сможем напрямую использовать данные касаний, включая информацию вроде высоты наведения пальца.
Для прототипа «Сикстинский проект» работает вполне неплохо. При наличии небольших усовершенствований, например веб-камеры с более высоким разрешением (разрешение нашей составляет 480 пикселей) и вогнутого монитора, который позволит камере видеть монитор полностью, «Сикстинский проект» может стать практичной и дешёвой сенсорной системой.
Исходный код
Код прототипа находится в открытом доступе и выпущен на основании лицензии Массачусетского технологического института.
Если взять листок бумаги,
Ручку, ножницы и клей
И немножечко отваги,
Можно сделать сто рублей
ok.ru
Блин я вот то же самое собирался написать просто даже прочитав один заголовок..
А черные пальцы распознает?
Опачки, а вот и первый судебный иск разработчику!
У них ладони белые. Нужно просто перевернутой вверх рукой водить
Когда ты - черный и сел покушать перед сенсорным макбуком
У нас было маленькое зеркало, жесткий лист бумаги, дверная петля, тюбик, наполовину наполненный клеем, целое море свободного времени и $1.
Продолжай, вы должны были подсесть на какую-то дрянь
А пол тюбика клея куда по вашему делось?
Apple должен ребят купить, я считаю.
Зачем если тут за 1$ )
Хотя некоторые стартапы со странными технологиями покупают по непонятным ценам,
и реального выхлопа толком из них нет. А потом успешно закрывают.
Ей богу, как будто себестоимость технологии когда-то мешала Apple продавать аксессуар за овердохуя. Будут спокойно продавать это зеркальце за $99 при себестоимости в $1, и еще и ПО по подписке будет.
Apple не хочет ставить touch screen на MacBook, чтобы не утолщать экран.
Тут идея совсем другая, можно попробовать развить, только зеркало переместить вниз, в район Touch Bar'а, чтобы не выступало.
В принципе сомнительно — зачем на ноутбуке может понадобиться тыкать в экран
Пока Apple так и обосновывает: https://www.imore.com/where-are-touch-screen-macs
У ноутбуков с тач-скрином есть пара use-кейсов — например, презентация с ноутбука коллеге, или использование ноутбука, как планшета (но здесь у Apple уже есть iPad).
Но никто не мешает поэкспериментировать, если основное эстетическое препятствие — дополнительная толщина экрана — будет убрано.
Единственный плюс тача вижу) лишь выделить объект скриншота)
У меня был hp трансформер, один из первых моделей, со стилусом в корпусе. Не разу не доставал) только показать что он умеет) с учётом того что он сильно грелся, на коленках в сложенном состоянии не "потАчишь" на нем)
Он работал, только со стилусом вроде, не помню, а пальцем экран 15" тыкать, такое себе. Ляпять только его.
По-любому аппле когда нить выпустят, когда китайцы начнут на каждом сенсор втыкать)
Пару лет назад, юзал, нетбук с ссд, с ай3, относительно понравилось тыкать, но единственное что я тыкал меню пуск, чтобы выключить))
Вмешаюсь: у меня ноут-слайдер Sony Duo с тачем. Единственный и последний из этой серии. Я на нем стилусом рисую в Ai. Очень удобно и быстро.
На Microsoft Surface Pro использую тач для скролла, нажимания кнопок и других моментов, когда вазякать мышкой по экрану слишком долго.
каннибализировать продажи iPad
Поправил
Любой банкомат без сенсорного экрана можно сделать таким. Круто, конечно.
Да я помню старые затупающие банкоматы и терминалы, как например, на курском вокзале. А с этой штукой должно всяко быстрее работать
что, простите??? Т.е. банкомат тупит, вы хотите туда довесить еще камеру, дополнительный софт для обработки всего и ждать что он начнет работать быстрее?
Не подскажите, какую программу мне поставить на свой 11-летний ноутбук, чтобы я на нем мог нормально поиграть в современные игры?
Там с тачскрином беда, а тут его нет, запустить простейший скрипт на питоне, для этого не нужны колоссальные вычислительные способности
Там не с тачскрином беда, а в том, что это всё крутится внутри браузера, который запущен на Атоме, и со связью на убогом GSM.
Один вопрос: нах*я?
не твоя вот ты и бесишься
Как это н*ахуя? Молодцы ребята
Ответ: потому что могут
Т.е. задумку не вызывает у вас уважения человеческой изобретательности?
У Них дверные петли по 65 рублей? Живут же люди.
Комментарий недоступен
Можно было продать Макбук, купить ноут с сенсорным экраном, и ещё и заработать.
Зашел смеха-ради на исходники — Latest commit cd68e49 on 28 Sep 2018. А вообще все трех-летней давности.
Если увеличить расстояние до зеркала, разве весь экран не влезет?
влезет, но оно и так на камере висит, а камера встроена в макбук, по этому расстояние не увеличить. Тут нужно использовать изогнутое зеркало, но у них же прототип за доллар, потом усовершенствуют)
Комментарий удален модератором
Комментарий удален модератором
Так зачем вообще в экран тыкать? Добавить пару дешевых камер, расположенных так, чтобы хорошо распознавать X и Y координаты пальца, обучить алгоритм регистрировать ховер на расстоянии Z см от экрана как нажатие. Z настраивает сам пользователь как ему удобно, до нескольких сантиметров. Зеркало выдвигается или откидывается, чтобы ноут закрывался нормально. При захлопывании экрана срабатывает защита и зеркало складывается. Будет положен конец десятилетнему холивару на тему залапанного экрана, да и в принципе чем меньше руку тянешь тем удобнее.
Пара дешёвых камер - это больше 1$
К тому же, это решение намного проще, чем геморрой с двумя камерами
Привет, Leap Motion. У них подобные сенсоры, но не к экрану. Это к вопросу «чем меньше тянешься, тем лучше».
https://youtu.be/_d6KuiuteIA
Браво!
Если бы у бабушки был хуй, то она была бы дедушкой.
есть матовые моники, есть плохое освещение в комнате...
лучше наверное развивать технологию раздвижной рамки на монитор которая будет определять точку пересечения для непрозрачного предмета