the following detailed description is of the best currently contemplated modes of carrying out the invention . the description is not to be taken in a limiting sense , but is made merely for the purpose of illustrating the general principles of the invention , since the scope of the invention is best defined by the appended claims . broadly , the present invention provides systems and methods for organizing multimedia files using an event - centric approach . the present invention may be used to organize and manage media files using event features extracted from the files . to achieve this kind of approach to media management , an event - centric media management ( emma ) architecture is proposed for managing media assets . events may be considered by some a natural for organizing and managing human experience and their accompanying media assets . the media assets captured during a specific event describe the experience and provide evidence that a specific event happened . the emma system supports multiple sources of different media data . the information collected from these sources may be organized and stored according to events . the user can then explore these events using a browsable interface including a searchable environment and use these events to author multimedia presentations . the interface provides multiple views for the different facets of events . the emma system is designed to be flexible and extensible such that it can be applied in many application domains . events can have multiple participants who are in a social network . the relations between participants in the network can be used to find which users may be interested in an event or to share an event with a clique in a social network . since the participants of an event are a descriptor of an event , the social context of the event is inherently captured by an event - based system . events provide an elegant abstraction of the real world that makes it easier to manage applications dealing with real world data . events encapsulate the semi - structured nature of this type of data and they represent the structure of human experience . research in cognitive neuroscience and philosophy has shown that humans think in terms of events . thus the event - centric approach can be considered intuitive and a natural for systems that connect humans to real world data . in contrast to the media - centric approach , the event - centric approach puts the actual experience of the users in terms of events in the focus . an event describes among others when and where an experience occurred and who participated in this experience . media files may be considered as documentary support for an event and any media data of any type may be compatible with the system . the event - centric application , thus , is media aware but also media agnostic . events can contain multiple media files of different types . event - centric systems can inherently support the different media types as well as other kinds of sensor data and thus , are a suitable candidate for unified indexing of cross - media types . this is in contrast to many media - centric systems which when considering more than one media type , index each media type separately . referring to fig1 , a generic event model e 101 is proposed that is flexible and extensible to diverse media applications to construct an environment for building event relationships . events in the generic model allow descriptors of arbitrary complexity including event aspects such as spatial , temporal , structural , informational , experiential , and causal . the event model covers not only multimedia and sensor data , but also concepts to which events are related . the model allows for use of events and descriptors in the specific application domains . event model e 101 defines a common data structure for managing and storing events . one exemplary model has been designed considering the events used in various domains like research publications , personal media , meetings , enterprise collaboration and sports . e functions by defining the common characteristics of all events and is necessarily abstract . e then , should be adapted to the needs of each event - based application in which it is used . the primary objects in e 101 are separated in events 120 , descriptors 125 , and entities 130 . events subsume telic events 165 , ( atelic ) activities 135 , and constellations 145 . they are first - class entities and do not need any other supporting data . telic events are tending toward an end or outcome whereas the atelic activities or short activities are describing processes . a constellation represents an association of arbitrary complexity between two or more occurrences . since such a discovered association may be a significant occurrence itself , constellations are considered as event - like . constellations may be used , e . g ., to model composite events by associating the component events . such composite events may contain additional descriptors to further define the type of the composition . the descriptors 125 of an event are second - class objects existing to describe an event . each descriptor may describe one aspect of an event . e allows for an attribute value 190 which may be an arbitrary object . this may be used to add a descriptor of any type to an event . applications that use the event database may extend the generic model by providing specific types of attribute values . e 101 also allows event data to be linked to external references called entities 130 . entities are of two types , concepts 170 and sensor data 140 . concepts may be attached to an external knowledge reference source 185 and may describe some abstract entity in the domain of the event . events 120 can also be linked to concrete physical data using the sensor data entity . sensorreferences 150 to sensor data can store among other items , access information , media type , and size . the event structures provided by e 101 are abstract . an event type is a specific structure of the relationships between a set of classes . the event type describes an event 120 and its associated descriptors 125 , their types and the constraints on the values of those descriptors . consequently , an event of a given event type are the objects of the classes defined in the event type within the corresponding structure of relationships . thus the event can be said to be an ‘ instance ’ of the event type . event types allow defining relationships between different events in a concrete domain . they can be used to build hierarchies and ontologies . e can provide defining inheritance relationships between different event types . for example , an event type “ vacation ” can be specialized among others towards a “ beach holiday ” event type and “ activity holiday ” event type . for example , a one week holiday on hawaii is an instance of the “ beach holiday ” event type whereas a safari tour is an “ activity holiday ”. there can be other kind of relationships such as before , after , same participants , and others . inheritance between event types is a means to structure the events that can happen in a specific domain . referring to fig1 and 2 , a definition of an atomic event type 200 is shown ( fig2 ). atomic events 210 which are derived from a telicevent 165 , are the simplest form of events of which all other , more complex events are composed . the descriptors 125 of atomic events are real world data and metadata . thus , atomic events can be considered factual . an atomic event can be linked to sensor data 140 . thus , in the domain of media management an atomic event can be linked to a media asset . for reasons of convenience , e allows the storage of multiple versions of the same media element in sensorreference 150 objects . these sensorreference objects point to the actual media asset and may differ , for example , in resolution and storage location . this allows applications to , for example , use a thumbnail of an image for fast display of events and using a full resolution of the same image for processing . or , if a specific media storage location is not accessible , it can use an alternate storage . for reasons of clarity , the classes common to the generic event model shown in fig1 are omitted in this and all further event type diagrams . referring to fig3 , a definition of the composite event type 300 is shown . constellations 145 are one powerful means to define events . in order to harness this power while ensuring utility , the constellation class must be extended and restricted . composite events 320 are just such an extension of a constellation that can be used to express the “ part - of ” relationship between events . composite events can be distinguished based on their level of complexity . simpler , application - independent compositions are called elemental events . events that are semantically recognized by the users of the application are called domain events . application - specific composite event types can be defined by enumerating the event types of which it is composed as well as the relations between them . in general , events can be related in composite events by attributes that allow for defining part - of relationships such as time , location , and participants . the latter are either people or objects . in constellations , events can also be linked by dependence or causal relationships . dependence exists when one event must occur for another to occur , e . g ., ‘ eat cake ’ can only happen subsequently to ‘ bake cake ’. causal exists when an event occurrence ensures another event , e . g ., ‘ kick ball ’ causes ‘ ball moves ’. compositions of media to a multimedia presentation such as a slideshow can be considered a media - centric attempt to create such domain events . however , abstracting from the actual media data to the events to which the media is associated , the composition of coherent multimedia presentations can also be considered as composing events . the event model allows us to formalize the semantics that lead to such compositions . with reference to fig4 , in the context of media , a uml class diagram 400 of generic event model e 101 specialized for media management is shown . in order to provide support for an event - centric media management application , the generic event model e defined in the previous section must be extended and specialized towards a media event model 450 . this is conducted by defining application - specific event types for media management and by determining common descriptors for these media event types . the simplest events in the domain of media management are the atomictextevent 440 , atomicaudioevent 470 , atomicvideoevent 460 , and atomicphotoevent 480 that occur when a media asset is captured . they are derived from the common superclass mediasensorevent 420 , which is an atomic event provided by the generic event model e . since a popular form of personal media storage uses photographs , the following description will concentrate on the storing of photo events . while the present invention is described for use in the context of photographic media , it will be understood that other media type applications can follow the same modeling using analogous descriptors . referring to fig5 , some descriptors may be common to all events of an application . as depicted by the class diagram of common descriptors 500 for media events , all events may contain participant people and objects as well as comments . all events may also contain tags , either manual or automatically generated . contextual tag attributes can be organized into tag classes such as temporaltag 560 , spatialtag 570 , and informationaltag 580 to define a concept 170 . content information such as timevalue 520 , locationvalue 530 , comment 540 , and participants 550 , which include can subclasses item 554 and person 552 contain data contributing to an attributevalue 190 . these tags may represent conceptual times like ‘ christmas ’ or locations such as ‘ new york city ’. using the elements of the generic model , these tags may be stored in references to concepts that link to external knowledge sources like getty &# 39 ; s thesaurus of geographic names . classes such as comments , participants , and items are created to store their corresponding attributes . referring to fig6 , an atomic photo event type 600 is shown . the simplest event types are the atomic media event types . they describe the creation of a sensor data 140 element and its metadata . atomic video , audio and text event types are defined similarly . the atomic photo event type 600 contains metadata specific to photographs . for this application , context information is stored extracted from exif tags , low level content information like color histograms and textures , and high level content information in the form of visual characteristics like visual words . since the type of information stored in exif tags is all strings , contextinformation 610 stores name - value pairs . lowlevelcontentinformation 640 stores vectors of real number that may represent color or texture characteristics . visualinformation 620 stores vectors of ids of the visual characteristics . when determined to relate to one another after derivation from a constellation , a composition of events may be stored in a class . referring back to fig4 , one such class is the mediaeventcomposition 410 , which is derived from compositeevent 320 of the generic event model e 101 . in general , a constellation may contain any event , for example , an atomic event , a composite event , and a constellation . however to make sure that only media events an interface called mediainterface 430 is defined . both mediasensorevent 420 and mediaeventcomposition implement it . then the composition may be constrained to only those classes that implement mediainterface , in other words , media events . referring to fig7 , an illustration of such an event application uses an example of a composite event type such as a birthday party event type 700 . it has attributes specific to a birthday party , e . g ., the person whose birthday is being celebrated is held in class person 552 . other attributes are objects like cake and candles that are characteristics of such events associated with the class item 552 . an embodiment of the emma architecture 900 is shown in fig9 . it consists of several layers , each realized as distinct software component . this allows for an easy substitution of a single layer without affecting the functionality or implementation of the other layers . this architecture of our media management application is described in the following along its layers from bottom to top . the server side 960 of the architecture may be composed of two layers — the storage layer 940 and the service layer 930 . the storage layer may provide for three different databases : the media eventbase 810 for storing and managing media events , a media assets database 947 for storing and managing the media data ( assets ) associated with the events , and a user data database 945 for storing and managing user data such as login , password , and access rights to events . this layer also includes three wrappers that abstract from accessing the databases and provide services to the upper layer . the active record framework 942 wrapper on the left hand side abstracts from accessing the media events stored in the media eventbase database mysql . it allows the service layer to ingest , retrieve , and manipulate events . in the middle , another active record framework 944 wrapper abstracts from accessing the user data . for storing the user data , another mysql database is used ( the user data database ). the events stored in mysql are converted into objects by using active record . active record implements an interface , which is used by the action webservice and mediaedb model 932 component . by this , the storage layer may change if necessary without touching the upper layers . the filesystem wrapper 946 in the right hand side abstracts from accessing media content assigned to the events . thus , the media data that are describing the events are stored separately from the media eventbase database . the reference between the events and the media data is built by using uris 954 ( universal resource identifier ) pointing to the media content . this allows the use of different media storage mechanisms without changing the event server . each of these storage mechanisms could be optimized for a specific media type . a file system may be used for storing the media content . this means that all the media content associated with events are stored in distinct folders of a filesystem such as a tomcat web server 936 . on top of the storage layer 940 resides the service layer 930 . this layer provides access to the media events , userdata , and media assets from the internet 950 via the action webservice and mediaedb model 932 component . it implements the media event model and provides via action webservice functionality such as storing atomic events and composite events , retrieving events , deleting events , and updating events . this component is implemented by using an internet application framework such as ruby on rails . the functionality is provided by way of example clients exchanging the event information in form of xml documents using for example , wsdl 952 web services . for access control and authorization purposes , the action webservice and mediaedb model 932 component also connects to the action webservice and user data model component 934 . the tomcat and media model 936 component provide access to the sensor data of the media events , i . e ., the media data files such as photos and videos . like the component for accessing the media events , the tomcat and media model component also use the action webservice and user data model component for access control and authorization purposes . the client side 970 of the emma architecture may include a communication layer 920 and an application layer 910 . the communication layer may be provided by the media edb communication client component 925 . the component 925 may control the communication between the upper application layer and the lower service layer 930 . the overall goal of the communication layer is to provide an easy to program interface for accessing the media eventbase 810 , userdata database 945 , and media assets storage 947 . the media edb communication layer converts media events retrieved in a markup language such as xml format from the active webservice and media edb 932 component into java objects and vice versa . at the same time , it allows clients to access user data and media storages . for accessing both , it can provide and request appropriate user login and password information . thus , the media edb communication layer unifies the access to the media events , user data , and media assets for the event - centric media management functionalities of the application layer . referring to fig8 - 10 , the application layer 910 may provide the user interface of the emma architecture and consists of three components for event digestion 815 , event browsing and annotation 830 , and event presentation 880 . these components correspond to the three phases of the media event management cycle 800 ( fig8 ). each component may have several subcomponents as the architecture of the application layer in fig1 shows . initially , a batch of media assets is converted into atomic media events through the converter component 1310 . these atomic media events go through an event digestion manager 1300 that enriches them with metadata such as exif , classifications , and tags . in addition , event clustering is conducted ( either on the initial batch of atomic media events only or on all media events stored in the eventbase ). the event browsing and annotation manager 1200 component allows for interactively exploring the media eventbase 810 . it is supported by six view components each providing a distinct view on the media events . example views are spatial 1210 , time 1220 , people 1230 , items 1240 , activities 1250 , and tags 1260 . finally , the event presentation is provided by the components for event query 855 and media assembly 890 that select events from the media eventbase and organizes the associated media assets into a multimedia album 860 . this album is transformed by the transformation 1100 component into contemporary presentation formats like smil , svg , and flash and is delivered to the users for consumption . finally , the events used for the multimedia album create a new composite event that is stored back in the media eventbase . referring to fig8 , an exemplary event management cycle 800 is depicted . it consists of several processes , organized in three phases of event digestion 815 , event browsing and annotation 830 , and event presentation 880 . in the phase of event digestion , users initially add new media content to the system such as a set of new photos taken or video clips recorded . for each media asset , a new atomic media event 820 is created and ingested into the media eventbase 810 . these atomic events are digested and enriched with metadata by applying enrichment processes such as feature extraction 865 , classification 870 , and tagging 875 . in the event browsing and annotation phase , the initially created atomic events are assembled into composite events . here , among others , techniques such as spatial clustering and temporal clustering may be applied in the clustering process 835 to group the atomic events into composite events 850 . in addition , clustering among other dimensions can be conducted such as color histogram or face detection . the event browsing process 840 allows for interactively exploring the media eventbase , manually refining these composite events and defining new ones . in the event annotation process 845 , users assign an event type to the composite event , e . g ., birthday party , dinner , or meeting . in addition , the parameters of the type assigned are filled in with concrete values . in the event presentation 880 phase , the media events and their associated media assets are leveraged for creating multimedia event albums 860 . multimedia albums are an extension of traditional page - based photo books with support for continuous media types such as audio and video and navigational interaction in form of hyperlinks . for creating a multimedia album , appropriate media events are first selected by the event query process 855 . these can be atomic ones as well as composite events . then , the associated sensor data of the media events , the media elements are assembled into new multimedia content in the media assembly process 890 . in one example , the media elements are arranged by time and space into a coherent multimedia presentation , such as a media album . the multimedia presentation is delivered to the end user for consumption by the delivery and presentation process 885 . the events used for assembling such a multimedia presentation can be considered as a new composite event . thus , this event is stored back in the event database together with the multimedia presentation as its sensor data . referring to fig8 and 14 , the first phase of the generic media event cycle ingests and digests new atomic events scanning for attributes . during the event digestion 865 phase , files can be enriched with further metadata . the users select via a file dialog a folder with media content that shall be ingested as atomic events into the application . the application scans the files in this folder and applies the processes of feature extraction 865 , classification 870 , and tagging 875 on it . when new media assets are ingested as atomic events into the eventbase 810 , some feature extraction algorithms are applied to enhance the events with basic metadata ( step 1410 ). the media assets are processed to extract their context information and content information ( step 1415 ). for example , for photos , the content information is in the form of color histogram and texture context information is retrieved from the exif headers which contain among other data , camera settings , time , and location . based on the results of the feature extraction , the ingested atomic media events may be classified ( step 1420 ). for example , for atomic photo events image retrieval and classification based on the automatic camera settings retrieved from the exif headers may be used . with automatic camera settings the optical parameters such as focal length , aperture , and exposure time may be retrieved . this classification may be conducted by applying unsupervised learning algorithms to cluster images ( step 1425 ). the optical parameters of a particular photograph are used to compute a light metric and its depth of field . a training set of 2500 photographs were hierarchically clustered using these two parameters . these photographs were also manually annotated with 50 overlapping classes . the optical characteristics were able to differentiate many classes . the classes with the highest likelihood for a given photo are used to annotate the corresponding event . these classes are provided to the user in the next step as suggestions that the user may ratify or reject . having conducted feature extraction and tagging , there is an optional tagging process of the atomic media events . tagging may include manually adding keywords to the atomic events ( step 1430 ). the user may also accept or reject the classes automatically detected in the classification step ( step 1435 ). tagging information added to the events includes describing the activity shown in the event , location of the event , and other context data . tags for describing different aspects of events are stored separately , i . e . location tags are clearly differentiated from informational tags that describe the content of media . once the atomic media events are successfully ingested into the media event database and the event is digested in terms of having added content information and context information , the atomic events are passed to the next phase of the media event cycle . in addition to interactively exploring and annotating the media events , the purpose of this phase is to determine further composite events . this phase is the composite event detection and takes care of creating composite events of the just ingested atomic events . with each set of newly ingested atomic events , at least one composite event is created . this composite event comprises the ingested atomic events as its parts . these composite events are determined manually , semi - automatically , or even fully automatically . while focus is demonstrated on the manual and semi - automatic determination and creation of semantically valid composite events , it will be understood that automatic determination and creation is also contemplated . a semi - automatic creation of composite events is conducted in the clustering process where atomic media events are grouped according to specific dimensions such as time and space into clusters ( step 1440 ). in practice , events are hierarchical and range from elemental level to domain level . these clusters eventually determine hierarchical composite events . the events determined are generally of high - level and time information is an important dimension used to calculate them . therefore , some exemplary algorithms are designed based on time information . in addition to the high - level domain event detection , low - level elemental event detection may be supported . in elemental event detection , an approach includes combining both time information and visual information in the form of a color histogram in event detection . the time difference and visual dissimilarity between two successive photo events are compared and then combined together . then a hierarchical agglomerative clustering method is used to generate event structure . at different levels , the weights of time difference and visual dissimilarity vary accordingly . on a domain level , a spatial clustering of the events based on gps information may be pursued . as initially introduced , the clustering process is semi - automatic . in other words , after applying various algorithms to cluster the events along different dimensions , the automatically calculated clusters are presented to users who may choose to modify and save them . once the users save these clusters , new composite events are created for each cluster . this procedure can then be repeated to generate composite events at different levels of granularity . once composite events have been determined in the clustering process , the events are presented to the user in a searchable environment ( step 1445 ). the users can navigate through the events in the database in a blended querying and browsing approach on a screen interface with the searchable environment . this means that while the users are browsing through the events displayed on the screen ( step 1450 ), queries on the eventbase 810 are executed on in the background ( step 1455 ) to populate and present the browsing results . both steps , the querying and browsing , are conducted in small turns . thus , the users of our media management application perceive the navigation through our database as smoothly navigating through the events . the users can browse through the events according to different querying dimensions . these dimensions are for example , the events &# 39 ; time , location , participants , used or displayed items , activities , and tags . for each of the querying dimensions , a corresponding browsing view is constructed ( step 1460 ). for example , referring to fig1 , location events are visualized using a map . the map can be searched by either manually panning the map or searching for locations by name . composite media events are shown on the map as polygons that outline their spatial extent . atomic media events of a composite media event are shown as icons within the polygons . clicking on an event &# 39 ; s thumbnail brings up other details like participants and time . referring to fig1 , if a time view is selected , a timeline is chosen to present the events in chronological order . it also shows the events one level above and one level below the current media event to establish its context . the events &# 39 ; details , the media assets related to them , and their component events are displayed above the timeline . in another view , for example , presenting the relations of the participants in events can be visualized employing a social network graph . another convenient aspect of the user interface is the provision for a blended querying and browsing in the eventbase 810 by transitioning between the different views . for example , once a user has selected a time span in the timeline - based view of the events , he or she can switch to a map presentation of the events in this time span . once in the map - based view , the users can click on one of the events to get information about the activity , items , or participants in this event . thus , the querying and browsing process effects an intelligent and smooth integration of the different views on events in one interface . the blended browsing and querying is not only used for exploring the eventbase 810 but also to further group atomic media events into composite events , i . e ., to put the atomic events into relations . these newly created composite media events can optionally be annotated in the event annotation process using predefined event types . having created new composite events , an event type can optionally be assigned to this event ( step 1465 ). for our event - centric media management application , more than forty different event types are defined including for example : birthday , conference , meeting , dinner , and others . once an event type is selected , the parameters defined in this type are filled in with concrete values extracted from the composite event such as the birthday child or participants of the meeting . this is done automatically for parameters that have a clearly defined part - of relationship like time , location , people , and items . for other more ambiguously defined event type parameters , a semi - automatic or even manual approach will rely on the input from the user for filling in the concrete values . additionally , the event annotation process can be extended by arbitrary event types . in addition to the described manual annotation of composite media events by the users , event types may be determined ( semi -) automatically in a bottom - up approach . an event type can be determined based on the atomic events used for a composite event . the atomic events are analyzed . based on the characteristics and structure of the atomic events , the appropriate event type is ( semi -) automatically assigned . in the next phase , presentation authoring , the created events may be used to assemble a presentation . the event presentation phase consists of the three processes event query , media assembly , and delivery and presentation . multimedia presentations are created in the form of electronic multimedia albums . these albums are composed of the media associated with the atomic events and composite events stored in the eventbase . multimedia presentations can be created in the form of page - based multimedia albums . these albums may be composed of the media assets associated with the media events stored in the eventbase . a context - driven authoring tool for creating page - based multimedia presentations can be adapted and enhanced for processing media events and creating multimedia albums based on the events &# 39 ; media assets . the first step for creating a new multimedia album based on the media data associated with the events in our database is to select the atomic events and composite events that shall be included in the album ( step 1470 ). for it , query parameters are specified for selecting the appropriate events . the result is a list of events that fulfill the query . this list can be ranked according to the query dimensions . it is then used as input to the media assembly process . in addition to this event query step , a smooth switch can be made from the blended querying and browsing process to the media assembly process . this means , once the users are in a specific view of querying and browsing the events , they can switch by one click to the presentation authoring features and use the latest browsing view as input to the media assembly . once the events are selected for creating the multimedia album , the media assembly process suggests to the user how the media data associated with the events can be optimally arranged ( step 1475 ). additionally , a created album can be targeted at different end devices such as a desktop pcs , pdas , and cell phones . the structure of the composite events is used to arrange the media elements on different pages of the electronic multimedia album ( step 1580 ). this structure is based on among others , cluster information based on time and space or visual information such as color histograms . the media data associated with the composite events are arranged in time and space on different pages of the electronic album . thus , an album can be considered as depicting a series of composite events . each event represents a sub - album consisting of a certain number of pages . the information available in the composite events of different types may be used to create such sub - albums and pages for the different events . for instance , an event known to be important can be laid out for emphasis . the informational aspect of the events may be used to provide captions to photographs . referring to fig1 , a screenshot of a trip to england includes events like sightseeing in london , manchester and birmingham . the album would thus have three sub - albums with each spanning a number of pages . after the application has suggested a specific design and layout , users can modify this layout to their satisfaction . once , the users are satisfied with the assembly result , the multimedia album can be delivered and presented to targeted recipients . this is conducted in the following delivery and presentation phase . when the media assembly step is finished and a new multimedia album is created , users can export the multimedia album in a presentation format to deliver and present the album to an intended recipient ( step 1485 ). support for exporting the album can use presentation formats such as smil , svg , and flash for delivery and presentation to others . once an album is delivered in a specific presentation format to a user , the created multimedia presentation is considered as a new composite event . this means that based on the events used for album , a new composite event is created and stored in the eventbase . this composite event reflects the different events conveyed by the album . a base domain of generic event types is used to describe the semantics of the album in terms of sub - albums and pages . the created multimedia presentation is stored as sensor data to the created composite event . thus , the temporal course , spatial layout , and navigational interaction defined with the multimedia presentation is stored as part of the experiential aspect of the composite event . it should be understood , of course , that the foregoing relates to exemplary embodiments of the invention and that modifications may be made without departing from the spirit and scope of the invention as set forth in the following claims .