All Projects → DragonComputer → Cerebrum

DragonComputer / Cerebrum

Licence: MIT license
Crossmodal Supervised Learning Toolkit using High-Performance Extreme Learning Machines over the audio-visual-textual data

Programming Languages

python
139335 projects - #7 most used programming language
julia
2034 projects

Projects that are alternatives of or similar to Cerebrum

Enso
Hybrid visual and textual functional programming.
Stars: ✭ 5,238 (+12675.61%)
Mutual labels:  visual, textual
Parametric-Contrastive-Learning
Parametric Contrastive Learning (ICCV2021)
Stars: ✭ 155 (+278.05%)
Mutual labels:  supervised-learning
MLclass
My main Machine Learning class
Stars: ✭ 56 (+36.59%)
Mutual labels:  supervised-learning
VB.NET
🌐 In this repository included useful examples of Visual Basic completed on Studio 2017 Enterprise Edition, added diploma work of time since 2013. 👔
Stars: ✭ 35 (-14.63%)
Mutual labels:  visual
subwAI
Scripts for training an AI to play the endless runner Subway Surfers using a supervised machine learning approach by imitation and a convolutional neural network (CNN) for image classification
Stars: ✭ 86 (+109.76%)
Mutual labels:  supervised-learning
SQLServerTools
This repo is the home of various SQL-Server-Tools
Stars: ✭ 28 (-31.71%)
Mutual labels:  visual
S2DHM
Sparse-to-Dense Hypercolumn Matching for Long-Term Visual Localization (3DV 2019)
Stars: ✭ 64 (+56.1%)
Mutual labels:  visual
VisualBTC
Visual bitcoin private key generator - a tool for safe bitcoin private key generation with the physical coin, or create funny "patterns" keys for gifts to your friends.
Stars: ✭ 29 (-29.27%)
Mutual labels:  visual
MI-MVI 2016
Semestral project for the subject Methods of computational inteligence @ fit.cvut.cz
Stars: ✭ 24 (-41.46%)
Mutual labels:  supervised-learning
Heart disease prediction
Heart Disease prediction using 5 algorithms
Stars: ✭ 43 (+4.88%)
Mutual labels:  supervised-learning
dify
A fast pixel-by-pixel image comparison tool in Rust
Stars: ✭ 41 (+0%)
Mutual labels:  visual
GuneyOzsanOutThereMusicVideo
Procedurally generated, real-time, demoscene style, open source music video made with Unity 3D for Out There by Guney Ozsan.
Stars: ✭ 26 (-36.59%)
Mutual labels:  visual
keras-audio
keras project for audio deep learning
Stars: ✭ 37 (-9.76%)
Mutual labels:  supervised-learning
nih-chest-xrays
A collection of projects which explore image classification on chest x-ray images (via the NIH dataset)
Stars: ✭ 32 (-21.95%)
Mutual labels:  supervised-learning
Breast-cancer-risk-prediction
Classification of Breast Cancer diagnosis Using Support Vector Machines
Stars: ✭ 143 (+248.78%)
Mutual labels:  supervised-learning
ascii.js
A web-font-based rendering engine for displaying DOS/Amiga ASCII artwork on the web as text
Stars: ✭ 25 (-39.02%)
Mutual labels:  visual
lostX
(RSS 2018) LoST - Visual Place Recognition using Visual Semantics for Opposite Viewpoints across Day and Night
Stars: ✭ 60 (+46.34%)
Mutual labels:  visual
Visual-Attention-Model
Chainer implementation of Deepmind's Visual Attention Model paper
Stars: ✭ 27 (-34.15%)
Mutual labels:  visual
The-Supervised-Learning-Workshop
An Interactive Approach to Understanding Supervised Learning Algorithms
Stars: ✭ 24 (-41.46%)
Mutual labels:  supervised-learning
VisualBasicObfuscator
Visual Basic Code universal Obfuscator intended to be used during penetration testing assignments.
Stars: ✭ 115 (+180.49%)
Mutual labels:  visual

Cerebrum

Crossmodal Supervised Learning Toolkit using High-Performance Extreme Learning Machines over the audio-visual-textual data

Parts of The Human Brain (Psychology)

