пятница, 19 августа 2011 г.

Emotiv EPOC : укрощение под Delphi 7

Уважаемые разработчики этого чудесного шлемофона EPOC
(почему-то мне сразу представляется негр афро-американец ;)
с заглавной страницы Emotiv.)

в примерах поставляемых в SDK обошли такую замечательную среду разработки
как Delphi.

Думая , что это с их стороны крайне не политкорректно, решил устранить эту несправедливость и выложить модуль оболочки библиотеки EDK.DLL для использования под Delphi с примером использования (простенький ЭЭГ логгер).

Взять это все с примером и библиотеками можно отсюда(ОБНОВЛЕНО).

Экран программы выглядит так:

Работать с программой очень просто:
Жмем последовательно Connect - Start - Включаем шлем - Stop - Disconnect.

А дальше ограничивает только фантазия и знания в области цифровой обработки
сигналов и нейрофизики мозга.

7 комментариев:

  1. Обновите, пожалуйста, ссылочку.

    ОтветитьУдалить
    Ответы
    1. О! Спасибо заметили. Еще кто-то пишет на Delphi :). Честно заархивировал все что было в папке думаю разберетесь. https://dl.dropbox.com/u/45037507/EmotivDelphi.zip

      Удалить
    2. Здравствующие, хотел бы спросить каким способом можно использовать мимику лица, с помощью Delphi. Если можно то показать пример. Заранее благодарен.

      Удалить
    3. Есть два варианта ... просто и сложно... Просто это брать вывод функций начинающихся с ES_Expressiv_ ... Заголовки можно взять из проекта который тут указан. Вообще говоря не люблю посылать народ в документацию. Но тут как говорится RTFM, сложностей никаких.

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

      Если же у Вас есть сложности то Я бы не рекомендовал использовать Эмотив как проект для изучения Delphi вообще советую не изучать Delphi это уже мертвый на мой взгляд язык а взяться за QT или даже Python+QT.

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

      Удалить
  2. Анонимный9 мая 2013 г., 18:15

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

    ОтветитьУдалить
    Ответы
    1. По моему там надо сначала обязательно обнулить гироскоп функцией EE_HeadsetGyroRezero.

      Пример к сожалению быстро откопать не могу. А садиться писать сейчас времени катастрофически нет.

      Удалить
    2. Анонимный11 июня 2013 г., 13:32

      Здравствуйте. Гироскоп получилось использовать вот таким образом

      var
      a,b : Integer;
      begin
      EE_HeadsetGetGyroDelta (0,a,b);
      label2.caption := inttostr(a);
      label3.caption := inttostr(b);
      end;

      Не получается вернуть значение улыбки, пишу вот такой код

      x:=ES_ExpressivGetSmileExtent(eState);
      q:= FloatToStr (x);
      memo2.Lines.Add (q);

      Всегда возвращается 0, может как нибудь массивом передавать нужно. Могу весь код скинуть.
      Зарание спасибо.

      Удалить