WO2006105686A1 - Method of executing an application in a mobile device - Google Patents

Method of executing an application in a mobile device Download PDF

Info

Publication number
WO2006105686A1
WO2006105686A1 PCT/CH2006/000196 CH2006000196W WO2006105686A1 WO 2006105686 A1 WO2006105686 A1 WO 2006105686A1 CH 2006000196 W CH2006000196 W CH 2006000196W WO 2006105686 A1 WO2006105686 A1 WO 2006105686A1
Authority
WO
WIPO (PCT)
Prior art keywords
mobile device
visual
orientation
background
application
Prior art date
Application number
PCT/CH2006/000196
Other languages
French (fr)
Inventor
Jean-Daniel Merkli
Michael Rohs
Original Assignee
Eidgenössische Technische Hochschule Zürich
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 Eidgenössische Technische Hochschule Zürich filed Critical Eidgenössische Technische Hochschule Zürich
Priority to US11/910,921 priority Critical patent/US8226011B2/en
Priority to CN2006800198730A priority patent/CN101189049B/en
Priority to EP06721898A priority patent/EP1866043A1/en
Publication of WO2006105686A1 publication Critical patent/WO2006105686A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/215Input arrangements for video game devices characterised by their sensors, purposes or types comprising means for detecting acoustic signals, e.g. using a microphone
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/216Input arrangements for video game devices characterised by their sensors, purposes or types using geographical information, e.g. location of the game device or player using GPS
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • A63F13/235Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console using a wireless connection, e.g. infrared or piconet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/332Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using wireless networks, e.g. cellular phone networks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • A63F13/655Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/812Ball games, e.g. soccer or baseball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1025Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection
    • A63F2300/1031Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection using a wireless connection, e.g. Bluetooth, infrared connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1037Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1081Input via voice recognition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/205Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform for detecting the geographical location of the game platform
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/406Transmission via wireless network, e.g. pager or GSM
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5573Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history player location
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/69Involving elements of the real world in the game world, e.g. measurement in live races, real video
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/69Involving elements of the real world in the game world, e.g. measurement in live races, real video
    • A63F2300/695Imported photos, e.g. of the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8011Ball

