GSoC/GCI Archive
Google Summer of Code 2013

Portland State University

Web Page:

Mailing List:

Portland State University is one of the founding organizations of the Google Summer of Code program. Our specialty is projects that clearly benefit the student, the open source community, and society in general, but have no obvious fit in the standard mentoring organizations. In particular, we tend to focus on small-scale or individual risky-but-promising open source "seed" projects that we think will grow into something great. We also do well with students whose coding projects have an academic bent. We often mentor projects in the technology end of the open source space, including hardware/software systems work with a solid code component. In fact, for 2013 we are placing a special emphasis on Enabling Open Hardware.


For more information about Google / Portland State University Summer of Code, please see


  • "Design and implementation of computational support for large datasets in Weave using the R project" We plan to use Weave to analyze and visualize extremely large multivariate health data. Powerful computational support via statistical packages such as the R project will strengthen the analysis of large data. This project will entail large data management, alternative architectural pipelines for server side computation and writing efficient scripts for computational algorithms. Computational results presented in intelligent visualizations will make data analysis easier and more intuitive.
  • A Mobile App for Enhancing Scientific Field Research I propose a mobile application and back-end management system to help scientists and science teachers manage data collection and improve real-time communication during a scientific field study. On one hand, the web application is designed for planning a trip and analyzing collected data after a trip. The mobile application is specially designed for real-time communication and event-tracking in a field study. The user will be able to track other team member’s location, data collection status, and share information with other team members in a customized map view interface.
  • Control and Navigation of Autonomous Quadcopter Owing to their ability of agile and robust motion, quadcopter motion is a very interesting topic for both Aerospace and Controls researchers. It has huge application. Here I propose a two step process of first estimating the quadcopter's states, with confidence. Then using layered PID controller we can control the attitude, velocity and position of the quadcopter.
  • Extending the Weave Data Framework The visualizations in Weave currently require that data be in a specific format. For example, if you want to create a scatter plot where the X axis is some measure from one year and the Y axis is the same measure from another year, the two years must be stored as separate columns in the database. Weave users would like additional flexibility to store the same measure for both years in a single column and the associated year value in a second column. To support additional storage methods like this, we need the ability to restructure the data in the Weave client.
  • Implement Interactive Rendering of Medium-To-Large Graphs in Weave Weave ( is an open-source web-based visualization package implemented in Adobe Flex. The goal of the proposed work is to enable Weave to interface with an external graph rendering package in an interactive manner. By using an open source, third-party graph rendering engine, we will allow Weave users to visualize and interact with graphs of 10,000 nodes or more. By offloading some the bulk of the graph rendering to the server, and limiting the scope and detail of interaction, we could provide users with the ability to examine large graphs within the Weave framework. Cytoscape ( and Tulip ( are both candidates for third-party graph rendering engines to be used in this project.
  • Machine Learning, Clustering Analysis, Statistical Analysis, and Raster Algebra Modeling of image data for mineral identification, based on optical microscope images and/or elemental data from scanning electron microscopes from rock thin sections Using ImageJ, QuantumGIS, Python and R to develop tools for mineral identification, physical property descriptions, and statistics for both Scanning Electron Microscope Element Data and 2.5x Optical Microscope images of thin sections.
  • Port the Weave core code from ActionScript to Haxe. Weave core framework is developed using Actionscript(AS3).Converting Weave core framework from AS3 to HAXE, helps to compile HAXE source code to Javascript and Actionsript version, which in turn helps application to render interactive visualization without control panels or Admin console.It also gives the flexibility for developing control panels and Widgets in Javascript to controls the interactive visualization in weave
  • Real-time Analytics in Malls Landmarks are signatures of our surroundings as perceived by the sensors on mobile devices, which help us to uniquely identify a location. I have implemented an unsupervised indoor localization scheme to help prune these landmarks.The scheme explores the possibility of landmarks from sensor features like Accelerometer, Gyroscope, Magnetometer, Light, Sound, WiFi, GSM signal strength. Moreover, it also includes an adaptive clustering algorithm to help us get stable landmarks depending on the varying characteristics of different sensors, day, time and person. Using these landmarks it is possible to identify locations easily. So with the help of these landmarks, an analytics app can be developed in malls which will have the option of annotating these landmarks with comments, pictures and other data