Parts of The Cerebrum:

  • Cerebrum

    • Vision
      • Amodal Perception
      • Color Perception
      • Depth Perception (in Future) (needs Stereoscopic Vision)
      • Form Perception (in Future) (needs Stereoscopic Vision)
      • Relative Velocity Perception (in Future) (needs Stereoscopic Vision)
    • Hearing
      • Speech Perception
      • Rhythmic Perception
      • Harmonic Perception (in Future) (WARNING: High Complexity)
      • Acceleration Perception (in Future) (needs 2 units of Triple Axis Accelerometer)
    • Language
      • Speech Analysis
      • Speech Synthesis
    • Multisensorial (Not Yet Available)
      • Touching (Not Yet Available)
        • Mechanic Perception (in Future) (needs lots of Pressure Sensors)
        • Heat & Cooling Perception (in Future) (needs lots of Temperature Sensors)
      • Tasting (Not Yet Available)
        • Solid/Fluid State Chemical Perception (in Future) (WARNING: Sensor Technology Not Available)
      • Smelling (Not Yet Available)
        • Gas State Chemical Perception (in Future) (WARNING: Sensor Technology Not Available)
    • Emotion (Not Yet Available)
      • Activation - Pleasant : Alerted, Excited, Elated, Happy
      • Pleasant - Deactivation : Contented, Serene, Relaxed, Calm
      • Deactivation - Unpleasant : Fatigued, Bored, Depressed, Sad
      • Unpleasant - Activation : Upset, Stressed, Nervous, Tense
  • Crossmodal: Defines time based relations between the types of perceptions

  • NeuralNet: Multiple Neural Network interconnects the parts of The Cerebrum

    • Current Speech Sequence to Current Visual Sequence
    • Current Speech Sequence to Next Speech Sequence
    • Current Visual Sequence to Current Speech Sequence
    • Current Vİsual Sequence to Next Visual Sequence
    • Current Speech Sequence to Text Sequence

For Multisensorial Part technological advancements are insufficient, currently. Because of this deficiency, there should be a False Reward & Punishment Mechanism for Reinforcement Learning

Mapping Morphometry and Connectedness of the Human Brain

Cerebrum's purpose is getting continuous data inputs from different types of perceptions in real time as memory sequences that triggered according to predefined threshold values and creating complex time based relations between those memories by Crossmodal logic and training multiple Artificial Neural Networks with this extracted data. Lastly creating outputs triggered by a stimuli, using pre-trained Artificial Neural Networks. - Mehmet Mert Yıldıran

Hebbian Theory

Experience-dependent spine formation and elimination.

High-Performance Extreme Learning Machines

Version

0.1.81

Installation

Install RethinkDB:

source /etc/lsb-release && echo "deb http://download.rethinkdb.com/apt $DISTRIB_CODENAME main" | sudo tee /etc/apt/sources.list.d/rethinkdb.list
wget -qO- https://download.rethinkdb.com/apt/pubkey.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install rethinkdb

Watch data flow (optional) - http://localhost:8080

Install Cerebrum:

sudo apt-get install python-pyaudio python-opencv python-scipy python-qt4 python-tk
sudo pip install cerebrum

Usage

Train with files:

cerebrum --video PATH_TO_VIDEO_FILE --audio PATH_TO_AUDIO_FILE --captions PATH_TO_CAPTIONS_FILE

Example:

cerebrum --video trainingData/Can\ You\ Make\ Someone\ Fall\ In\ Love\ With\ You-7_w_EA4u6oQ.mp4 --audio trainingData/Can\ You\ Make\ Someone\ Fall\ In\ Love\ With\ You-7_w_EA4u6oQ.wav --captions trainingData/Can\ You\ Make\ Someone\ Fall\ In\ Love\ With\ You-7_w_EA4u6oQ.en.vtt

Train with your cam (Not recommended):

cerebrum --video 0 --audio 0

On the first run Cerebrum will start with a few more seconds delay.

Screenshot

Screenshot

RethinkDB Web Interface

http://localhost:8080

Dependencies

Cerebrum uses a number of open source libraries to do the job:

  • Python 2.7 - a widely used general-purpose, high-level programming language.
  • RethinkDB - is the open-source, scalable database that makes building realtime apps dramatically easier.
  • PyAudio - provides Python bindings for PortAudio, the cross platform audio API.
  • OpenCV - (Open Source Computer Vision) is a library of programming functions mainly aimed at real-time computer vision.
  • wave Module - provides a convenient interface to the WAV sound format.
  • datetime Module - supplies classes for manipulating dates and times in both simple and complex ways.
  • os.path Module - the path module suitable for the operating system Python is running on, and therefore usable for local paths.
  • sys Module - provides access to some variables used or maintained by the interpreter and to functions that interact strongly with the interpreter. It is always available.
  • audioop Module - operates on sound fragments consisting of signed integer samples 8, 16 or 32 bits wide, stored in Python strings.
  • NumPy - the fundamental package for scientific computing with Python.
  • multiprocessing Module - a package that supports spawning processes using an API similar to the threading module.
  • imutils Module - a series of convenience functions to make basic image processing functions such as translation, rotation, resizing, skeletonization etc.
  • PyQtGraph - a pure-python graphics and GUI library built on PyQt4 / PySide and numpy
  • PyQt4 - a comprehensive set of Python bindings for Digia's Qt cross platform GUI toolkit.
  • time Module - provides various time-related functions.
  • argparse Module - makes it easy to write user-friendly command-line interfaces.
  • os Module - provides a portable way of using operating system dependent functionality.
  • subprocess Module - allows you to spawn new processes, connect to their input/output/error pipes, and obtain their return codes.
  • random Module - pseudo-random number generators for various distributions.
  • pysrt Module - SubRip (.srt) subtitle parser and writer
  • itertools Module - implements a number of iterator building blocks inspired by constructs from APL, Haskell, and SML. Each has been recast in a form suitable for Python

License

The MIT License (MIT)

Copyright (c) 2016 Mehmet Mert Yıldıran [email protected]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].