Project 0 · CS231M 2015


Released on Monday, April 6, 2015.
No due date.
This project will not be graded. You do not need to submit it.
However, we strongly recommend attempting it for self-calibration.
If you find yourself unable to complete this assignment within a week, please talk to the teaching staff as soon as possible.

1. Camera Access

Create an Android app that shows a live preview from the device's camera.

Hint — There are multiple ways to do this. The simplest way is to use OpenCV's camera wrapper (see this OpenCV sample). Another way would be to use the new Camera2 API (see this sample from Google). However, using the Camera2 API will make the rest of the assignment trickier.

2. Native Vision Dev

Add a C++ module to the project that:

  1. Accepts an image as the input.
  2. Detects ORB keypoints in the image.
  3. Logs the time taken to detect the keypoints.
  4. Plots the keypoints on top of the input image.
Update your code for the previous step to send each camera frame to this module and display the annotated image.

3. User Interface

Add two buttons (or an options menu) that allows the user to enable/disable the ORB keypoint plotting added in previous step.