PT108690B - Sistema e método para interface cérebro-máquina de aprendizagem de operante - Google Patents

Sistema e método para interface cérebro-máquina de aprendizagem de operante Download PDF

Info

Publication number
PT108690B
PT108690B PT108690A PT10869015A PT108690B PT 108690 B PT108690 B PT 108690B PT 108690 A PT108690 A PT 108690A PT 10869015 A PT10869015 A PT 10869015A PT 108690 B PT108690 B PT 108690B
Authority
PT
Portugal
Prior art keywords
neural
program code
electrodes
processor
neural processor
Prior art date
Application number
PT108690A
Other languages
English (en)
Other versions
PT108690A (pt
Inventor
Loureiro Nuno
B Paixão Vitor
M Costa Rui
Santos Fernando
Original Assignee
Fund D Anna Sommer Champalimaud E Dr Carlos Montez Champalimaud
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 Fund D Anna Sommer Champalimaud E Dr Carlos Montez Champalimaud filed Critical Fund D Anna Sommer Champalimaud E Dr Carlos Montez Champalimaud
Priority to PT108690A priority Critical patent/PT108690B/pt
Priority to JP2018521723A priority patent/JP6663007B2/ja
Priority to CA2992390A priority patent/CA2992390C/en
Priority to PCT/PT2016/050017 priority patent/WO2017010899A1/en
Priority to EP16760207.7A priority patent/EP3322333A1/en
Priority to US15/744,865 priority patent/US10512410B2/en
Priority to EP16760779.5A priority patent/EP3322334A1/en
Priority to CN201680051953.8A priority patent/CN108289634B/zh
Priority to CA2992432A priority patent/CA2992432A1/en
Priority to PCT/IB2016/054179 priority patent/WO2017009787A1/en
Publication of PT108690A publication Critical patent/PT108690A/pt
Priority to HK18113510.4A priority patent/HK1254426A1/zh
Priority to HK19100592.1A priority patent/HK1258232A1/zh
Publication of PT108690B publication Critical patent/PT108690B/pt

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • A61B5/7267Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/369Electroencephalography [EEG]
    • A61B5/372Analysis of electroencephalograms
    • A61B5/374Detecting the frequency distribution of signals, e.g. detecting delta, theta, alpha, beta or gamma waves
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/369Electroencephalography [EEG]
    • A61B5/375Electroencephalography [EEG] using biofeedback
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F2/00Filters implantable into blood vessels; Prostheses, i.e. artificial substitutes or replacements for parts of the body; Appliances for connecting them with the body; Devices providing patency to, or preventing collapsing of, tubular structures of the body, e.g. stents
    • A61F2/50Prostheses not implantable in the body
    • A61F2/68Operating or control means
    • A61F2/70Operating or control means electrical
    • A61F2/72Bioelectric control, e.g. myoelectric
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F4/00Methods or devices enabling patients or disabled persons to operate an apparatus or a device not forming part of the body 
    • 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
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/25Bioelectric electrodes therefor
    • A61B5/279Bioelectric electrodes therefor specially adapted for particular uses
    • A61B5/291Bioelectric electrodes therefor specially adapted for particular uses for electroencephalography [EEG]
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/68Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient
    • A61B5/6801Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient specially adapted to be attached to or worn on the body surface
    • A61B5/6813Specially adapted to be attached to a specific body part
    • A61B5/6814Head
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Physics & Mathematics (AREA)
  • Animal Behavior & Ethology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Pathology (AREA)
  • Surgery (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Psychiatry (AREA)
  • Vascular Medicine (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Computation (AREA)
  • Psychology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Neurology (AREA)
  • Neurosurgery (AREA)
  • Transplantation (AREA)
  • Dermatology (AREA)
  • Cardiology (AREA)
  • Mathematical Physics (AREA)
  • Physiology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Fuzzy Systems (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • User Interface Of Digital Computer (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

UM MÉTODO, SISTEMA E MEIOS LEGÍVEIS POR COMPUTADOR PARA UMA BMI USANDO UM DESCODIFICADOR FIXO (112) BASEADO EM RÁCIOS DE DIFERENTES BANDAS DE FREQUÊNCIA, QUE TORNAM O DESCODIFICADOR ROBUSTO, MENOS ¿NERVOSO¿, E RESISTENTE A PERTURBAÇÕES. O DESCODIFICADOR FIXO (112) PODE SER CONFIGURADO DE MANEIRA A UTILIZAR UM SUBCONJUNTO LIMITADO DE CANAIS DISPONÍVEIS. O DESCODIFICADOR PODE ASSIM SER OPTIMIZADO PARA CADA INDIVÍDUO E DEPOIS FIXADO. A SAÍDA DO DESCODIFICADOR FIXO PODE SER DISPONIBILIZADA A UM PROGRAMA DE TREINO, ASSIM PERMITINDO QUE OS INDIVÍDUOS APRENDAM RAPIDAMENTE A CONTROLAR DISPOSITIVOS, BEM COMO A CONSOLIDAR ESSE CONTROLO. O PROGRAMA DE TREINO PROPORCIONA FEEDBACK CONTÍNUO DA TRANSFORMAÇÃO A DECORRER, QUE É EMITIDO PELO DESCODIFICADOR FIXO (112) EM CONJUGAÇÃO COM O FEEDBACK DAS TRANSFORMAÇÕES QUE JÁ DECORRERAM, EM QUE O FEEDBACK EXIBE EVIDÊNCIA POSITIVA QUANDO AS METAS DA TAREFA SÃO ALCANÇADAS.

Description

DESCRIÇÃO
SISTEMA E MÉTODO PARA INTERFACE CÉREBRO-MÁQUINA DE
APRENDIZAGEM DE OPERANTE
ANTECEDENTES DA INVENÇÃO
A invenção aqui descrita diz genericamente respeito a uma interface cérebro-máquina de aprendizagem de operante. Em particular, a invenção refere-se a sistemas, métodos e produtos de programa de computador para implementação de uma interface cérebro-máquina baseada em electroencefalografia (EEG) utilizando um descodificador fixo, cuja saída pode comandar ou de outro modo operar uma diversidade de máquinas e próteses.
DESCRIÇÃO DA TECNOLOGIA CORRELACIONADA
Uma Interface Cérebro-Máquina (Brain Machine Interface BMI) é uma via de comunicação directa desde um cérebro até um dispositivo externo. Esta comunicação pode ser conseguida usando um dispositivo de gravação que mede a actividade neural, em que o dispositivo de gravação transmite a actividade neural medida para um computador (ou qualquer outro dispositivo programável, incluindo hardware e software), o qual transforma e interpreta o sinal. 0 computador faz a alimentação do sinal para um actuador ou dispositivo exterior, em que o dispositivo exterior proporciona feedback para o utilizador relativamente ao desempenho, assim fechando o ciclo.
A pesquisa básica no que se refere a BMI's tem-se desenvolvido a um ritmo impressionante desde as primeiras demonstrações nos finais dos anos 90, quando as experiências demonstraram de forma conclusiva que conjuntos de neurónios corticais poderiam controlar directamente um manipulador robótico. Na verdade, o objectivo ou utilização principal das BMI's até à data tem sido sob a forma de uma potencial nova terapia para restaurar o controlo motor em doentes com deficiência grave, por exemplo aqueles que sofrem de doenças ou outros condicionalismos médicos que afectam a movimentação de um doente, particularmente condicionalismos que envolvem o sistema nervoso central. A título de exemplo, como foi atrás sugerido, os exoesqueletos ou outras formas de tecnologias mecânicas de apoio podem tirar proveito da integração com uma BMI, a fim de proporcionar uma recém-descoberta liberdade a indivíduos que se encontravam previamente limitados devido à dificuldade de movimentação. De uma forma semelhante, os membros artificiais ou biónicos fazendo uso destas interfaces proporcionam a capacidade para controlo directo de uma prótese por parte de um utilizador, através da utilização de sinais neurais, em oposição à limitada manipulação mecânica, trazendo assim uma liberdade de actuação e de manipulação que se aproxima da que é oferecida por um membro natural.
Uma característica que distingue as BMI's passa por saber se elas utilizam técnicas invasivas, tais como implantes intracranianos, ou se implementam métodos não-invasivos para obter sinais neurais. No entanto, quer elas usem técnicas invasivas ou não-invasivas para obter sinais neurais, a informação contida nos sinais tem de ser interpretada de forma que possa ser tomada significativa acção com base em tal informação. Uma abordagem para a concepção de um sistema de BMI é conhecida como a abordagem de descodificação. Utilizando esta técnica, é gerado um modelo matemático por um computador, a fim de relacionar (descodificar) a actividade neural gravada com os movimentos de membros naturais, assim fazendo a aprendizagem do significado de sinais neurais recebidos como uma função do tempo. Esta actividade pode então ser usada para prever movimentos, somente a partir de actividade neural. A maioria dos sistemas comerciais existentes no mercado fazem abordagem à BMI através de diferentes variantes deste paradigma.
Um exemplificativo sistema que implementa a técnica de descodificação é discutido no documento WO2014/025772, intitulado Systems and Methods for Responsive Neurorehabilitation, por Babak, et al. Em Babak, o autor propõe a recepção de sinais neurais através da utilização de um descodificador de caracteristica adaptativa, o qual funciona de modo a extrair sinais específicos a partir de uma multiplicidade de sinais neurais que o sistema tipicamente recebe a partir do cérebro de um utilizador. Babak, em seguida, fornece o(s) sinal(is) extraído(s) a um descodificador de motor adaptativo, o qual está configurado de modo a mapear o(s) sinal(is) extraído(s) para obtenção de um sinal de comando de um dispositivo de reabilitação. O sinal de comando é emitido, deste modo controlando o dispositivo assim como provocando a geração e recepção de feedback sensorial proveniente do utilizador. Este feedback sensorial é também extraído pelo descodificador de caracteristica adaptativa e passado para o descodificador de motor adaptativo, o qual ajusta em conformidade os seus parâmetros de mapeamento interno. Desta maneira, o dispositivo de reabilitação de
Babak adapta de forma dinâmica o controlo de saída, com base nos sinais descodificados que ele recebe a partir do utilizador.
A abordagem de descodificação requer informação sensorial e de outros estímulos, a qual já foi codificada no interior do cérebro de um operante, a ser reconstruída no contexto de um computador digital. Esta reconstrução dentro de um computador digital utiliza tipicamente redes neurais ou construções semelhantes, para prever estímulos recebidos com base em sinais neurais de entrada, e requer uma complexa aproximação ou modelização do operante. Por outras palavras, é necessário que o software que tenta implementar uma tal abordagem se adapte ele próprio aos sinais neurais de entrada, fazendo corresponder, ou mapeando de outro modo, tais sinais neurais a uma desejada saída que seja congruente com a entrada que ele está a receber. Uma tal abordagem sofre de inúmeros inconvenientes, como por exemplo limitações implícitas às tecnologias de aprendizagem de máquinas, dificuldade na resolução de problemas em que os resultados do treino são não-determinísticos e dependem de parâmetros iniciais, uma incapacidade para adicionar dados posteriormente adquiridos a fim de 'reensinar' um modelo existente, etc. Outras técnicas de descodificação tentam ultrapassar estes e outros inconvenientes, mas são simultaneamente acompanhadas por outros inconvenientes e limitações.
Tornam-se portanto necessários novos sistemas e métodos para aproveitar a dinâmica de mudanças neurais que permite a geração de sinais de comando, cuja lógica de negócio personalizada (custom business logic) pode então ser utilizada para executar tarefas específicas, arbitrárias.
SUMÁRIO DA INVENÇÃO
A presente invenção proporciona sistemas, métodos e produtos de programa de computador que utilizam um descodificador fixo em conjugação com a recolha de actividade de sinais cerebrais, utilizando eléctrodos não invasivos para gerar sinais de saída que podem ser usados para realizar tarefas fixadas. A presente invenção permite que um utilizador aprenda rapidamente a controlar um dispositivo através do controlo de um descodificador fixo, o que vai melhorando ao longo do tempo através do uso continuado da invenção.
Modelos de realização da presente invenção proporcionam a uma BMI diversas melhorias inovadoras, incluindo a utilização de um descodificador fixo que se baseia não na potência de bandas individuais de frequência de EEG, mas sim em rácios de bandas de frequência diferentes, tornando o descodificador robusto, menos 'nervoso' e resistente a perturbações. A lógica de programação para o descodificador fixo pode ser instanciada em software, bem como em hardware (por exemplo, uma rede de portas lógicas programáveis - Field Programmable Gate Array), e pode ser configurada de modo a utilizar um limitado subconjunto de canais que estão disponíveis para o descodificador fixo. Nestas circunstâncias, o descodificador poderá ser optimizado para cada indivíduo ou tarefa (quais as bandas de frequência a utilizar, quais os particulares rácios ou algoritmos para processar os sinais recebidos, que canais, que pesos, etc.) e depois fixado em hardware ou software, a fim de que um dado indivíduo possa aprender a controlar uma diversidade de dispositivos usando o descodificador (desde que os comandos de controlo utilizem a mesma transformação ou transformações).
A saída do descodif icador fixo pode ser fornecida a um programa de treino que implementa parâmetros de feedback e de treino específicos, assim permitindo que os indivíduos aprendam rapidamente a controlar dispositivos, assim como a consolidar esse controlo. 0 programa de treino fornece feedback contínuo da transformação que está nesse momento a ser emitida pelo descodificador fixo, em conjugação com feedback das transformações que já decorreram (por exemplo, até um segundo antes), em que o feedback exibe evidência positiva quando as metas da tarefa são alcançadas.
Tendo em vista o que atrás foi exposto, os modelos de realização da invenção são dirigidos para um método destinado à geração de um comando de saída por intermédio de um processador neural, através da utilização de uma interface cérebro-máquina de aprendizagem de operante. A invenção de acordo com esto modelo de realização compreende: (i) a selecção de um ou mais eléctrodos, a partir de uma multiplicidade de eléctrodos, por intermédio de execução de código de programa no processador neural; e (ii) recepção de sinais neurais no processador neural provenientes de um ou mais dos eléctrodos seleccionados. São estabelecidos limites com base nos sinais neurais recebidos, assim como um temporizador no processador neural para definir uma velocidade de comandos de saída. Enquanto o temporizador não tiver expirado, o processador neural executa código de programa para recuperação e processamento dos sinais neurais recebidos, e calcula um comando de controlo através da utilização de um descodificador fixo no processador neural que recebe os sinais neurais recuperados e processados como entrada.
Em situações em que o processador neural está ligado a um utilizador, a recepção de sinais neurais pelo processador neural compreende a recepção de sinais neurais a partir do operante, por exemplo através dos eléctrodos que podem ser aplicados no crânio do operante. Quando em funcionamento, o processador neural pode realizar uma verificação, ao executar código de programa para determinar se uma tarefa a decorrer está concluída. Como parte da conclusão de tarefa, a execução de código de programa no processador neural pode estabelecer um temporizador para definir uma subsequente velocidade de comandos de saída, bem como recuperar e processar os sinais neurais recebidos, enquanto o temporizador não tiver expirado. A execução de código de programa no processador neural pode proporcionar comandos de controlo, como por exemplo uma entrada para um subsequente componente de hardware ou software.
estabelecimento da selecção de eléctrodos é dividido num subprocesso, de acordo com um modelo de realização da presente invenção. Mais especificamente, a selecção de um ou mais eléctrodos, a partir de uma multiplicidade de eléctrodos, pode incluir a apresentação de uma tarefa ao operante, a própria tarefa mediante o controlo da execução do código de programa no processador neural, e a aquisição de actividade neural do operante durante a apresentação da tarefa pelo processador neural. 0 processador neural aplica critérios de selecção à actividade neural adquirida, e selecciona um ou mais eléctrodos que ultrapassem os critérios de selecção. Do mesmo modo, a selecção de eléctrodos pelo processador neural inclui a selecção de um subconjunto de eléctrodos pelo processador neural que ultrapassam os critérios de selecção. A aquisição de actividade neural pode ainda incluir a iniciação de um temporizador de selecção de eléctrodos, por intermédio de execução de código de programa no processador neural, a fim de definir uma janela sobre a qual o processador neural deverá adquirir actividade neural.
processador neural pode ser operado no sentido de processar o sinal neural que ele recebe. De acordo com modelos de realização da presente invenção, o processamento dos sinais neurais recebidos compreende a atenuação do ruído de sinal em um ou mais canais contidos dentro dos sinais neurais recebidos, e o cálculo de uma densidade espectral para os - um ou mais - canais atenuados. É determinada a potência média em uma ou mais bandas seleccionadas para os - um ou mais - canais, e são determinadas rácios de potência para os - um ou mais canais. A determinação de rácios de potência para um dado canal, a partir dos - um ou mais - canais, é feita, de acordo com um modelo de realização, por intermédio de execução de código de programa no processador neural a z Υ'θ fim de calcular o racio — . 0 calculo do comando de βδ controlo, de acordo com diversos modelos de realização, compreende a instrução de código de programa no processador neural a fim de calcular log(Y^hn=1ráciochnçnÇ).
Para além do exposto, o âmbito da presente invenção abrange meios não-transitórios legíveis por computador compreendendo código de programa que, quando executado por um processador programável, promove a execução de um método para geração de um comando de saida por um processador neural, através da utilização de uma interface cérebro-máquina de aprendizagem de operante. 0 código de programa, de acordo com um modelo de realização, inclui: (i) código de programa para selecção de um ou mais eléctrodos, a partir de uma multiplicidade de eléctrodos, por intermédio de execução de código de programa no processador neural; e (ii) código de programa para recepção de sinais neurais no processador neural provenientes de um ou mais eléctrodos seleccionados. É proporcionado código de programa a fim de estabelecer limites com base nos sinais neurais recebidos, e estabelecer um temporizador no processador neural a fim de definir uma velocidade de comandos de saída. 0 presente modelo de realização proporciona ainda código de programa para processamento dos sinais neurais recebidos pelo processador neural, enquanto o temporizador não tiver expirado, e para calcular um comando de controlo através da utilização de um descodificador fixo no processador neural, que recebe os sinais neurais recuperados e processados como entrada.
Além disso, pode ser disponibilizado código de programa como parte do processador neural, a fim de proporcionar o comando de controlo como uma entrada para um subsequente componente de hardware ou software. Um tal código de programa também pode incluir código de programa para realizar uma verificação no processador neural, a fim de determinar se uma tarefa a decorrer está concluída, assim como código de programa para ajustar o temporizador de modo a definir uma subsequente velocidade de comandos de saída, e código de programa para recuperação e processamento dos sinais neurais recebidos enquanto o temporizador não tiver expirado.
O processador neural pode seleccionar eléctrodos, a partir dos quais ele recolhe sinais neurais para processamento. Nestas circunstâncias, o código de programa para seleccionar um ou mais eléctrodos a partir de uma multiplicidade de eléctrodos pode incluir código de programa para apresentação de uma tarefa ao operante, e código de programa para aquisição da actividade neural do operante durante a apresentação da tarefa pelo processador neural. Outras partes do código de programa podem aplicar critérios de selecção por intermédio do processador neural à actividade neural adquirida, e seleccionar, por intermédio do processador neural, um ou mais eléctrodos que ultrapassam os critérios de selecção. 0 código de programa para selecção de um ou mais eléctrodos também pode incluir código de programa para seleccionar um subconjunto de eléctrodos, por intermédio do processador neural, que ultrapassam os critérios de selecção.
No processamento de sinais neurais, o código de programa para processamento dos sinais neurais recebidos pode incluir código de programa para atenuação do ruído de sinal em um ou mais canais contidos dentro dos sinais neurais recebidos, e para cálculo de uma densidade espectral para os - um ou mais - canais atenuados. A execução do código de programa no processador neural inclui ainda código de programa para determinar a potência média em uma ou mais bandas seleccionadas para os - um ou mais - canais, e código de programa para determinar rácios de potência para os - um ou mais canais. 0 código de programa para cálculo do comando de controlo, de acordo com um modelo de realização, inclui código de programa para calcular log(j^hn=1ráciocfinçn^).
BREVE DESCRIÇÃO DOS DESENHOS
A invenção encontra-se ilustrada nas Figuras dos desenhos anexos, as quais se destinam a ser exemplificativas e não limitativas, nas quais os mesmos números de referência pretendem identificar peças idênticas ou correspondentes, e nas quais:
A Figura IA apresenta um esquema do sistema que ilustra uma interface global cérebro-máquina utilizando um descodificador fixo, de acordo com um modelo de realização da presente invenção;
A Figura 1B apresenta um diagrama de blocos que ilustra um processador neural utilizando um descodificador fixo para executar uma tarefa, de acordo com um modelo de realização da presente invenção;
A Figura 2 ilustra uma interface de utilizador para uma aplicação de treino, de acordo com um modelo de realização da presente invenção;
A Figura 3 ilustra uma interface de utilizador para uma aplicação de treino, de acordo com um outro modelo de realização da presente invenção;
A Figura 4 apresenta um diagrama de fluxos que ilustra um método global para execução de um processador neural utilizando um descodificador fixo, de acordo com um modelo de realização da presente invenção;
A Figura 5A apresenta um diagrama de fluxos que ilustra um método para selecção de eléctrodos, de acordo com um modelo de realização da presente invenção;
A Figura 5B apresenta um diagrama de fluxos que ilustra um método para selecção de eléctrodos, de acordo com um outro modelo de realização da presente invenção;
A Figura 6 apresenta um diagrama de blocos que ilustra a selecção de um subconjunto de eléctrodos, a partir de um conjunto de eléctrodos disponíveis;
A Figura 7 apresenta um diagrama de fluxos que ilustra um método para aquisição e processamento de sinais por um descodificador fixo utilizando rácios de potência de canal, de acordo com um modelo de realização da presente invenção;
A Figura 8 apresenta um diagrama de fluxos que ilustra um processo para emissão de um comando, de acordo com um modelo de realização da presente invenção; e
A Figura 9 apresenta um diagrama de fluxos que ilustra um método para processamento de sinais, por intermédio de um descodificador fixo, a fim de determinar um comando de saída, de acordo com um modelo de realização da presente invenção.
DESCRIÇÃO DETALHADA DA INVENÇÃO
As matérias em consideração serão a partir daqui descritas de forma mais completa, fazendo referência aos desenhos anexos que fazem parte integrante da descrição e que mostram, a título de ilustração, modelos de realização exemplificativos nos quais a invenção pode ser experimentada. As matérias em consideração podem no entanto ser concretizadas numa diversidade de diferentes formas e, por conseguinte, as matérias em consideração abrangidas ou reivindicadas destinam-se a ser interpretadas como não estando limitadas a quaisquer modelos de realização exemplificativos aqui expostos; os modelos de realização exemplificativos são proporcionados apenas como meios ilustrativos. Dever-se-á perceber que podem ser utilizados outros modelos de realização e podem ser feitas mudanças estruturais, sem nos afastarmos do âmbito da presente invenção. Da mesma forma, pretende-se um âmbito razoavelmente amplo para as matérias em consideração reivindicadas ou abrangidas. Entre outras coisas, as matérias em consideração podem por exemplo ser concretizadas sob a forma de métodos, dispositivos, componentes, ou sistemas. Nestas circunstâncias, os modelos de realização podem por exemplo assumir a forma de hardware, software, firmware, ou uma qualquer combinação dos mesmos (com excepção do software por si só) . A descrição detalhada que se segue não se destina portanto a ser considerada num sentido limitativo.
Ao longo das especificações e reivindicações, os termos podem ter significados, com detalhes sugeridos ou implícitos no contexto, que vão para além de um significado explicitamente estabelecido. Do mesmo modo, a frase num modelo de realização, tal como aqui é usada, não se refere necessariamente ao mesmo modelo de realização, e a frase num outro modelo de realização, tal como aqui é usada, não se refere necessariamente a um modelo de realização diferente. Pretende-se, por exemplo, que as matérias em consideração que são reivindicadas incluam combinações de modelos de realização exemplificativos, no todo ou em parte.
A Figura 1 ilustra uma interface global cérebro-máquina utilizando um descodificador fixo, de acordo com um modelo de realização da presente invenção; especificamente, ela mostra a relação de ciclo fechado entre esses diferentes componentes. 0 sistema da Figura 1 compreende uma multiplicidade de eléctrodos 104 que estão aplicados no couro cabeludo de um utilizador 100, os quais podem ser colocados, ou de outro modo mantidos no seu lugar, por intermédio de uma touca ou semelhante peça de vestuário 102 que mantenha o posicionamento espacial dos eléctrodos 104 sobre o couro cabeludo. Cada um dos múltiplos eléctrodos está em comunicação com um processador neural 108 por intermédio de cabos condutores individuais 106, os quais são tipicamente constituídos por fios metálicos que servem como condutores para os sinais recebidos por um determinado eléctrodo 104.
processador neural 108 compreende hardware e software que podem ser operados no sentido de obter sinais neurais que foram recolhidos por um ou mais dos múltiplos eléctrodos 104 em contacto com o couro cabeludo do utilizador 100. De acordo com diversos modelos de realização, o processador neural 108 pode recolher os sinais neurais recebidos para armazenamento local e processamento em tempo quase real, ou pode processar os sinais em tempo real à medida que os sinais vão sendo recebidos pelo processador neural 108. Em qualquer um dos modelos de realização, o processador neural 108 recebe um conjunto de sinais neurais, que podem ser graficamente representados 110 em conformidade com as diversas bandas de frequências recolhidas pelos eléctrodos 104, por exemplo ondas delta, teta, alfa e beta.
processador neural 108 pode utilizar sinais neurais que ele recebe a partir de cada um dos eléctrodos 104 ligados ao couro cabeludo do utilizador 100. Em alternativa, o processador neural 108 pode seleccionar um subconjunto dos eléctrodos disponíveis através dos quais ele está a receber sinais neurais, limitando o processamento aos sinais neurais recebidos a partir dos eléctrodos seleccionados 104. 0 processador neural 108 extrai as diversas bandas de frequências contidas nos sinais neurais recebidos a partir dos eléctrodos 104 em consideração, por exemplo utilizando técnicas espectrais que são bem conhecidas dos especialistas nesta tecnologia, e passa os valores para as várias bandas, num dado instante no tempo, para um descodificador fixo 112. Com base nos valores das várias bandas, num dado instante no tempo, o descodificador fixo 112 calcula um valor de saída que pode ser utilizado como um comando de controlo por uma aplicação 114, a fim de executar uma tarefa específica, arbitrária.
processador neural 108 recebe, de forma contínua, sinais neurais provenientes dos eléctrodos 104 e extrai várias bandas, as quais são passadas para um descodificador fixo 112 que gera valores de saída a serem usados por uma aplicação 114 a fim de executar uma tarefa. Desta maneira, o utilizador 100 pode continuar a enviar sinais ao longo de um período de tempo, para interacção com a aplicação. Por exemplo, o descodificador fixo 112 pode emitir um sinal de comando que representa a posição de um cursor ao longo de um período de tempo, um sentido para mover um objecto num ecrã, etc. À medida que o utilizador 100 interage com o processador neural 108, ele ou ela recebe feedback a partir da interface de utilizador da aplicação 114, por exemplo o cursor desloca-se num sentido particular. Ao lhe ser fornecido feedback a partir da interface de utilizador, o utilizador 100 pode rapidamente aprender a controlar tarefas específicas, arbitrárias, que uma aplicação apresenta, bem como a consolidar um tal controlo.
A Figura 1B apresenta um diagrama de blocos que ilustra um processador neural utilizando um descodificador fixo para executar uma tarefa, de acordo com um modelo de realização da presente invenção. 0 processador neural 130 da Figura 1B está em comunicação, tanto com um conjunto de um ou mais eléctrodos 132 como com um dispositivo de visualização 152. Em funcionamento, o processador neural 130 recebe sinais neurais provenientes do conjunto de um ou mais eléctrodos 132, e processa os sinais neurais recebidos utilizando um descodificador fixo 148. 0 descodificador fixo 148 emite sinais de comando para serem usados por uma aplicação 136, bem como feedback para um dispositivo de visualização 152 dizendo respeito ao sinal de comando que foi calculado com base nos sinais neurais gerados pelo utilizador. Deve notar-se que o ecrã 152 pode ser substituído por qualquer número de terminais periféricos a serem controlados, em modelos de realização da presente invenção. Por exemplo, em vez de um ecrã, o sinal de comando emitido pelo descodificador fixo 148 pode ser interpretado por lógica de negócio destinada a um aplicação de controlo de voo, de tal forma que o ecrã 152 e a interface de visualização 150 que lhe está associada são substituídos por uma interface de controlo de voo e por controlos de voo. Da mesma forma, os sinais de comando podem ser usados para controlar uma cadeira de rodas, membro profético, ou virtualmente quaisquer outros dispositivos que requeiram a recepção de sinais de comando, como por exemplo sinais de comando direccionais.
Concentrando-nos no modelo de realização que a Figura 1B ilustra, um certo número de eléctrodos 132 está em comunicação com o processador neural 130 através de uma interface de entrada neural 134. A interface de entrada neural 134 - sob o controlo da unidade de processamento central 136 que executa, ela própria, instruções recebidas a partir da RAM 140 ou ROM 142 - executa uma ou mais rotinas para limpar ou de outra forma amplificar bandas específicas contidas dentro dos sinais neurais que o processador neural está a receber provindo dos eléctrodos. Serão aqui descritas em maior detalhe técnicas para a selecção de eléctrodos específicos e de bandas de frequência compreendendo as mesmas.
Para além da interface de entrada neural 134 e da interface de visualização 150, o processador neural 130 compreende uma unidade central de processamento (CPU) 136, RAM 140 e ROM 142, memória persistente 138, um módulo selector de eléctrodos 144, um descodificador fixo 148 e lógica de negócio específica para tarefas 146. A CPU 136 é o principal componente de controlo do processador neural 130, e pode executar instruções em nome de, ou em conjugação com, outros componentes que constituem o processador neural 130. Embora apresentados como componentes ou módulos discrepantes, a lógica de programação - que inclui o selector de eléctrodos 144, descodificador fixo 148 e lógica de negócio de tarefas 146 - pode ser implementada, de acordo com vários modelos de realização, sob a forma de aplicações de software ou rotinas que são guardadas em memória de acesso aleatório 140 ou memória persistente 138 para serem executadas pela CPU.
Tal como ilustrado, o processador neural 130 tem acesso a diversas estruturas de armazenamento de dados que proporcionam memórias de dados transientes 140, persistentes 138 e permanentes 142, e a código de programa. A memória persistente 138 proporciona armazenamento de dados e código de programa entre sessões, quando o processador neural 130 entra num estado de corte de energia. Como exemplos de memórias persistentes 138 referem-se, mas não estando a elas limitados, drives de disco rígido e memória flash, cada uma das quais permite que o processador neural mantenha código de programa, bem como sinais neurais recolhidos a partir de um ou mais utilizadores ao longo de um determinado período de tempo. A memória transiente, tal como a RAM 140, proporciona um espaço de memória de alta velocidade para que a CPU mantenha a execução de código de programa e quaisquer dados necessários para executar tal código de programa, enquanto a memória permanente, tal como a ROM 142, proporciona instruções só de leitura normalmente utilizadas pela CPU no arranque e inicialização.
Como indicado, o processador neural 130 também compreende um selector de eléctrodos 144, um descodificador fixo 148 e lógica de negócio de tarefas 146. O selector de eléctrodos 130 é operado no sentido de executar uma ou mais rotinas (que podem ser executadas em conjugação com o processamento pela CPU), as quais seleccionam os eléctrodos específicos a partir dos quais são lidos os sinais neurais e se extraem bandas de frequências para processamento. As bandas de frequência que o selector de eléctrodos 144 emite são fornecidas como entrada para o descodificador fixo 148, que produz um valor de controlo ou sinal, o qual ele pode calcular com base nos níveis de potência para as bandas de frequência específicas que o selector de eléctrodos 144 disponibiliza como entrada para o descodificador fixo 148.
descodificador fixo 148 emite o sinal de comando para a lógica de negócio de tarefas 146 que é operada no sentido de executar uma tarefa com base na instrução incorporada no sinal de comando. De acordo com um modelo de realização, um sinal de comando abaixo de um certo valor serve como um comando para que a lógica de negócio de tarefas redesenhe de uma certa maneira um ecrã de visualização, manipule um cursor numa certa dimensão, etc. A lógica de negócio de tarefas 146 é específica para tarefas e pode ser modificada em função da tarefa específica à qual a lógica de negócio é dirigida. A lógica de negócio de tarefas 146 pode estar programada em várias combinações de hardware e software para responder de uma maneira particular a sinais de comando provenientes do descodificador fixo 148. Por exemplo, quando a tarefa for a de controlar um cursor sobre um ecrã, a lógica de negócio de tarefas pode ser programada de maneira a tomar uma certa acção relativamente à visualização do cursor, com base nos sinais de comando que ela recebe a partir do descodificador fixo.
As Figuras 2 e 3 ilustram interfaces de utilizador para uma aplicação de treino, de acordo com vários modelos de realização da presente invenção. As interfaces de utilizador das Figuras 2 e 3 representam modelos de realização da emissão proveniente de lógica de negócio de tarefas, na qual a lógica de negócio de tarefas é operada no sentido de instruir um processador a fim de exibir uma interface de utilizador e manipular um cursor que se desloca dentro da interface de utilizador, com base em sinais de comando que a lógica de negócio recebe a partir de um descodificador fixo. Começando pela Figura 2, a interface do utilizador é apresentada ao utilizador no seio de um dispositivo de visualização 202 sob a forma de diversos gráficos. A interface de utilizador no ecrã 202 apresenta uma tarefa para que o utilizador a complete que, no presente modelo de realização, consiste em solicitar ao utilizador que tente manipular um cursor 210 ao longo de uma linha-alvo superior 204. Os requisitos da tarefa são comunicados ao utilizador por intermédio de um comando ou sinalização visual, representado por uma seta apontando para cima 214 que está disposta no canto superior direito da interface, no ecrã 202.
Para além da tarefa imediata apresentada ao utilizador, a interface de utilizador no ecrã 202 fornece ao utilizador um feedback histórico 212 dizendo respeito à posição do cursor 210 no ecrã 202 ao longo do tempo. Desta maneira, o utilizador pode fazer observações históricas relativamente à saída do descodificador fixo, e modificar a potência de várias bandas de frequência que estão contidas nos sinais neurais que o processador neural está a receber. Este percurso visual de feedback histórico 212 que o processador está programado para exibir pode ser ampliado ou diminuído mas representa, em qualquer um dos casos, o posicionamento histórico do cursor em espaço 2D durante a sessão a decorrer para um utilizador actual.
À medida que o utilizador interage com o processador neural, enviando sinais neurais para o processador neural, o descodificador fixo calcula, ou gera de outro modo, sinais de comando que a lógica de negócio de tarefas usa para posicionar o cursor no ecrã 202. Quando o utilizador cumpre uma tarefa em curso que, no presente modelo de realização, consiste em posicionar o cursor acima de uma linha-alvo superior 204 apresentada no visor 202, tal como identificado pela sinalização 214, o código de programa que controla o ecrã 202 pode instruir o processador no sentido de apresentar, ou projectar de outra forma, uma indicação de cumprimento de tarefa, por exemplo exibir uma indicação visual ou texto indicativo de sucesso. Embora a exemplificaiiva lógica de negócio de tarefas receba sinais de comando provenientes do descodificador fixo a fim de apresentar o cursor no ecrã 202 em espaço 2D, a lógica de negócio de tarefas também pode controlar a apresentação e exibição de outros componentes de interface de utilizador no ecrã 202. Em alternativa, ou em conjugação com a lógica de negócio de tarefas, outro código de programa que a CPU execute pode controlar a apresentação e exibição de outros componentes de interface de utilizador no ecrã 202.
Para além dos componentes de interface de utilizador atrás citados, o ecrã também apresenta duas linhas interiores de restabelecimento 206a e 206b, bem como uma linha-alvo inferior 208. A linha-alvo inferior 208, tal como a linha-alvo superior, serve como um limite visual ao longo do qual o utilizador deve manipular o cursor para cumprir certas tarefas, como foi aqui discutido em maior detalhe. As linhas de restabelecimento 206a e 206b permitem que o utilizador restabeleça a tarefa em curso, ao manter o cursor entre as duas linhas interiores de restabelecimento durante um certo período de tempo.
De forma semelhante à Figura 2, a Figura 3 ilustra uma interface de utilizador que é apresentada ao utilizador no seio de um dispositivo de visualização 302, sob a forma de diversos gráficos. A interface de utilizador no ecrã 302 apresenta uma tarefa para o utilizador completar que, no presente modelo de realização, consiste em solicitar ao utilizador que tente manipular um cursor 310 ao longo de uma linha-alvo inferior 304. Um comando ou sinalização visual comunica os requisitos da tarefa ao utilizador, o que, no presente modelo de realização, é representado por uma seta a apontar para baixo 314 disposta no canto inferior direito da interface, no ecrã 302.
Para além da tarefa imediata apresentada ao utilizador, a interface de utilizador no ecrã 302 fornece ao utilizador um feedback histórico 312 dizendo respeito à posição do cursor 310 no ecrã 302 ao longo do tempo. Desta maneira, o utilizador pode fazer observações históricas relativamente à saída do descodificador fixo e modificar a potência de várias bandas de frequência que estão contidas nos sinais neurais que o processador neural está a receber. Este percurso visual de feedback histórico 312 pode ser ampliado ou diminuído mas representa, em qualquer um dos casos, o posicionamento histórico do cursor em espaço 2D durante a sessão a decorrer para um utilizador actual.
Quando o utilizador cumpre uma tarefa em curso que, no presente modelo de realização, consiste em posicionar o cursor acima de uma linha-alvo inferior 304 apresentada no ecrã 302, tal como identificado pela sinalização 314, o código de programa que controla o ecrã 302 pode apresentar, ou projectar de outra forma, uma indicação de cumprimento de tarefa, por exemplo exibindo uma indicação visual ou texto indicativo de sucesso. Embora a exemplificativa lógica de negócio de tarefas receba sinais de comando provenientes do descodificador fixo a fim de apresentar o cursor no ecrã 302 em espaço 2D, a lógica de negócio de tarefas também pode controlar a apresentação e exibição de outros componentes de interface de utilizador no ecrã 302. Em alternativa, ou em conjugação com a lógica de negócio de tarefas, outro código de programa que a CPU execute pode controlar a apresentação e exibição de outros componentes de interface de utilizador no ecrã 302. Para além dos componentes de interface de utilizador atrás citados, o ecrã também apresenta duas linhas de restabelecimento 306a e 306b, bem como uma linha-alvo superior 308, qualquer uma delas funcionando de uma maneira análoga à descrita em conjugação com a Figura 2.
Como descrito anteriormente, as interfaces de utilizador ilustradas pelas Figuras e 3 podem fazer parte da lógica de negócio de tarefas que solicita ao utilizador para manipular um cursor em espaço 2D ao longo de um período de tempo. De acordo com um modelo de realização, a tarefa consiste em três exercícios de dez (10) minutos realizados por dia, ao longo de um período de treino de dez (10) dias (por exemplo, uma sessão diária durante duas semanas, com uma pausa de 2 dias a meio) . Durante o período dos exercícios, a actividade neural de um conjunto de eléctrodos de EEG é gravada e simultaneamente transformada, utilizando o descodificador fixo, sendo essa informação utilizada para ajustar a posição de um cursor num ecrã. Tanto o descodificador como os eléctrodos seleccionados somente são estabelecidos uma vez, durante a primeira sessão, e não irão mudar ao longo de todo o período de treino. De acordo com um modelo de realização, a tarefa é concebida da seguinte maneira: mostra-se ao utilizador uma sinalização - por exemplo, a sinalização 214 ou sinalização 314 - que indica uma de duas possíveis áreas-alvo para onde o cursor deverá ser dirigido, por exemplo acima da linha de controlo superior 204 ou abaixo da linha de controlo inferior 208. É apresentada uma indicação visual agradável quando é atingido o objectivo correcto, a qual pode incluir um autocolante colorido preenchendo o ecrã, proporcionando assim um reforço positivo ao utilizador. Este é considerado como um exercício correcto. Pelo contrário, se for atingido o objectivo incorrecto, ou tiverem decorrido trinta (30) segundos, não é dado reforço e o exercício é concluído como incorrecto. A fim de reiniciar um novo exercício, o utilizador precisa de manter durante dois (2) segundos o cursor numa posição central, em conjugação com as linhas de restabelecimento.
A Figura 4 apresenta um diagrama de fluxos que ilustra um método global para execução de um processador neural utilizando um descodificador fixo, de acordo com um modelo de realização da presente invenção. Tal como anteriormente indicado, o utilizador pode estar equipado com uma multiplicidade de eléctrodos através dos quais o processador neural capta sinais neurais para processamento. Nestas circunstâncias, o processo da Figura 4 começa com a selecção de eléctrodos a partir do conjunto de eléctrodos disponíveis, passo 402. Uma vez que tenha sido feita uma determinação relativamente aos eléctrodos que virão a ser usados para captar sinais neurais destinados à tarefa, são estabelecidos limites para o utilizador com base nos sinais neurais recolhidos, passo 404. Os processos de selecção de eléctrodos e estabelecimento de limites da tarefa serão agora descritos em maior detalhe.
De acordo com alguns modelos de realização, a frequência de aquisição de EEG é mais elevada do que a frequência de processamento/feedback (respectivamente 2048 Hz e 4 Hz) . Por esta razão, os dados de EEG recolhidos podem ser armazenados numa memória-tampão para recuperação a frequências mais baixas, passo 406. Uma verificação é realizada para determinar se a memória-tampão contém todos os dados necessários para calcular a posição actual do cursor, os quais correspondem aos dados neurais do segundo anterior (2048 pontos). Enquanto não for este o caso, o método continua a verificar a memória-tampão, até que a memória-tampão esteja preenchida, passo 408. A posição do cursor é actualizada a cada 250 ms, de acordo com certos modelos de realização, o que significa que a memória-tampão irá sempre conter 250 ms (512pontos) de novos dados de EEG para processamento, em conjugação com 750 ms (1536 pontos) de dados que foram processados nos passos temporalmente antecedentes. Quando a memóriatampão estiver preenchida, o processador neural processa os dados utilizando o descodificador fixo, passo 410, e o descodificador fixo calcula, ou determina de outra forma, e emite um comando de controlo, passo 412, com base nos sinais neurais que ele tiver recuperado e processado usando a última janela de recolha.
Após emissão do comando de controlo, passo 412, o software em execução no processador neural instrui o processador no sentido de executar uma verificação para determinar se está concluída a tarefa que o utilizador está a executar, passo 414. Em situações nas quais o utilizador continua a interagir com uma aplicação através da utilização de descodificador fixo no processador neural, passo 416, o fluxo do programa regressa ao passo 406. Nestas circunstâncias, o processador neural recupera de novo os dados a partir da memória-tampão e verifica se a memória tampão está preenchida, permitindo que o processador processe os sinais neurais e emita os comandos a partir do descodificador. Quando se conclui a tarefa activa, o processo termina no passo 416.
Quando se utiliza inicialmente o processador neural, de acordo com diversos modelos de realização da presente invenção, é realizado um cálculo de referência para seleccionar eléctrodos a serem utilizados para a recolha de sinais neurais e para calibrar o processador neural ao estabelecer limites de activação. Um subconjunto de eléctrodos disponíveis pode ser seleccionado para um dado utilizador, com base na actividade neural de referência.
A Figura 5A apresenta um diagrama de fluxos que ilustra um método para selecção de eléctrodos, de acordo com um modelo de realização da presente invenção.
De acordo com o processo ilustrado pela Figura 5A, um método para selecção de eléctrodos é conduzido ao longo de uma janela de recolha e processamento, a qual é iniciada ao arrancar com um temporizador de selecção de eléctrodos. De acordo com um modelo de realização, o período para recolha e processamento da selecção de eléctrodos decorre ao longo de uma janela de cinco (5) minutos. Enquanto a janela estiver aberta, ou seja, o temporizador de selecção de eléctrodos não tiver expirado, o processador neural apresenta uma tarefa ao utilizador, passo 504, e continua a adquirir a actividade neural natural do utilizador, passo 506. A título de exemplo, pode ser conduzida uma operação de recolha de referência ao longo de uma janela de cinco (5) minutos, durante a qual é pedido ao utilizador que olhe para um ecrã de visualização onde é exibida uma foto de uma tarefa. Durante este período de tempo, o utilizador não tem controlo sobre a tarefa, e o principal objectivo da exibição é o de permitir que o processador neural adquira sinais neurais a partir do utilizador, sem fornecer qualquer feedback ao utilizador. Isto permite a aquisição da actividade neural natural do utilizador.
Durante a apresentação da tarefa e a aquisição de sinais neurais, passos 504 e 506, o sistema executa uma verificação para determinar se o temporizador de selecção de eléctrodos terá expirado, passo 508. Se o temporizador de selecção de eléctrodos não tiver expirado, o fluxo de programa regressa ao passo 504, com o que o processador neural continua a apresentar a tarefa ao utilizador e a recolher actividade neural natural. Quando o temporizador expira e se conclui a recolha de sinais neurais, os sinais neurais recolhidos são processados de acordo com diversos critérios de selecção, passo 510. A aplicação de critérios de selecção encontra-se descrita em maior detalhe em associação com a Figura 5B.
Os critérios de selecção permitem que o processador neural limite a sua recolha de sinais neurais a um certo número de eléctrodos que satisfazem os critérios de selecção, passo 512. Mais especificamente, quando o utilizador está equipado com uma multiplicidade de eléctrodos, o processador neural apenas selecciona um certo número daqueles eléctrodos que satisfazem os critérios de selecção. Por exemplo, suponha-se que o utilizador está equipado com vinte (20) eléctrodos; o processador neural poderá seleccionar os cinco (5) eléctrodos que melhor satisfaçam os critérios de selecção. Em alternativa, o método da Figura 5A pode operar de uma maneira tal que o método execute a sua análise em várias combinações de conjuntos de eléctrodos, em oposição a eléctrodos individuais.
A Figura 5B ilustra a aplicação dos critérios de selecção como fazendo parte do processo de selecção de eléctrodos exposto na Figura 5A. 0 processo da Figura 5B começa, passo 520, com a selecção de um primeiro subconjunto de eléctrodos a serem considerados para análise, passo 522. Por exemplo, se o subconjunto de eléctrodos a serem considerados for de cinco (5) eléctrodos, e o conjunto total de eléctrodos sob consideração for dezassete (17) , o processo deve realizar a sua análise em seis mil cento e oitenta e oito (6188) combinações de cinco eléctrodos. Nestas circunstâncias, é seleccionado um primeiro subconjunto de eléctrodos, passo 522, e é aplicada uma primeira ordem de classificação de acordo com o afastamento em relação à normalidade para um dado subconjunto, passo 524. De acordo com um modelo de realização, um teste de Kolmogorov-Smirnov de amostra única é aplicado para testar a normalidade da distribuição de qualquer amostra, o que implica a estandardização de uma dada amostra para comparação com uma distribuição normal estandardizada.
Adicionalmente à primeira ordem de classificação, passo 524, é aplicada uma segunda ordem de classificação para classificar os subconjuntos de acordo com a assimetria, passo 526, que consiste numa medição da assimetria da distribuição de probabilidade de uma variável de valor real em torno do seu valor médio. Subsequentemente à respectiva aplicação da primeira ordem de classificação e da segunda ordem de classificação, passos 524 e 526, é realizada uma verificação para determinar se existem quaisquer adicionais subconjuntos de eléctrodos sob consideração que requeiram classificação, passo 528. Quando existirem adicionais subconjuntos sob consideração, o processamento regressa ao passo 522, sendo os adicionais subconjuntos processados de acordo com a primeira e segunda ordem de classificação atrás descritas.
Após classificação e ordenação dos vários subgrupos de eléctrodos sob consideração, passos 522 a 528, o método prossegue com o estabelecimento de limites específicos para a selecção de subconjuntos de eléctrodos, passo 530.
O estabelecimento de limites específicos para a selecção de subconjuntos de eléctrodos pode ser arbitrariamente baseado num subjectivo bom ajustamento a uma dada tarefa, e de tal modo que tais limites não sejam nem demasiado fáceis nem muito difíceis de alcançar. Existe assim uma ampla variação em relação aos limites específicos que um dado sistema pode implementar. De acordo com um modelo de realização, e com base na interface que as aplicações de treino da Figura 2 e Figura 3 apresenta, podem ser estabelecidos limites relativamente à tarefa dada para 2, 9 vezes o desvio padrão, e identificados subconjuntos de eléctrodos, por exemplo subconjuntos de cinco eléctrodos, que correspondam à condição a atingir para a tarefa para um número definido de vezes durante a inicialização. Por exemplo, no passo 530 e no contexto da Figura 2, o método pode identificar subconjuntos de eléctrodos que correspondam à condição a atingir para a tarefa (por exemplo cruzamento da linha-alvo superior) quatro vezes durante um período de cinco minutos.
São estabelecidos limites para a tarefa, passo 530, e um primeiro subconjunto de eléctrodos é seleccionado para ser considerado, em conformidade com os limites estabelecidos, passo 532. Os critérios de limite são aplicados ao subconjunto de eléctrodos sob consideração, e é realizada uma verificação para determinar se o subconjunto sob consideração satisfaz os critérios de limite estabelecidos, passo 534. Quando o subconjunto sob consideração corresponder aos critérios limite para selecção, o processamento prossegue para o passo 536 sendo o subconjunto sob consideração marcado como um candidato a selecção. Independentemente de ser ou não verdadeira a verificação que o método realizou no passo 534, o fluxo de programa é contudo dirigido em última análise para o passo 537, onde é realizada uma verificação para determinar se existem subconjuntos adicionais sob consideração que exijam análise perante os limites estabelecidos na etapa 530. Quando subconjuntos adicionais requeiram ser considerados, é seleccionado um subsequente subconjunto para análise, passo 532.
Uma vez que é possível (embora numa probabilidade bastante remota) que muitos ou todos os subconjuntos de eléctrodos sob consideração consigam satisfazer os limites de critérios de selecção, o método realiza uma classificação para ordenar os subconjuntos sob consideração que satisfaçam os limites de critérios de selecção, passo 538. É feita uma selecção, passo 540, de modo a ser seleccionado o subconjunto com classificação mais elevada como sendo o subconjunto de eléctrodos que o processador neural pode usar para recolher sinais neurais destinados a processamento, e para a emissão de sinais de comando com base nos mesmos. Quando existir um empate de n hipóteses (n-way tie) para o subconjunto de eléctrodos com a mais alta classificação, passo 540, o método pode realizar uma selecção arbitrária de qualquer subconjunto de eléctrodos presente no empate de n hipóteses.
Com base na metodologia de selecção de eléctrodos (Figura 5A) e na aplicação de critérios de selecção (Figura 5B) , a Figura 6 apresenta um diagrama de blocos que ilustra a selecção de um subconjunto de eléctrodos a partir de um conjunto de eléctrodos disponíveis. De acordo com o modelo de realização da Figura 6, um utilizador 602 está equipado com um certo número de eléctrodos - tais como os eléctrodos 604a, 604b e 604c - que estão afastados segundo um determinado padrão ao longo do crânio do utilizador 602. Como indicado anteriormente, o conjunto de eléctrodos - por exemplo, eléctrodos 604a, 604b e 604c - pode ser aplicado no couro cabeludo do utilizador 602 de acordo com diversas técnicas, tais como a utilização de adesivos ou a aplicação dos eléctrodos numa touca ou peça de vestuário semelhante, que é então usada pelo utilizador 602.
De acordo com certos modelos de realização da invenção, apenas um subconjunto do número total de eléctrodos disponíveis é analisado, ou de outra maneira questionado, para determinar se a qualidade dos sinais recebidos é adequada para comandar uma BMI usando um descodificador fixo, tal como foi atrás descrito. A título de ilustração exemplificativa, há um conjunto de dezassete (17) eléctrodos 618 que estão sob consideração, relativamente ao conjunto total de eléctrodos (o conjunto de análise) com que o utilizador 602 foi equipado. Considerando o conjunto de análise, os modelos de realização da presente invenção analisam os sinais neurais a partir de diversas combinações de subconjuntos de eléctrodos constituindo o conjunto de análise, por exemplo subconjuntos de cinco (5) eléctrodos. Partindo de um conjunto de dezassete eléctrodos no conjunto de análise, a análise dos sinais neurais recebidos ao longo de um período de tempo e provenientes de combinações de cinco subconjuntos de eléctrodos proporciona uma gama de seis mil cento e oitenta e oito (6188) possíveis subconjuntos para analisar.
Aplicando uma metodologia de selecção de eléctrodos e critérios de selecção 616, tais como foram respectivamente descritos em associação com a Figura 5A e a Figura 5B, é seleccionado um subconjunto de cinco eléctrodos para ser usado na recolha de sinais neurais, em conjugação com a operação da BMI que o processador neural proporciona. De acordo com o presente exemplo, existiam inicialmente dezassete eléctrodos no conjunto de análise. A partir do conjunto de análise, foi seleccionado um subconjunto de cinco eléctrodos que satisfaziam a metodologia de selecção, o qual inclui os eléctrodos 606, 608, 610, 612 e 614. Os especialistas nesta tecnologia percebem que, da aplicação de quaisquer metodologias de selecção específicas, incluindo as aqui descritas, pode resultar a selecção de um subconjunto diferente de eléctrodos para um qualquer utilizador, embora seja possível que dois utilizadores distintos utilizem o mesmo subconjunto de eléctrodos.
A Figura 7 apresenta um diagrama de fluxos que ilustra um método para aquisição e processamento de sinais por um descodificador fixo, utilizando rácios de potência de canal de acordo com um modelo de realização da presente invenção. De acordo com o presente modelo de realização, um método para determinar rácios de potência, para um ou mais canais dados, começa com a inicialização do sistema e o estabelecimento de limites de selecção de canal, passo 702. Contida dentro deste passo também se pode encontrar a selecção de um específico conjunto ou subconjunto de eléctrodos, a partir dos quais deverão ser adquiridos sinais neurais para processamento por um descodificador fixo.
método prossegue com uma verificação para determinar se existem adicionais canais a serem processados, passo 704, o que prova ser verdade na primeira iteração do ciclo e provoca a selecção de um primeiro canal para processamento. Enquanto o passo 704 provar ser verdadeiro, o fluxo de programa move-se para o passo 706 no qual o método atenua o ruído de sinal no canal seleccionado que foi dado. De acordo com um modelo de realização, o método implementa um filtro de ranhura (notch filter) - também designado como um filtro de paragem de banda ou de rejeição de banda - para atenuar frequências em torno de um determinado valor, por exemplo 50 Hz. O método aplica ainda um filtro ao sinal, o qual pode consistir num filtro Butterworth. De acordo com um modelo de realização, o filtro Butterworth é de ordem quatro (4) entre um de 1 Hz e 50 Hz. A utilização de um filtro Butterworth no passo 708 permite que os sinais neurais de entrada num dado canal tenham uma resposta de frequência tão plana quanto possível do lado de fora da banda passante.
De acordo com o modelo de realização da Figura 7, o método prossegue através da remoção da tendência linear ou valor médio relativamente a um determinado sinal neural, passo 710, o que pode ser conseguido pelo método através da utilização de uma função de eliminação de tendência para remover tendências de longo prazo relativamente ao sinal neural de entrada, e enfatizar mudanças de curto prazo. A lógica de programação que implementa o método executa um cálculo para determinar a densidade espectral do sinal neural resultante no canal, passo 712, e a potência média determinada para um certo número de bandas contidas dentro do sinal, passo 714. De acordo com um modelo de realização, o método calcula potências médias para as seguintes bandas: beta (β) (14 Hz a 24 Hz) , gama (/) (30 Hz a 80 Hz) , delta (δ) (1 Hz a 4 Hz) e teta (Θ) (4 Hz a 8 Hz) . Assim que o método determinar a potência média para bandas seleccionadas num dado canal, passo 714, o fluxo de programa regressa ao passo 704 e o método realiza mais uma verificação para determinar se existem canais adicionais que requeiram processamento.
Após conclusão do processamento de sinais neurais nos canais que foram disponibilizados pelo subconjunto de eléctrodos seleccionado, o método conclui com a determinação dos rácios de potência para tais canais, passo 716. De acordo com um modelo de realização da invenção, o método da Figura 7 implementa um rácio de potência de acordo com a seguinte equação 1:
, . Υ'θ racio= — β·δ Equação 1
Utilizando o rácio de potência da equação 1, o método proporciona um valor de potência global ao processador neural para o canal dado, de acordo com os níveis de potência das bandas discretas sob consideração.
Os especialistas nesta tecnologia dever-se-ão aperceber que o método da Figura 7 não requer quaisquer específicos rácios ou combinações de potência de diferentes frequências de sinais neurais de entrada; os rácios de potência das bandas presentemente descritos são dados a título de exemplo e não pretendem ser limitativos. Por outro lado, o descodificador fixo pode utilizar informação adicional para além dos níveis de potência de bandas específicas, por exemplo características no domínio do tempo tais como amplitudes de sinal, etc. 0 seguinte pseudocódigo exemplificativo de acordo com um modelo de realização da presente invenção implementa os passos de processamento expostos na Figura 7:
definir parâmetros de filtro Butterworth aplicar filtro Buterworth ao sinal definir parâmetros de filtro de ranhura aplicar filtro de ranhura ao sinal % Spectrogram para Canal i em NCanais eliminar tendência de sinal = eliminar tendência (dados (Canal i)) calcular PSD de eliminar tendência de sinal fim % Calcular potência média de bandas beta = média (psd [14:24]); gama = média (psd [30:80]);
delta = média (psd [1:4]);
teta = média (psd [4:8]);
% Calcular rácio de potência
Rácio de potência = (teta * gama)/(delta * beta);
posição = log (soma (rácio de potência [Canais seleccionados]));
Certos modelos de realização da presente invenção utilizam níveis de potência de bandas específicas dentro de um dado conjunto de sinais neurais para gerar um comando de saída. A Figura 8 apresenta um modelo de realização de um processo de alto nível para determinar um comando de saída, tendo em conta níveis de potência de bandas específicas dentro de um dado conjunto de sinais neurais. De acordo com o método da Figura 8, são seleccionadas para processamento bandas específicas dentro de um sinal, e são determinados níveis de potência média para as bandas, passos 802 e 804. 0 fluxo de programa prossegue com o cálculo de um rácio de potência para as bandas seleccionadas ao longo dos canais (eléctrodos) sob consideração, passo 806. 0 método utiliza os rácios de potência para os canais, a fim de determinar um sinal de comando de saída, passo 808, cuja lógica de negócio específica para tarefas pode ser utilizada para executar uma tarefa.
A Figura 9 apresenta um diagrama de fluxos que ilustra um método para processamento de sinais por um descodificador fixo a fim de determinar um comando de saída, de acordo com um modelo de realização da presente invenção. De acordo com o modelo de realização da Figura 9, o método pode começar com a selecção de um rácio de potência para um primeiro canal, passo 902, bem como a selecção de um rácio de potência para um outro canal, passo 904. 0 método calcula a soma dos rácios de potência para o primeiro canal e para o outro canal, passo 906, guardando a soma numa estrutura de memória, como por exemplo estruturas de memória transientes ou persistentes.
método executa uma verificação para determinar se existem canais adicionais para análise que façam parte do conjunto de canais sob consideração, passo 908. Se estiverem presentes canais adicionais, o método selecciona um rácio de potência para um subsequente canal, passo 910. Usando o rácio de potência para o subsequente canal e o valor em memória, o método calcula uma nova soma, passo 912, a qual é então de novo guardada na memória, passo 914. 0 fluxo de programa percorre o ciclo de acordo com os passos 908 a 914, até que a verificação no passo 908 prove ser falsa, indicando assim que não estão presentes canais adicionais para análise.
Assim que a verificação no passo 908 provar ser falsa, indicando que não existem canais adicionais para análise, o fluxo de programa prossegue com o cálculo do logaritmo decimal da soma em memória, passo 916, o qual é emitido pelo descodif icador fixo como um sinal de comando. De acordo com um modelo de realização da invenção, o método da Figura 9 determina um comando de saida de acordo com a seguinte equação 2:
comando= log(^hn=1 ráciochnW)
Equação 2
As Figuras 1 a 9 são ilustrações conceptuais que permitem uma explicação da presente invenção. Os especialistas nesta tecnologia irão compreender que diversos aspectos dos modelos de realização da presente invenção podem ser implementados em hardware, firmware, software, ou combinações dos mesmos. Em tais modelos de realização, os vários componentes e/ou passos serão implementados em hardware, firmware e/ou software para executar as funções da presente invenção. Ou seja, a mesma peça de hardware, firmware, ou módulo de software pode executar um ou mais dos blocos ilustrados (por exemplo, componentes ou passos) .
Em implementações de software, está armazenado software de computador (por exemplo, programas ou outras instruções) e/ou dados num meio legível por máquina fazendo parte de um produto de programa de computador, e é carregado para dentro de um sistema de computador, ou outro dispositivo ou máquina, através de um dispositivo de armazenamento removível, disco rígido, ou interface de comunicações. Os programas de computador (também chamados lógicas de controlo de computador, ou código de programa legível por computador) são armazenados numa memória principal e/ou secundária, e executados por um ou mais processadores (controladores, ou semelhantes) para fazer com que os - um ou mais - processadores executem as funções da invenção, tais como foram aqui descritas. Neste documento, as expressões meio legível por máquina, meio de programação de computador e meio utilizável por computador são usadas para fazer referência genérica a meios tais como: uma memória de acesso aleatório (RAM); uma memória só de leitura (ROM); uma unidade de memória removível (por exemplo um disco magnético ou óptico, dispositivo de memória flash, ou outros semelhantes); um disco rígido; ou outros semelhantes.
Refira-se que as antecedentes Figuras e exemplos não se destinam a limitar o âmbito da presente invenção a um único modelo de realização, já que são possíveis outros modelos de realização por intermédio de intercâmbio de alguns ou de todos os elementos descritos ou ilustrados. Para além disso, uma vez que certos elementos da presente invenção podem ser parcial ou totalmente implementados usando componentes já conhecidos, apenas estão descritas aquelas partes de tais componentes já conhecidos que são necessárias para uma compreensão da presente invenção, e são omitidas descrições detalhadas de outras partes de tais componentes já conhecidos de modo a não tornar a invenção pouco clara. Na presente especificação, um modelo de realização mostrando um componente singular não deve necessariamente ficar limitado a outros modelos de realização incluindo uma multiplicidade de componentes idênticos, e vice-versa, a menos que neste documento tal seja explicitamente indicado. Por outro lado, os Requerentes não pretendem que seja atribuído a qualquer termo na especificação ou nas reivindicações um significado invulgar ou especial, a menos que seja explicitamente referido como tal. Além disso, a presente invenção abrange componentes que são presentemente conhecidos e o venham a ser no futuro, equivalentes aos componentes já conhecidos que aqui foram referidos a título de ilustração.
A descrição anterior dos modelos de realização específicos irá assim revelar a natureza geral da invenção de forma tão completa, que outras pessoas poderão - por aplicação de conhecimentos dentro das capacidades na(s) relevante(s) tecnologias(s) (incluindo o conteúdo dos documentos citados e aqui incorporados por referência) - modificar facilmente e/ou adaptar a várias aplicações tais modelos de realização específicos, sem experimentação indevida, não saindo do conceito geral da presente invenção. Pretende-se por conseguinte que tais adaptações e modificações sejam consideradas dentro do significado e gama de itens equivalentes aos modelos de realização divulgados, com base nos ensinamentos e orientações aqui apresentados. Dever-se-á esclarecer que a fraseologia ou terminologia aqui utilizada tem o propósito de descrição e não de limitação, pelo que a terminologia ou fraseologia da presente especificação deve ser interpretada pelo especialista à luz dos ensinamentos e orientações aqui apresentados, em combinação com os conhecimentos de um especialista na(s) relevante(s) tecnologia(s).
Embora tenham sido anteriormente descritos vários modelos de realização da presente invenção, deve ser entendido que eles foram apresentados a título de exemplo, e não como limitação. Será perceptível para um especialista na(s) relevante (s) tecnologia(s) que podem ser feitas várias alterações na forma e detalhes, sem nos afastarmos do espírito e âmbito da invenção. Assim, a presente invenção não deve ficar limitada por qualquer um dos modelos de realização exemplificativos anteriormente descritos, antes devendo ser definida apenas de acordo com as reivindicações seguintes e seus equivalentes.

Claims (20)

1 . Um método para geração de um comando de saída por um processador neural através da utilização de uma interface cérebro-máquina de aprendizagem de operante, caracterizado por compreender:
selecção de um ou mais eléctrodos a partir de uma multiplicidade de eléctrodos, por intermédio de execução de código de programa no processador neural;
recepção de sinais neurais no processador neural provenientes de um ou mais eléctrodos seleccionados;
- estabelecimento de limites com base nos sinais neurais recebidos;
- estabelecimento de um temporizador no processador neural para definir uma velocidade de comandos de saída;
- enquanto o temporizador não tiver expirado, execução do código de programa pelo processador neural para recuperar e processar os sinais neurais recebidos; e
- cálculo de um comando de controlo através da utilização de um descodificador fixo no processador neural, o qual recebe os sinais neurais recuperados e processados como entrada.
2. 0 método de acordo com a reivindicação 1, caracterizado por a recepção de sinais neurais pelo processador neural incluir a recepção de sinais neurais provenientes do operante.
3. 0 método de acordo com a reivindicação 1, caracterizado por compreender a disponibilização do comando de controlo, por intermédio da execução de código
-2 de programa no processador neural, como uma entrada para um subsequente componente de hardware ou software.
4. 0 método de acordo com a reivindicação 1, caracterizado por compreender a realização de uma verificação, por intermédio da execução de código de programa no processador neural, para determinar se uma tarefa em curso está concluída.
5. 0 método de acordo com a reivindicação 1, caracterizado por compreender o estabelecimento do temporizador, por intermédio da execução de código de programa no processador neural, para definir uma subsequente velocidade de comandos de saída, e recuperação e processamento dos sinais neurais recebidos enquanto o temporizador não tiver expirado.
6. 0 método de acordo com a reivindicação 1, caracterizado por a selecção de um ou mais eléctrodos a partir de uma multiplicidade de eléctrodos compreender:
- apresentação de uma tarefa ao operante, sob o controlo da execução de código de programa no processador neural;
- aquisição de actividade neural do operante, durante a apresentação da tarefa pelo processador neural;
aplicação de critérios de selecção pelo processador neural, relativamente à actividade neural adquirida; e selecção, pelo processador neural, de um ou mais eléctrodos que ultrapassem os critérios de selecção.
7. 0 método de acordo com a reivindicação 6, caracterizado por a aquisição de actividade neural compreender a iniciação de um temporizador de selecção de
-3 eléctrodos, por intermédio da execução de código de programa no processador neural, a fim de definir uma janela temporal sobre a qual o processador neural deverá adquirir actividade neural.
8. 0 método de acordo com a reivindicação 6, caracterizado por a selecção pelo processador neural compreender a selecção de um subconjunto de eléctrodos, pelo processador neural, que ultrapassem os critérios de selecção.
9. 0 método de acordo com a reivindicação 1, caracterizado por o processamento dos sinais neurais recebidos compreender:
- atenuação do ruído de sinal em um ou mais canais contidos dentro dos sinais neurais recebidos;
- cálculo de uma densidade espectral para os - um ou mais - canais atenuados;
- determinação da potência média em uma ou mais bandas seleccionadas para os - um ou mais - canais; e
- determinação dos rácios de potência para os, um ou mais, canais.
10. 0 método de acordo com a reivindicação 9, caracterizado por a determinação dos rácios de potência para um dado canal, a partir dos, um ou mais, canais, ser feita por intermédio da execução de código de programa no processador neural, de acordo em que β consiste numa banda numa banda na gama 30-80Hz, δ l-4Hz e Θ consiste numa banda ycom o calculo do racio —, β·δ' na gama 14-24Hz, γ consiste consiste numa banda na gama na gama 4-8Hz.
11. 0 método de acordo com a reivindicação 9, caracterizado por o cálculo do comando de controlo incluir a acção em que o processador neural é instruído pelo código de programa a fim de calcular log(^hn=ir^ciochn(n)) > que consiste na soma de rácios correspondentes a canais 1 a n, em que um rácio=— e em que β consiste numa banda na gama
14-24Hz, γ consiste numa banda na gama 30-80Hz, δ consiste numa banda na gama l-4Hz e Θ consiste numa banda na gama
4-8Hz.
12. Meios não-transitórios legíveis por computador compreendendo código de programa que, quando executado por um processador programável, promove a execução de um método para geração de um comando de saída por um processador neural, através da utilização de uma interface cérebromáquina de aprendizagem de operante, caracterizados por o código de programa incluir:
- código de programa para seleccionar um ou mais eléctrodos a partir de uma multiplicidade de eléctrodos, por intermédio de execução de código de programa no processador neural;
c ódigo de programa para receber sinais neurais no processador neural, partir de um ou mais eléctrodos seleccionados;
- código de programa para estabelecer limites com base nos sinais neurais recebidos;
- código de programa para estabelecer um temporizador no processador neural, a fim definir uma velocidade de comandos de saída;
- código de programa para recuperar e processar os sinais neurais recebidos pelo processador neural, enquanto o temporizador não tiver expirado; e
- código de programa para calcular um comando de controlo, através da utilização de um descodificador fixo no processador neural que recebe os sinais neurais recuperados e processados como entrada.
13. Os meios legíveis por computador de acordo com a reivindicação 12, caracterizados por compreender um código de programa para proporcionar o comando de controlo como uma entrada para um subsequente componente de Hardware ou software.
14. Os meios legíveis por computador de acordo com a reivindicação 12, caracterizados por compreender um código de programa para execução de uma verificação no processador neural, a fim de determinar se uma tarefa em curso está concluída.
15. Os meios legíveis por computador de acordo com a reivindicação 12, caracterizados por compreender um código de programa para estabelecer o temporizador a fim de definir uma subsequente velocidade de comandos de saída, e código de programa para recuperar e processar os sinais neurais recebidos enquanto o temporizador não tiver expirado.
16. Os meios legíveis por computador de acordo com a reivindicação 12, caracterizados por a selecção de um ou mais eléctrodos a partir de uma multiplicidade de eléctrodos compreender:
-6 código de programa para apresentar uma tarefa ao operante;
- código de programa para adquirir actividade neural do operante, durante a apresentação da tarefa pelo processador neural;
- código de programa para aplicar critérios de selecção, por parte do processador neural, à actividade neural adquirida; e
- código de programa para seleccionar, pelo processador neural, um ou mais eléctrodos que ultrapassam os critérios de selecção.
17. Os meios legíveis por computador de acordo com a reivindicação 16, caracterizados por o código de programa para aquisição de actividade neural incluir um código de programa para iniciar um temporizador de selecção de eléctrodos, a fim de definir uma janela sobre a qual o processador neural deverá adquirir actividade neural.
18. Os meios legíveis por computador de acordo com a reivindicação 16, caracterizados por o código de programa para selecção de um ou mais eléctrodos incluir um código de programa para seleccionar um subconjunto de eléctrodos, pelo processador neural, que ultrapassem os critérios de selecção.
19. Os meios legíveis por computador de acordo com a reivindicação 12, caracterizados por o código de programa para processar os sinais neurais recebidos incluir:
- código de programa para atenuação do ruído de sinal em um ou mais canais contidos dentro dos sinais neurais recebidos;
-7 código de programa para cálculo de uma densidade espectral para os - um ou mais - canais atenuados;
- código de programa para determinação da potência média em uma ou mais bandas seleccionadas para os - um ou mais canais; e código de programa para determinação dos rácios de potência para os - um ou mais - canais.
20. Os meios legíveis por computador de acordo com a reivindicação 19, em que o código de programa para o cálculo do comando de controlo inclui código de programa para calcular log(^hn=1 ráciochn(nÇ), que consiste na soma de racros correspondentes a canais 1 a n, em que um racio=— β·δ e em que β consiste numa banda na gama 14-24Hz, γ consiste numa banda na gama 30-80Hz, δ consiste numa banda na gama l-4Hz e Θ consiste numa banda na gama 4-8Hz.
PT108690A 2015-07-13 2015-07-13 Sistema e método para interface cérebro-máquina de aprendizagem de operante PT108690B (pt)

Priority Applications (12)

Application Number Priority Date Filing Date Title
PT108690A PT108690B (pt) 2015-07-13 2015-07-13 Sistema e método para interface cérebro-máquina de aprendizagem de operante
US15/744,865 US10512410B2 (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface by receiving electrodes and neural signals at neural processor
CA2992390A CA2992390C (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface
PCT/PT2016/050017 WO2017010899A1 (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface
EP16760207.7A EP3322333A1 (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface
JP2018521723A JP6663007B2 (ja) 2015-07-13 2016-07-13 オペラント学習ブレインマシンインタフェースのためのシステムおよび方法
EP16760779.5A EP3322334A1 (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface
CN201680051953.8A CN108289634B (zh) 2015-07-13 2016-07-13 用于操作者学习脑机接口的系统和方法
CA2992432A CA2992432A1 (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface
PCT/IB2016/054179 WO2017009787A1 (en) 2015-07-13 2016-07-13 System and method for operant learning brain machine interface
HK18113510.4A HK1254426A1 (zh) 2015-07-13 2018-10-22 用於操作學習的腦機接口的系統和方法
HK19100592.1A HK1258232A1 (zh) 2015-07-13 2019-01-14 用於操作者學習腦機接口的系統和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PT108690A PT108690B (pt) 2015-07-13 2015-07-13 Sistema e método para interface cérebro-máquina de aprendizagem de operante

Publications (2)

Publication Number Publication Date
PT108690A PT108690A (pt) 2017-01-13
PT108690B true PT108690B (pt) 2023-04-04

Family

ID=56853778

Family Applications (1)

Application Number Title Priority Date Filing Date
PT108690A PT108690B (pt) 2015-07-13 2015-07-13 Sistema e método para interface cérebro-máquina de aprendizagem de operante

Country Status (8)

Country Link
US (1) US10512410B2 (pt)
EP (2) EP3322334A1 (pt)
JP (1) JP6663007B2 (pt)
CN (1) CN108289634B (pt)
CA (2) CA2992432A1 (pt)
HK (2) HK1254426A1 (pt)
PT (1) PT108690B (pt)
WO (2) WO2017010899A1 (pt)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITUB20153680A1 (it) * 2015-09-16 2017-03-16 Liquidweb Srl Sistema di controllo di tecnologie assistive e relativo metodo
JP6761141B2 (ja) 2017-08-03 2020-09-23 ザ ユニバーシティー オブ メルボルンThe University of Melbourne 組織の検知および刺激の少なくともいずれかを行う医療デバイス
US11093038B2 (en) 2019-05-14 2021-08-17 Synchron Australia Pty Limited Systems and methods for generic control using a neural signal
US11023046B2 (en) * 2019-07-02 2021-06-01 Hrl Laboratories, Llc System and method for continual decoding of brain states to multi-degree-of-freedom control signals in hands free devices
CN110251065A (zh) * 2019-07-17 2019-09-20 西安交通大学 基于运动视觉诱发电位的对比敏感度检测方法
CN110251799B (zh) * 2019-07-26 2021-07-20 深圳市康宁医院(深圳市精神卫生研究所、深圳市精神卫生中心) 神经反馈治疗仪
EP4048371A4 (en) 2019-10-29 2024-03-13 Synchron Australia Pty Ltd SYSTEMS AND METHODS FOR CONFIGURING A BRAIN CONTROL INTERFACE USING DATA FROM DEPLOYED SYSTEMS
US11567574B2 (en) * 2020-09-22 2023-01-31 Optum Technology, Inc. Guided interaction with a query assistant software using brainwave data
CN112223288B (zh) * 2020-10-09 2021-09-14 南开大学 一种视觉融合的服务机器人控制方法
WO2023240043A1 (en) * 2022-06-07 2023-12-14 Synchron Australia Pty Limited Systems and methods for controlling a device based on detection of transient oscillatory or pseudo-oscillatory bursts

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7209788B2 (en) * 2001-10-29 2007-04-24 Duke University Closed loop brain machine interface
US8812096B2 (en) * 2005-01-10 2014-08-19 Braingate Co., Llc Biological interface system with patient training apparatus
WO2008097200A1 (en) * 2007-02-09 2008-08-14 Agency For Science, Technology And Research A system and method for classifying brain signals in a bci system
US9814885B2 (en) * 2010-04-27 2017-11-14 Medtronic, Inc. Stimulation electrode selection
US20110307079A1 (en) * 2010-04-29 2011-12-15 Board Of Trustees Of Michigan State University, The Multiscale intra-cortical neural interface system
FR2962821B1 (fr) * 2010-07-13 2013-02-22 Commissariat Energie Atomique Procede et systeme de classification de signaux neuronaux, et procede de selection d'electrodes pour commande neuronale directe.
US20130130799A1 (en) * 2010-07-30 2013-05-23 Marc Van Hulle Brain-computer interfaces and use thereof
US9095266B1 (en) * 2010-08-02 2015-08-04 Chi Yung Fu Method for treating a patient
JP5544620B2 (ja) * 2010-09-01 2014-07-09 独立行政法人産業技術総合研究所 意思伝達支援装置及び方法
CN102098639B (zh) * 2010-12-28 2013-09-11 中国人民解放军第三军医大学野战外科研究所 脑机接口短消息发送控制装置及发送控制方法
CN102426768B (zh) * 2011-08-16 2016-02-10 海尔集团公司 基于体电波控制电子设备的系统及方法
JP5320543B2 (ja) * 2011-11-08 2013-10-23 株式会社国際電気通信基礎技術研究所 脳機能亢進支援装置および脳機能亢進支援方法
WO2014025772A2 (en) 2012-08-06 2014-02-13 University Of Miami Systems and methods for responsive neurorehabilitation
JP6322194B2 (ja) * 2012-08-15 2018-05-09 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ニューロフィードバックシステム
US20160129251A1 (en) * 2013-06-07 2016-05-12 Brainique Ag Systems and methods for the exchange of data related to noninvasive electrical brain stimulation
JP5681917B2 (ja) * 2013-06-11 2015-03-11 株式会社国際電気通信基礎技術研究所 脳機能亢進支援装置および脳機能亢進支援方法
WO2015003118A1 (en) * 2013-07-03 2015-01-08 University Of Houston Mehtods for closed-loop neural-machine interface systems for the control of wearable exoskeletons and prosthetic devices
CN103699230B (zh) * 2014-01-14 2016-08-17 东南大学 一种基于图标脑电控制的数字界面交互方法
WO2016118811A2 (en) * 2015-01-24 2016-07-28 The Trustees Of The University Of Pennsylvania Method and apparatus for improving cognitive performance

Also Published As

Publication number Publication date
US20180199840A1 (en) 2018-07-19
WO2017009787A1 (en) 2017-01-19
HK1254426A1 (zh) 2019-07-19
CA2992432A1 (en) 2017-01-19
PT108690A (pt) 2017-01-13
JP2018530843A (ja) 2018-10-18
WO2017010899A1 (en) 2017-01-19
HK1258232A1 (zh) 2019-11-08
CN108289634A (zh) 2018-07-17
CA2992390A1 (en) 2017-01-19
EP3322333A1 (en) 2018-05-23
EP3322334A1 (en) 2018-05-23
CA2992390C (en) 2023-09-19
JP6663007B2 (ja) 2020-03-11
US10512410B2 (en) 2019-12-24
CN108289634B (zh) 2021-02-12

Similar Documents

Publication Publication Date Title
PT108690B (pt) Sistema e método para interface cérebro-máquina de aprendizagem de operante
Enderle Models of horizontal eye movements, Part I: Early models of saccades and smooth pursuit
US10251591B2 (en) Methods, apparatuses and systems for diagnosis and treatment of mood disorders
US20120221075A1 (en) Computerized system or device and method for diagnosis and treatment of human, physical and planetary conditions
JP2011186667A (ja) 機器制御装置、機器システム、機器制御方法、機器制御プログラム、および記録媒体
CN109077752A (zh) 移动机器臂
JP7289082B2 (ja) 理学療法用の仮想環境
US11810474B2 (en) Systems and methods for neural pathways creation/reinforcement by neural detection with virtual feedback
Torner et al. Multipurpose virtual reality environment for biomedical and health applications
Draaisma et al. Neurotechnologies as tools for cognitive rehabilitation in stroke patients
US20220130507A1 (en) Brain stimulation system, device, arrangement and corresponding method for treating aphasia
WO2021112748A1 (en) A method for determining a risk score for a patient
Ferche et al. Deep understanding of augmented feedback and associated cortical activations, for efficient virtual reality based neuromotor rehabilitation
CN112402767A (zh) 眼动脱敏再加工干预系统及眼动脱敏再加工干预方法
KR20180092680A (ko) 웨어러블 기기를 이용하여 사용자의 건강을 관리하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
US20230062326A1 (en) Guided rehabilitation to relearn motor control using neuromuscular electrical stimulation
CN113040745A (zh) 一种针对儿童无痛检查与治疗的主动引导方法和系统
Hermosillo et al. Motor Planning Influences the Perceived Timing of Vibrotactile Stimuli in an Amplitude-Dependent Manner
KR20230069304A (ko) 보행운동 관리 서비스 시스템 및 방법
KR20230085597A (ko) 환자 맞춤형 방사선 치료의 가상 체험 방법 및 시스템
Conte Alcaraz Intelligent signal processing for digital healthcare monitoring
Cons et al. Intelligent virtual environment for treating anxiety exploring the Eye Movement Desensitization and Reprocessing technique
CN116570466A (zh) 上肢康复训练系统及其控制方法
JP2022542599A (ja) 信号トリガー式介入デバイス制御
JP2022525805A (ja) 仮想哺乳動物を用いて哺乳動物の生理学的行動をシミュレートするための装置、プロセス、及びコンピュータプログラム

Legal Events

Date Code Title Description
BB1A Laying open of patent application

Effective date: 20161216

FG3A Patent granted, date of granting

Effective date: 20230329