[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

USRE43545E1 - Virtual skywriting - Google Patents

Virtual skywriting Download PDF

Info

Publication number
USRE43545E1
USRE43545E1 US13/174,576 US201113174576A USRE43545E US RE43545 E1 USRE43545 E1 US RE43545E1 US 201113174576 A US201113174576 A US 201113174576A US RE43545 E USRE43545 E US RE43545E
Authority
US
United States
Prior art keywords
skywriting
image
computing device
virtual
mobile computing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US13/174,576
Inventor
Michael Cohen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Priority to US13/174,576 priority Critical patent/USRE43545E1/en
Application granted granted Critical
Publication of USRE43545E1 publication Critical patent/USRE43545E1/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/487Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72427User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting games or graphical animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00281Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a telecommunication apparatus, e.g. a switched network of teleprinters for the distribution of text-based information, a selective call terminal
    • H04N1/00307Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a telecommunication apparatus, e.g. a switched network of teleprinters for the distribution of text-based information, a selective call terminal with a mobile telephone apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32106Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file
    • H04N1/32117Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file in a separate transmission or protocol signal prior to or subsequent to the image data transmission, e.g. in digital identification signal [DIS], in non standard setup [NSS] or in non standard field [NSF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0084Digital still camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3245Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of image modifying data, e.g. handwritten addenda, highlights or augmented reality information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3273Display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3278Transmission

Definitions

  • a mobile computing device having wireless network access is configured to capture a digital image of a real world scene including sky. The image is captured while the mobile computing device is in a geographical location or area. While the mobile computing device is still in the geographical location or area, it transmits via the wireless network a request for virtual skywriting.
  • the request is received by a skywriting service that obtains or determines the geographical location/area that the computing device is in or near.
  • the skywriting service selects a skywriting from among the previously submitted skywritings; the skywriting may be selected based on its having been entered at or associated with the geographical location.
  • the mobile device receives the virtual skywriting from the service and displays a version of the digital image with the virtual skywriting added to the sky in the version of the digital image.
  • Either the service or the mobile device may render the skywriting onto the image.
  • Various effects may be applied in rendering the skywriting to give it realistic or vapor-like appearance.
  • FIG. 1 shows an example of system for virtual skywriting in use.
  • FIG. 2 shows an example system for a general process for creating and displaying virtual skywriting.
  • FIG. 3 shows a general process for creating and displaying virtual skywriting an example of a table used by a skywriting service to store skywritings.
  • FIG. 4 shows an example of a table used by a process of rendering a skywriting service to store skywritings onto an image.
  • FIG. 5 shows a process of rendering a skywriting onto an image how geographical locations can be used for providing virtual skywriting.
  • FIG. 6 shows how geographical locations can be used for providing virtual skywriting.
  • Embodiments discussed below relate to virtual skywriting. Discussion will begin with description of some of the goals of a virtual skywriting system. A system for enabling virtual skywriting will then be described. This will be followed by description of various processes and embodiments for creating, storing, finding, applying, and displaying skywriting.
  • FIG. 1 shows an example of virtual skywriting 100 in use.
  • An objective of some embodiments described herein is to allow a user of a mobile device 102 to view an image 104 of the local sky (in real world scene 105 from the viewpoint of the mobile device 102 ) with virtual skywriting 100 layered or superimposed on the image 104 . While an image 104 captured by the mobile device 102 of the actual local sky is used in one embodiment, in other embodiments the image to be displayed may come from other sources such as stored images correlated (perhaps loosely) with the time and location of the mobile device 102 .
  • a mobile device can be any type of computing device that is somewhat portable, preferably equipped with means for wireless communication, a display, user input mechanisms such as buttons, a mouse or touch sensitive screen, etc.
  • a mobile device might be, for example, a cell phone, a PDA, a laptop, a handheld GPS, and so on.
  • the virtual skywritings can be associated with geographical areas of widely varying size and location, thereby allowing users in the same area to see on their respective mobile devices the same virtual skywriting in roughly the same sky. For example, referring to FIG. 1 , if another a second user perhaps blocks or miles away from a first user were to take a photo of the sky and request skywriting for same, that other second user could see on his or her mobile device approximately the same skywriting 100 displayed on the nearby mobile device 102 of the first user (but superimposed on the use's second user's own image of the local sky).
  • the same underlying skywriting content may be viewed by both viewers users.
  • one of the users can “write” to the local sky (i.e., input skywriting) and the other user can then “see” the skywriting superimposed on nearly the same local sky.
  • FIG. 2 shows an example system for virtual skywriting.
  • a mobile device 122 is used to create virtual skywriting content.
  • a user inputs skywriting data such as text, freehand drawing, or even multimedia such as an image or video.
  • the authored skywriting is text 124 .
  • the skywriting text 124 is included with a transmission 125 via a communication network 126 (e.g., a wireless network) to a central server or service 128 (for brevity referred to hereafter as service 128 ).
  • the service 128 may be a cloud-type service where a number of federated servers cooperate to provide a service over a wide geographic area in the form of an API or an HTTP-based service, for example.
  • the transmission 125 of skywriting text 124 includes indicia of the geographic area or location of the mobile device 122 .
  • Such information might be derived from user input (the user inputs the location), from an on-board GPS of the mobile device 122 , from cell-phone tower information, GSM repeater triangulation, or any other techniques.
  • location information may be determined or obtained by the service 128 .
  • the geographic location information associated with the newly created skywriting 124 could be in the form of geographic coordinates, an identifier of a grid element (see FIG. 6 FIG. 5) in which the mobile device 122 is located, the name of a county or city, a zip code, a user-defined bounded region, and so on.
  • the service 128 performs a process 130 of receiving the virtual skywriting text 124 and storing the skywriting in association with indicia of the location, region, etc. of the skywriting text 124 .
  • other information may be associated with stored skywritings, for example user IDs, group IDs, timestamps, etc.
  • the same process of generating and submitting virtual skywritings may be performed for skywritings submitted by many other mobile devices at any number of other geographical locations.
  • the service 128 is then able to serve the skywriting to other mobile devices. For example, if another mobile device 132 requests skywriting, the service 128 is able to provide the skywriting text 124 to the mobile device 132 . This may involve the mobile device 132 performing a process 134 of first activating a local skywriting application, such as a stand-alone application, a browser plug-in, etc.
  • the mobile device 132 may capture an image 136 of a local scene, the image 136 including at least some of the sky as seen from the site of the mobile device 132 .
  • the request 138 for skywriting does not include an image.
  • the service 128 performs a process 140 for handling requests. After receiving the request 138 , the service 128 obtains or identifies a location, geographical area, region, etc. of the requesting mobile device 132 . Using such location information, the service 128 retrieves skywritings that correspond to the location information. For example, if the location information comprises coordinates, the service 128 may identify previously stored skywritings that are within a certain radius of the coordinates (the radius may be adjusted based on skywriting density, user preference, etc.). If the location information comprises indicia of a state, or county, or grid element, the service 128 retrieves skywritings that are associated with the same (or perhaps neighboring the same). In retrieving skywritings, the service 128 may apply various filters.
  • the service 128 may retrieve skywritings of less than a certain age, or only skywritings of a specific user ID, or skywritings having tags or metadata of some user-specified content, or only a certain number of the most recent skywritings, etc.
  • the service 128 identifies sky in the photo 136 .
  • Sky may be recognized by a combination of techniques, such as identifying colors typically found in the sky, searching for a large contiguous region of somewhat uniform color(s), etc. Additional details of sky recognition may be found in U.S. Pat. No. 7,336,819, entitled “Detection of sky in digital color images”. See also Zafarifar and De With, “Blue sky detection for picture quality enhancement”, in “Advanced concepts for intelligent vision systems” (Proceedings, 8th International conference, ACIVS 2006, Antwerp, Belgium, Sep. 18-21, 2006).
  • the service 128 is able to superimpose one or more virtual skywritings on the image 136 / 142 in a way that mimics authentic skywriting. That is, the virtual skywritings can be rendered onto the image 136 / 142 in a way that will appear as though the virtual skywritings are actually in the sky near the mobile device 132 (see rendered virtual skywriting 100 in FIG. 1 ). Having rendered skywriting onto the image 136 / 142 , the image 136 / 142 is returned to the mobile device 132 via communication network 126 , where it is displayed.
  • the mobile device 132 does not transmit an image with its skywriting request 138 . Instead, the mobile device 132 transmits some indication that skywriting is desired, and the service 128 identifies nearby skywriting and transmits the skywriting back to the mobile device 132 . The mobile device 132 then recognizes sky in an image on the device (preferably, an image recently captured with a still or video camera) and the mobile device renders the skywriting onto the sky portion of the image, which is then displayed. In another embodiment, the mobile device 132 transmits its image to the skywriting service 128 , the skywriting service 128 analyzes the image to identify sky within. The skywriting service determines rendering parameters for fitting and/or rendering the skywriting into the sky region of the image.
  • the skywriting service performs preliminary steps for rendering the skywriting onto the image, for example, determining a scaling factor for the skywriting, perhaps a font type, a location in the image to put the skywriting, attributes of the skywriting such as age or vapor type or color, and so on. Then, rather than compositing the skywriting onto the image and returning the image to the mobile device, the skywriting service 128 returns the skywriting and the determined rendering parameters (but not the image). The mobile device 132 then uses the received rendering parameters and the skywriting itself to locally render the skywriting and composite or layer it onto the image.
  • the skywriting service renders the skywriting, for example, creating vapor-like graphics according to the skywriting (e.g., skywriting 100 but without the image 104 ), distorting or aging the skywriting, adding alpha blending data, rotating the skywriting, and so on.
  • the skywriting service creates image data or pixels of the skywriting as intended to be displayed on the requesting mobile device.
  • the skywriting service then returns the rendered skywriting along with, optionally, coordinate information for placing the rendered skywriting in the image.
  • the mobile device then adds or blends the rendered skywriting onto the image at the location indicated by the skywriting service (or fits the skywriting according to local identification of sky).
  • a number of approaches may be used to minimize the wireless transmission of image data.
  • FIG. 3 shows a general process for creating and displaying virtual skywriting.
  • a user creates 160 a virtual skywriting. This may be as simple as typing in text and sending it to a skywriting service.
  • virtual skywriting is created 160 by a user first taking an image of the local sky and then sketching the new skywriting onto the image, in effect virtually skywriting with a stylus or other input device.
  • the skywriting can be extracted or maintained separately from the image for later rendering to other images.
  • the receiver may see a similar sky scene and thus skywritings can be fitted to the receiver's image of the sky in a way that mimics the in-situ originally authored skywriting.
  • the authoring user might draw a heart around a cloud, and knowing the arrangement of the skywriting relative to the sky, the skywriting may be fitted to the target image's sky by placing the skywriting around the same cloud in the target image.
  • the user may tag the skywriting with a descriptive phrase.
  • the user may designate a location for the skywriting (instead of associating the skywriting with the user's current location). For example, the user, although in Seattle, may designate that the skywriting's location is in Denver.
  • the base skywriting may be any of a variety of types of media, such as text, digital ink, image data, video data, etc.
  • the skywriting is transmitted 162 to a server, which stores 164 the skywriting.
  • the transmission may include indicia of the location of the mobile device. This may be dynamically derived based on the actual current location of the mobile device.
  • the mobile device creating 160 the skywriting may self-report its location (at the communication layer or higher), or the skywriting service may determine the device's location (e.g., from a GSM provider).
  • the location information may also be statically derived. For example, the user who created 160 the skywriting may manually indicate that the user is by default at a particular zip code, and that zip code is used as the default location of the skywriting.
  • the server may receive and store 166 skywritings created 160 by many different users at many different locations or areas.
  • the server receives 166 a request from a client or mobile device user for skywriting.
  • a request may or may not include an image taken by the requesting mobile device.
  • the service identifies 168 , from among the stored skywritings, skywriting within or associated with an area that matches (or is defined by) the location of the mobile device.
  • the location or area of the requesting 166 mobile device may be obtained in a variety of ways.
  • the skywriting service then transmits 170 the identified 168 skywriting to the requester.
  • the transmitted 170 skywriting may be accompanied by optional metadata or parameters.
  • the transmission may include information about the age or time of creation of the skywriting, what color it is, who authored it, and so on.
  • the skywriting service identifies a sky region in an image, adds the skywriting to the sky region, and transmits 170 the skywriting as part of the image.
  • the client is configured to identify 172 the sky region of an image (the image having been captured by the device at the device's current location), and the client renders 174 the skywriting onto the image which is then displayed on the device.
  • FIG. 4 shows an example of a table 200 used or maintained by a skywriting service to store skywritings.
  • the skywritings may be stored in a combination of tables also.
  • one table may contain user records, another table may contain location records, and another table may contain skywritings linked to the other tables.
  • a data store or database 202 is provided to store the relevant table or tables.
  • a skywriting record 204 may include a number of fields such as an identifier (in the example of FIG. 2 FIG.
  • skywriting 124 has ID “001”), a timestamp indicating either when the skywriting was authored or when it was added to the table 200 , a userID of the user or mobile device that created the skywriting, content such as text or graphics, and indicia of the location of the skywriting.
  • a groupID can be used to allow users to create things like friends lists or other groupings of users.
  • a user can specify one or more groupIDs, possibly in combination with other criteria for skywriting. The skywriting service will then filter the skywriting on such criteria.
  • the location information can take many forms, such as a name of a geographical place, an index pointing to a rectangle of a predefined grid, a longitude-latitude (and perhaps a radius), etc.
  • FIG. 5 FIG. 4 shows a process of rendering a skywriting onto an image 220 .
  • the process of FIG. 5 FIG. 4 may be performed by the skywriting service or by the mobile device that is to display the skywriting, or a combination thereof.
  • the process starts with receiving 222 the image 220 .
  • the image 220 may be received from an image capture device of the mobile device, or it may be received via network from the mobile device at the skywriting service.
  • the process applies 224 an algorithm to recognize a portion or region 226 of the image 220 that portrays sky.
  • the sky region 226 can be recognized using color profiles, edge detection, cloud recognition, region of the image (photos tend to have sky toward their upper areas), and combinations thereof.
  • the sky recognition algorithm may also be configured to detect patterns in the sky imagery. For example, distortions in jet trails may indicate wind patterns or cloud shapes may indicate wind direction, etc. This information, for example in the form of a two-dimensional vector field, can be applied to the skywriting to distort it in a realistic manner
  • the skywriting 227 is then fitted 228 to the sky region 226 of the image 220 .
  • This may involve adjusting the size and orientation of the skywriting to fit within the region 226 .
  • Fitting 228 may also involve cropping a part of the skywriting to make it appear as though it is behind foreground objects, buildings, or landscape that presumably border the sky region 226 .
  • the skywriting 227 may also be fitted 228 by altering the image/region 220 / 226 . For example, if the image 220 is large, the image may be enlarged and cropped to increase the size of the sky region 226 relative to the size of the image 220 .
  • the skywriting 227 may be stretched, faded, translated from a prior position, distorted, etc. Such effects can be strengthened in proportion to the age of the skywriting (obtainable from its recorded timestamp). If the initial skywriting 227 is in the form of text, then a “cloud font” may be used to render the skywriting into a realistic form. In another embodiment, the skywriting, whether a graphic or text, is converted into something appearing like the vapor of actual skywriting formed by an aircraft.
  • the skywriting 227 may be formed into a short animation sequence in which various effects such as drift, fade, and distortion are animated to cause the skywriting 227 to change in a manner that mimics the decay of real clouds and skywriting.
  • the skywriting 227 may be colored to match the average color of clouds in the sky region.
  • the fitting 228 and applying 230 of effects can be performed together as one step or they may be performed in any order.
  • the end result is an image 232 with fitted and stylized skywriting 234 composited onto the image 232 .
  • Alpha blending may be used to layer the skywriting onto the image 220 .
  • the image is transmitted to the mobile device (if the skywriting service is performing that part of the process of FIG. 5 FIG. 4) and is displayed on the mobile device.
  • FIG. 6 FIG. 5 shows how geographical locations can be used for providing virtual skywriting.
  • a large area 260 is divided into a grid of geographical areas 262 , each having a region identifier such as “256”.
  • the grid may be of greatly varying granularity, which may be adjusted according to factors such as how many skywritings are currently active globally, population density, etc.
  • a server searches 266 table 268 for skywritings having region ID “256”. In this example, skywriting ID “001” is found and returned.
  • the skywriting ID is then used to find, in a table of skywriting data, the skywriting record having skywriting ID “001”.
  • This skywriting is returned 270 (either in raw or rendered form) to the requesting mobile device.
  • mobile devices in different regions will receive and display skywritings that correspond to their respective current geographical regions/locations.
  • mobile devices that are nearby may communicate with each other by authoring and viewing virtual skywriting, even though the mobile devices may be too far apart for the users thereof to see each other or see the same immediate scenery.
  • other location schemes may be used, such as assigning geographical coordinates to skywritings (where skywritings are identified for a mobile device based on nearness to the device), or region information such as state, county, etc. may be used.
  • various embodiments described above can be used to allow users of mobile devices to “view” the sky with their mobile devices and see virtual skywriting authored by other users.
  • the embodiments and features discussed above can be realized in the form of information stored in volatile or non-volatile computer or device readable media. This is deemed to include at least media such as optical storage (e.g., CD-ROM), magnetic media, flash ROM, or any current or future means of storing digital information in form(s) convenient for digital processing.
  • the stored information can be in the form of machine executable instructions (e.g., compiled executable binary code), source code, bytecode, or any other information that can be used to enable or configure computing devices to perform the various embodiments discussed above.
  • This is also deemed to include at least volatile memory such as RAM and/or virtual memory storing information such as CPU instructions during execution of a program carrying out an embodiment, as well as non-volatile media storing information that allows a program or executable to be loaded and executed.
  • volatile memory such as RAM and/or virtual memory storing information such as CPU instructions during execution of a program carrying out an embodiment
  • non-volatile media storing information that allows a program or executable to be loaded and executed.
  • the embodiments and featured can be performed on any type of computing device, including portable devices, workstations, servers, mobile wireless devices, and so on.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Library & Information Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Users with mobile computing devices author skywriting and submit them to a virtual skywriting service. A mobile computing device having wireless network access is configured to capture a digital image of a real world scene including sky. The image is captured while the mobile computing device is in a geographical location or area. While the mobile computing device is still in the geographical location or area, it transmits via the wireless network a request for virtual skywriting. The request is received by a skywriting service that obtains or determines the geographical location/area that the computing device is in or near. The skywriting service selects a skywriting from among the previously submitted skywritings; the skywriting may be selected based on its having been entered at or associated with the geographical location. The mobile device receives the virtual skywriting from the service and displays a version of the digital image with the virtual skywriting added to the sky in the version of the digital image. Either the service or the mobile device may render the skywriting onto the image. Various effects may be applied in rendering the skywriting to give it realistic or vapor-like appearance.

Description

BACKGROUND
Techniques related to virtual skywriting are discussed below. There have been proposals for allowing users of mobile devices to create and view virtual graffiti. Such proposals have taken an approach of allowing a user to create virtual graffiti and “pin” it to a particular real world object such as a wall, building, etc. However, this approach of virtual shared graffiti has certain limitations. Virtual graffiti may be accessible only to those in the vicinity of a virtual graffiti collection point. Also, there may be difficulties in recognizing, in an image, the object that graffiti is pinned to. In view of these shortcomings, embodiments described below relate to allowing users of mobile devices to create and view virtual skywriting.
SUMMARY
The following summary is included only to introduce some concepts discussed in the Detailed Description below. This summary is not comprehensive and is not intended to delineate the scope of the claimed subject matter, which is set forth by the claims presented at the end.
Users with mobile computing devices author skywriting and submit them to a virtual skywriting service. A mobile computing device having wireless network access is configured to capture a digital image of a real world scene including sky. The image is captured while the mobile computing device is in a geographical location or area. While the mobile computing device is still in the geographical location or area, it transmits via the wireless network a request for virtual skywriting. The request is received by a skywriting service that obtains or determines the geographical location/area that the computing device is in or near. The skywriting service selects a skywriting from among the previously submitted skywritings; the skywriting may be selected based on its having been entered at or associated with the geographical location. The mobile device receives the virtual skywriting from the service and displays a version of the digital image with the virtual skywriting added to the sky in the version of the digital image. Either the service or the mobile device may render the skywriting onto the image. Various effects may be applied in rendering the skywriting to give it realistic or vapor-like appearance.
Many of the attendant features will be explained below with reference to the following detailed description considered in connection with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
The present description will be better understood from the following detailed description read in light of the accompanying drawings, wherein like reference numerals are used to designate like parts in the accompanying description.
FIG. 1 shows an example of system for virtual skywriting in use.
FIG. 2 shows an example system for a general process for creating and displaying virtual skywriting.
FIG. 3 shows a general process for creating and displaying virtual skywriting an example of a table used by a skywriting service to store skywritings.
FIG. 4 shows an example of a table used by a process of rendering a skywriting service to store skywritings onto an image.
FIG. 5 shows a process of rendering a skywriting onto an image how geographical locations can be used for providing virtual skywriting.
FIG. 6 shows how geographical locations can be used for providing virtual skywriting.
DETAILED DESCRIPTION
Embodiments discussed below relate to virtual skywriting. Discussion will begin with description of some of the goals of a virtual skywriting system. A system for enabling virtual skywriting will then be described. This will be followed by description of various processes and embodiments for creating, storing, finding, applying, and displaying skywriting.
FIG. 1 shows an example of virtual skywriting 100 in use. An objective of some embodiments described herein is to allow a user of a mobile device 102 to view an image 104 of the local sky (in real world scene 105 from the viewpoint of the mobile device 102) with virtual skywriting 100 layered or superimposed on the image 104. While an image 104 captured by the mobile device 102 of the actual local sky is used in one embodiment, in other embodiments the image to be displayed may come from other sources such as stored images correlated (perhaps loosely) with the time and location of the mobile device 102. As used herein, a mobile device can be any type of computing device that is somewhat portable, preferably equipped with means for wireless communication, a display, user input mechanisms such as buttons, a mouse or touch sensitive screen, etc. A mobile device might be, for example, a cell phone, a PDA, a laptop, a handheld GPS, and so on.
Of interest is that in some embodiments the virtual skywritings can be associated with geographical areas of widely varying size and location, thereby allowing users in the same area to see on their respective mobile devices the same virtual skywriting in roughly the same sky. For example, referring to FIG. 1, if another a second user perhaps blocks or miles away from a first user were to take a photo of the sky and request skywriting for same, that other second user could see on his or her mobile device approximately the same skywriting 100 displayed on the nearby mobile device 102 of the first user (but superimposed on the use's second user's own image of the local sky). While the second user might see the skywriting rendered differently, fitted to a different view of the local sky, etc., the same underlying skywriting content (albeit perhaps rendered differently, e.g., larger, brighter, with a different shape) may be viewed by both viewers users. Furthermore, despite being perhaps separated by miles, one of the users can “write” to the local sky (i.e., input skywriting) and the other user can then “see” the skywriting superimposed on nearly the same local sky.
FIG. 2FIG. 1 shows an example system for virtual skywriting. At step 120 a mobile device 122 is used to create virtual skywriting content. A user inputs skywriting data such as text, freehand drawing, or even multimedia such as an image or video. In the example of FIG. 2 FIG. 1, the authored skywriting is text 124. The skywriting text 124 is included with a transmission 125 via a communication network 126 (e.g., a wireless network) to a central server or service 128 (for brevity referred to hereafter as service 128). The service 128 may be a cloud-type service where a number of federated servers cooperate to provide a service over a wide geographic area in the form of an API or an HTTP-based service, for example. In one embodiment the transmission 125 of skywriting text 124 includes indicia of the geographic area or location of the mobile device 122. Such information might be derived from user input (the user inputs the location), from an on-board GPS of the mobile device 122, from cell-phone tower information, GSM repeater triangulation, or any other techniques. In other embodiments, location information may be determined or obtained by the service 128. The geographic location information associated with the newly created skywriting 124 could be in the form of geographic coordinates, an identifier of a grid element (see FIG. 6 FIG. 5) in which the mobile device 122 is located, the name of a county or city, a zip code, a user-defined bounded region, and so on.
Regardless of how the service 128 obtains information about the location or locale of the mobile device 122, the service 128 performs a process 130 of receiving the virtual skywriting text 124 and storing the skywriting in association with indicia of the location, region, etc. of the skywriting text 124. As will be discussed with reference to FIG. 4 FIG. 3, other information may be associated with stored skywritings, for example user IDs, group IDs, timestamps, etc. Of course the same process of generating and submitting virtual skywritings may be performed for skywritings submitted by many other mobile devices at any number of other geographical locations.
Having stored the virtual skywriting text 124 and associated metadata, the service 128 is then able to serve the skywriting to other mobile devices. For example, if another mobile device 132 requests skywriting, the service 128 is able to provide the skywriting text 124 to the mobile device 132. This may involve the mobile device 132 performing a process 134 of first activating a local skywriting application, such as a stand-alone application, a browser plug-in, etc. The mobile device 132 may capture an image 136 of a local scene, the image 136 including at least some of the sky as seen from the site of the mobile device 132. In one embodiment, the image 136 included in a request 138 transmitted to the 128 via communication network 126. In other embodiments, described later, the request 138 for skywriting does not include an image.
The service 128 performs a process 140 for handling requests. After receiving the request 138, the service 128 obtains or identifies a location, geographical area, region, etc. of the requesting mobile device 132. Using such location information, the service 128 retrieves skywritings that correspond to the location information. For example, if the location information comprises coordinates, the service 128 may identify previously stored skywritings that are within a certain radius of the coordinates (the radius may be adjusted based on skywriting density, user preference, etc.). If the location information comprises indicia of a state, or county, or grid element, the service 128 retrieves skywritings that are associated with the same (or perhaps neighboring the same). In retrieving skywritings, the service 128 may apply various filters. For example, the service 128 may retrieve skywritings of less than a certain age, or only skywritings of a specific user ID, or skywritings having tags or metadata of some user-specified content, or only a certain number of the most recent skywritings, etc.
Having retrieved one or more virtual skywritings, the service 128, in one embodiment, identifies sky in the photo 136. Sky may be recognized by a combination of techniques, such as identifying colors typically found in the sky, searching for a large contiguous region of somewhat uniform color(s), etc. Additional details of sky recognition may be found in U.S. Pat. No. 7,336,819, entitled “Detection of sky in digital color images”. See also Zafarifar and De With, “Blue sky detection for picture quality enhancement”, in “Advanced concepts for intelligent vision systems” (Proceedings, 8th International conference, ACIVS 2006, Antwerp, Belgium, Sep. 18-21, 2006). By identifying the sky portion of the image 136, the service 128 is able to superimpose one or more virtual skywritings on the image 136/142 in a way that mimics authentic skywriting. That is, the virtual skywritings can be rendered onto the image 136/142 in a way that will appear as though the virtual skywritings are actually in the sky near the mobile device 132 (see rendered virtual skywriting 100 in FIG. 1). Having rendered skywriting onto the image 136/142, the image 136/142 is returned to the mobile device 132 via communication network 126, where it is displayed.
In one embodiment, the mobile device 132 does not transmit an image with its skywriting request 138. Instead, the mobile device 132 transmits some indication that skywriting is desired, and the service 128 identifies nearby skywriting and transmits the skywriting back to the mobile device 132. The mobile device 132 then recognizes sky in an image on the device (preferably, an image recently captured with a still or video camera) and the mobile device renders the skywriting onto the sky portion of the image, which is then displayed. In another embodiment, the mobile device 132 transmits its image to the skywriting service 128, the skywriting service 128 analyzes the image to identify sky within. The skywriting service determines rendering parameters for fitting and/or rendering the skywriting into the sky region of the image. That is, the skywriting service performs preliminary steps for rendering the skywriting onto the image, for example, determining a scaling factor for the skywriting, perhaps a font type, a location in the image to put the skywriting, attributes of the skywriting such as age or vapor type or color, and so on. Then, rather than compositing the skywriting onto the image and returning the image to the mobile device, the skywriting service 128 returns the skywriting and the determined rendering parameters (but not the image). The mobile device 132 then uses the received rendering parameters and the skywriting itself to locally render the skywriting and composite or layer it onto the image. In yet another embodiment, the skywriting service renders the skywriting, for example, creating vapor-like graphics according to the skywriting (e.g., skywriting 100 but without the image 104), distorting or aging the skywriting, adding alpha blending data, rotating the skywriting, and so on. In other words, the skywriting service creates image data or pixels of the skywriting as intended to be displayed on the requesting mobile device. The skywriting service then returns the rendered skywriting along with, optionally, coordinate information for placing the rendered skywriting in the image. The mobile device then adds or blends the rendered skywriting onto the image at the location indicated by the skywriting service (or fits the skywriting according to local identification of sky). In sum, a number of approaches may be used to minimize the wireless transmission of image data.
FIG. 3FIG. 2 shows a general process for creating and displaying virtual skywriting. Initially, a user creates 160 a virtual skywriting. This may be as simple as typing in text and sending it to a skywriting service. To add to the effect of virtual skywriting, in one embodiment virtual skywriting is created 160 by a user first taking an image of the local sky and then sketching the new skywriting onto the image, in effect virtually skywriting with a stylus or other input device. The skywriting can be extracted or maintained separately from the image for later rendering to other images. If the creator is sufficiently close to another receiving user who will ultimately view the new skywriting, the receiver may see a similar sky scene and thus skywritings can be fitted to the receiver's image of the sky in a way that mimics the in-situ originally authored skywriting. For example, the authoring user might draw a heart around a cloud, and knowing the arrangement of the skywriting relative to the sky, the skywriting may be fitted to the target image's sky by placing the skywriting around the same cloud in the target image. In other embodiments, the user may tag the skywriting with a descriptive phrase. In another embodiment, the user may designate a location for the skywriting (instead of associating the skywriting with the user's current location). For example, the user, although in Seattle, may designate that the skywriting's location is in Denver. As noted above, the base skywriting may be any of a variety of types of media, such as text, digital ink, image data, video data, etc.
Having created 160 the skywriting, the skywriting is transmitted 162 to a server, which stores 164 the skywriting. The transmission may include indicia of the location of the mobile device. This may be dynamically derived based on the actual current location of the mobile device. The mobile device creating 160 the skywriting may self-report its location (at the communication layer or higher), or the skywriting service may determine the device's location (e.g., from a GSM provider). The location information may also be statically derived. For example, the user who created 160 the skywriting may manually indicate that the user is by default at a particular zip code, and that zip code is used as the default location of the skywriting. The server may receive and store 166 skywritings created 160 by many different users at many different locations or areas.
Having accumulated skywritings and associated metadata such as locations, times of creation, etc., the server receives 166 a request from a client or mobile device user for skywriting. Such a request may or may not include an image taken by the requesting mobile device. The service identifies 168, from among the stored skywritings, skywriting within or associated with an area that matches (or is defined by) the location of the mobile device. As with the client devices that create 160 skywritings, the location or area of the requesting 166 mobile device may be obtained in a variety of ways. The skywriting service then transmits 170 the identified 168 skywriting to the requester. In an embodiment where the skywriting service does not composite the skywriting onto the sky portion of the image to be displayed, the transmitted 170 skywriting may be accompanied by optional metadata or parameters. For example, the transmission may include information about the age or time of creation of the skywriting, what color it is, who authored it, and so on. In another embodiment the skywriting service identifies a sky region in an image, adds the skywriting to the sky region, and transmits 170 the skywriting as part of the image. In another embodiment, the client is configured to identify 172 the sky region of an image (the image having been captured by the device at the device's current location), and the client renders 174 the skywriting onto the image which is then displayed on the device.
FIG. 4FIG. 3 shows an example of a table 200 used or maintained by a skywriting service to store skywritings. The skywritings may be stored in a combination of tables also. For example, one table may contain user records, another table may contain location records, and another table may contain skywritings linked to the other tables. In any case, a data store or database 202 is provided to store the relevant table or tables. As seen in example table 200, a skywriting record 204 may include a number of fields such as an identifier (in the example of FIG. 2 FIG. 1, skywriting 124 has ID “001”), a timestamp indicating either when the skywriting was authored or when it was added to the table 200, a userID of the user or mobile device that created the skywriting, content such as text or graphics, and indicia of the location of the skywriting. A groupID can be used to allow users to create things like friends lists or other groupings of users. When requesting skywriting, a user can specify one or more groupIDs, possibly in combination with other criteria for skywriting. The skywriting service will then filter the skywriting on such criteria. Again, the location information can take many forms, such as a name of a geographical place, an index pointing to a rectangle of a predefined grid, a longitude-latitude (and perhaps a radius), etc.
FIG. 5FIG. 4 shows a process of rendering a skywriting onto an image 220. The process of FIG. 5FIG. 4 may be performed by the skywriting service or by the mobile device that is to display the skywriting, or a combination thereof. The process starts with receiving 222 the image 220. The image 220 may be received from an image capture device of the mobile device, or it may be received via network from the mobile device at the skywriting service. The process then applies 224 an algorithm to recognize a portion or region 226 of the image 220 that portrays sky. The sky region 226 can be recognized using color profiles, edge detection, cloud recognition, region of the image (photos tend to have sky toward their upper areas), and combinations thereof. The sky recognition algorithm may also be configured to detect patterns in the sky imagery. For example, distortions in jet trails may indicate wind patterns or cloud shapes may indicate wind direction, etc. This information, for example in the form of a two-dimensional vector field, can be applied to the skywriting to distort it in a realistic manner.
With the sky region 226 recognized and some skywriting 227 chosen, the skywriting 227 is then fitted 228 to the sky region 226 of the image 220. This may involve adjusting the size and orientation of the skywriting to fit within the region 226. Fitting 228 may also involve cropping a part of the skywriting to make it appear as though it is behind foreground objects, buildings, or landscape that presumably border the sky region 226. The skywriting 227 may also be fitted 228 by altering the image/region 220/226. For example, if the image 220 is large, the image may be enlarged and cropped to increase the size of the sky region 226 relative to the size of the image 220.
In addition to fitting 228 the skywriting 227, other affects may be applied 230 to cause the skywriting 227 to appear more realistic. For example, the skywriting 227 may be stretched, faded, translated from a prior position, distorted, etc. Such effects can be strengthened in proportion to the age of the skywriting (obtainable from its recorded timestamp). If the initial skywriting 227 is in the form of text, then a “cloud font” may be used to render the skywriting into a realistic form. In another embodiment, the skywriting, whether a graphic or text, is converted into something appearing like the vapor of actual skywriting formed by an aircraft. In one embodiment, the skywriting 227 may be formed into a short animation sequence in which various effects such as drift, fade, and distortion are animated to cause the skywriting 227 to change in a manner that mimics the decay of real clouds and skywriting. The skywriting 227 may be colored to match the average color of clouds in the sky region. The fitting 228 and applying 230 of effects can be performed together as one step or they may be performed in any order. The end result is an image 232 with fitted and stylized skywriting 234 composited onto the image 232. Alpha blending may be used to layer the skywriting onto the image 220. Finally, the image is transmitted to the mobile device (if the skywriting service is performing that part of the process of FIG. 5 FIG. 4) and is displayed on the mobile device.
FIG. 6FIG. 5 shows how geographical locations can be used for providing virtual skywriting. In the example of FIG. 6FIG. 5, a large area 260 is divided into a grid of geographical areas 262, each having a region identifier such as “256”. The grid may be of greatly varying granularity, which may be adjusted according to factors such as how many skywritings are currently active globally, population density, etc. When a mobile device requests skywriting, suppose in area 264, the mobile device is identified as being in area 264 (region ID “256”). A server searches 266 table 268 for skywritings having region ID “256”. In this example, skywriting ID “001” is found and returned. The skywriting ID is then used to find, in a table of skywriting data, the skywriting record having skywriting ID “001”. This skywriting is returned 270 (either in raw or rendered form) to the requesting mobile device. As can be seen, mobile devices in different regions will receive and display skywritings that correspond to their respective current geographical regions/locations. Furthermore, given a sufficient size of the regions of the grid, mobile devices that are nearby may communicate with each other by authoring and viewing virtual skywriting, even though the mobile devices may be too far apart for the users thereof to see each other or see the same immediate scenery. As noted previously, other location schemes may be used, such as assigning geographical coordinates to skywritings (where skywritings are identified for a mobile device based on nearness to the device), or region information such as state, county, etc. may be used.
In conclusion, various embodiments described above can be used to allow users of mobile devices to “view” the sky with their mobile devices and see virtual skywriting authored by other users. The embodiments and features discussed above can be realized in the form of information stored in volatile or non-volatile computer or device readable media. This is deemed to include at least media such as optical storage (e.g., CD-ROM), magnetic media, flash ROM, or any current or future means of storing digital information in form(s) convenient for digital processing. The stored information can be in the form of machine executable instructions (e.g., compiled executable binary code), source code, bytecode, or any other information that can be used to enable or configure computing devices to perform the various embodiments discussed above. This is also deemed to include at least volatile memory such as RAM and/or virtual memory storing information such as CPU instructions during execution of a program carrying out an embodiment, as well as non-volatile media storing information that allows a program or executable to be loaded and executed. The embodiments and featured can be performed on any type of computing device, including portable devices, workstations, servers, mobile wireless devices, and so on.

Claims (19)

1. A method implemented at least in part by a mobile computing device, the method comprising:
transmitting from the mobile computing device a request to a skywriting service for skywriting;
receiving from the skywriting service skywriting associated with a geographical location of the mobile computing device, the skywriting having been obtained by the skywriting service by identifying, among a stored plurality of skywritings, a the skywriting that corresponds to the geographical location of the mobile computing device; and
displaying, on the mobile computing device, the skywriting superimposed on an image of the sky as captured by the mobile computing device from the geographical location, wherein the skywriting is having been superimposed on the image by the mobile computing device transmitting the image captured by the imaging device to the skywriting service which first recognizing recognized a region of sky in the image using a recognition algorithm and then fitting fitted the skywriting to the recognized region of sky, and where the mobile computing device then received from the skywriting service the skywriting superimposed on the image.
2. A method according to claim 1, further comprising transmitting the image captured by the imaging device to the skywriting service, wherein the skywriting service performs the recognizing of the sky region and the superimposing, and receiving from the skywriting service the skywriting superimposed on the image.
3. A The method according to claim 1, wherein the skywriting is inputted by a user using a mobile device, the skywriting being received at the skywriting service and stored in association with a the geographic location of the mobile device.
4. A The method according to claim 1, further comprising determining an age of the skywriting and rendering the skywriting with one or more visual effects that are based on the age of the sky writing.
5. A The method according to claim 1, further comprising selecting the skywriting from among the stored plurality of skywritings based at least in part on whether the skywriting has a grouping identifier that matches a the grouping identifier specified for the request, the grouping identifier identifying a plurality of users.
6. A The method according to claim 1, wherein the skywriting, when superimposed on the region of sky, appears as vapor in the region of sky.
7. One or more tangible computer readable storage media storing information to enable a computing device to perform a process, the process comprising:
receiving and storing skywritings inputted from respective mobile computing devices, the skywritings comprising text or graphic data, and storing with the skywritings indicia of respective geographical areas;
receiving requests from mobile devices requesting skywriting;
determining geographical areas from which the respective requests originated;
returning to one of the requesting mobile devices one of the stored skywritings based on the correspondence of its indicia of a geographical area to the geographical area from which the mobile device's request originated;
capturing an image at the geographical area with an image capture device of the one of the requesting mobile devices, transmitting the image to a server, the server then identifying a region of sky in the image and adding the skywriting to the image by fitting the skywriting according to the identified region of sky, and receiving the image with the added skywriting at the one of the mobile devices; and
displaying the image with the added skywriting at the one of the requesting mobile devices.
8. One or more tangible computer readable storage media according to claim 7, further comprising rendering the skywriting to appear as vapor in the region of sky.
9. One or more tangible computer readable storage media according to claim 7, wherein a stored skywriting comprises respective time information indicating an age of the skywriting.
10. One or more tangible computer readable storage media according to claim 9, wherein the combining further comprises applying an effect to the skywriting, the effect depending on the age of the skywriting.
11. One or more tangible computer readable storage media according to claim 7, further comprising scaling the skywriting and/or the image to fit the skywriting to a region of the image containing pixels corresponding to sky.
12. One or more tangible computer readable storage media according to claim 7, further comprising selecting the skywriting returned to the requesting mobile device based on one or more properties of the skywriting other than the indicia of its geographical area.
13. A mobile computing device having wireless network access and configured to perform a process, the process comprising:
capturing a digital image of a real world scene including sky with an imaging device of the mobile computing device, the image being captured while the mobile computing device is in or near a geographical location;
while the mobile computing device is still in or near the geographical location, transmitting via the wireless network a request for virtual skywriting, wherein the transmitting enables a recipient of the request to determine the geographical location that the computing device is in or near;
receiving, via the wireless network, virtual skywriting having been selected in response to the request transmitted by the mobile computing device; and
displaying a version of the digital image with the virtual skywriting added to the sky in the version of the digital image, the virtual skywriting having been added by identifying transmitting the digital image to a server that then identifies a portion of the digital image as containing sky image data and then adding adds the virtual skywriting according to the identified portion of the digital image, the mobile computing device then receiving from the server the digital image with the added virtual skywriting image.
14. A The mobile computing device according to claim 13, the process further comprising receiving the virtual skywriting in rendered form and using the rendered virtual skywriting to generate the version of the digital image.
15. A The mobile computing device according to claim 13, the process further comprising authoring a new skywriting and transmitting it the new skywriting via the wireless network to a the skywriting service that makes the new skywriting available to mobile devices in or near the computing device's geographical location.
16. A The mobile computing device according to claim 13, the receiving the virtual skywriting further comprising receiving rendering parameters for the virtual skywriting and the mobile computing device rendering the virtual skywriting according to the rendering parameters.
17. A The mobile computing device according to claim 13, the process further comprising the mobile device transmitting with the request an indicia of the geographical location.
18. A The mobile computing device according to claim 13, wherein the virtual skywriting has also been selected based on whether the virtual skywriting is associated with a specified user list.
19. The method of claim 1, comprising transmitting from the mobile computing device a request to the skywriting service for the skywriting.
US13/174,576 2008-09-30 2011-06-30 Virtual skywriting Expired - Fee Related USRE43545E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/174,576 USRE43545E1 (en) 2008-09-30 2011-06-30 Virtual skywriting

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/242,560 US7966024B2 (en) 2008-09-30 2008-09-30 Virtual skywriting
US13/174,576 USRE43545E1 (en) 2008-09-30 2011-06-30 Virtual skywriting

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/242,560 Reissue US7966024B2 (en) 2008-09-30 2008-09-30 Virtual skywriting

Publications (1)

Publication Number Publication Date
USRE43545E1 true USRE43545E1 (en) 2012-07-24

Family

ID=42057999

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/242,560 Ceased US7966024B2 (en) 2008-09-30 2008-09-30 Virtual skywriting
US13/174,576 Expired - Fee Related USRE43545E1 (en) 2008-09-30 2011-06-30 Virtual skywriting

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12/242,560 Ceased US7966024B2 (en) 2008-09-30 2008-09-30 Virtual skywriting

Country Status (1)

Country Link
US (2) US7966024B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9179257B2 (en) * 2013-08-21 2015-11-03 Pitney Bowes Inc. Method and system for determining high precision geo-fencing using business property boundaries

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099757B2 (en) 2007-10-15 2012-01-17 Time Warner Cable Inc. Methods and apparatus for revenue-optimized delivery of content in a network
US8813143B2 (en) 2008-02-26 2014-08-19 Time Warner Enterprises LLC Methods and apparatus for business-based network resource allocation
US8427508B2 (en) * 2009-06-25 2013-04-23 Nokia Corporation Method and apparatus for an augmented reality user interface
US9766089B2 (en) * 2009-12-14 2017-09-19 Nokia Technologies Oy Method and apparatus for correlating and navigating between a live image and a prerecorded panoramic image
JP5686611B2 (en) * 2011-01-14 2015-03-18 株式会社ソニー・コンピュータエンタテインメント Information processing device
EP2666123A4 (en) * 2011-01-18 2017-03-08 RTC Vision Ltd. System and method for improved character recognition in distorted images
US20130009994A1 (en) * 2011-03-03 2013-01-10 Thomas Casey Hill Methods and apparatus to generate virtual-world environments
US9736434B2 (en) * 2012-06-25 2017-08-15 The Boeing Company Apparatus and method for displaying a view corresponding to a position of a mobile display device
US8862155B2 (en) 2012-08-30 2014-10-14 Time Warner Cable Enterprises Llc Apparatus and methods for enabling location-based services within a premises
CN103105993B (en) * 2013-01-25 2015-05-20 腾讯科技(深圳)有限公司 Method and system for realizing interaction based on augmented reality technology
US9066153B2 (en) 2013-03-15 2015-06-23 Time Warner Cable Enterprises Llc Apparatus and methods for multicast delivery of content in a content delivery network
US10368255B2 (en) 2017-07-25 2019-07-30 Time Warner Cable Enterprises Llc Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks
US9313568B2 (en) 2013-07-23 2016-04-12 Chicago Custom Acoustics, Inc. Custom earphone with dome in the canal
US20150161822A1 (en) * 2013-12-11 2015-06-11 Adobe Systems Incorporated Location-Specific Digital Artwork Using Augmented Reality
CN103929479B (en) * 2014-04-10 2017-12-12 惠州Tcl移动通信有限公司 Mobile terminal simulation of real scenes realizes the method and system of user interaction
CN105338479B (en) * 2014-06-09 2020-03-10 阿里巴巴集团控股有限公司 Information processing method and device based on places
US11540148B2 (en) 2014-06-11 2022-12-27 Time Warner Cable Enterprises Llc Methods and apparatus for access point location
US10028025B2 (en) 2014-09-29 2018-07-17 Time Warner Cable Enterprises Llc Apparatus and methods for enabling presence-based and use-based services
US9935833B2 (en) 2014-11-05 2018-04-03 Time Warner Cable Enterprises Llc Methods and apparatus for determining an optimized wireless interface installation configuration
US10799792B2 (en) * 2015-07-23 2020-10-13 At&T Intellectual Property I, L.P. Coordinating multiple virtual environments
US10327187B2 (en) 2015-12-04 2019-06-18 Time Warner Cable Enterprises Llc Apparatus and method for wireless network extensibility and enhancement
US9986578B2 (en) 2015-12-04 2018-05-29 Time Warner Cable Enterprises Llc Apparatus and methods for selective data network access
US9918345B2 (en) 2016-01-20 2018-03-13 Time Warner Cable Enterprises Llc Apparatus and method for wireless network services in moving vehicles
US10228775B2 (en) * 2016-01-22 2019-03-12 Microsoft Technology Licensing, Llc Cross application digital ink repository
US10492034B2 (en) 2016-03-07 2019-11-26 Time Warner Cable Enterprises Llc Apparatus and methods for dynamic open-access networks
US10586023B2 (en) 2016-04-21 2020-03-10 Time Warner Cable Enterprises Llc Methods and apparatus for secondary content management and fraud prevention
US10164858B2 (en) 2016-06-15 2018-12-25 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and diagnosing a wireless network
KR101773885B1 (en) * 2016-10-19 2017-09-01 (주)잼투고 A method and server for providing augmented reality objects using image authentication
EP3349099A1 (en) 2017-01-13 2018-07-18 Kai-Holger Brassel Immersive information and communication medium for very large user numbers
US20180300917A1 (en) * 2017-04-14 2018-10-18 Facebook, Inc. Discovering augmented reality elements in a camera viewfinder display
US10645547B2 (en) 2017-06-02 2020-05-05 Charter Communications Operating, Llc Apparatus and methods for providing wireless service in a venue
US10638361B2 (en) 2017-06-06 2020-04-28 Charter Communications Operating, Llc Methods and apparatus for dynamic control of connections to co-existing radio access networks
US10553031B2 (en) 2017-12-06 2020-02-04 Microsoft Technology Licensing, Llc Digital project file presentation
US11481997B1 (en) * 2018-03-09 2022-10-25 Snap Inc. Presentation of information from the sky
JP6521344B1 (en) * 2018-10-30 2019-05-29 プロファウンド・デザイン・テクノロジー株式会社 Virtual mistreatment processing system

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377793B1 (en) * 2000-12-06 2002-04-23 Xybernaut Corporation System and method of accessing and recording messages at coordinate way points
US6850695B1 (en) 1997-03-28 2005-02-01 Sharp Laboratories Of America, Inc. Natural language labeling of images using multiple words
US20050058435A1 (en) 2003-08-05 2005-03-17 Samsung Electronics Co., Ltd. Information storage medium for storing information for downloading text subtitles, and method and apparatus for reproducing the subtitles
US20050107952A1 (en) * 2003-09-26 2005-05-19 Mazda Motor Corporation On-vehicle information provision apparatus
US20050147298A1 (en) * 2003-12-29 2005-07-07 Eastman Kodak Company Detection of sky in digital color images
US7032182B2 (en) 2000-12-20 2006-04-18 Eastman Kodak Company Graphical user interface adapted to allow scene content annotation of groups of pictures in a picture database to promote efficient database browsing
US20060165291A1 (en) * 2001-06-29 2006-07-27 Eiji Atsumi Picture editing
US20060268007A1 (en) 2004-08-31 2006-11-30 Gopalakrishnan Kumar C Methods for Providing Information Services Related to Visual Imagery
US20070024527A1 (en) * 2005-07-29 2007-02-01 Nokia Corporation Method and device for augmented reality message hiding and revealing
US20070032244A1 (en) * 2005-08-08 2007-02-08 Microsoft Corporation Group-centric location tagging for mobile devices
US20070081090A1 (en) 2005-09-27 2007-04-12 Mona Singh Method and system for associating user comments to a scene captured by a digital imaging device
US20070104348A1 (en) * 2000-11-06 2007-05-10 Evryx Technologies, Inc. Interactivity via mobile image recognition
US7234106B2 (en) 2002-09-10 2007-06-19 Simske Steven J System for and method of generating image annotation information
US20070162942A1 (en) 2006-01-09 2007-07-12 Kimmo Hamynen Displaying network objects in mobile devices based on geolocation
US20070242131A1 (en) * 2005-12-29 2007-10-18 Ignacio Sanz-Pastor Location Based Wireless Collaborative Environment With A Visual User Interface
US20080064438A1 (en) 2004-09-10 2008-03-13 Telenor Asa Place Name Picture Annotation on Camera Phones
US20080122871A1 (en) 2006-11-27 2008-05-29 Microsoft Corporation Federated Virtual Graffiti
US20080137958A1 (en) 2006-12-06 2008-06-12 Industrial Technology Research Institute Method of utilizing mobile communication device to convert image character into text and system thereof
US20090054084A1 (en) * 2007-08-24 2009-02-26 Motorola, Inc. Mobile virtual and augmented reality system

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850695B1 (en) 1997-03-28 2005-02-01 Sharp Laboratories Of America, Inc. Natural language labeling of images using multiple words
US20070104348A1 (en) * 2000-11-06 2007-05-10 Evryx Technologies, Inc. Interactivity via mobile image recognition
US6377793B1 (en) * 2000-12-06 2002-04-23 Xybernaut Corporation System and method of accessing and recording messages at coordinate way points
US7032182B2 (en) 2000-12-20 2006-04-18 Eastman Kodak Company Graphical user interface adapted to allow scene content annotation of groups of pictures in a picture database to promote efficient database browsing
US20060165291A1 (en) * 2001-06-29 2006-07-27 Eiji Atsumi Picture editing
US7234106B2 (en) 2002-09-10 2007-06-19 Simske Steven J System for and method of generating image annotation information
US20050058435A1 (en) 2003-08-05 2005-03-17 Samsung Electronics Co., Ltd. Information storage medium for storing information for downloading text subtitles, and method and apparatus for reproducing the subtitles
US20050107952A1 (en) * 2003-09-26 2005-05-19 Mazda Motor Corporation On-vehicle information provision apparatus
US20050147298A1 (en) * 2003-12-29 2005-07-07 Eastman Kodak Company Detection of sky in digital color images
US20060268007A1 (en) 2004-08-31 2006-11-30 Gopalakrishnan Kumar C Methods for Providing Information Services Related to Visual Imagery
US20080064438A1 (en) 2004-09-10 2008-03-13 Telenor Asa Place Name Picture Annotation on Camera Phones
US20070024527A1 (en) * 2005-07-29 2007-02-01 Nokia Corporation Method and device for augmented reality message hiding and revealing
US20070032244A1 (en) * 2005-08-08 2007-02-08 Microsoft Corporation Group-centric location tagging for mobile devices
US20070081090A1 (en) 2005-09-27 2007-04-12 Mona Singh Method and system for associating user comments to a scene captured by a digital imaging device
US20070242131A1 (en) * 2005-12-29 2007-10-18 Ignacio Sanz-Pastor Location Based Wireless Collaborative Environment With A Visual User Interface
US20070162942A1 (en) 2006-01-09 2007-07-12 Kimmo Hamynen Displaying network objects in mobile devices based on geolocation
US20080122871A1 (en) 2006-11-27 2008-05-29 Microsoft Corporation Federated Virtual Graffiti
US20080137958A1 (en) 2006-12-06 2008-06-12 Industrial Technology Research Institute Method of utilizing mobile communication device to convert image character into text and system thereof
US20090054084A1 (en) * 2007-08-24 2009-02-26 Motorola, Inc. Mobile virtual and augmented reality system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Haritaoglu, Ismail, "Scene Text Extraction and Translation for Handheld Devices", Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, vol. 2, Dated: 2001, pp. II-408-II-413.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9179257B2 (en) * 2013-08-21 2015-11-03 Pitney Bowes Inc. Method and system for determining high precision geo-fencing using business property boundaries

Also Published As

Publication number Publication date
US20100081416A1 (en) 2010-04-01
US7966024B2 (en) 2011-06-21

Similar Documents

Publication Publication Date Title
USRE43545E1 (en) Virtual skywriting
US8661053B2 (en) Method and apparatus for enabling virtual tags
US8396246B2 (en) Tagging images with labels
US10230779B2 (en) Content provision system, information processing apparatus and content reproduction method
EP2207113B1 (en) Automated annotation of a view
US20150040074A1 (en) Methods and systems for enabling creation of augmented reality content
US8867779B2 (en) Image tagging user interface
EP2560145A2 (en) Methods and systems for enabling the creation of augmented reality content
US20190088030A1 (en) Rendering virtual objects based on location data and image data
US20100257252A1 (en) Augmented Reality Cloud Computing
US20180276882A1 (en) Systems and methods for augmented reality art creation
CN108829250A (en) A kind of object interaction display method based on augmented reality AR
CN103327246A (en) Multimedia shooting processing method, device and intelligent terminal
US20230388109A1 (en) Generating a secure random number by determining a change in parameters of digital content in subsequent frames via graphics processing circuitry
Li et al. An empirical evaluation of labelling method in augmented reality
Di et al. An Augmented Reality Design Method Based on ARKit for the Fusion of Hierarchical Traditional Media and Real Scenes
US9165339B2 (en) Blending map data with additional imagery
Arai et al. Pano UMECHIKA: A crowded underground city panoramic view system
CN116127102A (en) Image generation method, device, apparatus, storage medium, and program product
KR20160062770A (en) Mashup service method for augmented reality and mobile device applying the same

Legal Events

Date Code Title Description
FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034544/0001

Effective date: 20141014

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY