GithubHelp home page GithubHelp logo

brainactivity3d's People

Contributors

annitrolla avatar konstantint avatar kuz avatar skyfallen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

brainactivity3d's Issues

Have source location positions change smoothly rather than by jumping

I.e. let us say the old sources are at positions {p_1, p_2, p_3}.
The new sources are located at {q_1, q_2, q_3}.

  1. Match up p_i with q_i-s.
  2. Set the relevant destination for each source.
  3. At each animation frame move each source closer towards its current destination until it reaches it.

Bad file descriptor errors on Mac OS X

The pre-compiled binary for Mac OS X doesn't work correctly.
Invoking brainactivity displays the following messages:

Looking for device
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [1]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [2]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [3]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [4]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [5]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [6]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [7]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [8]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [9]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [10]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [11]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [12]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [13]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [14]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Restarting gevent.core.dispatch() after an error [15]: [Errno 9] Bad file descriptor
[warn] kevent: Bad file descriptor
Process Process-2:
Traceback (most recent call last):
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/multiprocessing.process", line 258, in _bootstrap
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/multiprocessing.process", line 114, in run
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/lib.epoc", line 20, in epoc_reader
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/gevent.hub", line 79, in sleep
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/gevent.hub", line 164, in switch
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/gevent.hub", line 179, in run
  File "core.pyx", line 398, in gevent.core.dispatch (gevent/core.c:6132)
IOError: [Errno 9] Bad file descriptor
Could not connect to the device. Running with dummy data.
/Users/hiroki-tamakoshi/Downloads/brainactivity/sklearn/decomposition/fastica_.py:107: UserWarning: FastICA did not converge. You might want to increase the number of iterations.
Traceback (most recent call last):
  File "_ctypes/callbacks.c", line 314, in 'calling callback function'
  File "<string>", line 251, in display
  File "<string>", line 279, in brain_scene
  File "<string>", line 508, in draw_electrodes
  File "<string>", line 546, in draw_electrode
  File "<string>", line 557, in draw_label
  File "/Users/kuz/Development/BrainActivity3D/binaries/MacOSX/build/onedir/out00-PYZ.pyz/OpenGL.platform.baseplatform", line 384, in __call__
OpenGL.error.NullFunctionError: Attempt to call an undefined function glutBitmapString, check for bool(glutBitmapString) before calling
Traceback (most recent call last):
  File "_ctypes/callbacks.c", line 314, in 'calling callback function'
  File "<string>", line 305, in idle
  File "<string>", line 248, in display
  File "<string>", line 630, in draw_background
  File "latebind.pyx", line 32, in OpenGL_accelerate.latebind.LateBind.__call__ (src/latebind.c:667)
  File "errorchecker.pyx", line 50, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError (src/errorchecker.c:854)
OpenGL.error.GLError: GLError(
    err = 1282,
    description = 'invalid operation',
    baseOperation = glUniform1i,
    cArguments = (0, 0)
)

EPOC Control Panel provided officially works as expected.

My environment is as follows:

Mac OS X Mavericks
SDK is the Research Edition 1.0.0.5
EPOC Control Panel 2.0.0.20

Fix ESC button functionality

I think it doesn't work now (yeah, it was working before) because now there are several threads which probably stay running while the rest of the program tries to stop.

Source localization makes everything very slow

Check if will be good enough if just replace it with data chunks of reasonable size (up to 1 sec). Current solution takes in 240 seconds of data, has every right to be slow. But still need to check this out (separate threads for graphics and data computations?)

Window reshape

  • update projection ratio
  • translate & scale the brain (? maybe scale is enough)

.mtl and textures

Traceback (most recent call last):
  File "brainactivity.py", line 111, in <module>
    main()
  File "brainactivity.py", line 107, in main
    init()
  File "brainactivity.py", line 44, in init
    init_model()
  File "brainactivity.py", line 101, in init_model
    brain = objloader.OBJ('al.obj', 'model', swapyz=False)
  File "/Users/kuz/Development/BrainActivity3D/lib/objloader.py", line 61, in __init__
    self.mtl = MTL(values[1], path)
  File "/Users/kuz/Development/BrainActivity3D/lib/objloader.py", line 18, in MTL
    surf = pygame.image.load(mtl['map_Kd'])
pygame.error: Couldn't open textures/fabric1.rgb

Aligning colors

It would be nice to align color of the message about the source with its color.

Make source localization meaningful

Problems with current one:

  • source can appear outside the brain (yeey!)
  • constant K does not stay same
  • after each computation it jumps to new location, should make it stable somehow

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.