US7992082B2 - System and technique for editing and classifying documents - Google Patents

System and technique for editing and classifying documents Download PDF

Info

Publication number
US7992082B2
US7992082B2 US11/726,427 US72642707A US7992082B2 US 7992082 B2 US7992082 B2 US 7992082B2 US 72642707 A US72642707 A US 72642707A US 7992082 B2 US7992082 B2 US 7992082B2
Authority
US
United States
Prior art keywords
classification information
instructions
documents
editing instructions
editing
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.)
Active, expires
Application number
US11/726,427
Other versions
US20080235575A1 (en
Inventor
Stephen Michael Weiss
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.)
Ascential Inc
Original Assignee
Primatech 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 Primatech Corp filed Critical Primatech Corp
Assigned to PRIMATECH CORPORATION DBA STYLESIGHT reassignment PRIMATECH CORPORATION DBA STYLESIGHT ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: WEISS, STEPHEN MICHAEL
Priority to US11/726,427 priority Critical patent/US7992082B2/en
Priority to CN200880008887A priority patent/CN101681363A/en
Priority to EP08731652A priority patent/EP2126742A2/en
Priority to PCT/US2008/056200 priority patent/WO2008115713A2/en
Publication of US20080235575A1 publication Critical patent/US20080235575A1/en
Priority to US13/164,274 priority patent/US9158793B2/en
Publication of US7992082B2 publication Critical patent/US7992082B2/en
Application granted granted Critical
Assigned to STYLESIGHT, INC. reassignment STYLESIGHT, INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: Primatech Corporation
Assigned to WGSN, INC. reassignment WGSN, INC. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: STYLESIGHT, INC.
Assigned to DEUTSCHE BANK AG, LONDON BRANCH reassignment DEUTSCHE BANK AG, LONDON BRANCH GRANT OF SECURITY INTEREST Assignors: WGSN, INC.
Assigned to WGSN, INC. reassignment WGSN, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: DEUTSCHE BANK AG, LONDON BANK
Assigned to ASCENTIAL INC. reassignment ASCENTIAL INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: WGSN, INC.
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures

