Interaction interface for controlling an application

Image sequences are accessed, the sequences each taken, from a different perspective, of a portion of a radiation region defined by projected electromagnetic radiation. The image sequences each include a projection image taken during an emitting period in which the projected electromagnetic radiation is emitted, the projection image being of ambient electromagnetic radiation and of an object within the portion being illuminated with the projected electromagnetic radiation, and an ambient image taken during an extinguishing period in which the projected electromagnetic radiation is extinguished, the ambient image being of the ambient electromagnetic radiation. A position of the object using the projection images and the ambient images is determined, an application is controlled based on the determined position.

TECHNICAL FIELD

This description relates to techniques for determining a position of an illuminated object and controlling an application based on the determined position.

BACKGROUND

Applications may be controlled by holding, or otherwise touching, tactile devices that are directly coupled to a device running the application. For example, an input device or pointing device is a hardware component that allows a computer user to input data into a computer. A control (or widget) of an application is an interface element that the computer user interacts with, such as by using an input device, to provide a single interaction point for the manipulation of data.

SUMMARY

In one aspect, image sequences are accessed, the sequences each taken, from a different perspective, of a portion of a radiation region defined by projected electromagnetic radiation. The image sequences each include a projection image taken during an emitting period in which the projected electromagnetic radiation is emitted, the projection image being of ambient electromagnetic radiation and of an object within the portion being illuminated with the projected electromagnetic radiation, and an ambient image taken during an extinguishing period in which the projected electromagnetic radiation is extinguished, the ambient image being of the ambient electromagnetic radiation. A position of the object using the projection images and the ambient images is determined, an application is controlled based on the determined position.

Implementations may include one or more of the following aspects. In the emitting and extinguishing periods, emitting and extinguishing the projected electromagnetic radiation may be alternated. Modified images may be generated based upon modifying each projection image with a corresponding ambient image, where the position is determined using the modified images. Generating the modified images may include subtracting the corresponding ambient image from each projection image. Whether the modified images include pixel values less than zero may be determined, and, if the modified images include pixels values less than zero, any pixel value less than zero may be set to zero. The projection image may be of the ambient electromagnetic radiation, of the object within the portion being illuminated with the projected electromagnetic radiation, and of a reflection of a background illuminated by the projected electromagnetic radiation. The reflection of the background may be modeled, and the projected image may be modified based on the modeled reflection. The ambient images may be compensated to account for illumination of the object by the ambient electromagnetic radiation. The ambient light may include unobscured ambient light not obscured by the object. Each image sequence may include at least a pair of images, where the pair of images may include the projection image and the ambient image. The ambient image may be taken during an extinguishing period that immediately proceeds or immediately follows the emitting period during which the projected image is taken.

Determining the position may include determining two-dimensional or three-dimensional coordinates representing the position relative to an edge of the region. The determined position may be output to the application. A motion of the object may be determined based on the determined position, and the application may be controlled based on the determined motion. Determining the position of the object using the projection images and the ambient images may include determining a first position of the object using the projection images and the ambient images from a first sequence taken from the first perspective, determining a second position of the object using the projection images and the ambient images from a second sequence taken from the second perspective, and combining the first position of the object and the second position of the object. The first and second positions may be combined using triangulation. The projected electromagnetic radiation may include infrared light. Each projection image and ambient image may be cropped, and the position of the object may be determined using the cropped projection images and ambient images. A region of interest may be defined within the radiation region. The position may be expressed as a percentage of a height of the region of interest and a percentage of a width of the region of interest.

In another aspect, a device includes a processor configured to access image sequences, the sequences each taken, from a different perspective, of a portion of a radiation region defined by projected electromagnetic radiation. Each of the image sequences includes a projection image taken during an emitting period in which the projected electromagnetic radiation is emitted, the projection image being of ambient electromagnetic radiation and of an object within the portion being illuminated with the projected electromagnetic radiation, and an ambient image taken during an extinguishing period in which the projected electromagnetic radiation is extinguished, the ambient image being of the ambient electromagnetic radiation. A position of the object is determined using the projection images and the ambient images, and an application is controlled based on the determined position. The device also includes a memory configured to store the image sequences, and transfer the image sequences to the processor.

In another aspect, a system includes an interaction interface configured to control an application based on a position of an object. The interaction interface includes a processor configured to access image sequences, the sequences each taken, from a different perspective, of a portion of a radiation region defined by projected electromagnetic radiation. The image sequences include a projection image taken during an emitting period in which the projected electromagnetic radiation is emitted, the projection image being of ambient electromagnetic radiation and of an object within the portion being illuminated with the projected electromagnetic radiation, and an ambient image taken during an extinguishing period in which the projected electromagnetic radiation is extinguished, the ambient image being of the ambient electromagnetic radiation. The processor is also configured to determine a position of the object using the projection images and the ambient images. The system also includes an application interface configured to output the position, and a memory configured to store the image sequences, and transfer the image sequences to the processor. The system also includes a device executing the application, the device receiving the position and transferring the position to the application such that the application reacts based on the position.

In another aspect a computer-readable medium encoded with a computer program product including instructions that, when executed, operate to cause a computer to perform operations including accessing image sequences, the sequences each taken, from a different perspective, of a portion of a radiation region defined by projected electromagnetic radiation. Each of the image sequences includes a projection image taken during an emitting period in which the projected electromagnetic radiation is emitted, the projection image being of ambient electromagnetic radiation and of an object within the portion being illuminated with the projected electromagnetic radiation, and an ambient image taken during an extinguishing period in which the projected electromagnetic radiation is extinguished, the ambient image being of the ambient electromagnetic radiation. A position of the object is determined using the projection images and the ambient images, and an application is controlled based on the determined position.

Implementations of any of the techniques described above may include a method, a process, a system, a device, an apparatus, an interaction interface, instructions stored on a computer-readable medium, a computer-readable medium encoded with a computer program. The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features will be apparent from the description and drawings, and from the claims.

DETAILED DESCRIPTION

An interaction interface may control an application running on a device separate from the interaction interface by determining a position of an object with respect to a housing of the interaction interface and controlling the application based on the determined position.

Referring toFIG. 1A, an example scenario100illustrates an interaction interface105through which a user110interacts with and/or controls an application115that is remote from the interaction interface105. The user110interacts with the application115through the interaction interface105without requiring the user to touch or otherwise make direct contact with the interaction interface105. In particular, the interaction interface105determines a position of an object111(which is a hand or finger of the user110in this example), or an indicia of the position of the object111, with respect to the interaction interface105. The position, or indicia of the position, of the object111is used to control the application115. For example, the position of the object111may be used to determine the position of a cursor116used in the application115.