Definitions

  • the present invention relates to a method of executing an application in a mobile device. Specifically, the present invention relates to a method of executing an application in a mobile device comprising a camera, to a mobile device comprising a camera for capturing a visual background external to the mobile device, and to a computer program product controlling the mobile device.
  • Mobile devices with built-in cameras have become more popular as inexpensive image sensors, e.g. based on CMOS technology, became available.
  • mobile radio telephones cell phones
  • PDA computers personal digital assistant
  • images and videos captured through these cameras are stored locally in the mobile devices, off-loaded via device interfaces to personal computers, and/or transferred via mobile radio networks to servers or other mobile devices.
  • Typical applications of mobile communication devices with built-in cameras include video telephony and visual supervision and monitoring of remote objects.
  • the known applications of mobile devices having built-in cameras are limited to capturing, transferring, storing and/or displaying image (pictorial) data. If there is any further processing of captured image data in the mobile devices, it is limited to extracting information contained in the image data, e.g. a printed article number or a street name.
  • a visual background external to the mobile device is captured by the camera of the mobile device, a selected application is associated with the visual background, the selected application is executed in the mobile device, determined are orientation parameters indicative of an orientation of the mobile device relative to the visual background, and application-specific output signals are generated in the mobile device based at least on the orientation parameters.
  • generated are visual output signals, acoustic output signals and/or tactile output signals.
  • applications of the mobile device are not limited to capturing, storing, transferring and/or displaying the visual background, but the mobile device is used to generate output signals depending on its orientation relative to the visual background.
  • the mobile device provides the orientation parameters as input data to an application running in the mobile device.
  • determining the orientation parameters includes determining changes in the orientation of the mobile device relative to the visual background.
  • the output signals are generated based on orientation parameters indicative of said changes in the orientation of the mobile device.
  • enabled are interactive applications controlled by changing the orientation of the mobile device relative to the visual background.
  • the mobile device determines a selected application associated with the visual background. Consequently, the present invention makes it possible to execute interactive games (i.e. interactive game applications) in the mobile devices, wherein game related output signals are generated dynamically based on (current) orientation parameters.
  • defined states of the application e.g. states of the interactive game, are defined based on the orientation parameters.
  • generating the output signals includes displaying on the mobile device the visual background overlaid with visual objects based on the orientation parameters. Displaying the captured visual background with overlaid visual objects, selected and/or positioned dependent on the relative orientation of the mobile device, make possible interactive augmented reality applications, e.g. interactive augmented reality games, controlled by the orientation of the mobile device relative to the visual background.
  • interactive augmented reality applications e.g. interactive augmented reality games
  • the visual objects overlaid on the visual background are animated based on the orientation parameters.
  • Animating the overlaid visual objects, depending on the orientation of the mobile device relative to the visual background makes possible interactive augmented reality animations, e.g. animated interactive games.
  • defined visual features in the visual background are detected from background image data representative of the visual background captured through the camera.
  • the defined visual features include at least one two-dimensional visual code having a built-in orientation- independent coordinate system.
  • determining the orientation parameters is based on the defined visual features detected, e.g. the two- dimensional visual code.
  • associating the selected application with the visual background is based on the defined visual features detected, particularly e.g. the two-dimensional visual code.
  • the selected application is stored in the mobile device or it is loaded into the mobile device via a communication link.
  • the application is a multi-user game and the selected application communicates the states of the game via a communication link to at least one other mobile device.
  • execution of functions of the selected application is triggered based on the orientation parameters.
  • other applications are triggered based on the orientation parameters.
  • the selected application includes descriptive language statements.
  • executing the selected application includes interpreting the descriptive language statements by an execution engine in the mobile device.
  • the output signals are generated by the execution engine as determined by the descriptive language statements.
  • the present invention also relates to a computer program product including computer program code means for controlling one or more processors of the mobile device, particularly, a computer program product including a computer readable medium containing therein the computer program code means.
  • Figure 1 shows a block diagram illustrating schematically an exemplary configuration of a mobile device comprising a camera for capturing a visual background.
  • Figure 2 shows a block diagram illustrating schematically two mobile devices connected through a telecommunications network.
  • Figure 3 shows a flow diagram illustrating an example of a sequence of steps executed according to the present invention for executing an application in a mobile device comprising a camera.
  • Figure 4 shows an example of a visual background having defined visual features.
  • Figure 5 shows an example of a visual background having defined visual features in the form of a two-dimensional visual code.
  • Figure 6 shows an example of a display of a captured visual background overlaid with visual objects.
  • Figure 7 shows another example of the display of the captured visual background having the overlaid visual objects repositioned.
  • reference numeral 2 refers to a two- or three-dimensional visual background.
  • the visual background 2 is printed on a surface, projected with a beamer, or electronically displayed, e.g. on a computer monitor or television screen (LCD, plasma, CRT, etc).
  • the visual background 2 is static, e.g. a comic strip printed in a newspaper, or dynamically changing, for example depending on time or on a current state of a game, e.g. an electronic large- scale public display or a movie theatre screen.
  • electronic or projected background media may change over time - either continuously or replacing the presented content as a whole.
  • a typical background medium is a product package, such as a box of cereals, that has an area on its back side containing a drawing or photography.
  • printed media include newspapers, magazines, tickets, posters, flyers, comic books, cartoons, CD covers, and lottery coupons.
  • printed media comprise paper, plastic, or any other substrate that can be painted on.
  • projected background media are beamer-generated images on large screens or floor projections in public locations.
  • Electronic displays can also be used as background media.
  • the background medium can be a single medium, like a product package, composed of multiple media, or any real-world scene.
  • the visual background 2 facilitates orientation detection by including defined visual features, i.e. machine-readable markers and visual markers that can be detected via image processing techniques, as will be explained later in more detail.
  • the visual features also make possible identification of the visual background 2 and/or applications, e.g. games, associated with the visual background 2.
  • other machine-detectable features on the background medium e.g. RFID tags, are used to automatically identify the application and to compute the spatial orientation of the camera 14 relative to the visual background 2.
  • reference numeral 1 refers to a mobile device, e.g. a mobile radio phone (cellular phone), a PDA, a wrist watch, a tablet PC or the like.
  • the mobile device 1 includes at least one processor as well as data and program storage media 17, e.g. a removable hard disk, flash memory disks (Compact Flash, Memory Stick, etc), optical storage media (CD, DVD, diskettes, etc) as well as internal memory (RAM, ROM, hard disk).
  • the mobile device 1 includes a camera 14 integrated or removably attached to the mobile device 1.
  • the mobile device 1 includes various output devices such as a vibrator for tactile output, an internal or external loudspeaker 19 for acoustic output, and/or a display 10 for visual output, e.g. an LCD, LED or OLED display, optionally provided with touch screen capabilities.
  • the mobile device 1 includes various input devices e.g. an internal or external keyboard 16a, a joystick 16b, a touch screen, an internal or external microphone 18, and/or a pen/stylus.
  • the mobile device 1 also includes a communication module 15, e.g.
  • the mobile device 1 also includes an orientation detector 11 configured to determine the orientation of the mobile device relative to the visual background 2.
  • the orientation detector 11 is a programmed software module comprising image processing functions configured to determine orientation parameters indicative of an orientation of the mobile device 1 relative to the visual background based on defined visual features of the visual background 2, as will be explained later in more detail.
  • the orientation detector 11 is implemented independently from camera 14 and does not rely on any visual features.
  • Such an alternative orientation detector 11 includes a 6-D tracker, a distance sensor, an accelerometer, a gyroscope, a compass, a separate camera, ball switches, and/or other components.
  • camera-independent orientation detectors require typically other techniques to achieve precise alignment ("registration") of the camera image with items in the visual background 2.
  • the spatial orientation of the mobile device 1 relative to the visual background 2 is given either as a full 6-D orientation in space (3-D position plus pitch, roll, and yaw) or as a number of individual parameters such as target point, distance, rotation, and tilting of the camera relative to the visual feature.
  • the mobile device 1 comprises further functional modules including a control module 12, at least one application (module) 13, an output generator 131 , an execution engine 132, and an image processing module 133.
  • These functional modules are preferably programmed software modules described later in more detail with reference to Figure 3.
  • the execution engine 132 may be preinstalled on the mobile device 1 , stored on a separate storage medium, or dynamically downloaded via a communication network 3.
  • the execution engine 132 may be a self-contained application or a generic interpreter of a description language for interactive augmented reality games and animations.
  • the output generator 131 may be part of the application (module) 13, part of the executing engine 132, or a separate module.
  • orientation detector 11 and/or the above-mentioned functional modules can also be implemented fully or partly by means of hardware (e.g. using special purpose orientation detector hardware, and/or a programmed digital signal processor, DSP, or field programmable gate array, FPGA, or the like).
  • step S1 the mobile device 1 or the camera
  • capturing and processing of the visual background 2 is initiated by the user, for example, using the mobile device's 1 input devices, e.g. by pressing a key or a button.
  • step S2 responsive to the initiation in step S1 , the control module 12 activates the camera 14 to capture a live (stream) or still image of the visual background 2.
  • step S3 the control module 12 makes the image processing module 133 detect in the captured visual background 2, i.e. in the corresponding background image data, defined features for identifying the visual background 2, e.g. defined visual features such as a bar code, written information, or a visual code 22, or the control module 12 determines other machine-detectable features such as an RFID tag.
  • step S4 the control module 12 determines an identification of the captured visual background 2 from the defined features detected in step S3.
  • control module determines a selected application (module) 13 associated with the visual background 2.
  • step S5 if the selected application (module) 22 is not stored in the mobile device 1 , using the communication module 15, the control module 12 loads the selected application (module) 13 via a communication network 3 from an application server 4, as illustrated in Figure 2.
  • the application server 4 is connected to an application database 41 , storing different applications, e.g. games, for different visual backgrounds 2.
  • the communication network 3 includes a device interface such as Bluetooth, ZigBee or Infrared (IrDA), or a telecommunications networks such as GSM 1 UMTS, or a WLAN.
  • step S6 the control module 12 initiates execution of the selected application (module) 13 in the mobile device 1.
  • the selected application (module) 13 is an executable application running on a processor of the mobile device 1 , or the selected application (module) 13 includes a description composed of descriptive language statements that are interpreted by the execution engine 132. The description, is based on a formal machine-readable language (in compiled or source form) that allows for defining certain aspects of the mobile device's behavior, such as graphical output, audio output, tactile output, controlling applications on the mobile device 1 , and sending data over the communication network 3.
  • the formal language allows for describing the mobile device's reaction to user input, particularly based on the mobile device's orientation relative to the visual background 2, but also on keyboard, touch-screen, and voice input.
  • the language describes how the captured camera image is to be interpreted in order to trigger functions on the mobile device 1.
  • the description language also allows for specifying the timed execution of operations, such as animations on the display 10.
  • the description language is designed to easily describe interactive augmented reality games and animations on a high level and in a compact way.
  • graphical overlays such as text; images of 2-D or 3- D objects; audio output; tactile output; the flow of animations in time; the use of device capabilities, such as sending data over the network or starting applications; rules for reacting to user input, such as orientation changes of the mobile device 1 ; rules for reacting to sensor input, such as the camera image; and rules for encoding the game and animation logic.
  • the description is interpreted by the execution engine 132, which executes operations on the mobile device 1 accordingly and holds the current state of execution of the application, e.g. a state of a game.
  • the orientation detector 11 determines the orientation of the mobile device 1 relative to the visual background 2.
  • the orientation detector 11 uses a 6-D tracker to determine the spatial orientation of the mobile device 1 as a full 3-D position in space plus a 3-D orientation, e.g. given as pitch, roll, and yaw.
  • the control module 12 makes the image processing module 133 detect in the captured visual background 2, i.e. in the corresponding background image data, defined features for determining the relative orientation of the mobile device 1 , e.g. defined visual features such as defined visual markers 21 , as illustrated in Figure 4, a visual code 22, as illustrated in Figure 5, or other visual features, e.g. four identical colored hats worn by people in a background crowd.
  • the orientation detector 11 determines the orientation parameters indicating the current orientation of the mobile device 1 relative to the visual background 2.
  • the orientation parameters include the targeted point on the visual background 2 medium, the rotation, the horizontal and vertical tilting, the distance, and the relative movement, as will be explained in more detail below.
  • these parameters are retrieved from a 2-D barcode, as described in Michael Rohs, "Real-World Interaction with Camera Phones", 2nd International Symposium on Ubiquitous Computing Systems (UCS 2004), Tokyo, Japan, Revised Selected Papers, Springer LNCS 3598, pages 74-89, July 2005.
  • the visual features include a two- dimensional visual code 22 having a built-in orientation-independent coordinate system, as described in US 2005/0242189.
  • a two- dimensional visual code 22 having a built-in orientation-independent coordinate system, as described in US 2005/0242189.
  • several visual codes are placed across the game board represented by the visual background 2, so that at least one is always visible.
  • An essential feature of the visual code system is the mapping of points in the image plane to corresponding points in the visual code plane, and vice versa. With the help of this mapping, the pixel coordinates of the camera focus, which is the point the user aims at and which is indicated by a crosshair during view finder mode, for example, can be mapped to corresponding code coordinates.
  • the camera provides a continuous stream of images at a size of 160x120 pixels.
  • Each visual code 22 defines its own local coordinate system that has its origin at the upper left edge of the code and that is independent of the orientation of the code in the image. Areas that are defined with respect to the code coordinate system are thus invariant to projective distortion.
  • the orientation parameters include the rotation of the visual code 22 in the captured image in degrees counterclockwise in the range of 0° to 359°.
  • the orientation detector 11 also determines the tilting value between the image plane and the code plane. Horizontal tilting is defined as the angle between the x axis of the code coordinate system and the image plane. Analogously, vertical tilting denotes the angle between the y axis and the image plane.
  • a tilting value of 1 indicates that the axis and the image plane are parallel.
  • a tilting value less than 1 means tilting to the left/top, a value greater than 1 denotes tilting to the right/bottom.
  • the (reading) distance between the visual code 22 and the camera 14 is defined in such a way that the value 100 is assigned to the distance at which the visual code 22 is just recognizable in the view finder mode. Defining the distance in terms of the size of the visual code in the image, instead of using the actual metric distance, keeps this parameter independent of camera's optical characteristics. It is still adequate for the interaction required in the present context.
  • the orientation detector 11 combines the recognition algorithm with a visual movement detection algorithm that solely relies on image data provided by the camera 14.
  • the movement detection provides (x, y, ⁇ ) triplets for relative linear and relative rotational movement.
  • the movement detection does not rely on the presence of a visual code 22 in the image. All of the described parameters can be computed without knowing the optical characteristics of the camera 14 used, like the focal distance, for example. If these parameters are known, the tilting angles and the metric distance can be computed.
  • the orientation parameters can be computed without the use of the particular visual code 22 described above. The orientation parameters can even be computed without any visual code system in the narrower sense. In a variant, the orientation parameters are computed from the unaided visual appearance of the background, with the help of suitable computer vision techniques that automatically detect local interest points in the background.
  • an orientation-independent coordinate system can be computed using a planar homography.
  • the visual background 2 needs to have four recognizable areas in the image that can be located by the image processing module 133.
  • the known points can also be located from the corners of a rectangle that is visible in the visual background 2.
  • the visual features to facilitate orientation detection may also be realized using a watermarking technique or invisible ink to make the orientation detection less obtrusive.
  • a pattern of small dots can also be used to compute the location on the background medium. This technique is implemented by Anoto® Pens.
  • step S8 output generator 131 generates application-specific output signals based at least on the orientation parameters determined in step S7.
  • the output signals are dependent on the orientation parameters as specified by the application (module) 13.
  • the selected application (module 13) initiates functions of the output generator 131 , integrated in or separate from the selected application (module 13), or the execution engine 132 initiates functions of the output generator 131 , integrated in or separate from the execution engine 132, as specified by the application's descriptive language statements interpreted by the execution engine 132.
  • the output generator 131 generates visual signals (step S81), acoustic signals (step S82) and/or tactile signals (step S83) depending on the orientation parameters determined in step S7.
  • step S81 To generate visual signals, output generator 131 uses display 10.
  • step S82 To generate acoustic signals, output generator 131 uses loudspeaker 19.
  • step S83 To generate tactile signals, output generator 131 uses a vibrator. The output generator 131 generates visual output, tactile output, acoustic output, or data output stored on the mobile device 1 or transmitted via the communication network 3.
  • step S811 output generator 131 selects visual objects depending on the orientation parameters determined in step S7 as specified by the application (module) 13.
  • the dynamically changing application-specific, e.g. game-related, visual objects that serve as graphical overlays over the live camera image shown on display 10 include images, icons, text, 2-D drawings, virtual 3-D objects, and GUI widgets, for example.
  • the 2-D or 3-D overlays are based on graphic libraries (e.g. OpenGL).
  • step S812 output generator 131 displays the visual background 2 captured by the camera 14 and overlaid with the visual objects selected in step S811.
  • the visual features e.g. the visual code 22
  • playing pieces and other game components are virtually placed at the correct position and with the correct perspective distortion on the display 10 of the mobile device 1 as an overlay over the live camera image (stream) of the visual background 2.
  • the display 10 shows the camera image (stream) of the focused part of the visual background 2 as well as virtual graphical or textual overlaid over the camera image.
  • the virtual graphical output is not only static, but can also be animated dynamically.
  • the animations can be controlled by user input; particularly, animations can be controlled based on the orientation parameters.
  • Figure 6 depicts an example of display 10 showing an image of the visual background 2 captured by the camera 14 at a certain orientation.
  • the output generator 131 selected and overlaid two visual objects, namely a ball 24, placed on a penalty point, and a goal keeper 23, centered in the goal 20. These visual objects are selected and placed based on the orientation parameters and the selected application (module) 13 or the respective current state of the application, respectively.
  • Figure 6 represents an application of a penalty Shootout game at an initial state of the game.
  • step S9 based on the orientation parameters and/or other user input, such as pressing a button or uttering a command word, the control module 12 triggers execution of functions of the selected application (module) 13 and/or sets states of the application (module) 13.
  • a function is, for example, the actual shooting (kicking) of the bail 24 after the user has directed the ball 24 by changing the orientation of the mobile device 1.
  • an other function repositions the goal keeper 23 responsive to the shooting of the ball 24.
  • the visual objects overlaid on the visual background 2 are animated by the output generator 131 , depending on the orientation of the mobile device 1 relative to the visual background, as determined by the selected application (module) 13 or the current state of the application, respectively.
  • another application function transfer states of the application via the communication network 3 to application server 4 and/or to another mobile device 1', as shown in Figure 2.
  • Figure 7 depicts a further example of display 10 showing the image of the visual background 2 captured by the camera 14 at a later point in time at an orientation different from Figure 6.
  • Figure 7 represents the penalty Shootout game at an advanced state of the game, after the user had adjusted the orientation of the mobile device 1 to aim the ball 24 at the left upper corner of the goal 20 and had triggered a shot of the ball 24 in that direction by means of a sudden forward move of the mobile devicel, a click of button, or uttering a command word, for example.
  • step S10 the control module 12 checks whether or not the application has completed. If the application has not completed, the control module proceeds to step S7 (continues to capture the visual background 2) and determines the current orientation of the mobile device 1. Thus, determined are changes in the orientation of the mobile device 1 relative to the visual background 2. Subsequently, further output signals are generated based on orientation parameters indicative of these changes. Thus the live camera image of the focused part of the visual background 2 and its graphical overlays shown on display 10 are (constantly) updated in real time as the mobile device 1 changes its orientation relative to the visual background 2. Otherwise, if the application has completed, the control module 12 ends the selected application in step S11.
  • the proposed method and mobile device 1 make possible "augmented reality games" where the game board is provided as a visual background 2 but interactions with the game are performed through the mobile device 1.
  • the proposed method and mobile device 1 do not require the user to control the game by extensive use of the keypad or touch screen. Instead, applied are interaction primitives with respect to defined visual features in the visual background 2, particularly visual code interaction primitives, such as rotation and tilting, that the user performs by changing the orientation of the mobile device 1 relative to the visual background 2.
  • the necessary actions to interact with an application e.g. a game, are simple and intuitive spatial mappings.
  • aiming at the goal 20 requires rotation and tilting. The amount of device rotation relative to the goal 20 controls the horizontal shot direction.
  • the amount of tilting of the mobile device 1 controls the vertical shot direction (high or flat shot).
  • the user kicks the ball 24 by pressing a joystick key or using another defined user input.
  • the ball 24 is animated to move quickly towards the goal 20 (or misses it, if the user did not aim right) and the goal keeper 23 is animated to jump to one of four possible positions, for example, to either catch or miss the ball 24 with a fixed probability.
  • the game instructions require just a few words, they can even be explored by users in a few trials without any instructions. For example, in a deployment, the game is associated with a lottery, e.g. to win another box of cereal.
  • the proposed method and mobile device 1 enable single- and multiplayer games not only on small scale backgrounds but also on large scale background media such as movie theatre screens or big posters that serve as playing surface for augmented reality games. Multiple players can play games at the same time.
  • the plot of the game can be based on a single player plot (each player plays his game individually) or on a multi-player plot, where the game and the game state is influenced by other participants. Depending on the state of the game, the image displayed on the playing surface and the graphics overlaid on the mobile device 1 change.
  • the large-scale playing surface and the handheld mobile device 1 complement each other: the user interface is split between the shared large-scale playing surface (acting as background medium) and one or more handheld mobile device 1 , 1' (generating individual augmented reality overlays over the camera image).
  • the application overlays additional information (sports data, business data, weather data, global and local news, tourist information, etc.) on the captured image of the visual background 2, e.g. data retrieved from application server 4, from a positioning system such as GPS (Global Positioning System) or a mobile radio network, or from another mobile device 1'. Examples of possible applications include enhancing product packaging, posters, flyers, credit cards, ski passes, comic books or cartoons in newspapers, etc.
  • the virtually overlaid graphics can show the way from a certain entrance to a particular seat (movie theatres, operas, etc.) or a particular gate or track (airport, railway station), from a certain location to the nearest toilette (shopping centers, cities, any place with toilettes) and so on.
  • the animation can be enhanced by making the current location of the mobile device available to the mobile device 1 , e.g. based on GSM-cells, Bluetooth access points, GPS data, etc.. Then, the animation starts at the current location. Every place of interest listed in a city guide is usually displayed on a map. Interactive maps can help tourists find their way around the city (e.g. museums, public transportation, etc) and provide an animated tour guide in paper form.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

