Multi-touch smart home platform application analysis

introduction

In recent years, multi-touch (MulTI-Touch) has become a new way to replace the traditional way of human-computer interaction. It abandoned the keyboard and mouse and realized the simultaneous interaction of many people. It is a revolutionary innovation in human-computer interaction. But unfortunately, the technology is still in its infancy, and many of MulTI-Touch's products are only for high-end or military users, and the price is very high. This is unbearable for the vast number of consumers. In addition, the current software industry based on MulTI-Touch applications is quite small, and most of them stay in the function of game entertainment, which also limits the development and application of the technology.

For this reason, it is very urgent to apply the MulTI-Touch technology to low-cost and market-oriented applications. Considering the new and efficient human-computer interaction of Multi-Touch, we apply it to the daily office life, and propose a Multi-Touch application solution for the office crowd to improve work efficiency and increase work pleasure.

Multi-touch smart home platform I. Brief introduction of FTIR principle

As the initial implementation of Multi-Touch, FTIR (Frustrated Total Internal Reflection) has been the most popular and the most thoroughly implemented method. The principle is to place an infrared LED on the side of the thick transparent plexiglass, so that the infrared light will totally reflect inside the glass. When a finger touches the surface of the plexiglass, the balance of total reflection will be broken, so there will be part of the light. Scattered below to be captured by the camera. Since the plexiglass is completely transparent, a layer of rear projection screen is attached to the upper or lower part of the plexiglass. On the whole, although the effect is good, this solution is too complicated because the lamp that is incident on the side is reasonably adjusted and the material requirements are also high.

Multi-touch smart home platform application analysis

Figure 1

Second, the DI principle is briefly described

The principle of DI was originally proposed by Microsoft, and its implementation principle is shown in Figure 2. In the figure, the plane touched by the user does not necessarily use plexiglass, but the key to the whole technology lies in the infrared scattering light source below the screen, which scatters the infrared light evenly on one side of the multi-touch screen. When the finger touches the surface, The finger blocks the way the light scatters upwards, and a shadow appears in the image. After further image processing, the position information about the finger can be extracted.

Multi-touch smart home platform application analysis

Figure II

In terms of implementation, DI can be made simpler. Figure 1 shows the principle of Back DI (back projection light DI), which can be seen from the infrared light incident from below. The advantage of this Back DI is that the light source is under the touch screen, can be controlled by itself, and can properly control the brightness of the infrared light; it not only realizes shadow capture, but also realizes object recognition. However, this solution requires a reasonable placement of the infrared LEDs, and ensures that the brightness of all the infrared LEDs is almost the same, and the optimal uniform illumination effect is achieved, so the implementation is very difficult.

In practice, we tried a Front DI (outside light DI) solution. In contrast to the Back DI, the infrared light that the Front DI is responsible for is taken from the touch screen. Similarly, shadows are captured due to the shading of the fingers. Although there is no HD resolution like Back DI, it is enough for desktop applications.

After analyzing and implementing the FTIR implementation plan, considering the cost and complexity of the product, we tried the DI solution, the effect is ideal, and the DI is cheap, the system is simple, and it is easier to assemble and implement. So the final work chose the DI solution.

Third, the system composition

The entire system consists of four main components: PC, camera module, projector and user's desktop. In general, the system hardware composition is relatively simple, the camera prototype uses Logitech's high-definition camera product, after removing the visible light filter and adding the infrared filter, the system collects the finger position information, and the projector serves as a display. In part, Epson's EB-X7 was chosen. On the outer frame, we designed the structure of the frame of the platform and the installation and working methods of each component.

Fourth, the software part

4.1 Software Overview

In the system design, we choose to use C# to write the program, use the finger touch event UP, DOWN, MOVE to indicate that the finger touches the touch screen, move on the touch screen, leave the touch screen three events, and use CCV to write the whole touch screen finger recognition program. And packaged into a dynamic link library to facilitate the call of subsequent programs.

CCV (Community Core Vision) is an open source/cross-platform software that solves computer vision and machine sensing. It can recognize the infrared light reflected by the touch of the finger. After the data processing, the image is clearer, and then the event is transmitted to the written DLL dynamic link library file, so that the software recognizes the specific finger motion.

The user can draw a graph by drawing on the display buffer. The graphics system uses GDI+, and GDI+ provides a more powerful drawing function, which is more suitable for the application provided by this system. A pointer to a GDI+ drawing object can be provided through a function. The display buffer is updated to the parent window after the user has finished drawing to finally display it on the screen.

Each message processing queue corresponds to a separate message processing thread that handles various events, especially user action events. The event is sent to the message processing queue as a message, and the message processing thread takes the message out of the queue and returns it after processing. There are two modes for sending a message, one is to return after sending, and the other is to wait for the message to be processed and then return after sending. The message processing thread is not destroyed until the window is closed. Message Queuing is a multi-threaded feature of the window system, which allows multiple windows to work simultaneously on Intel dual-core processors, greatly improving the performance of the window, especially when multiple users simultaneously perform complex operations, which can greatly improve parallelism. .

The operation of the message queue is mutually exclusive, and only one thread can add and delete elements in it at a time. So you need a lock mechanism to protect.

For the user operation, the parent window sends the user operation located in the child window to the child window through the message, so that it is passed down one level. In particular, the finger message is introduced. The finger message is divided into a finger down, a finger movement, and a finger leaving. The window realizes the identification of different fingers by the finger ID in the message parameter.

The operation of multiple fingers is based on an active finger table maintained by a window, and the standard records all the fingers bound to this window. The table is implemented by balancing a binary tree to increase speed.

The window designed by the system can be rotated at any angle, which can support the transfer from all angles to suit the needs of small meetings. The window has built-in support for a circular menu that informs the window user of the choice via a message. The window additionally supports keyboard operations, and the keyboard notifies the window via a character message.

4.2 Application function

4.2.1 Whiteboard

Whiteboards are a common feature in conferences, especially in design-related conferences. If designers can discuss face-to-face and express their opinions on a whiteboard, traditional paperboards can provide multi-person discussion. Environment, but can not easily modify the design, and the general network whiteboard can provide a platform for communication, but can not let many people get together to discuss and operate at the same time. Multi-Touch technology perfectly solves their problems and gives people a platform to communicate.

4.2.1 Virtual keyboard

In the application, the user not only needs to draw pictures, but also needs to type in many cases. This is only the whiteboard function can not meet the requirements of the customer to play standard Chinese characters, so a virtual touch keyboard is added, and the keyboard can be used to input text on the touch screen. The keyboard also has a Sogou input method, which can input Chinese characters.

Dot Matrix LED Display

Dot Matrix Led Display,Round Dot Matrix Led Display,5X7 Dot Matrix Led Display,1.2 Inch 5X7 Dot Matrix Display

Wuxi Ark Technology Electronic Co.,Ltd. , https://www.arkledcn.com