Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 1 hour 17 min ago

Machine learning на ESP32

Sun, 03/16/2025 - 17:10

Распознавание жестов — это технология, которая позволяет людям взаимодействовать с устройствами без физического нажатия кнопок или сенсорных экранов. Интерпретируя жесты человека, эта технология нашла свое применение в различных потребительских устройствах, включая смартфоны и игровые консоли. В основе распознавания жестов лежат два ключевых компонента: сенсор и программный алгоритм.

В этом примере используются измерения акселерометра MPU 6050 и машинное обучение (ML) для распознавания трех жестов рукой с помощью ESP32. Данные из сенсора распознаются на микроконтроллере и результат выводится в консоль в виде названия жеста и вероятности результата. Модель ML использует TensorFlow и Keras и обучается на выборке данных, представляющей три различных жеста: "circle" (окружность), "cross" (пересечение) и "pad" (поступательное движение).

Разработка проекта начнется с получения данных из акселерометра для построения набора жестов. Затем мы проектируем полносвязную нейронную сеть для распознавания жестов, и подключим модель в проекте ESP32.

В следующей части рассмотрим как настроить Bluetooth LE (BLE) на ESP32 и Android устройстве. Передадим квантированный набор ускорений сенсора по BLE. Настроим Модель ML для распознания жестов на Android.

Читать далее

Machine learning на ESP32

Sun, 03/16/2025 - 17:09

Распознавание жестов — это технология, которая позволяет людям взаимодействовать с устройствами без физического нажатия кнопок или сенсорных экранов. Интерпретируя жесты человека, эта технология нашла свое применение в различных потребительских устройствах, включая смартфоны и игровые консоли. В основе распознавания жестов лежат два ключевых компонента: сенсор и программный алгоритм.

В этом примере используются измерения акселерометра MPU 6050 и машинное обучение (ML) для распознавания трех жестов рукой с помощью ESP32. Данные из сенсора распознаются на микроконтроллере и результат выводится в консоль в виде названия жеста и вероятности результата. Модель ML использует TensorFlow и Keras и обучается на выборке данных, представляющей три различных жеста: "circle" (окружность), "cross" (пересечение) и "pad" (поступательное движение).

Разработка проекта начнется с получения данных из акселерометра для построения набора жестов. Затем мы проектируем полносвязную нейронную сеть для распознавания жестов, и подключим модель в проекте ESP32.

В следующей части рассмотрим как настроить Bluetooth LE (BLE) на ESP32 и Android устройстве. Передадим квантированный набор ускорений сенсора по BLE. Настроим Модель ML для распознания жестов на Android.

Читать далее

GRE (Generic Routing Encapsulation) CISCO

Sun, 03/16/2025 - 16:08

Здравствуйте, коллеги! Сегодня мы будем рассматривать протокол GRE (Generic Router Encapsulation) на устройствах Cisco, а также основы его работы.

На сегодняшний день этот протокол используется реже, так как существует более эффективные протоколы, такие как IPsec. Одной из причин этого является наличие дополнительного заголовка в GRE, который уменьшает полезные данные, а также может вызывать проблемы с размером пакетов, особенно при передаче через MTU. В отличие от GRE, IPsec использует более компактные и безопасные заголовки, что позволяет передавать больше полезных данных через интерфейсы.

Использование GRE не предоставляет нам значительных преимуществ с точки зрения безопасности и производительности, особенно когда речь идет об защищенных соединениях. Однако он находит свое применение в некоторых случаях, например, при туннелировании трафика между маршрутизаторами, где шифрование не является необходимым.

Encapsulate

Пишем свой FDW для PostgreSQL

Sun, 03/16/2025 - 15:58

Привет, Хабр!

В этой статье быстро разберём, как устроен PostgreSQL – от хранения данных в Heap и работы с FSM/VM до создания своего FDW с компрессией на базе zlib.

Читать далее

[Перевод] Прибор под управлением SwRI развернут на поверхности Луны

Sun, 03/16/2025 - 15:47

13.03.2025, пресс-релиз Юго-Западного исследовательского института (SwRI - Southwest Research Institute)

2 марта 2025 года, всего через несколько часов после приземления на поверхность Луны на борту посадочного модуля Blue Ghost 1 компании Firefly Aerospace был активирован лунный магнитотеллурический зонд (LMS) разработанный Юго-Западным исследовательским институтом. LMS развернул пять своих датчиков для изучения недр Луны путем измерения электрических и магнитных полей. Инструмент LMS является первым внеземным применением магнитотеллурического зондирования.

Читать далее

ИТ-тренды —> Почему отраслевые облачные платформы становятся более значимыми в cloud-индустрии

Sun, 03/16/2025 - 15:26

