Khlood Alharbi
Information Technology Infrastructure
الجمعة، 28 ديسمبر 2012
Multi-Touch Software Architecture:
Multi-Touch Software
Architecture:
Once the hardware part is done, there is
another equally important task to accomplish, that is to organize the raw input
image data into processed image capable of gesture detection and hence
implementation. This requires the development of multi-touch software. A
generic architecture for the design of multi-touch software can be detailed as under:
This framework establishes a link between the
input from hardware and gesture recognition. Multi-touch programming is a two-fold process: reading and
translating the “blob” input from the camera or other input device, and
relaying this information through pre-defined protocols to frameworks which
allow this raw blob data to be assembled into gestures that high-level language
can then use to interact with an application.
1. Input Hardware layer: This forms the lowest layer of the framework. It garners raw
input from the hardware in the form of video or electrical signals. The data
may be taken from the optical sensor or a physical mouse.
2. Hardware Abstraction layer: At this layer the raw input data is processed through image
processing to generate a stream of position of fingers, hands or objects.
3. Transformation layer: This layer converts the image coordinates into screen
coordinates. Here the calibration of raw data is done and sets it ready for
interpretation at the next layer. Calibration of the touchscreen for the raw
data means that the software understands which image or blob on the touch
sensor (here the image coordinates) indicates which spot on the touchscreen.
The process in layer 2 and 3 is combined
called blob tracking. For the purpose of blob tracking raw data packets are
sent to the server following a set of rules and regulations known as TUIO
protocol.
4. Interpretation layer: The interpretation layer already has the knowledge of regions on
the screen. When the calibrated data reaches this layer, it assigns a meaning
to every gesture performed over the screen. This process is known as gesture recognition. A gesture is defined by its starting point,
end point and the dynamic motion between the start and the end points. With a
multi-touch, the device should be capable of detecting a combination of such
gestures. The process of gesture recognition can be subdivided into three
steps-
· Detection of Intention- The first step is to
confirm whether the touch is made within the application window or not. Only
touches inside the window are required to be deciphered. The TUIO protocol then
relays the touch event to the server in order to know its application.
· Gesture Segmentation- The touch events are
patterned into parts depending on the object of intention.
· Gesture Classification- Now the patterned data
is mapped to its correct command.
The various modules available for gesture
recognition are Hidden Markov Models, Artificial Neural
Networks, Finite State Machine etc.
5. Widget layer:
The widget layer generates visible output for the user. The real touch interface
to the user is observed at this layer. The most popular multi-touch gestures
are scaling, rotating, translating images with two fingers and many other
innovative and interesting gestures.
· Sensor based
multi-touch technology
Multi-touch systems are also designed on
various other sensing technologies like
o Resistance based touch surfaces
o Capacitance based touch
surfaces
o Surface wave touch surfaces
(SAW)
It is to be noted that these technology caters
to high precision design and accuracy, hence complies to industry standards
only. Since the resistive and capacitive touchscreen have already been
discussed before, let us have a glance at SAW technique. The SAW hardware
consist of an infrared grid. For the detection of X and Y coordinates,
transmitting and receiving piezoelectric transducers are mounted on the glass
faceplate. On the surface ultrasonic waves are created and directed by the
reflectors. Whenever a touch is made, change in the received wave intensity is
observed and interpreted by the processor to calculate the position of
interaction
Touch Sensing Software
While touch sensing is commonplace for single points of
contact, multi-touch sensing enables a user to interact with a system
with more than one finger at a time, as in chording and bi-manual operations.
Such sensing devices are inherently also able to accommodate multiple users simultaneously, which is especially useful for
larger interaction scenarios such as interactive walls and tabletops.
Since refining the FTIR (frustrated total
internal reflection) sensing technique, we've been
experimenting with a wide variety of application scenarios and interaction
modalities that utilize multi-touch input information. These go far beyond the
"poking" actions you get with a typical touchscreen, or the gross
gesturing found in video-based interactive interfaces. It is a rich area for
research, and we are extremely excited by its potential for advances in
efficiency, usability, and intuitiveness. It's also just so much fun!
Our technique is force-sensitive, and provides unprecedented resolution
and scalability, allowing us to create sophisticated multi-point widgets for
applications large enough to accommodate both hands and multiple users.
The drafting table style implementation shown here measures
36"x27", is rear-projected, and has a sensing resolution of better
than 0.1" at 50Hz. Stroke event information is sent to applications using
the lightweight OSC protocol over UDP.
TSS: Touch Sensing Software from Freescale - How to Create a TSS Project
The TSS - Touch Sensing Software solution transforms a standard micrcontroller into a proximity capacitive touch sensor controller. The touch sensor controller has the ability to control multiple touch pad configurations and mechanical keys while maintaining its standard MCU control functionality. The Touch Sense Library enables capacitive sensing for the entire Freescale S08 family of microcontrollers. The Touch Sense library provides commonly used touch sense decoding structures as keypad, rotary, and slider. It is implemented in a software layered architecture to enable easy integration into the application code, easy migration to other Freescale microcontrollers, and for customization by customers.
The Touch Sensing Software requires CodeWarrior Development Studio Special Edition Microcontrollers Version 6.2 to be installed in the host PC.
The Touch Sensing Software requires CodeWarrior Development Studio Special Edition Microcontrollers Version 6.2 to be installed in the host PC.
TSS - Touch Sensing Software - Installation
The TSS library files are distributed in the form of binary library and source code for compile time configuration and optimization. To install the TSS on your host PC:
- 1. Download the latest version of the TSS setup file form Freescale website.
2. Run the self-extracting setup executable and follow the on-screen instructions.
3. When the system prompts for the destination folder, accept the default value or provide another
path.
The application project that is using the TSS library makes only a reference to the TSS files. You can copy the library files into the application project directory or can leave them in the installation folder. Leaving the library files in the installation folder enables you to upgrade your project to newer TSS library versions more easily in the future.
After CodeWarrior and the Freescale Touch Sensing Software (TSS) are installed, you can begin creating projects that utilize the TSS. This chapter discusses the steps required to create a new TSS project.
After CodeWarrior and the Freescale Touch Sensing Software (TSS) are installed, you can begin creating projects that utilize the TSS. This chapter discusses the steps required to create a new TSS project.
How to Create a TSS Project
To create a TSS project using the New Project wizard, perform these steps:
1. Select Start > Programs > Freescale CodeWarrior > CodeWarrior for Microcontrollers > CodeWarrior IDE. 2. The IDE launches as shown in Figure 1. From the Startup window, select Create New Project.
To create a TSS project using the New Project wizard, perform these steps:
1. Select Start > Programs > Freescale CodeWarrior > CodeWarrior for Microcontrollers > CodeWarrior IDE. 2. The IDE launches as shown in Figure 1. From the Startup window, select Create New Project.
The Microcontrollers New Project wizard appears as shown in Fig. 2:
Microcontrollers New Project Wizard — Device and Connection
3. select the derivative for the MCU family to use in the project being created. Also select the debugger connection and click on the Next button.
4. Set the programming language supported in the project. Because the Touch Sensing Library is compiled in C, select C checkbox. Also, set the project name and the location, and click on the Next button.
Microcontrollers New Project Wizard — Project Parameters
5. Add existing files into the project. You can use this step to add any of your prepared source files to the project. The TSS library files could be added now, but it is more convenient to add them to the project later after it is created.
Microcontrollers New Project — Add Additional Files
6. Select either None or Device Initialization option, because the Processor Expert option adds too much overhead for the TSS to be able to work adequately. Click on the Next button to add C/C++ options.
Microcontrollers New Project — Rapid Application Development Options
7. Perform the following steps to select the startup code, the memory model, and the floating point support.
- a) In the startup code section, select ANSI startup code option.
b) In the memory model section, select either Tiny or Small options, the library should work adequately with either option.
c) In the floating point format section, select any of the three possible options. But, depending on the MCU selected, the floating point library and the TSS may not fit in the MCU footprint. Therefore, select None when using the TSS.
Microcontrollers New Project - C/C++ Options
Click on the Next button to open the PC-Lint window.
8. PC-Lint™ is a program from Gimpel® that can help you identify common programming mistakes or suspicious lines in source code. This window provides you an opportunity to create a target to use the PC-Lint software.
8. PC-Lint™ is a program from Gimpel® that can help you identify common programming mistakes or suspicious lines in source code. This window provides you an opportunity to create a target to use the PC-Lint software.
Microcontrollers New Project — PC-Lint
9. When the project is generated, you must create the TSS_SystemSetup.h configuration header file in your application folder. For an easy start, copy one of example files provided in the “examples” folder to your project folder and modify its content.
10. With the TSS_SystemSetup.h file located within the application directory, you must compile the new project. From the CodeWarrior IDE menu bar, click Project > Make to compile.
Compiling the Project
Reference:
TSS: Touch Sensing Software Suite
TSS: Touch Sensing Software Suite
The history of multi-touch
The history of multi-touch technology dates back to 1982, when the University of Toronto developed the first finger pressure multi-touch display. Whereas today, Jefferson Y. Han, a research scientist for New York University, is one of the main developers of an "interface-free" touch-driven computer screen which is based on multi touch sensing.
The following website is a demonstration of how to build a multi touch screen and also shows what touch screens are generally made of:
http://feroz007.wordpress.com/2007/08/18/build-your-own-multitouch-display/
References:
Multi-touch consis and use
Multi-touch consis and use to:
Multi-touch consists of a touch screen, like a screen, table, wall, or touch
pad, as well as a software that recognizes multiple simultaneous touch
points. This effect is achieved through a variety of means, including heat,
finger pressure, high capture rate cameras, infrared light, optic capture,
tuned electromagnetic induction, ultrasonic receivers, transducer microphones,
laser rangefinders, shadow capture, etc.
USE ON:
Multi touch could be of use to individuals as in
telephones, MP3's and games, or it could also be of use to huge companies,
industries, and organizations where several
Tablet computer
" iPad "
All eyes are on the iPad.
With it's 9.7˝screen and quick 1GHz A4 processor, it's difficult to avoid
looking over an iPad user's shoulder at an application, game or
slideshow. The iPhone 4 was also just released and uses the same fast
processor as the iPad.
These
devices are more than just fun gadgets. For businesses, they are a gateway into
consumers’ hearts and minds. Leading-edge businesses are already building sales
tools, product demos, educational and brand-building applications that leverage
the iPad, iPhone and iPod Touch. From mobile users to marketing
campaigns, these products are poised to make a huge impact on many marketing
organizations.
To
launch a successful business application for iPad and other mobile devices,
follow these six best practices:
1. Take a user-first approach
Many
developers make the mistake of thinking about the back-end database or functionality
of an application first. This can result in an end product that's difficult to
use. To ensure a user-friendly application, start by developing the user
experience and interface design. Tackle functionality second.
2. Design with familiar
multi-touch controls
When
developing for iPad, there is no need to reinvent the wheel. In the last few
years, millions of iPhone users have already become comfortable with a familiar
set of gestures (tap, pinch, drag), navigation commands and user interfaces.
The iPad does open up new possibilities in user experience and interface
design, but may marketers will see better results when re-creating the iPhone's
familiar, user-friendly experience.
3. Build for scalability
It's
better to build a simple, scalable application with core features than to
front-load the application with too many features. After you go to market with
a basic application, you can always add additional features. It's also easy to
upgrade users to a newer version of the application either through the
marketplace, or via micro-transactions, which can occur inside an iPad
application.
4. Be realistic about
limitations
The iPad and iPhone 4 do
have much faster processors, but they still don't compare to the speed and
capability of a PC. Be sure to design for the device and don't try to
push out more than it can handle. For example, a 3D
animation showing
a tour through the human body might look great on a desktop during development,
but mobile processors might not be able to handle overly ambitious graphics.
5. Use agile development
Agile development is a
perfect fit for iPad or mobile application development. An agile
software development process helps
developers to best meet client expectations. This is because agile development
schedules are more predictable and teams can test in parallel to developing the
application. With agile development, it's also possible to add new features and
adopt clients' changing ideas late in the development stages without severely
impacting the overall schedule.
6. Tie metrics back to the
application
Before rolling out an
application, know which back-end analytics
or metrics the client wants to measure. It's important that the
mobile application automatically integrates with a client's other information
systems such as sales management tools or CRM software. While you can capture
almost any metrics on the download and use of the application, make sure you
also capture the user insights that will help you make smarter marketing
decisions in the future.
?old cell phone or a smart phone
Which would you rather have: a regular old cell phone or a smart phone? A dial-up Internet connection or
wireless?
Consumers rapidly adopt new technologies into their daily lives and it's time to add multi-touch screens and surface tables to the list. Multi-touch screens use hand gestures like pinching, tapping and dragging to navigate on-screen content instead of a mouse, track pad or keyboard.
Microsoft's surface table is a large, sleek tabletop screen that responds to gestures and physical objects placed on the table. The surface table API is currently open only to business developers, so this technology is not as mainstream as the multi-touch technology used in consumer devices like the iPhone.
Here are a few unique capabilities - only possible with multi-touch screens and surface tables, and not possible with single touch or traditional computers:
1. Trigger content based on physical objects
Surface table technology delivers a unique experience where the physical and digital worlds blend. The table recognizes physical objects when they are placed on the screen. For example, in a science exhibit, a user might choose from models of all the different planets. If they place a model of the Mars on the table, the screen might populate with content like a first-person view of the Mars rover footage, or an interactive cross-section of the planet's structure.
2. Tailor layout for a better experience
Both multi-touch and surface table technology can help users tailor the screen layout to meet their preferences. movable, re-sizable windows allow users to place content where they can most easily see it. A shorter child might want to drag a content window to the bottom of the screen to view, while a six-foot tall adult can read and view content at a higher-level. It is also easy to zoom-in for greater readability, and there's no difference between a left-handed or a right-handed person's user experience.
3. Attract larger audiences
Interactive screens are cutting-edge and still very exciting to audiences. When used at a trade show or live event, a multi-touch screen or surface table is guaranteed to draw a crowd. If there are two booths side-by-side, one with a keyboard and mouse and one with a multi-touch screen, the people will all be gathered around the multi-touch screen exhibit. While both technologies are good for generating interest, the surface table especially, is easy for a group of viewers to gather around.
4. Drive deeper engagement with content
Not only do these screens draw a crowd, they also retain that crowd for a longer time than traditional computers. The medium provides an engaging experience that will resonate with users more than a static video kiosk, or a slide presentation with a fixed point of view. When visitors interact with the multi-touch screen or a surface table, they can customize their own experience and remain in control of which content they see. People who learn better by reading may choose to view text, while the visual learners can activate animations and video.
Multi-touch Systems
Multi-touch Systems
To allow people to use touch commands that require multiple
fingers, the iPhone uses a new arrangement of existing technology. Its
touch-sensitive screen includes a layer ofcapacitive material, just like many other touch screens.
However, the iPhone's capacitors are arranged according to a coordinate system.
Its circuitry can sense changes at each point along the grid. In other words,
every point on the grid generates its own signal when touched and relays that
signal to the iPhone's processor. This allows the phone to determine the
location and movement of simultaneous touches in multiple locations. Because of
its reliance on this capacitive material, the iPhone works only if you touch it
with your fingertip -- it won't work if you use a stylus or wear non-conductive
gloves.
Unlike the mutual capacitance circuitry, a
self capacitance screen contains a transparent electrode layer.
The iPhone's screen detects touch through one of two methods:
Mutual capacitance or self capacitance. In mutual capacitance, the capacitive circuitry requires two
distinct layers of material. One houses driving lines, which carry current, and
the other houses sensing lines, which detect the current at nodes. Self
capacitance uses one layer of
individual electrodes connected with capacitance-sensing circuitry.
Both of these possible setups send touch data as electricalimpulses. In the next section, we'll
take a look at exactly what happens.
?How it works
works in multitouch:
DISPLAX™ Multitouch Technology turns
any non-conductive material into an interactive multitouch surface. Based on
projected capacitive technology, DISPLAX™ Multitouch Technology has been
developed on a transparent thinner-than-paper polymer film which can be applied
to a variety of flat and curved surfaces including glass, plastic and wood.
Features
Multi-touch detection: DISPLAX™
Multitouch Technology detects multiple fingers simultaneously on a 50-inch
screen
Air-movement detection: DISPLAX™
Multitouch Technology detects when someone blows onto the surface, measuring
the intensity and direction of the air flow.
Large and small: As small as 35 cm and
as large as three meters in diagonal and thinner than paper (100 microns).
Transparent: It can be applied to any
transparent surface and being totally transparent doesn’t interfere on the
display.
Light-weight: It weighs 300g, making
it easily transportable and easy to install.
Versatile: Can be applied on any
non-conductive flat or curved surface including glass, plastic and wood with a
thickness under 15 mm. It works in daylight or at night, indoors or outdoors,
and isn’t affected by light conditions.
Durable: The film is applied on the
back side of the surface, protecting it from scratches or other damage, with no
need for contact with the material.
Applications
DISPLAX™ Multitouch Technology was
primarily developed for enabling LCD and projection displays touchscreen
integration. Application of the technology ranges from converting entire store
windows into a touch surface, creating information screens, or developing
innovative user interfaces.
Potential customers are found in
retail and diverse industries such as telecoms, museums retail, property,
broadcast, pharma or finance. The technology will also be available for LCD
manufacturers, audiovisual integrators or gaming platforms.
Components
Hardware: DISPLAX™ Multitouch
controller attached to a nanowired polymer film.
Software: Firmware, driver, control
panel.
The Technology
DISPLAX™ Multitouch Technology works
by using a grid of nanowires embedded in a thinner-than-paper polymer film.
Each time a finger is placed on the screen or a user blows onto the surface, a
small electrical disturbance is detected allowing the micro-processor
controller to pinpoint the movement or direction of the air flow.
DISPLAX Interactive Systems, a 2010
Red Herring 100 company and multitouch expert, announces a multitouch surface
in the shape of a dome.
This new and unique device, DISPLAX
Multitouch Globe, has 1 meter (40’’) diameter and people can interact with the
contents displayed in the sphere by touching its surface. Flat surfaces are now
challenged since more natural designs can be implemented and used in other
contexts, in other ways and with different purposes. This evolution in the
touch screen industry will be showcased for the first time at Integrated
Systems Europe, held in Amsterdam, from the 31st of January to the 2nd of February.
Multitouch Globe takes advantage of
DISPLAX’s patent pending projected capacitive multitouch technology. This
technology is now available as a transparent flexible polymer film that can be
applied to non conductive flat surfaces to turn them multitouch. Contents are
displayed using a projector and a special “fish-eye” lens to adapt the
projection to the spherical surface.
There are several industries where
this type of device can be used, like Geographical Information Systems,
Museums, TV Networks and Visitor attraction or Entertainment facilities
.
DISPLAX Interactive Systems, a 2010 Red Herring 100 company and
multitouch expert, announces a multitouch surface in the shape of a dome.
This new and unique device, DISPLAX Multitouch Globe, has 1 meter (40’’) diameter and people can interact with the contents displayed in the sphere by touching its surface. Flat surfaces are now challenged since more natural designs can be implemented and used in other contexts, in other ways and with different purposes. This evolution in the touch screen industry will be showcased for the first time at Integrated Systems Europe, held in Amsterdam, from the 31st of January to the 2nd of February.
Multitouch Globe takes advantage of DISPLAX’s patent pending projected capacitive multitouch technology. This technology is now available as a transparent flexible polymer film that can be applied to non conductive flat surfaces to turn them multitouch. Contents are displayed using a projector and a special “fish-eye” lens to adapt the projection to the spherical surface.
There are several industries where this type of device can be used, like Geographical Information Systems, Museums, TV Networks and Visitor attraction or Entertainment facilities.
This new and unique device, DISPLAX Multitouch Globe, has 1 meter (40’’) diameter and people can interact with the contents displayed in the sphere by touching its surface. Flat surfaces are now challenged since more natural designs can be implemented and used in other contexts, in other ways and with different purposes. This evolution in the touch screen industry will be showcased for the first time at Integrated Systems Europe, held in Amsterdam, from the 31st of January to the 2nd of February.
Multitouch Globe takes advantage of DISPLAX’s patent pending projected capacitive multitouch technology. This technology is now available as a transparent flexible polymer film that can be applied to non conductive flat surfaces to turn them multitouch. Contents are displayed using a projector and a special “fish-eye” lens to adapt the projection to the spherical surface.
There are several industries where this type of device can be used, like Geographical Information Systems, Museums, TV Networks and Visitor attraction or Entertainment facilities.
الاشتراك في:
الرسائل (Atom)