For executing an application (13) in a mobile device (1) comprising a camera (14), a visual background (2) is captured through the camera (14). A selected application (13) is associated with the visual background (2). The selected application (13) is executed in the mobile device (1). Determined are orientation parameters indicative of an orientation of the mobile device (1) relative to the visual background (2). Based on the orientation parameters, application-specific output signals are generated in the mobile device (1). Particularly, the captured visual background (2) is displayed on the mobile device (1 ) overlaid with visual objects based on the orientation parameters. Displaying the captured visual background with overlaid visual objects, selected and/or positioned dependent on the relative orientation of the mobile device (1 ), makes possible interactive augmented reality applications, e.g. interactive augmented reality games, controlled by the orientation of the mobile device (1) relative to the visual background (2).

Description

METHOD OF EXECUTING AN APPLICATION IN A MOBILE DEVICE
Field of the Invention
The present invention relates to a method of executing an application in a mobile device. Specifically, the present invention relates to a method of executing an application in a mobile device comprising a camera, to a mobile device comprising a camera for capturing a visual background external to the mobile device, and to a computer program product controlling the mobile device.
Background of the Invention
Mobile devices with built-in cameras have become more popular as inexpensive image sensors, e.g. based on CMOS technology, became available. Particularly, mobile radio telephones (cell phones) and PDA computers (personal digital assistant) are provided with built-in cameras. Images and videos captured through these cameras are stored locally in the mobile devices, off-loaded via device interfaces to personal computers, and/or transferred via mobile radio networks to servers or other mobile devices. Typical applications of mobile communication devices with built-in cameras include video telephony and visual supervision and monitoring of remote objects. Typically, the known applications of mobile devices having built-in cameras are limited to capturing, transferring, storing and/or displaying image (pictorial) data. If there is any further processing of captured image data in the mobile devices, it is limited to extracting information contained in the image data, e.g. a printed article number or a street name.
Summary of the Invention
It is an object of this invention to provide a method of executing an application in a mobile device comprising a camera, as well as a suitable mobile device comprising a camera for capturing a visual background. In particular, it is an object of the present invention to provide a method of executing a game in a mobile device comprising a camera, as well as a suitable mobile device comprising a camera for capturing a visual background for the game.
According to the present invention, these objects are achieved particularly through the features of the independent claims. In addition, further advantageous embodiments follow from the dependent claims and the description.
According to the present invention, the above-mentioned objects are particularly achieved in that a visual background external to the mobile device is captured by the camera of the mobile device, a selected application is associated with the visual background, the selected application is executed in the mobile device, determined are orientation parameters indicative of an orientation of the mobile device relative to the visual background, and application-specific output signals are generated in the mobile device based at least on the orientation parameters. Depending on the embodiment, generated are visual output signals, acoustic output signals and/or tactile output signals. Thus, applications of the mobile device are not limited to capturing, storing, transferring and/or displaying the visual background, but the mobile device is used to generate output signals depending on its orientation relative to the visual background. In other words, the mobile device provides the orientation parameters as input data to an application running in the mobile device. Preferably, determining the orientation parameters includes determining changes in the orientation of the mobile device relative to the visual background. Moreover, the output signals are generated based on orientation parameters indicative of said changes in the orientation of the mobile device. Thereby, enabled are interactive applications controlled by changing the orientation of the mobile device relative to the visual background. Moreover, if there is more than one application available, the mobile device determines a selected application associated with the visual background. Consequently, the present invention makes it possible to execute interactive games (i.e. interactive game applications) in the mobile devices, wherein game related output signals are generated dynamically based on (current) orientation parameters. Moreover, defined states of the application, e.g. states of the interactive game, are defined based on the orientation parameters.
In a preferred embodiment, generating the output signals includes displaying on the mobile device the visual background overlaid with visual objects based on the orientation parameters. Displaying the captured visual background with overlaid visual objects, selected and/or positioned dependent on the relative orientation of the mobile device, make possible interactive augmented reality applications, e.g. interactive augmented reality games, controlled by the orientation of the mobile device relative to the visual background.
Preferably, the visual objects overlaid on the visual background are animated based on the orientation parameters. Animating the overlaid visual objects, depending on the orientation of the mobile device relative to the visual background, makes possible interactive augmented reality animations, e.g. animated interactive games.
In an embodiment, defined visual features in the visual background are detected from background image data representative of the visual background captured through the camera. For example, the defined visual features include at least one two-dimensional visual code having a built-in orientation- independent coordinate system. Preferably, determining the orientation parameters is based on the defined visual features detected, e.g. the two- dimensional visual code. In an embodiment, associating the selected application with the visual background is based on the defined visual features detected, particularly e.g. the two-dimensional visual code.
Depending on the application, the selected application is stored in the mobile device or it is loaded into the mobile device via a communication link.
In an embodiment, the application is a multi-user game and the selected application communicates the states of the game via a communication link to at least one other mobile device.
In a further embodiment, execution of functions of the selected application is triggered based on the orientation parameters. Moreover, in a variant, other applications are triggered based on the orientation parameters.
In yet a further embodiment, the selected application includes descriptive language statements. Correspondingly, executing the selected application includes interpreting the descriptive language statements by an execution engine in the mobile device. Thus, the output signals are generated by the execution engine as determined by the descriptive language statements.
In addition to the method of executing an application in a mobile device comprising a camera, as well as the suitable mobile device comprising a camera for capturing a visual background, the present invention also relates to a computer program product including computer program code means for controlling one or more processors of the mobile device, particularly, a computer program product including a computer readable medium containing therein the computer program code means.
Brief Description of the Drawings
The present invention will be explained in more detail, by way of example, with reference to the drawings in which: Figure 1 shows a block diagram illustrating schematically an exemplary configuration of a mobile device comprising a camera for capturing a visual background.
Figure 2 shows a block diagram illustrating schematically two mobile devices connected through a telecommunications network.
Figure 3 shows a flow diagram illustrating an example of a sequence of steps executed according to the present invention for executing an application in a mobile device comprising a camera.
Figure 4 shows an example of a visual background having defined visual features.
Figure 5 shows an example of a visual background having defined visual features in the form of a two-dimensional visual code.
Figure 6 shows an example of a display of a captured visual background overlaid with visual objects.
Figure 7 shows another example of the display of the captured visual background having the overlaid visual objects repositioned.
Detailed Description of the Preferred Embodiments
In Figure 1 , reference numeral 2 refers to a two- or three-dimensional visual background. The visual background 2 is printed on a surface, projected with a beamer, or electronically displayed, e.g. on a computer monitor or television screen (LCD, plasma, CRT, etc). The visual background 2 is static, e.g. a comic strip printed in a newspaper, or dynamically changing, for example depending on time or on a current state of a game, e.g. an electronic large- scale public display or a movie theatre screen. Particularly, electronic or projected background media may change over time - either continuously or replacing the presented content as a whole. A typical background medium is a product package, such as a box of cereals, that has an area on its back side containing a drawing or photography. Other examples of printed media include newspapers, magazines, tickets, posters, flyers, comic books, cartoons, CD covers, and lottery coupons. Generally, printed media comprise paper, plastic, or any other substrate that can be painted on. Examples of projected background media are beamer-generated images on large screens or floor projections in public locations. Electronic displays can also be used as background media. The background medium can be a single medium, like a product package, composed of multiple media, or any real-world scene. In a preferred embodiment, the visual background 2 facilitates orientation detection by including defined visual features, i.e. machine-readable markers and visual markers that can be detected via image processing techniques, as will be explained later in more detail. In addition to facilitating orientation detection, the visual features also make possible identification of the visual background 2 and/or applications, e.g. games, associated with the visual background 2. Alternatively, other machine-detectable features on the background medium, e.g. RFID tags, are used to automatically identify the application and to compute the spatial orientation of the camera 14 relative to the visual background 2.
In Figure 1 , reference numeral 1 refers to a mobile device, e.g. a mobile radio phone (cellular phone), a PDA, a wrist watch, a tablet PC or the like. The mobile device 1 includes at least one processor as well as data and program storage media 17, e.g. a removable hard disk, flash memory disks (Compact Flash, Memory Stick, etc), optical storage media (CD, DVD, diskettes, etc) as well as internal memory (RAM, ROM, hard disk). In addition, the mobile device 1 includes a camera 14 integrated or removably attached to the mobile device 1. Moreover, the mobile device 1 includes various output devices such as a vibrator for tactile output, an internal or external loudspeaker 19 for acoustic output, and/or a display 10 for visual output, e.g. an LCD, LED or OLED display, optionally provided with touch screen capabilities. Furthermore, the mobile device 1 includes various input devices e.g. an internal or external keyboard 16a, a joystick 16b, a touch screen, an internal or external microphone 18, and/or a pen/stylus. In an embodiment, the mobile device 1 also includes a communication module 15, e.g. a device interface such as Bluetooth, ZigBee or Infrared (IrDA), or configured to communicate via telecommunications networks such as GSM (Global System for Mobile Communication), UMTS (Universal Mobile Telephone System) or a WLAN (Wireless Local Area Network). The mobile device 1 also includes an orientation detector 11 configured to determine the orientation of the mobile device relative to the visual background 2. Preferably, the orientation detector 11 is a programmed software module comprising image processing functions configured to determine orientation parameters indicative of an orientation of the mobile device 1 relative to the visual background based on defined visual features of the visual background 2, as will be explained later in more detail. Alternatively, the orientation detector 11 is implemented independently from camera 14 and does not rely on any visual features. Such an alternative orientation detector 11 includes a 6-D tracker, a distance sensor, an accelerometer, a gyroscope, a compass, a separate camera, ball switches, and/or other components. However, camera-independent orientation detectors require typically other techniques to achieve precise alignment ("registration") of the camera image with items in the visual background 2. The spatial orientation of the mobile device 1 relative to the visual background 2 is given either as a full 6-D orientation in space (3-D position plus pitch, roll, and yaw) or as a number of individual parameters such as target point, distance, rotation, and tilting of the camera relative to the visual feature. The mobile device 1 comprises further functional modules including a control module 12, at least one application (module) 13, an output generator 131 , an execution engine 132, and an image processing module 133. These functional modules are preferably programmed software modules described later in more detail with reference to Figure 3. The execution engine 132 may be preinstalled on the mobile device 1 , stored on a separate storage medium, or dynamically downloaded via a communication network 3. The execution engine 132 may be a self-contained application or a generic interpreter of a description language for interactive augmented reality games and animations. As indicated schematically in Figure 1 , the output generator 131 may be part of the application (module) 13, part of the executing engine 132, or a separate module. One skilled in the art will understand that the orientation detector 11 and/or the above-mentioned functional modules can also be implemented fully or partly by means of hardware (e.g. using special purpose orientation detector hardware, and/or a programmed digital signal processor, DSP, or field programmable gate array, FPGA, or the like).
As is illustrated in Figure 2, in step S1 the mobile device 1 or the camera
14, respectively, is pointed at the visual background 2 such that the defined visual features are captured in the camera's image. Moreover, capturing and processing of the visual background 2 is initiated by the user, for example, using the mobile device's 1 input devices, e.g. by pressing a key or a button.
In step S2, responsive to the initiation in step S1 , the control module 12 activates the camera 14 to capture a live (stream) or still image of the visual background 2.
In step S3, the control module 12 makes the image processing module 133 detect in the captured visual background 2, i.e. in the corresponding background image data, defined features for identifying the visual background 2, e.g. defined visual features such as a bar code, written information, or a visual code 22, or the control module 12 determines other machine-detectable features such as an RFID tag. In step S4, the control module 12 determines an identification of the captured visual background 2 from the defined features detected in step S3.
Furthermore, based on the visual background's 2 identity, the control module determines a selected application (module) 13 associated with the visual background 2.
In optional step S5, if the selected application (module) 22 is not stored in the mobile device 1 , using the communication module 15, the control module 12 loads the selected application (module) 13 via a communication network 3 from an application server 4, as illustrated in Figure 2. The application server 4 is connected to an application database 41 , storing different applications, e.g. games, for different visual backgrounds 2. The communication network 3 includes a device interface such as Bluetooth, ZigBee or Infrared (IrDA), or a telecommunications networks such as GSM1 UMTS, or a WLAN.
In step S6, the control module 12 initiates execution of the selected application (module) 13 in the mobile device 1. Depending on the embodiment, the selected application (module) 13 is an executable application running on a processor of the mobile device 1 , or the selected application (module) 13 includes a description composed of descriptive language statements that are interpreted by the execution engine 132. The description, is based on a formal machine-readable language (in compiled or source form) that allows for defining certain aspects of the mobile device's behavior, such as graphical output, audio output, tactile output, controlling applications on the mobile device 1 , and sending data over the communication network 3. The formal language allows for describing the mobile device's reaction to user input, particularly based on the mobile device's orientation relative to the visual background 2, but also on keyboard, touch-screen, and voice input. In addition, the language describes how the captured camera image is to be interpreted in order to trigger functions on the mobile device 1. The description language also allows for specifying the timed execution of operations, such as animations on the display 10. The description language is designed to easily describe interactive augmented reality games and animations on a high level and in a compact way. It has elements to specify graphical overlays, such as text; images of 2-D or 3- D objects; audio output; tactile output; the flow of animations in time; the use of device capabilities, such as sending data over the network or starting applications; rules for reacting to user input, such as orientation changes of the mobile device 1 ; rules for reacting to sensor input, such as the camera image; and rules for encoding the game and animation logic. The description is interpreted by the execution engine 132, which executes operations on the mobile device 1 accordingly and holds the current state of execution of the application, e.g. a state of a game.
In step S7, the orientation detector 11 determines the orientation of the mobile device 1 relative to the visual background 2. In an embodiment, the orientation detector 11 uses a 6-D tracker to determine the spatial orientation of the mobile device 1 as a full 3-D position in space plus a 3-D orientation, e.g. given as pitch, roll, and yaw. Preferably however, the control module 12 makes the image processing module 133 detect in the captured visual background 2, i.e. in the corresponding background image data, defined features for determining the relative orientation of the mobile device 1 , e.g. defined visual features such as defined visual markers 21 , as illustrated in Figure 4, a visual code 22, as illustrated in Figure 5, or other visual features, e.g. four identical colored hats worn by people in a background crowd. From these defined visual features, the orientation detector 11 determines the orientation parameters indicating the current orientation of the mobile device 1 relative to the visual background 2. For example, the orientation parameters include the targeted point on the visual background 2 medium, the rotation, the horizontal and vertical tilting, the distance, and the relative movement, as will be explained in more detail below. In a variant, these parameters are retrieved from a 2-D barcode, as described in Michael Rohs, "Real-World Interaction with Camera Phones", 2nd International Symposium on Ubiquitous Computing Systems (UCS 2004), Tokyo, Japan, Revised Selected Papers, Springer LNCS 3598, pages 74-89, July 2005. Preferably, the visual features include a two- dimensional visual code 22 having a built-in orientation-independent coordinate system, as described in US 2005/0242189. In the case of extremely large visual backgrounds 2, e.g. large game boards on a theatre screen or a billboard, several visual codes are placed across the game board represented by the visual background 2, so that at least one is always visible. An essential feature of the visual code system is the mapping of points in the image plane to corresponding points in the visual code plane, and vice versa. With the help of this mapping, the pixel coordinates of the camera focus, which is the point the user aims at and which is indicated by a crosshair during view finder mode, for example, can be mapped to corresponding code coordinates. For example, in view finder mode, the camera provides a continuous stream of images at a size of 160x120 pixels. Each visual code 22 defines its own local coordinate system that has its origin at the upper left edge of the code and that is independent of the orientation of the code in the image. Areas that are defined with respect to the code coordinate system are thus invariant to projective distortion. The orientation parameters include the rotation of the visual code 22 in the captured image in degrees counterclockwise in the range of 0° to 359°. The orientation detector 11 also determines the tilting value between the image plane and the code plane. Horizontal tilting is defined as the angle between the x axis of the code coordinate system and the image plane. Analogously, vertical tilting denotes the angle between the y axis and the image plane. A tilting value of 1 indicates that the axis and the image plane are parallel. A tilting value less than 1 means tilting to the left/top, a value greater than 1 denotes tilting to the right/bottom. The (reading) distance between the visual code 22 and the camera 14 is defined in such a way that the value 100 is assigned to the distance at which the visual code 22 is just recognizable in the view finder mode. Defining the distance in terms of the size of the visual code in the image, instead of using the actual metric distance, keeps this parameter independent of camera's optical characteristics. It is still adequate for the interaction required in the present context. Finally, the orientation detector 11 combines the recognition algorithm with a visual movement detection algorithm that solely relies on image data provided by the camera 14. The movement detection provides (x, y, θ) triplets for relative linear and relative rotational movement. The movement detection does not rely on the presence of a visual code 22 in the image. All of the described parameters can be computed without knowing the optical characteristics of the camera 14 used, like the focal distance, for example. If these parameters are known, the tilting angles and the metric distance can be computed. As mentioned before, the orientation parameters can be computed without the use of the particular visual code 22 described above. The orientation parameters can even be computed without any visual code system in the narrower sense. In a variant, the orientation parameters are computed from the unaided visual appearance of the background, with the help of suitable computer vision techniques that automatically detect local interest points in the background. However, computing the orientation parameters reliably and with high performance puts a burden on the resource-constrained mobile devices. If four non-collinear known points, e.g. the visual markers 21 in the four corners of goal 20 shown in Figure 4, are positioned in the camera image, an orientation-independent coordinate system, as well as the other parameters described above, can be computed using a planar homography. The visual background 2 needs to have four recognizable areas in the image that can be located by the image processing module 133. The known points can also be located from the corners of a rectangle that is visible in the visual background 2. The visual features to facilitate orientation detection may also be realized using a watermarking technique or invisible ink to make the orientation detection less obtrusive. A pattern of small dots can also be used to compute the location on the background medium. This technique is implemented by Anoto® Pens.
In step S8, output generator 131 generates application-specific output signals based at least on the orientation parameters determined in step S7. Thus the output signals are dependent on the orientation parameters as specified by the application (module) 13. Depending on the embodiment, the selected application (module 13) initiates functions of the output generator 131 , integrated in or separate from the selected application (module 13), or the execution engine 132 initiates functions of the output generator 131 , integrated in or separate from the execution engine 132, as specified by the application's descriptive language statements interpreted by the execution engine 132.
As indicated in Figure 3, the output generator 131 generates visual signals (step S81), acoustic signals (step S82) and/or tactile signals (step S83) depending on the orientation parameters determined in step S7. To generate visual signals, output generator 131 uses display 10. To generate acoustic signals, output generator 131 uses loudspeaker 19. To generate tactile signals, output generator 131 uses a vibrator. The output generator 131 generates visual output, tactile output, acoustic output, or data output stored on the mobile device 1 or transmitted via the communication network 3.
In step S811 , output generator 131 selects visual objects depending on the orientation parameters determined in step S7 as specified by the application (module) 13. The dynamically changing application-specific, e.g. game-related, visual objects that serve as graphical overlays over the live camera image shown on display 10 include images, icons, text, 2-D drawings, virtual 3-D objects, and GUI widgets, for example. For example, the 2-D or 3-D overlays are based on graphic libraries (e.g. OpenGL).
In step S812, output generator 131 displays the visual background 2 captured by the camera 14 and overlaid with the visual objects selected in step S811. Thus, in a game application, based on the coordinate system, defined by the visual features, e.g. the visual code 22, playing pieces and other game components are virtually placed at the correct position and with the correct perspective distortion on the display 10 of the mobile device 1 as an overlay over the live camera image (stream) of the visual background 2. The display 10 shows the camera image (stream) of the focused part of the visual background 2 as well as virtual graphical or textual overlaid over the camera image. The virtual graphical output is not only static, but can also be animated dynamically. The animations can be controlled by user input; particularly, animations can be controlled based on the orientation parameters.
Figure 6 depicts an example of display 10 showing an image of the visual background 2 captured by the camera 14 at a certain orientation. As is shown in Figure 6, the output generator 131 selected and overlaid two visual objects, namely a ball 24, placed on a penalty point, and a goal keeper 23, centered in the goal 20. These visual objects are selected and placed based on the orientation parameters and the selected application (module) 13 or the respective current state of the application, respectively. Figure 6 represents an application of a penalty Shootout game at an initial state of the game.
In step S9, based on the orientation parameters and/or other user input, such as pressing a button or uttering a command word, the control module 12 triggers execution of functions of the selected application (module) 13 and/or sets states of the application (module) 13. In the present example of the penalty Shootout game, such a function is, for example, the actual shooting (kicking) of the bail 24 after the user has directed the ball 24 by changing the orientation of the mobile device 1. Correspondingly, an other function repositions the goal keeper 23 responsive to the shooting of the ball 24. Thus the visual objects overlaid on the visual background 2 are animated by the output generator 131 , depending on the orientation of the mobile device 1 relative to the visual background, as determined by the selected application (module) 13 or the current state of the application, respectively. In case of a multi-user game another application function transfer states of the application via the communication network 3 to application server 4 and/or to another mobile device 1', as shown in Figure 2. Figure 7 depicts a further example of display 10 showing the image of the visual background 2 captured by the camera 14 at a later point in time at an orientation different from Figure 6. As is shown in Figure 7, determined by application state and current orientation parameters, the output generator 131 placed the two visual objects at different locations: ball 24 is placed in the left upper corner of goal 20, whereas goalkeeper 23 is placed on the right hand side of the goal 20. Figure 7 represents the penalty Shootout game at an advanced state of the game, after the user had adjusted the orientation of the mobile device 1 to aim the ball 24 at the left upper corner of the goal 20 and had triggered a shot of the ball 24 in that direction by means of a sudden forward move of the mobile devicel, a click of button, or uttering a command word, for example.
In step S10, the control module 12 checks whether or not the application has completed. If the application has not completed, the control module proceeds to step S7 (continues to capture the visual background 2) and determines the current orientation of the mobile device 1. Thus, determined are changes in the orientation of the mobile device 1 relative to the visual background 2. Subsequently, further output signals are generated based on orientation parameters indicative of these changes. Thus the live camera image of the focused part of the visual background 2 and its graphical overlays shown on display 10 are (constantly) updated in real time as the mobile device 1 changes its orientation relative to the visual background 2. Otherwise, if the application has completed, the control module 12 ends the selected application in step S11.
The proposed method and mobile device 1 make possible "augmented reality games" where the game board is provided as a visual background 2 but interactions with the game are performed through the mobile device 1. In contrast to conventional mobile gaming devices, the proposed method and mobile device 1 do not require the user to control the game by extensive use of the keypad or touch screen. Instead, applied are interaction primitives with respect to defined visual features in the visual background 2, particularly visual code interaction primitives, such as rotation and tilting, that the user performs by changing the orientation of the mobile device 1 relative to the visual background 2. The necessary actions to interact with an application, e.g. a game, are simple and intuitive spatial mappings. In the penalty Shootout game, for example, aiming at the goal 20 requires rotation and tilting. The amount of device rotation relative to the goal 20 controls the horizontal shot direction. The amount of tilting of the mobile device 1 controls the vertical shot direction (high or flat shot). The user kicks the ball 24 by pressing a joystick key or using another defined user input. Upon pressing the key, the ball 24 is animated to move quickly towards the goal 20 (or misses it, if the user did not aim right) and the goal keeper 23 is animated to jump to one of four possible positions, for example, to either catch or miss the ball 24 with a fixed probability. The game instructions require just a few words, they can even be explored by users in a few trials without any instructions. For example, in a deployment, the game is associated with a lottery, e.g. to win another box of cereal.
The proposed method and mobile device 1 enable single- and multiplayer games not only on small scale backgrounds but also on large scale background media such as movie theatre screens or big posters that serve as playing surface for augmented reality games. Multiple players can play games at the same time. The plot of the game can be based on a single player plot (each player plays his game individually) or on a multi-player plot, where the game and the game state is influenced by other participants. Depending on the state of the game, the image displayed on the playing surface and the graphics overlaid on the mobile device 1 change. Thus the large-scale playing surface and the handheld mobile device 1 complement each other: the user interface is split between the shared large-scale playing surface (acting as background medium) and one or more handheld mobile device 1 , 1' (generating individual augmented reality overlays over the camera image). In further embodiments, depending on the orientation parameters, the application overlays additional information (sports data, business data, weather data, global and local news, tourist information, etc.) on the captured image of the visual background 2, e.g. data retrieved from application server 4, from a positioning system such as GPS (Global Positioning System) or a mobile radio network, or from another mobile device 1'. Examples of possible applications include enhancing product packaging, posters, flyers, credit cards, ski passes, comic books or cartoons in newspapers, etc. with augmented reality games, animations and/or information; animating sports score boards and schedules; visually enhancing selection of options, e.g. by virtually adding and removing optional toppings on a personalized pizza; animating news by virtually overlaying the content based on the latest available set of data, eventually newer than the data used when the newspaper was printed; or providing orientation help on a map printed on a ticket or another sheet of paper. In the latter example, using visual codes 2, the map can be used as an animated guide. For example, the virtually overlaid graphics can show the way from a certain entrance to a particular seat (movie theatres, operas, etc.) or a particular gate or track (airport, railway station), from a certain location to the nearest toilette (shopping centers, cities, any place with toilettes) and so on. Additionally, the animation can be enhanced by making the current location of the mobile device available to the mobile device 1 , e.g. based on GSM-cells, Bluetooth access points, GPS data, etc.. Then, the animation starts at the current location. Every place of interest listed in a city guide is usually displayed on a map. Interactive maps can help tourists find their way around the city (e.g. museums, public transportation, etc) and provide an animated tour guide in paper form.
The foregoing disclosure of the embodiments of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many variations and modifications of the embodiments described herein will be apparent to one of ordinary skill in the art in light of the above disclosure. The scope of the invention is to be defined only by the claims appended hereto, and by their equivalents. Specifically, in the description, the computer program code has been associated with specific software modules, one skilled in the art will understand, however, that the computer program code may be structured differently, without deviating from the scope of the invention. Furthermore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. As one of ordinary skill in the art would appreciate, other sequences of steps may be possible while still remaining within the spirit and scope of the invention.

