Skip to content
Ivan edited this page Oct 11, 2017 · 4 revisions

Часто задаваемые вопросы

  1. Где все кнопки? Почему весь экран занимает какое-то текстовое поле с историей операций?

  2. Я нашел xml-файл с настройками прямо в папке с программой. Как его редактировать?

  3. Почему название файла с настройками такое длинное (readTobiiGlassesSettings.xml)?

  4. Что находится в файле с настройками?

  5. Зачем вообще этот xml-файл? Почему нельзя было сделать красивые кнопочки, куда вносить все настройки?

  6. Почему xml, а не json или просто плоский текст?

  7. Я заполнил файл с настройками, но когда я выбираю его через меню, программа просто зависает.

  8. Как вообще ей пользоваться?

  9. У нас закончился ключ на Tobii ProLab / Tobii Analyzer. Теперь нет возможности экспортировать новые записи в формат tsv. Нельзя ли считать данные айтрекинга прямо с карточки из очков?

  10. У меня 40 записей. Мне что, для каждой отдельно запускать эту программу и мышкой опять выбирать все меню?

  11. Мы на следующий год покупаем новые очки. Возможно ли будет использовать эту программу с новыми очками? С другим айтрекером?

  12. Мы решили добавить в анализ новый тип аннотаций. Как теперь быть с программой?

  13. У нас изменилась процедура эксперимента. Теперь мы пишем сразу трех испытуемых в очках и еще четверым аннотируем жесты.

  14. Что это за bat-файлы в папке с программой? Что делает режим batch?

  15. Я посчитал окуломоторный портрет, но здесь в таблице почему-то два раза встречается испытуемый C, а также отдельно 'Envir' и отдельно 'Other'.

  16. Я хочу просто посмотреть, сколько в данной записи общая длительность фиксаций у испытуемых N и R. Почему данные сохраняются в какой-то Excel'евский файл, нельзя ли просто вывести их на экран?

  17. У нас в каждой записи 3 этапа, но между ними бывает еще этап перехода, когда испытуемые ждут, пока придет слушатель L. Как быть с настройками?

  18. Я хочу сравнить данные испытуемых из нескольких записей. Как мне получить окуломоторный портрет сразу по всем моим проаннотированным записям?

  19. Мне сказали, что для выполнения этой программы нужен какой-то пакет 'pandas'. Где его взять?

  20. Здесь в программе есть определенные шаблоны для создания SQL-запросов. Но я хочу объединить два запроса в один большой запрос, чтобы искалось и там, и там. Как это сделать?

  21. Графики по умолчанию прорисовываются целиком для всего интервала записи и для всех испытуемых сразу, но я хочу вывести только график по испытуемому N, и 10-секундными отрезками, а не целиком. Как это сделать?

  22. Мне что, для каждой записи теперь создавать такой отдельный файл?

  23. Я хочу построить график так, чтобы на нем были данные по одному испытуемому из одной записи, и одному - из другой. Как это сделать?

  24. Тут столько файлов! Можно ли переделать программу так, чтобы она была в одном exe-файле для удобства?

  25. Как сделать ...? Программа не работает!

Где все кнопки? Почему весь экран занимает какое-то текстовое поле с историей операций?

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

Я нашел xml-файл с настройками прямо в папке с программой. Как его редактировать?

Конкретно этот файл редактировать не нужно. Он находится там как образец. Нужно скопировать его во все папки, где у вас находятся файлы с аннотациями. Сначала запустите программу, потом выберите пункт меню Settings>Select и в диалоговом окне укажите необходимый скопированный вами файл. Редактируется он из программы через меню Settings>Open in external editor.

Впоследствии также можно открывать его в любом Блокноте (если он правильно отображает отступы). Обратите внимание, что это вы только указываете программе сам файл. Непосредственно считывать его она начинает только после выбора меню Data>Parse settings and read data. Это гарантирует соответствие указанных в файле настроек и считанных данных.

Почему название файла с настройками такое длинное (readTobiiGlassesSettings.xml)?

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

Что находится в файле с настройками?

xml-файл состоит из двух блоков: список файлов и список этапов (интервалов). Первый визуально разбит еще на подблоки - N, C и R. Каждая строка в блоке содержит атрибуты: id, type, path, и опционально zeroTime.

