Skip to content
SIMA: Sign Language Interpreter
Python Other Batchfile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
LDS_Console
LDS_GUI
SimaArduino
SimaSLI
.gitignore
LICENSE
README.md

README.md

SímaSLI OLD VERSION

NEW REPO AVAILABLE ON GITLAB

Our website: here


  1. Documentation
  2. SimaArduino
  3. SimaSLI v5.0
  4. Plugins
  5. Deprecated
    1. SimaSLI v4.0
    2. SimaSLI v3.0
    3. SimaSLI v2.0

Documentation

French presentations: here

Documentation is available on our website: here

SimaArduino

Features

  • Lists for fast processing/more readable
  • Flex sensors support
  • Microswitch support
  • 1 finger = 6 states
  • Serial communication
  • Sends code every 150ms

It acquires the value of flex sensors and "remaps" to make a multiple of 3. Then it tests in wich state is the finger. A code is sent to the host. (eg. 14111 represents "hello" in sign language)

Usage

Simply adjust the pins and it's ready to be upload on your board.

SimaSLI

The major update v5.0 brings a lot of changes, and new features.

The CLI version is now "legacy mode" or "console mode".

The GUI version is now the default version.

Features

  • Completely rewrote for Python 3.6
  • New GUI framework. Bye PyGame, hello Tcl-Tk (wich is more cross-platform).
  • XML Database file. No more txt file, fastest parsing.
  • Sima.core module. With all important python objects for words, database, arduino board.
  • New configuration system. Works with config object, wich can be modified during execution.
  • New interface. Hold your breath and take a look at the screenshots
  • Plugin loader. Yes! now we have a plugin system!
  • Fullscreen support. BYE DECORATIONS & TASK BAR!

Requirements

  • Python 3

Run setup.py and all dependences will be download.

  • Modules:

    • pyserial
    • appjar
    • lxml
  • OS: Windows, Mac or Linux.

Usage

Download latest version: v5.0 beta.

Run sima.py.

Then juste follow the instructions... (for example if there is an update, all is automatic. It just depends of your configuration!)

  • Launch arguments:

    -c or --console for leagacy mode.

    -n or --noplugins disable all plugins.

    -h or --help show help message.

Screenshots

Home screen SimaSLI HomeScreen Configuration SimaSLI Config Database SimaSLI Db Plugin Manager SimaSLI Plugins Learning mode SimaSLI Learn

Plugins

In SimaSLI v5.0 a plugin loader has been implemented. You can easely add and even create plugins.

It works with our global calls system.

For example:

def OnInit():
	logger.log(0, "myplugin.py --> OnInit()")

It will result with a nice message text in the console when Sima starts.

All functions are registred in the TestPlugin.py file (don't delete it).

When you create a plugin you must provide a XML file with the exact same name. And it must contain the plugin's informations.

<?xml version="1.0" encoding="UTF-8"?>
<plugin>
    <name>What a wonderful plugin</name>
    <description>it's my wonderful plugin</description>
    <version>0.1</version>
    <state>enabled</state>
</plugin>

Take a look of our plugins to understand the global calls system.

SimaVoice

Allows Voice Synthesis in SimaSLI v5.0

It's a new version of our old SimaVoice.

  • New audio engine: playsound. Bye PyGame mixer!
  • Voice Python Object.
  • It's a plugin. It means you can disable it or even delete the file and Sima will continue to works.

It uses 2 calls of global calls system:

OnInit()

OnInterpreter(word)

OnGuiClose(app)

SimaDirect

It's an update-checker and auto-updater.

Basically it's an integration of my downloader.py app wich is available in gist.

This plugin creates a new object Updater on initialization of Sima. Then if an update is available it launch the downloader.py with the right arguments.

It uses 2 calls of global calls system:

OnInit()

OnUpdate()

Deprecated

SimaSLI v4.0

/!\ Deprecated! Now please use Latest SimaSLI!

It's the final version of our interpreter! Basically it's a mix of the 2 sub-versions (CLI & GUI). The code as been revamped, and cleaned.

Features

  • SimaCore - One module: all the core features.
  • Config file
    • Arduino: port, baudrate, serial timeout.
    • Sima: database file's name, debug mode, debug code and test timeout
  • Launch arguments: CLI or GUI
  • Pretty logger

Requirements

  • Python 2.7~
  • Modules
    • pyserial
    • colorama
    • pygame

pip install pyserial

pip install colorama

pip install pygame

Dear Macintosh users, because of a problem related to the use of Pygame you can't use SimaSLI. Use SimaCLI instead.

Usage

Sources
  • Download the latest release (SimaSLI is the V4.X) here.
  • Extract it
  • Open a console in the root folder of SimaSLI
  • And launch it with

python main.py

Note that you can use some args:

python main.py -n or python main.py --nogui Disable the GUI

python main.py -n -v or python main.py --nogui --voice Enable the Voice Synthesis

python main.py --help Display help

Windows french users: do not use accents in the database ! (or if you really want to use them you have to configure your cmd): chcp 1252

Windows Application
  • Download the latest release (SimaSLI is the V4.X) here.
  • Extract it
  • Launch "main.exe"

Note that you can use some args:

main.exe -n or main.exe --nogui Disable the GUI

main.exe -n -v or main.exe --nogui --voice Enable the Voice Synthesis

Do not use accents in the database ! (or if you really want to use them you have to configure your cmd): chcp 1252

Screenshots

Main window/console SLI Main Nogui argument SLI Nogui Interpretation mode SLI Interpretation

SimaSLI v3.0

/!\ Deprecated! Now please use Latest SimaSLI!

It's the GUI version of our interpreter. And the latest release is available (SimaGUI is the V3.X) here.

Features

  • Graphical User Interface (SDL/Pygame)
  • Custom database file
  • Custom debug code
  • Timeout customizable
  • 3 modes (interpreter, learning, test)

Usage

Configure the tool with the config file. And launch it!

Screenshots

Main window

GUI Main

Interpretation mode

GUI Interpretation

Learning mode

GUI Learning

Test mode

GUI Test GUI Test

SimaSLI v2.0

/!\ Deprecated! Now please use Latest SimaSLI!

It's the first prototype. And the latest release is available (SimaCLI is the V2.X) here.

Features

  • Config file
  • 3 modes (interpreter, learning, test)
  • Works without serial communication

Usage

Configure Sima with the config file. Make sure you have a database file named db.txt and let's go! You can easely set new words with the learning mode: it will add the sign to the database. The database file can be edited too.

Screenshots

Main window CLI Main Interpretation mode CLI Interpretation Learning mode CLI Learning Test mode CLI Test

You can’t perform that action at this time.