Skip to content
/ Skeye Public

Skeye is a framework for the study of the multichannel neuron model and related theories proposed by John Harris.

License

Notifications You must be signed in to change notification settings

xperroni/Skeye

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Skeye is a programming framework developed specifically for the purpose of studying the multichannel neuron model. Currently in its early stages of development, it is written in Python, on top of third-party packages NumPy and SciPy. The combination of Python, NumPy and SciPy makes for agile development without sacrificing speed too much. Its architecture can be divided in two layers: the base package skeye implements the platform's core logic as a loosely-coupled library of processing functions, which in turn are used as building blocks to implement the skeye.cogs framework. The motivation for this division is that no one framework will be applicable to all problems: therefore, rather than try and shoehorn problems into a model that doesn't quite fit, it's best if the user can take a step back and tap into a set of building blocks from which she can build a more customized solution. It also provides a foundation for additional frameworks to be built into the platform in the future.

Functions in the base package can be divided in three categories:

  • Data processing algorithms -- these implement the biological- and cognitive-inspired algorithms that prompted the development of Skeye;
  • Data processing facilities -- these implement common operations that simplify the construction of more complex functions;
  • Programming facilities -- these implement common programming patterns (e.g. conversions between data types) that simplify basic programming tasks.

Data processing algorithms include functions such as bayer(image), which converts a 3-dimensional color image to a 2-dimensional Bayer mosaic, and templatesearch(image, template), which searches for a template within a larger image. Data processing facilities include angle(a, b), which returns the cosine of the angle between two vectors a and b. Programming facilities include snapshot(image), which converts an image in the Python Imaging Library (PIL) format to a NumPy equivalent, and effectors.desktop(command, *arguments, **options), which implements a small set of desktop automation operations.

The skeye.cogs package is centered around the cogbot class (short for cognitive robot). Cogbots are simple programmable agents that can be described in terms of a predefined memory defining the agent's initial state, and a sequence of commands that implement its behavior, interacting with both the memory and surrounding environment as they run. When a Cogbot is activated, it executes its commands sequentially, returning a list of the commands' outputs after it finishes.

About

Skeye is a framework for the study of the multichannel neuron model and related theories proposed by John Harris.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages