CSE 145: Project Ideas

Home
Class Webpages
Application Page
Suggested Projects
Tasks
Outside Opportunities

Below is list of project suggestions, with a short description and the contact information of the project mentor. These projects present problems that are interesting and challenging, and at the same time fit within the scope of this class. We anticipate most students will end up working on one of the projects below. However, you can also use the list as inspiration for your own projects you may want to propose. Emails are provided so that students can start a dialogue with group leaders immediately. If you have trouble getting a hold of someone, please bring this to the attention of the TA and instructors.

  1. An algae turbidostat (Vineet Bafna: vbafna at cs.ucsd; Alex Lin: all070 at ucsd) turbidostat - Photosynthetic algae presents an important source for biofuels as they can use sunlight and atmospheric CO2 to make lipids. However, in order to make the process cost-effective, the algae must be genetically adapted to thrive in adverse conditions. The goal of this project is to build a continuous culture bioreactor for growing algae, and for recording the growth characteristics. We will use the Arduino open source platform, and build off an initial prototype, adding an ethernet shield, an improved OD sensor, improved software, as well as a casing to house the electronics. Skills: no biology needed. The students are expected to have some knowledge of basic electronics, and must be willing to learn about Ardunio platform, and electronics through available online resources.
  2. Underwater Stereo Vision (Perry Naughton: naughton.perry at gmail) - Implement stereo vision capability in an underwater environment. This task will start with working with ordering the designed enclosures for the cameras and attaching them to the Stingray to pull video in through a ROS node. Additionally students will be tasked with implementing techniques such as vSLAM to generate a three dimensional model of the environment the stereo vision module traversed.
  3. Stingray AUV (Perry Naughton: naughton.perry at gmail) - Build off of the existing Stingray. Many challenges related to artificial intelligence, controls and computer vision. Students must have experience with ROS as well as an extensive background in a related field.
  4. Active Suspension Terrestrial Vehicle (James Strawson: jstrawso at gmail) The Terrestrial Vehicle platform is designed to keep a camera steady while an object such as a car is in motion. This is currently built around th Arduino platform. Students should have experience with feedback and other techniques related to stabilization.
  5. Aerial Camera (Thomas Goehring: tgoehrin at ucsd) The Aerial Camera Platform is designed to take large gigapans while hanging from a balloon. There are many problems related to stabilization and controls that one needs to consider to achieve this. This project is currently built around the Arduino platform.ivated by the emergence of online boosting for detection and tracking. The original algorithm was based on the Multiple Instance Tracker developed in the Vision group at UCSD. We are building this work using the RIFFA architecture.
  6. Pan-Tilt Tracking using Thermal Imagery (Perry Naughton: naughton.perry at gmail & Riley Yeakle: ryeakle at gmail) Develop algorithms to control a pan-tilt mechanism to follow objects based on inputs received from thermal imagery. This work is an improvement to the current Camera Trap. Students should be familiar with basic computer vision and controls concepts.
  7. Multi Rotor Copter (Radley Angelo: Radley.Angelo13 at gmail) The Copter Piloting project seeks to radically redefine how a pilot and videographer interact with a multiple bladed rotocopter in flight. Utilizing the Ardunio open source platform, we will be taking existing autopilot software and altering it to allow a lower barrier of entry for pilots, as well as more precise control for a separate videographer on the ground. This approach will allow for unprecedented video footage from a multi bladed copter, as well as open the door for more advanced scientific research and development.
  8. Human in the Loop (Chris Barngrover: chris.barngrover at gmail) - Work with a Dept of Defense database of mines in side scan sonar imagery. Experiment with two paths for human in the loop interaction. One path will use an EEG cap to rank images shown to a user at 10 frames per second. Another path will allow the user to select yes or no on a given image window for the presence of a mine and will use online learning techniques to update the classifier.
  9. High Level Synthesis (HLS) tool (Janarbek Matai: jmatai at cs.ucsd) - High Level Synthesis tools allow designers to program hardware with languages like C and C++. In this project, we implement a high level synthesis tool based on a LLVM framework. Specifically, we implement LLVM pass for instruction scheduling, register allocation and resource binding for embedded systems hardware design (MIPS/VLIW processor generator). This project involves designing embedded systems hardware, compilers and algorithms.
  10. Ad-hoc Ultrasonic Sensor Network (Yoav Freund: yfreund at ucsd) - The goal is to design and build a sensor network which can detect movements in the environment. It consists of two parts. First, building the embedded system: The idea is to design and build small ultrasonic transmitter / receiver units that communicate wirelessly with a central laptop. The goal is to have around 10 such units, all communicating with the same laptop. Each unit transmits at a slightly different frequency, determined at run time by the laptop. Each unit can detect echos of beeps produced by any of the sensors. The timing of transmissions and detections provides information about the state of the room. Second: Calibration and data analysis. While the time delays provide information about the room, it is far from trivial to relate this information to the actual locations in the room. To do so we will use calibration procedures where the user will move between locations with controlled timing and the measured delays will be related back to the location. Interpolation between locations will be done using algorithms for modeling low-dimensional manifolds.
  11. Fine Grained Occupancy Detection using Smartphones and Bluetooth (Yuvraj Agarwal: yuvraj at cs) Our SYNERGY lab is doing several projects in the space of Building Energy Efficiency, including smart HVAC control, Managing Plug-Loads, and reducing IT energy use using SleepServers. One key aspect that we need to determine is which physical spaces are occupied at what times within buildings. Going forward, we would even like to identify who in particular is in that space, since that could be helpful in disaster response scenarios, fine grained climate control within physical spaces and personalized lighting control. Towards this goal, we want to build a Bluetooth based proximity framework that can be deployed across a building. The idea would be to use a Bluetooth based device on each person (e.g. a Smartphone, or a Bluetooth KeyFob) and have some infrastructure elements that look for these devices (e.g. a Bluetooth base station that is network connected) and reports back to the infrastructure. This project will likely involve programming microcontrollers (in C), and potentially working with out students to build some cool sensors/hardware, connecting to a back end data collection system (Linux, MySQL, Python etc) and also looking at building some cool visualizations to view the occupancy data. If you don't have much hardware experience, don't worry since we have a few grad students who are experts in this and can give guidance.
  12. Mobile Herd It game (Gert Lanckriet: gert.lanckriet at gmail) - The goal of this project is the design of an iPhone / Android version of the Facebook game "Herd It". Herd It was designed to collect tags for music through a fun, social online game, embedded in Facebook. Currently, the game is available as a web-based game. An iPhone / Android version of the game will allow to attract users and collect data more easily and frequently. Starting from the web-based game, this project will require redesigning the game a little, to adapt the game interaction to a smart phone platform.
  13. Personalized mobile radio (Gert Lanckriet: gert.lanckriet at gmail) - The goal of this project is the design and development of an iPhone / Android app that provides a personalized radio station, powered by one's iPhone song library in a first stage (and, possibly, other songs in a second stage). This project will involve the design of a radio interface (front end) and an intelligent algorithm to select the next song given the song that is currently playing (back end). For the latter, algorithms that are being developed in the Computer Audition Lab may be leveraged.
  14. "Dr. House" game (Gert Lanckriet: gert.lanckriet at gmail) - The goal of this project is the implementation of a simple web-based game on diagnosing medical cases. At an academic level, this project will investigate whether a large crowd of online players can diagnose conditions as effectively as an expert M.D. At a practical level, we envision this game to improve access to health advice and diagnosis (e.g., in third world countries or poor communities).
  15. Integrating FPGA as co-processor to Intel Atom to Provide Framework for Accelerating Applications (Jason Oberg: jkoberg at cs) - The Fox Brook Lite Development Kit recently created by Intel features an Intel atom processor and Altera Cyclone 3 FPGA. The Atom and FPGA are interconnected via PCI-e and currently the Atom processor can boot Fedora 11. Ideally, we want to figure out and understand how to easily configure the FPGA so that it can be recognized by Fedora as a PCI-e device. Once achieved, we can work towards transferring data between the processor and FPGA at high-bandwidth. Applications for this framework are the National Geographic's Camera Trap, accelerating vision based applications, and many others.
  16. Object Detection and Classification of Mines in Sonar Imagery (Chris Barngrover: chris.barngrover at gmail) - Work with a DoD synthetic dataset of bottom mines to test the potential of various opencv feature detection algorithms. The DoD database will most likely need some work to prepare for this specific application. The database will need to be labeled for positive and negative examples for use by the various feature detection algorithms. Then the shared code for processing image directories will be used to add the capability of using additional feature detection algorithms on the given image library. The result of process should be statistics on the reliability of the given algorithm based on the specific learning technique for this dataset. Results will need to be well organized for comparison to variations of training by the same feature detection scheme or for comparison with efforts on another similar mine database.
  17. Confidence Map for Mine Detection in Sonar Imagery (Chris Barngrover: chris.barngrover at gmail) - Use the results of detection and classification algorithms to create a confidence map visualizing the likely locations of mines. The input will be the sonar data file and the results of the detection and classification algorithms. A provided library will convert pixel location in sonar data file to geodetic location. Result of this application should be a confidence map overlaid on a google map or similar. Requirements: A good knowledge of C/ C++ and familiarity or willingness to learn about Mac OS X development.
  18. Image Processing Algorithm Implementation with AutoESL High Level Synthesis Tool (Janarbek Matai: jmatai at cs.ucsd) - AutoESL is a state of the art high level synthesis tool from Xilinx inc. Basically, this tool allows you to program FPGA with a C/C++ code. In this project, we use AutoESL to design and implement FPGA architectures for image processing algorithms such as SIFT (Used for feature extraction), SLAM (Used for localization of robots) and Object Detection. Also open for using any kind of algorithm implementation from other areas such as security and networking.
  19. Online Boosting Multipoint Tracker (Matthew Jacobsen: mdjacobs at cs) - Accelerate Haar feature extraction and an online boosting learning algorithm to perform real time multiple point, multiple scale adaptive tracking of arbitrary objects. This work is largely mot pilot and videographer interact with a multiple bladed rotocopter in flight. Utilizing the Ardunio open source platform, we will be taking existing autopilot software and altering it to allow a lower barrier of entry for pilots, as well as more precise control for a separate videographer on the ground. This approach will allow for unprecedented video footage from a multi bladed copter, as well as open the door for more advanced scientific research and development.