Definitions

  • the present invention relates to systems and techniques for organizing documents. More specifically, the present invention relates to a technique for determining editing instructions and classification information for documents.
  • networks such as the Internet
  • search engines allow individuals to retrieve information (henceforth referred to as documents) from a large database or repository of documents (including content from multiple web pages and websites).
  • search engines return snippets or subsets of one or more documents (henceforth referred to as results) that closely match the search query, including: words, terms, keywords, phrases, synonyms, and/or paraphrases in or associated with the search query (henceforth collectively referred to as keywords).
  • results include: words, terms, keywords, phrases, synonyms, and/or paraphrases in or associated with the search query (henceforth collectively referred to as keywords).
  • keywords snippets or subsets of one or more documents
  • search engines tailor or personalize results based on user profiles, which include user-defined interests (such as document categories) and summaries of previous user searches.
  • the ability to provide results involves identifying both the relevant documents and the relevant positions in these documents.
  • the keywords can provide the necessary classification information, which facilitates organizing (and thus, searching) of the documents in a repository.
  • One embodiment of this invention provides a computer system which determines information associated with documents. During operation, this computer system receives documents (such as images). Then, the computer system determines a first set of editing instructions and classification information associated with the documents using image-processing software. Next, the computer system receives a second set of editing instructions and classification information associated with the documents. Note that the second set of editing instructions and classification information are generated by a group of individuals and include modifications and additions to the first set of editing instructions and classification information.
  • the second set of editing instructions and classification information include subjective comments associated with at least some of the documents.
  • the group of individuals has a professional relationship with an organization that provides the computer system that receives the documents and determines the first set of editing instructions and classification information. Note that the group of individuals may be external to the organization.
  • the computer system detects and/or corrects errors in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information.
  • the images include photographs taken at a fashion show and/or a tradeshow.
  • the classification information in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information include colors and/or types of clothing.
  • the editing instructions in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information include cropping instructions.
  • the cropping instructions for a first document associated with the second set of editing instructions and classification information may include a history of the cropping instructions generated by individuals in the group of individuals.
  • the editing instructions and classification information for the first document may include distinct contributions from individuals in the group of individuals.
  • the computer system stores a second document and the associated editing instructions in a hierarchical data structure based on classification information associated with the second document.
  • the hierarchical data structure may include categories and groups of documents.
  • the second document may be assigned to one or more categories and to one or more groups of documents based on the classification information associated with the second document.
  • the second document is further assigned to one or more of the categories based on a time when the second document was received or a geographic location associated with the second document.
  • the computer system or one or more individuals accepts or rejects editing instructions and classification information for a third document associated with the first set of editing instructions and classification information and/or the second set of editing instructions and classification information.
  • the computer system receives a request for information from a client, and identifies a subset of the documents based on the request.
  • the subset of the documents may be identified based on the classification information associated with the subset of documents, where this subset of documents is associated with the second set of editing instructions and classification information.
  • the computer system provides the subset of the documents and associated editing instructions in the second set of editing instructions and classification information to the client.
  • these associated editing instructions define formats in which the subset of the documents may be displayed.
  • Another embodiment provides a computer program product for use in conjunction with a computer system.
  • Another embodiment provides a method for performing at least some of the preceding operations.
  • FIG. 1 is a block diagram illustrating a system including computers and servers that are networked together in accordance with an embodiment of the present invention.
  • FIG. 2 is a flow chart illustrating a method for determining information associated with documents in accordance with an embodiment of the present invention.
  • FIG. 3 is a flow chart illustrating a method for determining information associated with documents in accordance with an embodiment of the present invention.
  • FIG. 4 is a block diagram illustrating a computer system in accordance with an embodiment of the present invention.
  • FIG. 5 is a block diagram illustrating a computer in accordance with an embodiment of the present invention.
  • FIG. 6 is a block diagram illustrating a data structure in accordance with an embodiment of the present invention.
  • FIG. 7 is a block diagram illustrating a data structure in accordance with an embodiment of the present invention.
  • Embodiments of a system, a method, and a computer program product for use with the system are described. These systems, software, and processes may be used to determine classification information and/or editing instructions for documents, such as images and/or videos. Such classification information and/or editing instructions may facilitate the organization of the documents in a hierarchical database or data structure, thereby enabling individuals and/or organizations (such as users of a search engine) to identify and access relevant content (i.e., content of interest) in the documents. For example, a user may provide a search query that includes or is associated with one or more keywords, and documents may be provided based on matches between the classification information and a Boolean expression that includes one or more of the keywords.
  • the documents include photographs which include subjective content (such as images of models at one or more fashion shows).
  • Initial classification information and/or editing instructions for these documents may be determined using image-processing software.
  • this software may determine colors or types of clothing in the documents (such as garments, textures, and/or fabrics), and may specify the location of different features of interest in a given document (such as the positions of the types of clothing) using a set of editing or cropping instructions.
  • the editing instructions may specify a display format of the given document, and these instructions may be stored with the given document for subsequent use when the given document is displayed.
  • a group of individuals may review and, if needed, modify or add to the initial classification information and/or editing instructions.
  • These individuals may have a professional relationship with an organization that provides the system and/or maintains the hierarchical data structure of documents.
  • the group of individuals includes outside or external contractors with expertise on the subjective content in the documents.
  • multiple individuals in the group of individuals may separately review and/or modify the current classification information and/or editing instructions associated with the given document.
  • a record of the distinct modifications made by different individuals may be maintained. This may allow some or all of the modifications and/or additions to be accepted, corrected, and/or rejected during a subsequent review of the modifications by one or more individuals (who may or may not be in the group of individuals) and/or using software.
  • errors in the classification information and/or editing instructions are detected and/or corrected using quality-control software.
  • this approach may facilitate flexible determination of subjective and/or dynamic (i.e., time varying) content of interest.
  • this approach may facilitate flexible determination of subjective and/or dynamic (i.e., time varying) content of interest.
  • this match score may be determined using a weighted summation of matches between the classification information for the given document and keywords in or associated with the given search query.
  • tastes or perceptions of tastes evolve, the matches returned may be revised by changing the weights.
  • one or more operations in the system that are performed by individuals may be performed using software, for example, based on a heuristic model that is trained using previous actions or decisions by the individuals.
  • a stand-alone software application may be implemented, at least partially, as: a stand-alone software application; as a program module or subroutine in another application; and/or in a client-server environment that is implemented using a network.
  • a program(s) may be configured to execute on a client computer, such as a personal computer, a laptop computer, cell phone, PDA, or other device capable of manipulating computer-readable data, or between two or more computing systems over a network (such as the Internet, Intranet, LAN, WAN, MAN, or combination of networks, or other technology enabling communication between computing systems).
  • a network such as the Internet, Intranet, LAN, WAN, MAN, or combination of networks, or other technology enabling communication between computing systems.
  • the documents, and the associated classification information and/or editing instructions may be stored locally (for example, on a local computer) and/or remotely (for example, on a computer or server that is accessed via a network).
  • FIG. 1 presents a block diagram illustrating a system 100 including computers and servers that are networked together in accordance with an embodiment of the present invention.
  • computer 110 may implement or execute Remote Access Content Editing (RACE) software.
  • RACE Remote Access Content Editing
  • this software may facilitate a scaleable system for organizing documents (henceforth referred to as images) that are received from one or more document providers 114 (such as photography services) via a network 112 .
  • the images are associated with: models at a fashion show, a tradeshow, products, designs, celebrities, popular culture, and/or news (such as wire-service images).
  • computer 110 may determine initial classification information and/or editing instructions for the images.
  • an image-processing module (or separate image-processing application) may determine the initial classification information and/or editing instructions using spatial and/or frequency filters.
  • the images are of models at one or more fashion shows, and the classification information includes attributes associated with at least some of the documents.
  • the categories may, at least in part, be subjective, such as: types of clothing or garment types, clothing cuts or tailoring, clothing colors, clothing fabrics, clothing texture, and/or lifestyle information (such as when it is appropriate to wear the clothing or a group that the clothing targets).
  • the categories include: accessories, active wear, beauty, blouse/shirt, coat/outerwear, color inspirations, denim, dress, embellished, eveningwear, fabric inspiration, graphics, horizontals, jackets, knit tops/t-shirt, leather/suede/fur, pants/shorts, prints, skirts, suits, sweaters, and/or intimate apparel.
  • the editing instructions include cropping instructions for at least some of the images.
  • the cropping instructions for a given image may specify coordinates (such as a center plus a border) corresponding to one or more portions of the given image.
  • the image-processing module or software may identify multiple portions of the given image that may be of interest.
  • the initial classification information and/or editing instructions may be refined by one or more individuals 16 in a group of individuals 18 who access image files using the network 112 .
  • a given individual may select one or more attributes or categories to associate with one or more images from a pallet of description words that are provided by the RACE software.
  • the given individual clicks on an attribute using a pointer device (such as a mouse), drags it over a displayed image, and releases it to define such an association.
  • the individuals 16 may have a professional relationship with an organization that provides the RACE software and/or the service facilitated by the system 100 (for example, individuals 116 may be freelancers in the fashion industry). However, as noted previously, in some embodiments another software module or application may perform at least some of the operations implemented by the individuals 116 . For example, the modifications may be based on a heuristic model that is trained using previous actions or decisions by one or more of the individuals 116 .
  • multiple individuals 116 may modify the classification information and/or editing instructions associated with the given image over a time interval.
  • the RACE software may track and/or store these distinct modifications and/or subjective comments for the given document that are provided by these multiple individuals.
  • the classification information for the given document may include meta data associated with the individual(s) who modified it.
  • a history of different cropping instructions for the given image may be stored, either on the computer 110 or on another computer or server that may be accessed using the network 112 .
  • the system 100 may detect and, if necessary, correct errors in the classification information and/or editing instructions for the images.
  • a quality-control module or application executing on computer 110 performs these functions.
  • one or more individuals who may be in the group 118 or who may be external to the group 118 ) perform the detection and/or correction operations.
  • yet another software module or application may be used. Note that this module or application may be based on a heuristic model that is trained using previous actions or decisions by one or more individuals.
  • additions, modifications and/or comments provided by one or more individuals 116 for one or more images may be accepted, changed, and/or rejected. For example, some of all of the modifications and/or comments provided by one of the individuals 116 for multiple images may be rejected. In this case, the rejected changes may be deleted.
  • the images may be organized and stored (locally and/or remotely) in a relational or a hierarchical database or data structure based on the accepted classification information and/or editing instructions for the images.
  • the given image may be stored along with its associated editing instructions, i.e., the full image may be stored.
  • This approach may allow multiple versions of the image to be subsequently displayed on one or more client computers 120 based on the editing instructions (for example the given image may be cropped when it is rendered). It also allows the editing instructions to be changed, as need, in the future.
  • the data structure may include groups of images (which are henceforth referred to as batches), and images may be assigned to one or more categories and/or one or more batches. For a given image, this assignment may include a full copy of the given image or a pointer to a copy of the given image.
  • the given image is also assigned to a given category and/or a given batch based on: a time when the given image was received; a time when the given image was produced (such as when a photograph was taken); and/or a geographic location associated with the given image (such as a location where a photograph was taken).
  • runway images (which may be a category) may be split up based on a city where a fashion show occurred and/or a day when the images were received (which, in turn, may define one or more batches).
  • the batches may be selected in order to keep the size of the groups of images manageable.
  • a given batch may include 500-1000 runway images or 100 images from a tradeshow(s).
  • a category is Fall 2006, and there are multiple sub-categories corresponding to different types of clothing.
  • there may be a batch entitled New York 1 , and multiple sub-batches, such as NewYork 1 (beauty), NewYork 1 (coats), etc.
  • the categories/sub-categories and the batches/sub-batches may constitute two flat trees or hierarchies that interact with each other, i.e., there may be two parent-child relationship pathways in the data structure.
  • One or more users of computers 120 may access the stored images and associated editing instructions based on the classification information. For example, one or more keywords in or associated with a search query provided by a given user using a search engine may match the classification information for a set of images.
  • the RACE or other software may provide the images, the associated editing instructions, and/or the classification information to the given user.
  • This user (such as a buyer at a department store, a fashion designer, or a magazine publisher) may use this information to guide fashion design, purchasing, and/or magazine publishing.
  • the given user pays the provider of the RACE software and/or the data structure for this service.
  • the images may be received at a given client computer in the client computers 120 and one or more of the images may be rendered using a browser.
  • the RACE software passages the images prior to the providing, for example, by performing transformations of the images into other formats.
  • the set of images is provided as a batch, i.e., as one big file.
  • This file may be compressed (for example, using a Joint Photographic Experts Group compression technique), and this compression may preserve the hierarchical or directory information in the data structure. After the file is decompressed on the client computer, this directory information may be used to split up or subdivide the file.
  • software applications in the system 100 may stand-alone applications or may be embedded in another application(s) (such as a software module).
  • the individuals 116 and/or users of the client computers 120 may use tools associated with the RACE software that are embedded in a web page (once again, either as a stand-alone application or as a portion of another application). This web page may be provided by the computer 110 via network 112 .
  • these tools include one or more software modules or packages written in JavaScriptTM (i.e., the income-tax preparation tool includes programs or procedures containing JavaScript instructions), ECMAScript (the specification for which is published by the European Computer Manufacturers Association International), VBScriptTM (a trademark of Microsoft, Inc.) or any other client or server-side scripting language.
  • these tool may include programs or procedures containing JavaScript, ECMAScript instructions, VBScript instructions, or instructions in another programming language suitable for rendering by a browser or another client application on computers and/or servers in the system 100 .
  • the material included in the system 100 may be a sensitive nature.
  • the individuals 116 and/or the user of the client computers 120 may provide one or more security tokens (such as PIN codes, user names, and/or passwords) in order to use the RACE software and/or to access stored images, classification information, and/or editing instructions.
  • the stored files, the stored information, and/or data communicated over the network 112 are encrypted.
  • communication may utilize a protocol such as HyperText Transfer Protocol Secure (HTTPS).
  • HTTPS HyperText Transfer Protocol Secure
  • the system 100 includes fewer or additional components, two or more components are combined into a single component, and/or a position of one or more components may be changed.
  • FIG. 2 presents a flow chart illustrating a method 200 for determining information associated with documents in accordance with an embodiment of the present invention.
  • a first computer in computers 210 provides documents ( 214 ) to a server computer 212 .
  • Server computer 212 receives these documents ( 216 ).
  • the server computer 212 determines editing instructions and classification information ( 218 ) for the documents, and stores the documents based on the classification information ( 220 ).
  • the server computer 212 provides documents, editing instructions, and/or classification information ( 222 ) to a second computer in the computers 210 .
  • the second computer may be different than the first computer.
  • This second computer receives these documents, editing instructions, and/or classification information ( 224 ).
  • the second computer modifies the editing instructions and/or classification information ( 226 ), and provides the modified editing instructions and/or classification information ( 228 ) to the server computer 212 .
  • the server computer 212 receives the modified editing instructions and/or classification information ( 230 ), and optionally stores one or more of the documents based on the modified classification information ( 232 ).
  • Clients of the system 100 may provide requests ( 234 ) using a third computer in the computers 210 .
  • the third computer may be different than the other computers in the method 200 .
  • Server computer 212 receives the request and identifies a subset of the documents ( 236 ). Then, the server computer 212 provides the subset of the documents and associated editing instructions ( 238 ). Next, the third computer receives the subset of the documents and associated editing instructions ( 240 ), and renders the subset of the documents in a format that is based on the editing instructions.
  • FIG. 3 presents a flow chart illustrating a method 300 for determining information associated with documents in accordance with an embodiment of the present invention.
  • a system such as the system 100 in FIG. 1 receives documents ( 310 ).
  • these documents may include images.
  • image-processing software executing on a computer in the system determines a first set of editing instructions and classification information associated with the documents ( 312 ).
  • the system receives a second set of editing instructions and classification information associated with the documents ( 314 ).
  • the second set of editing instructions and classification information may be generated by a group of individuals and may include modifications and/or additions to the first set of editing instructions and classification information.
  • the computer optionally detects and/or corrects errors in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information ( 316 ). Furthermore, in some embodiments the system optionally accepts or rejects editing instructions and/or classification information for a given document associated with the first set of editing instructions and classification information and/or the second set of editing instructions and classification information ( 318 ).
  • the system stores the given document in a hierarchical data structure based on the classification information associated with the given document, where the given document is associated with the second set of editing instructions and classification information ( 320 ). Furthermore, in some embodiments the system repeats, one or more times, the receiving ( 314 ), the detecting and/or correcting ( 316 ), the accepting or rejecting ( 318 ), and/or the storing ( 320 ) operations.
  • FIG. 4 presents a block diagram illustrating a computer system 400 in accordance with an embodiment of the present invention.
  • Computer system 400 includes one or more processors 410 , a communication interface 412 , a user interface 414 , and one or more signal lines 422 coupling these components together.
  • the one or more processing units 410 may support parallel processing and/or multi-threaded operation
  • the communication interface 412 may have a persistent communication connection
  • the one or more signal lines 422 may constitute a communication bus.
  • the user interface 414 may include a display 416 , a keyboard 418 , and/or a pointer 420 , such as a mouse.
  • Memory 424 in the computer system 400 may include volatile memory and/or non-volatile memory. More specifically, memory 424 may include ROM, RAM, EPROM, EEPROM, FLASH, one or more smart cards, one or more magnetic disc storage devices, and/or one or more optical storage devices. Memory 424 may store an operating system 426 that includes procedures (or a set of instructions) for handling various basic system services for performing hardware dependent tasks. While not explicitly indicated in the computer system 400 , in some embodiments the operating system 426 includes a web browser. The memory 424 may also store procedures (or a set of instructions) in a communication module 428 . The communication procedures may be used for communicating with one or more computers and/or servers, including computers and/or servers that are remotely located with respect to the computer system 400 .
  • Memory 424 may include multiple program modules (or a set of instructions), including image-processing module 430 (or a set of instructions), search module 432 (or a set of instructions), and quality-control module 440 (or a set of instructions).
  • memory 424 may include a data structure which includes documents 434 , as well as associated editing instructions 436 and classification information 438 .
  • the search module 432 may identify and return results (such as a subset of the documents 434 ) based on keywords 442 in or associated with a received search query.
  • memory 424 includes optional formatting module 444 (or a set of instructions) and/or optional encryption module 446 (or a set of instructions).
  • optional formatting module 444 may be used to change a format of one or more of the documents 434 and/or associated information stored in memory 424 .
  • Instructions in the various modules in the memory 424 may be implemented in a high-level procedural language, an object-oriented programming language, and/or in an assembly or machine language.
  • the programming language may be compiled or interpreted, i.e., configurable or configured to be executed by the one or more processing units 410 .
  • FIG. 4 is intended to provide a functional description of the various features that may be present in the computer system 400 rather than as a structural schematic of the embodiments described herein.
  • the functions of the computer system 400 may be distributed over a large number of servers or computers, with various groups of the servers or computers performing particular subsets of the functions.
  • some or all of the functionality of the computer system 400 may be implemented in one or more ASICs and/or one or more digital signal processors DSPs.
  • Computer system 400 may include fewer components or additional components, two or more components may be combined into a single component, and/or a position of one or more components may be changed.
  • the functionality of the computer system 400 may be implemented more in hardware and less in software, or less in hardware and more in software, as is known in the art.
  • FIG. 5 presents a block diagram illustrating a computer 500 (such as one of the computers 120 in FIG. 1 , or a computer used by one of the individuals 116 in FIG. 1 ) in accordance with an embodiment of the present invention.
  • Computer 500 may include one or more data processors or central processing units (CPUs) 510 , a communication interface 512 for communicating with other computers, servers and/or clients, a user interface 514 , a memory 524 , and one or more signal lines 522 for coupling these components to one another.
  • the one or more processing units 510 may support parallel processing and/or multi-threaded operation
  • the communication interface 512 may have a persistent communication connection
  • the one or more signal lines 522 may constitute a communication bus.
  • the user interface 514 may include a display 516 , a keyboard 518 , and/or a pointer 520 (such as a mouse).
  • Memory 524 in the computer 500 may include volatile memory and/or non-volatile memory. More specifically, memory 524 may include ROM, RAM, EPROM, EEPROM, FLASH, one or more smart cards, one or more magnetic disc storage devices, and/or one or more optical storage devices. Memory 524 may store an operating system 526 that includes procedures (or a set of instructions) for handling various basic system services for performing hardware dependent tasks. The memory 524 may also store procedures (or a set of instructions) in a communication module 528 . The communication procedures may be used for communicating with one or more computers and/or servers, including computers and/or servers that are remotely located with respect to the computer 500 . In addition, the communication procedures may be used for communicating with a computer system that implements a search engine.
  • Memory 524 may also include multiple program modules (or a set of instructions), including a graphics module 530 (or a set of instructions) and a browser module 532 (or a set of instructions). Furthermore, the browser module 532 may include an embedded search-engine tool 534 (or a set of instructions) and/or an embedded editing and classification tool 536 (or a set of instructions). Note that the embedded search-engine tool 534 may be provided by a remotely located search engine.
  • This tool may perform the functions of: monitoring the user interface 514 for a user input; transmitting a user request (such as search query) using the communication module 528 ; receiving search results (such as documents or images) using the communication module 528 ; and displaying at least some of these results in an appropriate format (such as that specified by editing instructions associated with the documents or images) using the display 516 .
  • the memory 524 includes one or more stored web pages and/or documents 538 , and optionally an encryption module 540 (or a set of instructions).
  • computer 500 may include fewer components or additional components, two or more components may be combined into a single component, and/or a position of one or more components may be changed.
  • the computer 500 is coupled to a local server, one or more of the modules and/or applications in the memory 524 may be stored in a server computer at a different location than the user.
  • the various modules and sub-modules may be rearranged and/or combined.
  • FIG. 6 presents a block diagram illustrating a data structure 600 in accordance with an embodiment of the present invention.
  • This data structure may include information associated with documents 610 .
  • a given document such as document 610 - 1
  • the data structure 600 may include editing instructions 612 - 1 , classification information 614 - 1 , as well as categories 616 - 1 , sub-categories 618 - 1 , and/or batches 620 - 1 associated with the document 610 - 1 .
  • FIG. 7 presents a block diagram illustrating a data structure 700 in accordance with an embodiment of the present invention.
  • This data structure may include description words 710 (such as categories 616 in FIG. 6 ).
  • the description words 710 may include types of clothing, such as: accessories 712 , active wear 714 , beauty 716 , blouse/shirt 718 , coat/outerwear 720 , color inspirations 722 , denim 724 , dress 726 , embellished 728 , and/or eveningwear 730 .
  • embodiments of the system, process, and technique may be applied to organizing other types of documents and/or content.
  • these techniques may facilitate the determining classification information and the identification of content in documents (such as photographs, text, speech, film, video, etc.) which include information that has subjective value or relevance, be it in popular culture or in other subject areas. Note that in some embodiments this subjective value is dynamic as a function of time.
  • a subset of the organized documents may be provided when requests and/or search queries are provided to the system (such as the system 100 in FIG. 1 ).
  • these techniques are well suited for use in conjunction with search engines, including those implemented on the Internet and/or an intranet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Embodiments of a computer system which determines information associated with documents are described. During operation, this computer system receives documents (such as images). Then, the computer system determines a first set of editing instructions and classification information associated with the documents using image-processing software. Next, the computer system receives a second set of editing instructions and classification information associated with the documents. Note that the second set of editing instructions and classification information are generated by a group of individuals and include modifications and additions to the first set of editing instructions and classification information.

