US8310537B2 - Detecting ego-motion on a mobile device displaying three-dimensional content - Google Patents

Detecting ego-motion on a mobile device displaying three-dimensional content Download PDF

Info

Publication number
US8310537B2
US8310537B2 US12/551,287 US55128709A US8310537B2 US 8310537 B2 US8310537 B2 US 8310537B2 US 55128709 A US55128709 A US 55128709A US 8310537 B2 US8310537 B2 US 8310537B2
Authority
US
United States
Prior art keywords
data
motion
speed
mobile device
linear
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US12/551,287
Other versions
US20100053322A1 (en
Inventor
Stefan Marti
Seung Wook Kim
Han Joo Chae
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority to US12/551,287 priority Critical patent/US8310537B2/en
Assigned to SAMSUNG ELECTRONICS CO., LTD reassignment SAMSUNG ELECTRONICS CO., LTD ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHAE, HAN JOO, KIM, SEUNG WOOK, MARTI, STEFAN
Publication of US20100053322A1 publication Critical patent/US20100053322A1/en
Application granted granted Critical
Publication of US8310537B2 publication Critical patent/US8310537B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1446Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/001Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
    • G09G3/002Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background to project the image of a two-dimensional display, such as an array of light emitting or modulating elements or a CRT
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • H04N13/279Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals the virtual viewpoint locations being selected by the viewers or determined by tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2356/00Detection of the display position w.r.t. other display screens
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/35Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call
    • H04M2203/359Augmented reality

Definitions

  • the present invention relates generally to systems and user interfaces for interacting with three-dimensional content on mobile devices and is in the general technical fields of Human-Computer Interaction (HCI), mobile multimedia platforms, mobile displays, and mobile virtual worlds. In particular, it is in the fields of motion estimation and spatial and gestural interaction.
  • HCI Human-Computer Interaction
  • Another method to detect ego-motion uses inertial sensors. Although such sensors can distinguish rotation motion from shifting motions (by using both rotational and linear accelerometers), this approach does not allow for direct measurement of ego-motion speed, since the sensors measure acceleration (not speed), which is then used, together with elapsed time, to calculate ego-motion speed. This calculation is not very precise, particularly with slow motions and low accelerations—conditions typical in user interface applications with gestural and motion control, particularly on mobile devices.
  • Motion controlled games on cellphones with gravity/orientation sensors and imaging sensors, gaming and other 3D content browsing applications employ motion control, only use the sensor, not the imaging sensor.
  • Applications that use motion control for gaming applications currently use only two degrees of movement for measuring motion speed (particularly, rotation speed along pitch and roll axes).
  • Some systems may use an additional sensor such as, a digital compass, which enables measuring a third rotational degree of movement (measuring yaw orientation and possibly yaw motion speed).
  • a digital compass which enables measuring a third rotational degree of movement (measuring yaw orientation and possibly yaw motion speed).
  • none of these systems can detect translational speed motions (e.g., linear motions, with no or little acceleration).
  • Ego-motion detection of a mobile device (its own motion relative to a fixed framework, e.g., the world around it) has been investigated in detail in the past, and a number of different approaches have been tried so far, many of them have been used to successfully detect only certain kinds of motions or degrees of movement. As a result, the user is limited to only one or two degrees of movements.
  • a device that can measure ego-motion speed accurately without having to add any hardware, such as sensors.
  • the user should not have to wear or hold any other device or sensor in order to track the motion speed of the device the user is holding. It would be desirable to use these ego-motion speed measurements in the interaction method called position-dependent rendering, without the need to add any hardware, such as control mechanisms like a joystick.
  • This invention improves the performance of existing applications on mobile devices, such as gaming, virtual world browsing, viewing 3D content, and others, and allows new kinds of applications, such as mobile 3D Internet browser, on handheld devices (cellphones, smartphones, media players, MIDs, UMPCs, etc.). This is done without additional hardware (e.g., joystick or additional sensors) and only with software.
  • Embodiments of the present invention give a user a total of four degrees for freedom to adjust perspective into a 3D environment or image by moving and positioning the handheld device in space, that is, making gestures in space holding the mobile device.
  • it provides gesture recognition to initiate motion (e.g., avatar walking) within the 3D scenery.
  • All perspective changes and navigation motions are displayed on the screen in real-time, so the user feels like she is moving around in the middle of the 3D scenery.
  • the invention gives the user of the device (e.g., cellphone), greater degrees of freedom in her interaction with 3D content, thus providing a richer and more intuitive interface with the content, without the need for any additional hardware.
  • a method of measuring ego-motion speed of a mobile device is described.
  • the linear motion of the device is measured using an image sensor component, there, thereby creating linear motion data.
  • the rotational or angular motion of the device is measured using an inertial sensor component, thereby creating rotational motion data.
  • the rotational and linear motion data of the device are used to calculate the ego-motion speed of the mobile device.
  • This ego-motion speed can then be used to control a virtual camera control module for adjusting the view of 3D content viewed by the user on the mobile device as the user moves the device, changing the position of the virtual camera.
  • the linear motion data includes optic flow vector values, which are used to calculate linear speed.
  • the rotational motion data includes roll data of the device and pitch data of the device. If it is determined that there is both linear motion data and rotational motion data, rotational motion data is utilized.
  • a mobile device in another aspect of the invention, includes one or more processors, a data storage component, an image sensor hardware component and image sensor software, an inertial sensor hardware component and inertial sensor software, and an ego-motion speed calculation module for calculating the speed of the mobile device using linear motion data from the image sensor software and rotational motion data from the inertial sensor software.
  • FIG. 1 is an illustration of a mobile device showing four degrees of movement that can be measured in accordance with one embodiment
  • FIG. 2 is a block diagram showing components of a mobile device in accordance with one embodiment of the present invention.
  • FIG. 3 is a block diagram showing one imager and optic flow vectors in accordance with an alternative embodiment
  • FIG. 4 is a graph showing a coordinate system showing various degrees of freedom of a device in accordance with one embodiment
  • FIG. 5 is a flow diagram of a process of calculating ego-motion speed of a mobile device using a single imager in accordance with one embodiment
  • FIGS. 6A and 6B are flow diagrams of processes of obtaining rotational and linear movement data from sensors within a mobile device in accordance with various embodiments
  • FIGS. 7A and 7B are illustrations of a mobile device being used as virtual cameras for viewing 3D content in accordance with one embodiment.
  • FIG. 8 illustrates system components suitable for implementing embodiments of the present invention.
  • Methods and systems for measuring ego-motion speed of a mobile device are described in the various figures, where the measured speed, which indicates rotational and/or linear speed, is used to adjust a virtual camera for viewing 3-D content on the device.
  • the measured speed which indicates rotational and/or linear speed
  • a method to disambiguate shifting motion from and rotational motion without requiring more sensors than already in use on current mobile devices is described.
  • the various embodiments may be implemented using a software upgrade, which can be added easily to mobile devices, e.g., using application stores.
  • the methods allow a more accurate ego-motion speed measurement than measurements based on inertial sensors alone.
  • a user is able to view and navigate through 3D content displayed on a mobile device, such as a 3D scene in a virtual world or a 3D map from surround photos, without the use of a joystick or any type of additional controller.
  • a mobile device such as a 3D scene in a virtual world or a 3D map from surround photos
  • the user can view the 3D scene and change perspective within the scene.
  • the device responds to the user's movements and position changes in real-time. This can be referred to as “position-dependent rendering” of 3D content on mobile devices.
  • shifting motions when holding and moving a device in space can be divided into two different types: shifting (linear) motions and rotational (angular) motions.
  • shifting motions are in two dimensions, namely, left-right along an x-axis or up-down along a y-axis, and are detected by image sensor processing of optic flow data provided by an imager or image/visual sensor component, often a camera on the device. These shifting motions are shown in FIG. 1 .
  • a mobile device 102 can be moved left-right as shown by arrows 106 or up-down shown by arrows 104 , on a single plane. These are linear motions on a parallel plane.
  • the speed of these linear motions is provided, in one embodiment, directly by an image sensor software module, as described below.
  • the optic flow detection algorithm used by an image sensor to provide this linear speed data is computationally light-weight and so can be run on mobile devices which have low processing power and still maintain performance and accuracy.
  • the rotational motions are also in two dimensions, namely pitch and roll, and are detected by an inertial sensor, specifically an orientation sensor, such as a gravity sensor (G-sensor) or other type of orientation sensor.
  • the inertial sensor works in the device to detect rotational motions. Pitch is shown by arrows 108 and roll is shown by arrows 110 .
  • Combining optic flow vector values from imaging sensors and data from orientation sensors using a software component allows the mobile device to distinguish between shifting and rotational motions without adding complex computational steps or requiring additional hardware (e.g., image or inertial sensors or controllers operated by the user, such as joysticks). By differentiating shifting from rotational motions, the user has more degrees of freedom in movements or gestures while holding the device than can be provided by existing mobile device applications.
  • the image sensor provides optic flow information
  • the linear ego-motion speed of the device is more precise than measurements of linear speed that can be provided from inertial sensors alone, which need an integration step to calculate linear speed from acceleration and elapsed time, making it susceptible to accumulation errors over time.
  • FIG. 2 is a block diagram showing components of a device in accordance with one embodiment.
  • a mobile device typically has one or more processors 202 and data storage components 204 , as described further in FIG. 7 .
  • Image sensor hardware 206 represents the actual hardware components of an image sensor subsystem and may include cameras, lenses, or other image capturing mechanisms. Optic flow vector values from image sensor hardware 206 are transmitted to image sensor software module 208 . In one embodiment, this data is processed by module 208 to produce linear ego-motion speed data. In another embodiment, module 208 processes data from hardware 206 and transmits vector values to a calculation module, described below. As discussed below in FIG. 6 , an image sensor may not be accurate in distinguishing linear motion from angular motion. Thus, there may be instances where device 200 is moved rotationally (and not shifting) and image sensor 206 and software 208 may interpret this movement as linear movement and transmit vector values to the calculation module. Steps for disambiguating linear data in these instances are described in FIG. 6 .
  • Inertial sensor hardware 210 includes orientation sensors, such as gravity sensors or other types of sensors. Data from sensor hardware 210 is transmitted to inertial sensor software module 212 . This data may be absolute data indicating the angular position of device. As is known in the field, inertial sensors can measure gravity or, more specifically, positional deviations from gravity of an object containing the sensor. In one embodiment, linear motion data 218 and rotation data 216 are transmitted to ego-motion speed calculation module 214 . As described above, rotation data 216 may consist of data on two DOFs, pitch and roll, and linear data 218 may be data on another two DOFs, horizontal and vertical movement of the device.
  • an image sensor performs optic flow analysis on an entire image in order to detect the general motion of the device itself (ego-motion), rather than tracking features of a certain object.
  • optic flow data is used solely to detect shifting motion.
  • a gravity sensor is used to detect rotation motion with precision.
  • optical flow detection is performed on a series of images captured by a camera (most commonly facing away from the user, on the back of the device). Since optical flow is sensing motion from vision, it is able to detect slow or constant speed shifting motions which have little or no acceleration at all.
  • the algorithm for optic flow is computationally light weight, so that it can be run even on a device with low computing power while keeping appropriate performance and accuracy.
  • the speed measurements from optic flow vector values may be relative or comparative speeds, such as slow, intermediate slow, intermediate, intermediate fast, and fast. An average distance value or constant distance value may be used to arrive at these speed indicators. In this embodiment, the speed value is not an absolute measurement, such as x meters/second. In another embodiment, a distance measurement to an object or scene is measured and used to arrive at an actual speed measurement. This alternative embodiment is described below in FIGS. 3 and 5 .
  • a gravity sensor To detect rotational speed and orientation in two dimensions (pitch and roll), a gravity sensor is used which measures gravitational forces, and therefore device orientation may be provided in two dimensions. Changes over time in the two-dimensional orientation of the device can be used to create two-dimensional rotation speed.
  • linear speed data and rotational speed data enables a device to measure ego-motion of a mobile device which, in turn, allows the user to move the display device freely in four dimensions. These are up-down, left-right, pitch, and roll, while the detected motions are used to display, in real-time, 3D content (e.g., 3D game scene, 3D map, 3D virtual world, 3D desktop GUI, 3D Internet, etc.) which is adjusted to the user's perspective in 3D. As noted above, this may be referred to as position-dependent rendering.
  • 3D content e.g., 3D game scene, 3D map, 3D virtual world, 3D desktop GUI, 3D Internet, etc.
  • a gravity sensor can also be used to detect abrupt external forces on the device. For example, if the user shakes the device for a short period of time, making a “flicking” gesture, the device can detect this abrupt motion. By exploiting the detection of such motions, embodiments of the present invention provide a simple gestural way for the user to initiate, for example, forward moving motion within the 3D scene. If the user shakes the device (or exerts any kind of abrupt acceleration on the device), the 3D scene may be displayed as if the user is “walking” within the 3D scene (or generally moving forward); detecting another shaking or “flicking gesture” once more will stop the walking motion.
  • FIG. 3 shows a block diagram of one imager and associated optic flow vectors and a distance value in accordance with an alternative embodiment.
  • an imager may obtain a distance value and use this value to calculate a linear ego-motion speed value (as opposed to a comparative speed value).
  • the distance between imaging sensor 302 and object 304 is d 1 .
  • This distance measurement may be obtained using an autofocus system in the device.
  • the optical flow vector has horizontal component x 1 (arrow 306 ) and vertical component y 1 (arrow 308 ).
  • the shifting (linear) speed of a device having one imaging sensor may be computed using the value derived from taking the product of d 1 and x 1 , x 1 *d 1 .
  • the actual shifting (linear) speed of the device was determined as 0.5 m/s (using an external calibration method). Furthermore, in this example, the device having one 2D imaging sensor captures a scene that is 0.6 meter away from the imager.
  • the imaging sensor has a resolution where 1 pixel is approximately 0.008 meters in the actual scene, i.e., 0.008 m/(pixel*m).
  • the imager has a frame rate of 10 frames/second (1 frame each 0.1 seconds).
  • the horizontal optical flow magnitude between two consecutive frames (at a specific time, t) is determined to be +10 pixels (positive to provide direction based on FIG. 4 , below) for the imager.
  • FIG. 4 is a three-dimensional coordinate system showing different motions that a mobile device may undergo and the variables associated with these movements. It also shows distance values (“distances”) that are used in methods for calculating ego-motion speeds described below. It shows 2D and 3D optical flows with “distance factors” in six directions and 6DOF motions.
  • the x-axis measures left-right motion
  • the y-axis measures up-down motion
  • the z-axis measures forward and backward motion of a mobile device.
  • a device can rotate on the x-axis (pitch) and on the z-axis (roll).
  • a device can also rotate on the y-axis (yaw).
  • Linear movement of the device to the right is indicated by x 1 and x 5 and to the left by x 2 and x 6 .
  • Linear movement of the device upwards is shown by y 1 , y 2 , y 3 , and y 4 .
  • Forward movement is shown as x 3 and backward movement is x 4 , y 5 , and y 6 . In one embodiment, there is no downward movement.
  • FIG. 5 is a flow diagram of a process of calculating linear ego-motion speed of a mobile device having an imaging sensor in accordance with one embodiment. It is assumed that the mobile device, such as a cell phone or a gaming device, has been powered on and that the imaging sensor, such as a camera or other optic flow sensor, is active and that the device is being held by a user using it in a generally conventional manner. At step 502 the imaging sensor of the mobile device obtains optical flow data values.
  • the imaging sensor obtains an estimated distance value between the sensor lens and an object or scene within the field of view of the sensor. This is done using optical flow values.
  • the sensors estimate distances to an overall scene.
  • the distance estimate need not be precise in order for the method described to calculate ego-motion speed of the mobile device.
  • the distance estimate may be coarse or precise. However, regardless of the resolution of the distance estimate, having some information about distance will increase the precision of linear ego-motion speed calculation.
  • the distance estimate may be used to modify the 2D optical flow vector values using a simple calculation.
  • the distance value, d 1 may be measured in meters or any other suitable unit.
  • the primary output of the imager is a set of optical flow vector values.
  • the output of the imager facing the “Front” has vector values, x 1 and y 1 , as shown in FIG. 3 .
  • An object or scene in front of the imager is d 1 distance away.
  • the optical flow vector value is modified, or weighted, using the distance value.
  • vector value x 1 is modified by being multiplied by d 1 (x 1 *d 1 ).
  • a shifting (linear) speed of the mobile device is calculated using the modified horizontal and vertical optical flow vector values.
  • the horizontal vector value corresponds to all the x values (x 1 to x 6 ) and vertical vector values correspond to all the y values (y 1 to y 6 ).
  • the horizontal optical flow vector value x 6 (as modified) may be used to calculate left-right shifting speed, since there are no vertical components.
  • An actual shifting speed having the correct unit value is calculated using a resolution factor, such as the 0.008 m/(pixel*m), and a frame rate, such as 10 frames/second, both from the example above.
  • the result is multiplied by the resolution factor and the result of this product is divided by the frame rate of the imager.
  • FIG. 6A is a flow diagram of a process of calculating ego-motion speed of a mobile device using image sensors and inertial sensors in accordance with one embodiment.
  • the ego-motion speed calculation module is activated. This may be done when the mobile device is powered on or the device may have a separate means for specifically turning on this feature. For example, it may be “Activate 3D Browser,” “Enable 3D Content Navigation,” or something similar. Note that the ego-motion speed is used by the virtual camera which is directly associated with the actual end user application, as described below. At this stage, it is assumed that the device is motionless.
  • the user begins moving the device.
  • the device is able to detect four DOFs, two that are linear and two that are rotational.
  • the calculation module receives motion data from one or two sensor types: an inertial sensor and/or an image sensor. Specifically, as shown in FIG. 2 , it receives motion data from either image sensor software module 208 or from inertial sensor software module 212 .
  • the motion data received by calculation module 214 may be in one of various forms.
  • the data from image module 208 may be optic flow vector values (typically in pixels) or may be an actual speed value (e.g., in meters/second).
  • calculation module 214 performs further steps, such as a mapping of vector values to speed, to arrive at an actual linear ego-motion speed.
  • Data from inertial sensor module 212 may be in some form of absolute angular data (degrees) which module 214 can use to derive an angular speed.
  • the speed calculation module examines the data and determines whether it is rotational data from an inertial sensor. This may be done by examining the format of the data, the data type, a header, or using data indicators. If the data is rotational or angular, control goes to step 605 where the rotational/angular speed of the device is calculated. Control then returns to step 601 where, if the user moves the device, the module receives the “next” motion data. If at step 603 it is determined that the motion data is not rotational, control goes to step 607 . At this stage it is implied that the data is linear motion data and the speed calculation module calculates the linear speed of the device at step 607 . Once this is done, control returns to step 601 . As can be seen from FIG.
  • this loop illustrates that rotational motion data from the inertial sensor takes priority over linear data from an imaging sensor. In other embodiments, this priority may not be necessary and both types of motion data are treated equally.
  • FIG. 6B is a flow diagram of an alternative process of calculating ego-motion speed of a mobile device using image sensors and inertial sensors in accordance with another embodiment.
  • the ego-motion speed calculation module is activated. This may be done when the mobile device is powered on or the device may have a separate means for specifically turning on this feature. At this stage, it is assumed that the device is motionless.
  • the user begins moving the device.
  • the device is able to detect four DOFs, two that are linear and two that are rotational.
  • the calculation module receives motion data from one or two sensor types: an inertial sensor and/or an image sensor.
  • calculation module examines the data and determines whether it is rotational data from an inertial sensor or linear data from an imaging sensor. If the data is rotational or angular data, control goes to step 608 where the calculation module calculates the angular speed of the mobile device. As noted, this may be done by mapping raw angular data to an angular speed using time. As is known in the field, inertial sensors are very efficient and accurate with respect to measuring angular/rotational movement. This speed may be in degrees per second or may be a comparative measure such as no speed, low speed, medium speed, and so on. Control then returns to 604 where the user, at this stage, continues moving the device and motion data is transmitted to the calculation module.
  • calculation module 214 which will, essentially, constantly be calculating either a rotational speed as in step 608 or a linear speed.
  • the calculation module calculates the linear speed.
  • this linear speed may be comparative (or relative), such as no speed, low speed, intermediate speed, and so on.
  • a distance is assumed (e.g., an average distance to an object) and is used to arrive at an estimation of speed, as opposed to an actual speed.
  • it may be an actual speed, measured in suitable units (e.g., meters/second).
  • an actual distance, d 1 is measured (e.g., using an autofocus system) and used in calculating a speed.
  • step 612 The user continues to use the device thereby moving it and the calculation module receives this motion data at step 612 .
  • This step is the same as step 604 (it is repeated here for ease of illustration).
  • step 614 the calculation module determines whether the next motion data it receives is linear or rotational, as it does in step 606 .
  • This decision step is repeated here as step 614 to illustrate a particular feature of the invention, which may be referred to as disambiguation of linear and rotational motion.
  • image sensors are not very accurate with respect to differentiating between linear and rotational movement.
  • a device may be rotated or moved in an angular direction by the user (without any linear movement), and many image sensors currently in use may interpret this angular movement as linear movement.
  • linear movement data may be sent by the imager when, in fact, the device is only being turned by the user.
  • imaging sensors are very efficient and accurate in detecting actual linear movement.
  • inertial sensors are very efficient at detecting angular movement of a device.
  • linear motion data from the imaging sensor may represent angular motion and not linear motion.
  • this rotational data is used to disambiguate the linear motion data. In other words, it is used by the calculation module to determine that the linear data is a result of angular motion and, thereafter, ignore or bypass the linear data and use the rotational data to calculate rotational speed.
  • the calculation module determines whether the new motion is linear or rotational motion. If it is determined at step 614 that the motion data is linear data, control returns to step 610 where the linear speed is calculated. If the next motion data is rotational data, control goes to step 616 where the linear speed calculation is stopped.
  • the linear motion data received which may have been received at the same time or before the rotational data, actually resulted from angular movement of the device.
  • the calculation module uses the rotational motion data from the inertial sensor and control goes from 616 to step 608 where the rotational speed is calculated. This process continues until the speed calculation module is turned off, or the mobile device is powered off.
  • the calculation module may be deactivated, for example, if the device is stationary for a certain length of time or if the user specifically turns off the feature, perhaps to conserve battery.
  • Ego-motion speed data is the output of speed calculation module 214 and is used, in one embodiment, by a virtual camera control module.
  • This module is used to control a virtual camera into 3D content and essentially enables position-dependent viewing of such content.
  • An important feature of using the mobile device as a “3D browser” into, for example, an online virtual world, is that the virtual camera move at the same speed as the device. Therefore, the speed of the device is a critical component in making the 3D browsing ability of the device appear intuitive, realistic, and accurate to the user.
  • FIGS. 7A and 7B Examples of viewing a virtual 3D environment on a cellphone are shown in FIGS. 7A and 7B .
  • a cellphone 702 in a first position displays a virtual world street with cars at time t 1 .
  • the user moves cellphone (or any mobile device) 702 to a second position at time t 2 and displays a different portion of the virtual world street.
  • a cellphone 704 displays a scene in a virtual world at time t 1 .
  • the scene is of a mosaic on the ground with some people standing in the background shown at a specific angle.
  • the user moves cellphone 704 to a second position at time t 2 where a different angle of the mosaic is shown (where the people are not visible).
  • the linear and angular speed of the device is used to calibrate the speed of the virtual camera into the 3D content.
  • the mobile device can be used as a 3D browser for viewing virtual world and various other types of 3D content.
  • various embodiments of the present provide interaction methods and technologies for improving the user's interaction with 3D content on mobile devices.
  • one interaction method can be referred to as “position-dependent rendering”: instead of using button presses, the user utilizes the space around her, treating the mobile device's display as a “window” into, e.g., a 3D virtual world-just like looking through a small window, as shown in FIGS. 7A and 7B .
  • This window is not static, though: the user can move it around, creating a much larger “virtual view.”
  • it is necessary to determine the position of the mobile device in space (location and orientation) as accurately as possible.
  • ego-motion detection the device determines its own motion speed without external sensors.
  • ego-motion detection is necessary to detect the motion of the device itself, so that the device knows exactly how and where it has been moved in space.
  • FIG. 8 illustrates components of a computing system 800 suitable for implementing embodiments of the present invention. Attached to system bus 820 are various subsystems. Processor(s) 822 (also referred to as central processing units, or CPUs) are coupled to storage devices including memory 824 . Memory 824 includes random access memory (RAM) and read-only memory (ROM). As is well known in the art, ROM acts to transfer data and instructions uni-directionally to the CPU and RAM is used typically to transfer data and instructions in a bi-directional manner. Both of these types of memories may include any suitable of the computer-readable media described below. A fixed disk 826 is also coupled bi-directionally to CPU 822 ; it provides additional data storage capacity and may also include any of the computer-readable media described below.
  • RAM random access memory
  • ROM read-only memory
  • Fixed disk 826 may be used to store programs, data and the like and is typically a secondary storage medium (such as a hard disk) that is slower than primary storage. It will be appreciated that the information retained within fixed disk 826 , may, in appropriate cases, be incorporated in standard fashion as virtual memory in memory 824 .
  • Removable disk 814 may take the form of any of the computer-readable media described below.
  • CPU 822 is also coupled to a variety of input/output devices such as display 804 , keyboard 810 , mouse 812 and speakers 830 .
  • an input/output device may be any of: video displays, track balls, mice, keyboards, microphones, touch-sensitive displays, transducer card readers, magnetic or paper tape readers, tablets, styluses, voice or handwriting recognizers, biometrics readers, or other computers.
  • CPU 822 optionally may be coupled to another computer or telecommunications network using network interface 840 . With such a network interface, it is contemplated that the CPU might receive information from the network, or might output information to the network in the course of performing the above-described method steps.
  • method embodiments of the present invention may execute solely upon CPU 822 or may execute over a network such as the Internet in conjunction with a remote CPU that shares a portion of the processing.
  • device 800 has as one or more of its subsystems imaging sensor hardware and inertial sensor hardware as shown in FIG. 2 .

Abstract

A method of measuring ego-motion speed of a mobile device is described. The linear motion of the device is measured using an image sensor component, thereby creating linear motion data. The rotational or angular motion of the device is measured using an inertial sensor component, thereby creating rotational motion data. The rotational and linear motion data of the device are used to calculate the ego-motion speed of the mobile device. This ego-motion speed can then be used to control a virtual camera control module for adjusting the view of 3D content viewed by the user on the mobile device as the user moves the device, changing the position of the virtual camera.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Patent Application No. 61/093,651, titled “Gesture and Motion-based Navigation and Interaction with Three-Dimensional Virtual Content on a Mobile Device”, filed Sep. 2, 2008, which is hereby incorporated by reference in its entirety.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to systems and user interfaces for interacting with three-dimensional content on mobile devices and is in the general technical fields of Human-Computer Interaction (HCI), mobile multimedia platforms, mobile displays, and mobile virtual worlds. In particular, it is in the fields of motion estimation and spatial and gestural interaction.
2. Description of the Related Art
The amount of three-dimensional content available on the Internet and in other contexts, such as in video games and medical imaging, is increasing at a rapid pace. Consumers are getting more accustomed to hearing about “3-D” in various contexts, such as movies, games, and online virtual cities. However, mobile devices have so far not adapted to enabling users to navigate through and interact with 3-D content in a significant way. Unlike in the desktop setting, where the user may have external controllers available such as mice, joysticks, or game controllers, mobile users still mostly use buttons and keys, both physical and virtual, to interact with 3D content.
In addition, today's mobile devices do not provide an immersive user experience with 3D content because their displays allow only for a limited field of view (FOV). This is due to the fact that display size is limited by the size of the device. E.g., the size of a non-projection display cannot be larger than the mobile device that contains the display. Therefore, existing solutions for mobile displays limit the immersive experience for the user. Furthermore, 3D content such as virtual worlds on mobile devices are difficult to navigate, and small screen mobile devices do not provide good awareness of the virtual surroundings.
Previously, there have been a number of approaches to detect the ego-motion speed of a mobile device (i.e., the motion speed of a mobile device itself relative to a fixed frame work, such as the world/environment around it, detected with sensors on the device itself). One method is to use a single imager (visual) or image sensor (e.g., a built-in camera on a cellphone) to detect the overall optic flow of the background scenery in real-time. However, this approach does not allow distinguishing easily between shifting or linear motion and rotational motion, since the optic flow fields of these types of motions may be very similar.
Another method to detect ego-motion uses inertial sensors. Although such sensors can distinguish rotation motion from shifting motions (by using both rotational and linear accelerometers), this approach does not allow for direct measurement of ego-motion speed, since the sensors measure acceleration (not speed), which is then used, together with elapsed time, to calculate ego-motion speed. This calculation is not very precise, particularly with slow motions and low accelerations—conditions typical in user interface applications with gestural and motion control, particularly on mobile devices.
Motion controlled games on cellphones with gravity/orientation sensors and imaging sensors, gaming and other 3D content browsing applications employ motion control, only use the sensor, not the imaging sensor. Applications that use motion control for gaming applications currently use only two degrees of movement for measuring motion speed (particularly, rotation speed along pitch and roll axes). Some systems may use an additional sensor such as, a digital compass, which enables measuring a third rotational degree of movement (measuring yaw orientation and possibly yaw motion speed). However, none of these systems can detect translational speed motions (e.g., linear motions, with no or little acceleration).
In this system, optic flow data (from imaging sensors) and data from orientation sensors (or other types of inertial sensors) is combined. Mukai and Ohnishi studied the recovery of 3D shape from an image sequence using a video camera and a gyro sensor. (T. Mukai and N. Ohnishi, “Object shape and camera motion recovery using sensor fusion of a video camera and a gyro sensor,” Information Fusion, vol. 1, no. 1, pp. 45-53, 2000). Since rotation and translation have similar effects on the image, leading to unreliable recovery, the orientation sensor output is used to discriminate both situations and improve the accuracy of the 3D shape recovery. However, this approach is limited by the following assumptions:
    • a. There has to be a rigid object that is fixed in the environment and has feature points that can be tracked.
    • b. The object's surface should be composed of polygons or close to that.
    • c. The translation and rotation are done mostly following X coordinates (X translation and yaw)
    • d. Camera is always pointing at the object
      In addition, this system focuses mostly on recovering the 3D image of the object.
Ego-motion detection of a mobile device (its own motion relative to a fixed framework, e.g., the world around it) has been investigated in detail in the past, and a number of different approaches have been tried so far, many of them have been used to successfully detect only certain kinds of motions or degrees of movement. As a result, the user is limited to only one or two degrees of movements.
It would be desirable to have a device that can measure ego-motion speed accurately without having to add any hardware, such as sensors. The user should not have to wear or hold any other device or sensor in order to track the motion speed of the device the user is holding. It would be desirable to use these ego-motion speed measurements in the interaction method called position-dependent rendering, without the need to add any hardware, such as control mechanisms like a joystick.
SUMMARY OF THE INVENTION
This invention improves the performance of existing applications on mobile devices, such as gaming, virtual world browsing, viewing 3D content, and others, and allows new kinds of applications, such as mobile 3D Internet browser, on handheld devices (cellphones, smartphones, media players, MIDs, UMPCs, etc.). This is done without additional hardware (e.g., joystick or additional sensors) and only with software.
Embodiments of the present invention give a user a total of four degrees for freedom to adjust perspective into a 3D environment or image by moving and positioning the handheld device in space, that is, making gestures in space holding the mobile device. In addition, it provides gesture recognition to initiate motion (e.g., avatar walking) within the 3D scenery. All perspective changes and navigation motions (virtual camera changes) are displayed on the screen in real-time, so the user feels like she is moving around in the middle of the 3D scenery. The invention gives the user of the device (e.g., cellphone), greater degrees of freedom in her interaction with 3D content, thus providing a richer and more intuitive interface with the content, without the need for any additional hardware.
In one aspect of the present invention, a method of measuring ego-motion speed of a mobile device is described. The linear motion of the device is measured using an image sensor component, there, thereby creating linear motion data. The rotational or angular motion of the device is measured using an inertial sensor component, thereby creating rotational motion data. The rotational and linear motion data of the device are used to calculate the ego-motion speed of the mobile device. This ego-motion speed can then be used to control a virtual camera control module for adjusting the view of 3D content viewed by the user on the mobile device as the user moves the device, changing the position of the virtual camera.
In one embodiment, the linear motion data includes optic flow vector values, which are used to calculate linear speed. In another embodiment, the rotational motion data includes roll data of the device and pitch data of the device. If it is determined that there is both linear motion data and rotational motion data, rotational motion data is utilized.
In another aspect of the invention, a mobile device includes one or more processors, a data storage component, an image sensor hardware component and image sensor software, an inertial sensor hardware component and inertial sensor software, and an ego-motion speed calculation module for calculating the speed of the mobile device using linear motion data from the image sensor software and rotational motion data from the inertial sensor software.
BRIEF DESCRIPTION OF THE DRAWINGS
References are made to the accompanying drawings, which form a part of the description and in which are shown, by way of illustration, particular embodiments:
FIG. 1 is an illustration of a mobile device showing four degrees of movement that can be measured in accordance with one embodiment;
FIG. 2 is a block diagram showing components of a mobile device in accordance with one embodiment of the present invention;
FIG. 3 is a block diagram showing one imager and optic flow vectors in accordance with an alternative embodiment;
FIG. 4 is a graph showing a coordinate system showing various degrees of freedom of a device in accordance with one embodiment;
FIG. 5 is a flow diagram of a process of calculating ego-motion speed of a mobile device using a single imager in accordance with one embodiment;
FIGS. 6A and 6B are flow diagrams of processes of obtaining rotational and linear movement data from sensors within a mobile device in accordance with various embodiments;
FIGS. 7A and 7B are illustrations of a mobile device being used as virtual cameras for viewing 3D content in accordance with one embodiment; and
FIG. 8 illustrates system components suitable for implementing embodiments of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
Methods and systems for measuring ego-motion speed of a mobile device are described in the various figures, where the measured speed, which indicates rotational and/or linear speed, is used to adjust a virtual camera for viewing 3-D content on the device. In one embodiment, a method to disambiguate shifting motion from and rotational motion without requiring more sensors than already in use on current mobile devices is described. In this manner, the various embodiments may be implemented using a software upgrade, which can be added easily to mobile devices, e.g., using application stores. The methods allow a more accurate ego-motion speed measurement than measurements based on inertial sensors alone.
In some embodiments, a user is able to view and navigate through 3D content displayed on a mobile device, such as a 3D scene in a virtual world or a 3D map from surround photos, without the use of a joystick or any type of additional controller. By simply holding the device and moving it in the space around the front of the user, the user can view the 3D scene and change perspective within the scene. The device responds to the user's movements and position changes in real-time. This can be referred to as “position-dependent rendering” of 3D content on mobile devices.
A user's motions when holding and moving a device in space can be divided into two different types: shifting (linear) motions and rotational (angular) motions. In one embodiment, shifting motions are in two dimensions, namely, left-right along an x-axis or up-down along a y-axis, and are detected by image sensor processing of optic flow data provided by an imager or image/visual sensor component, often a camera on the device. These shifting motions are shown in FIG. 1. A mobile device 102 can be moved left-right as shown by arrows 106 or up-down shown by arrows 104, on a single plane. These are linear motions on a parallel plane. The speed of these linear motions is provided, in one embodiment, directly by an image sensor software module, as described below. The optic flow detection algorithm used by an image sensor to provide this linear speed data is computationally light-weight and so can be run on mobile devices which have low processing power and still maintain performance and accuracy.
The rotational motions are also in two dimensions, namely pitch and roll, and are detected by an inertial sensor, specifically an orientation sensor, such as a gravity sensor (G-sensor) or other type of orientation sensor. The inertial sensor works in the device to detect rotational motions. Pitch is shown by arrows 108 and roll is shown by arrows 110.
Combining optic flow vector values from imaging sensors and data from orientation sensors using a software component allows the mobile device to distinguish between shifting and rotational motions without adding complex computational steps or requiring additional hardware (e.g., image or inertial sensors or controllers operated by the user, such as joysticks). By differentiating shifting from rotational motions, the user has more degrees of freedom in movements or gestures while holding the device than can be provided by existing mobile device applications. In addition, since the image sensor provides optic flow information, the linear ego-motion speed of the device is more precise than measurements of linear speed that can be provided from inertial sensors alone, which need an integration step to calculate linear speed from acceleration and elapsed time, making it susceptible to accumulation errors over time.
FIG. 2 is a block diagram showing components of a device in accordance with one embodiment. A mobile device typically has one or more processors 202 and data storage components 204, as described further in FIG. 7. Image sensor hardware 206 represents the actual hardware components of an image sensor subsystem and may include cameras, lenses, or other image capturing mechanisms. Optic flow vector values from image sensor hardware 206 are transmitted to image sensor software module 208. In one embodiment, this data is processed by module 208 to produce linear ego-motion speed data. In another embodiment, module 208 processes data from hardware 206 and transmits vector values to a calculation module, described below. As discussed below in FIG. 6, an image sensor may not be accurate in distinguishing linear motion from angular motion. Thus, there may be instances where device 200 is moved rotationally (and not shifting) and image sensor 206 and software 208 may interpret this movement as linear movement and transmit vector values to the calculation module. Steps for disambiguating linear data in these instances are described in FIG. 6.
Inertial sensor hardware 210 includes orientation sensors, such as gravity sensors or other types of sensors. Data from sensor hardware 210 is transmitted to inertial sensor software module 212. This data may be absolute data indicating the angular position of device. As is known in the field, inertial sensors can measure gravity or, more specifically, positional deviations from gravity of an object containing the sensor. In one embodiment, linear motion data 218 and rotation data 216 are transmitted to ego-motion speed calculation module 214. As described above, rotation data 216 may consist of data on two DOFs, pitch and roll, and linear data 218 may be data on another two DOFs, horizontal and vertical movement of the device.
In one embodiment, an image sensor performs optic flow analysis on an entire image in order to detect the general motion of the device itself (ego-motion), rather than tracking features of a certain object. In this embodiment, optic flow data is used solely to detect shifting motion. As noted, a gravity sensor is used to detect rotation motion with precision. By virtue of this division of labor (i.e., linear motion analysis vs. rotation motion analysis), it is possible to successfully differentiate shifting motion from rotational motion.
To obtain four DOFs mentioned above, it is necessary to differentiate between shifting and rotational motion. Using computer vision alone, i.e., imaging sensors, such as cameras, it is a non-trivial task to compute both and would use considerable amount of processing power. This task is simplified by combining optical flow data from a camera (common on many cellphones today), and measurements from an orientation sensor, increasingly common in current cellphones.
To detect shifting speed in two dimensions (motions in both vertical and horizontal directions that are parallel to the imager plane), overall optical flow detection is performed on a series of images captured by a camera (most commonly facing away from the user, on the back of the device). Since optical flow is sensing motion from vision, it is able to detect slow or constant speed shifting motions which have little or no acceleration at all. In addition, the algorithm for optic flow is computationally light weight, so that it can be run even on a device with low computing power while keeping appropriate performance and accuracy. The speed measurements from optic flow vector values may be relative or comparative speeds, such as slow, intermediate slow, intermediate, intermediate fast, and fast. An average distance value or constant distance value may be used to arrive at these speed indicators. In this embodiment, the speed value is not an absolute measurement, such as x meters/second. In another embodiment, a distance measurement to an object or scene is measured and used to arrive at an actual speed measurement. This alternative embodiment is described below in FIGS. 3 and 5.
To detect rotational speed and orientation in two dimensions (pitch and roll), a gravity sensor is used which measures gravitational forces, and therefore device orientation may be provided in two dimensions. Changes over time in the two-dimensional orientation of the device can be used to create two-dimensional rotation speed.
The combination of linear speed data and rotational speed data enables a device to measure ego-motion of a mobile device which, in turn, allows the user to move the display device freely in four dimensions. These are up-down, left-right, pitch, and roll, while the detected motions are used to display, in real-time, 3D content (e.g., 3D game scene, 3D map, 3D virtual world, 3D desktop GUI, 3D Internet, etc.) which is adjusted to the user's perspective in 3D. As noted above, this may be referred to as position-dependent rendering.
A gravity sensor can also be used to detect abrupt external forces on the device. For example, if the user shakes the device for a short period of time, making a “flicking” gesture, the device can detect this abrupt motion. By exploiting the detection of such motions, embodiments of the present invention provide a simple gestural way for the user to initiate, for example, forward moving motion within the 3D scene. If the user shakes the device (or exerts any kind of abrupt acceleration on the device), the 3D scene may be displayed as if the user is “walking” within the 3D scene (or generally moving forward); detecting another shaking or “flicking gesture” once more will stop the walking motion.
FIG. 3 shows a block diagram of one imager and associated optic flow vectors and a distance value in accordance with an alternative embodiment. As noted above, an imager may obtain a distance value and use this value to calculate a linear ego-motion speed value (as opposed to a comparative speed value). The distance between imaging sensor 302 and object 304 is d1. This distance measurement may be obtained using an autofocus system in the device. The optical flow vector has horizontal component x1 (arrow 306) and vertical component y1 (arrow 308). The shifting (linear) speed of a device having one imaging sensor may be computed using the value derived from taking the product of d1 and x1, x1*d1.
In one example, the actual shifting (linear) speed of the device was determined as 0.5 m/s (using an external calibration method). Furthermore, in this example, the device having one 2D imaging sensor captures a scene that is 0.6 meter away from the imager. The imaging sensor has a resolution where 1 pixel is approximately 0.008 meters in the actual scene, i.e., 0.008 m/(pixel*m). The imager has a frame rate of 10 frames/second (1 frame each 0.1 seconds). The horizontal optical flow magnitude between two consecutive frames (at a specific time, t) is determined to be +10 pixels (positive to provide direction based on FIG. 4, below) for the imager. The scene distance estimate (at specific time, t) from the imager to the scene/object in front of it is 0.6 meters. In this scenario, x1=10 pixels and d1=0.6 meters.
To calculate the shifting (linear) speed, measured in m/s, the resolution (0.008 m/(pixel*m)) and the frame rate (1 frame/0.1 second) are used to complete the calculation. Using the equation described above: x1*d1, we have (10 pixels*0.6 m)=6 pixel*meter. To complete the calculation and arrive at the correct units for linear motion, this result is multiplied by the resolution factor and then divided by the frame rate. Thus, 6 (pixel*m)*0.008 m/(pixel*m)=0.048 m. This result is divided by the frame rate of 0.1 sec/frame giving: 0.048 m/0.1 sec=0.48 m/sec. This is 96% of the actual device motion value of 0.50 m/sec.
FIG. 4 is a three-dimensional coordinate system showing different motions that a mobile device may undergo and the variables associated with these movements. It also shows distance values (“distances”) that are used in methods for calculating ego-motion speeds described below. It shows 2D and 3D optical flows with “distance factors” in six directions and 6DOF motions. The x-axis measures left-right motion, the y-axis measures up-down motion, and the z-axis measures forward and backward motion of a mobile device. A device can rotate on the x-axis (pitch) and on the z-axis (roll). A device can also rotate on the y-axis (yaw). Linear movement of the device to the right is indicated by x1 and x5 and to the left by x2 and x6. Linear movement of the device upwards is shown by y1, y2, y3, and y4. Forward movement is shown as x3 and backward movement is x4, y5, and y6. In one embodiment, there is no downward movement.
FIG. 5 is a flow diagram of a process of calculating linear ego-motion speed of a mobile device having an imaging sensor in accordance with one embodiment. It is assumed that the mobile device, such as a cell phone or a gaming device, has been powered on and that the imaging sensor, such as a camera or other optic flow sensor, is active and that the device is being held by a user using it in a generally conventional manner. At step 502 the imaging sensor of the mobile device obtains optical flow data values.
At step 504 the imaging sensor obtains an estimated distance value between the sensor lens and an object or scene within the field of view of the sensor. This is done using optical flow values. As described above, if there is no salient object, the sensors estimate distances to an overall scene. The distance estimate need not be precise in order for the method described to calculate ego-motion speed of the mobile device. The distance estimate may be coarse or precise. However, regardless of the resolution of the distance estimate, having some information about distance will increase the precision of linear ego-motion speed calculation. The distance estimate may be used to modify the 2D optical flow vector values using a simple calculation. The distance value, d1, may be measured in meters or any other suitable unit.
The primary output of the imager is a set of optical flow vector values. For example, referring to FIG. 4, the output of the imager facing the “Front” has vector values, x1 and y1, as shown in FIG. 3. An object or scene in front of the imager is d1 distance away. At step 506 the optical flow vector value is modified, or weighted, using the distance value. Thus, vector value x1 is modified by being multiplied by d1 (x1*d1).
At step 508 a shifting (linear) speed of the mobile device is calculated using the modified horizontal and vertical optical flow vector values. Referring to FIG. 4, the horizontal vector value corresponds to all the x values (x1 to x6) and vertical vector values correspond to all the y values (y1 to y6). For example, if the imager is facing “Down,” the horizontal optical flow vector value x6 (as modified) may be used to calculate left-right shifting speed, since there are no vertical components. An actual shifting speed having the correct unit value is calculated using a resolution factor, such as the 0.008 m/(pixel*m), and a frame rate, such as 10 frames/second, both from the example above. After the optical flow vector value has been adjusted, the result is multiplied by the resolution factor and the result of this product is divided by the frame rate of the imager. These two calculations take into account properties of the specific imager being used and provide the correct units of the final result (e.g., meters/sec). At this stage the process of detecting the ego-motion speed of a device having one imaging sensor is complete.
FIG. 6A is a flow diagram of a process of calculating ego-motion speed of a mobile device using image sensors and inertial sensors in accordance with one embodiment. At step 600 the ego-motion speed calculation module is activated. This may be done when the mobile device is powered on or the device may have a separate means for specifically turning on this feature. For example, it may be “Activate 3D Browser,” “Enable 3D Content Navigation,” or something similar. Note that the ego-motion speed is used by the virtual camera which is directly associated with the actual end user application, as described below. At this stage, it is assumed that the device is motionless.
At step 604 the user begins moving the device. As described above, in one embodiment, the device is able to detect four DOFs, two that are linear and two that are rotational. The calculation module receives motion data from one or two sensor types: an inertial sensor and/or an image sensor. Specifically, as shown in FIG. 2, it receives motion data from either image sensor software module 208 or from inertial sensor software module 212. The motion data received by calculation module 214 may be in one of various forms. For example, the data from image module 208 may be optic flow vector values (typically in pixels) or may be an actual speed value (e.g., in meters/second). If vector values are transmitted, calculation module 214 performs further steps, such as a mapping of vector values to speed, to arrive at an actual linear ego-motion speed. Data from inertial sensor module 212 may be in some form of absolute angular data (degrees) which module 214 can use to derive an angular speed.
At step 603 the speed calculation module examines the data and determines whether it is rotational data from an inertial sensor. This may be done by examining the format of the data, the data type, a header, or using data indicators. If the data is rotational or angular, control goes to step 605 where the rotational/angular speed of the device is calculated. Control then returns to step 601 where, if the user moves the device, the module receives the “next” motion data. If at step 603 it is determined that the motion data is not rotational, control goes to step 607. At this stage it is implied that the data is linear motion data and the speed calculation module calculates the linear speed of the device at step 607. Once this is done, control returns to step 601. As can be seen from FIG. 6A, there is a continuous execution loop, as long as the device is in motion. Either the device is in linear or shifting motion or it is being rotated or turned at some angle. The nature of this loop, and specifically decision step 603, illustrates that rotational motion data from the inertial sensor takes priority over linear data from an imaging sensor. In other embodiments, this priority may not be necessary and both types of motion data are treated equally.
FIG. 6B is a flow diagram of an alternative process of calculating ego-motion speed of a mobile device using image sensors and inertial sensors in accordance with another embodiment. At step 602, the ego-motion speed calculation module is activated. This may be done when the mobile device is powered on or the device may have a separate means for specifically turning on this feature. At this stage, it is assumed that the device is motionless.
At step 604 the user begins moving the device. As described above, in one embodiment, the device is able to detect four DOFs, two that are linear and two that are rotational. The calculation module receives motion data from one or two sensor types: an inertial sensor and/or an image sensor.
At step 606 calculation module examines the data and determines whether it is rotational data from an inertial sensor or linear data from an imaging sensor. If the data is rotational or angular data, control goes to step 608 where the calculation module calculates the angular speed of the mobile device. As noted, this may be done by mapping raw angular data to an angular speed using time. As is known in the field, inertial sensors are very efficient and accurate with respect to measuring angular/rotational movement. This speed may be in degrees per second or may be a comparative measure such as no speed, low speed, medium speed, and so on. Control then returns to 604 where the user, at this stage, continues moving the device and motion data is transmitted to the calculation module. Naturally, as long as the user is holding and using the device (e.g., cell phone, mobile gaming device, and the like), there will be a constant flow of motion data to calculation module 214 which will, essentially, constantly be calculating either a rotational speed as in step 608 or a linear speed.
If the motion data is determined to be linear, at step 610 the calculation module calculates the linear speed. As noted, this linear speed may be comparative (or relative), such as no speed, low speed, intermediate speed, and so on. In this embodiment, a distance is assumed (e.g., an average distance to an object) and is used to arrive at an estimation of speed, as opposed to an actual speed. Or, in an alternative embodiment, it may be an actual speed, measured in suitable units (e.g., meters/second). As described above, in this alternative embodiment, an actual distance, d1, is measured (e.g., using an autofocus system) and used in calculating a speed.
The user continues to use the device thereby moving it and the calculation module receives this motion data at step 612. This step is the same as step 604 (it is repeated here for ease of illustration). At step 614, the calculation module determines whether the next motion data it receives is linear or rotational, as it does in step 606. This decision step is repeated here as step 614 to illustrate a particular feature of the invention, which may be referred to as disambiguation of linear and rotational motion.
As is known in the field, image sensors are not very accurate with respect to differentiating between linear and rotational movement. A device may be rotated or moved in an angular direction by the user (without any linear movement), and many image sensors currently in use may interpret this angular movement as linear movement. As a result, in some cases linear movement data may be sent by the imager when, in fact, the device is only being turned by the user. In contrast, imaging sensors are very efficient and accurate in detecting actual linear movement. On the other hand, inertial sensors are very efficient at detecting angular movement of a device. Thus, in a few cases, linear motion data from the imaging sensor may represent angular motion and not linear motion. If rotational data is received at the same time as linear data or while linear calculations are being performed, this rotational data is used to disambiguate the linear motion data. In other words, it is used by the calculation module to determine that the linear data is a result of angular motion and, thereafter, ignore or bypass the linear data and use the rotational data to calculate rotational speed. At step 614 the calculation module determines whether the new motion is linear or rotational motion. If it is determined at step 614 that the motion data is linear data, control returns to step 610 where the linear speed is calculated. If the next motion data is rotational data, control goes to step 616 where the linear speed calculation is stopped. In this case, the linear motion data received, which may have been received at the same time or before the rotational data, actually resulted from angular movement of the device. In this case, the calculation module uses the rotational motion data from the inertial sensor and control goes from 616 to step 608 where the rotational speed is calculated. This process continues until the speed calculation module is turned off, or the mobile device is powered off. The calculation module may be deactivated, for example, if the device is stationary for a certain length of time or if the user specifically turns off the feature, perhaps to conserve battery.
Ego-motion speed data is the output of speed calculation module 214 and is used, in one embodiment, by a virtual camera control module. This module is used to control a virtual camera into 3D content and essentially enables position-dependent viewing of such content. An important feature of using the mobile device as a “3D browser” into, for example, an online virtual world, is that the virtual camera move at the same speed as the device. Therefore, the speed of the device is a critical component in making the 3D browsing ability of the device appear intuitive, realistic, and accurate to the user. If the virtual camera did not move at the same linear speed and same angular speed as the mobile device, the user's view into the 3D content (via the device's display) would be awkward from the disconnect between the user's real world movements and the navigation through the 3D content. Examples of viewing a virtual 3D environment on a cellphone are shown in FIGS. 7A and 7B. In FIG. 7A a cellphone 702 in a first position displays a virtual world street with cars at time t1. The user moves cellphone (or any mobile device) 702 to a second position at time t2 and displays a different portion of the virtual world street. In FIG. 7B a cellphone 704 displays a scene in a virtual world at time t1. The scene is of a mosaic on the ground with some people standing in the background shown at a specific angle. The user moves cellphone 704 to a second position at time t2 where a different angle of the mosaic is shown (where the people are not visible). In both these examples, the linear and angular speed of the device is used to calibrate the speed of the virtual camera into the 3D content. In this manner, the mobile device can be used as a 3D browser for viewing virtual world and various other types of 3D content.
Thus, various embodiments of the present provide interaction methods and technologies for improving the user's interaction with 3D content on mobile devices. As noted above, one interaction method can be referred to as “position-dependent rendering”: instead of using button presses, the user utilizes the space around her, treating the mobile device's display as a “window” into, e.g., a 3D virtual world-just like looking through a small window, as shown in FIGS. 7A and 7B. This window is not static, though: the user can move it around, creating a much larger “virtual view.” In order to implement this interaction method, it is necessary to determine the position of the mobile device in space (location and orientation) as accurately as possible. As described above, detecting location, orientation, and motion speed of a device itself is generally referred to as “ego-motion detection” (the device determines its own motion speed without external sensors). In other words, in order to navigate a 3D scene by simply moving the device around, ego-motion detection is necessary to detect the motion of the device itself, so that the device knows exactly how and where it has been moved in space.
FIG. 8 illustrates components of a computing system 800 suitable for implementing embodiments of the present invention. Attached to system bus 820 are various subsystems. Processor(s) 822 (also referred to as central processing units, or CPUs) are coupled to storage devices including memory 824. Memory 824 includes random access memory (RAM) and read-only memory (ROM). As is well known in the art, ROM acts to transfer data and instructions uni-directionally to the CPU and RAM is used typically to transfer data and instructions in a bi-directional manner. Both of these types of memories may include any suitable of the computer-readable media described below. A fixed disk 826 is also coupled bi-directionally to CPU 822; it provides additional data storage capacity and may also include any of the computer-readable media described below. Fixed disk 826 may be used to store programs, data and the like and is typically a secondary storage medium (such as a hard disk) that is slower than primary storage. It will be appreciated that the information retained within fixed disk 826, may, in appropriate cases, be incorporated in standard fashion as virtual memory in memory 824. Removable disk 814 may take the form of any of the computer-readable media described below.
CPU 822 is also coupled to a variety of input/output devices such as display 804, keyboard 810, mouse 812 and speakers 830. In general, an input/output device may be any of: video displays, track balls, mice, keyboards, microphones, touch-sensitive displays, transducer card readers, magnetic or paper tape readers, tablets, styluses, voice or handwriting recognizers, biometrics readers, or other computers. CPU 822 optionally may be coupled to another computer or telecommunications network using network interface 840. With such a network interface, it is contemplated that the CPU might receive information from the network, or might output information to the network in the course of performing the above-described method steps. Furthermore, method embodiments of the present invention may execute solely upon CPU 822 or may execute over a network such as the Internet in conjunction with a remote CPU that shares a portion of the processing. Finally, device 800 has as one or more of its subsystems imaging sensor hardware and inertial sensor hardware as shown in FIG. 2.
Although illustrative embodiments and applications of this invention are shown and described herein, many variations and modifications are possible which remain within the concept, scope, and spirit of the invention, and these variations would become clear to those of ordinary skill in the art after perusal of this application. Accordingly, the embodiments described are illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims (6)

1. A method of measuring ego-motion speed of a hand-held mobile device displaying 3D content, the method comprising:
measuring linear motion of the mobile device using an image sensor component, thereby creating linear motion data;
measuring rotational motion of the mobile device using an inertial sensor component, thereby creating rotational motion data;
determining whether data received at a speed calculation module is rotational motion data or linear motion data;
combining the rotational motion data and the linear motion data to calculate ego-motion speed of the mobile device; and
adjusting the 3D content to a viewer perspective using the ego-motion speed of the mobile device.
2. A method as recited in claim 1 wherein the linear motion data includes optic flow vector values.
3. A method as recited in claim 2 further comprising:
calculating linear speed using the optic flow vector values.
4. A method as recited in claim 1 wherein the rotational motion data includes roll data of the device and pitch data of the device.
5. A method as recited in claim 1 further comprising:
giving priority to the rotational motion data if linear motion data and rotational motion data are produced.
6. A hand-held mobile device having a screen for displaying 3D data comprising:
one or more processors;
a data storage component;
an image sensor hardware component and image sensor software;
an inertial sensor hardware component and inertial sensor software;
an ego-motion speed calculation module for calculating the ego-motion speed of the mobile device using linear motion data from the image sensor software and rotational motion data from the inertial sensor software by combining the rotational motion data and the linear motion data and for determining whether data received is rotational motion data or linear motion data; and
a virtual camera control module for adjusting the 3D data to a viewer perspective using the ego-motion speed of the mobile device.
US12/551,287 2008-09-02 2009-08-31 Detecting ego-motion on a mobile device displaying three-dimensional content Expired - Fee Related US8310537B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/551,287 US8310537B2 (en) 2008-09-02 2009-08-31 Detecting ego-motion on a mobile device displaying three-dimensional content

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US9365108P 2008-09-02 2008-09-02
US12/551,287 US8310537B2 (en) 2008-09-02 2009-08-31 Detecting ego-motion on a mobile device displaying three-dimensional content