By determining the position, or an indicia of the position, of the object111, the interaction interface105allows the user to interact with and/or control the application115with natural hand motions and without having to make direct contact with physical hardware connected to a device running the application115. As compared to techniques that employ tactile devices (such as, for example, mice, keyboards, and styli) or voice-based input, which may be unreliable, the interaction interface105may allow the user110to interact more easily and more accurately with the application115.

The interaction interface105includes a housing106, sensors107, and emitters108. Although, due to the perspective of the scenario100, only one sensor is shown in the example ofFIG. 1A, the interaction interface105may include at least one additional sensor. The example shown inFIG. 1Aincludes multiple emitters108; however in other examples, the interaction interface105may include a single emitter. The emitters108are configured to alternate between emitting electromagnetic radiation during an emitting period and extinguishing electromagnetic radiation during an extinguishing period. Thus, the emitters108emit flashing electromagnetic radiation. The emitters108may be, for example, emitters of infrared radiation. The sensors107collect data during the emitting and extinguishing periods. The sensed electromagnetic radiation from both the emitting and extinguishing periods is used to determined a position of the object111relative to the interaction interface105, and the determined position of the object111is used to control the application115.

During emitting periods, the object111is illuminated with electromagnetic radiation emitted from emitters108, and electromagnetic radiation reflected from the illuminated object111is detected by sensors107. Thus, during emitting periods, objects illuminated by the emitted electromagnetic radiation reflect the electromagnetic radiation and are imaged by the sensors107. However, objects that are self-illuminating (such as a ceiling light119) or are reflecting electromagnetic radiation from other sources are present in images collected by the sensors107during emitting periods and during extinguishing periods. Thus, objects illuminated by the emitted electromagnetic radiation may be present only in images collected by the sensors107during periods when the emitters emit electromagnetic radiation, or are more visible or prevalent in those images. Accordingly, modifying an image collected during an emitting period with an image collected during an extinguishing period removes most, if not all, of the self-illuminated objects from the resulting modified image. Because the modified image may include only those objects that are illuminated by the electromagnetic radiation (such as the hand111), the modified image may be analyzed to determine the position of the illuminated object.

In the example shown inFIG. 1A, the application115is a software application that includes a user interface displayed on a screen120. The software application may be, for example, a slide presentation application running on a personal computer and displayed on the screen120by a projector. To control the application115, the object111(which is a hand or finger of the user110in this example) moves from a first object position112to a second object position113within a defined region of interest125.

Objects outside of the region of interest125(such as the ceiling light119and an audience member130moving their hand132to attract the attention of the user110) may not be illuminated by the emitters. Thus, objects such as the hand132and the ceiling light119are either not imaged by the sensor107at all (such as the hand132) or are self-illuminating objects that are detected by the sensors regardless of whether the object is illuminated by the emitted electromagnetic radiation or not (such as the ceiling light119). Accordingly, objects such as the hand132and the ceiling light119either do not appear in any images generated by the sensors107or appear in all images collected by the sensors107are removable from the images collected by the sensors107. Thus, the position of either type of object is not determined and the objects do not interfere with the determination of the positions112or113.

The up-and-right motion of the hand111of the user110from the first object position112to the second object position113results in a cursor116moving up-and-right from a first cursor position117to a second cursor position118. Thus, by moving the hand111from the first object position112to the second object position113, the user110causes the cursor116to move from the first cursor position117to the second cursor position118on the screen120. The movement of the cursor116may allow the user110to, for example, select an icon shown at the second cursor position118or close a graphical user interface window shown at the second cursor position118. Actions such as selecting or closing may be performed by additional movements of the hand111and/or by gestures of the hand111. Thus, controlling an application may involve mapping detected object positions to mouse events.

Referring toFIGS. 1B and 1C, the interaction interface105is shown emitting projected electromagnetic radiation during an emitting period (FIG. 1B) and extinguishing projected electromagnetic radiation during an emitting period (FIG. 1C). The projected radiation is emitted from the emitters108, and the projected radiation defines a radiation region140that includes the region of interest125. The region of interest125may be dynamically defined as a rectangular region within both the fields of view of at least two sensors, and the radiation region140. The shape and position of the region of interest125may be defined based on the size and shape of the screen125, the capabilities of the sensors and emitters, the position of the user110relative to the housing106, user preferences, or other factors.