Description

BACKGROUND
1. Field of the Invention
The present invention relates to systems and techniques for organizing documents. More specifically, the present invention relates to a technique for determining editing instructions and classification information for documents.
2. Related Art
Recent advances in technology have made it possible for individuals and organizations to remotely access increasing amounts of information. For example, networks (such as the Internet) and modern search engines allow individuals to retrieve information (henceforth referred to as documents) from a large database or repository of documents (including content from multiple web pages and websites).
As the number of documents and various types of content increases, it is increasingly difficult for individuals and organizations to avoid information overload during searches of these document repositories. One approach to this problem is to restrict the number of documents provided to individuals or organizations based on an estimated relevancy of the information in the documents. For example, in response to a search query, many search engines return snippets or subsets of one or more documents (henceforth referred to as results) that closely match the search query, including: words, terms, keywords, phrases, synonyms, and/or paraphrases in or associated with the search query (henceforth collectively referred to as keywords). In addition, many search engines tailor or personalize results based on user profiles, which include user-defined interests (such as document categories) and summaries of previous user searches. Note that the ability to provide results involves identifying both the relevant documents and the relevant positions in these documents. In the case of content that is in an alphanumeric or text format, the keywords can provide the necessary classification information, which facilitates organizing (and thus, searching) of the documents in a repository.
Unfortunately, these techniques are less effective for content types other than text (such as images and videos) because keywords may not be sufficient to identify either the relevant documents or the relevant positions in these documents. Furthermore, these difficulties are compounded when the content of interest is subjective and/or dynamic (i.e., time varying) in nature (such as fashion or popular culture). Thus, it may be difficult to sort through photographs of celebrities or models to determine which photographs and/or what portion of a given photograph are currently of interest to individuals.
Hence what is needed is an improved technique for organizing documents without the problems listed above.
SUMMARY
One embodiment of this invention provides a computer system which determines information associated with documents. During operation, this computer system receives documents (such as images). Then, the computer system determines a first set of editing instructions and classification information associated with the documents using image-processing software. Next, the computer system receives a second set of editing instructions and classification information associated with the documents. Note that the second set of editing instructions and classification information are generated by a group of individuals and include modifications and additions to the first set of editing instructions and classification information.
In some embodiments, the second set of editing instructions and classification information include subjective comments associated with at least some of the documents.
In some embodiments, the group of individuals has a professional relationship with an organization that provides the computer system that receives the documents and determines the first set of editing instructions and classification information. Note that the group of individuals may be external to the organization.
In some embodiments, the computer system detects and/or corrects errors in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information.
In some embodiments, the images include photographs taken at a fashion show and/or a tradeshow.
In some embodiments, the classification information in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information include colors and/or types of clothing.
In some embodiments, the editing instructions in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information include cropping instructions. For example, the cropping instructions for a first document associated with the second set of editing instructions and classification information may include a history of the cropping instructions generated by individuals in the group of individuals. Furthermore, the editing instructions and classification information for the first document may include distinct contributions from individuals in the group of individuals.
In some embodiments, the computer system stores a second document and the associated editing instructions in a hierarchical data structure based on classification information associated with the second document. Note that the hierarchical data structure may include categories and groups of documents. Furthermore, the second document may be assigned to one or more categories and to one or more groups of documents based on the classification information associated with the second document. In some embodiments, the second document is further assigned to one or more of the categories based on a time when the second document was received or a geographic location associated with the second document.
In some embodiments, the computer system or one or more individuals accepts or rejects editing instructions and classification information for a third document associated with the first set of editing instructions and classification information and/or the second set of editing instructions and classification information.
In some embodiments, the computer system receives a request for information from a client, and identifies a subset of the documents based on the request. Note that the subset of the documents may be identified based on the classification information associated with the subset of documents, where this subset of documents is associated with the second set of editing instructions and classification information. Then, the computer system provides the subset of the documents and associated editing instructions in the second set of editing instructions and classification information to the client. Furthermore, note that these associated editing instructions define formats in which the subset of the documents may be displayed.
Another embodiment provides a computer program product for use in conjunction with a computer system.
Another embodiment provides a method for performing at least some of the preceding operations.
BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 is a block diagram illustrating a system including computers and servers that are networked together in accordance with an embodiment of the present invention.
FIG. 2 is a flow chart illustrating a method for determining information associated with documents in accordance with an embodiment of the present invention.
FIG. 3 is a flow chart illustrating a method for determining information associated with documents in accordance with an embodiment of the present invention.
FIG. 4 is a block diagram illustrating a computer system in accordance with an embodiment of the present invention.
FIG. 5 is a block diagram illustrating a computer in accordance with an embodiment of the present invention.
FIG. 6 is a block diagram illustrating a data structure in accordance with an embodiment of the present invention.
FIG. 7 is a block diagram illustrating a data structure in accordance with an embodiment of the present invention.
Note that like reference numerals refer to corresponding parts throughout the drawings.
DETAILED DESCRIPTION
The following description is presented to enable any person skilled in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
Embodiments of a system, a method, and a computer program product (i.e., software) for use with the system are described. These systems, software, and processes may be used to determine classification information and/or editing instructions for documents, such as images and/or videos. Such classification information and/or editing instructions may facilitate the organization of the documents in a hierarchical database or data structure, thereby enabling individuals and/or organizations (such as users of a search engine) to identify and access relevant content (i.e., content of interest) in the documents. For example, a user may provide a search query that includes or is associated with one or more keywords, and documents may be provided based on matches between the classification information and a Boolean expression that includes one or more of the keywords.
In an exemplary embodiment, the documents include photographs which include subjective content (such as images of models at one or more fashion shows). Initial classification information and/or editing instructions for these documents may be determined using image-processing software. For example, this software may determine colors or types of clothing in the documents (such as garments, textures, and/or fabrics), and may specify the location of different features of interest in a given document (such as the positions of the types of clothing) using a set of editing or cropping instructions. Note that the editing instructions may specify a display format of the given document, and these instructions may be stored with the given document for subsequent use when the given document is displayed.
Then, a group of individuals may review and, if needed, modify or add to the initial classification information and/or editing instructions. These individuals may have a professional relationship with an organization that provides the system and/or maintains the hierarchical data structure of documents. In an exemplary embodiment, the group of individuals includes outside or external contractors with expertise on the subjective content in the documents. Note that multiple individuals in the group of individuals may separately review and/or modify the current classification information and/or editing instructions associated with the given document. Furthermore, a record of the distinct modifications made by different individuals may be maintained. This may allow some or all of the modifications and/or additions to be accepted, corrected, and/or rejected during a subsequent review of the modifications by one or more individuals (who may or may not be in the group of individuals) and/or using software. In addition, in some embodiments errors in the classification information and/or editing instructions are detected and/or corrected using quality-control software.
By using computer-based and/or human-based analysis of the documents, this approach may facilitate flexible determination of subjective and/or dynamic (i.e., time varying) content of interest. In some embodiments, by determining and storing multiple versions of the classification information and/or editing instructions for the given document, it is possible to dynamically adjust the content of interest that is identified in the given document. For example, matches with a given search query may be based on a match score. This match score may be determined using a weighted summation of matches between the classification information for the given document and keywords in or associated with the given search query. As tastes or perceptions of tastes evolve, the matches returned may be revised by changing the weights. Note that in some embodiments one or more operations in the system that are performed by individuals (such as individuals in the group of individuals) may be performed using software, for example, based on a heuristic model that is trained using previous actions or decisions by the individuals.
These techniques may be implemented, at least partially, as: a stand-alone software application; as a program module or subroutine in another application; and/or in a client-server environment that is implemented using a network. Furthermore, such a program(s) may be configured to execute on a client computer, such as a personal computer, a laptop computer, cell phone, PDA, or other device capable of manipulating computer-readable data, or between two or more computing systems over a network (such as the Internet, Intranet, LAN, WAN, MAN, or combination of networks, or other technology enabling communication between computing systems). Therefore, the documents, and the associated classification information and/or editing instructions, may be stored locally (for example, on a local computer) and/or remotely (for example, on a computer or server that is accessed via a network).
We now describe embodiments of systems, devices and processes for editing and classifying documents. In particular, FIG. 1 presents a block diagram illustrating a system 100 including computers and servers that are networked together in accordance with an embodiment of the present invention. Within this system, computer 110 (or a computer system) may implement or execute Remote Access Content Editing (RACE) software. As described below, this software may facilitate a scaleable system for organizing documents (henceforth referred to as images) that are received from one or more document providers 114 (such as photography services) via a network 112. In some embodiments, the images are associated with: models at a fashion show, a tradeshow, products, designs, celebrities, popular culture, and/or news (such as wire-service images).
Using the RACE software, computer 110 may determine initial classification information and/or editing instructions for the images. For example, an image-processing module (or separate image-processing application) may determine the initial classification information and/or editing instructions using spatial and/or frequency filters. In some embodiments, the images are of models at one or more fashion shows, and the classification information includes attributes associated with at least some of the documents. Note that the categories may, at least in part, be subjective, such as: types of clothing or garment types, clothing cuts or tailoring, clothing colors, clothing fabrics, clothing texture, and/or lifestyle information (such as when it is appropriate to wear the clothing or a group that the clothing targets). In an exemplary embodiment, the categories include: accessories, active wear, beauty, blouse/shirt, coat/outerwear, color inspirations, denim, dress, embellished, eveningwear, fabric inspiration, graphics, horizontals, jackets, knit tops/t-shirt, leather/suede/fur, pants/shorts, prints, skirts, suits, sweaters, and/or intimate apparel.
Furthermore, in some embodiments the editing instructions include cropping instructions for at least some of the images. Note that the cropping instructions for a given image may specify coordinates (such as a center plus a border) corresponding to one or more portions of the given image. Thus, the image-processing module or software may identify multiple portions of the given image that may be of interest.
In some embodiments, such as those where the images include subjective content, it may be necessary to refine, add to, and/or modify the initial classification information and/or editing instructions. This may be performed by one or more individuals 16 in a group of individuals 18 who access image files using the network 112. For example, a given individual may select one or more attributes or categories to associate with one or more images from a pallet of description words that are provided by the RACE software. In an exemplary embodiment, the given individual clicks on an attribute using a pointer device (such as a mouse), drags it over a displayed image, and releases it to define such an association.
Note that the individuals 16 may have a professional relationship with an organization that provides the RACE software and/or the service facilitated by the system 100 (for example, individuals 116 may be freelancers in the fashion industry). However, as noted previously, in some embodiments another software module or application may perform at least some of the operations implemented by the individuals 116. For example, the modifications may be based on a heuristic model that is trained using previous actions or decisions by one or more of the individuals 116.
Also note that multiple individuals 116 may modify the classification information and/or editing instructions associated with the given image over a time interval. Furthermore, the RACE software may track and/or store these distinct modifications and/or subjective comments for the given document that are provided by these multiple individuals. For example, the classification information for the given document may include meta data associated with the individual(s) who modified it. In some embodiments, a history of different cropping instructions for the given image may be stored, either on the computer 110 or on another computer or server that may be accessed using the network 112.
After and/or while the individuals 116 are providing the modifications, the system 100 may detect and, if necessary, correct errors in the classification information and/or editing instructions for the images. In some embodiments, a quality-control module or application executing on computer 110 performs these functions. However, in some embodiments one or more individuals (who may be in the group 118 or who may be external to the group 118) perform the detection and/or correction operations. Furthermore, in some embodiments yet another software module or application may be used. Note that this module or application may be based on a heuristic model that is trained using previous actions or decisions by one or more individuals.
During this quality-control process, additions, modifications and/or comments provided by one or more individuals 116 for one or more images may be accepted, changed, and/or rejected. For example, some of all of the modifications and/or comments provided by one of the individuals 116 for multiple images may be rejected. In this case, the rejected changes may be deleted.
Then, the images may be organized and stored (locally and/or remotely) in a relational or a hierarchical database or data structure based on the accepted classification information and/or editing instructions for the images. The given image may be stored along with its associated editing instructions, i.e., the full image may be stored. This approach may allow multiple versions of the image to be subsequently displayed on one or more client computers 120 based on the editing instructions (for example the given image may be cropped when it is rendered). It also allows the editing instructions to be changed, as need, in the future.
Note that the data structure may include groups of images (which are henceforth referred to as batches), and images may be assigned to one or more categories and/or one or more batches. For a given image, this assignment may include a full copy of the given image or a pointer to a copy of the given image. In some embodiments, the given image is also assigned to a given category and/or a given batch based on: a time when the given image was received; a time when the given image was produced (such as when a photograph was taken); and/or a geographic location associated with the given image (such as a location where a photograph was taken). For example, runway images (which may be a category) may be split up based on a city where a fashion show occurred and/or a day when the images were received (which, in turn, may define one or more batches).
Note that the batches may be selected in order to keep the size of the groups of images manageable. In an exemplary embodiment, a given batch may include 500-1000 runway images or 100 images from a tradeshow(s). In another example, a category is Fall 2006, and there are multiple sub-categories corresponding to different types of clothing. In addition, there may be a batch entitled New York1, and multiple sub-batches, such as NewYork1 (beauty), NewYork1 (coats), etc. Thus, the categories/sub-categories and the batches/sub-batches may constitute two flat trees or hierarchies that interact with each other, i.e., there may be two parent-child relationship pathways in the data structure.
One or more users of computers 120 may access the stored images and associated editing instructions based on the classification information. For example, one or more keywords in or associated with a search query provided by a given user using a search engine may match the classification information for a set of images.
Once such as set is identified, the RACE or other software may provide the images, the associated editing instructions, and/or the classification information to the given user. This user (such as a buyer at a department store, a fashion designer, or a magazine publisher) may use this information to guide fashion design, purchasing, and/or magazine publishing. In some embodiments, the given user pays the provider of the RACE software and/or the data structure for this service.
In some embodiments, the images may be received at a given client computer in the client computers 120 and one or more of the images may be rendered using a browser. Note that in some embodiments, the RACE software passages the images prior to the providing, for example, by performing transformations of the images into other formats. Furthermore, in some embodiments the set of images is provided as a batch, i.e., as one big file. This file may be compressed (for example, using a Joint Photographic Experts Group compression technique), and this compression may preserve the hierarchical or directory information in the data structure. After the file is decompressed on the client computer, this directory information may be used to split up or subdivide the file.
As noted previously, software applications in the system 100 may stand-alone applications or may be embedded in another application(s) (such as a software module). Furthermore, in some embodiments the individuals 116 and/or users of the client computers 120 may use tools associated with the RACE software that are embedded in a web page (once again, either as a stand-alone application or as a portion of another application). This web page may be provided by the computer 110 via network 112. In an exemplary embodiment, these tools include one or more software modules or packages written in JavaScript™ (i.e., the income-tax preparation tool includes programs or procedures containing JavaScript instructions), ECMAScript (the specification for which is published by the European Computer Manufacturers Association International), VBScript™ (a trademark of Microsoft, Inc.) or any other client or server-side scripting language. In other words, these tool may include programs or procedures containing JavaScript, ECMAScript instructions, VBScript instructions, or instructions in another programming language suitable for rendering by a browser or another client application on computers and/or servers in the system 100.
Note that the material included in the system 100 may be a sensitive nature. As a consequence, in some embodiments the individuals 116 and/or the user of the client computers 120 may provide one or more security tokens (such as PIN codes, user names, and/or passwords) in order to use the RACE software and/or to access stored images, classification information, and/or editing instructions. In addition, in some embodiments the stored files, the stored information, and/or data communicated over the network 112 are encrypted. For example, communication may utilize a protocol such as HyperText Transfer Protocol Secure (HTTPS). Furthermore, in some embodiments the system 100 includes fewer or additional components, two or more components are combined into a single component, and/or a position of one or more components may be changed.
We now discuss methods for editing and classifying documents. More specifically, FIG. 2 presents a flow chart illustrating a method 200 for determining information associated with documents in accordance with an embodiment of the present invention. During this method, a first computer in computers 210 provides documents (214) to a server computer 212. Server computer 212 receives these documents (216). Then, the server computer 212 determines editing instructions and classification information (218) for the documents, and stores the documents based on the classification information (220).
Later, the server computer 212 provides documents, editing instructions, and/or classification information (222) to a second computer in the computers 210. Note that in general the second computer may be different than the first computer. This second computer receives these documents, editing instructions, and/or classification information (224). Then, the second computer (or an individual using the second computer) modifies the editing instructions and/or classification information (226), and provides the modified editing instructions and/or classification information (228) to the server computer 212. Next, the server computer 212 receives the modified editing instructions and/or classification information (230), and optionally stores one or more of the documents based on the modified classification information (232).
Clients of the system 100 (FIG. 1) may provide requests (234) using a third computer in the computers 210. Note that in general the third computer may be different than the other computers in the method 200. Server computer 212 receives the request and identifies a subset of the documents (236). Then, the server computer 212 provides the subset of the documents and associated editing instructions (238). Next, the third computer receives the subset of the documents and associated editing instructions (240), and renders the subset of the documents in a format that is based on the editing instructions.
FIG. 3 presents a flow chart illustrating a method 300 for determining information associated with documents in accordance with an embodiment of the present invention. During this method, a system (such as the system 100 in FIG. 1) receives documents (310). Note that these documents may include images. Then, image-processing software executing on a computer in the system determines a first set of editing instructions and classification information associated with the documents (312).
Next, the system receives a second set of editing instructions and classification information associated with the documents (314). Note that the second set of editing instructions and classification information may be generated by a group of individuals and may include modifications and/or additions to the first set of editing instructions and classification information.
In some embodiments, the computer optionally detects and/or corrects errors in the first set of editing instructions and classification information and/or the second set of editing instructions and classification information (316). Furthermore, in some embodiments the system optionally accepts or rejects editing instructions and/or classification information for a given document associated with the first set of editing instructions and classification information and/or the second set of editing instructions and classification information (318).
In addition, the system stores the given document in a hierarchical data structure based on the classification information associated with the given document, where the given document is associated with the second set of editing instructions and classification information (320). Furthermore, in some embodiments the system repeats, one or more times, the receiving (314), the detecting and/or correcting (316), the accepting or rejecting (318), and/or the storing (320) operations.
Note that in some embodiments there may be additional or fewer operations in the method 200 (FIG. 2) and/or the method 300, the order of the operations may be changed, and two or more operations may be combined into a single operation.
We now describe embodiments of a computer or server, such as the computer 110 (FIG. 1). More specifically, FIG. 4 presents a block diagram illustrating a computer system 400 in accordance with an embodiment of the present invention. Computer system 400 includes one or more processors 410, a communication interface 412, a user interface 414, and one or more signal lines 422 coupling these components together. Note that the one or more processing units 410 may support parallel processing and/or multi-threaded operation, the communication interface 412 may have a persistent communication connection, and the one or more signal lines 422 may constitute a communication bus. Moreover, the user interface 414 may include a display 416, a keyboard 418, and/or a pointer 420, such as a mouse.
Memory 424 in the computer system 400 may include volatile memory and/or non-volatile memory. More specifically, memory 424 may include ROM, RAM, EPROM, EEPROM, FLASH, one or more smart cards, one or more magnetic disc storage devices, and/or one or more optical storage devices. Memory 424 may store an operating system 426 that includes procedures (or a set of instructions) for handling various basic system services for performing hardware dependent tasks. While not explicitly indicated in the computer system 400, in some embodiments the operating system 426 includes a web browser. The memory 424 may also store procedures (or a set of instructions) in a communication module 428. The communication procedures may be used for communicating with one or more computers and/or servers, including computers and/or servers that are remotely located with respect to the computer system 400.
Memory 424 may include multiple program modules (or a set of instructions), including image-processing module 430 (or a set of instructions), search module 432 (or a set of instructions), and quality-control module 440 (or a set of instructions). In addition, memory 424 may include a data structure which includes documents 434, as well as associated editing instructions 436 and classification information 438. Note that the search module 432 may identify and return results (such as a subset of the documents 434) based on keywords 442 in or associated with a received search query.
Furthermore, in some embodiments memory 424 includes optional formatting module 444 (or a set of instructions) and/or optional encryption module 446 (or a set of instructions). Note that the optional formatting module 444 may be used to change a format of one or more of the documents 434 and/or associated information stored in memory 424.
Instructions in the various modules in the memory 424 may be implemented in a high-level procedural language, an object-oriented programming language, and/or in an assembly or machine language. The programming language may be compiled or interpreted, i.e., configurable or configured to be executed by the one or more processing units 410.
Although the computer system 400 is illustrated as having a number of discrete components, FIG. 4 is intended to provide a functional description of the various features that may be present in the computer system 400 rather than as a structural schematic of the embodiments described herein. In practice, and as recognized by those of ordinary skill in the art, the functions of the computer system 400 may be distributed over a large number of servers or computers, with various groups of the servers or computers performing particular subsets of the functions. In some embodiments, some or all of the functionality of the computer system 400 may be implemented in one or more ASICs and/or one or more digital signal processors DSPs.
Computer system 400 may include fewer components or additional components, two or more components may be combined into a single component, and/or a position of one or more components may be changed. In some embodiments the functionality of the computer system 400 may be implemented more in hardware and less in software, or less in hardware and more in software, as is known in the art.
FIG. 5 presents a block diagram illustrating a computer 500 (such as one of the computers 120 in FIG. 1, or a computer used by one of the individuals 116 in FIG. 1) in accordance with an embodiment of the present invention. Computer 500 may include one or more data processors or central processing units (CPUs) 510, a communication interface 512 for communicating with other computers, servers and/or clients, a user interface 514, a memory 524, and one or more signal lines 522 for coupling these components to one another. Note that the one or more processing units 510 may support parallel processing and/or multi-threaded operation, the communication interface 512 may have a persistent communication connection, and the one or more signal lines 522 may constitute a communication bus. Moreover, the user interface 514 may include a display 516, a keyboard 518, and/or a pointer 520 (such as a mouse).
Memory 524 in the computer 500 may include volatile memory and/or non-volatile memory. More specifically, memory 524 may include ROM, RAM, EPROM, EEPROM, FLASH, one or more smart cards, one or more magnetic disc storage devices, and/or one or more optical storage devices. Memory 524 may store an operating system 526 that includes procedures (or a set of instructions) for handling various basic system services for performing hardware dependent tasks. The memory 524 may also store procedures (or a set of instructions) in a communication module 528. The communication procedures may be used for communicating with one or more computers and/or servers, including computers and/or servers that are remotely located with respect to the computer 500. In addition, the communication procedures may be used for communicating with a computer system that implements a search engine.
Memory 524 may also include multiple program modules (or a set of instructions), including a graphics module 530 (or a set of instructions) and a browser module 532 (or a set of instructions). Furthermore, the browser module 532 may include an embedded search-engine tool 534 (or a set of instructions) and/or an embedded editing and classification tool 536 (or a set of instructions). Note that the embedded search-engine tool 534 may be provided by a remotely located search engine. This tool may perform the functions of: monitoring the user interface 514 for a user input; transmitting a user request (such as search query) using the communication module 528; receiving search results (such as documents or images) using the communication module 528; and displaying at least some of these results in an appropriate format (such as that specified by editing instructions associated with the documents or images) using the display 516.
In addition, in some embodiments the memory 524 includes one or more stored web pages and/or documents 538, and optionally an encryption module 540 (or a set of instructions).
Note that computer 500 may include fewer components or additional components, two or more components may be combined into a single component, and/or a position of one or more components may be changed. For example, in embodiments where the computer 500 is coupled to a local server, one or more of the modules and/or applications in the memory 524 may be stored in a server computer at a different location than the user. In addition, the various modules and sub-modules may be rearranged and/or combined.
We now discuss data structures that may be used in the system 100 (FIG. 1), the computer system 400 (FIG. 4), and/or the computer 500. In particular, FIG. 6 presents a block diagram illustrating a data structure 600 in accordance with an embodiment of the present invention. This data structure may include information associated with documents 610. Furthermore, a given document (such as document 610-1) the data structure 600 may include editing instructions 612-1, classification information 614-1, as well as categories 616-1, sub-categories 618-1, and/or batches 620-1 associated with the document 610-1.
FIG. 7 presents a block diagram illustrating a data structure 700 in accordance with an embodiment of the present invention. This data structure may include description words 710 (such as categories 616 in FIG. 6). In particular, the description words 710 may include types of clothing, such as: accessories 712, active wear 714, beauty 716, blouse/shirt 718, coat/outerwear 720, color inspirations 722, denim 724, dress 726, embellished 728, and/or eveningwear 730.
Note that that in some embodiments of the data structures 600 and/or 700 there may be fewer or additional components, two or more components may be combined into a single component, and/or a position of one or more components is changed.
While the preceding discussion has used images (such as, fashion images) as an illustrative example, embodiments of the system, process, and technique may be applied to organizing other types of documents and/or content. In particular, these techniques may facilitate the determining classification information and the identification of content in documents (such as photographs, text, speech, film, video, etc.) which include information that has subjective value or relevance, be it in popular culture or in other subject areas. Note that in some embodiments this subjective value is dynamic as a function of time. Furthermore, a subset of the organized documents may be provided when requests and/or search queries are provided to the system (such as the system 100 in FIG. 1). Thus, these techniques are well suited for use in conjunction with search engines, including those implemented on the Internet and/or an intranet.
The foregoing descriptions of embodiments of the present invention have been presented for purposes of illustration and description only. They are not intended to be exhaustive or to limit the present invention to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present invention. The scope of the present invention is defined by the appended claims.