Привет, Хабр! Мы в beeline cloud следим за ситуацией на глобальном и отечественном рынке. Поэтому решили запустить цикл статей с пометкой «ИТ-тренды». Заглядывайте почитать, постараемся делать такие материалы каждый месяц.

В этом выпуске разберемся с отраслевыми облачными платформами — одним из ключевых направлений на cloud-рынке. По мнению Gartner, именно на них к 2027 году будет приходиться 50% облачных расходов. Вместе с тем AWS обозначил отраслевые облачные платформы своим приоритетом развития на ближайшие годы.

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

Читать далее

Колбэки в акторной модели

Sun, 03/16/2025 - 14:53

Как часто вам доводилось оказываться в ситуации, когда инкапсуляция в чужой библиотеке или фреймворке скрывает от вас то, что вам необходимо, а авторам — показалось деталями реализации? Мне — постоянно.

Иногда проблему можно решить пулл реквестом, иногда — хаком (спасибо Матцу за доверие к разработчикам, в руби скрыть вообще ничего нельзя, но и в менее дружественных к подкостыливанию языках — есть всякие рефлекшены, аспекты, указатели на сырую память, наконец). Наконец, можно форкнуть библиотеку, экспортировать всё, что нужно — и окунуться в ад поддержки форка. Особенно это досадно в иммутабельных языках: ну зачем что-то там от меня скрывать, если я все равно ничего испортить в вашем коде не смогу?

И как же это починить?

Taigram: как мы решали проблемы данных и пришли к бете

Sun, 03/16/2025 - 14:44

Продолжаем рассказывать о разработке нашего Open Source проекта Taigram.

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

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

Читать далее

Одноплатные компьютеры, которые вывезут почти все: пять новинок последнего времени

Sun, 03/16/2025 - 14:31

Одноплатные компьютеры уже давно не просто игрушка для энтузиастов. Это мощные системы, которые могут работать с AI, подверрживать одновременно несколько 4K-дисплеев, управлять роботами и даже выполнять серверные задачи. В 2025 году рынок пополнился новыми моделями, которые впечатляют возможностями и ценами. В этом обзоре — пять самых интересных новинок, которые подойдут как для разработчиков, так и для тех, кто ищет компактную, но мощную альтернативу традиционному ПК.
Читать дальше →

Законы масштабирования дистилляции

Sun, 03/16/2025 - 14:17

После того, как DeepSeek представил в open source свой метод дистилляции знаний для R1, исследователи из Apple и Оксфордского университета быстро предложили закон масштабирования дистилляции и уже 28 февраля завершили все эксперименты и загрузили 67-страничную статью на arXiv.

Apple исследовали законы масштабирования дистилляции и сделали интересные выводы:

1. Почему слишком мощный учитель может ухудшить результаты ученика?

2. Как дистилляция подчиняется законам масштабирования?

3. Какое уравнение оптимизирует процесс дистилляции?

4. Почему дистилляция эффективнее обучения с нуля, но только в определённых условиях?

Читать далее

[Перевод] Дело всегда в TCP_NODELAY

Sun, 03/16/2025 - 14:01

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

Но для начала давайте проясним, о чём вообще речь. Лучше всего нам в этом поможет документ RFC896, изданный Джоном Нейглом в 19841 году. Вот описание задачи:

Обработка малых пакетов сопряжена с одной специфичной проблемой. Когда для передачи односимвольных сообщений с клавиатуры используется TCP, обычно для отправки одного байта полезных данных задействуется пакет размером 41 байт (один байт данных и 40 байт заголовка). Такие издержки в 4 000%, конечно, раздражают, но в слабо нагруженных сетях ещё терпимы.
Если коротко, то Нейгл хотел сократить затраты на отправку TCP-заголовков, чтобы повысить пропускную способность сети — вплоть до 40х! Эти крохотные пакеты поступали из двух основных источников: интерактивных приложений вроде оболочек, где пользователь вводил по одному байту за раз, и плохо реализованных программ, которые передавали сообщения ядру через множество вызовов write(). Предложенное Нейглом исправление оказалось простым и продуманным. Читать дальше →

Феномен гача-игр. Как зародился самый популярный формат современных мобильных игр

Sun, 03/16/2025 - 13:05

Страшно представить, но всего 20 лет назад вся индустрия развлечений кардинально отличалась от того, что мы видим сейчас. Особенно это касается видеоигр. 

Раньше ведь как было — вне дома геймер использует либо верный SE K750i с предустановленной на ней Asphalt, Gangstar или Heroes Lore, либо познает радости портативного гейминга на PSP. А дома уже играет в «большие» проекты за компьютером или на игровой консоли.

Сейчас же грань между портативными и стационарными играми окончательно стёрлась. Относительно отчуждённо от этой границы стоял мобильный гейминг, но и он с приходом Genshin Impact на консоли пал жертвой геймерской глобализации, обозначив переход индустрии мобильных игр на стационарные платформы.

