System and method for exchanging images
Abstract
A system and method for providing a peer-to-peer photo-sharing environment. The system includes: manual and automatic photo annotation at the client; periodic client-server synchronization; an index of client photos on a central server or a photo database that is resident on the central server, which is updated by the client-server synchronization function; end-user search functionality to search the centralized index or photo database; and transmission of the relevant photos to the client via an on-line image cache. In one embodiment, one client's new photos are automatically displayed on another client's computer (e.g., via screen saver or another mechanism).
Claims
exact text as granted — not AI-modified1 - 18 . (canceled)
19 . A computer-implemented process for sharing images comprising the process actions of:
receiving at a central server a search query formatted using annotation data describing an image from a requesting client, said server hosting a master index of all images available for sharing; searching said master index at said central server using annotation data provided in said search query and obtaining a result; and sending said search result from said central server to said requesting client.
20 . The computer-implemented process of claim 19 further comprising the process action of receiving feedback from said requesting client at said central server as to how well the images in the search result matched the search query.
21 . The computer-implemented process of claim 20 further comprising the process action of using a user-rating annotation to weight an image's relevance in future searches.
22 . The computer-implemented process of claim 19 wherein the process action of receiving a search query comprises at least one process action of:
receiving a search query from a requesting user said search query employing a user identifier, to locate all images owned by a certain user; receiving a search query from a requesting user said search query employing location and/or time, to locate all images created in a given time span or at a given location, or created in a given time span and a given location; receiving a search query from a requesting user said search query employing an event name; and receiving a search query from a requesting user said search query employing a keyword.
23 . The computer-implemented process of claim 22 wherein the process action of receiving a search query employing an event name further comprises the process actions of:
creating a table associating event name with location and time said event occurred; processing a search query using location and time to identify said associated event name; and processing a search query using event name to identify event time and location.
24 . The computer-implemented process of claim 22 wherein the process action of receiving a search query employing a keyword further comprises at least one of:
using automatic keys identifying if the image was taken indoor versus outdoor, and using automatic keys identifying if the image was depicts something natural versus something man-made.
25 . The computer-implemented process of claim 19 wherein the search result includes at least one of:
annotation data associated with each image found in the search result; a thumbnail view of the image found in the search result; a relevancy score of the image to the search query; and an indication as to whether the image is available on a network, and if not the last time it was available.
26 . The computer-implemented process of claim 19 wherein the process action of returning a search result further comprises a process action of using annotation data to limit access to an image identified in a search as meeting the search criteria, by not returning said image to said requesting client.
27 . The computer-implemented process of claim 19 further comprising the process actions of:
receiving a request from said requesting client for at least one desired image identified in said search of said central server's master index; sending a notification from said central server to a client hosting said at least one desired image to load said requested image to an on-line cache; loading said desired image to an on-line cache by said hosting client; downloading said requested image from said cache by said requesting client.
28 . The computer-implemented process of claim 19 further comprising the process actions of:
receiving a request from said requesting client for at least one desired image identified in by said search of said central server's master index; retrieving said at least one desired image from a master image database residing on said central server and correlating with said master index; sending said at least one desired image to said requesting client from said central server.
29 . The computer-implemented process of claim 19 further comprising the process actions of:
receiving a request from said requesting client for at least one desired image identified in said search of said central server's master index to be sent to a receiving client; retrieving said at least one desired image from a master image database residing on said central server and correlating with said master index; formatting said at least one desired image to automatically appear on said receiving client's computer display; sending said at least one desired image to said receiving client from said central server.
30 . The computer-implemented process of claim 29 wherein said formatted at least one desired image appears as a screen-saver on a computer display of said receiving client.
31 . The computer-implemented process of claim 19 further comprising the process actions of:
receiving a request from said requesting client for at least one desired image identified in by said search of said central server's master index; verifying that said requesting client and a client hosting said at least one desired image are both on-line on a network; sending a notification from said central server to a client hosting said at least one desired image to send said requested image to said requesting client.
32 . The computer-implemented process of claim 31 further comprising the process action of said hosting client sending said at least one desired image to a requesting client.
33 . The computer-implemented process of claim 19 further comprising the process actions of:
adding and removing images from the master index to coincide with changes made to a local index of images belonging to a client hosting said images using a modification log depicting changes made to said local index of said hosting client; and updating said annotation data of images listed on said master index using said modification log.
34 . A computer-readable medium having computer-executable instructions for transferring images, said computer executable instructions comprising:
inputting images at a first client; annotating said images with metadata; creating a local index of said images and local database of said images at said first client; synchronizing said first client's local index with a master index of a central server, said master index comprising all images available for sharing. searching by a second client of said central servers master index for a particular image using said metadata; returning a search result from said central server to said second client; and coordinating the transfer of a desired image found in said search result from said first client to said second client.
35 . The computer-readable medium of claim 33 wherein the computer-executable instructions for returning a search result further comprises a process action of using metadata to limit access to an image identified in a search as meeting the search criteria by not returning said image in said search result.
36 . The computer-readable medium of claim 34 wherein the computer-executable instructions for coordinating said transfer of the image further comprises:
requesting at least one image by said second client from said central server's master index; sending a notification by said central server to said first client to load said requested image to an on-line cache; loading said requested image to said on-line cache by said first client; downloading said requested image from cache by said second client.
37 . A system for transferring files, the system comprising:
a general purpose computing device; and a computer program comprising program modules executable by the computing device, wherein the computing device is directed by the program modules of the computer program to, input files at a first client; annotate said files at said first client; create a local index of said files and a local database of said files at said first client; synchronize said first client's local index with a master index of a central server, said master index comprising all files available for sharing; search by a remote client of said central server's master index for a particular file using said annotated data; return a search result from said central server to said remote client; and transfer a desired file found in said search result to said remote client.
38 . The system of claim 37 wherein the computer module to annotate said file further comprises sub-modules to:
locate the same file as said file in other locations; extract all annotation data from said file located in said other locations; annotate said file with said annotation data extracted from said file in said other locations.
39 . The system of claim 37 wherein the computer module to return a search result further comprises a sub-module to use annotation data to limit access to a file identified in a search as meeting a search criteria by not returning said image data in said search result.
40 . The system of claim 37 wherein the computer module to transfer a file further comprises sub-modules to:
request at least one file by said remote client from said central server's master index; send a notification from said central server to said first client to load said requested file to an on-line cache; load said requested file to said on-line cache by said first client; download said requested file from said on-line cache by said remote client.
41 - 54 . (canceled)Join the waitlist — get patent alerts
Track US2005190273A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.