Publications (2)

Publication Number Publication Date
US20100053322A1 US20100053322A1 (en) 2010-03-04
US8310537B2 true US8310537B2 (en) 2012-11-13

Family

ID=41724668

Family Applications (5)

Application Number Title Priority Date Filing Date
US12/421,363 Abandoned US20100053151A1 (en) 2008-09-02 2009-04-09 In-line mediation for manipulating three-dimensional content on a display device
US12/424,117 Expired - Fee Related US8253649B2 (en) 2008-09-02 2009-04-15 Spatially correlated rendering of three-dimensional content on display components having arbitrary positions
US12/546,084 Expired - Fee Related US8253795B2 (en) 2008-09-02 2009-08-24 Egomotion speed estimation on a mobile device
US12/551,287 Expired - Fee Related US8310537B2 (en) 2008-09-02 2009-08-31 Detecting ego-motion on a mobile device displaying three-dimensional content
US12/699,568 Expired - Fee Related US8456524B2 (en) 2008-09-02 2010-02-03 Egomotion speed estimation on a mobile device using a single imager

Family Applications Before (3)

Application Number Title Priority Date Filing Date
US12/421,363 Abandoned US20100053151A1 (en) 2008-09-02 2009-04-09 In-line mediation for manipulating three-dimensional content on a display device
US12/424,117 Expired - Fee Related US8253649B2 (en) 2008-09-02 2009-04-15 Spatially correlated rendering of three-dimensional content on display components having arbitrary positions
US12/546,084 Expired - Fee Related US8253795B2 (en) 2008-09-02 2009-08-24 Egomotion speed estimation on a mobile device