Claims (20)

1. A method for determining information associated with documents, comprising:
receiving documents, wherein the documents include images;
determining a first set of editing instructions and classification information associated with the documents using image-processing software; and
providing the images and first set of editing instructions and classification to a group of individuals
receiving a second set of editing instructions and classification information associated with the documents, wherein the second set of editing instructions and classification information are generated by a group of individuals and include modifications and additions to the first set of editing instructions and classification information, and wherein the second set of editing instructions and classification information include subjective comments about content in the documents
storing the documents and the second set of editing instructions and classification information in a non-transitory computer-readable medium, wherein the second set of editing instructions and classification information facilitate searches for content in the stored documents;
receiving a request for information that is associated with a time-varying subjective value
identifying information by searching through the stored documents using the second set of editing instructions and the classification information; and
providing the information in response to the request, wherein the information includes multiple versions of at least one of the documents, and wherein the multiple versions are, at least in part, based on different editing instructions and classification information in the second set of editing instructions and classification information from different individuals in the group, which includes different identified subjective content, thereby proving different images that reflect the time-varying subjective value.
2. The method of claim 1, wherein the information is provided to an individual or an entity that is other than that from which the documents were received or the group of individuals.
3. The method of claim1 wherein the group of individuals has a professional relationship with an organization that provides a system that receives the documents and determines the first set of editing instructions and classification information.
4. The method of claim 3, wherein the group of individuals are external to the organization.
5. The method of claim 1, further comprising detecting errors in the first set of editing instructions and classification information or the second set of editing instructions and classification information.
6. The method of claim 5, further comprising correcting the errors.
7. The method of claim 1, wherein the images include photographs taken at a fashion show.
8. The method of claim 1, wherein the images include photographs taken at a tradeshow.
9. The method of claim 1, wherein the classification information in the first set of editing instructions and classification information or the second set of editing instructions and classification information include colors.
10. The method of claim 1, wherein the classification information in the first set of editing instructions and classification information or the second set of editing instructions and classification information include types of clothing.
11. The method of claim 1, wherein the editing instructions in the first set of editing instructions and classification information or the second set of editing instructions and classification information include cropping instructions.
12. The method of claim 11, wherein the cropping instructions for a given document associated with the second set of editing instructions and classification information includes a history of the cropping instructions generated by individuals in the group of individuals.
13. The method of claim 1, wherein the editing instructions and classification information for a given document associated with the second set of editing instructions and classification information includes distinct contributions from individuals in the group of individuals.
14. The method of claim 1, further comprising accepting or rejecting editing instructions and classification information for a given document associated with the first set of editing instructions and classification information or the second set of editing instructions and classification information.
15. the method of claim 1, wherein a given document and the associated editing instructions in the second set of editing instructions and classification information in the non-transitory computer-readable medium are stored in a hierarchical data structure based on classification information associated with the given document, and wherein the given document is associated with the second set of editing instructions and classification information.
16. the method of claim 15, wherein the hierarchical data structure includes categories and groups of documents, wherein the given document is assigned to a given category and one or more groups of documents based on the classification information associated with the given document, and wherein the given document is associated with the second set of editing instructions and classification information.
17. The method of claim 16, wherein the given document is further assigned to the given category based on a time when the given document was received or a geographic location associated with the given document.
18. The method of claim 1, further comprising:
receiving a request for information from a client;
identifying a subset of the documents based on the request, wherein the subset of the documents is identified based on the classification information associated with the subset of documents associated with the second set of editing instructions;
providing the subset of the documents and associated editing instructions in the second set of editing instructions and classification information to the client; and
wherein the associated editing instructions define formats in which the subset of the documents are to be displayed.
19. A non-transitory computer program product for use in conjunction with a computer system, the computer program product comprising a computer-readable storage medium and a computer-program mechanism embedded therein for configuring the computer system, the computer-program mechanism including:
instructions for receiving documents, wherein the documents include images;
instructions for determining a first set of editing instructions and classification information associated with the documents using image-processing software;
instructions for providing the images and the first set of editing instructions and classification information to a group of individuals;
instructions for receiving a second set of editing instructions and classification information associated with the documents, wherein the second set of editing instructions and classification information are generated by the group of individuals and include modifications and additions to the first set of editing instructions and classification information, and wherein the second set of editing instructions and classification information include subjective comments about content in the documents;
instructions for storing the documents and the second set of editing instructions and the classification information in a non-transitory computer-readable medium, wherein the second set of editing instructions and the classification information facilitate searches for content in the stored documents;
instructions for receiving a request for information that is associated with a time-varying subjective value;
instructions for identifying information by searching through the stored documents using the second set of editing instructions and the classification information; and
instructions for providing the information in response to the request, wherein the information includes multiple versions of at least one of the documents, and
wherein the multiple versions are, at least in part, based on different editing instructions and classification information in the second set of editing instructions and classification information from different individuals in the group of individuals, which include different identified subjective content, thereby providing different images that reflect the time-varying subjective value.
20. A computer system, comprising:
a processor;
memory;
a program module, wherein the program module is stored in the memory and configured to be executed by the processor, the program module including:
instructions for receiving documents, wherein the documents include images;
instructions for determining a first set of editing instructions and classification information associated with the documents using image-processing software; and
instructions for providing the images and the first set of editing instructions and classification information to a group of individuals;
instructions for receiving a second set of editing instructions and classification information associated with the documents, wherein the second set of editing instructions and classification information are generated by the group of individuals and include modifications and additions to the first set of editing instructions and classification information, and wherein the second set of editing instructions and classification information include subjective comments about content in the documents;
instructions for storing the documents and the second set of editing instructions and the classification information in a non-transitory computer-readable medium, wherein the second set of editing instructions and the classification information facilitate searches for content in the stored documents;
instructions for receiving a request for information that is associated with a time-varying subjective value;
instructions for identifying information by searching through the stored documents using the second set of editing instructions and the classification information; and
instructions for providing the information in response to the request, wherein the information includes multiple versions of at least one of the documents, and
wherein the multiple versions are, at least in part, based on different editing instructions and classification information in the second set of editing instructions and classification information from different individuals in the group of individuals, which include different identified subjective content, thereby providing different images that reflect the time-varying subjective value.
US11/726,427 2007-03-21 2007-03-21 System and technique for editing and classifying documents Active 2029-08-18 US7992082B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US11/726,427 US7992082B2 (en) 2007-03-21 2007-03-21 System and technique for editing and classifying documents
CN200880008887A CN101681363A (en) 2007-03-21 2008-03-07 System and technique for editing and classifying documents
EP08731652A EP2126742A2 (en) 2007-03-21 2008-03-07 System and technique for editing and classifying documents
PCT/US2008/056200 WO2008115713A2 (en) 2007-03-21 2008-03-07 System and technique for editing and classifying documents
US13/164,274 US9158793B2 (en) 2007-03-21 2011-06-20 System and technique for editing and classifying documents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/726,427 US7992082B2 (en) 2007-03-21 2007-03-21 System and technique for editing and classifying documents

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/164,274 Continuation US9158793B2 (en) 2007-03-21 2011-06-20 System and technique for editing and classifying documents