id может быть любым. Кроме того, у вас не обязательно должны быть эти три буквы, и этих подблока не обязательно должно быть именно 3. Это просто указывает на то, как при подсчетах будет группироваться иерархия в сводных таблицах.

Атрибут type указывает на канал записи. Это те самые ocul, manu, ceph, voc, etc.

Атрибут path, самый главный - содержит относительный путь к файлу с данными, относительный от файла с настройками (т.е., если файл с настройками лежит в одной папке с файлами данных, то вам нужно лишь вписать имя файла с расширением).

Атрибут zeroTime может содержать либо таймкод, либо указание на атрибут type от другой строчки с файлом (но с таким же id). Сам этот атрибут указывает, с какого таймкода начинается самый первый этап записи. Т.е., например, если у вас в Excel'евской таблице таймкоды идут с 1:07.540, то есть смысл использовать данную величину в качестве атрибута zeroTime для соответствующего файла.

Второй блок, список интервалов, содержит список этапов записи. Каждая строка содержит атрибуты id и duration. В качестве id интервала можете использовать любые содержательные обозначения, например, 'tell', 'conv', 'retell'. Имейте ввиду, что эти названия не важны, могут быть любые, но рекомендуется использовать одну и ту же схему именования по всему корпусу данных, так как при совмещении результатов в общую сводную таблицу, все данные будут группироваться на основании совпадения названий этапов, указанных в этих настройках в каждом пакете с данными.

Обратите внимание, что строчки интервалов не содержат атрибута, где был бы указан таймкод начала записи. Также нет и таймкодов конца интервала. Есть только атрибут duration, где указывается длительность интервала. Причем вы можете указывать ее как формате мин:сек.мс, так и просто в секундах. Все эти формы записи валидны: 4:32.340, 960.122, 18:45, 1298, 01:19:59.000. В качестве разделителя между секундами и миллисекундами всегда используется точка. Таким образом, момент начала записи вы указываете для каждого файла в атрибуте zeroTime, либо опускаете его, если запись начинается с нуля. Список же интервалов для всего пакета данных общий и единственный, и требуется только указать длительности этапов.

Зачем вообще этот xml-файл? Почему нельзя было сделать красивые кнопочки, куда вносить все настройки?

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

Почему xml, а не json или просто плоский текст?

Визуально формат xml более удобочитаем и позволяет сохранять иерархическую структуру тегов для пользователя.

Я заполнил файл с настройками, но когда я выбираю его через меню, программа просто зависает.

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

Как вообще ей пользоваться?

Если у вас уже установлен Python, запустите файл ReadTobiiGlasses.py. Если он так не запускается, откройте обычным Блокнотом файл run.bat и впишите туда актуальный путь к файлу python.exe на вашем компьютере, сохраните, и дважды кликните на этот bat-файл. Далее, если вы уже создали xml-файл с настройками, выберите его через пункт меню Settings>Select. Затем выберите пункт Data>Parse settings and read data. Когда данные считаются (это будет понятно по сообщениям, выводимым в текстовом поле), можно приступать к работе с данными.

Если вам нужно конвертировать их в формат SQL для дальнейшей загрузки в базу на сайт, выберите Data>Export>All tables to SQL. Если нужно сформировать SQL-запрос, выберите соответствующие пункты из меню Search.

Если нужно посчитать окуломоторный портрет и прочую описательную статистику, выберите Statistics>Descriptive. Если нужно найти зависимости в сводной таблице, выберите Settings>Run batch and pivot tables, затем Statistics>Difference. Чтобы построить графики, выберите меню Visualization.

У нас закончился ключ на Tobii ProLab / Tobii Analyzer. Теперь нет возможности экспортировать новые записи в формат tsv. Нельзя ли считать данные айтрекинга прямо с карточки из очков?

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

У меня 40 записей. Мне что, для каждой отдельно запускать эту программу и мышкой опять выбирать все меню?

Нет. Для однотипного выполнения операций над всеми записями есть режим batch. Нужно создать список файлов с настройками по образцу из репозитория (batch.bat), которые вы хотели бы использовать для каждой записи, и запустить bat-файл на исполнение.

