Pull to refresh
0
0
Send message

Компьютерное зрение в автотестах. Поиск элемента по фото

Level of difficultyMedium
Reading time6 min
Views2.9K

В автотестах для web-приложений, мы привыкли искать элементы по селектору. Это обязывает наделять html-элементы уникальными атрибутами, будь то класс или data-атрибут. Но когда проект становится достаточно большим, команда начинает задумываться над сокращением размера index.html, чтобы переходя по ссылке пользователь как можно быстрее получил полезную для него информацию. Тут-то и начинается гонка за каждый байт и каждую миллисекунду и необходимость любого «лишнего» символа в html разметке ставится под сомнение. В такие моменты data-атрибуты для автотестов это первые кандидаты на удаление из конечного html. Уже довольно давно я думал о том как же находить элементы на странице не привязываясь к DOM-дереву, результатом этих поисков является плагин, который я написал для Cypress. О нем, и о подходе, который в нем применяется, пойдет речь в данной статье.

Читать далее

Делаем умный кондиционер еще умнее

Level of difficultyEasy
Reading time16 min
Views16K

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

Читать далее

Практическое применение эффекта полного внутреннего отражения с потерями

Level of difficultyMedium
Reading time12 min
Views12K
Картинка Quality House Life Store, ZHIQIAO Glowing Party Store, Youtube-канал «Techmoan»

Задумывались ли вы о том, что вокруг нас, в технике широко применяется интересное физическое явление, на базе которого вы и сами сможете собрать множество интересных самоделок?

И именно об этом и будет наш рассказ…
Читать дальше →

Как научить компьютер различать цвета?

Level of difficultyMedium
Reading time11 min
Views1.7K

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

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

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

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

Изначально были попытки обучить на размеченных данных классические детекторы объектов, например, YOLO. Однако оказалось, что модель сильно усложняет задачу — начинает ориентироваться на расстановку игроков, и из-за этого точность становится невысокой. Поэтому возникла идея попробовать более классические и, соответственно, более простые алгоритмы.

Читать далее

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

Reading time9 min
Views12K

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

Как оцифровать сканворд по фотографии? Насколько сложно сделать систему общего доступа? Действительно ли интересно разгадывать бумажные сканворды на электронном устройстве? Ответы на эти и другие вопросы — под катом.
Читать дальше →

Локальное голосовое управление

Reading time4 min
Views6.5K

Я не художник...

Привет. В очередной раз задумался о локальном голосовом управлении устройствами умного дома, а тут как раз наткнулся на статью @CyberexTech "Моя безумная колонка" - https://habr.com/ru/companies/timeweb/articles/772080. Их там две части. Я тоже запускал на распбери готовые проекты типа voice2json, но все это оказалось не о том, речь распознавалась, но дальше никакого движения. А тут статья от Кибертеха (мне проще его так называть). Очень интересный проект показался, особенно после видео довольно быстрого распознавания воксом голоса, но дочитав до конца я понял, что это опять не то, нам-то нужно чтобы включалось/крутилось всякое железо, навешанное на умный дом, типа лампочек и кондиционеров, а в статье это оказалось как-то очень усложненно и неявно. В общем решил сам попробовать что-нить запилить. А самая хохма в том, что я не программист и писать код не умею, но у нас теперь есть программист от бога, которого называют ChatGPT. Пришлось обращаться к нему.

Читать далее и так далее

Создание плагина для распознавания текста на иврите: мой опыт и решения

Reading time3 min
Views1.9K

Всем привет! Хочу поделиться недавним проектом, в котором я разрабатывал плагин для распознавания текста на иврите. Задача была непростая, особенно учитывая, что клиент уже пытался использовать Tesseract OCR, но точность распознавания оставляла желать лучшего. В этой статье расскажу о том, с какими трудностями я столкнулся и как их преодолел.

Читать далее

Демистифицируем парсинг PDF: конвейерная обработка

Reading time23 min
Views6.8K

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

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

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

Читать далее

Управляем нашей лодкой прямо с веб-страницы на телефоне

Level of difficultyMedium
Reading time21 min
Views3.3K

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

Короче, идем под кат, я все расскажу.

Каждая капля на счету или как я счетчик умным делал

Level of difficultyMedium
Reading time9 min
Views18K


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

В предыдущей статье я уже описывал бюджетное решение для интеграции электросчетчика в системы умного дома, где всё было реализовано на базе своего DIY устройства. Но не только из электросчетчика состоит «домашний» учет энергоресурсов, поэтому в данной статье хочу поделиться личным опытом разработки аппаратного устройства для интеграции бытовых счетчиков воды в системы домашней автоматизации. Присоединяйтесь, будет интересно!
Читать дальше →