Family Applications After (1)

Application Number Title Priority Date Filing Date
US12/699,568 Expired - Fee Related US8456524B2 (en) 2008-09-02 2010-02-03 Egomotion speed estimation on a mobile device using a single imager

Country Status (3)

Country Link
US (5) US20100053151A1 (en)
KR (2) KR20100027976A (en)
WO (1) WO2010027193A2 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120308114A1 (en) * 2011-05-31 2012-12-06 Gabriel Othmezouri Voting strategy for visual ego-motion from stereo
US20130050076A1 (en) * 2011-08-22 2013-02-28 Research & Business Foundation Sungkyunkwan University Method of recognizing a control command based on finger motion and mobile device using the same
US20150097864A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US20150097861A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US20150097863A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9630631B2 (en) 2013-10-03 2017-04-25 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9716859B2 (en) 2011-09-02 2017-07-25 Skype Mobile video calls
WO2019056041A1 (en) * 2017-09-19 2019-03-28 Canon Kabushiki Kaisha System and method of controlling a virtual camera
US10718603B2 (en) 2016-10-13 2020-07-21 Six Degrees Space Ltd Method and apparatus for indoor positioning
US10849179B1 (en) 2019-05-29 2020-11-24 Bank Of America Corporation Mobile network tool

Families Citing this family (446)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9405459B2 (en) 2011-08-24 2016-08-02 Z124 Unified desktop laptop dock software operation
US9268518B2 (en) 2011-09-27 2016-02-23 Z124 Unified desktop docking rules
US9715252B2 (en) 2011-08-24 2017-07-25 Z124 Unified desktop docking behavior for window stickiness
JP3915720B2 (en) * 2002-11-20 2007-05-16 ソニー株式会社 Video production system, video production device, video production method
US7473313B2 (en) * 2005-06-15 2009-01-06 Halliburton Energy Services, Inc. Gas-generating additives having improved shelf lives for use in cement compositions
US7509588B2 (en) 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
US9250703B2 (en) 2006-03-06 2016-02-02 Sony Computer Entertainment Inc. Interface with gaze detection and voice input
US8730156B2 (en) * 2010-03-05 2014-05-20 Sony Computer Entertainment America Llc Maintaining multiple views on a shared stable virtual space
US10313505B2 (en) 2006-09-06 2019-06-04 Apple Inc. Portable multifunction device, method, and graphical user interface for configuring and displaying widgets
US8519964B2 (en) 2007-01-07 2013-08-27 Apple Inc. Portable multifunction device, method, and graphical user interface supporting user navigations of graphical objects on a touch screen display
US8619038B2 (en) 2007-09-04 2013-12-31 Apple Inc. Editing interface
US8384718B2 (en) * 2008-01-10 2013-02-26 Sony Corporation System and method for navigating a 3D graphical user interface
US8933876B2 (en) 2010-12-13 2015-01-13 Apple Inc. Three dimensional user interface session control
US20120204133A1 (en) * 2009-01-13 2012-08-09 Primesense Ltd. Gesture-Based User Interface
US9035876B2 (en) 2008-01-14 2015-05-19 Apple Inc. Three-dimensional user interface session control
WO2009102813A2 (en) 2008-02-14 2009-08-20 Infomotion Sports Technologies, Inc. Electronic analysis of athletic performance
US20090289188A1 (en) * 2008-05-20 2009-11-26 Everspring Industry Co., Ltd. Method for controlling an electronic device through infrared detection
EP2145575A1 (en) * 2008-07-17 2010-01-20 Nederlandse Organisatie voor toegepast-natuurwetenschappelijk Onderzoek TNO A system, a method and a computer program for inspection of a three-dimensional environment by a user
US20100053151A1 (en) * 2008-09-02 2010-03-04 Samsung Electronics Co., Ltd In-line mediation for manipulating three-dimensional content on a display device
US8866698B2 (en) * 2008-10-01 2014-10-21 Pleiades Publishing Ltd. Multi-display handheld device and supporting system
US20100138797A1 (en) * 2008-12-01 2010-06-03 Sony Ericsson Mobile Communications Ab Portable electronic device with split vision content sharing control and method
KR101544364B1 (en) * 2009-01-23 2015-08-17 삼성전자주식회사 Mobile terminal having dual touch screen and method for controlling contents thereof
CN102481478B (en) 2009-03-27 2015-06-03 英福摩迅运动科技公司 Monitoring of physical training events
US20120121128A1 (en) * 2009-04-20 2012-05-17 Bent 360: Medialab Inc. Object tracking system
US9479895B2 (en) * 2009-04-23 2016-10-25 International Business Machines Corporation Location-oriented services
US20100302138A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Methods and systems for defining or modifying a visual representation
US20100315413A1 (en) * 2009-06-16 2010-12-16 Microsoft Corporation Surface Computer User Interaction
US8269691B2 (en) * 2009-06-26 2012-09-18 Sony Computer Entertainment Inc. Networked computer graphics rendering system with multiple displays for displaying multiple viewing frustums
US20100328447A1 (en) * 2009-06-26 2010-12-30 Sony Computer Entertainment, Inc. Configuration of display and audio parameters for computer graphics rendering system having multiple displays
US20100328354A1 (en) * 2009-06-26 2010-12-30 Sony Computer Entertainment, Inc. Networked Computer Graphics Rendering System with Multiple Displays
JP5343773B2 (en) * 2009-09-04 2013-11-13 ソニー株式会社 Information processing apparatus, display control method, and display control program
US9032288B2 (en) * 2009-09-11 2015-05-12 Xerox Corporation Document presentation in virtual worlds
US20110084983A1 (en) * 2009-09-29 2011-04-14 Wavelength & Resonance LLC Systems and Methods for Interaction With a Virtual Environment
KR20110035609A (en) * 2009-09-30 2011-04-06 삼성전자주식회사 Apparatus and method for sensing motion
US9104275B2 (en) * 2009-10-20 2015-08-11 Lg Electronics Inc. Mobile terminal to display an object on a perceived 3D space
US20110109526A1 (en) * 2009-11-09 2011-05-12 Qualcomm Incorporated Multi-screen image display
US20110140991A1 (en) * 2009-12-15 2011-06-16 International Business Machines Corporation Multi-monitor configuration system
US10007393B2 (en) * 2010-01-19 2018-06-26 Apple Inc. 3D view of file structure
US8913009B2 (en) * 2010-02-03 2014-12-16 Nintendo Co., Ltd. Spatially-correlated multi-display human-machine interface
US8896685B2 (en) 2010-03-14 2014-11-25 Ns Solutions Corporation Method and system for determining information relating to vacant spaces of a parking lot
US8540571B2 (en) * 2010-03-31 2013-09-24 Immersion Corporation System and method for providing haptic stimulus based on position
US9264785B2 (en) 2010-04-01 2016-02-16 Sony Computer Entertainment Inc. Media fingerprinting for content determination and retrieval
US8560583B2 (en) 2010-04-01 2013-10-15 Sony Computer Entertainment Inc. Media fingerprinting for social networking
US10448083B2 (en) * 2010-04-06 2019-10-15 Comcast Cable Communications, Llc Streaming and rendering of 3-dimensional video
US8423911B2 (en) 2010-04-07 2013-04-16 Apple Inc. Device, method, and graphical user interface for managing folders
TWI461967B (en) * 2010-04-07 2014-11-21 Hon Hai Prec Ind Co Ltd Handwrite input electronic device
US10788976B2 (en) 2010-04-07 2020-09-29 Apple Inc. Device, method, and graphical user interface for managing folders with multiple pages
WO2011127646A1 (en) 2010-04-13 2011-10-20 Nokia Corporation An apparatus, method, computer program and user interface
KR101640043B1 (en) 2010-04-14 2016-07-15 삼성전자주식회사 Method and Apparatus for Processing Virtual World
US8842113B1 (en) * 2010-05-26 2014-09-23 Google Inc. Real-time view synchronization across multiple networked devices
WO2011147561A2 (en) * 2010-05-28 2011-12-01 Chao Zhang Mobile unit, method for operating the same and network comprising the mobile unit
US8639020B1 (en) 2010-06-16 2014-01-28 Intel Corporation Method and system for modeling subjects from a depth map
US20120200600A1 (en) * 2010-06-23 2012-08-09 Kent Demaine Head and arm detection for virtual immersion systems and methods
US20130093738A1 (en) 2010-06-28 2013-04-18 Johannes Manus Generating images for at least two displays in image-guided surgery
KR101651135B1 (en) * 2010-07-12 2016-08-25 엘지전자 주식회사 Mobile terminal and method for controlling the same
US9143699B2 (en) 2010-07-13 2015-09-22 Sony Computer Entertainment Inc. Overlay non-video content on a mobile device
US9832441B2 (en) * 2010-07-13 2017-11-28 Sony Interactive Entertainment Inc. Supplemental content on a mobile device
US9814977B2 (en) * 2010-07-13 2017-11-14 Sony Interactive Entertainment Inc. Supplemental video content on a mobile device
US8730354B2 (en) 2010-07-13 2014-05-20 Sony Computer Entertainment Inc Overlay video content on a mobile device
US9159165B2 (en) 2010-07-13 2015-10-13 Sony Computer Entertainment Inc. Position-dependent gaming, 3-D controller, and handheld as a remote
US9201501B2 (en) 2010-07-20 2015-12-01 Apple Inc. Adaptive projector
CN102959616B (en) 2010-07-20 2015-06-10 苹果公司 Interactive reality augmentation for natural interaction
WO2012020866A1 (en) * 2010-08-13 2012-02-16 엘지전자 주식회사 Mobile terminal, display device, and control method therefor
JP5751775B2 (en) * 2010-09-01 2015-07-22 キヤノン株式会社 Imaging apparatus, control method and program thereof, and recording medium
US8517870B2 (en) 2010-09-07 2013-08-27 Infomotion Sports Technologies, Inc. Electronic component enclosure for an inflated object
US9047041B2 (en) * 2010-09-15 2015-06-02 Lenovo (Singapore) Pte. Ltd. Combining multiple slate displays into a larger display matrix
US9052760B2 (en) * 2010-09-15 2015-06-09 Lenovo (Singapore) Pte. Ltd. Combining multiple slate displays into a larger display
KR101708696B1 (en) * 2010-09-15 2017-02-21 엘지전자 주식회사 Mobile terminal and operation control method thereof
US8959013B2 (en) 2010-09-27 2015-02-17 Apple Inc. Virtual keyboard for a non-tactile three dimensional user interface
TW201215442A (en) * 2010-10-06 2012-04-16 Hon Hai Prec Ind Co Ltd Unmanned Aerial Vehicle control system and method
IL208600A (en) * 2010-10-10 2016-07-31 Rafael Advanced Defense Systems Ltd Network-based real time registered augmented reality for mobile devices
US20120086630A1 (en) * 2010-10-12 2012-04-12 Sony Computer Entertainment Inc. Using a portable gaming device to record or modify a game or application in real-time running on a home gaming system
US9043732B2 (en) * 2010-10-21 2015-05-26 Nokia Corporation Apparatus and method for user input for controlling displayed information
US9489102B2 (en) * 2010-10-22 2016-11-08 Hewlett-Packard Development Company, L.P. System and method of modifying lighting in a display system
WO2012054063A1 (en) 2010-10-22 2012-04-26 Hewlett-Packard Development Company L.P. An augmented reality display system and method of display
US8854802B2 (en) 2010-10-22 2014-10-07 Hewlett-Packard Development Company, L.P. Display with rotatable display screen
JP5815932B2 (en) * 2010-10-27 2015-11-17 京セラ株式会社 Electronics
KR101364826B1 (en) 2010-11-01 2014-02-20 닌텐도가부시키가이샤 Operating apparatus and operating system
US8619030B2 (en) * 2010-11-09 2013-12-31 Blackberry Limited Method and apparatus for controlling an output device of a portable electronic device
JP5703703B2 (en) 2010-11-11 2015-04-22 ソニー株式会社 Information processing apparatus, stereoscopic display method, and program
US9584735B2 (en) * 2010-11-12 2017-02-28 Arcsoft, Inc. Front and back facing cameras
KR101303994B1 (en) * 2010-11-24 2013-09-04 한국전자통신연구원 Virtual-Reality Based Training Guide System and the Method
EP2646987A1 (en) 2010-12-03 2013-10-09 App.Lab Inc. System and method for presenting images
US8872762B2 (en) 2010-12-08 2014-10-28 Primesense Ltd. Three dimensional user interface cursor control
KR20120064557A (en) * 2010-12-09 2012-06-19 한국전자통신연구원 Mixed reality display platform for presenting augmented 3d stereo image and operation method thereof
US20120162384A1 (en) * 2010-12-22 2012-06-28 Vesely Michael A Three-Dimensional Collaboration
JP5122659B2 (en) * 2011-01-07 2013-01-16 任天堂株式会社 Information processing program, information processing method, information processing apparatus, and information processing system
US20120192088A1 (en) * 2011-01-20 2012-07-26 Avaya Inc. Method and system for physical mapping in a virtual world
US9618972B2 (en) * 2011-01-20 2017-04-11 Blackberry Limited Three-dimensional, multi-depth presentation of icons in association with differing input components of a user interface
US9480913B2 (en) * 2011-01-26 2016-11-01 WhitewaterWest Industries Ltd. Interactive entertainment using a mobile device with object tagging and/or hyperlinking
US8421752B2 (en) * 2011-01-27 2013-04-16 Research In Motion Limited Portable electronic device and method therefor
EP2485119A3 (en) * 2011-02-02 2012-12-12 Nintendo Co., Ltd. Spatially-correlated multi-display human-machine interface
CN103347437B (en) 2011-02-09 2016-06-08 苹果公司 Gaze detection in 3D mapping environment
US9298362B2 (en) * 2011-02-11 2016-03-29 Nokia Technologies Oy Method and apparatus for sharing media in a multi-device environment
US9507416B2 (en) * 2011-02-22 2016-11-29 Robert Howard Kimball Providing a corrected view based on the position of a user with respect to a mobile platform
GB201103346D0 (en) 2011-02-28 2011-04-13 Dev Ltd Improvements in or relating to optical navigation devices
JP5792971B2 (en) 2011-03-08 2015-10-14 任天堂株式会社 Information processing system, information processing program, and information processing method
US9561443B2 (en) 2011-03-08 2017-02-07 Nintendo Co., Ltd. Computer-readable storage medium, information processing system, and information processing method
EP2497545B1 (en) 2011-03-08 2019-08-07 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
EP2497547B1 (en) 2011-03-08 2018-06-27 Nintendo Co., Ltd. Information processing program, information processing apparatus, information processing system, and information processing method
US9925464B2 (en) 2011-03-08 2018-03-27 Nintendo Co., Ltd. Computer-readable storage medium, information processing system, and information processing method for displaying an image on a display device using attitude data of a display device
EP2497543A3 (en) 2011-03-08 2012-10-03 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
CN102859470B (en) * 2011-03-15 2015-12-02 松下电器(美国)知识产权公司 Object control device, object control method and integrated circuit
US9857868B2 (en) 2011-03-19 2018-01-02 The Board Of Trustees Of The Leland Stanford Junior University Method and system for ergonomic touch-free interface
US20120242793A1 (en) * 2011-03-21 2012-09-27 Soungmin Im Display device and method of controlling the same
US8726366B2 (en) 2011-03-30 2014-05-13 Elwha Llc Ascertaining presentation format based on device primary control determination
US8863275B2 (en) 2011-03-30 2014-10-14 Elwha Llc Access restriction in response to determining device transfer
US8745725B2 (en) * 2011-03-30 2014-06-03 Elwha Llc Highlighting in response to determining device transfer
US8839411B2 (en) 2011-03-30 2014-09-16 Elwha Llc Providing particular level of access to one or more items in response to determining primary control of a computing device
US9317111B2 (en) 2011-03-30 2016-04-19 Elwha, Llc Providing greater access to one or more items in response to verifying device transfer
US9153194B2 (en) 2011-03-30 2015-10-06 Elwha Llc Presentation format selection based at least on device transfer determination
US8713670B2 (en) 2011-03-30 2014-04-29 Elwha Llc Ascertaining presentation format based on device primary control determination
US8739275B2 (en) 2011-03-30 2014-05-27 Elwha Llc Marking one or more items in response to determining device transfer
US8613075B2 (en) 2011-03-30 2013-12-17 Elwha Llc Selective item access provision in response to active item ascertainment upon device transfer
US8918861B2 (en) 2011-03-30 2014-12-23 Elwha Llc Marking one or more items in response to determining device transfer
US8726367B2 (en) * 2011-03-30 2014-05-13 Elwha Llc Highlighting in response to determining device transfer
EP2695142B1 (en) 2011-04-08 2023-03-01 Koninklijke Philips N.V. Image processing system and method
JP5829040B2 (en) * 2011-04-11 2015-12-09 任天堂株式会社 GAME SYSTEM, GAME DEVICE, GAME PROGRAM, AND IMAGE GENERATION METHOD
JP2012226182A (en) * 2011-04-20 2012-11-15 Sony Corp Image display control device, image display system, image display control method, and computer program
US8840466B2 (en) 2011-04-25 2014-09-23 Aquifi, Inc. Method and system to create three-dimensional mapping in a two-dimensional game
US8702507B2 (en) 2011-04-28 2014-04-22 Microsoft Corporation Manual and camera-based avatar control
US20120274589A1 (en) * 2011-04-28 2012-11-01 De Angelo Michael J Apparatus, system, and method for remote interaction with a computer display or computer visualization or object
US20120280898A1 (en) * 2011-05-03 2012-11-08 Nokia Corporation Method, apparatus and computer program product for controlling information detail in a multi-device environment
US8788973B2 (en) 2011-05-23 2014-07-22 Microsoft Corporation Three-dimensional gesture controlled avatar configuration interface
US10120438B2 (en) 2011-05-25 2018-11-06 Sony Interactive Entertainment Inc. Eye gaze to alter device behavior
JP5918618B2 (en) * 2011-06-03 2016-05-18 任天堂株式会社 Information processing program, information processing apparatus, information processing system, and information processing method
US9259645B2 (en) * 2011-06-03 2016-02-16 Nintendo Co., Ltd. Storage medium having stored therein an image generation program, image generation method, image generation apparatus and image generation system
JP2012256110A (en) * 2011-06-07 2012-12-27 Sony Corp Information processing apparatus, information processing method, and program
JP6074170B2 (en) 2011-06-23 2017-02-01 インテル・コーポレーション Short range motion tracking system and method
US11048333B2 (en) 2011-06-23 2021-06-29 Intel Corporation System and method for close-range movement tracking
US8881051B2 (en) 2011-07-05 2014-11-04 Primesense Ltd Zoom-based gesture user interface
US9377865B2 (en) 2011-07-05 2016-06-28 Apple Inc. Zoom-based gesture user interface
US9459758B2 (en) 2011-07-05 2016-10-04 Apple Inc. Gesture-based interface with enhanced features
JP5830987B2 (en) * 2011-07-06 2015-12-09 ソニー株式会社 Display control apparatus, display control method, and computer program
KR101302638B1 (en) 2011-07-08 2013-09-05 더디엔에이 주식회사 Method, terminal, and computer readable recording medium for controlling content by detecting gesture of head and gesture of hand
JP5919665B2 (en) * 2011-07-19 2016-05-18 日本電気株式会社 Information processing apparatus, object tracking method, and information processing program
US20130044258A1 (en) * 2011-08-15 2013-02-21 Danfung Dennis Method for presenting video content on a hand-held electronic device
US9030498B2 (en) 2011-08-15 2015-05-12 Apple Inc. Combining explicit select gestures and timeclick in a non-tactile three dimensional user interface
JP5694883B2 (en) * 2011-08-23 2015-04-01 京セラ株式会社 Display device
US20130050414A1 (en) * 2011-08-24 2013-02-28 Ati Technologies Ulc Method and system for navigating and selecting objects within a three-dimensional video image
US9122311B2 (en) 2011-08-24 2015-09-01 Apple Inc. Visual feedback for tactile and non-tactile user interfaces
US9218063B2 (en) 2011-08-24 2015-12-22 Apple Inc. Sessionless pointing user interface
US20130050499A1 (en) * 2011-08-30 2013-02-28 Qualcomm Incorporated Indirect tracking
US9918681B2 (en) 2011-09-16 2018-03-20 Auris Surgical Robotics, Inc. System and method for virtually tracking a surgical tool on a movable display
US8903127B2 (en) 2011-09-16 2014-12-02 Harman International (China) Holdings Co., Ltd. Egomotion estimation system and method
US9182935B2 (en) 2011-09-27 2015-11-10 Z124 Secondary single screen mode activation through menu option
EP2575006B1 (en) * 2011-09-27 2018-06-13 Elo Touch Solutions, Inc. Touch and non touch based interaction of a user with a device
EP2575007A1 (en) * 2011-09-27 2013-04-03 Elo Touch Solutions, Inc. Scaling of gesture based input
US9423876B2 (en) * 2011-09-30 2016-08-23 Microsoft Technology Licensing, Llc Omni-spatial gesture input
US8711091B2 (en) * 2011-10-14 2014-04-29 Lenovo (Singapore) Pte. Ltd. Automatic logical position adjustment of multiple screens
US20130100008A1 (en) * 2011-10-19 2013-04-25 Stefan J. Marti Haptic Response Module
US20130125016A1 (en) * 2011-11-11 2013-05-16 Barnesandnoble.Com Llc System and method for transferring content between devices
KR101915985B1 (en) * 2011-11-16 2018-11-07 엘지전자 주식회사 Mobile terminal and method for controlling thereof
EP2600319A1 (en) * 2011-11-29 2013-06-05 Gemalto SA Pairing system between a terminal and an eGo-type element worn on the wrist or the hand of a user and corresponding method
CN103959340A (en) * 2011-12-07 2014-07-30 英特尔公司 Graphics rendering technique for autostereoscopic three dimensional display
US9164544B2 (en) 2011-12-09 2015-10-20 Z124 Unified desktop: laptop dock, hardware configuration
US20140015816A1 (en) * 2011-12-16 2014-01-16 Scott Janus Driving multiple displays using a single display engine
US9223138B2 (en) 2011-12-23 2015-12-29 Microsoft Technology Licensing, Llc Pixel opacity for augmented reality
WO2013100900A1 (en) 2011-12-27 2013-07-04 Intel Corporation Full 3d interaction on mobile devices
US8638498B2 (en) 2012-01-04 2014-01-28 David D. Bohn Eyebox adjustment for interpupillary distance
US20130191787A1 (en) * 2012-01-06 2013-07-25 Tourwrist, Inc. Systems and Methods for Acceleration-Based Motion Control of Virtual Tour Applications
EP2615580B1 (en) * 2012-01-13 2016-08-17 Softkinetic Software Automatic scene calibration
US9501152B2 (en) 2013-01-15 2016-11-22 Leap Motion, Inc. Free-space user interface and control using virtual constructs
US10691219B2 (en) 2012-01-17 2020-06-23 Ultrahaptics IP Two Limited Systems and methods for machine control
US8693731B2 (en) 2012-01-17 2014-04-08 Leap Motion, Inc. Enhanced contrast for object detection and characterization by optical imaging
US9679215B2 (en) 2012-01-17 2017-06-13 Leap Motion, Inc. Systems and methods for machine control
US11493998B2 (en) 2012-01-17 2022-11-08 Ultrahaptics IP Two Limited Systems and methods for machine control
US9070019B2 (en) 2012-01-17 2015-06-30 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
US8638989B2 (en) 2012-01-17 2014-01-28 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
US8854433B1 (en) 2012-02-03 2014-10-07 Aquifi, Inc. Method and system enabling natural user interface gestures with an electronic system
US9368546B2 (en) 2012-02-15 2016-06-14 Microsoft Technology Licensing, Llc Imaging structure with embedded light sources
US9726887B2 (en) 2012-02-15 2017-08-08 Microsoft Technology Licensing, Llc Imaging structure color conversion
US9779643B2 (en) 2012-02-15 2017-10-03 Microsoft Technology Licensing, Llc Imaging structure emitter configurations
US9297996B2 (en) 2012-02-15 2016-03-29 Microsoft Technology Licensing, Llc Laser illumination scanning
US8786517B2 (en) * 2012-02-21 2014-07-22 Blackberry Limited System and method for displaying a user interface across multiple electronic devices
CN103294173A (en) * 2012-02-24 2013-09-11 冠捷投资有限公司 Remote control system based on user actions and method thereof
US9229534B2 (en) 2012-02-28 2016-01-05 Apple Inc. Asymmetric mapping for tactile and non-tactile user interfaces
KR101310498B1 (en) * 2012-03-06 2013-10-10 서울대학교산학협력단 Apparatus and Method for displaying 3 Dimensional Contents
US9578318B2 (en) 2012-03-14 2017-02-21 Microsoft Technology Licensing, Llc Imaging structure emitter calibration
JP2013196156A (en) * 2012-03-16 2013-09-30 Sony Corp Information processing apparatus, information processing method and program
US9575710B2 (en) 2012-03-19 2017-02-21 Lenovo (Beijing) Co., Ltd. Electronic device and information processing method thereof
US11068049B2 (en) 2012-03-23 2021-07-20 Microsoft Technology Licensing, Llc Light guide display and field of view
CN104246682B (en) 2012-03-26 2017-08-25 苹果公司 Enhanced virtual touchpad and touch-screen
US10191515B2 (en) * 2012-03-28 2019-01-29 Microsoft Technology Licensing, Llc Mobile device light guide display
US9558590B2 (en) 2012-03-28 2017-01-31 Microsoft Technology Licensing, Llc Augmented reality light guide display
US8933912B2 (en) 2012-04-02 2015-01-13 Microsoft Corporation Touch sensitive user interface with three dimensional input sensor
US9717981B2 (en) 2012-04-05 2017-08-01 Microsoft Technology Licensing, Llc Augmented reality and physical games
KR101793628B1 (en) * 2012-04-08 2017-11-06 삼성전자주식회사 Transparent display apparatus and method thereof
US9477303B2 (en) 2012-04-09 2016-10-25 Intel Corporation System and method for combining three-dimensional tracking with a three-dimensional display for a user interface
KR20130117553A (en) * 2012-04-18 2013-10-28 한국전자통신연구원 Apparatus and method for providing user interface for recognizing gesture
US9713765B2 (en) 2012-04-20 2017-07-25 Empire Technology Development Llc Online game experience using multiple devices
US9201495B2 (en) * 2012-04-24 2015-12-01 Mobitv, Inc. Control of perspective in multi-dimensional media
US20130304476A1 (en) 2012-05-11 2013-11-14 Qualcomm Incorporated Audio User Interaction Recognition and Context Refinement
US9746916B2 (en) 2012-05-11 2017-08-29 Qualcomm Incorporated Audio user interaction recognition and application interface
US10502876B2 (en) 2012-05-22 2019-12-10 Microsoft Technology Licensing, Llc Waveguide optics focus elements
US9381427B2 (en) * 2012-06-01 2016-07-05 Microsoft Technology Licensing, Llc Generic companion-messaging between media platforms
US9170667B2 (en) 2012-06-01 2015-10-27 Microsoft Technology Licensing, Llc Contextual user interface
US8989535B2 (en) 2012-06-04 2015-03-24 Microsoft Technology Licensing, Llc Multiple waveguide imaging structure
EP2677500B1 (en) 2012-06-19 2021-06-23 Samsung Electronics Co., Ltd. Event-based image processing apparatus and method
JP5910880B2 (en) * 2012-06-22 2016-04-27 コニカミノルタ株式会社 Operation display system, program, portable terminal, operation display device, portable terminal program
US9092184B2 (en) * 2012-06-22 2015-07-28 Harborside Press, LLC Interactive synchronized multi-screen display
US8837780B2 (en) * 2012-06-22 2014-09-16 Hewlett-Packard Development Company, L.P. Gesture based human interfaces
US9111135B2 (en) 2012-06-25 2015-08-18 Aquifi, Inc. Systems and methods for tracking human hands using parts based template matching using corresponding pixels in bounded regions of a sequence of frames that are a specified distance interval from a reference camera
US9098739B2 (en) 2012-06-25 2015-08-04 Aquifi, Inc. Systems and methods for tracking human hands using parts based template matching
US8532675B1 (en) 2012-06-27 2013-09-10 Blackberry Limited Mobile communication device user interface for manipulation of data items in a physical space
US20140002336A1 (en) * 2012-06-27 2014-01-02 Greg D. Kaine Peripheral device for visual and/or tactile feedback
US20140006472A1 (en) * 2012-06-28 2014-01-02 David Van Brink Locating a Device
US20140002339A1 (en) * 2012-06-28 2014-01-02 David Brent GUARD Surface With Touch Sensors for Detecting Proximity
US9235373B2 (en) * 2012-06-30 2016-01-12 At&T Intellectual Property I, L.P. Real-time management of content depicted on a plurality of displays
US10048779B2 (en) * 2012-06-30 2018-08-14 Hewlett-Packard Development Company, L.P. Virtual hand based on combined data
US10076685B2 (en) 2012-07-02 2018-09-18 Russell Brands, Llc Operations with instrumented game ball
WO2014008134A1 (en) 2012-07-02 2014-01-09 Infomotion Sports Technologies, Inc. Computer-implemented capture of live sporting event data
US20140089850A1 (en) * 2012-09-22 2014-03-27 Tourwrist, Inc. Systems and Methods of Using Motion Control to Navigate Panoramas and Virtual Tours
KR20140004448A (en) * 2012-07-03 2014-01-13 삼성전자주식회사 Method and apparatus for supplying image
TW201403446A (en) * 2012-07-09 2014-01-16 Hon Hai Prec Ind Co Ltd System and method for displaying software interface
US9305514B1 (en) * 2012-07-31 2016-04-05 Trend Micro Inc. Detection of relative positions of tablet computers
US20140037135A1 (en) * 2012-07-31 2014-02-06 Omek Interactive, Ltd. Context-driven adjustment of camera parameters
US9245428B2 (en) * 2012-08-02 2016-01-26 Immersion Corporation Systems and methods for haptic remote control gaming
JP6012068B2 (en) * 2012-08-28 2016-10-25 日本電気株式会社 Electronic device, control method thereof, and program
US8836768B1 (en) 2012-09-04 2014-09-16 Aquifi, Inc. Method and system enabling natural user interface gestures with user wearable glasses
US9838573B2 (en) * 2012-09-18 2017-12-05 Samsung Electronics Co., Ltd Method for guiding controller to move to within recognizable range of multimedia apparatus, the multimedia apparatus, and target tracking apparatus thereof
GB2506203B (en) * 2012-09-25 2016-12-14 Jaguar Land Rover Ltd Method of interacting with a simulated object
CN106020620B (en) * 2012-09-27 2019-07-26 京瓷株式会社 Display device, control method and control program
US9026924B2 (en) * 2012-10-05 2015-05-05 Lenovo (Singapore) Pte. Ltd. Devices, systems, and methods for moving electronic windows between displays
JP6178066B2 (en) * 2012-11-06 2017-08-09 株式会社ソニー・インタラクティブエンタテインメント Information processing apparatus, information processing method, program, and information storage medium
US9658695B2 (en) * 2012-11-08 2017-05-23 Cuesta Technology Holdings, Llc Systems and methods for alternative control of touch-based devices
US9671874B2 (en) 2012-11-08 2017-06-06 Cuesta Technology Holdings, Llc Systems and methods for extensions to alternative control of touch-based devices
US9285893B2 (en) 2012-11-08 2016-03-15 Leap Motion, Inc. Object detection and tracking with variable-field illumination devices
US20140132833A1 (en) * 2012-11-12 2014-05-15 Hulu, LLC Combining Multiple Screens from Multiple Devices in Video Playback
KR101416378B1 (en) * 2012-11-27 2014-07-09 현대자동차 주식회사 A display apparatus capable of moving image and the method thereof
JP5857946B2 (en) * 2012-11-30 2016-02-10 カシオ計算機株式会社 Image processing apparatus, image processing method, and program
KR101480300B1 (en) * 2012-11-30 2015-01-12 한국과학기술원 Interactive contents provision system and method using relative distance between the main screen and the second screen
US10101905B1 (en) * 2012-12-07 2018-10-16 American Megatrends, Inc. Proximity-based input device
US8976172B2 (en) 2012-12-15 2015-03-10 Realitycap, Inc. Three-dimensional scanning using existing sensors on portable electronic devices
FR2999741B1 (en) * 2012-12-17 2015-02-06 Centre Nat Rech Scient HAPTIC SYSTEM FOR NON-CONTACT INTERACTING AT LEAST ONE PART OF THE BODY OF A USER WITH A VIRTUAL ENVIRONMENT
US10192358B2 (en) 2012-12-20 2019-01-29 Microsoft Technology Licensing, Llc Auto-stereoscopic augmented reality display
KR101956073B1 (en) 2012-12-20 2019-03-08 삼성전자주식회사 3d volumetric display device for providing user interface using visual indicator and method thereof
JP2014127124A (en) * 2012-12-27 2014-07-07 Sony Corp Information processing apparatus, information processing method, and program
CN103902195B (en) * 2012-12-28 2017-02-22 鸿富锦精密工业(武汉)有限公司 Automatic regulation system and method for display screen
US9927902B2 (en) * 2013-01-06 2018-03-27 Intel Corporation Method, apparatus, and system for distributed pre-processing of touch data and display region control
US10609285B2 (en) 2013-01-07 2020-03-31 Ultrahaptics IP Two Limited Power consumption in motion-capture systems
US9465461B2 (en) 2013-01-08 2016-10-11 Leap Motion, Inc. Object detection and tracking with audio and optical signals
US9459697B2 (en) 2013-01-15 2016-10-04 Leap Motion, Inc. Dynamic, free-space user interactions for machine control
US9632658B2 (en) 2013-01-15 2017-04-25 Leap Motion, Inc. Dynamic user interactions for display control and scaling responsiveness of display objects
CN103945030B (en) * 2013-01-17 2017-06-30 信泰光学(深圳)有限公司 Modular appliance and its operating method
KR101822463B1 (en) * 2013-01-21 2018-01-26 삼성전자주식회사 Apparatus for arranging a plurality of Icons on Screen and Operation Method Thereof
US9161167B2 (en) * 2013-01-23 2015-10-13 Qualcomm Incorporated Visual identifier of third party location
TWI510084B (en) * 2013-01-25 2015-11-21 Sintai Optical Shenzhen Co Ltd Combination apparatus and operating method thereof
US9129155B2 (en) 2013-01-30 2015-09-08 Aquifi, Inc. Systems and methods for initializing motion tracking of human hands using template matching within bounded regions determined using a depth map
US9092665B2 (en) 2013-01-30 2015-07-28 Aquifi, Inc Systems and methods for initializing motion tracking of human hands
US9330471B2 (en) * 2013-02-14 2016-05-03 Qualcomm Incorporated Camera aided motion direction and speed estimation
US20140236726A1 (en) * 2013-02-18 2014-08-21 Disney Enterprises, Inc. Transference of data associated with a product and/or product package
US9858031B2 (en) * 2013-03-11 2018-01-02 International Business Machines Corporation Colony desktop hive display: creating an extended desktop display from multiple mobile devices using near-field or other networking
US9210526B2 (en) * 2013-03-14 2015-12-08 Intel Corporation Audio localization techniques for visual effects
US9702977B2 (en) 2013-03-15 2017-07-11 Leap Motion, Inc. Determining positional information of an object in space
US20140274384A1 (en) * 2013-03-15 2014-09-18 Electronic Arts Inc. Delivering and consuming interactive video gaming content
US9933987B2 (en) * 2013-03-26 2018-04-03 Nec Display Solutions, Ltd. Multi-display system
JP2015026286A (en) * 2013-07-26 2015-02-05 セイコーエプソン株式会社 Display device, display system and control method of display device
US9930313B2 (en) * 2013-04-01 2018-03-27 Lg Electronics Inc. Image display device for providing function of changing screen display direction and method thereof
US9298266B2 (en) 2013-04-02 2016-03-29 Aquifi, Inc. Systems and methods for implementing three-dimensional (3D) gesture based graphical user interfaces (GUI) that incorporate gesture reactive interface objects
US10620709B2 (en) 2013-04-05 2020-04-14 Ultrahaptics IP Two Limited Customized gesture interpretation
KR102025535B1 (en) * 2013-04-08 2019-09-26 시마진 미디어 엘티디 Distance estimation using multi-camera device
US9323338B2 (en) 2013-04-12 2016-04-26 Usens, Inc. Interactive input system and method
US9367136B2 (en) * 2013-04-12 2016-06-14 Microsoft Technology Licensing, Llc Holographic object feedback
US20140354602A1 (en) * 2013-04-12 2014-12-04 Impression.Pi, Inc. Interactive input system and method
US20140315489A1 (en) * 2013-04-22 2014-10-23 Htc Corporation Method for performing wireless display sharing, and associated apparatus and associated computer program product
US9395764B2 (en) * 2013-04-25 2016-07-19 Filippo Costanzo Gestural motion and speech interface control method for 3d audio-video-data navigation on handheld devices
US9916009B2 (en) 2013-04-26 2018-03-13 Leap Motion, Inc. Non-tactile interface systems and methods
US9952684B2 (en) 2013-05-09 2018-04-24 Samsung Electronics Co., Ltd. Input apparatus, pointing apparatus, method for displaying pointer, and recordable medium
US9417835B2 (en) 2013-05-10 2016-08-16 Google Inc. Multiplayer game for display across multiple devices
US9747696B2 (en) 2013-05-17 2017-08-29 Leap Motion, Inc. Systems and methods for providing normalized parameters of motions of objects in three-dimensional space
KR101469178B1 (en) 2013-05-22 2014-12-04 주식회사 인피니트헬스케어 System and method for medical image displaying using multiple mobile devices
US9727298B2 (en) * 2013-05-28 2017-08-08 Sony Corporation Device and method for allocating data based on an arrangement of elements in an image
US11020016B2 (en) 2013-05-30 2021-06-01 Auris Health, Inc. System and method for displaying anatomy and devices on a movable display
US20140365558A1 (en) * 2013-06-05 2014-12-11 Wolfgis, Llc System and method for visualizing complex gis location-based datasets
KR20150000783A (en) * 2013-06-25 2015-01-05 삼성전자주식회사 Display method and apparatus with multi-screens
US9798388B1 (en) 2013-07-31 2017-10-24 Aquifi, Inc. Vibrotactile system to augment 3D input systems
US10281987B1 (en) 2013-08-09 2019-05-07 Leap Motion, Inc. Systems and methods of free-space gestural interaction
DE102013013698A1 (en) * 2013-08-16 2015-02-19 Audi Ag Method for operating electronic data glasses and electronic data glasses
US9687059B2 (en) * 2013-08-23 2017-06-27 Preemadonna Inc. Nail decorating apparatus
US11265444B2 (en) 2013-08-23 2022-03-01 Preemadonna Inc. Apparatus for applying coating to nails
US9721383B1 (en) 2013-08-29 2017-08-01 Leap Motion, Inc. Predictive information for free space gesture control and communication
JP2015061107A (en) * 2013-09-17 2015-03-30 株式会社リコー Distribution management device and distribution system
WO2015039215A1 (en) * 2013-09-17 2015-03-26 Invensense, Inc. Method and apparatus for determination of misalignment between device and pedestrian using vision
US9456148B1 (en) * 2013-09-18 2016-09-27 Amazon Technologies, Inc. Multi-setting preview for image capture
JP6427858B2 (en) * 2013-09-19 2018-11-28 セイコーエプソン株式会社 Display system, image display apparatus, and display system control method
US9632572B2 (en) 2013-10-03 2017-04-25 Leap Motion, Inc. Enhanced field of view to augment three-dimensional (3D) sensory space for free-space gesture interpretation
EP3063608B1 (en) 2013-10-30 2020-02-12 Apple Inc. Displaying relevant user interface objects
US9996638B1 (en) 2013-10-31 2018-06-12 Leap Motion, Inc. Predictive information for free space gesture control and communication
US10048762B2 (en) 2013-11-05 2018-08-14 Intuit Inc. Remote control of a desktop application via a mobile device
US9939925B2 (en) 2013-11-26 2018-04-10 Adobe Systems Incorporated Behind-display user interface
NL2011867C2 (en) 2013-11-29 2015-06-01 Jasper Vis Method and device for processing content for display.
FR3014228B1 (en) * 2013-12-04 2017-04-28 Renault Sas VIRTUAL DETECTION SYSTEM
JP2015115046A (en) * 2013-12-16 2015-06-22 ソニー株式会社 Information processing apparatus, program, information processing method, and information processing system
KR101548228B1 (en) * 2013-12-27 2015-08-28 주식회사 케이티 Apparatus for synchronizing user interface based on user state and method thereof
JP2015127897A (en) * 2013-12-27 2015-07-09 ソニー株式会社 Display control device, display control system, display control method, and program
KR102285915B1 (en) 2014-01-05 2021-08-03 마노모션 에이비 Real-time 3d gesture recognition and tracking system for mobile devices
US9507417B2 (en) 2014-01-07 2016-11-29 Aquifi, Inc. Systems and methods for implementing head tracking based graphical user interfaces (GUI) that incorporate gesture reactive interface objects
US9613262B2 (en) 2014-01-15 2017-04-04 Leap Motion, Inc. Object detection and tracking for providing a virtual device experience
KR20150087666A (en) * 2014-01-22 2015-07-30 삼성전자주식회사 Method and Apparatus for Providing Input Interface for Mobile Computing Device
US9619105B1 (en) 2014-01-30 2017-04-11 Aquifi, Inc. Systems and methods for gesture based interaction with viewpoint dependent user interfaces
US20150242179A1 (en) * 2014-02-21 2015-08-27 Smart Technologies Ulc Augmented peripheral content using mobile device
WO2015130748A1 (en) 2014-02-28 2015-09-03 Infomotion Sports Technologies, Inc. Data processing inside gaming device
GB201404134D0 (en) * 2014-03-10 2014-04-23 Bae Systems Plc Interactive information display
US20160371888A1 (en) * 2014-03-10 2016-12-22 Bae Systems Plc Interactive information display
US9649558B2 (en) * 2014-03-14 2017-05-16 Sony Interactive Entertainment Inc. Gaming device with rotatably placed cameras
US20150268917A1 (en) * 2014-03-20 2015-09-24 Nokia Technologies Oy Apparatus, method, and computer program product for aligning images viewed across multiple displays
KR20150117018A (en) * 2014-04-09 2015-10-19 삼성전자주식회사 Computing apparatus, method for controlling computing apparatus thereof, and multi-display system
US20150301606A1 (en) * 2014-04-18 2015-10-22 Valentin Andrei Techniques for improved wearable computing device gesture based interactions
US9690370B2 (en) 2014-05-05 2017-06-27 Immersion Corporation Systems and methods for viewport-based augmented reality haptic effects
KR20150130845A (en) * 2014-05-14 2015-11-24 삼성전자주식회사 Apparatus and Device for Position Measuring of Electronic Apparatuses
US10379614B2 (en) 2014-05-19 2019-08-13 Immersion Corporation Non-collocated haptic cues in immersive environments
US9740338B2 (en) 2014-05-22 2017-08-22 Ubi interactive inc. System and methods for providing a three-dimensional touch screen
US9575560B2 (en) 2014-06-03 2017-02-21 Google Inc. Radar-based gesture-recognition through a wearable device
US9304235B2 (en) 2014-07-30 2016-04-05 Microsoft Technology Licensing, Llc Microfabrication
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US9811164B2 (en) 2014-08-07 2017-11-07 Google Inc. Radar-based gesture sensing and data transmission
CN204480228U (en) 2014-08-08 2015-07-15 厉动公司 motion sensing and imaging device
US10268321B2 (en) * 2014-08-15 2019-04-23 Google Llc Interactive textiles within hard objects
US9778749B2 (en) 2014-08-22 2017-10-03 Google Inc. Occluded gesture recognition
US11169988B2 (en) 2014-08-22 2021-11-09 Google Llc Radar recognition-aided search
US9880799B1 (en) 2014-08-26 2018-01-30 Sprint Communications Company L.P. Extendable display screens of electronic devices
WO2016053311A1 (en) * 2014-09-30 2016-04-07 Hewlett Packard Enterprise Development Lp Artifact projection
US9600080B2 (en) 2014-10-02 2017-03-21 Google Inc. Non-line-of-sight radar-based gesture recognition
CN105573687B (en) * 2014-10-10 2019-10-15 鸿富锦精密工业(深圳)有限公司 Display control unit, electronic equipment and display control method
US10523993B2 (en) 2014-10-16 2019-12-31 Disney Enterprises, Inc. Displaying custom positioned overlays to a viewer
GB2531531A (en) * 2014-10-20 2016-04-27 Bae Systems Plc Optical inertial measurement apparatus and method
US11045116B1 (en) * 2017-09-15 2021-06-29 David Martin Enhanced determination of cadence for control in mobile
US11504029B1 (en) 2014-10-26 2022-11-22 David Martin Mobile control using gait cadence
US10342462B2 (en) * 2014-10-26 2019-07-09 David Martin Application of gait characteristics for mobile
TWI521387B (en) * 2014-12-25 2016-02-11 國立臺灣大學 A re-anchorable virtual panel in 3d space
US10762534B1 (en) * 2014-12-29 2020-09-01 Groupon, Inc. Motion data based consumer interfaces
JP5976145B2 (en) * 2015-02-05 2016-08-23 キヤノン株式会社 Imaging apparatus, control method and program thereof, and recording medium
US9827209B2 (en) 2015-02-09 2017-11-28 Microsoft Technology Licensing, Llc Display system
US11086216B2 (en) 2015-02-09 2021-08-10 Microsoft Technology Licensing, Llc Generating electronic components
US9429692B1 (en) 2015-02-09 2016-08-30 Microsoft Technology Licensing, Llc Optical components
US9423360B1 (en) 2015-02-09 2016-08-23 Microsoft Technology Licensing, Llc Optical components
US9513480B2 (en) 2015-02-09 2016-12-06 Microsoft Technology Licensing, Llc Waveguide
US9535253B2 (en) 2015-02-09 2017-01-03 Microsoft Technology Licensing, Llc Display system
US10018844B2 (en) 2015-02-09 2018-07-10 Microsoft Technology Licensing, Llc Wearable image display system
US9372347B1 (en) 2015-02-09 2016-06-21 Microsoft Technology Licensing, Llc Display system
US10317677B2 (en) 2015-02-09 2019-06-11 Microsoft Technology Licensing, Llc Display system
EP3289433A1 (en) 2015-04-30 2018-03-07 Google LLC Type-agnostic rf signal representations
KR102328589B1 (en) 2015-04-30 2021-11-17 구글 엘엘씨 Rf-based micro-motion tracking for gesture tracking and recognition
EP3289434A1 (en) 2015-04-30 2018-03-07 Google LLC Wide-field radar-based gesture recognition
US10088908B1 (en) 2015-05-27 2018-10-02 Google Llc Gesture detection and interactions
US9693592B2 (en) 2015-05-27 2017-07-04 Google Inc. Attaching electronic components to interactive textiles
US9870052B2 (en) 2015-06-11 2018-01-16 Oculus Vr, Llc Hand-held controller with pressure-sensing switch for virtual-reality systems
US9607428B2 (en) 2015-06-30 2017-03-28 Ariadne's Thread (Usa), Inc. Variable resolution virtual reality display system
KR101808759B1 (en) 2015-06-30 2017-12-13 인천대학교 산학협력단 Hand Gesture Interaction System and Method
US9658836B2 (en) 2015-07-02 2017-05-23 Microsoft Technology Licensing, Llc Automated generation of transformation chain compatible class
US9733915B2 (en) 2015-07-02 2017-08-15 Microsoft Technology Licensing, Llc Building of compound application chain applications
US10198252B2 (en) 2015-07-02 2019-02-05 Microsoft Technology Licensing, Llc Transformation chain application splitting
US9785484B2 (en) 2015-07-02 2017-10-10 Microsoft Technology Licensing, Llc Distributed application interfacing across different hardware
US10261985B2 (en) 2015-07-02 2019-04-16 Microsoft Technology Licensing, Llc Output rendering in dynamic redefining application
US9733993B2 (en) 2015-07-02 2017-08-15 Microsoft Technology Licensing, Llc Application sharing using endpoint interface entities
US9860145B2 (en) 2015-07-02 2018-01-02 Microsoft Technology Licensing, Llc Recording of inter-application data flow
US9712472B2 (en) 2015-07-02 2017-07-18 Microsoft Technology Licensing, Llc Application spawning responsive to communication
US10031724B2 (en) 2015-07-08 2018-07-24 Microsoft Technology Licensing, Llc Application operation responsive to object spatial status
US10198405B2 (en) 2015-07-08 2019-02-05 Microsoft Technology Licensing, Llc Rule-based layout of changing information
WO2017024142A1 (en) * 2015-08-04 2017-02-09 Google Inc. Input via context sensitive collisions of hands with objects in virtual reality
US9454010B1 (en) 2015-08-07 2016-09-27 Ariadne's Thread (Usa), Inc. Wide field-of-view head mounted display system
US9606362B2 (en) 2015-08-07 2017-03-28 Ariadne's Thread (Usa), Inc. Peripheral field-of-view illumination system for a head mounted display
US9990008B2 (en) 2015-08-07 2018-06-05 Ariadne's Thread (Usa), Inc. Modular multi-mode virtual reality headset
KR102433879B1 (en) * 2015-08-21 2022-08-18 삼성전자주식회사 Display apparatus and control method thereof
EP3342189B1 (en) 2015-08-24 2020-10-14 PCMS Holdings, Inc. Systems and methods for enhancing augmented reality experience with dynamic output mapping
US10277582B2 (en) 2015-08-27 2019-04-30 Microsoft Technology Licensing, Llc Application service architecture
US10572209B2 (en) 2015-09-16 2020-02-25 Nec Display Solutions, Ltd. Multi-display system
US10620803B2 (en) * 2015-09-29 2020-04-14 Microsoft Technology Licensing, Llc Selecting at least one graphical user interface item
US10817065B1 (en) 2015-10-06 2020-10-27 Google Llc Gesture recognition using multiple antenna
CN108139803B (en) 2015-10-08 2021-04-20 Pcms控股公司 Method and system for automatic calibration of dynamic display configuration
KR102402048B1 (en) * 2015-10-14 2022-05-26 삼성전자주식회사 Electronic apparatus and the controlling method thereof
US11609427B2 (en) 2015-10-16 2023-03-21 Ostendo Technologies, Inc. Dual-mode augmented/virtual reality (AR/VR) near-eye wearable displays
WO2017068926A1 (en) * 2015-10-21 2017-04-27 ソニー株式会社 Information processing device, control method therefor, and computer program
US10049493B1 (en) 2015-10-22 2018-08-14 Hoyt Architecture Lab, Inc System and methods for providing interaction with elements in a virtual architectural visualization
US11106273B2 (en) * 2015-10-30 2021-08-31 Ostendo Technologies, Inc. System and methods for on-body gestural interfaces and projection displays
US10007339B2 (en) * 2015-11-05 2018-06-26 Oculus Vr, Llc Controllers with asymmetric tracking patterns
US20170131775A1 (en) * 2015-11-10 2017-05-11 Castar, Inc. System and method of haptic feedback by referral of sensation
WO2017086508A1 (en) * 2015-11-19 2017-05-26 엘지전자 주식회사 Mobile terminal and control method therefor
US10061552B2 (en) * 2015-11-25 2018-08-28 International Business Machines Corporation Identifying the positioning in a multiple display grid
CN106817508B (en) * 2015-11-30 2019-11-22 华为技术有限公司 A kind of synchronization object determines methods, devices and systems
US10089681B2 (en) 2015-12-04 2018-10-02 Nimbus Visulization, Inc. Augmented reality commercial platform and method
US20170177077A1 (en) * 2015-12-09 2017-06-22 National Taiwan University Three-dimension interactive system and method for virtual reality
US10345594B2 (en) 2015-12-18 2019-07-09 Ostendo Technologies, Inc. Systems and methods for augmented near-eye wearable displays
US10578882B2 (en) 2015-12-28 2020-03-03 Ostendo Technologies, Inc. Non-telecentric emissive micro-pixel array light modulators and methods of fabrication thereof
US10976819B2 (en) * 2015-12-28 2021-04-13 Microsoft Technology Licensing, Llc Haptic feedback for non-touch surface interaction
US10565791B2 (en) 2015-12-29 2020-02-18 Microsoft Technology Licensing, Llc Tracking rigged polygon-mesh models of articulated objects
US20170185141A1 (en) * 2015-12-29 2017-06-29 Microsoft Technology Licensing, Llc Hand tracking for interaction feedback
US10186081B2 (en) 2015-12-29 2019-01-22 Microsoft Technology Licensing, Llc Tracking rigged smooth-surface models of articulated objects
KR102418003B1 (en) * 2016-01-04 2022-07-07 삼성전자주식회사 Display Content using a Plurality of Display Devices
US10021373B2 (en) 2016-01-11 2018-07-10 Microsoft Technology Licensing, Llc Distributing video among multiple display zones
US10459597B2 (en) * 2016-02-03 2019-10-29 Salesforce.Com, Inc. System and method to navigate 3D data on mobile and desktop
CN105824593B (en) * 2016-03-09 2018-11-13 京东方科技集团股份有限公司 Splice screen display system and splicing display method
US10115234B2 (en) 2016-03-21 2018-10-30 Accenture Global Solutions Limited Multiplatform based experience generation
US9459692B1 (en) * 2016-03-29 2016-10-04 Ariadne's Thread (Usa), Inc. Virtual reality headset with relative motion head tracker
US20170285813A1 (en) * 2016-03-29 2017-10-05 Microsoft Technology Licensing, Llc Touch-Input Support for an External Touch-Capable Display Device
US10353203B2 (en) 2016-04-05 2019-07-16 Ostendo Technologies, Inc. Augmented/virtual reality near-eye displays with edge imaging lens comprising a plurality of display devices
KR101671831B1 (en) * 2016-04-11 2016-11-03 김수민 Apparatus for sharing data and providing reward in accordance with shared data
US10453431B2 (en) 2016-04-28 2019-10-22 Ostendo Technologies, Inc. Integrated near-far light field display systems
WO2017192167A1 (en) 2016-05-03 2017-11-09 Google Llc Connecting an electronic component to an interactive textile
US10522106B2 (en) 2016-05-05 2019-12-31 Ostendo Technologies, Inc. Methods and apparatus for active transparency modulation
US10175781B2 (en) 2016-05-16 2019-01-08 Google Llc Interactive object with multiple electronics modules
US10285456B2 (en) 2016-05-16 2019-05-14 Google Llc Interactive fabric
US10168976B2 (en) * 2016-05-20 2019-01-01 International Business Machines Corporation Dynamic display arrangement
DK201670595A1 (en) 2016-06-11 2018-01-22 Apple Inc Configuring context-specific user interfaces
US11816325B2 (en) 2016-06-12 2023-11-14 Apple Inc. Application shortcuts for carplay
US20180126268A1 (en) * 2016-11-09 2018-05-10 Zynga Inc. Interactions between one or more mobile devices and a vr/ar headset
US10579150B2 (en) 2016-12-05 2020-03-03 Google Llc Concurrent detection of absolute distance and relative movement for sensing action gestures
US10564733B2 (en) 2017-04-21 2020-02-18 Htc Corporation Operating method of tracking system, controller, tracking system, and non-transitory computer readable storage medium
KR101957417B1 (en) * 2017-06-14 2019-03-12 (주)이더블유비엠 Motion recognition control system and method for separately displaying shot image
TWI637363B (en) * 2017-07-26 2018-10-01 銘傳大學 Augmented reality human–machine interaction system
US11093197B2 (en) * 2017-07-31 2021-08-17 Stmicroelectronics, Inc. System and method to increase display area utilizing a plurality of discrete displays
US10782793B2 (en) 2017-08-10 2020-09-22 Google Llc Context-sensitive hand interaction
WO2019040081A1 (en) * 2017-08-25 2019-02-28 Intel Corporation Configuring display screen coordinates
DE102017217025A1 (en) * 2017-09-26 2019-03-28 Audi Ag A method and system for making a virtual meeting between at least a first person and a second person
WO2019070886A1 (en) 2017-10-04 2019-04-11 Preemadonna Inc. Systems and methods of adaptive nail printing and collaborative beauty platform hosting
US10849532B1 (en) * 2017-12-08 2020-12-01 Arizona Board Of Regents On Behalf Of Arizona State University Computer-vision-based clinical assessment of upper extremity function
EP3502837B1 (en) * 2017-12-21 2021-08-11 Nokia Technologies Oy Apparatus, method and computer program for controlling scrolling of content
CN107976811B (en) * 2017-12-25 2023-12-29 河南诺控信息技术有限公司 Virtual reality mixing-based method simulation laboratory simulation method of simulation method
US10497179B2 (en) 2018-02-23 2019-12-03 Hong Kong Applied Science and Technology Research Institute Company Limited Apparatus and method for performing real object detection and control using a virtual reality head mounted display system
KR102524586B1 (en) * 2018-04-30 2023-04-21 삼성전자주식회사 Image display device and operating method for the same
US11875012B2 (en) 2018-05-25 2024-01-16 Ultrahaptics IP Two Limited Throwable interface for augmented reality and virtual reality environments
CN110830704B (en) * 2018-08-07 2021-10-22 纳宝株式会社 Method and device for generating rotating image
CN110796116A (en) * 2018-11-08 2020-02-14 英属开曼群岛商麦迪创科技股份有限公司 Multi-panel display system, vehicle with multi-panel display system and display method
EP3888352A2 (en) 2018-11-30 2021-10-06 PCMS Holdings, Inc. Method for mirroring 3d objects to light field displays
CN109739358B (en) * 2019-01-03 2022-05-24 京东方科技集团股份有限公司 Gesture collision detection method and device based on naked eye 3D
US10867402B2 (en) 2019-03-01 2020-12-15 Here Global B.V. System and method for determining distance to object on road
US11675476B2 (en) 2019-05-05 2023-06-13 Apple Inc. User interfaces for widgets
US11087489B2 (en) * 2019-06-03 2021-08-10 Disney Enterprises, Inc. Systems and methods to facilitate interaction by one or more participants with content presented across multiple distinct physical locations
US11341569B2 (en) * 2019-10-25 2022-05-24 7-Eleven, Inc. System and method for populating a virtual shopping cart based on video of a customer's shopping session at a physical store
KR20210069491A (en) 2019-12-03 2021-06-11 삼성전자주식회사 Electronic apparatus and Method for controlling the display apparatus thereof
US11090873B1 (en) * 2020-02-02 2021-08-17 Robert Edwin Douglas Optimizing analysis of a 3D printed object through integration of geo-registered virtual objects
US11120639B1 (en) 2020-04-24 2021-09-14 Microsoft Technology Licensing, Llc Projecting telemetry data to visualization models
KR20210137340A (en) * 2020-05-08 2021-11-17 삼성디스플레이 주식회사 Display device
US11594192B2 (en) * 2020-05-21 2023-02-28 Dell Products, L.P. Generating multi-monitor recommendations
US11340707B2 (en) * 2020-05-29 2022-05-24 Microsoft Technology Licensing, Llc Hand gesture-based emojis
CN112083871A (en) * 2020-09-11 2020-12-15 北京字节跳动网络技术有限公司 Method, device, terminal and storage medium for controlling electronic equipment
WO2022074791A1 (en) * 2020-10-08 2022-04-14 マクセル株式会社 Three-dimensional augmented reality processing system, three-dimensional augmented reality processing method, and user interface device for three-dimensional augmented reality processing system
CN112399148B (en) * 2020-11-11 2023-05-23 郑州捷安高科股份有限公司 Virtual monitoring method and device based on virtual three-dimensional scene
CN112354179B (en) * 2020-11-23 2023-09-05 浙江中控信息产业股份有限公司 Three-dimensional geographic information content display and interaction method
JP7287379B2 (en) * 2020-12-10 2023-06-06 セイコーエプソン株式会社 DISPLAY METHOD, DETECTION DEVICE, AND PROGRAM
US11550404B2 (en) * 2021-05-14 2023-01-10 Microsoft Technology Licensing, Llc Tilt-responsive techniques for sharing content
US11451709B1 (en) 2021-11-29 2022-09-20 Unity Technologies Sf Increasing dynamic range of a virtual production display
US20230021589A1 (en) * 2022-09-30 2023-01-26 Intel Corporation Determining external display orientation using ultrasound time of flight

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060221072A1 (en) * 2005-02-11 2006-10-05 Se Shuen Y S 3D imaging system
US20090309765A1 (en) 2008-06-11 2009-12-17 Nokia Corporation Camera Gestures for User Interface Control
US20100017128A1 (en) * 2007-06-05 2010-01-21 Gm Global Technology Operations, Inc. Radar, Lidar and camera enhanced methods for vehicle dynamics estimation
US20100045667A1 (en) 2008-08-22 2010-02-25 Google Inc. Navigation In a Three Dimensional Environment Using An Orientation Of A Mobile Device
US20110315321A1 (en) * 2009-02-20 2011-12-29 Panasonic Corporation Resin application apparatus and data creation apparatus for resin application

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06508222A (en) * 1991-05-23 1994-09-14 アタリ ゲームズ コーポレーション modular display simulator
US5764871A (en) * 1993-10-21 1998-06-09 Eastman Kodak Company Method and apparatus for constructing intermediate images for a depth image from stereo images using velocity vector fields
US5956046A (en) * 1997-12-17 1999-09-21 Sun Microsystems, Inc. Scene synchronization of multiple computer displays
US6222465B1 (en) * 1998-12-09 2001-04-24 Lucent Technologies Inc. Gesture-based computer interface
JP2001091218A (en) 1999-09-14 2001-04-06 Mitsubishi Electric Inf Technol Center America Inc Device and method for detecting three-dimensional movement
US7091926B2 (en) * 2002-02-08 2006-08-15 Kulas Charles J Computer display system using multiple screens
JP3880561B2 (en) * 2002-09-05 2007-02-14 株式会社ソニー・コンピュータエンタテインメント Display system
WO2005065180A2 (en) * 2003-12-19 2005-07-21 Speechgear, Inc. Display of visual data as a function of position of display device
IL161002A0 (en) * 2004-03-22 2004-08-31 Itay Katz Virtual video keyboard system
US20060020562A1 (en) * 2004-07-21 2006-01-26 University Of Southern Mississippi Apparatus and method for estimating optical flow
EP1849123A2 (en) 2005-01-07 2007-10-31 GestureTek, Inc. Optical flow based tilt sensor
JP2006208566A (en) 2005-01-26 2006-08-10 Nec Corp Liquid crystal display apparatus, mobile communication terminal device and liquid crystal display method
KR101229283B1 (en) 2005-09-15 2013-02-15 올레그 스탄니슬라보비치 루린 Method and system for visualising virtual three-dimensional objects
US20070091037A1 (en) * 2005-10-21 2007-04-26 Yee-Chun Lee Energy Efficient Compact Display For Mobile Device
KR100722229B1 (en) * 2005-12-02 2007-05-29 한국전자통신연구원 Apparatus and method for immediately creating and controlling virtual reality interaction human model for user centric interface
KR20090011316A (en) 2007-07-25 2009-02-02 중앙대학교 산학협력단 Active display apparatus for stereoscopic and an operation method thereof
DE602007012270D1 (en) * 2007-11-16 2011-03-10 Honda Res Inst Europe Gmbh Method and apparatus for continuous object-background segmentation in images from dynamic visual scenes
US20090219224A1 (en) * 2008-02-28 2009-09-03 Johannes Elg Head tracking for enhanced 3d experience using face detection
US20100053151A1 (en) * 2008-09-02 2010-03-04 Samsung Electronics Co., Ltd In-line mediation for manipulating three-dimensional content on a display device
US20100058205A1 (en) * 2008-09-04 2010-03-04 Motorola, Inc. Reconfigurable multiple-screen display
US8803816B2 (en) * 2008-09-08 2014-08-12 Qualcomm Incorporated Multi-fold mobile device with configurable interface

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060221072A1 (en) * 2005-02-11 2006-10-05 Se Shuen Y S 3D imaging system
US8031933B2 (en) * 2005-02-11 2011-10-04 Macdonald Dettwiler & Associates Inc. Method and apparatus for producing an enhanced 3D model of an environment or an object
US8031909B2 (en) * 2005-02-11 2011-10-04 Macdonald Dettwiler And Associates Inc. Method and apparatus for producing 3D model of an underground environment
US20100017128A1 (en) * 2007-06-05 2010-01-21 Gm Global Technology Operations, Inc. Radar, Lidar and camera enhanced methods for vehicle dynamics estimation
US20090309765A1 (en) 2008-06-11 2009-12-17 Nokia Corporation Camera Gestures for User Interface Control
US20100045667A1 (en) 2008-08-22 2010-02-25 Google Inc. Navigation In a Three Dimensional Environment Using An Orientation Of A Mobile Device
US20110315321A1 (en) * 2009-02-20 2011-12-29 Panasonic Corporation Resin application apparatus and data creation apparatus for resin application

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Toshiharu Mukai and Noboru Ohnishi; "Object shape and camera motion recovery using sensor fusion of a video camera and a gyro sensor"; Information Fusion I; 2000, pp. 45-53.

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8744169B2 (en) * 2011-05-31 2014-06-03 Toyota Motor Europe Nv/Sa Voting strategy for visual ego-motion from stereo
US20120308114A1 (en) * 2011-05-31 2012-12-06 Gabriel Othmezouri Voting strategy for visual ego-motion from stereo
US20130050076A1 (en) * 2011-08-22 2013-02-28 Research & Business Foundation Sungkyunkwan University Method of recognizing a control command based on finger motion and mobile device using the same
US9716859B2 (en) 2011-09-02 2017-07-25 Skype Mobile video calls
US10237529B2 (en) 2013-10-03 2019-03-19 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10437322B2 (en) 2013-10-03 2019-10-08 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US20150097860A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9536353B2 (en) * 2013-10-03 2017-01-03 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9547173B2 (en) * 2013-10-03 2017-01-17 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9599819B2 (en) * 2013-10-03 2017-03-21 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9630631B2 (en) 2013-10-03 2017-04-25 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9715764B2 (en) * 2013-10-03 2017-07-25 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US20150097861A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US9975559B2 (en) 2013-10-03 2018-05-22 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US20150097864A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10850744B2 (en) 2013-10-03 2020-12-01 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10261576B2 (en) 2013-10-03 2019-04-16 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US20150097863A1 (en) * 2013-10-03 2015-04-09 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10453260B2 (en) 2013-10-03 2019-10-22 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10817048B2 (en) 2013-10-03 2020-10-27 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10635164B2 (en) 2013-10-03 2020-04-28 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10638107B2 (en) 2013-10-03 2020-04-28 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10638106B2 (en) 2013-10-03 2020-04-28 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10819966B2 (en) 2013-10-03 2020-10-27 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10754421B2 (en) 2013-10-03 2020-08-25 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10764554B2 (en) 2013-10-03 2020-09-01 Honda Motor Co., Ltd. System and method for dynamic in-vehicle virtual reality
US10718603B2 (en) 2016-10-13 2020-07-21 Six Degrees Space Ltd Method and apparatus for indoor positioning
US11307021B2 (en) 2016-10-13 2022-04-19 Six Degrees Space Ltd Method and apparatus for indoor positioning
US10569172B2 (en) 2017-09-19 2020-02-25 Canon Kabushiki Kaisha System and method of configuring a virtual camera
WO2019056041A1 (en) * 2017-09-19 2019-03-28 Canon Kabushiki Kaisha System and method of controlling a virtual camera
US10849179B1 (en) 2019-05-29 2020-11-24 Bank Of America Corporation Mobile network tool

