Open Access. Powered by Scholars. Published by Universities.®

Computer Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 24 of 24

Full-Text Articles in Computer Engineering

Grammar-Based Procedurally Generated Village Creation Tool, Kevin Matthew Graves Jun 2019

Grammar-Based Procedurally Generated Village Creation Tool, Kevin Matthew Graves

Computer Engineering

This project is a 3D village generator tool for Unity. It consists of three components: a building, mountain, and river generator. All of these generators use grammar-based procedural generation in order to create a unique and logical village and landscape each time the program is run.


Labeling Paths With Convolutional Neural Networks, Sean Wallace, Kyle Wuerch Jun 2019

Labeling Paths With Convolutional Neural Networks, Sean Wallace, Kyle Wuerch

Computer Engineering

With the increasing development of autonomous vehicles, being able to detect driveable paths in arbitrary environments has become a prevalent problem in multiple industries. This project explores a technique which utilizes a discretized output map that is used to color an image based on the confidence that each block is a driveable path. This was done using a generalized convolutional neural network that was trained on a set of 3000 images taken from the perspective of a robot along with matching masks marking which portion of the image was a driveable path. The techniques used allowed for a labeling accuracy ...


Reach - A Community Service Application, Samuel Noel Magana Jun 2019

Reach - A Community Service Application, Samuel Noel Magana

Computer Engineering

Communities are familiar threads that unite people through several shared attributes and interests. These commonalities are the core elements that link and bond us together. Many of us are part of multiple communities, moving in and out of them depending on our needs. These common threads allow us to support and advocate for each other when facing a common threat or difficult situation. Healthy and vibrant communities are fundamental to the operation of our society. These interactions within our communities define the way we as individuals interact with each other, and society at large. Being part of a community helps ...


Identifying Hourly Traffic Patterns With Python Deep Learning, Christopher L. Leavitt Jun 2019

Identifying Hourly Traffic Patterns With Python Deep Learning, Christopher L. Leavitt

Computer Engineering

This project was designed to explore and analyze the potential abilities and usefulness of applying machine learning models to data collected by parking sensors at a major metro shopping mall. By examining patterns in rates at which customer enter and exit parking garages on the campus of the Bellevue Collection shopping mall in Bellevue, Washington, a recurrent neural network will use data points from the previous hours will be trained to forecast future trends.


Underwater Computer Vision - Fish Recognition, Spencer Chang, Austin Otto Jun 2017

Underwater Computer Vision - Fish Recognition, Spencer Chang, Austin Otto

Computer Engineering

The Underwater Computer Vision – Fish Recognition project includes the design and implementation of a device that can withstand staying underwater for a duration of time, take pictures of underwater creatures, such as fish, and be able to identify certain fish. The system is meant to be cheap to create, yet still able to process the images it takes and identify the objects in the pictures with some accuracy. The device can output its results to another device or an end user.


Android Drone: Remote Quadcopter Control With A Phone, Aubrey John Russell Dec 2016

Android Drone: Remote Quadcopter Control With A Phone, Aubrey John Russell

Computer Engineering

The purpose of the “Android Drone” project was to create a quadcopter that can be controlled by user input sent over the phone’s Wi-Fi connection or 4G internet connection. Furthermore, the purpose was also to be able to receive live video feedback over the internet connection, thus making the drone an inexpensive option compared to other, equivalent drones that might cost thousands of dollars. Not only that, but the Android phone also has a host of other useful features that could be utilized by the drone: this includes GPS, pathing, picture taking, data storage, networking and TCP/IP, a ...


Prosense, Johnny Favazza Ii, Casey Glasgow, Matt Epperson Jun 2016

Prosense, Johnny Favazza Ii, Casey Glasgow, Matt Epperson

Computer Engineering

This project aims to gather advanced data sets from MEMS sensors and GPS and deliver it to the user, who can capitalize on the data. The once negligible half-degree difference of your board barreling down a wave can be recorded from a gyro and exploited for the perfect turn. The exact speed dreaded by longboarders where speed wobbles turn into a road rash can be analysed and consequently avoided. Ascertaining the summit of your flight using combined GPS sensors from the ski ramp allows for the correct timing of tricks. When it comes to pursuing excellence in professional sports, amateur ...


Musictrakr, Benjamin Lin Jun 2016

Musictrakr, Benjamin Lin

Computer Engineering

MusicTrackr is an IoT device that musicians attach to their instruments. The device has a start and stop button that allows users to record their playing sessions. Each recorded session is sent wirelessly to a cloud database. An accompanying website displays all of the recorded sessions, organized by date. After picking a specific date, the user can view graphs showing total practice time and average session length as well play back any recordings during that date. In addition, the user may add comments to any specific date or recording. Lastly, the user may tag a specific date with a color ...


Rfid Microscope Lab, Patricia Carranza Sep 2015

Rfid Microscope Lab, Patricia Carranza