Claims

1. A method of executing an application (13) in a mobile device (1 ) comprising a camera (14), the method comprising:
capturing (S2) through the camera (14) a visual background (2) external to the mobile device (1 );
associating (S4) a selected application (13) with the visual background (2);
executing (S6) the selected application (13) in the mobile device (1);
determining (S7) orientation parameters indicative of an orientation of the mobile device (1) relative to the visual background (2); and
generating (S8) application-specific output signals in the mobile device (1 ) based at least on the orientation parameters.
2. The method of claim 1 , wherein generating the output signals (S8) includes displaying (S812) on the mobile device (1) the visual background (2) overlaid with visual objects based on the orientation parameters.
3. The method of one of the claims 1 or 2, wherein generating the output signals (S8) includes animating the visual objects overlaid on the visual background (2) based on the orientation parameters.
4. The method of one of the claims 1 to 3, wherein determining the orientation parameters (S7) includes determining changes in the orientation of the mobile device (1 ) relative to the visual background (2); and wherein generating output signals (S8) is based on orientation parameters indicative of said changes in the orientation of the mobile device (1 ).
5. The method of one of the claims 1 to 4, wherein generating the output signals (S8) includes generating at least one of visual signals, acoustic signals and tactile signals.
6. The method of one of the claims 1 to 5, further comprising generating background image data representative of the visual background (2) captured through the camera (14); and detecting (S3) from the background image data defined visual features in the visual background (2).
7. The method of claim 6, wherein detecting the defined visual features (S3) includes detecting at least one two-dimensional visual code (22) having a built-in orientation-independent coordinate system.
8. The method of one of the claims 6 or 7, wherein determining the orientation parameters is based on the defined visual features detected.
9. The method of one of the claims 6 to 8, wherein associating the selected application (13) with the visual background (2) is based on the defined visual features detected.
10. The method of one of the claims 1 to 9, further comprising loading the selected application (13) via a communication link into the mobile device
(1).
11. The method of one of the claims 1 to 10, wherein the application (13) is a game; wherein the output signals are game related output signals; and wherein the selected application (13) defines states of the game based at least on the orientation parameters.
12. The method of claim 11 , wherein the application (13) is a multi-user game; and wherein the selected application (13) communicates said states via a communication link to at least one other mobile device (1).
13. The method of one of the claims 1 to 12, further comprising triggering (S9) execution of functions of the selected application (13) based on the orientation parameters.
14. The method of one of the claims 1 to 13, wherein the selected application (13) includes descriptive language statements; wherein executing the selected application (13) includes interpreting the descriptive language statements by an execution engine (132) in the mobile device (1); and wherein generating the output signals (S8) includes generating the output signals by the execution engine (132) as determined by the descriptive language statements of the selected application (13).
15. A mobile device (1 ) comprising a camera (14) for capturing a visual background (2) external to the mobile device (1 ), wherein the mobile device (1) further comprises:
a control module (12) configured to associate a selected application (13) with the visual background (2) and to initiate execution of the selected application (13) in the mobile device (1 );
an orientation detector (11 ) configured to determine orientation parameters indicative of an orientation of the mobile device (1 ) relative to the visual background (2); and
an output generator (131) configured to generate application-specific output signals based at least on the orientation parameters.
16. The mobile device (1) of claim 15, wherein the output generator (131) is further configured to display on the mobile device (1) the visual background (2) overlaid with visual objects based on the orientation parameters.
17. The mobile device (1) of one of the claims 15 or 16, wherein the output generator (131 ) is further configured to animate the visual objects overlaid on the visual background (2) based on the orientation parameters.
18. The mobile device (1) of one of the claims 15 to 17, wherein the orientation detector (11) is further configured to determine changes in the orientation of the mobile device (1 ) relative to the visual background (2); and wherein the output generator (131) is configured to generate the application-specific output signals based on orientation parameters indicative of said changes in the orientation of the mobile device (1).
19. The mobile device (1) of one of the claims 15 to 18, wherein the output generator (131 ) is configured to generate at least one of visual signals, acoustic signals and tactile signals.
20. The mobile device (1) of one of the claims 15 to 19, wherein the camera (14) is configured to generate background image data representative of the visual background (2) captured; and wherein the orientation detector (11) is further configured to detect from the background image data defined visual features in the visual background (2).
21. The mobile device (1 ) of claim 20, wherein the orientation detector (11 ) is configured to detect from the background image data at least one two- dimensional visual code (22) having a built-in orientation-independent coordinate system.
22. The mobile device (1) of one of the claims 20 or 21 , wherein the orientation detector (11) is configured to determine the orientation parameters based on the defined visual features detected.
23. The mobile device (1) of one of the claims 20 to 22, wherein the control module (12) is configured to associate the selected application (13) with the visual background (2) based on the defined visual features detected.
24. The mobile device (1) of one of the claims 15 to 23, wherein the control module (12) is configured to load the selected application (13) via a communication link into the mobile device (1).
25. The mobile device (1 ) of one of the claims 15 to 24, wherein the application (13) is a game; wherein the output signals are game related output signals; and wherein the selected application (13) is configured to define states of the game based at least on the orientation parameters.
26. The mobile device (1) of claim 25, wherein the application (13) is a multi- user game; and wherein the selected application (13) is configured to communicate said states via a communication link to at least one other mobile device (1 ).
27. The mobile device (1) of one of the claims 15 to 26, wherein the selected application (13) is configured to trigger execution of functions of the selected application (13) based on the orientation parameters.
28. The mobile device (1 ) of one of the claims 15 to 13, wherein the selected application (13) includes descriptive language statements; wherein the mobile device (1) further comprises an execution engine (131) configured to interprete the descriptive language statements; and wherein the output generator (131) is configured to generate the application-specific output signals based on the descriptive language statements as interpreted by the execution engine (131).
29. A computer program product comprising computer program code means for controlling one or more processors of a mobile device (1 ), comprising a camera (14) for capturing a visual background (2) external to the mobile device (1 ), such that the mobile device (1)
associates (S4) a selected application (13) with the visual background (2),
executes (S6) the selected application (13),
determines (S7) orientation parameters indicative of an orientation of the mobile device (1 ) relative to the visual background (2), and
generates (S8) application-specific output signals based at least on the orientation parameters.
30. The computer program product of claim 29, comprising further computer program code means for controlling the processors of the mobile device (1), such that the mobile device (1) displays (S812) on the mobile device
(1) the visual background (2) overlaid with visual objects based on the orientation parameters.
PCT/CH2006/000196 2005-04-06 2006-04-05 Method of executing an application in a mobile device WO2006105686A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US11/910,921 US8226011B2 (en) 2005-04-06 2006-04-05 Method of executing an application in a mobile device
CN2006800198730A CN101189049B (en) 2005-04-06 2006-04-05 Method of executing an application in a mobile device
EP06721898A EP1866043A1 (en) 2005-04-06 2006-04-05 Method of executing an application in a mobile device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US66919705P 2005-04-06 2005-04-06
US60/669.197 2005-04-06

