首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Emotiv Epoc数据采集

Emotiv Epoc数据采集
EN

Stack Overflow用户
提问于 2012-04-14 16:25:26
回答 2查看 2.9K关注 0票数 2

我试着从Emotiv支持小组和社区那里得到一些问题的答案,但是没有人回答,所以我想也许你们中的一些人正在使用Emotiv。

我很难弄清楚原始数据采集过程是如何工作的。我阅读了所有关于Emotiv耳机脑电原始数据采集的主题,但它们没有帮助。

以下是我的问题:

  • 是否有可能以某种方式获取每个频道的一个样本?

在我的应用程序中,有一个计时器函数,精确地每1ms调用一次。如果缓冲区每个通道包含一个样本,我想调用另一个函数。

  • 函数EE_DataUpdateHandle()是否在调用时转储检索到的所有示例?

我轮询了EE_DataGetNumberOfSample()函数,以便调用另一个函数,如果缓冲区每个通道包含1个样本,但是EE_DataGetNumberOfSample()函数永远不会返回1个示例。这是因为如果调用EE_DataUpdateHandle(),会转储所有其他示例吗?我认为如果调用EE_DataUpdatedHandle()函数,它会指向新的数据,对吗?->这是否意味着以前收集的所有数据都无法访问?当每个通道准备检索一个样本时,是否有一个函数只返回EDK_OK。因此,我可以轮询计时器函数中的每个ms,如果它返回EDK_OK,则调用EE_DataGet,然后每个通道返回1个示例。

  • 我看到您建议使用Sl eep()来在调用EE_DataUpdateHandle()之前填充缓冲区,您认为是否可以在我的计时器函数1/128秒中计数,以便每个通道检索一个样本?我真的不知道怎么做.在大约7.8毫秒后,每个通道应该有一个样本在缓冲区中,对吗?如果我每8ms调用一次EE_DataGet函数,而我的计时器函数只是每1ms调用一次,会发生什么呢?

好的,我希望你能提出一些解决我的问题的建议!

干杯,多明尼克

EN

回答 2

Stack Overflow用户

发布于 2012-06-14 21:00:52

OpenVibe是开源的,带有Emotiv驱动程序,您可以查看它。

票数 1
EN

Stack Overflow用户

发布于 2012-07-20 12:04:23

我认为,除非emotiv改变他们的编程模型,否则不可能一次从一个通道中获得一个样本。

当前的emotiv库似乎从耳机中获取数据并将其保存到数据缓冲区,而客户端应用程序只能使用EE_DataGet从缓冲区轮询数据。

可能emotiv库不会只用一个数据输入来填充缓冲区。如果不是这样,您可以尝试尽可能快地进行轮询(比数据采集更快),看看是否只能使用EE_DataGet获得一个样本(然后调用EE_DataUpdateHandle来清理新示例的缓冲区)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10155227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档