Difference between revisions of "VisionPage"

From Elcano Project Wiki
Jump to navigation Jump to search
(Created page with " ==Introduction == Elcano bike requires an eye to see the world surrounding it in order to make appropriate decisions. Elcano Vision System would do such tasks as detecting s...")
Line 57: Line 57:
-- Main.HuyNguyen - 2017-06-15
-- Main.HuyNguyen - 2017-06-15
ALSO > [[Camera]]

Latest revision as of 18:38, 28 June 2019


Elcano bike requires an eye to see the world surrounding it in order to make appropriate decisions. Elcano Vision System would do such tasks as detecting surrounding objects and behaving responsively. The system is built with a help from computer vision open source OpenCV and a variety of programming languages (currently Python). It employs Raspberry Pi (currently version 3) as the controller to process inputs and generate essential outputs. In further development of Vision system, machine learning achievements can solve a lot of problems and extend its ability unimaginably.

Where to Start and Experience

1.Setup OpenCV on Raspberry Pi - Install OS for Raspberry Pi:

This link will explain why NOOBs https://www.raspberrypi.org/documentation/installation/noobs.md This link will help download NOOBs https://www.raspberrypi.org/downloads/noobs/

Note: Raspberry Pi stores OS on SD card , I suggest to use 32GB cards to have no worries about memory.

- Install OpenCV: http://www.pyimagesearch.com/2016/04/18/install-guide-raspberry-pi-3-raspbian-jessie-opencv-3/

Note: Notice on Version issues while setting up

2.Setup Picam Camera -Setting Up Camera & Basic Functions : https://www.raspberrypi.org/learning/getting-started-with-picamera/

Note: Straight forward

-Formal Doc for Pi Cam: https://www.raspberrypi.org/documentation/usage/camera/python/README.md

Note: Ctrl-D doesn’t work on my Pi

-Setup Pi Cam with OpenCV & Basic Functions: http://www.pyimagesearch.com/2015/03/30/accessing-the-raspberry-pi-camera-with-opencv-and-python/

Note: Straightforward

4. Useful links on Detecting Objects -Detect Motion: http://www.pyimagesearch.com/2015/05/25/basic-motion-detection-and-tracking-with-python-and-opencv/

-Detect A Ball: http://www.pyimagesearch.com/2015/09/14/ball-tracking-with-opencv/

-OpenCV Python commands on finding contours and enclosing objects: http://docs.opencv.org/3.1.0/dd/d49/tutorial_py_contour_features.html

-OpenCV C++ commands on finding contours and enclosing objects: http://docs.opencv.org/3.1.0/d3/dc0/group__imgproc__shape.html#ga556a180f43cab22649c23ada36a8a139

Note : - For some reason my Pi does not have connection to bcm2835-v4l2 . So I need to connect to it "sudo modprobe bcm2835-v4l2" . Without this command, VideoCapture() will not run, and no video is captured. Further information on v4l2 : https://www.raspberrypi.org/forums/viewtopic.php?f=43&t=62364

3.Further Pi Usage

-Reset Pi : connect 2 holes next to Pi Cam port in the Pi

Cone Detection Method

The color of the cone is orange. Elcano Cone Detection currently is based on detecting regions of orange color on the images. Our algorithm automatically encloses those regions in a rectangle, and the height of rectangle (the vertical side) will be used to calculate the range.

For more information, you can go to Camera Sensor article by Professor Folsom on Elcano Wiki . http://elcanoproject.com/wiki/bin/view/Main/Camera

Useful References

1. Package Management ( virtuallenv, conda ): https://classroom.udacity.com/courses/ud889-preview/lessons/68e18f19-2a9a-4419-a491-b2a005f299c0/concepts/4cdc5a26-1e54-4a69-8eb4-f15e37aaab7b

-- Main.HuyNguyen - 2017-06-15

ALSO > Camera