Publications (1)

Publication Number Publication Date
WO2006105686A1 true WO2006105686A1 (en) 2006-10-12

Family

ID=36390266

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CH2006/000196 WO2006105686A1 (en) 2005-04-06 2006-04-05 Method of executing an application in a mobile device

Country Status (4)

Country Link
US (1) US8226011B2 (en)
EP (1) EP1866043A1 (en)
CN (1) CN101189049B (en)
WO (1) WO2006105686A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2449694A (en) * 2007-05-31 2008-12-03 Sony Comp Entertainment Europe Entertainment system, device, toy and method
EP2138212A1 (en) * 2008-06-27 2009-12-30 Nederlandse Organisatie voor toegepast-natuurwetenschappelijk Onderzoek TNO Method for assessing the direction of a user device provided with a camera
EP2193825A1 (en) 2008-12-03 2010-06-09 Alcatel, Lucent Mobile device for augmented reality applications
WO2013032618A1 (en) * 2011-08-30 2013-03-07 Qualcomm Incorporated Indirect position and orientation tracking of mobile platforms via multi-user capture of multiple images for use in augmented or virtual reality gaming systems
US9329469B2 (en) 2011-02-17 2016-05-03 Microsoft Technology Licensing, Llc Providing an interactive experience using a 3D depth camera and a 3D projector
US9597587B2 (en) 2011-06-08 2017-03-21 Microsoft Technology Licensing, Llc Locational node device
EP2281274B1 (en) * 2008-05-15 2019-06-05 Sony Ericsson Mobile Communications AB Systems methods and computer program products for providing augmented shopping information
US11432051B2 (en) * 2016-09-27 2022-08-30 Srinivas Krishna Method and system for positioning, viewing and sharing virtual content

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8817045B2 (en) 2000-11-06 2014-08-26 Nant Holdings Ip, Llc Interactivity via mobile image recognition
US9445225B2 (en) * 2005-07-14 2016-09-13 Huston Family Trust GPS based spectator and participant sport system and method
US8275397B2 (en) 2005-07-14 2012-09-25 Huston Charles D GPS based friend location and identification system and method
US8933967B2 (en) 2005-07-14 2015-01-13 Charles D. Huston System and method for creating and sharing an event using a social network
US8207843B2 (en) 2005-07-14 2012-06-26 Huston Charles D GPS-based location and messaging system and method
US9344842B2 (en) 2005-07-14 2016-05-17 Charles D. Huston System and method for viewing golf using virtual reality
US11972450B2 (en) 2005-07-14 2024-04-30 Charles D. Huston Spectator and participant system and method for displaying different views of an event
US8249626B2 (en) * 2005-07-14 2012-08-21 Huston Charles D GPS based friend location and identification system and method
WO2007027738A2 (en) 2005-08-29 2007-03-08 Evryx Technologies, Inc. Interactivity via mobile image recognition
US7697827B2 (en) 2005-10-17 2010-04-13 Konicek Jeffrey C User-friendlier interfaces for a camera
JP2007304666A (en) 2006-05-08 2007-11-22 Sony Computer Entertainment Inc Information output system and information output method
US8493323B2 (en) * 2006-08-02 2013-07-23 Research In Motion Limited System and method for adjusting presentation of moving images on an electronic device according to an orientation of the device
US8139026B2 (en) 2006-08-02 2012-03-20 Research In Motion Limited System and method for adjusting presentation of text and images on an electronic device according to an orientation of the device
WO2008021091A2 (en) * 2006-08-11 2008-02-21 Packetvideo Corp. 'system and method for delivering interactive audiovisual experiences to portable devices'
WO2008027447A2 (en) * 2006-08-31 2008-03-06 Wms Gaming Inc. Remote input device for a wagering game
CN101529364A (en) * 2006-10-27 2009-09-09 诺基亚公司 Method and apparatus for facilitating movement within a three dimensional graphical user interface
US8675017B2 (en) * 2007-06-26 2014-03-18 Qualcomm Incorporated Real world gaming framework
US9495386B2 (en) 2008-03-05 2016-11-15 Ebay Inc. Identification of items depicted in images
CN105787764A (en) 2008-03-05 2016-07-20 电子湾有限公司 Method And Apparatus For Image Recognition Services
US8477139B2 (en) * 2008-06-09 2013-07-02 Apple Inc. Touch screen device, method, and graphical user interface for manipulating three-dimensional virtual objects
KR101500741B1 (en) * 2008-09-12 2015-03-09 옵티스 셀룰러 테크놀로지, 엘엘씨 Mobile terminal having a camera and method for photographing picture thereof
US20100099476A1 (en) * 2008-10-16 2010-04-22 Mickey David L Non-visible maze gamming system and method
KR101019335B1 (en) * 2008-11-11 2011-03-07 주식회사 팬택 Method and system for controlling application of mobile terminal using gesture
US20100156907A1 (en) * 2008-12-23 2010-06-24 Microsoft Corporation Display surface tracking
EP2404443A4 (en) * 2009-03-03 2013-09-04 Digimarc Corp Narrowcasting from public displays, and related arrangements
DE102009037835B4 (en) * 2009-08-18 2012-12-06 Metaio Gmbh Method for displaying virtual information in a real environment
US8374646B2 (en) * 2009-10-05 2013-02-12 Sony Corporation Mobile device visual input system and methods
US8675025B2 (en) 2009-12-17 2014-03-18 Nokia Corporation Method and apparatus for providing control over a device display based on device orientation
US9164577B2 (en) 2009-12-22 2015-10-20 Ebay Inc. Augmented reality system, method, and apparatus for displaying an item image in a contextual environment
US9901828B2 (en) 2010-03-30 2018-02-27 Sony Interactive Entertainment America Llc Method for an augmented reality character to maintain and exhibit awareness of an observer
US11117033B2 (en) 2010-04-26 2021-09-14 Wilbert Quinc Murdock Smart system for display of dynamic movement parameters in sports and training
US20110275434A1 (en) * 2010-05-04 2011-11-10 Mediatek Inc. Methods for controlling a process of a game and electronic devices utilizing the same
WO2011145431A1 (en) * 2010-05-19 2011-11-24 株式会社バンダイ Gaming device and computer program
US9679437B2 (en) * 2010-06-08 2017-06-13 Bally Gaming, Inc. Augmented reality for wagering game activity
CN102339571A (en) * 2010-07-21 2012-02-01 鸿富锦精密工业(深圳)有限公司 Electronic device
KR101363559B1 (en) * 2010-07-23 2014-02-17 주식회사 팬택 Apparatus and Method for providing augment reality using additional information
US8428621B2 (en) 2010-07-30 2013-04-23 Hewlett-Packard Development Company, L.P. Location-based audio service
US20120036485A1 (en) * 2010-08-09 2012-02-09 XMG Studio Motion Driven User Interface
US20120032877A1 (en) * 2010-08-09 2012-02-09 XMG Studio Motion Driven Gestures For Customization In Augmented Reality Applications
JP5652097B2 (en) * 2010-10-01 2015-01-14 ソニー株式会社 Image processing apparatus, program, and image processing method
US8907983B2 (en) 2010-10-07 2014-12-09 Aria Glassworks, Inc. System and method for transitioning between interface modes in virtual and augmented reality applications
US20120122570A1 (en) 2010-11-16 2012-05-17 David Michael Baronoff Augmented reality gaming experience
US9041743B2 (en) 2010-11-24 2015-05-26 Aria Glassworks, Inc. System and method for presenting virtual and augmented reality scenes to a user
US9070219B2 (en) 2010-11-24 2015-06-30 Aria Glassworks, Inc. System and method for presenting virtual and augmented reality scenes to a user
WO2012071466A2 (en) 2010-11-24 2012-05-31 Aria Glassworks, Inc. System and method for acquiring virtual and augmented reality scenes by a user
US20120135783A1 (en) * 2010-11-29 2012-05-31 Google Inc. Mobile device image feedback
US9111418B2 (en) * 2010-12-15 2015-08-18 Bally Gaming, Inc. System and method for augmented reality using a player card
US9848106B2 (en) * 2010-12-21 2017-12-19 Microsoft Technology Licensing, Llc Intelligent gameplay photo capture
US8953022B2 (en) 2011-01-10 2015-02-10 Aria Glassworks, Inc. System and method for sharing virtual and augmented reality scenes between users and viewers
US9118970B2 (en) 2011-03-02 2015-08-25 Aria Glassworks, Inc. System and method for embedding and viewing media files within a virtual and augmented reality scene
JP5724544B2 (en) * 2011-03-31 2015-05-27 ソニー株式会社 Image processing apparatus, image processing method, and program
US8457654B1 (en) 2011-03-31 2013-06-04 Google Inc. Directional feedback
US9002490B2 (en) 2011-04-13 2015-04-07 Longsand Limted Methods and systems for generating frictionless social experience environment
US8493353B2 (en) 2011-04-13 2013-07-23 Longsand Limited Methods and systems for generating and joining shared experience
US10242456B2 (en) 2011-06-23 2019-03-26 Limitless Computing, Inc. Digitally encoded marker-based augmented reality (AR)
US8559766B2 (en) * 2011-08-16 2013-10-15 iParse, LLC Automatic image capture
CN102346660A (en) * 2011-10-13 2012-02-08 苏州梦想人软件科技有限公司 System and method for mixing real and virtual objects
US9449342B2 (en) 2011-10-27 2016-09-20 Ebay Inc. System and method for visualization of items in an environment using augmented reality
US9171384B2 (en) * 2011-11-08 2015-10-27 Qualcomm Incorporated Hands-free augmented reality for wireless communication devices
US8910309B2 (en) * 2011-12-05 2014-12-09 Microsoft Corporation Controlling public displays with private devices
US9240059B2 (en) 2011-12-29 2016-01-19 Ebay Inc. Personal augmented reality
GB2499249B (en) 2012-02-13 2016-09-21 Sony Computer Entertainment Europe Ltd System and method of image augmentation
US10846766B2 (en) 2012-06-29 2020-11-24 Ebay Inc. Contextual menus based on image recognition
US9870642B2 (en) * 2012-08-10 2018-01-16 Here Global B.V. Method and apparatus for layout for augmented reality view
US9256299B2 (en) 2012-08-28 2016-02-09 Hewlett-Packard Development Company, L.P. Client device orientation
AU2013315553B2 (en) * 2012-09-11 2017-02-23 Igt Global Solutions Corporation Method, system and ticket for facilitating lottery-related activities via mobile devices
US9626799B2 (en) 2012-10-02 2017-04-18 Aria Glassworks, Inc. System and method for dynamically displaying multiple virtual and augmented reality scenes on a single display
US9294539B2 (en) * 2013-03-14 2016-03-22 Microsoft Technology Licensing, Llc Cooperative federation of digital devices via proxemics and device micro-mobility
US10769852B2 (en) 2013-03-14 2020-09-08 Aria Glassworks, Inc. Method for simulating natural perception in virtual and augmented reality scenes
CN103310099A (en) * 2013-05-30 2013-09-18 佛山电视台南海分台 Method and system for realizing augmented reality by adopting image capture and recognition technology
US10977864B2 (en) 2014-02-21 2021-04-13 Dropbox, Inc. Techniques for capturing and displaying partial motion in virtual or augmented reality scenes
US10521817B2 (en) 2014-04-02 2019-12-31 Nant Holdings Ip, Llc Augmented pre-paid cards, systems and methods
US9734634B1 (en) * 2014-09-26 2017-08-15 A9.Com, Inc. Augmented reality product preview
US20160196713A1 (en) * 2015-01-04 2016-07-07 Paymaxs Ltd. 3d lottery card
DE102015119753A1 (en) * 2015-11-16 2017-05-18 Storydocks Gmbh Augmented reality system
US10200581B2 (en) * 2016-03-31 2019-02-05 Peter G. Hartwell Heads down intelligent display and processing
DK201770423A1 (en) 2016-06-11 2018-01-15 Apple Inc Activity and workout updates
CN107527380B (en) * 2016-06-20 2022-11-18 中兴通讯股份有限公司 Image processing method and device
US10431049B2 (en) 2016-09-28 2019-10-01 Scientific Garnes International, Inc. Lottery game system and method with augmented reality component
CN107492183A (en) * 2017-07-31 2017-12-19 程昊 One kind has paper instant lottery AR methods of exhibiting and system
US10922878B2 (en) * 2017-10-04 2021-02-16 Google Llc Lighting for inserted content
US10424167B2 (en) 2017-10-17 2019-09-24 Scientific Games International, Inc. Lottery game system and method with augmented reality scratch-off lottery ticket
US10819706B2 (en) 2018-07-09 2020-10-27 Igt System, apparatus and method for facilitating remote gaming communications in a venue
US20200027302A1 (en) 2018-07-18 2020-01-23 Igt System and method for utilizing mobile device application to locate electronic gaming machines
US10675536B2 (en) 2018-10-03 2020-06-09 Song Chen Gaming system that alters target images produced by an LED array
US10777037B1 (en) 2019-02-21 2020-09-15 Igt System and method for utilizing a mobile device to identify an electronic gaming machine
KR20210101518A (en) * 2020-02-10 2021-08-19 삼성전자주식회사 Electronic device and method for arranging augmented reality object

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06176131A (en) * 1992-12-03 1994-06-24 Namco Ltd Picture synthesis device and virtual reality device using the same
WO1998046323A1 (en) * 1997-04-15 1998-10-22 Criticom Corporation Computer games having optically acquired images which are combined with computer generated graphics and images
US6309306B1 (en) * 1999-03-03 2001-10-30 Disney Enterprises, Inc. Interactive entertainment attraction using telepresence vehicles
US6752720B1 (en) * 2000-06-15 2004-06-22 Intel Corporation Mobile remote control video gaming system

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4578766A (en) * 1983-09-01 1986-03-25 The United States Of America As Represented By The Secretary Of The Navy Computer-aided process for generating camera-ready graphical artwork
CA1338909C (en) * 1987-03-05 1997-02-11 Curtis M. Brubaker Radio control toy
US5103490A (en) * 1990-06-13 1992-04-07 National Computer Systems, Inc. Method and apparatus for storing and merging multiple optically scanned images
US5553864A (en) * 1992-05-22 1996-09-10 Sitrick; David H. User image integration into audiovisual presentation system and methodology
US5707237A (en) * 1993-04-20 1998-01-13 Kabushiki Kaisha Ace Denken Driving simulation system
US5783811A (en) * 1995-06-26 1998-07-21 Metanetics Corporation Portable data collection device with LED targeting and illumination assembly
US6179208B1 (en) * 1997-01-31 2001-01-30 Metanetics Corporation Portable data collection device with variable focusing module for optic assembly
US6330976B1 (en) * 1998-04-01 2001-12-18 Xerox Corporation Marking medium area with encoded identifier for producing action through network
ATE321310T1 (en) * 2000-04-06 2006-04-15 Seiko Epson Corp METHOD AND APPARATUS FOR READING A TWO-DIMENSIONAL BAR CODE AND DATA STORAGE MEDIUM
US6832729B1 (en) * 2001-03-23 2004-12-21 Zih Corp. Portable data collection device for reading fluorescent indicia
US20040258274A1 (en) * 2002-10-31 2004-12-23 Brundage Trent J. Camera, camera accessories for reading digital watermarks, digital watermarking method and systems, and embedding digital watermarks with metallic inks
US7296747B2 (en) * 2004-04-20 2007-11-20 Michael Rohs Visual code system for camera-equipped mobile devices and applications thereof
US20060041632A1 (en) * 2004-08-23 2006-02-23 Microsoft Corporation System and method to associate content types in a portable communication device
US7273177B2 (en) * 2005-03-10 2007-09-25 Microsoft Corporation Camera-based barcode recognition
US7172124B2 (en) * 2005-03-10 2007-02-06 Microsoft Corporation Camera-based barcode recognition

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06176131A (en) * 1992-12-03 1994-06-24 Namco Ltd Picture synthesis device and virtual reality device using the same
WO1998046323A1 (en) * 1997-04-15 1998-10-22 Criticom Corporation Computer games having optically acquired images which are combined with computer generated graphics and images
US6309306B1 (en) * 1999-03-03 2001-10-30 Disney Enterprises, Inc. Interactive entertainment attraction using telepresence vehicles
US6752720B1 (en) * 2000-06-15 2004-06-22 Intel Corporation Mobile remote control video gaming system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
REKIMOTO J ET AL: "Augment-able reality: situated communication through physical and digital spaces", WEARABLE COMPUTERS, 1998. DIGEST OF PAPERS. SECOND INTERNATIONAL SYMPOSIUM ON PITTSBURGH, PA, USA 19-20 OCT. 1998, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 19 October 1998 (1998-10-19), pages 68 - 75, XP010312817, ISBN: 0-8186-9074-7 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2449694A (en) * 2007-05-31 2008-12-03 Sony Comp Entertainment Europe Entertainment system, device, toy and method
GB2449694B (en) * 2007-05-31 2010-05-26 Sony Comp Entertainment Europe Entertainment system and method
US8216036B2 (en) 2007-05-31 2012-07-10 Sony Corporation Entertainment Europe Limited Entertainment system and method
EP2281274B1 (en) * 2008-05-15 2019-06-05 Sony Ericsson Mobile Communications AB Systems methods and computer program products for providing augmented shopping information
EP2138212A1 (en) * 2008-06-27 2009-12-30 Nederlandse Organisatie voor toegepast-natuurwetenschappelijk Onderzoek TNO Method for assessing the direction of a user device provided with a camera
EP2193825A1 (en) 2008-12-03 2010-06-09 Alcatel, Lucent Mobile device for augmented reality applications
WO2010063409A1 (en) * 2008-12-03 2010-06-10 Alcatel Lucent Mobile device for augmented reality application
US8907982B2 (en) 2008-12-03 2014-12-09 Alcatel Lucent Mobile device for augmented reality applications
US9329469B2 (en) 2011-02-17 2016-05-03 Microsoft Technology Licensing, Llc Providing an interactive experience using a 3D depth camera and a 3D projector
US9597587B2 (en) 2011-06-08 2017-03-21 Microsoft Technology Licensing, Llc Locational node device
WO2013032618A1 (en) * 2011-08-30 2013-03-07 Qualcomm Incorporated Indirect position and orientation tracking of mobile platforms via multi-user capture of multiple images for use in augmented or virtual reality gaming systems
US11432051B2 (en) * 2016-09-27 2022-08-30 Srinivas Krishna Method and system for positioning, viewing and sharing virtual content

