What we claim is:
1. A method of processing image data in an image processing system comprising image data storage means, memory means for storing instructions and a data structure representing processing to be performed on source image data in said image storage means, processing means for performing said image processing, and said instructions define a sequence of operations to be performed in order to process said source image data in accordance with said data structure, wherein
said data structure includes a plurality of image processing nodes,
processing nodes are connected to each other to define a processing pipeline for image data,
including the steps of:
processing image data in response to said data structure,
storing image data associated with an intermediate node in said data structure in response to an identification of a node cache preference, and
subsequently processing image data in response to parts of said data structure not cached by said intermediate node.
2. A method according to claim 1, wherein said node cache preference is determined with reference to a user preference for a node cache.
3. A method according to claim 1, wherein said node cache preference is determined with reference to the remaining data storage capacity of said image data storage means.
4. A method according to claim 1, wherein said image processing system further comprises monitor means arranged to receive image signals from a graphics card connected to said processing means, comprising the additional steps of:
displaying a representation of said data structure on said monitor, including a representation of an intermediate process node;
displaying a graphical user interface for facilitating user interaction with said data structure representation; and
updating said data structure in response to a user manipulation of said representation defining a node cache preference.
5. A method according to claim 4, wherein said node cache preference for said intermediate process node is indicated in said data structure representation by a state of part of a representation of said intermediate node.
6. A method according to claim 1, wherein said node cache preference is a read only preference.
7. A method according to claim 1, wherein said node cache preference is a read write preference.
8. A method according to claim 1, wherein a comparison is made between parameters for a plurality of read or read write cached nodes in order to identify a node cache preference for an individual node.
9. A method according to claim 8, wherein said parameters include a measure of cache effectiveness for respective nodes.
10. A method according to claim 9, wherein said parameters are weighted in order to determine a cache priority.
11. Apparatus for processing image data, comprising image data storage means, memory means for storing instructions and a data structure representing processing to be performed on source image data in said image storage means, processing means for performing said image processing, and wherein said instructions define a sequence of operations to be performed in order to process said source image data in accordance with said data structure, in which
said data structure includes a plurality of image processing nodes,
said processing nodes are connected to each other to define a processing pipeline for image data, and
said instructions are executed by said processing means to perform the steps of:
processing image data in response to said data structure,
storing image data associated with an intermediate node in said data structure in response to an identification of a node cache preference, and thereafter
processing image data in response to parts of said data structure not affecting image data that has been cached by said intermediate node.
12. Apparatus according to claim 11, wherein said node cache preference has been determined with reference to a user preference for a node cache.
13. Apparatus according to claim 11, wherein said node cache preference has been determined with reference to the remaining data storage capacity of said image data storage means.
14. Apparatus according to claim 11, wherein said image processing system further comprises monitor means arranged to receive image signals from a graphics card connected to said processing means, and said instructions are executable on said processing means to further facilitate additional steps of:
displaying a representation of said data structure on said monitor, including a representation of an intermediate process node;
displaying a graphical user interface for facilitating user interaction with said data structure representation; and
updating said data structure in response to a user manipulation of said representation defining a node cache preference.
15. Apparatus according to claim 14, wherein said node cache preference for said intermediate process node has been indicated in said data structure representation by a visual state of part of a representation of said intermediate node.
16. Apparatus according to claim 11, wherein said node cache preference is a read only preference.
17. Apparatus according to claim 11, wherein said node cache preference is a read write preference.
18. Apparatus according to claim 11, wherein a comparison has been made between parameters for a plurality of read or read write cached nodes in order to identify a node cache preference for an individual node.
19. Apparatus according to claim 18, wherein said parameters include a measure of cache effectiveness for respective nodes.
20. Apparatus according to claim 19, wherein said parameters are weighted in order to determine a cache priority.
21. A computer-readable medium having computer-readable instructions executable by a computer configured as part of an image processing system that includes display means and image storage means, said computer comprising memory means for storing said instructions and a data structure representing processing to be performed on source image data in said image storage means, processing means for performing said image processing, where said instructions define a sequence of operations to be performed to process said source image data in accordance with said data structure, wherein
said data structure includes a plurality of image processing nodes,
processing nodes are connected to each other to define a processing pipeline for image data,
and said instructions are executable by said processing means to perform the steps of:
processing image data in response to said data structure,
storing image data associated with an intermediate node in said data structure in response to an identification of a node cache preference, and
subsequently processing image data in response to parts of said data structure not cached by said intermediate node.
22. A computer-readable medium according to claim 21, having instructions such that said node cache preference is determined with reference to a user preference for a node cache.
23. A computer-readable medium according to claim 21, having instructions such that said node cache preference is determined with reference to the remaining data storage capacity of said image data storage means.
24. A computer-readable medium according to claim 21, having instructions executable on said processing means to perform steps of:
displaying a representation of said data structure on said monitor means, including a representation of an intermediate process node;
displaying a graphical user interface for facilitating user interaction with said data structure representation; and
updating said data structure in response to a user manipulation of said representation defining a node cache preference.
25. A computer-readable medium according to claim 24, having instructions such that:
said node cache preference for said intermediate process node is indicated in said data structure representation by a state of part of a visual representation of said intermediate node.
26. A computer-readable medium according to claim 21, including instructions for configuring said node cache preference to be a read only preference.
27. A computer-readable medium according to claim 21, including instructions for configuring said node cache preference to be a read write preference.
28. A computer-readable medium according to claim 21, including instructions for performing a comparison between parameters for a plurality of read or read write cached nodes, and thereupon identifying a node cache preference for an individual node.
29. A computer-readable medium according to claim 28, including instructions for performing said comparison wherein said parameters include a measure of cache effectiveness for nodes.
30. A computer-readable medium according to claim 29, including instructions such that said parameters are weighted in order to identify a cache priority.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A system for social routing, comprising:
a traveler-registration module for identifying a plurality of travelers;
a destination-setting module for designating a destination where the travelers intend to meet at a specific time;
a criteria-gathering module for determining, for each specific traveler, an initial set of transport options, a communication channel, a starting point, and a travel criteria;
an initial route-generating module for creating an initial route for each of the travelers, comprising:
a mode of transportation-selecting submodule for selecting a mode of transportation from the initial transport options based on the travel criteria;
a route-selecting submodule for selecting a route based on the mode of transportation to get the traveler from the starting point to the destination;
an initial route-setting submodule for setting the selected route as the initial route for the traveler; and
an initial route-deciding submodule for determining a start time for the traveler based on the initial route;
a route-calculating module for comparing, for at least one of the travelers, the travel criteria for that traveler to the initial routes of one or more of the remaining travelers and revising the initial route of that traveler based on the comparison;
a notification module for notifying one or more of the travelers of the revised route through the communication channel;
a monitoring module for monitoring a progress of each of the travelers along the routes; and
a revision module for revising one or more of the routes based on the progress.
2. A system according to claim 1, further comprising:
a condition monitoring module for obtaining data regarding condition along the routes,
wherein the routes revised based on the progress are also revised based on the data.
3. A system according to claim 1, wherein the travel criteria comprises one or more of a cost of travel, preference for another traveler, preference for the mode of transportation, tolerance for travel time deviation, and flexibility of schedule.
4. A system according to claim 1, further comprising:
a recommendation module for recommending the route selected based on the mode of transportation to one of the travelers; and
an acceptance module for receiving an acceptance of the recommended route,
wherein the selected route is set as the initial route upon the receipt of the acceptance.
5. A system according to claim 1, further comprising:
a communication module for forwarding one or more messages between one or more travelers and the destination using one or more communication channels.
6. A system according to claim 1, further comprising:
a tracking device associated with one or more of the travelers; and
a location-determination module for determining a physical location of the one or more travelers using the tracking device.
7. A system according to claim 1, further comprising:
A message module to provide a message based on the progress of one or more of the travelers to the destination and one or more of the remaining travelers.
8. A system according to claim 1, further comprising an updater comprising:
a destination monitor for detecting a change of availability of the destination;
a destination alternator for locating an alternative destination upon the detection;
wherein a new route for each of the traveler is generated and an information regarding the new route is sent to each of the travelers via the communication channel, after the destination becomes unavailable.
9. A system according to claim 1, further comprising:
a returning route-recommendation module for suggesting to at least one of the travelers a route to return to the starting point for that traveler.
10. A system according to claim 1, further comprising a parking-assistant module comprising:
a parking spot-finding submodule for identifying a plurality of parking spots in a proximty to the destination,
a parking spot status submodule for obtaining data regarding the availability of the spots,
a parking spot-selecting submodule for selecting one of the parking spots based on the availability and the specific time; and
a parking spot-notification submodule for notifying one of the travelers regarding the selected spot.
11. A computer-implemented method for social routing, comprising the steps of:
identifying a plurality of travelers;
designating a destination where the travelers intend to meet at a specific time;
determining, for each specific traveler, an initial set of transport options, a communication channel, a starting point, and a travel criteria;
creating an initial route for each of the travelers, comprising:
selecting a mode of transportation from the initial transport options based on the travel criteria;
selecting a route based on the mode of transportation to get the traveler from the starting point to the destination;
setting the selected route as the initial route for the traveler;
determining a start time for the traveler based on the initial route;
for at least one of the travelers, comparing the travel criteria for that traveler to the initial routes of one or more of the remaining travelers and revising the initial route of that traveler based on the comparison;
notifying one or more of the travelers of the revised route through the communication channel;
monitoring the progress of each of the travelers along the routes;
revising one or more of the routes based on the progress;
notifying each traveler of the revision based on the progress through the communication channel.
12. A method according to claim 11, further comprising the steps of:
obtaining data regarding condition along the routes,
wherein the routes revised based on the progress are also revised based on the data.
13. A method according to claim 11, wherein the travel criteria comprises one or more of a cost of travel, preference for another traveler, preference for the mode of transportation, tolerance for travel time deviation, and flexibility of schedule.
14. A method according to claim 11, further comprising the steps of:
recommending the route selected based on the mode of transportation to one of the travelers; and
receiving an acceptance of the recommended route,
wherein the selected route is set as the initial route upon the receipt of the acceptance.
15. A method according to claim 11, further comprising the step of:
forwarding one or more messages between one or more travelers and the destination using one or more communication channels.
16. A method according to claim 11, further comprising the steps of:
associating a tracking device with one or more of the travelers; and
determining a physical location of the one or more travelers using the tracking device.
17. A method according to claim 11, further comprising the step of:
providing a message based on the progress of one or more of the travelers to the destination and one or more of the remaining travelers.
18. A method according to claim 11, further comprising the steps of:
detecting a change of availability of the destination;
locating an alternative destination upon the detection;
generating a new route for each of the travelers; an
providing the new route to the travelers through the communication channels.
19. A method according to claim 11, further comprising the step of:
suggesting to at least one of the travelers a route to return to the starting point for that traveler.
20. A method according to claim 11, further comprising the step of:
identifying a plurality of parking spots in a proximity to the destination;
obtaining data regarding the availability of the spots;
selecting one of the parking spots based on the availability and the specific time; and
notifying one of the travelers regarding the selected spot.