CN111913582B - P300脑机接口Chekerboard刺激序列生成方法 - Google Patents

P300脑机接口Chekerboard刺激序列生成方法 Download PDF

Info

Publication number
CN111913582B
CN111913582B CN202010829056.3A CN202010829056A CN111913582B CN 111913582 B CN111913582 B CN 111913582B CN 202010829056 A CN202010829056 A CN 202010829056A CN 111913582 B CN111913582 B CN 111913582B
Authority
CN
China
Prior art keywords
stack
row
matrix
avail
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010829056.3A
Other languages
English (en)
Other versions
CN111913582A (zh
Inventor
黄志华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuzhou University
Original Assignee
Fuzhou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuzhou University filed Critical Fuzhou University
Priority to CN202010829056.3A priority Critical patent/CN111913582B/zh
Publication of CN111913582A publication Critical patent/CN111913582A/zh
Application granted granted Critical
Publication of CN111913582B publication Critical patent/CN111913582B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/015Input arrangements based on nervous system activity detection, e.g. brain waves [EEG] detection, electromyograms [EMG] detection, electrodermal response detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Neurosurgery (AREA)
  • Neurology (AREA)
  • Dermatology (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

本发明涉及一种P300脑机接口Chekerboard刺激序列生成方法。为了避免P300脑机接口中相邻行或相邻列刺激的不利影响,Chekerboard刺激方式生成一个内部字符矩阵,内部字符矩阵包含的字符集与展现矩阵相同,但字符在矩阵上的位置不同,在展现矩阵闪烁时被闪烁的字符取自内部字符矩阵的某一行或列。为了保证闪烁刺激的效果,内部字符矩阵的一行或一列字符在展现矩阵的位置应尽可能不同行同列。但是,一般的方法生成的内部字符矩阵效果不好。本发明把内部字符矩阵生成转化为了一个优化问题,设计了一个启发式算法来求解,算法得到的解即为内部字符矩阵。本发明的方法能够生成一个效果较好的内部字符矩阵。

Description

P300脑机接口Chekerboard刺激序列生成方法
技术领域
本发明涉及一种P300脑机接口Chekerboard刺激序列生成方法。
背景技术
为了避免P300脑机接口中相邻行或相邻列刺激的不利影响,Chekerboard刺激范式生成一个内部字符矩阵,内部字符矩阵包含的字符集与展现矩阵相同,但字符在矩阵上的位置不同,在展现矩阵闪烁时被闪烁的字符取自内部字符矩阵的某一行或列。为了保证闪烁刺激的效果,内部字符矩阵的一行或一列字符在展现矩阵的位置应尽可能不同行同列。但是,一般的方法生成的内部字符矩阵效果不好。
发明内容
本发明的目的在于提供一种P300脑机接口Chekerboard刺激序列生成方法,该方法将内部字符矩阵生成转化为了一个优化问题,设计了一个启发式算法来求解,算法得到的解即为内部字符矩阵,本发明的方法能够生成一个效果较好的内部字符矩阵。
为实现上述目的,本发明的技术方案是:一种P300脑机接口Chekerboard刺激序列生成方法,把P300脑机接口Chekerboard刺激范式生成内部字符矩阵的问题转化为一个优化问题,设计一个启发式算法来求解,从而得到内部字符矩阵;
算法定义的结构数组如下:
Struct element
{
int i;
int j;
Bool avail[6][6];
}
element stack[36];
算法描述如下:
步1:m=0,setAvail(stack, m), setIJ(stack, m);
步2:若m==35,getResult(stack),结束;
步3:m=m+1;
步4:setAvail(stack, m);
步5:若setIJ(stack, m),转步2;
步6;m=m-1;
步7:若m<0,本次执行未找到解,重新启动本算法;
步8:updateAvail(stack, m);
步9:若setIJ(stack, m),转步3;否则,转步6;
算法输出的stack[36]对应内部字符矩阵从左到右从上到下的36个字符,其中的i和j代表它在展现矩阵中相应位置。
在本发明一实施例中,所述算法中的setAvail(stack, m)包含以下步骤:
步2-1:rowC=[],colC=[],stack[m].avail=true;row=m/6;col=m%6;
步2-2:若col>0,rowC=rowC∪stack[m-col].i,colC=colC∪stack[m-col].j,转下一步;否则,转步2-4;
步2-3:col=col-1,转步2-2;
步2-4:若row>0,rowC=rowC∪stack[m-row*6].i,colC=colC∪stack[m-row*6].j,转下一步;否则,转步2-6;
步2-5:row=row-1, 转步2-4;
步2-6:stack[m].avail[rowC][]=false,stack[m].avail[][colC]=false;
步2-7:k=0;
步2-8:若k<m,则stack[m].avail[stack[k].i][ stack[k].j]=false,转下一步;否则转步2-10;
步2-9:k=k+1,转步2-8;
步2-10:返回,结束。
在本发明一实施例中,所述算法中的setIJ(stack, m)包含以下步骤:
步3-1:若stack[m].avail中所有元素全为false,返回false,结束;
步3-2:随机选取一个值为true的avail元素,用它的行号赋值给stack[m].i,列号赋值给stack[m].j,返回true,结束。
在本发明一实施例中,所述算法中的updateAvail(stack, m)包含以下步骤:
步4-1:stack[m].avail[stack[m].i][ stack[m].j]=false;
步4-2:返回。
在本发明一实施例中,所述算法中的getResult(stack)包含以下操作:从左到右从上到下把stack的每一项输出到6×6的内部字符矩阵中,stack每一项的i和j代表这个字符在展现矩阵的行和列位置。
相较于现有技术,本发明具有以下有益效果:本发明方法将内部字符矩阵生成转化为了一个优化问题,设计了一个启发式算法来求解,算法得到的解即为内部字符矩阵,本发明的方法能够生成一个效果较好的内部字符矩阵。
附图说明
图1为Chekerboard刺激范式一组字符被闪烁的情况。
图2为常规P300刺激范式一行字符被闪烁的情况。
图3为常规P300刺激范式一列字符被闪烁的情况。
具体实施方式
下面结合附图,对本发明的技术方案进行具体说明。
本发明实例提供了一种P300脑机接口Chekerboard刺激序列生成方法,把P300脑机接口Chekerboard刺激范式生成内部字符矩阵的问题转化为一个优化问题,设计一个启发式算法来求解,从而得到内部字符矩阵;
算法定义的结构数组如下:
Struct element
{
int i;
int j;
Bool avail[6][6];
}
element stack[36];
算法描述如下:
步1:m=0,setAvail(stack, m), setIJ(stack, m);
步2:若m==35,getResult(stack),结束;
步3:m=m+1;
步4:setAvail(stack, m);
步5:若setIJ(stack, m),转步2;
步6;m=m-1;
步7:若m<0,本次执行未找到解,重新启动本算法;
步8:updateAvail(stack, m);
步9:若setIJ(stack, m),转步3;否则,转步6;
算法输出的stack[36]对应内部字符矩阵从左到右从上到下的36个字符,其中的i和j代表它在展现矩阵中相应位置。
本实例中,算法中的setAvail(stack, m)具体包含以下步骤:
步2-1:rowC=[],colC=[],stack[m].avail=true;row=m/6;col=m%6;
步2-2:若col>0,rowC=rowC∪stack[m-col].i,colC=colC∪stack[m-col].j,转下一步;否则,转步2-4;
步2-3:col=col-1,转步2-2;
步2-4:若row>0,rowC=rowC∪stack[m-row*6].i,colC=colC∪stack[m-row*6].j,转下一步;否则,转步2-6;
步2-5:row=row-1, 转步2-4;
步2-6:stack[m].avail[rowC][]=false,stack[m].avail[][colC]=false;
步2-7:k=0;
步2-8:若k<m,则stack[m].avail[stack[k].i][ stack[k].j]=false,转下一步;否则转步2-10;
步2-9:k=k+1,转步2-8;
步2-10:返回,结束。
本实例中,算法中的setIJ(stack, m)具体包含以下步骤:
步3-1:若stack[m].avail中所有元素全为false,返回false,结束;
步3-2:随机选取一个值为true的avail元素,用它的行号赋值给stack[m].i,列号赋值给stack[m].j,返回true,结束。
本实例中,算法中的updateAvail(stack, m)具体包含以下步骤:
步4-1:stack[m].avail[stack[m].i][ stack[m].j]=false;
步4-2:返回。
本实例中,算法中的getResult(stack)具体包含以下操作:从左到右从上到下把stack的每一项输出到6×6的内部字符矩阵中,stack每一项的i和j代表这个字符在展现矩阵的行和列位置。
本发明是以展现矩阵为6×6为背景来展开表述的,若展现矩阵规模被调整,该方法只需做出相应调整,这样的调整不会改变方法的实质,比如7×7、8×8、……等等不同规模的展现矩阵,均只需对算法中的参数进行相应调整即可,实现方法实质相同。
如图1所示,本发明上述方法,即P300脑机接口Chekerboard刺激序列生成方法,能够实现展现矩阵闪烁时被闪烁的字符尽可能处于不同行列,以达到较佳的闪烁刺激效果;而常规的P300刺激范式,如图2、3所示,展现矩阵闪烁时被闪烁的字符是某一行或列,其闪烁刺激的效果明显不如本发明方法。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。

Claims (1)

1.一种P300脑机接口Chekerboard刺激序列生成方法,其特征在于,把P300脑机接口Chekerboard刺激范式生成内部字符矩阵的问题转化为一个优化问题,设计一个启发式算法来求解,从而得到内部字符矩阵;
算法定义的结构数组如下:
Struct element
{
int i;
int j;
Bool avail[6][6];
}
element stack[36];
算法描述如下:
步1:m=0,setAvail(stack, m), setIJ(stack, m);
步2:若m==35,getResult(stack),结束;
步3:m=m+1;
步4:setAvail(stack, m);
步5:若setIJ(stack, m),转步2;
步6;m=m-1;
步7:若m<0,本次执行未找到解,重新启动本算法;
步8:updateAvail(stack, m);
步9:若setIJ(stack, m),转步3;否则,转步6;
算法输出的stack[36]对应内部字符矩阵从左到右从上到下的36个字符,其中的i和j代表它在展现矩阵中相应位置;
所述算法中的setAvail(stack, m)包含以下步骤:
步2-1:rowC=[],colC=[],stack[m].avail=true;row=m/6;col=m%6;
步2-2:若col>0,rowC=rowC∪stack[m-col].i,colC=colC∪stack[m-col].j,转下一步;否则,转步2-4;
步2-3:col=col-1,转步2-2;
步2-4:若row>0,rowC=rowC∪stack[m-row*6].i,colC=colC∪stack[m-row*6].j,转下一步;否则,转步2-6;
步2-5:row=row-1, 转步2-4;
步2-6:stack[m].avail[rowC][]=false,stack[m].avail[][colC]=false;
步2-7:k=0;
步2-8:若k<m,则stack[m].avail[stack[k].i][ stack[k].j]=false,转下一步;否则转步2-10;
步2-9:k=k+1,转步2-8;
步2-10:返回,结束;
所述算法中的setIJ(stack, m)包含以下步骤:
步3-1:若stack[m].avail中所有元素全为false,返回false,结束;
步3-2:随机选取一个值为true的avail元素,用它的行号赋值给stack[m].i,列号赋值给stack[m].j,返回true,结束;
所述算法中的updateAvail(stack, m)包含以下步骤:
步4-1:stack[m].avail[stack[m].i][ stack[m].j]=false;
步4-2:返回;
所述算法中的getResult(stack)包含以下操作:从左到右从上到下把stack的每一项输出到6×6的内部字符矩阵中,stack每一项的i和j代表这个字符在展现矩阵的行和列位置。
CN202010829056.3A 2020-08-18 2020-08-18 P300脑机接口Chekerboard刺激序列生成方法 Active CN111913582B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010829056.3A CN111913582B (zh) 2020-08-18 2020-08-18 P300脑机接口Chekerboard刺激序列生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010829056.3A CN111913582B (zh) 2020-08-18 2020-08-18 P300脑机接口Chekerboard刺激序列生成方法

Publications (2)

Publication Number Publication Date
CN111913582A CN111913582A (zh) 2020-11-10
CN111913582B true CN111913582B (zh) 2022-06-14

Family

ID=73278173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010829056.3A Active CN111913582B (zh) 2020-08-18 2020-08-18 P300脑机接口Chekerboard刺激序列生成方法

Country Status (1)

Country Link
CN (1) CN111913582B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508545A (zh) * 2011-10-24 2012-06-20 天津大学 一种视觉P300-Speller脑-机接口方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103472922A (zh) * 2013-09-23 2013-12-25 北京理工大学 一种基于p300与ssvep混合式脑机接口的目的地选择系统
US10179407B2 (en) * 2014-11-16 2019-01-15 Robologics Ltd. Dynamic multi-sensor and multi-robot interface system
CN104461007B (zh) * 2014-12-19 2017-11-03 北京理工大学 一种基于脑电信号的驾驶员辅助人车交互系统
CN104899573B (zh) * 2015-06-18 2018-06-15 福州大学 基于小波变换与Fisher准则的P300特征提取方法
CN111506193A (zh) * 2020-04-15 2020-08-07 西安交通大学 基于现场可编程门阵列局部噪声优化的视觉脑机接口方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508545A (zh) * 2011-10-24 2012-06-20 天津大学 一种视觉P300-Speller脑-机接口方法

Also Published As

Publication number Publication date
CN111913582A (zh) 2020-11-10

Similar Documents

Publication Publication Date Title
US10885876B2 (en) Method and device for adjusting brightness, display device and storage medium
CN100576301C (zh) 自发光型显示装置
JPH04222066A (ja) 図形要素表現装置及び方法
CN113625893B (zh) 触控显示装置的驱动方法、驱动电路和触控显示装置
CN106205452B (zh) 定时控制器和显示装置
CN108803873B (zh) 一种基于高刷新率呈现的运动视觉诱发电位脑机接口方法
CN1038714A (zh) 灰度的最优化字符显示技术
CN106991959B (zh) 用于led显示屏的图像处理方法及装置
CN104657068A (zh) 显示设备及其驱动方法
CN102968966A (zh) 驱动电路、显示器以及显示器的驱动方法
US20240203314A1 (en) Method and apparatus for driving display panel and display device
KR102623092B1 (ko) 디스플레이 패널의 구동 장치, 구동 방법 및 디스플레이 장치
KR20240021249A (ko) Led 디스플레이 스크린 구동 방법, 시스템, 장치, 기기 및 매체
CN101162571B (zh) 液晶显示器及其驱动方法
CN111913582B (zh) P300脑机接口Chekerboard刺激序列生成方法
CN103247283A (zh) 一种屏幕刷新方法及装置
CN111489713A (zh) 一种像素矩阵驱动装置及显示器
JPH09166966A (ja) マルチキャラクタ多重化ディスプレイにおいてキャラクタをイネーブルにする方法および多重化ディスプレイデバイス
JPH02893A (ja) 表示装置およびその作動方法
CN218957373U (zh) 一种提高电子纸灰度的灰阶补偿系统
CN102662612B (zh) 使用Qt库显示MRC格式的图片文件的方法和系统
Laukkanen et al. The cone and the lazy bubble: two efficient alternatives between the point cursor and the bubble cursor
JP5836701B2 (ja) 表示装置及びその制御方法
CN114780160B (zh) 一种改善内嵌式触控显示效果的驱动方法
CN112687228B (zh) 伽马曲线的调节方法和调节装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant