OpenCV Python Live Demo via Flask

About

This is a portfolio of the Python with OpenCV via Flask and IOT solution for controlling various devices, machines remotely.
The demo system is built by interlocking all of the following individual machines and devices.



1. ODROID-XU4 as the OpenCV performer and web frame generator via Flask

Samsung Exynos5422 ARM® Cortex™-A15 Quad 2.0GHz/Cortex™-A7 Quad 1.4GHz

2Gbyte LPDDR3 RAM PoP stacked, eMMC5.0 HS400 flash storage

Built-in luminance, temperature, pressure Sensors

GigaBit ethernet and USB 3.0

83 x 58 x 20 mm (weight: 38gram)

Ubuntu 64bit GNU/Linux 3.10.104 #6 armv7l

OpenCV-3.2.0

Python 2.7.12

Flask 0.12.1


2. Arduino UNO for controlling servo motors & laser pointer

MicroController ATmega328P 16MHz

Flash 32KB SRAM 2KB EEPROM 1KB

PWM digital I/O 6 pins, analog input 6 pins

68 x 53 x 20 mm (weight: 25gram)

Inter-connected with ODROID-XU4 via USB2.0 for receiving servo control command


3. FHD Himax Camera x 2, HD Logitech Camera x 2

Himax for face landmarks, object detection & tracking, color detection, text recognition in scene, laser range finder, lens distortion correct, scene stitch

Logitech for stereo camera range finder, stereo camera rectify, motion detection

All hooked-on to ODROID-XU4 via USB 2.0

Camera sensor ISP configuration with 'Video For Linux 2' v4l2-ctl

OpenCV controls the camera input stream, Python manages the USB camera capture thread


4. Servo Motor x 2, Laser Diode

Pitch action by MG996R

Roll action by MG996R

650nm laser pointer module KY-008

Operating speed 0.17 Sec/60 degree, 4.8V(no load)

40 x 19 x 43 mm (weight: 56gram)

All these are controlled via Arduino PWM ports.

Flask angle slide-bars on web. Python generates new angles and send those via USB. Arduino receives the commands from ODROID then makes PWM signals.


Name : Jun-Hyoung Cho

Contact : cpc33033@gmail.com