projects
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
projects [2010/05/03 19:29] – bil | projects [2010/12/10 14:54] (current) – bil | ||
---|---|---|---|
Line 42: | Line 42: | ||
- | ====== Web-based digital signage ====== | ||
- | |||
- | **Supervisor**: | ||
- | |||
- | **Required background**: | ||
- | |||
- | **Recommended background**: | ||
- | |||
- | __Description__ | ||
- | |||
- | Digital signs are increasingly used in many modern buildings to direct people to appropriate rooms for meetings, services, etc. Unfortunately, | ||
- | |||
- | One way to do this is to utilize what administrative staff are really good at: dealing with calendars. By assigning calendars to individual rooms/ | ||
- | |||
- | More specifically, | ||
Line 102: | Line 87: | ||
- | |||
- | |||
- | ====== Estimating Registration Error ====== | ||
- | |||
- | |||
- | **Supervisor**: | ||
- | |||
- | **Required background**: | ||
- | |||
- | **Recommended background**: | ||
- | |||
- | __Description__ | ||
- | |||
- | A fundamental step in computer-assisted surgery is registration where the anatomy of the patient is matched to an image or model of the anatomy. For some types of orthopaedic procedures, registration is performed by digitizing the locations of points on the surface of a bone and matching the point locations to the surface of a model of the bone. Here, a surgeon uses a pointer that is tracked using an optical tracking system to measure registration point locations on a patient. A registration algorithm is used to compute the transformation that best matches the points to a model of the anatomy. | ||
- | |||
- | |||
- | Virtual navigational information (such as where to drill or cut the bone) can be provided to the surgeon after the registration transformation has been established. Here, a surgeon is using a tracked surgical drill to drill a hole along a pre-operatively defined path. Notice that the surgeon looks at the virtual navigational information instead of the patient when performing this task. | ||
- | |||
- | |||
- | Computer-assisted surgical navigation depends on having an accurate registration. If the estimated registration is inaccurate then the navigational information will also be inaccurate, which may lead to errors in the surgical procedure. It is of great interest to know the accuracy of the estimated registration. | ||
- | |||
- | Further details on the project can be found [[http:// | ||
Line 166: | Line 129: | ||
+ | ====== Selenium/ | ||
- | ====== Robotic tangible user interface for large tabletops ====== | ||
+ | **Supervisor**: | ||
+ | **Required background**: | ||
+ | **Recommended background**: | ||
- | **Supervisor**: | + | __Description__ |
- | **Required Background**: | + | The Selenium IDE is an integrated development environment for Selenium scripts. It is implemented as a Firefox extension, and allows you to record, edit, and debug tests of web applications. The Selenium IDE is a recording tool, or you may edit your scripts by hand. With autocomplete support and the ability to move commands around quickly, Selenium IDE is the nice environment for creating webtests no matter what style of tests you prefer. |
- | **Recommended | + | Tests can be translated to Java (JUnit), C#, Python etc. It can be extended to [[http:// |
+ | |||
+ | The goal of this project is (1) to translate Selenium tests into tests that can be run under Eiffel (e.g. via ESpec or AutoTest), and (2) to provide a complete Eiffel web application creation template (with embedded database such as sqlite) for creating and testing web applications. | ||
+ | |||
+ | ====== Automated Reasoning System for Quantified Propositional Logic ====== | ||
+ | |||
+ | |||
+ | **Supervisor**: | ||
+ | |||
+ | **Required background**: | ||
+ | |||
+ | **Recommended | ||
__Description__ | __Description__ | ||
+ | Quantified Propositional Logics (QPL) plays an important role in a number of computer science disciplines from the theoretical computer science to knowledge representation and verification. There are also a number of open problems concerning this logic, and formulated more than 70 years ago, that can be finally solved (or at least approached) using automated reasoning techniques. The first step in such investigations has to be the design and implementation of a theorem prover, or automated reasoning system, for QPL. Such a system should, in principle, be able to determine whether or not a given formula of QPL is a theorem (or a tautology) in this logic. | ||
- | Tangible user interfaces provide the user with object that they can touch and use as input devices. One example | + | The theorem prover for QPL is to be designed, implemented, and fully tested. |
+ | Background: Various variants of QPL have been formally formulated for the first time in the 1920s by a number of logicians and mathematicians. In modern computer science, QPL plays a significant role in theoretical computer science (proof complexity, satisfiability) as well as in verification and AI. | ||
+ | ====== NABU Network Emulator ====== | ||
- | ====== Different " | ||
+ | **Supervisor**: | ||
- | **Supervisor**: Wolfgang Stuerzlinger | + | **Required background**: General prerequisites |
+ | **Recommended background**: | ||
- | **Required Background**: | + | __Description__ |
- | **Recommended | + | |
+ | Have you ever considered writing your own emulator of an interesting system? | ||
+ | There has been a substantial activity in building software emulators of historically significant computers, game consoles, and, recently, smart communication devices. As a result, there is at least one emulator of almost every significant system. This activity contributes, | ||
+ | |||
+ | Background : The NABU Network was designed and implemented by a Canadian company NABU Manufacturing between 1981 and 1983. The underlying idea behind the network was to link home personal computers to cable television networks which would supply a continuous, high speed stream of computer programs and information (at the rate of 6.5 Mbits per second) to almost an unlimited number of users. Cable television was a uniquely ideal technology for NABU to deliver software and data to home computers because of its high bandwidth and networking capabilities. | ||
+ | After the official launch on Ottawa Cablevision in October of 1983, the NABU Network was introduced by Ottawa' | ||
+ | |||
+ | ====== CPS/1 Emulator ====== | ||
+ | |||
+ | |||
+ | **Supervisor**: | ||
+ | |||
+ | **Required background**: | ||
+ | |||
+ | **Recommended | ||
__Description__ | __Description__ | ||
- | Many graphics programs implement snapping to facilitate drawing. Snapping ensures that end-points | + | There has been a substantial activity in building software emulators |
+ | |||
+ | BACKGROUND: The CPS/1 computer was designed | ||
+ | |||
+ | ====== Robotic tangible user interface for large tabletops ====== | ||
- | ====== Simulation of a 6dof virtual reality tracker ====== | ||
**Supervisor**: | **Supervisor**: | ||
Line 212: | Line 210: | ||
__Description__ | __Description__ | ||
- | Previous work by the supervisor resulted in a novel and highly accurate Virtual Reality tracking system that matches or exceeds the specifications of all competing systems. However, this system works only in 5 or 6-sided immersive display environment. | ||
- | This project | + | Tangible user interfaces provide the user with object that they can touch and use as input devices. One example |
- | ====== Programming Multi-Core GPUs with CUDA ====== | ||
- | **Supervisor**: | ||
- | **Required background**: | ||
- | **Recommended background**: N/A | + | ====== Better Layout Mechanisms for User Interfaces Toolkits ====== |
+ | |||
+ | |||
+ | **Supervisor**: Wolfgang Stuerzlinger | ||
+ | |||
+ | **Required Background**: | ||
__Description__ | __Description__ | ||
- | CUDA stands | + | The layout mechanisms |
- | The aim of this project is to get familiar with GPUs and to study how to program them. | ||
- | More details can be found at: [[http://www.cse.yorku.ca/ | + | ====== Predicting Visibility Obstructions for a 6DOF Tracker ====== |
- | (this link is only accessible from machines within | + | |
+ | |||
+ | **Supervisor**: Wolfgang Stuerzlinger | ||
+ | |||
+ | **Required Background**: General CSE4080 prerequisites | ||
+ | |||
+ | __Description__ | ||
+ | |||
+ | Previous work of the supervisor generated a novel and highly accurate Virtual Reality tracking system based on (eye-safe) laser diodes. The speed and accuracy of this system matches or exceeds the specification of all competing commercial systems. However, this system works only in 5 or 6-sided immersive display environment. | ||
+ | Recent work has adapted the system to track successfully with as little as one large display wall and has also characterized the accuracy more comprehensively. | ||
+ | The next step is to generalize | ||
+ | |||
+ | |||
+ | |||
+ | ====== Extensions to a 3D Modeling System ====== | ||
+ | |||
+ | |||
+ | **Supervisor**: | ||
+ | |||
+ | **Required Background**: | ||
+ | |||
+ | __Description__ | ||
+ | [[http:// | ||
+ | Each of the following two items can be considered a separate project: | ||
+ | * Integration of an existing implementation of a 3D sliding technique, which greatly facilitates 3D object movement. | ||
+ | * The ability to draw new " | ||
projects.1272914976.txt.gz · Last modified: 2010/05/03 19:29 by bil