Мы на следующий год покупаем новые очки. Возможно ли будет использовать эту программу с новыми очками? С другим айтрекером?

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

Мы решили добавить в анализ новый тип аннотаций. Как теперь быть с программой?

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

У нас изменилась процедура эксперимента. Теперь мы пишем сразу трех испытуемых в очках и еще четверым аннотируем жесты.

Элементарно. Просто добавляете в файл настроек новые подблоки, и придумываете им обозначение атрибута 'id'. Т.е., если раньше у вас были испытуемые N, C, R, L, то теперь добавятся еще и другие. В получаемых таблицах автоматически появятся новые разделы, а на графиках станет больше подразделов.

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

Что это за bat-файлы в папке с программой? Что делает режим batch?

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

Я посчитал окуломоторный портрет, но здесь в таблице почему-то два раза встречается испытуемый C, а также отдельно 'Envir' и отдельно 'Other'.

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

Также обратите внимание, что программа настроена на определенный порядок столбцов в аннотациях (если это Excel), и на определенные названия столбцов (если это eaf). Если вы решите поменять аннотационную схему, придется менять и скрипты в программе, отвечающие за считывание данных.

Я хочу просто посмотреть, сколько в данной записи общая длительность фиксаций у испытуемых N и R. Почему данные сохраняются в какой-то Excel'евский файл, нельзя ли просто вывести их на экран?

Такая функция может быть реализована по запросу, но она вряд ли будет иметь какую-то исследовательскую ценность, поскольку данные представляют ценность в совокупности. Как вариант, можно настроить, чтобы полученный файл автоматически сразу открывался через Excel.

У нас в каждой записи 3 этапа, но между ними бывает еще этап перехода, когда испытуемые ждут, пока придет слушатель L. Как быть с настройками?

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

Я хочу сравнить данные испытуемых из нескольких записей. Как мне получить окуломоторный портрет сразу по всем моим проаннотированным записям?

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

Мне сказали, что для выполнения этой программы нужен какой-то пакет 'pandas'. Где его взять?

Этот пакет идет в составе установочного дистрибутива вместе с самой рабочей средой Python, и называется Anaconda. Причем установить нужно именно версию 3.x. Если же вы не хотите использовать данный дистрибутив, то существует возможность установить пакет pandas стандартным средством 'pip' (это может занять около часа), а также через whl-файл, скачанный из интернета.

Здесь в программе есть определенные шаблоны для создания SQL-запросов. Но я хочу объединить два запроса в один большой запрос, чтобы искалось и там, и там. Как это сделать?

Воспользуйтесь функцией комбинирования запросов при помощи формально-логических операторов И, ИЛИ, НЕ, через меню Search>Boolean.

Графики по умолчанию прорисовываются целиком для всего интервала записи и для всех испытуемых сразу, но я хочу вывести только график по испытуемому N, и 10-секундными отрезками, а не целиком. Как это сделать?

Вам нужно создать отдельный xml-файл настроек, из которого будут удалены строки, относящиеся к испытуемым C и R, и сделать более дробное разбиение на 10-секундные интервалы, обозначив их, например, буквами алфавита.

Мне что, для каждой записи теперь создавать такой отдельный файл?

Формально, да. Просто скопируйте блок списка интервалов в каждый файл настроек, а в блоке списка файлов нужно будет всего лишь поменять номер записи, например, 04 на 06. Такой подход позволит всегда знать, как были получены эти графики, поскольку файл настроек будет автоматически скопирован в папку с графиками.

Я хочу построить график так, чтобы на нем были данные по одному испытуемому из одной записи, и одному - из другой. Как это сделать?

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

Тут столько файлов! Можно ли переделать программу так, чтобы она была в одном exe-файле для удобства?

Нет. Пакет pandas, на который она опирается, сильно затрудняет эту возможность. К тому же, итоговый exe-файл будет занимать несколько сотен мегабайт. При этом скорость работы программы от этого никак не изменится.

Как сделать ...? Программа не работает!

Обо всех ошибках в работе пишите в группу. Желательно прилагать к сообщению файл настроек и файл с расширением log, который находится в папке с программой.

Clone this wiki locally