Улучшение зрения роботов: саккады

Reading time15 min
Views3.9K


Современный мир пока сложно назвать эпохой робототехники. Да, есть много роботизированных устройств, помогающих как в быту, так и на производстве, множество разработок и идей, но для полноценной реализации роботов в стиле Айзека Азимова предстоит преодолеть немало сложностей. Одной из таких является зрение. Современные камеры, хоть и обладают невероятными возможностями, все же несравнимы с человеческим глазом. Наши глаза совершают мелкие непроизвольные движения (саккады), дабы поддерживать четкое и стабильное изображение с течением времени. Ученые из Мэрилендского университета (Колледж-Парк, США) разработали камеры, имитирующие саккады, что разительным образом улучшает их способность отслеживать передвигаемые объекты. Из чего сделаны новые камеры, как именно они работают, и насколько они эффективны? Ответы на эти вопросы мы найдем в докладе ученых.
Читать дальше →

И снова клон десктопного клиента Telegram

Reading time5 min
Views13K

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

Читать далее

Как обновить ноутбук при помощи 3-d принтера

Level of difficultyEasy
Reading time7 min
Views22K

Здравствуйте меня зовут Дмитрий. Как известно модернизировать можно только десктопы. Ноутбуки-же в случае устаревания просто выбрасываются на помойку. Но сегодня я расскажу вам про свой опыт модернизации ноутбука. И мне для этого понадобился всего лишь 3-d принтер.

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

Так вот ситуация с ноутбуками ещё более ужасна. Если у вас устарел ноутбук, то нельзя поменять процессор с материнской платой, надо выкинуть старый ноутбук и купить новый. И это ужас, ведь например у меня остался старый ноутбук в котором работает матрица и клавиатура и SSD, и все это я получается должен выкинуть на свалку. Но благодаря тому что у нас есть 3-d принтер мы можем разорвать этот ужасный порочный круг. Итак давайте приступим.

Читать далее

Атрибутивное распознавание документов

Level of difficultyEasy
Reading time10 min
Views4.2K

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

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

Так как же сократить трудозатраты?

Как я автоматизировал свое утро с помощью Python

Level of difficultyEasy
Reading time8 min
Views49K

Приходилось ли вам по утрам смотреть в потолок в ужасе от горы предстоящей рутины? А я вот часто так делал. Пока однажды не сорвался. Я решил автоматизировать все свои утренние дела при помощи Python, и результат оказался поистине потрясающим.

Читать далее

Работа с YOLOV8. Детекция, сегментация, трекинг объектов, а также подготовка собственного датасета и обучение

Level of difficultyMedium
Reading time26 min
Views58K

Если вам кажется, что начать работу с нейросетями - это сложно, то этот материал для вас!

В статье подробно, с примерами кода, разберем основные функции базовой модели YOLOV8 - детекция, сегментация, трекинг объектов, а также создание собственного датасета и дообучение нейросети для работы с собственными объектами!

Читать далее

Встречайте MajorDom: умный дом будущего, который действительно умён

Reading time11 min
Views20K

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

Читать далее

А вы знаете как спит ваш Mac? или же рассказ о Apple Power Nap

Level of difficultyEasy
Reading time2 min
Views3K

В далеком 2012 году на презентации WWDC (первая презентация после смерти Стива Джобса) Apple представила легендарную iOS 6. На этой презентации также была представлена система OS X Mountain Lion (версия 10.8). Было представлено много новых функций и нововведений. Кому интересно, вот статья на Вики, но сегодня мы поговорим о функции Power Nap.

Что такое этот ваш Power Nap? И как же спит ваш Mac?

Читать далее

Читаем нажатия ИК-пульта под Linux

Level of difficultyEasy
Reading time3 min
Views3.5K

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

Нажатия будем принимать с помощью YS-IRTM, это дешевая плата с ИК-приёмником и передатчиком, использует микроконтроллер на базе 8051, в котором прошивка для декодирования сигналов с пультов. Интерфейс подключения: UART 5V. Есть подробное описание в этом репозитории на GitHub.

Умеет принимать NEC протокол, который используется на большинстве дешевых пультов. Но есть недостаток, не принимает коды повторов, если клавиша удерживается. Существуют и другие ИК-протоколы, например у Sony есть свой, поэтому пульты Sony не поддерживаются.

Читать далее

Information

Rating
Does not participate
Registered
Activity