Deep learning and neural network has been widely used in research, deep learning has empowered many tasks such as point clouds segmentation and shape recognition. One of the main advantages of deep interaction point cloud segmentation is that it allows the feature extraction can be learned through neural network based...
The thesis focuses on activity recognition from sensor data, which has spurred a great deal of interest due to its impact on health care and security. Previous work on activity recognition from multivariate time series data has mainly applied supervised learning techniques which require a high degree of annotation effort...
Realistic (ideally photorealistic) real-time rendering has remained an elusive goal in computer graphics. While photorealistic rendering has certainly been achieved at the expense of tremendous computational resources and corresponding rendering times; real-time rendering typically must accept a great number of compromises to achieve adequate performance, such as aliasing artifacts, the...
Uploading everyday information about food intake, sleep, number of steps and then generating consolidated peer visual reports for participants in large-scale health studies, often divided into multiple treatment groups, can be challenging.
This challenge is even bigger if subjects are young teenagers between the age of 14-19 active in sports,...
Graphics hardware in mobile devices has become more powerful, allowing rendering techniques such as ray-cast volume rendering to be done at interactive rates. This increase of performance provides desktop capabilities combined with the portability of a tablet. Volumes can demand a high amount of memory in order to be loaded...
Open Source software gives users the freedom to copy, modify and redistribute source code without legal entanglements. The evolution of these software communities usually depend a lot on how the participating developers and users interact and co-operate with each other. Over the past few years, open source software have become...
Cold air pools are spatiotemporal phenomena that occur when cold air from higher elevations roll down the slope to accumulate in lower elevations. Behaviors like this lead to microclimate anomalies such as the city of Corvallis (Oregon) experiencing persistent cold weather even on a sunny day. We analyze multivariate temperature...
While individual portfolio diversity analysis is a well-studied problem in visualization, the visual analysis of individual or groups of portfolios, over time, has received little attention. Such analysis, however, is important to researchers who are interested in better understanding portfolio management behavior of experts as well as novices. We conducted...
This paper discusses the merits of providing users variational views when editing variational code. I provide a plugin for the popular Atom Integrated Development Environment (IDE) which replaces #ifdef annotations commonly used by the C PreProcessor (CPP) with colored backgrounds, thus reducing code clutter and attempting to help programmers quickly...
This report presents an efficient method for semi-supervised video object segmentation – the problem of identifying foreground pixels occupied by a target object. The target is specified by the ground-truth mask in the first video frame. While the state of the art achieves a segmentation accuracy greater than 80%, it...
This thesis consists of two major components. The first part is concerned with video object instance segmentation (VOS), which is the task of assigning per-pixel labels perframe of a video sequence to indicate foreground object instance membership, given the first frame ground truth mask. VOS has myriad applications, from video...
Software history and version control systems (VCS) are an important source of information for developers. This entails the need for a principled understanding of developers’ information seeking in VCS, both for improving existing tools as well as understanding requirements for new tools. However, it is only recently that researchers have...
Information Foraging Theory (IFT) has successfully explained how people seek information in various domains, in turn, informing the design of several tools and information-intensive environments. However, prior research has not explored foraging in the presence of several, very similar variants of the same artifact. Such variants are commonplace in several...
The study of variational typing originated from the problem of type inference for variational programs, which encode numerous different but related plain programs. In this dissertation, I present a sound and complete type inference algorithm for inferring types of all plain programs encoded in variational programs. The proposed algorithm runs...
With the development of technologies in genome sequencing and variant detection, a huge number of variants are detected. To further analyze the variants, it requires an efficient tool to annotate the functional effect of variants. This project managed to develop an efficient program to annotate the functional effect of variants...
Air traffic flow management over the U.S. airpsace is a difficult problem. Current management approaches lead to hundreds of thousands of hours of delay, costing billions of dollars annually. Weather and airport conditions may instigate this delay, but routing decisions balancing delay with congestion contribute significantly to the propagation of...
Appropriate representations of variational software simplify the analysis of their properties.This thesis proposes tailored representations of two kinds variational softwares: difference files of merge commits in Git and feature models. For the former, we use the Choice Edit Model, which is based on the choice calculus, to represent changes introduced...
Apple launched their first “tap-and-pay” mobile payment solution called “ApplePay” in October 2014 in the United States. Quickly catching up with the popularity of Apple Pay, Google launched their own mobile “tap-and-pay” paymentsolution called “Android Pay”. Both the companies claim that their tap-and-paysolutions are more convenient and more secure than...
Streaming media and interactive television viewing experiences are becoming more commonplace with the introduction of services such as Netflix Streaming, the Apple TV, and Google TV aided by the increase adoption of broadband internet. As these services make their way into the living room, and developers struggle to accommodate more...
Scientists and engineers have to analyze and query multiple large databases. Analysis over databases created by phasor measurement units can provide insight into the health of the grid, thereby improving control over operations. Realizing this data-driven control, however, requires validating, processing and storing massive amounts of PMU data efficiently, which...
A bad software development process leads to wasted effort and inferior products. In order to improve a software process, it must be first understood. In this work I focus on understanding software processes.
The first process we seek to understand is Continuous Integration (CI). CI systems automate the compilation, building,...
People like going on trips with friends and tend to plan their trips well in advance to have the best possible experience of a destination and get the most out of the places they visit and/or the activities they plan to partake in. Right now, the Internet provides a wealth...
Narratives are central to communication and the human experience. For a computer system to understand a narrative, it must be able to identify the key facts or plot elements that describe what happened or how the world has changed. These element are called events;establishing a document’s events and the relationships...
The rapid population growth in large urban cities has led to an unprecedented increase in both the number and the diversity of wireless devices and applications with varying quality of service requirements in terms of latency and data rates. LinkNYC is an example of an urban communication network infrastructure, which...
Software maintenance tasks often require finding information within existing code, which is time-consuming and difficult even for professional programmers. For example, programmers may need to know what code implements certain functionality or what is the purpose of certain code. In response, researchers have developed tools to help programmers find information...
In this work, I examine the problem of understanding American football in video. In particular, I present several mid-level computer vision algorithms that each accomplish a different sub-task within a larger system for annotating, interpreting, and analyzing collections of American football video. The analysis of football video is useful in...
We present a proof that the number of breakpoints in the arrival function between two terminals in graphs of treewidth ω is n^(O(log²ω) when the edge arrival functions are piecewise linear. This is an improvement on the bound of n^(Θ(log n))by Foschini, Hershberger, and Suri for graphs without any bound...
RNA structure prediction is a challenging problem, especially with pseudoknots. Recently, there has been a shift from the classical minimum free energy-based methods (MFE) to partition function-based ones that assemble structures based on base-pairing probabilities. Two typical examples of the latter group are the popular maximum expected accuracy (MEA) method...
This thesis – “The Sweet Roll: A Project in Podcasting Gaming News, Discussions and
Reviews” – assesses the current gaming scene, including games, gamers, news, and
reviews of gaming, and creates a pilot podcast The Sweet Roll as a demonstration and
discussion of what could be done better. Through a...
Previous work introduced the GenderMag method, a software inspection method used to help software creators identify features within their software that are not gender-inclusive. Inclusiveness of software (gender or otherwise) matters because supporting diversity matters—it is well-known that the more diverse a group of problem-solvers, the higher the quality of...
Augmentative and Alternative Communication (AAC) devices enable people who cannot speak to communicate with others. Unfortunately, they are tedious to use and are believed to lower the satisfaction of interacting with others. This thesis attempted to document the impact that AAC devices have on social interactions, in the hope of...
Hop (Humulus lupulus L. var lupulus) is a plant of great cultural significance, used as a medicinal herb for thousands of years, and for flavor and as a preservative in brewing beer. Studies of the medicinal effects of the unique compounds produced by hop have led to interest from the...
The Rust programming language is a systems programming language with a strong static type system. A central feature of Rust’s type system is its unique concept of “ownership”, which enables Rust to give a user safe, low-level control over resources without the overhead of garbage collection. In Haskell, most data...
The Jetson Artificial Intelligence Tool chain (JAI-TC) is a set of packages, APIs and libraries for Artificial Intelligence applications to be deployed on the NVidia SOC, Jetson TX2. JAI-TC automates the installation of these items allowing for a wider set of users to leverage these technologies. Prior to this, the...
Software Defined Network (SDN) is a new networking concept in which the data plane is decoupled from the control plane. Due to the huge demand on network resources and the rapidly increasing numbers of devices needing to be connected to the network, SDN paradigm has emerged as a potential solution...
Free and open source software (FOSS) projects primarily rely on the efforts of volunteer contributors from around the world. For this reason, recruiting and retaining contributor is vital to the sustainability and growth of FOSS projects. This notion became the jumping-off point for this three-part investigation into the cultural structure...
One goal of using robots in introductory computer science (CS) courses is to improve motivation among learners. In this study, we investigate the effectiveness of using the Cozmo and Lego Mindstorm robots to improve students’ motivation in a CS orientation course, and we describe our experience using these robots in...
This project studied how a user's handedness affects his or her ability to use a
special-purpose handheld digital device such as a digital camera or rangefinder. More
specifically, it sought to identify how handedness affects speed and accuracy when
navigating within a menu system. 24 participants were given 8 menu...
Modern technology has enabled the advancement of biological research through the use of powerful machines and computers as well as innovative computer programs. Advances in sequencing technology and software enable us to make de novo assemblies of organism genomes, and the development of specialized computer programs can automate routine but...
In real networks, identifying dense regions is of great importance. For example, in a network that represents academic collaboration, authors within the densest component of the graph tend to be the most prolific. Dense subgraphs often identify communities in social networks. And dense subgraphs can be used to discover regulatory...
In this thesis I present the choice calculus, a formal language for representing variation in software and other structured artifacts. The choice calculus is intended to support variation research in a way similar to the lambda calculus in programming language research. Specifically, it provides a simple formal basis for presenting,...
Computer science is, at its core, about solving problems. The "Carry out the Plan" portion of problem solving is often examined and emphasized in CS 1 and CS 2, forgetting to emphasize the other important aspects of the problem solving process. This study focuses on the other problem-solving steps, which...
Software testing is of critical importance for the success of software projects. Current inefficient testing methods often still take up half or more of a software project's budget. Automatic test data generation is the most promising way to lower the software testing cost. Manually creating testing data is expensive and...
Many applications in computer graphics and geometry processing rely on the ability to
locally orient 2D and 3D entities on a surface, or inside a volume, such as the sinusoidal
kernels in Gabor noise, the color and geometry textures in pattern synthesis, and the
finite elements in remeshing. In these...
Bioacoustics analysis can be used to conduct environmental monitoring by detecting the presence of birds species. This analysis usually involves identifying the species from their calls. In most frameworks, bird song syllables are extracted from audio recordings and individual syllables are input to a classifier to identify the species. Extraction...
In a big data day and age, there is an abundance of information and we now have the tools to understand it with data mining and machine learning algorithms. With the rise and fall and rise again of Bitcoin, the finance industry and society itself is caught in between. There...
More and more people have incorporated GIF in their messaging these days and often send gif as a reply. GIF is Graphics Interchange Format and is a short-animated picture without a sound. Searching a trivial gif with a regular emotion is easy to find but if some iconic expression is...
As non-renewable resources dwindle and costs increase, it becomes ever more important for people to understand and control their electricity usage. Eco-feedback devices are being developed to increase user awareness and reduce consumption. In order for feedback devices to be successfully adopted into the home, however, they must be appealing...
In a software development cycle, programs go through many iterations. Identifying and
understanding program changes is a tedious but necessary task for programmers, especially when
software is developed in a collaborative environment. Existing tools used by the programmers
either lack in finding the structural differences, or report the differences as...
Most tasks in natural language processing (NLP) involves structured information from both input (e.g., a sentence or a paragraph) and output (e.g., a tag sequence, a parse tree or a translated sentence). While neural models achieve great successes in other domains such as computer vision, applying those frameworks to NLP...