Publications (2)

Publication Number Publication Date
US20080235575A1 US20080235575A1 (en) 2008-09-25
US7992082B2 true US7992082B2 (en) 2011-08-02

Family

ID=39766703

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/726,427 Active 2029-08-18 US7992082B2 (en) 2007-03-21 2007-03-21 System and technique for editing and classifying documents
US13/164,274 Active 2030-03-25 US9158793B2 (en) 2007-03-21 2011-06-20 System and technique for editing and classifying documents

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/164,274 Active 2030-03-25 US9158793B2 (en) 2007-03-21 2011-06-20 System and technique for editing and classifying documents

Country Status (4)

Country Link
US (2) US7992082B2 (en)
EP (1) EP2126742A2 (en)
CN (1) CN101681363A (en)
WO (1) WO2008115713A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252296A1 (en) * 2007-03-21 2011-10-13 Primatech Corporation Dba Stylesight System and technique for editing and classifying documents
US11580173B2 (en) 2017-12-08 2023-02-14 Palantir Technologies Inc. Systems and methods for using linked documents

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8515912B2 (en) 2010-07-15 2013-08-20 Palantir Technologies, Inc. Sharing and deconflicting data changes in a multimaster database system
US8688749B1 (en) 2011-03-31 2014-04-01 Palantir Technologies, Inc. Cross-ontology multi-master replication
US8285706B2 (en) * 2009-06-10 2012-10-09 Microsoft Corporation Using a human computation game to improve search engine performance
WO2013009770A1 (en) * 2011-07-12 2013-01-17 Inkling Systems, Inc. Workflow system and method for creating, distributing and publishing content
US10534842B2 (en) 2011-07-12 2020-01-14 Inkling Systems, Inc. Systems and methods for creating, editing and publishing cross-platform interactive electronic works
US9317496B2 (en) 2011-07-12 2016-04-19 Inkling Systems, Inc. Workflow system and method for creating, distributing and publishing content
WO2013100350A1 (en) 2011-12-28 2013-07-04 Samsung Electronics Co., Ltd. Image processing apparatus, upgrade apparatus, display system including the same, and control method thereof
US8782004B2 (en) 2012-01-23 2014-07-15 Palantir Technologies, Inc. Cross-ACL multi-master replication
US20140032247A1 (en) * 2012-07-26 2014-01-30 Symbility Solutions Inc. Claims-underwriting integration system and method
US9081975B2 (en) * 2012-10-22 2015-07-14 Palantir Technologies, Inc. Sharing information between nexuses that use different classification schemes for information access control
US9501761B2 (en) 2012-11-05 2016-11-22 Palantir Technologies, Inc. System and method for sharing investigation results
US8886601B1 (en) 2013-06-20 2014-11-11 Palantir Technologies, Inc. System and method for incrementally replicating investigative analysis data
CN104615601A (en) * 2013-11-04 2015-05-13 英业达科技有限公司 Webpage based recording system and method thereof
US9569070B1 (en) 2013-11-11 2017-02-14 Palantir Technologies, Inc. Assisting in deconflicting concurrency conflicts
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
CA2951549A1 (en) * 2014-06-09 2015-12-17 Atomic Reach Inc. System and method for content intake, scoring and distribution
US10572496B1 (en) 2014-07-03 2020-02-25 Palantir Technologies Inc. Distributed workflow system and database with access controls for city resiliency
JP6672668B2 (en) * 2015-09-28 2020-03-25 富士ゼロックス株式会社 Image processing device and program
US10621198B1 (en) 2015-12-30 2020-04-14 Palantir Technologies Inc. System and method for secure database replication
US10262053B2 (en) 2016-12-22 2019-04-16 Palantir Technologies Inc. Systems and methods for data replication synchronization
US10068002B1 (en) 2017-04-25 2018-09-04 Palantir Technologies Inc. Systems and methods for adaptive data replication
US10430062B2 (en) 2017-05-30 2019-10-01 Palantir Technologies Inc. Systems and methods for geo-fenced dynamic dissemination
US11030494B1 (en) 2017-06-15 2021-06-08 Palantir Technologies Inc. Systems and methods for managing data spills
US10915542B1 (en) 2017-12-19 2021-02-09 Palantir Technologies Inc. Contextual modification of data sharing constraints in a distributed database system that uses a multi-master replication scheme
US11074354B2 (en) * 2018-09-19 2021-07-27 International Business Machines Corporation Segmenting, redacting, and transporting secure documents in a mixed security environment
US11196892B2 (en) * 2019-05-30 2021-12-07 Microsoft Technology Licensing, Llc Use of client compute for document processing
US20230274024A1 (en) * 2022-02-25 2023-08-31 BeeKeeperAI, Inc. Systems and methods for dataset selection optimization in a zero-trust computing environment

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046955A2 (en) 1999-12-16 2001-06-28 Pictureiq Corporation Video-editing workflow methods and apparatus thereof
US20030040985A1 (en) * 1999-08-25 2003-02-27 Kensaku Yukino Digital contents automatic preparation system and recording medium with automatically prepared digital contents recorded thereon
US20050289461A1 (en) * 2003-05-23 2005-12-29 Manoel Amado System and method for digital content processing and distribution
US20080028314A1 (en) * 2006-07-31 2008-01-31 Bono Charles A Slide kit creation and collaboration system with multimedia interface
US20080059286A1 (en) * 2006-08-31 2008-03-06 Opinionlab, Inc. Computer-implemented system and method for measuring and reporting business intelligence based on comments collected from web page users using software associated with accessed web pages
US20080136838A1 (en) * 2002-05-31 2008-06-12 Patricia Anne Goede System and method for visual annotation and knowledge representation
US20090083653A1 (en) * 2000-06-23 2009-03-26 Makoff Jeffrey T System for facilitating remote digital image manipulation services
US20090106113A1 (en) * 2005-09-06 2009-04-23 Samir Arora Internet publishing engine and publishing process using ad metadata to deliver ads

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060217994A1 (en) * 2005-03-25 2006-09-28 The Motley Fool, Inc. Method and system for harnessing collective knowledge
US20060224964A1 (en) * 2005-03-30 2006-10-05 Microsoft Corporation Method, apparatus, and system of displaying personal digital media according to display characteristics
US7992082B2 (en) * 2007-03-21 2011-08-02 Primatech Corporation System and technique for editing and classifying documents

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030040985A1 (en) * 1999-08-25 2003-02-27 Kensaku Yukino Digital contents automatic preparation system and recording medium with automatically prepared digital contents recorded thereon
WO2001046955A2 (en) 1999-12-16 2001-06-28 Pictureiq Corporation Video-editing workflow methods and apparatus thereof
US20090083653A1 (en) * 2000-06-23 2009-03-26 Makoff Jeffrey T System for facilitating remote digital image manipulation services
US20080136838A1 (en) * 2002-05-31 2008-06-12 Patricia Anne Goede System and method for visual annotation and knowledge representation
US20050289461A1 (en) * 2003-05-23 2005-12-29 Manoel Amado System and method for digital content processing and distribution
US20090106113A1 (en) * 2005-09-06 2009-04-23 Samir Arora Internet publishing engine and publishing process using ad metadata to deliver ads
US20080028314A1 (en) * 2006-07-31 2008-01-31 Bono Charles A Slide kit creation and collaboration system with multimedia interface
US20080059286A1 (en) * 2006-08-31 2008-03-06 Opinionlab, Inc. Computer-implemented system and method for measuring and reporting business intelligence based on comments collected from web page users using software associated with accessed web pages

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Huang, 2002, Web-based support for collaborative product design review, Department of Industrial and Manufacturing Systems Engineering, University of Hong Kong, Pokfulam Road, Hong Kong, PR China, pp. 72-88. *
Martin Evening: "Introducing adobe photoshop lightroom", Chapter 1 of "The Adobe Photoshop Lightroom Book", (online) Mar. 12, 2007, pp. 1-35, XP002499533, ISBN: 0-32-138543-8, URL: http://photoshopnews.com/stories/downloads/lightroombook-01.pdf>, (retrieved on Oct. 13, 2008).
Travis Saling: "A short diversion into digital photography: Aperture vs. Lightroom", Internet Article, (online), Nov. 10, 2006, pp. 1-2, XP002499534, Retrieved from the Internet: URL://http://web.archieve.org/web/20070320150455/http://westsidegardener.com/articles/2006/aperture-vs.-lightroom.html>, (retrieved on Oct. 10, 2008).
Travis Saling: "A short diversion into digital photography: Aperture vs. Lightroom", Internet Article, (online), Nov. 10, 2006, pp. 1-2, XP002499534, Retrieved from the Internet: URL://http://web.archieve.org/web/20070320150455/http://westsidegardener.com/articles/2006/aperture—vs.—lightroom.html>, (retrieved on Oct. 10, 2008).

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252296A1 (en) * 2007-03-21 2011-10-13 Primatech Corporation Dba Stylesight System and technique for editing and classifying documents
US9158793B2 (en) * 2007-03-21 2015-10-13 Stylesight, Inc. System and technique for editing and classifying documents
US11580173B2 (en) 2017-12-08 2023-02-14 Palantir Technologies Inc. Systems and methods for using linked documents
US11921796B2 (en) 2017-12-08 2024-03-05 Palantir Technologies Inc. Systems and methods for using linked documents