Computer Engineering

The RFID Microscope Lab is a new exhibit created for the San Luis Obispo Children's Museum. The goal of the project is to create a modern, interactive exhibit that will teach children about different natural specimens through the use of technology. A computer, custom software, and RFID technology, will be used to display facts, microscopic images, and short videos of ten different specimens.


Panorama: Multi-Path Ssl Authentication Using Peer Network Perspectives, William P. Harris Jun 2015

Panorama: Multi-Path Ssl Authentication Using Peer Network Perspectives, William P. Harris

Computer Engineering

SSL currently uses certificates signed by Certificate Authorities (CAs) to authenticate connections. e.g. Google will pay a CA to sign a certificate for them, so that they can prove that they're not someone pretending to be Google. Unfortunately, this system has had multiple problems, and many believe that an alternative needs to be found.

One of the ideas for alternatives is using multiple "network perspectives" to authenticate a server. The idea behind this is that, though playing man-in-the-middle (MITM) with one connection is easy, it should be difficult for an adversary to do so with many connections, especially ...


'Fo Fighter: 2d Real-Time Game, Cary Dobeck Jun 2015

'Fo Fighter: 2d Real-Time Game, Cary Dobeck

Computer Engineering

‘FO Fighter is a 2D real-time game for Android and iOS mobile devices. The game utilizes the motion sensors and touch screens built within these devices to give the player a great amount of control over their character’s position and firing direction. This control allows for a reactive environment set in outer space, where gravity is determined by the device’s orientation, while the player must dodge, fight and destroy multiple enemy fighters on each planet in the solar system. ‘FO Fighter has been tested throughout its development cycle on numerous devices on both the Android and iOS platforms ...


Design Of Cpu Simulation Software For Armv7 Instruction Set Architecture, Dillon Tellier Jun 2014

Design Of Cpu Simulation Software For Armv7 Instruction Set Architecture, Dillon Tellier

Computer Engineering

Simulations have long been a part of the engineering process in both the professional and academic domain. From a pedagogic standpoint, simulations allow students to explore the dynamics of engineering scenarios by controlling variables, taking measurements, and observing behavior which would be difficult or impossible without simulation. One such tool is a CPU simulator used in Cal Poly’s Computer Architecture classes; this software simulates an instruction accurate operation of a computer processor and reports statistics regarding the execution of the supplied compiled machine code. For the last several years Cal Poly’s computer architecture classes have used a previous ...


Spirit: A Home Automation System, Andrew Choi Jun 2014

Spirit: A Home Automation System, Andrew Choi

Computer Engineering

Spirit is a multi device home automation system. Designed and implemented for California Polytechnic State University’s Senior Project program, this project was worked on during the duration of two school quarters from January 7, 2014 to June 13, 2014. The system consists of monitor/controllers designed to carry out everyday tasks in the average American household and an accompanying mobile application designed to receive information and control the devices. The monitor/controllers, or “Spirits”, are primarily developed using Arduino development tools and Arduino microcontroller boards. The spirits include a thermostat, named Tempus, an electrical outlet, Electrus, and a wall ...


Autotab - Automatic Guitar Tablature Generation, Shaun Boley, Anthony Cisneros, Eric Kauzlarich Jun 2014

Autotab - Automatic Guitar Tablature Generation, Shaun Boley, Anthony Cisneros, Eric Kauzlarich

Computer Engineering

Our project consists of two different parts:

The first part contains an analysis of various pitch estimation algorithms. A number of different open-source pitch estimation libraries were tested using guitar recordings in order to gauge how accurately and consistently they outputted the correct frequencies. The results showed that the algorithms did not perform up to expectations, especially when testing with guitars with wound strings and within certain frequency ranges.

The second part details the creation of a tablature generator. It reads in a note sequence as an input, then generates tablature in the form of ASCII text. A modified greedy ...


Protocases, Christopher M. Polis Jun 2013

Protocases, Christopher M. Polis

Computer Engineering

Design and implementation of a 3D printing web application.


Channels: Easy Video Content Consumption, Alexander R. Ledwith Jun 2013

Channels: Easy Video Content Consumption, Alexander R. Ledwith

Computer Engineering

The idea for this project is to take a user’s digital movie and television show library, and organize the individual videos into lists that will continuously and concurrently play like cable TV channels. This means that when a list of channels is switched to, video content will automatically start playing, possibly in the middle, based on a schedule. It should serve the needs of the user by allowing the user to quickly watch any of their existing channels, easily add a new channel based on chosen criteria or manual selection, and easily add new video content. In addition, the ...


Inform 7 Usability Precompiler, Chad Robert Brantley, Timothy Phan Jun 2013

Inform 7 Usability Precompiler, Chad Robert Brantley, Timothy Phan

Computer Engineering

