Архив

Архив раздела ‘Soft’

Доработка Lego вездехода на Raspberry

20 Апрель 2017 3 comments

В своей прошлой статье я описывал, как сделать Lego вездеход на Raspberry Pi с управлением через bluetooth. Отличием этого проекта от многих других в интернете являeтся то, что вездеход должен ещё передавать видео. Теперь он был немного доработан:

  • Улучшено сцепление с полом
  • Подсветка для ночного передвижения
  • Ультразвуковой дальномер
  • Появилось android приложение

Доработка Lego вездехода

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

Categories: Hard, Soft Tags: , , ,

Lego вездеход с видео и bluetooth на Raspberry

29 Январь 2017 3 comments

В этой статье хотелось бы поделиться описанием того, как построить Lego-вездеход с управлением по bluetooth и вещанием видео. Описана будет электроника, программная часть и некоторые конструктивные моменты. Сам же вездеход придётся собрать самостоятельно.

Lego вездеход с видео и bluetooth Читать далее…

Categories: Hard, Soft Tags: , , ,

Raspberry Pi: Как работать с Bluetooth на Java

Продолжая работать над своей задумкой, настало время получить доступ на Raspberry Pi к Bluetooth, используя Java.  Bluetooth API для Java описан в спецификации JSR-82. Поиски в Internet выдали, что сейчас широко распространена библиотека BlueCove, которая реализует JSR-82. Её настройке и будет посвящена эта статья.

Raspberry: Как работать с bluetooth на java

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

Categories: Hard, Soft Tags: , , ,

Создание панорамы с помощью OpenCV и Java

15 Декабрь 2016 Нет комментариев

OpenCV позволяет не только определять движение, но и создавать панорамы. Данной теме и будет посвящен текущий пример.

Создание панорамы с помощью OpenCV и Java Создание панорамы с помощью OpenCV и Java
Создание панорамы с помощью OpenCV и Java

Для примера будет использоваться библиотека версии 2.4.3. Это связанно с тем, что из-за лицензионных ограничений версия 3.1 не содержит некоторых алгоритмов (типа SURF) для детектирования ключевых точек.

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

Categories: Soft Tags: ,

Heroku.com: как получить реализацию Websockets на java (JSR-365 подход)

23 Октябрь 2016 Нет комментариев

Я уже описывал, как удалось запустить java веб-приложение с Websockets на Heroku. Этот подход основывается на запуске war файла со legacy кодом для tomcat 7. Для современных приложение такое решение не подходит. Хочется, чтоб код использовал JSR 365.

Heroku.com

 

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

Categories: Soft Tags: , , ,

Heroku.com: как получить реализацию Websockets на java (native подход)

22 Октябрь 2016 Нет комментариев

Для реализации одной идеи возникла потребность разместить в интернете где-нибудь приложение с поддержкой Websockets, которое будет доступно из любого места. Главное условие — бесплатно. Ранее я уже делал вещание с камеры на websocket и java. Этот пример с небольшими изменениями я планировал попробовать разместить в глобальной сети. В качестве целевой площадки выбор пал на Heroku.com.

Heroku.com: как получить Websocket на java

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

Categories: Soft Tags: , , , ,

Вещание звука через websocket, реализация на java

5 Сентябрь 2016 Нет комментариев

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

Вещание с звука через websocket, реализация на java

Сигнал с микрофона поступает прямо на сервер, где он считывается и отправляется через websocket клиенту. В качестве сервера для обработки запросов WebSocket будет использоваться Jetty, поэтому вещание звука хорошо дополняет вещание картинки. Будет достаточно доработать прошлый пример.

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

Categories: Soft Tags: , , ,

Как записать звук на Java в byte массив

28 Август 2016 Нет комментариев

Есть много задач, в которых может понадобиться передать звук в виде массива байтов через сеть. Java сильно отстала в этом вопросе и давно не развивала свой API для работы со звуком. Это вызывает трудности при решение простых на первый взгляд вопросов.

Sound recording to byte array

На сайте уже есть пример про запись звука с помощью Java. Пример простой и пишет звук только в файл.

AudioSystem.write(m_audioInputStream, m_targetType, m_outputFile);

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

Categories: Soft Tags: ,

Вещание с web-камеры через websocket, реализация на java

27 Август 2016 Нет комментариев

После эксперимента с получением картинки с помощью Java и OpenCV пришла идея организовать вещание видео на сайте своей локальной сети. Но как это проще сделать?

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

Последние версии Application и Web серверов для java приложений уже поддерживают спецификацию JSR356, которая определяет стандартный интерфейс для WebSocket. Поэтому в данном примере будут очень уместно этим воспользоваться на примере Jetty

 Архитектура примера будет следующей:

Вещание с web-камеры через websocket, реализация на java

Камера будет подключена к локальному серверу, который с помощью OpenCV будет забирать картинки и через WebSocket передавать в браузер.

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

Categories: Soft Tags: , , , ,

Как запустить FrameGrabber для OV7670

6 Июнь 2016 15 comments

В одной из своих статей я приводил пример, как работать с камерой OV760. Для облегчения понимая, клиентская программа была реализована на Java, который проще в использовании, чем C++. Но это вызвало трудности у новичков. Ниже будет описано, как правильно запускать программку FrameGrabber из примера.

frame-grabber-main

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

Categories: Hard, Soft Tags: ,

Детектирование звука на Java

22 Март 2016 3 comments

После небольших экспериментов с детектором движения на java пришла пора детектировать звук. Для этой задачи можно воспользоваться Java SDK, пакет «javax.sound.sampled». Работа будет основана на примере записи звука в javа. Для этого придётся разобраться, какая информация приходит в AudioInputStream.

Sound detector

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

Categories: Soft Tags: ,

Определение движения на java с помощью вебкамеры и OpenCV

12 Март 2016 2 comments

После попыток получить картинку с помощью Arduino, возник вопрос, а как сделать то же самое, но на обычном компьютере. Пришлось перебрать несколько вариантов и остановиться на библиотеке OpenCV, которая в отличие от java media framework, активно развивается.

OpenCV and Java

Библиотека оказалась полностью написана на c++, имеет реализации для разных платформ и предоставляет обертку для работы из Java через native интерфес.

Если у вас нет опыта работы с этом библеотекой, я бы советовал начать с добавления opencv в вашу IDE. Этот шаг приводиться не будет, т.к. он достаточно хорошо описан в документации. Далее можно попробовать получить картинку с камеры. После этого можно приступать к дальнейшему чтению статьи.

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

Categories: Soft Tags: , ,