Also Published As

Publication number Publication date
WO2008115713A3 (en) 2008-12-18
EP2126742A2 (en) 2009-12-02
CN101681363A (en) 2010-03-24
US20080235575A1 (en) 2008-09-25
WO2008115713A2 (en) 2008-09-25
US9158793B2 (en) 2015-10-13
US20110252296A1 (en) 2011-10-13

Similar Documents

Publication Publication Date Title
US7992082B2 (en) System and technique for editing and classifying documents
US10747826B2 (en) Interactive clothes searching in online stores
US9678989B2 (en) System and method for use of images with recognition analysis
US12061642B2 (en) Methods to present search keywords for image-based queries
US9959291B2 (en) Users tagging users in media online
US7542610B2 (en) System and method for use of images with recognition analysis
US7917514B2 (en) Visual and multi-dimensional search
US20200342320A1 (en) Non-binary gender filter
US20080005091A1 (en) Visual and multi-dimensional search
US20140067542A1 (en) Image-Based Advertisement and Content Analysis and Display Systems
US11568011B2 (en) System and method for improved searching across multiple databases
US9679081B2 (en) Navigation control for network clients
US9613059B2 (en) System and method for using an image to provide search results
CN101957825A (en) Method for searching image based on image and video content in webpage
US10339195B2 (en) Navigation control for network clients
Chen et al. iLike: integrating visual and textual features for vertical search
US20230044463A1 (en) System and method for locating products
WO2007041647A2 (en) System and method for use of images with recognition analysis
Luce et al. Neural Networks and Image Search

