AIR Touch + Publication!

After much hard work and valuable input from a number of my therapist and research colleagues, the first version of the AIRTouch software was completed in September 2009. So far, we have 12 different tasks that are fully customizable and meet a variety of patient needs. Each of the activities was created using Adobe Flex (which I personally think is awesome) and although they are rather simple graphically, they are very fun to interact with.

In November 2009, Fraser and I were lucky enough to travel to Australia and give a conference presentation about our preliminary work at OzCHI 2009. You can read our conference publication here or email me for a copy. The publication was co-authored by D. Goertzen, J. Halton, Q. Ranson, W.F. Bischof and P. Boulanger.

A few of the upper-extremity-based activities are shown here:

Version two of the software is finished but I am waiting until I deploy them at the Glenrose before I begin writing about it and taking videos with my new Flip HD!

Multi-Touch TAR

After I finished my MSc degree in January, I spent the next few months working on a number of projects in the AMMI lab. One of the most fruitful projects was the design and development of the AIR Touch multi-touch system. Working with Fraser Anderson and a team of researchers and occupational therapists at the Glenrose Rehabilitation Hospital, the AIR Touch system is comprised of a 3 foot by 2 foot multi-touch surface (manufactured by NOR_/D), a FireFly MV IR camera, an off-the-shelf NEC projector, a mirror, the openFrameworks software package, and a suite of rehabilitation-inspired multi touch activities written in Adobe Flex. The lovely black 2×4 stand was created by Fraser and I in my garage (thanks Dad for the supplies!).

Version One of the system:

IR Camera Image (Top), Tracking Image (Bottom):

We chose to use a very open solution, as opposed to the Microsoft Surface or a SMART table, so we could modify or add things to the hardware setup as needed. We are currently in the process of designing version two of the hardware and I will post pictures when we are done!

Technology Assisted Rehabilitation

For my PhD research, I have been working on investigating the limitations and potential of integrating various technologies into rehabilitation programs. I have been working with a  number of occupational and physical therapists at the Glenrose Rehabilitation Hospital in Edmonton, Alberta, Canada to help increase patient enjoyment and compliance with rehabilitation activities. So far, I have been exploring Wii peripherals, virtual reality, multi-touch surfaces, tangibles, fabric-based computing, and low range RFID and have accumulated quite a collection of devices and prototyping products.

The majority of the blog will be a documentation of my experiences with technology-assisted rehabilitation (TAR) and human computer interaction (HCI). I will try to update it as much as possible, especially with youtube videos and pictures. Any questions or comments can always be emailed to me.

I am also always looking for eager high school or undergraduate students to work with me as interns or for ideas about course projects. Please check out the WISEST and HIP programs at the University of Alberta.

Alien Invasion

Last week, I decided to make a new outreach activity for the WIT and WISEST conferences that I usually volunteer at. This new activity, Alien Invasion, uses the Alice programming environment (available here) to teach elementary, junior high, and senior high school students about basic programming concepts such as loops, events, variables, and methods. The estimated time for the activity is 35 minutes teaching and 15+ minutes of self-exploration.

Backstory: You are the commander of an spaceship that was sent to earth. Your mission is to invade earth, capture as many cows as possible, and bring them back to your home planet. You flew around many different farms in the Edmonton area and found the perfect herd of cows to bring home but due to the warm temperatures on Earth, none of the controls on your spaceship work. You must repair your space ship’s controls so that you will be able to fly around the farm, determine when you are close enough to a cow to ‘beam’ it up to your ship, and then fly home.

I have made a quick YouTube video (below) that illustrates how to teach/complete the activity. The three sections at the end (Adding Animations, Changing World/Object Properties, Adding Additional 3D Objects) are optional, and can be integrated into a lesson if time permits.

If you want to use the activity, or have more questions about it, please email me. I am always happy to work with others who have an interest in STEM! Special thanks to Fraser Anderson for helping with the original Virtools version of Alien Invasion.

The SNaP Framework – A Virtual Reality Tool for Spatial Navigation

Continuing off of the work I did for my independent study course with Dr. Walter F. Bischof, my thesis project required me to create a software framework (the SNaP Framework – Spatial Navigation Framework) that would enable psychologists to easy create, control, and deploy virtual reality-based spatial navigation experiments. My main goal was to eliminate the hardware and usability issues inherent in current VR systems and create a flexible system that is easy for novices to use. I also had a number of research goals that I wanted to investigate/achieve:

  • Eliminate issues in using VR for spatial navigation research
  • Simplify input and output peripheral usage
  • Enable novice specification and deployment
  • Decrease design and implementation time
  • Reduce the volume of incomparable results
  • Create environments with similar appearances
  • Include universal interaction metaphors and behavioral recording techniques

The software framework contains a number of components (Chapter 1 and 4 of thesis):

  • Parameter File
    User-created XML file that specifies the spatial navigation experiment to be performed
  • VR Configuration Creator
    Python module that transforms each trial specified in a parameter file into a configuration file; determines if a block of trials needs to be run again due to poor performance
  • Configuration Files
    XML-based file that specifies the environmental and protocol configurations for a given experimental trial
  • VR Launcher
    Python module that determines which deployment contexts and input devices are desired
  • VRPN Server
    Open source virtual reality server/client that transforms input devices into generic device types; the data streaming from the server is used to control participant movement
  • Virtools VR Player
    Virtools-provided component that renders virtual environments
  • Virtools Composition Files
    Virtools file that contains a paradigm’s virtual world; contains custom scripts, 3D models, and universal modules to generate and render a paradigm’s virtual implementation
  • Result Files
    Capture a participant’s performance (i.e., path traveled, camera frustum images, or overall experiment results)

There are a number of ways that different groups of users can use the SNaP framework in their research. Novices can use 3D Layout window to add, relocate, or retexture 3D elements, quickly specify desired input and output peripherals, and easily deploy experiments using the provided batch scripts. Expert users can extend the XML parameter and configuration file schemas, design and integrate new 3D models, modify or add new scripting or C++ SDK code, introduce new metrics, modify the VR Configuration Creator to handle new parameter and configuration files, establish new goal monitoring algorithms, navigation metaphors, or aids, and implement new paradigms using template environment. (Chapter 5 of thesis)To test the efficacy of the SNaP Framework, I implemented a number of popular spatial navigation paradigms using the framework (I also performed a pilot study using a small sample of individuals, those results were done after my thesis was completed so they are present in my publications but not thesis). (Chapter 3 of thesis)

Complex Maze

 >

Bucket World
  

Scatter Hoarding Task

Cheng Task

Virtual Morris Water Maze