Giter VIP home page Giter VIP logo

blindaid's Introduction

BlindAid

Capstone Project: Assist the blind in moving around safely by warning them of impending obstacles using depth sensing, computer vision, and tactile glove feedback.

CONFIGURATION MODES: BlindAid can be launched and configured in 3 ways.

Arguments: Launch from command line, configured with no interaction by passing arguments.
User Menu: Launch without arguments, configured through a user interactive menu interface.
Shortcuts: To simplify mode selection, create desktop shortcuts with argument combinations.

USAGE: Summary of flags by category.

COMMAND     [FLAGS]                                                 (CATEGORY)
blindaid    [-a | -c | -t <path> | -s <path> -r [delay] [path]]     (operation mode selection)
            [-d -v [level] -l]                                      (debugging performance options)
            [-p <port> -cc <count>]                                 (miscellaneous settings)
            [-do {fr | hp} -tl {dl | bd}]                           (processing module selection)
            [-coloroff | -depthoff]                                 (image channel selection)

DETAILS: Description of flags and parameters.

-FLAG [ARGUMENT]    DESCRIPTION             (DETAILS)                                       [CHANGES]
-a                  Realtime Mode           (bypass menu, no user interaction)              [Camera ON /Glove ON]
-c                  Camera Only             (disable glove, print control to screen)        [Camera ON / Glove OFF]
-t <path>           Glove Only              (disable camera, load images from disk)         [Camera OFF/Glove ON]
-s <path>           Simulate Mode           (disable performance optimizations)             [Camera OFF/Glove OFF]
-r [delay] [path]   Record Enabled          (save images to disk, 0 for manual)             [Record ON]
-d                  Display Images          (show color/depth images to screen)             [Display ON]
-v [level]          Verbose Messages        (print info messages to screen)                 [Logging ON]
-l                  Low Performance         (disable multi threading optimizations)         [Threads OFF]
-p <port #>         Set COM Port Number     (for Bluetooth glove connection)
-cc [count]         Set Consecutive Count   (number of detections before warning)
-do {fr | hp}       Depth Obstacle Mode     (fixed regions/hand position)                   [DepthObstacle FR/HP]
-tl {dl | bd}       Traffic Light Mode      (deep learning/blob detector)                   [TrafficLight DL/BD]
-coloroff           Depth Image Only        (disable color stream processing)               [Color OFF]
-depthoff           Color Image Only        (disable depth stream processing)               [Depth OFF]
-smooth [count]     Depth Frame Smoothing   (take consecutive max to reduce noise)
-conf [confidence]  Minimum Red Confidence  (confidence required to detect red)
-colordim <w> [h]   Color Image Dimensions  (color image width and height ratios)
-depthdim <w> [h]   Depth Image Dimensions  (depth image width and height ratios)
-ignore [ignore]    Percentile to Ignore    (near end of histogram ratio to ignore)
-valid [valid]      Valid Ratio Threshold   (minimum ratio of non-zero depth pixels)
-?                  Show Help               (show flag descriptions)

SCENARIOS: Useful argument combinations.

COMMAND  FLAGS              DESCRIPTION             (PURPOSE)
blindaid                    Menu Interface          (manual configuration, via interactive menu)
blindaid -a                 Realtime Final          (complete experience, for final product demo)
blindaid -c                 Capture Only            (to demo without glove, print control to screen)
blindaid -t path            Control Only            (to demo without camera, load images from disk)
blindaid -s path            Simulate All            (disable camera and glove, only test software loop)
blindaid -r ms              Record Images           (save images periodically, or 0 for manual trigger)
blindaid -a -d              Realtime w\Debug        (full experience w\image display, low performance)
blindaid -c -d              Capture w\Debug         (capture only w\display, to demonstrate processing)

Shortcut Icons

1) the FULL experience, NO display (for final demo).
2) disable glove, NO display (mainly for benchmarking).
3) FULL experience, WITH images on screen (to give in depth look into program).
4) disable glove, WITH images on screen (so we don't have to worry about the glove's battery/connection).

Modules

The various modules supported which can be enabled or disabled, along with key parameters associated to each.

DepthObstacle Detection

Uses the depth (IR Grayscale) image to detect the presence of nearby obstacles, warning the user of their position and distance via the glove's tactile feedback.

TrafficLight Detection

Uses the color (RGB) image to detect traffic lights in the upper portion of the frame, indicating to the user of their presence and color (red/yellow/green) via audible feedback.

blindaid's People

Contributors

alisb avatar patrobic avatar salma-aly avatar

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.