А ещё именно «геншин», разработанный в Китае, привнёс в сленг большинства СНГ-геймеров такой исконно японский термин, как «гача-игры».

Для многих слово «гача» стало синонимом словосочетания «казино для детей», однако этот термин куда обширнее и имеет крайне интересную историю. Которую я сейчас и поведаю.

Читать далее

Как поменять процессор на материнской плате в домашних условиях. Часть 2

Sun, 03/16/2025 - 13:00

Привет, Хабр! Это Антон Комаров, я пишу для команды спецпроектов МТС Диджитал. Недавно я рассказал, как заменить процессор в домашних условиях при помощи термовоздушной станции. Этот способ подходит в основном для маленьких и средних чипов. С крупными и составными так не выйдет, потому что феном не получится равномерно прогреть их и плату.

Если делать все по фэншую, нужна инфракрасная станция. Это специализированное оборудование, предназначенное для демонтажа и установки BGA-чипов (включая процессоры, видеочипы и чипсеты) на печатные платы. Используется в сервисных центрах и на заводах по ремонту и сборке электроники. Ну и в домашних условиях тоже — некоторые мастера покупают станции и домой (я в их числе). Об этих аппаратах сегодня и поговорим.

Читать далее

Байки о малом бизнесе

Sun, 03/16/2025 - 12:28

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

Байки рассказываю от первого лица.

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

Предприятия с числом работников до 100 человек относятся к категории малого бизнеса.

Читать далее

ИИ-агент для управления компьютером: разработка умного помощника на Python

Sun, 03/16/2025 - 12:16

Представьте, что вы говорите своему компьютеру "Открой презентацию по проекту и добавь новый слайд с графиком продаж", и компьютер выполняет эту задачу, используя клавиатуру и курсор, как если бы за ним сидел реальный человек. В этой статье я расскажу, как создать ИИ-агента, который может управлять компьютером с помощью голосовых команд, используя современные языковые модели и простые Python-модули. Статья несет в первую очередь познавательную цель, чтобы поделиться опытом разработки.

Читать далее

ИИ-агент для управления компьютером: разработка умного помощника на Python

Sun, 03/16/2025 - 12:15

Представьте, что вы говорите своему компьютеру "Открой презентацию по проекту и добавь новый слайд с графиком продаж", и компьютер выполняет эту задачу, используя клавиатуру и курсор, как если бы за ним сидел реальный человек. В этой статье я расскажу, как создать ИИ-агента, который может управлять компьютером с помощью голосовых команд, используя современные языковые модели и простые Python-модули. Статья несет в первую очередь познавательную цель, чтобы поделиться опытом разработки.

Читать далее

Мобильная разработка за неделю #579 (10 — 16 марта)

Sun, 03/16/2025 - 11:55
В новом дайджесте производительный SwiftUI и бесшовное взаимодействие Compose и View, сборка ядра Android и отслеживание угла горизонта, решение задач распознавания, прямые без препятствий, что происходит на рынке разработки, глажка травы и многое другое. Заходите!

Читать дальше →

[Перевод] Быстрая свёртка множеств (алгоритм)

Sun, 03/16/2025 - 11:24

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

Статья будет интересна тем, кто интересуется нетривиальными, но красивыми алгоритмами!

Читать далее

[Перевод] Расшифровка зашифрованных файлов программы-вымогателя Akira (Linux/ESXi 2024) с использованием набора GPU

Sun, 03/16/2025 - 11:16

Хакер делает из любви то, что другие не стали бы делать и за деньги.

Недавно я помог компании восстановить их данные после атаки программы-вымогателя Akira без выплаты выкупа. Я делюсь тем, как я это сделал, вместе с полным исходным кодом.

Код доступен здесь: https://github.com/yohanes/akira-bruteforce

Для ясности, несколько вариантов программ-вымогателей были названы Akira за эти годы, и несколько версий сейчас находятся в обращении. Вариант, с которым я столкнулся, активен с конца 2023 года по настоящее время (компания подверглась взлому в этом году).

Была более ранняя версия (до середины 2023 года), которая содержала ошибку, позволившую Avast создать дешифратор. Однако, как только это было опубликовано, злоумышленники обновили свое шифрование. Я ожидаю, что они снова изменят своё шифрование после того, как я опубликую эту информацию.

Читать далее

Лучше не скажешь

Sun, 03/16/2025 - 07:57

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

Например, бессмертное:
«Побеждает тот общественный строй, который обеспечивает высшую производительность труда»

Несколько таких ёмких высказываний я встретил и на страницах Хабра.

Читать далее

Who's online

There are currently 1 user and 1 guest online.