Objects within the radiation region140are illuminated by the projected radiation during the emitting period and may be referred to as illuminated objects. The projected radiation region140is adjacent to the housing106. For example, the projected radiation region140may extend vertically from a top side141of the housing106, as columns or cones of electromagnetic radiation. The radiation region140may include regions above the housing106and within edges142,143while excluding regions that are above the housing106and outside of the edges142,143(such as a region144). Thus, objects that are outside of the radiation region140(such as the audience member's hand132) are not illuminated by the emitters108.

Furthermore, whileFIG. 1Bdescribes the radiation region140as arising vertically “above” the housing106, if reoriented or reconfigured the radiation region may extend outwardly from the housing106in any direction, including below, to the side, or to the front or back. For instance, if the housing106were hung from the ceiling, the radiation region may extend vertically downward from the housing, to the floor.

The sensors107each have a field of view, which may be considered to be an angular extent of a region that is observable by each of the sensors107. In the example shown inFIG. 1B, the interaction interface105includes two sensors (not shown), which have respective fields of view146and147. The region of interest125may be defined by the portion of the radiation region140that falls within both of the fields of view146and147. Thus, the region of interest125may be that portion of the radiation region140that is observable, or imaged, by the sensors107. In this manner, objects within the region of interest125may both illuminated by projected radiation emitted from the emitters108and imaged by the sensors107such that the position of the objects within the region of interest125may be determined.

In particular, the objects within the region of interest125are imaged from two perspectives, which allows the positions of the objects within the regions of interest125to be determined. For example, objects within the region of interest125are imaged with a sensor having the field of view146and a sensor having a field of view147. Positions of the objects with respect to the field of views146and147are determined from, for example, the image data produced by the sensors107. Because the actual positions of the sensors107are known, the angular extent of the fields of view146and147are known, and the position of the region of interest125relative to the sensors107and housing106is also known, the position of the objects within the region of interest125relative to the housing may be determined.

In the example shown inFIG. 1B, the hand111of the user110is within the region of interest125at both the first object position112and the second object position113. Thus, the position of the hand111of the user110is illuminated by the projected electromagnetic radiation during the emitting period, and the position of the hand111may be determined relative to the housing106. Referring briefly toFIG. 1A, the position of the hand111, and other objects within the region of interest125, may be determined relative to a corner160of the region of interest125. For example, the region of interest125may include a horizontal axis161and a vertical axis162, and the positions of the first object position112and the second object position113may be determined to be a percentage of the total length of the horizontal axis161and the vertical axis162. For example, the first object position112may be a position that is 17% of the length of the horizontal axis161and 20% of the length of the vertical axis162, and the second object position113may be a position that is 82% of the length of the horizontal axis161and 90% of the length of the vertical axis162. In other examples, the first and second object positions112,113may be measured from another point within the region of interest125or from another point on the boundary of the region of interest125. By expressing object positions as percentages instead of coordinates, the position indicia can be output without providing the resolution of the screen120to the interaction interface105.

Referring again toFIGS. 1B and 1C, although positions of objects within the region of interest125are determined, positions of objects that are outside of the region of interest are not necessarily determined. For example, the hand132of the audience member is not within the region of interest125, nor is the ceiling light119. Additionally, neither the hand132nor the ceiling light119are within the radiation region140; thus, neither the hand132nor the ceiling light119is illuminated with the projected electromagnetic radiation during an emitting period. As discussed above, the ceiling light119is a self-illuminating object in the field of view146that appears in images collected during both emitting and extinguishing periods and is removed from the images from which the positions of objects are determined. Thus, although objects such as the ceiling light119are imaged by the sensors107, the position of these objects is not determined. Other objects, such as an object152, may be within the field of view147and within the radiation region140but not in the field of view146. Thus, the object152is illuminated by the projected electromagnetic radiation, and the object152is imaged by the sensor associated with the field of view147. However, the object152is not imaged by the sensor associated with the field of view146. Thus, the position of the object152is not determined. Similarly, the object153is within the field of view146and is within the radiation region140, but the object153is not within the field of view147. Thus, positions of the object153is not determined.

Referring toFIG. 1C, the interaction interface105is shown extinguishing projected radiation during an extinguishing period. During the extinguishing period, the emitters108are turned off, switched off, blocked, extinguished, or otherwise configured to not project electromagnetic radiation. The extinguishing period shown inFIG. 1Coccurs immediately or shortly after the emitting period shown inFIG. 1B. Thus, the objects shown inFIG. 1Bare present during the extinguishing period shown inFIG. 1C. However, during the extinguishing period, the emitters108emit no, or very little, electromagnetic radiation. Thus, during the extinguishing period, objects that otherwise would be within the radiation region140(such as the hand111) are not illuminated by projected electromagnetic radiation, do not reflect projected electromagnetic radiation, and, thus, are not imaged by the sensors107. However, objects within the field of view146and147are imaged by the sensors107even during the extinguishing period, and self-illuminating objects such as the ceiling light119, appear in images collected by the sensors107during the extinguishing period. Because the self-illuminating objects appear in both images collected during the emitting period and during the extinguishing period and the illuminated objects (such as the hand111) appear only in the images collected during the extinguishing period, the self-illuminating objects may be removed from the image data. The illuminated objects remain in the image data and may be analyzed to determine the positions of the illuminated objects relative to the housing106.

Thus, through the interaction interface105, the user may interact with the application115. While the application has been described above as being remote from the interaction interface105, such description is made merely for the sake of brevity. In other exemplary implementations, the application may be invoked locally on the interaction interface105.

Referring toFIG. 2, a block diagram of an example system200includes an interaction interface210for controlling and/or interacting with a device290that runs an application295. The interaction interface210may be similar to the interaction interface105discussed above with respect toFIGS. 1A-1C. For example, the interaction interface210may be used to control a software application (such as a presentation program) running on a personal computer.

The interaction interface210includes a housing215, a source system220, a detection system230, an analysis module240, an application interface250, a controller255, a memory260, a processor265, a power module270, and a hub275. The housing215may be similar to the housing106discussed above with respect toFIGS. 1A-1C. The housing215may enclose all or some of the components of the interaction interface210. For example, the source system220, the detection system230, the analysis module240, the controller255, the application interface250, the processor265, the memory260, and the power module270may all be enclosed within the housing215such that the housing has a relatively smooth surface without protruding components. Such a design may allow the interaction interface210relatively easy to transport with other personal effects while also protecting the components of the interaction interface210.

In some implementations, the housing includes ports that open to the exterior of the housing215to allow, for example, devices and/or sources of power to connect to the interaction interface210. The housing215may be made of any type of material that is relatively rigid, durable, and lightweight. For example, the housing215may be made from plastic, metal, or a combination of such materials. In implementations in which the source system220is partially or completely enclosed within the housing215, the housing215may include a material that is transparent to the electromagnetic radiation emitted from the emitters. The material may be placed over the emitters such that the electromagnetic radiation emitted from the emitters leaves the housing during an emitting period to illuminate objects in the region of interest105. Similarly, in implementations in which the sensor system is partially or completely enclosed in the housing215, the material may be placed over the sensors such that electromagnetic radiation reaches the sensors. In addition to being transparent to the electromagnetic radiation, the material may be opaque to wavelengths outside of the wavelength band of the electromagnetic radiation. Thus, the material may act as a filter in these implementations.

The housing215may be generally cubic in shape. For example, the housing may have a longitudinal cross section in the shape of, for example, a rectangle, a substantially square shape, a diamond, or a trapezoid. In some implementations, the housing215includes one or more flanges at either end of the housing215. The flanges may include a portion that is higher than the other portions of the housing215, and the flanges may house all or part of the sensor system230. In some implementations, the sensor system230is located in a portion of the housing215other than the flanges.

The source system220generates projected electromagnetic radiation to form the radiation region140during an emitting period as discussed above with respect toFIGS. 1A-1C. The source system220includes emitters222, lenses224, filters226, and an emitter driver228. The emitters222may be LEDs that emit infrared light in the near-infrared spectral region. In some implementations, the emitters222are LEDs that emit light having a wavelength of approximately 850 nanometers (nm). The source system220may include multiple emitters222, or the source system220may include a single emitter. The emitters222emit electromagnetic radiation of sufficient power to illuminate objects within the radiation refion140; however, the electromagnetic radiation emitted by the emitters222is sufficiently low power as to not pose a safety threat to the eyes of persons in the vicinity of the interaction interface210(such as a user of the interaction interface210).

The source system220also may include lenses224. The lenses224may be used to shape the electromagnetic radiation that is emitted from the emitters222. For example, the lenses224may be narrow-angle lenses that have a relatively small angle of half intensity (such as an angle of half intensity of 6-7 degrees). Such a lens224may be used to collimate, or partially collimate, the electromagnetic radiation emitted from the emitters222such that the radiation region140is defined within a region that is adjacent to the housing215but does not spread beyond the edges of the housing. Defining the radiation region140in this manner may allow the interaction interface210to avoid detecting extraneous objects outside of the region of interest125(such as the audience member's hand132shown inFIG. 1A). The source system220also may include filters226. The filters226may be used to generate electromagnetic radiation of a particular wavelength or band of wavelengths. For example, the filters226may be band-pass filters that filter electromagnetic radiation emitted from the emitters222such that the electromagnetic radiation has a wavelength in the near-infrared region.

The source system220also includes the emitter driver228. As discussed above with respect toFIGS. 1A-1C, the interaction interface105emits projected electromagnetic radiation during an emitting period and extinguishes electromagnetic radiation during an extinguishing period. Similarly, the interaction interface210emits projected electromagnetic radiation during an emitting period and extinguishes electromagnetic radiation during an extinguishing period. The emitter driver228drives the emitters222such that the emitters222are on (and emit electromagnetic radiation) during the emitting period and off (such that the emitters222extinguish, or do not emit, electromagnetic radiation) during the extinguishing period. The emitter driver228may include a timer that sets the duration of the emitting and extinguishing periods. In some implementations, the duration of the emitting and extinguishing periods are the same. The emitter driver228may be controlled by the controller255(e.g., the controller255may set the emitting and extinguishing periods).

The interaction interface210also includes the detection system230. The detection system230collects and images electromagnetic radiation reflected from objects within the radiation region140and electromagnetic radiation emitted from self-emitting objects within the fields of view of the sensors232. The detection system230includes sensors232, lenses234, and filters236. The sensors232include more than one sensor, and the sensors may be the same type of sensor. In some implementations, the detection system230includes two sensors. The sensors232may be, for example, cameras. In some implementations, the sensors232are Firefly® MV cameras, or Dragonfly® 2 cameras, both of which are available from Point Grey Research of Vancouver, British Columbia, Canada. In some implementations, the sensors232are digital cameras, and in some implementations, the sensors232are video cameras. The sensors232include lenses234to capture and focus electromagnetic energy within the field of view of the sensors232.

The sensors232also include filters236. The filters236may be filters that allow electromagnetic radiation having wavelengths equal to those wavelengths emitted by the emitters222to reach the sensors232while preventing electromagnetic radiation having other wavelengths from reaching the sensors232. For example, the emitters222may emit 850 nm light. In this example, the filters236may be long-pass (or high-pass) filters that transmit electromagnetic radiation having a wavelength of 850 nm or greater. Alternatively, the filters236may be band-pass filters that transmit 850 nm light and wavelengths within a band of wavelengths greater than and less than 850 nm. Thus, the filters236are designed to help eliminate or minimize light from images collected by the sensors232that does not come from objects within the region of interest125such that the position of objects in the region of interest125(such as the hand111shown inFIG. 1A) may be more easily determined. However, some ambient light sources within the field of view of one or more of the sensors232may emit electromagnetic radiation of the same wavelengths as the electromagnetic radiation emitted from the emitters222, and the filters236may transmit radiation from such ambient light sources.

For example, an incandescent light may emit electromagnetic radiation within a range of 400 nm to 900 nm including sufficient electromagnetic radiation at 850 nm such that an incandescent light in the field of view of the sensors232is imaged by the sensors232even with the filters236in place. Thus, the filters236may not eliminate all of the ambient light present in the fields of view of the sensors232. However, as discussed below, for example, with respect toFIGS. 8 and 9, ambient light sources remain constant, or nearly constant, across two frames collected by the sensors232. Thus, the effects of ambient light sources may be removed, or greatly reduced, by mathematically removing portions of the data collected by the sensors that remain constant frame-to-frame. The hub275may combine the data from multiple sensors232into a single data stream that is transmitted to the processor265, or to the analysis module240.

The interaction interface210also includes an analysis module240. The analysis module240determines a position or an indicia of a position of an object in the region of interest125(such as the hand111shown inFIG. 1A). The analysis module240includes a comparison module242, a position determination module244, and a background modeling module246. The comparison module242modifies images taken by a particular sensor232during an emitting period based on images taken by the same sensor232during an extinguishing period. The comparison module242may modify the images by, for example, subtracting an image taken during the extinguishing period from an image taken during the emitting period. Regardless of the technique used to modify the images collected during the emitting period based on the images collected during the extinguishing period, the comparison module242performs the technique on images collected from all sensors included in the sensor system220. The techniques performed on data collected by each of the individual sensors232may be the same or different techniques may be used for each sensor.

The background modeling module246further modifies the images by removing (by subtraction, for example) static objects that are illuminated by the projected radiation during the emitting period such as a part of a ceiling that reflects the projected radiation back downwards. The background modeling module246samples images modified by the comparison module242, and stores into memory260a number of samples spanning a period of time. The background modeling module246further selects, for each part of the image, an intensity that is representative of the part in the majority of the samples, as a model of the background reflection of the projected radiation that remains static. The model of the background reflection is subtracted (or otherwise removed) from the images modified by the comparison module242, producing images modified by both the comparison module242and background modeling module246.

The interaction interface210also includes an application interface250. The application interface250communicates data between the interaction interface210and the device290, which runs an application295. In particular, the application interface250communicates a position, or indicia of the position, of an object in the region of interest125to the device290. The device290passes the position, or indicia of position, to the application295and the application295reacts based on the position, or indicia of position. The application interface250may be a wireless or wired interface between the interaction interface210and the device290. For example, the application interface250may be a Universal Serial Bus (USB) port on the housing215that accepts a USB cable connected to the application295. In another example, the application interface250may be a Bluetooth wireless transceiver through which the interaction interface communicates data to the device290through the Bluetooth protocol. In other examples, the application interface250may be an infrared transceiver, an Ethernet port, a FireWire port, or a WiFi transceiver.

The interaction interface210also includes a controller255. The controller255controls the emitters232such that the emitters232emit electromagnetic radiation during an emission period (e.g., the emitters232are ON during the emission period) and the emitters232extinguish electromagnetic radiation during an extinguishing period (e.g., the emitters232are OFF during the extinguishing period). The controller255also may control the operation of the sensors232. For example, the controller255may determine a frame rate of the sensors232, and the controller255may determine the timing of the transfer of data collected by the sensors232to the storage medium260and/or the timing of the analysis of the data collected by the sensors232by the analysis module240. Additionally, the controller255may control the emitting and extinguishing periods of the emitters222by synchronizing the emitting and extinguishing periods of the emitters222to the frame rate of the sensors232. In some implementations, the controller255may control the frame rate of the sensors232by synchronizing the frame rate of the sensors232to coincide with the emitting and extinguishing periods of the emitters222. Controlling the sensors232in this manner may ensure that the sensors232collect data during an emitting period and an extinguishing period. The controller255also may determine the timing of the communications between the interaction interface210and the device290.

The interaction interface210also includes the memory260. The memory260may be local to the interaction interface210and may be enclosed within the housing215. The memory260may be a semiconductor memory device, such as an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a flash memory device, or another type of component or medium that stores data. The memory260may store data collected by the sensors232. The data collected by the sensors232is passed to the analysis device240for processing, and the processed data may be stored on the memory260. For example, a position, or indicia of a position, of an object in the region of interest125may be stored on the memory260. The memory260also may store instructions that implement the analysis performed by the comparison module242and the position determination module244. The instructions may be in the form of, for example, a computer program. In some implementations, the memory260is configured to overwrite stored data with recently received data. Thus, in these implementations, the memory260may be relatively small.

The interaction interface210also includes the processor265. The processor265may be any type of processor that receives instructions and data from a memory device (such as the memory260), where the instructions cause the processor to perform one or more actions. For example, the processor265may receive instructions from the memory260such that the processor265determines a position or an indicia of a position of an object in the region of interest125. The processor265may be local to the interaction interface265such that the processor265is enclosed in the housing210; however this is not necessarily the case. For example, in some implementations, the processor265may be co-located with the device290. In these implementations, the application interface250may communicate data collected by the sensors to the device290where the data is passed to the processor265for processing.

The interaction interface210also includes the power module270. The power module270receives power and distributes the power to other components of the interaction interface210such that the power module270allows the interaction interface210to be powered ON or turned OFF. For example, the power module270supplies power to the emitters222, the sensors232, the application interface250, the memory260, and the processor265. The power module270may be a port that opens to an exterior of the housing215and accepts a power connection. The power connection may be, for example, a plug that connects to an AC power supply that connects to a standard wall power outlet. In other examples, the power module270may be combined with the application interface250such that the interaction interface210receives power through the same medium as the interaction interface210communicates with the device290. For example, the interaction interface210may receive power through a USB cable that is also connected to the device290. In other implementations, the power module270may be local to the interaction interface210. For example, the power module270may be a battery in the interaction interface210.

The distribution of the power from the power module270may be controlled by the controller255. For example, the controller255may withhold power from one or more components that are not being used in order to reduce the amount of power used by the interaction interface232. In another example, the controller255may place the interaction interface210in a “standby” or “sleep” mode when the interaction interface210has not been active for a predetermined amount of time (for example, 10 minutes).

The interaction interface210communicates with the device290through the application interface250. The device290runs an application295that is controlled based on the data received from the interaction interface210. For example, the device290may be a personal computer and the application295may be a game designed to run on the personal computer. In this example, an avatar representing a player of the game295is controlled through the interactions of the player with the interaction interface210. For example, the player may move one of their fingers above the interaction interface210such that the finger moves within the region of interest125of the interaction interface210. In response, an avatar in the game295moves.

Although in the example shown inFIG. 2, the device290that runs the application295and the interaction interface210are shown as separate components, this is not necessarily the case. For example, in some implementations, the device290may be enclosed within the housing215or otherwise co-located with the interaction interface210. In another example, the application295may run on a processor co-located with the interaction interface210without the device290.

Referring toFIGS. 3A-3C, a front view, a back view, and a top view of an example interaction interface305are respectively shown. The interaction interface305may be similar to the interaction interface105and/or the interaction interface210discussed above with respect toFIGS. 1A and 2, respectively.

Referring toFIG. 3A, a front view of the interaction interface305is shown. In the example shown inFIG. 3A, the profile of a housing310of the interaction interface305is shown from front311as, for example, the interaction interface305rests on a bottom side312on a platform or table (not shown). The profile of the housing310is represented by the solid line. In the example shown, the housing310has a shape that is generally “U-shaped”; however, in other examples, the housing310may have a different shape. The housing310includes a left flange320and a right flange321that each extend upward from a flat top portion324of the housing310. The right and left flanges320and321respectively include a slanted edge322and a slanted edge323. The housing310includes a top portion325having a substantially flat surface in the region between the flat top portion324and a boundary326. The example shown inFIG. 3Aincludes a beveled portion328that slopes at an angle such that a thickness of the housing310narrows between the boundary326and the bottom side312. In other examples, the beveled portion328may be flat such that the beveled portion328and the top portion325have a flat surface when joined. The beveled portion328may be unitary with the top portion325or the beveled portion328may be removable from the top portion325. In implementations having a removable beveled portion328, the beveled portion328may be secured to the top portion325by a fixation device such as latches or screws. In some implementations, the beveled portion328may be a clamshell section that snaps onto the top portion325.

The width of the housing310is represented by a length “w.” The length “w” may be, for example, approximately 15.75 inches (e.g., 40.0 centimeters). The height of the housing is represented by a height “h.” The height of the housing310may be, for example, approximately 4.25 inches (e.g., 10.8 centimeters). In another example of the housing310, the length “w” is approximately 13.25 inches (e.g., 33.7 centimeters), and the height “h” is approximately 2.5 inches (e.g., 6.4 centimeters). In some implementations, the bottom side312may be as wide, or almost as wide, as the length “w.” Referring toFIG. 3B, a back view of the interaction interface305is shown. Similar to the front311shown inFIG. 3A, the back330of the interaction interface includes the right and left flanges320and322, the top portion325, the boundary326, and the beveled portion328. In addition, the back330includes a port section332, which includes a communications port334and a power port336. The communications port334may be similar to the application interface250, and the power port336may be similar to the power module270discussed above with respect toFIG. 2. In the example shown inFIG. 3B, the communications port334is a port configured to accept a FireWire connection, and the power port336is a port configured to accept a round power adaptor plug. Boundaries338and339indicate edges of the port section332.

Referring toFIG. 3C, a top view of the interaction interface305is shown. The top view shows the top flat surface324, the left and right flanges320and321, the slanted portions322and323, the port section332, the communications port334, and the power port336. In the example shown, holes345are formed in the top flat surface324. The holes345may be sized to accept emitters of electromagnetic radiation, such as the emitters222discussed above with respect toFIG. 2. The holes345may be, for example, 6 millimeters in diameter. Sensor openings348and349are respectively formed in the slanted portions322and323. The sensor openings348and349may each be sized to receive a sensor that senses electromagnetic radiation within a field of view of the sensor. The sensor openings348and349may be sized to receive the sensors232discussed above with respect toFIG. 2. In some implementations, the sensor openings348and349both have an approximate diameter of 16 millimeters. The sensor openings348and349are generally circular in shape, although the sensor openings348and349may have any shape that accommodates the sensors. However, in the example shown inFIG. 3C, the sensor openings348and349are shown as having an elliptical shape because of the position of the openings348and349on the slanted portions322and323. In some implementations, the sensor openings348and349may be located separate from the flanges320and321. For example, the sensor openings348and349may be formed in the top portion325in implementations in which the sensors (such as the sensors232) are recessed into the top portion325.

In the example shown inFIG. 3C, the holes345are linearly disposed and equally spaced on a surface of the top flat surface324. Additionally, in the example shown inFIG. 3C, the holes345are linearly disposed along a line that, if extended, would intersect the center of the sensor openings348and349. The center of the sensor openings348and349is also the point at which the optical axis for the sensors inserted into the openings348and349would pass. However, in other examples, the holes345may be arranged in a different pattern. For example, the holes345may be arranged in a pattern that alternates the placement of the holes345such that a first hole is close to a rear edge352of the flat top portion324and the neighboring holes are close to a front edge350of the flat top portion324. Such an arrangement may result in a thicker radiation region140.

The depth of the interaction interface310is shown by the depth “d.” The thickness of the interaction interface may be approximately 5.5 inches (e.g., 14.0 centimeters). Of the depth “d,” a depth “d1” represents a portion of the housing without the port section332. In the example shown inFIG. 1C, the depth “d1” is approximately 3.255 inches (e.g., 8.3 centimeters). In another example of the housing310, the depth “d” is approximately 2.5 inches (e.g., 6.4 centimeters) and the depth “d1” is approximately 1.375 inches (e.g., 3.5 centimeters). In other examples, the port section332may have a smaller depth, or the port section332may be designed such that the port section is flush with the other portions of the housing (e.g., such that the thickness of the interaction interface310is approximately 3.5 centimeters). In the example shown inFIG. 3C, the communications port334and the power port336protrude slightly from the rear of the housing310. However, in other examples, the communications port334and the power port336may be flush with the surface of the housing310. In other examples, cables may be permanently affixed to the communications port334and the power port336.

Referring toFIGS. 4A-4C, an interior of an example interaction interface405is illustrated. In particular,FIG. 4Aillustrates the interior of the interaction interface405from a top view, andFIGS. 4B and 4Cillustrate the interior of the interaction interface405from a front view. The interaction interface405may be an interaction interface similar to the interaction interfaces105,210, and/or305discussed above with respect toFIGS. 1A-1C,2, and3. In the examples shown inFIGS. 4A and 4B, a housing of the interaction interface405(which may be similar to the housing310discussed above with respect toFIGS. 3A-3C) is represented by a dotted outline406. In the example shown inFIG. 4C, the housing of the interaction interface405is represented with a solid outline407.

Referring toFIG. 4A, the interior of the interaction interface405includes an emitter mounter408, emitters410, an emitter fastener412, a sensor420, a sensor422, an emitter driver425, a communications port428, a hub429, and a power connector430. The emitter mounter408is a bracket, or other mounting device, that holds the emitters410securely in place. For example, holes may be formed in the emitter mounter408such that the emitters410may be securely fastened into the holes (and therefore securely fastened to the emitter mounter408). The emitters410may be fastened into the holes using, for example, glue, screws, or an interference fit between the emitters410and the emitter mounter408. Securing the emitters to the emitter mounter408may ensure that the radiation region140remains in substantially the same position with respect to the interaction interface405over the lifetime of the interaction interface405even though the interaction interface405may be transported and/or mishandled (e.g., accidentally dropped) many times over the lifetime. The emitter fastener412secures the emitter mounter408within the interaction interface405. The emitter fastener412may include an opening in the emitter mounter408through which a fastener (such as a screw or peg) passes to secure the emitter mounter408within the interaction interface405. The interaction interface405also includes sensor mounters423and424. The sensor mounters423and424secure the sensors420and422to the interaction interface405.

Referring toFIG. 4B, a front view of the interior of the interaction interface405is shown. In particular, the emitters410are shown placed in the emitter mounter408, and the emitter mounter408is shown as secured within the interaction interface405by the emitter fastener412. In the example shown inFIG. 4B, the emitter driver425, the communications port428, the hub429, and the power port430are located generally below the emitter mounter408. Such a design may be advantageous in implementations in which the emitter driver425, the communications port428, the hub429and/or the power port430are located in a portion of the interaction interface405that protrudes from a housing of the interaction interface405(such as the port section332discussed above with respect toFIGS. 3B and 3C). In particular, having the port section332located toward the bottom of the interaction interface405may help to stabilize the interaction interface405such that the interaction interface405may rest solidly on a table or platform while in use.

In the example shown inFIG. 4B, the emitters410and the sensors420and422are recessed into the housing of the interaction interface405such that the emitters410and the sensors420and422are flush with a surface of the housing of the interaction interface405. In other examples, any or all of the emitters, the sensor420, and the sensor422may be recessed deeper into the interaction interface405such that these elements are not flush with the surface of the housing of the interaction interface405.

Referring toFIG. 4C, a front view of the interaction interface405is shown. In this example, the interaction interface includes two separable portions: a base portion450and a top portion455. The base portion450may be similar to the beveled portion328discussed above with respect toFIGS. 3A-3C. The top portion455may be secured to the base portion450to form the interaction interface405. The interior of the top portion455includes the emitters410, the sensors420and422, the communications port428, and the power port430.

Referring toFIGS. 4D and 4E, the interior of the interaction interface405is shown with internal wiring.FIG. 4Dillustrates a top view of the interior of the interaction interface405, andFIG. 4Eillustrates a front view of the interior wiring of the interaction interface405. As shown inFIG. 4D, a connection468between the emitter driver425and the sensor422synchronizes the emitter driver425with the sensor422. The emitter driver425may be similar to the emitter driver228discussed above with respect toFIG. 2, and the emitter driver425may drive the emitters410such that the emitters410are ON and emit electromagnetic radiation during an emitting period and the emitters410are OFF and extinguish electromagnetic radiation during an extinguishing period. Thus, synchronizing the emitter driver425with the sensor422may ensure that the sensor422collects data during the emitting period and the extinguishing period. Additionally, synchronizing the emitter driver425with the sensor422may ensure that the sensor422does not collect data during a transition period between the emitting period and the extinguishing period. As also shown inFIG. 4A, a connection462connects the emitter driver425to the hub429such that the emitters410may be supplied power during the emitting period such that the emitters emit electromagnetic radiation. Also shown inFIG. 4Dare connections464and466. The connection464is a data connection to the sensor422, and the connection466is a data connection to the sensor420. The connections464and466may be FireWire connections, or any other suitable data connection. The combinations of connections460,464, and466allow the emitter driver425, hub429, sensor420, and sensor422to draw power from a common power port430.

Referring toFIG. 4E, a front view of the interior wiring of the interaction interface405is shown. In addition to the connections discussed above, the example shown inFIG. 4Eindicates that the connection468is also connected to the emitters410. Thus, the sensor422and the emitters410are synchronized together. Although many emitters410are shown in the example ofFIG. 4E, the connection468is input in the vicinity of only one emitter. In some implementations, the emitters410are connected to each other such that all of the emitters410are driven together through the connection468. In other implementations, a connection from the driver425may be made to each of the emitters410. Additionally, the illustration ofFIG. 4Eshows that the connections464and466are connected to the sensors420and422, respectively, through a connector468on each of the sensors420and422.

Referring toFIGS. 5A and 5B, the emitter mounter408, the emitters410, and the emitter fasteners412are illustrated. In the example shown inFIG. 5A, the emitters410and the emitter fasteners412are linearly disposed along a center line505that travels lengthwise along the center of the emitter mounter408. The emitter mounter408has a length “l,” which may be approximately 9 inches (e.g., 22.9 centimeters). The emitter mounter408may have a width of “w,” and the center line505may be located a distance “d,” which is half of the width “w,” from an edge507of the emitter mounter408. In some implementations, the distance “w” may be approximately 0.5 inches (e.g., 1.3 centimeters), and the distance “d” may be approximately 0.25 inches (e.g., 0.65 centimeters). The emitters410may be equally distributed along the emitter mounter408, and the center-to-center spacing of the emitters410may be a distance “s.” The distance “s” may be approximately 0.5 inches (e.g., 1.3 centimeters). Emitter fasteners412may be interspersed among the emitters410. Where present, a center of an emitter fastener may be a distance “s1” from the center of a neighboring emitter. The distance “s1” may be 0.25 inches (e.g., 0.65 centimeters). The center-to-center distance between emitter fasteners412may be one or more of a distance “s2” or a distance “s3” depending on the arrangement of the emitters410and the emitter fasteners412.

Referring toFIG. 5B, an example of an emitter mounter530is shown. The emitter mounter530is similar to the emitter mounter408, except the emitters410are linearly disposed on the emitter mounter530along an off-center line540such that the centers of the emitters410are located a distance “w2” from the edge507of the emitter mounter530. The emitter fasteners412are located along the center line505. Positioning the emitter fasteners412along the center line505instead of the off-center line540may help to ensure that the emitter mounter530is secured in the interaction interface405such that the emitters410do not move relative to the interaction interface405.

Referring toFIG. 5C, a side view of the emitters410is illustrated. The emitters410are positioned into the emitter mounter408. The emitters410each have a height of “h” and a width of an radiating portion570of “w.” The emitters410shown in the example ofFIG. 5Calso have a base portion580, in which the radiating portion rests or is otherwise connected. The base portion580has a width of “w2,” and the emitters410are connected onto the emitter mounter408at the base portion580. The base portion580does not emit electromagnetic radiation, thus the emission of electromagnetic radiation from the emitters410is not effected by the connection of the base portion580to the emitter mounter408. In some implementations, the height “h” is approximately 0.5 inches (e.g., 1.3 centimeters), the width “w” is 5 millimeters, and the width “w1” is 6 millimeters. The emitter mounter408may have a height “h” of approximately 0.0625 inches (e.g., 0.2 centimeters).

Referring toFIGS. 6A-6C, examples of radiation regions610,620, and630are respectively shown. The radiation regions610,620, and630may be used as the radiation region140discussed above with respect toFIGS. 1A-1C.

Referring toFIG. 6A, a radiation region610is shown from a side view. The radiation region610has a uniform thickness “t” and is generated by an emitter615. The uniform thickness “t” as a result of passing electromagnetic radiation from the emitter615though a lens, such as a narrow angle lens, such that the emitted electromagnetic radiation is substantially collimated. In some implementations, the radiation region610may be made to appear to have a uniform thickness “t” by cropping data received from sensors imaging the radiation region610. Referring toFIG. 6B, a radiation region620is shown. In comparison to the radiation region610shown inFIG. 6A, the radiation region620has a cone shaped cross-section (e.g., electromagnetic radiation emitted from an emitter625diverges as the electromagnetic radiation propagates upward). Referring toFIG. 6C, a radiation region630is shown. The radiation region630is collectively defined as a volume of projected electromagnetic radiation emitted from electromagnetic radiation emitted from multiple emitters635. Although the electromagnetic radiation emitted from the emitters635diverge as the radiation propagates upward, the radiation region630is contained within the edges of an interaction interface640. The radiation region630may be contained by, for example, passing the emitted electromagnetic radiation through a narrow angle lens (not shown) such that the divergence of the electromagnetic radiation is reduced.

Referring toFIG. 7, an example process700for outputting an indicia of a position of an object with respect to an interaction interface is illustrated. The process700may be performed on an interaction interface such as the interaction interface205discussed above with respect toFIG. 2. The process700may be performed by one or more processors included in the interaction interface, such as the processor265and/or the controller255. The process700may be used to output a position, or an indicia of a position, of an object within a region of interest associated with the interaction interface. For example, the process700may be used to output a position of the hand111shown inFIG. 1A.

Emitted projected radiation defines a radiation region adjacent to a housing (710). The projected radiation alternates between being emitted and being extinguished during emitting and extinguishing periods, respectively. The projected electromagnetic radiation may be emitted from emitters included in the interaction interface, such as the emitters222discussed above with respect toFIG. 2, and the housing may be a housing such as the housing106discussed above with respect toFIGS. 1A-1C. The projected electromagnetic radiation may be emitted vertically from a top side of the housing such that the radiation region is adjacent to the housing by being in a volume above the top side of the housing. The projected electromagnetic radiation decreases in intensity as the radiation propagates away from the housing. In implementations in which the interaction interface is used indoors, the electromagnetic radiation emitted from the emitters eventually reaches the ceiling and is reflected from the ceiling.

Sensed electromagnetic radiation is detected within respective field of view of first and second sensors (720). The sensed electromagnetic radiation includes ambient electromagnetic radiation detected during the emitting and the extinguishing periods. The sensed electromagnetic radiation also includes projected electromagnetic radiation reflected off of an object in the radiation region during the emitting period. During the extinguishing period, the emitters emit no or very little light. Thus, projected radiation is not reflected off of the object in the radiation region (such as the hand111) during the extinguishing period. However, the first and second sensors detect electromagnetic radiation from self-illuminated sources in the field of views of either or both of the first and second sensors. For example, the sensors may detect the presence of a ceiling light such as the ceiling light119shown inFIG. 1A. As discussed in more detail inFIG. 8, relatively constant sources of ambient light may be removed from the data collected by the first and second sensors due to the alternating nature of the projected electromagnetic radiation. The first and second sensors may be sensors that are located on opposing ends of a housing of the interaction interface, such as the sensors420and422discussed above with respect toFIGS. 4A-4E. Additionally, the specifications and properties of the first and second sensors may be similar to the sensors232discussed with respect toFIG. 2.

An indicia of a position of the object with respect to the housing is output (730). The indicia of the position of the object may be, for example, raw image data from the sensors that includes a representation of the object. The raw data may be output though the application interface250discussed above with respect toFIG. 2. In other examples, the indicia of the position of the object may be image data derived from an image collected during an emitting period and an image collected during an extinguishing period. In other examples, the indicia of the position may be two-dimensional or three-dimensional coordinates associated with the position of the object with respect to a location within or on the boundary of a region of interest within the radiation region. The position or indicia of the position of the object may be represented in coordinates relative to the housing. In some examples, the object may be moving within the region of interest, and the sensors may collect video data. In these examples, the indicia may be a two-dimensional or a three-dimensional representation of the motion of the object.

Referring toFIG. 8, an example process800may be used to control an application based on a determined position. The process800may be performed by one or more processors include in an interaction interface, or remote from but in communication with the interaction interface. For example, the process800may be performed by the processor265discussed above with respect toFIG. 2. The interaction interface may be an interaction interface similar to the interaction interface205discussed above with respect toFIG. 2. The process800may be used to control an application such as the application115discussed above with respect toFIG. 1A.

Image sequences taken from different perspectives of a portion of a radiation region defined by projected electromagnetic radiation are accessed (810). Each image sequence includes a projection image generated during an emitting period and an ambient image generated during an extinguishing period. The projection image is of ambient electromagnetic radiation (such as electromagnetic radiation emitted from self-illuminating sources similar to the ceiling light119ofFIG. 1A) and of an object within the portion being illuminated with the projected electromagnetic radiation. The ambient image includes ambient electromagnetic radiation. The image sequence may include a pair of images from each perspective (e.g., an image collected during an emitting period and an image collected during an extinguishing period). However, the image sequence may include more than two images, so long as the image sequence includes at least one image collected during an extinguishing period.

A position of the object is determined using the projection images and the ambient images (820). As mentioned above, both the ambient and projection images include ambient sources of light, such as the ceiling light119. However, only the projection images include images of objects that are only illuminated during an emitting period when electromagnetic radiation from emitters illuminates the objects. For example, the hand111shown inFIG. 1Ais only imaged when the hand111is illuminated by the radiation region140. Thus, the relative constant nature (e.g., brightness and position) of the ambient light allows the ambient light to be removed from the projection images while retaining the image of the object. For example, the ambient light may be removed from the projection region by, for example, subtracting the ambient image from the projected image to generate a difference image.

Referring briefly toFIG. 9, an example of a difference image905is shown. The images910and920shown inFIG. 9are taken from one perspective of the radiation region (for example, the images910and920are taken from the same sensor). The difference image905is created from a projected image910, which includes a finger912, and the ambient image910, which does not include the finger912. The finger912appears in the projected image910because the finger912reflects projected electromagnetic radiation to the sensor that generated the projection image910. Because the ambient image920was generated during an extinguishing period, there is no, or less, electromagnetic radiation for the finger912to reflect and the finger912does not appear in the image920. The location where the finger912would appear is shown by the dashed line922. However, self-illuminating ambient light sources925and926appear in both the projected image910and the ambient image920.

The difference image905is generated by subtracting, or otherwise modifying, the ambient image920from the projected image910. As a result, the ambient sources925and926are not present in the difference image. However, the finger912is present in the difference image905because the finger912is present only in the projection image. In some implementations, the projected image910is generated from data collected during the emitting period immediately before or immediately after the extinguishing period during which the ambient image920is collected. Collecting the data sequentially may help to ensure that the ambient light sources925and926are constant between the projection and ambient images. The difference image905includes pixels, and each of the pixels has one or more associated numerical values. In some implementations, the difference image905is analyzed to determine whether the difference image905includes any pixels that are associated with a negative value (e.g., a numerical value that is less than zero). A pixel may be associated with a negative value when a pixel in the ambient image920has a larger value than the corresponding pixel in the projected image910. Negative pixel values may be set to zero.

The example shown inFIG. 9is from the perspective of one sensor. A similar technique may be applied to data collected from the perspective of a second sensor. Based on the relative positions of the finger912in the difference image from each perspective, the known positions of the sensors relative to a housing of the interaction interface and the region of interest, the position of the finger912may be determined. The position of the finger912may be determined, for example, with respect to the housing. In other examples, the position of the finger912may be determined with respect to the region of interest.

Returning toFIG. 8, determining the position of the object using the projection images and the ambient images also may include modifying the difference image based on a background model. As discussed above, the projected electromagnetic radiation propagates upward and may reflect of a ceiling, or other barrier, above the interaction interface. The reflections from the ceiling are seen only in the projection image, thus, the reflections also may appear in the difference image. However, the reflection off of the ceiling may be relatively constant over time. Accordingly, the reflection off of the ceiling may be modeled and subtracted or otherwise removed from the difference image.

An application is controlled based on the determined position (830). The application may be controlled by communicating the position to the application through an application interface, such as the application interface250discussed above with respect toFIG. 2. Controlling the application based on the position may include moving a cursor within the application, or selecting an icon within the application based on a motion or a gesture of the finger912.

Other implementations are within the scope of the following claims. For example, determining a position of an object with respect to a housing of an interaction interface may include determining a motion of the object with respect to the housing of an interaction interface. Determining a motion of the object may include determining a gesture made by the object or with the object. The size of the housing of the interaction interface may be made of a standard size such that it fits in commonly available luggage and bags. For example, a width of a housing may be approximately equal to the width of a portable personal computer such that the interaction interface may be transported along with existing equipment. In some implementations, the emitters410may be arranged such that the emitters410surround one or both of the sensors420and422. Although the interaction interface allows a user110to interact with the application115without directly touching a tactile device connected to the application115, the interaction interface105may be used with a tactile device. For example, the user110may hold a pointer such that the pointer is the object111within the region of interest125.