Legal Events

Date Code Title Description
AS Assignment

Owner name: PRIMATECH CORPORATION DBA STYLESIGHT, NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:WEISS, STEPHEN MICHAEL;REEL/FRAME:019153/0509

Effective date: 20070312

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: STYLESIGHT, INC., NEW YORK

Free format text: CHANGE OF NAME;ASSIGNOR:PRIMATECH CORPORATION;REEL/FRAME:027046/0024

Effective date: 20090605

REMI Maintenance fee reminder mailed
FPAY Fee payment

Year of fee payment: 4

SULP Surcharge for late payment
AS Assignment

Owner name: WGSN, INC., NEW YORK

Free format text: MERGER;ASSIGNOR:STYLESIGHT, INC.;REEL/FRAME:035687/0509

Effective date: 20140930

AS Assignment

Owner name: DEUTSCHE BANK AG, LONDON BRANCH, UNITED KINGDOM

Free format text: GRANT OF SECURITY INTEREST;ASSIGNOR:WGSN, INC.;REEL/FRAME:035762/0428

Effective date: 20150520

AS Assignment

Owner name: WGSN, INC., NEW YORK

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:DEUTSCHE BANK AG, LONDON BANK;REEL/FRAME:037990/0904

Effective date: 20160307

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8

AS Assignment

Owner name: ASCENTIAL INC., NEW YORK

Free format text: CHANGE OF NAME;ASSIGNOR:WGSN, INC.;REEL/FRAME:051637/0111

Effective date: 20191127

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12