Also Published As

Publication number Publication date
CN101189049A (en) 2008-05-28
US8226011B2 (en) 2012-07-24
CN101189049B (en) 2012-02-29
EP1866043A1 (en) 2007-12-19
US20080194323A1 (en) 2008-08-14

Similar Documents

Publication Publication Date Title
US8226011B2 (en) Method of executing an application in a mobile device
Gervautz et al. Anywhere interfaces using handheld augmented reality
WO2019153750A1 (en) Method, apparatus and device for view switching of virtual environment, and storage medium
CN105027033B (en) Method, device and computer-readable media for selecting Augmented Reality object
KR101481880B1 (en) A system for portable tangible interaction
Pucihar et al. Exploring the evolution of mobile augmented reality for future entertainment systems
CN111035918B (en) Reconnaissance interface display method and device based on virtual environment and readable storage medium
Rohs Marker-based embodied interaction for handheld augmented reality games
CN105279795B (en) Augmented reality system based on 3D marker
EP2457627B1 (en) Portable type game device and method for controlling portable type game device
KR101692335B1 (en) System for augmented reality image display and method for augmented reality image display
JP5285901B2 (en) Card game device, card game program
US20050289590A1 (en) Marketing platform
US20110170747A1 (en) Interactivity Via Mobile Image Recognition
CN110917616B (en) Orientation prompting method, device, equipment and storage medium in virtual scene
CN103119628A (en) Three dimensional user interface effects on a display by using properties of motion
CN108786110B (en) Method, device and storage medium for displaying sighting telescope in virtual environment
KR101734520B1 (en) User Interfacing system based on movement patterns recognition by gyro sensor
JP2005143657A (en) Information presentation system, information presentation device, medium for information presentation device, information presentation method, and information presentation program
CN112691372B (en) Virtual item display method, device, equipment and readable storage medium
Rompapas et al. Towards large scale high fidelity collaborative augmented reality
US20220395751A1 (en) Targeting of a long-range object in a multiplayer game
CN108744511B (en) Method, device and storage medium for displaying sighting telescope in virtual environment
CN113577765A (en) User interface display method, device, equipment and storage medium
CN110140100A (en) Three-dimensional enhanced reality object user's interface function

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006721898

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

NENP Non-entry into the national phase

Ref country code: RU

WWW Wipo information: withdrawn in national office

Country of ref document: RU

WWE Wipo information: entry into national phase

Ref document number: 11910921

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 200680019873.0

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2006721898

Country of ref document: EP