This project was part of a studio that was offered to create space for students to design, engineer and prototype a sensor and computational platform that can sense the physical and social environment of a bicycle. For the researching and prototyping, the class was divided into three groups: road surface quality, air quality, and proximity. I was part of the road surface quality group.

My Role:
Research, working on OpenCV, building of the outer casing for the sensors


To begin with, our group conducted a literature review and some expert interviews to gather information on the different elements that influence road conditions while biking, including weather, construction, road surface type, etc. We created a table to serve as a reference point for the rest of the project:

Simultaneously, we spoke to scholars in the Civil Engineering department at Georgia Tech who were working on a similar problem. We got insights from them regarding the important aspects to consider while doing this project. While the two projects were in a similar space, they also differed in multiple areas like time/budget likely to be spent on the project, expertise of researchers, etc. Therefore we had to carefully select which insights would be useful for our project, and which ones we should disregard.


Next we explored the different sensors available in the market and how we could use them for our project. We considered multiple options since we needed to make sure that we collected sufficient amount of data at the end of the semester, as our project was part of a bigger smart cities project, and the data collected would be analyzed by the next group of students.

We considered three different approaches to collect data:

  1. Using the MatrixOne + Raspberry Pi (first priority)
  2. Using OpenCV + Camera (backup option)
  3. Using a surface mic (backup option)

Out of these three options, we started implementing the first two simultaneously, and successfully implemented the first option.

Placement of sensors:

It was important to consider where each sensor would be placed on the bike, as elements such as the swerve of the handle of a bike while turning, and the variation (at different spots on the bike) in sensitivity to road conditions would influence the data collected. Here is our initial plan for placement of the sensors on the bike:


We configured the MatrixOne and gathered data through its inbuilt Accelerometer, Gyroscope, and Magnetometer. I was only involved in the testing of this element of the project, not the implementation. The elements measured were:

    • Direction of motion in the x, y, & z planes
    • Roll, Pitch, Yaw

We also measured humidity, ultraviolet, altitude, temperature, pressure as secondary elements that could be used to support and justify future decisions and insights.


Initializing the sensors before riding

Testing on the bike around campus buildings

Data through test run

Secondary data


For the implementation stage, I was in charge of experimenting with OpenCV (Open Source Computer Vision) libraries. I used a camera and crosshair laser to be placed as shown below. On smooth surfaces, the laser will project a thin smooth line, and as the surface starts getting rough, the distortion of this line would increase. We hoped to record the changes in distortion and use them to judge the roughness of the biking surface.

Plan for placement

Crosshair laser projection

Laser (top) and camera (bottom)

At the end of the semester, our camera could record images at intervals of a few seconds and store those images. For future use, these images would need to be integrated with the rest of the sensor kit and a certain correlation between distortion and roughness would need to be determined.


After testing the sensors, we moved on to creating a box for the kit of sensors, batteries, cameras etc. (except the MatrixOne) to be placed in. Important considerations here were the size of the box, how it would stay on the carrier behind the seat on the bike, the durability and weather proof nature of the box, etc. We decided to laser cut a wooden box with compartments for all the sensors as an initial casing. This same design could be implemented with other material to improve durability. While my teammate was incharge of the design of the box, we both carried out the implementation using a laser cutter.

Conclusion and Next Steps

The purpose of the project throughout the semester was to create this sensor kit. This kit was slightly revised and replicated by a new set of students in the following semester. These kits were then placed on bikes and these bikes were ridden across Atlanta to collect information and then analyze it.