Inform 7 Usability Precompiler or I7UP is a project which helps Inform 7 authors with their stories by diversifying the possibilities in the author’s interactive fiction. I7UP reads and analyzes the Inform story that is passed in through python and natural language processing then provides the user with a selection of choices to add to his story and lastly automatically generates the corresponding Inform 7 code. By utilizing the combination of Python, Django, and HTML/CSS, I7UP is able to provide an easytouse interface which helps generate additional "Understand" statements and "Conjugated Verb" statements. I7UP is an authoring aid ...


Wireless Sensor Network For Wine Fermentation, Kerry Scharfglass, Andrew Lehmer Jun 2012

Wireless Sensor Network For Wine Fermentation, Kerry Scharfglass, Andrew Lehmer

Computer Engineering

This project implements an automated temperature monitoring system for wine fermentation which is affordable, easy to use, and scalable to typical small winery setups. To realize these requirements, we implemented the system as a wireless sensor network utilizing commercial off-the-shelf hardware. Temperature and system diagnostic information is communicated wirelessly in a peer-to-peer network topology such that all information flows toward an aggregating server. The server makes the temperature information available over the Internet via a web application and alerts the winemaker by email when the temperature has left acceptable bounds that the winemaker may configure. This project also involved materials ...


Beaglebone Webcam Server, Alexander Corcoran Jun 2012

Beaglebone Webcam Server, Alexander Corcoran

Computer Engineering

The Beaglebone Webcam Server is a Linux based IP webcam, based on an inexpensive ARM development board, which hosts its own web server to display the webcam feed. The server has the ability to either connect to a wired router, or to act as a wireless access point in order for users to connect and control its functions via any Wi-Fi enabled device.


Check Image Processing: Webp Conversion And Micr Scan Android Application, Trevor Bliss Apr 2012

Check Image Processing: Webp Conversion And Micr Scan Android Application, Trevor Bliss

Computer Engineering

As more users favor smartphones over computers for simple tasks, small businesses are constantly exploring mobile options to present to their customers. This write-up documents an Android application designed for a small company, which allows users to send pictures of checks to the company’s servers for processing. The picture is taken with the devices built-in camera and is converted to Google’s new image format, WebP. The company’s server processes the check and returns the check’s MICR code as a response. This application leverages the Android NDK and JNI to use Google’s open source image conversion ...


Reactive Routing In Hidra Networks, Scott Michael Marshall Mar 2011

Reactive Routing In Hidra Networks, Scott Michael Marshall

Computer Engineering

In recent years, the Internet has grown so large that the future scalability of the Internet has become a major concern. The two primary scalability concerns are the size of the forwarding table and the ability for BGP to converge while distributing hundreds of thousands of routes.

HIDRA is a new Internet routing architecture that is backwards-compatible with existing routing technologies and protocols that focuses on feasibility-of-implementation. HIDRA remedies the first Internet scalability concern by proposing a means to reduce the number of entries in the default-free zone (DFZ) forwarding table.

This project extends HIDRA by designing a complete reactive ...


Wii-Mote Head Tracking: A Three Dimensional Virtual Reality Display, David Fairman Jun 2010

Wii-Mote Head Tracking: A Three Dimensional Virtual Reality Display, David Fairman

Computer Engineering

The goal of this project is to create a customizable three dimensional virtual reality display on a system available to any non-technical user. This System will use the infrared camera component of a standard Nintendo Wii-mote to track a user's head motions in all six major directions. The virtual reality will be a customizable image projected onto a screen or simply shown on a computer or TV monitor. In order to appear 3-dimensional, the image will continually change according to the position of the user's head. As the user moves their head to the left and right, portions ...


Max Flow Spill Code Placement Algorithm Implemented In Gcc 4.4.3, Stephen Robert Beard Jun 2010

Max Flow Spill Code Placement Algorithm Implemented In Gcc 4.4.3, Stephen Robert Beard

Computer Engineering

The placement of spill code plays an important role in the register allocator of an optimizing compiler. Many computer architectures possess a register linkage convention that dictates which registers are preserved across function calls and which are not. This project addresses the problem of optimizing spill code that is associated with register linkage conventions.

This algorithm was created by Dr. Chris Lupo and is described in the paper Beyond Register Allocation: a Novel Algorithm for Spill-Code Placement. The algorithm was implemented for GCC 2.5.7 for a PA-RISC architecture [4]. The work in this project will involve porting the ...


Pretty Lights, Nicholas (Nick) Delmas, Matthew (Matt) Maniaci Apr 2010

Pretty Lights, Nicholas (Nick) Delmas, Matthew (Matt) Maniaci

Computer Engineering

Digital media players often include a visualization component that allows a user to watch a visualization synchronized to their music or videos. This project uses the visualization plugin API of an existing media playback program (WinAmp) but it displays its visuals using physical LED lights. Instead of outputting visuals to the computer screen, data is sent over USB to a micro controller that runs the LED lights. This project aims to give users a more visceral visual experience than traditional visualizations on the computer screen.