Visionic is designed to assist the elderly by integrating advanced computer vision and audio processing technologies. By employing facial recognition, Visionic facilitates the identification of people and objects. Additionally, it utilizes Optical Character Recognition (OCR) to detect text and converts it into speech using Text-to-Speech (TTS) systems. This dual functionality provides significant support for individuals with vision impairments.
- Prerequisites
- Getting Started
- Camera Configuration
- Features
- Saving Video Output
- Contributing
- License
Ensure you have all the necessary libraries and dependencies installed. These are listed in ./requirements.txt
.
pip install -r requirements.txt
- Open the
Visionic_V3.0.0
directory. - Run the CLI:
python main.py
- Wait for the process to complete.
- Open the
Visionic_V3.1.0
directory. - Navigate to the Flask directory:
cd Flask
- Run the web application:
python main.py
- Open the application in your designated port.
IMPORTANT!!
Visionic will automatically use your webcam for detection. If you have an external camera, connect it to your system via WIFI or BLUETOOTH.
If your external camera is not detected, configure the webcam using videoCapture(x)
where x
is an integer value (0-x), corresponding to your camera device.
To process a video, replace videoCapture(0)
with the video path. main.py
provides a placeholder for video file input called PATH_TO_TEST
. Place your video in the test folder and modify PATH_TO_TEST
to match your filename.
Visionic allows for easy training:
- Press the training menu then input a name.
- Scan a 180° view of the face from left to right. This works similarly to Apple FaceID, where a live video feed is shown, and the user rotates their face while Visionic automatically captures and processes the face.
IMPORTANT:
- Ensure you are the only face in the frame during training to avoid misleading detection.
- The dataset must be in a readable format (
.png
,.jpg
,.jpeg
).
Visionic automatically detects and recognizes faces. To quit the video interface, press 'q'. It might take a few moments to fully process, so please DO NOT SPAM.
For detecting text, press 't' and wait for the frame to be processed. It might take a few moments before the audio starts playing, so please DO NOT SPAM.
To save a video:
- Alter the
SAVE_CONFIG
located inmain.py
toTrue
orFalse
based on preference. - Note that the video output will be saved in the
./output
directory.
IMPORTANT: Please modify the output name to avoid overwriting existing files.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.