Also Published As

Publication number Publication date
US20100053324A1 (en) 2010-03-04
US20100053322A1 (en) 2010-03-04
US20100053164A1 (en) 2010-03-04
US20100134618A1 (en) 2010-06-03
US8253795B2 (en) 2012-08-28
KR20100027976A (en) 2010-03-11
WO2010027193A2 (en) 2010-03-11
US8456524B2 (en) 2013-06-04
WO2010027193A3 (en) 2012-06-21
US20100053151A1 (en) 2010-03-04
US8253649B2 (en) 2012-08-28
KR20110082636A (en) 2011-07-20
KR101637990B1 (en) 2016-07-11

Similar Documents

Publication Publication Date Title
US8310537B2 (en) Detecting ego-motion on a mobile device displaying three-dimensional content
US9507431B2 (en) Viewing images with tilt-control on a hand-held device
US9696859B1 (en) Detecting tap-based user input on a mobile device based on motion sensor data
US9417689B1 (en) Robust device motion detection
US8854433B1 (en) Method and system enabling natural user interface gestures with an electronic system
US10852847B2 (en) Controller tracking for multiple degrees of freedom
US10037614B2 (en) Minimizing variations in camera height to estimate distance to objects
TWI544447B (en) System and method for augmented reality
CN108469899B (en) Method of identifying an aiming point or area in a viewing space of a wearable display device
EP2354893B1 (en) Reducing inertial-based motion estimation drift of a game input controller with an image-based motion estimation
US9303982B1 (en) Determining object depth information using image data
US20120054690A1 (en) Apparatus and method for displaying three-dimensional (3d) object
US9411412B1 (en) Controlling a computing device based on user movement about various angular ranges
EP2893422A1 (en) Absolute and relative positioning sensor fusion in an interactive display system
US20120275755A1 (en) Entertainment device and method
US20120268493A1 (en) Information processing system for augmented reality
US10019140B1 (en) One-handed zoom
KR101338958B1 (en) system and method for moving virtual object tridimentionally in multi touchable terminal
López et al. Head-tracking virtual 3-D display for mobile devices
CN114201028B (en) Augmented reality system and method for anchoring display virtual object thereof
Lee et al. Orientation estimation in mobile virtual environments with inertial sensors
López et al. Multimodal sensing-based camera applications
TWI779332B (en) Augmented reality system and display method for anchor virtual object thereof
Lópeza et al. Multimodal sensing-based camera applications
Marti et al. Position dependent rendering of 3D content on mobile phones using gravity and imaging sensors

Legal Events

Date Code Title Description
AS Assignment

Owner name: SAMSUNG ELECTRONICS CO., LTD,KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MARTI, STEFAN;KIM, SEUNG WOOK;CHAE, HAN JOO;REEL/FRAME:023442/0754

Effective date: 20091022

Owner name: SAMSUNG ELECTRONICS CO., LTD, KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MARTI, STEFAN;KIM, SEUNG WOOK;CHAE, HAN JOO;REEL/FRAME:023442/0754

Effective date: 20091022

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20161113