Method For Searching A Database

MATHIEU; Eric ;   et al.

Patent Application Summary

U.S. patent application number 14/952454 was filed with the patent office on 2016-06-02 for method for searching a database. This patent application is currently assigned to XILOPIX. The applicant listed for this patent is XILOPIX. Invention is credited to Hanene MAGHREBI, Cyril MARCH, Eric MATHIEU, Samuel PETIT, Laurent VALLAR.

Application Number20160154885 14/952454
Document ID /
Family ID49474528
Filed Date2016-06-02

United States Patent Application 20160154885
Kind Code A1
MATHIEU; Eric ;   et al. June 2, 2016

METHOD FOR SEARCHING A DATABASE

Abstract

The present disclosure relates to a method for searching, in a database containing a set of objects each linked to a descriptor, including the following steps: receiving a first request, emitted by a terminal, and including information pertaining to a selection by a user of a theme from a set of themes, each theme being associated to a descriptor; searching, within the database, based on the first request, of a first set of objects; transmitting the first set of objects to the terminal; receiving a second request, emitted by the terminal, and including an information pertaining to an indication of relevance or non-relevance of one of the objects of the first set of objects; searching, in the database and/or in the first set of objects, based on the second request, of a second set of objects; and transmitting the second set of objects to the terminal.


Inventors: MATHIEU; Eric; (EPINAL, FR) ; MARCH; Cyril; (EPINAL, FR) ; MAGHREBI; Hanene; (NANCY, FR) ; PETIT; Samuel; (EPINAL, FR) ; VALLAR; Laurent; (EPINAL, FR)
Applicant:
Name City State Country Type

XILOPIX

Epinal

FR
Assignee: XILOPIX
EPINAL
FR

Family ID: 49474528
Appl. No.: 14/952454
Filed: November 25, 2015

Related U.S. Patent Documents

Application Number Filing Date Patent Number
PCT/FR2014/051300 Jun 2, 2014
14952454

Current U.S. Class: 707/706
Current CPC Class: G06F 16/951 20190101; G06F 16/2453 20190101; G06F 16/24578 20190101; G06F 16/24575 20190101; G06F 16/285 20190101; G06F 16/9535 20190101; G06F 16/532 20190101; G06F 16/248 20190101
International Class: G06F 17/30 20060101 G06F017/30

Foreign Application Data

Date Code Application Number
May 31, 2013 FR 13/54971

Claims



1. A search method, suitable to be implemented by a search engine, for searching in a database containing at least one set of objects each linked to at least one descriptor, the search method comprising the following steps: receiving a first request, emitted by a terminal, and including at least one information pertaining to a selection by a user of at least one theme from a set of themes, each theme being associated with at least one descriptor; searching, within the database, based on the first request, of a first set of objects; transmitting the first set of objects to the terminal; receiving a second request, emitted by the terminal, and including an information pertaining to an indication of relevance or non-relevance of at least one of objects of the first set of objects; searching, in the database and/or in the first set of objects, based on the second request, of a second set of objects; and transmitting the second set of objects to the terminal.

2. The search method according to claim 1 wherein at least one of the first request or the second request comprises at least one search parameter comprising a series of at least one search element obtained by freely adding elements to the series by the user, the series comprising elements having a category chosen from the group consisting of keywords, an expression, an image, a location, a date, a time, a video, a sound, multimedia, and a text.

3. The search method according to claim 2, wherein an element belonging to at least one predetermined category and considered to be unauthorized is not added to the series.

4. The search method according to claim 2, wherein the series comprise at least two elements having different categories.

5. The search method according to claim 2, wherein the series comprise at least two elements having non-textual categories.

6. A search method, adapted to be implemented by a terminal, in a database containing at least one set of objects each linked to at least one descriptor, the search method comprising the following steps: selecting, by a user, of at least one theme from a set of themes, each theme being associated with at least one descriptor; transmitting, to a search engine, a first request including at least one information relative to said at least one theme selected by the user; receiving a first set of objects transmitted by the search engine in response to the first request; entering, by the user, an information relative to an indication of relevance or irrelevance of at least one of objects of the first set of objects; transmitting, to the search engine, a second request including the entered information pertaining to an indication of the relevance or the irrelevance of at least one of the objects of the first set of objects; and receiving a second set of objects transmitted by the search engine in response to the second request.

7. The search method according to claim 6, wherein at least one of the first request or the second request comprises at least one search parameter comprising a series of at least one search element, the series being obtained by freely adding elements to the series by the user, and the series comprising elements having a category chosen from the group consisting of keywords, an expression, an image, a location, a date, a time, a video, a sound, multimedia, and a text.

8. The search method according to claim 7, wherein an element belonging to at least one predetermined category considered to be unauthorized is not added to the series.

9. The search method according to claim 7, wherein the series comprises at least two elements having different categories.

10. The search method according to claim 7, wherein the series comprises at least two elements having non-textual categories.

11. A terminal including a search module in a database, said database containing at least one set of objects each linked to at least one descriptor, the terminal comprising: means configured to allow a user to select at least one theme from a set of themes, each theme being associated with at least one descriptor; means configured to transmit a first request including at least one information pertaining to said at least one theme selected by the user, to a search engine; means configured to receive a first set of objects transmitted by the search engine in response to the first request; means configured to allow the user to enter an information pertaining to an indication of relevance or irrelevance of at least one of objects of the first set of objects; means configured to transmit a second request including the entered information pertaining to the indication of the relevance or irrelevance of at least one of the objects of the first set of objects, to the search engine; and means configured to receive a second set of objects transmitted by the search engine in response to the second request.

12. The terminal according to claim 11, wherein at least one of the first request or the second request comprises at least one search parameter comprising a series of at least one search element, the series being obtained by freely adding elements to the series by the user, the series comprising elements having a category chosen from the group consisting of keywords, an expression, an image, a location, a date, a time, a video, a sound, multimedia, and a text.

13. The terminal according to claim 11, further including a tactile user interface.

14. A computer program including instructions for executing steps of the search method according to claim 1 when said computer program is executed by a processor.

15. A computer program including instructions for executing steps of the search method according to claim 6 when said computer program is executed by a processor.

16. A storage medium readable by a computer on which a computer program is stored comprising instructions for executing steps of the search method according to claim 1.

17. A storage medium readable by a computer on which a computer program is stored comprising instructions for executing steps of the search method according to claim 6.
Description



CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application is a continuation of International Application No. PCT/FR2014/051300, filed on Jun. 2, 2014, which claims the benefit of FR 13/54971, filed on May 31, 2013. The disclosures of the above applications are incorporated herein by reference in their entirety.

FIELD

[0002] The present disclosure relates to means for searching a database

BACKGROUND

[0003] The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.

[0004] The development of digital technologies in recent years, accompanied by the development of networks and the Internet, has led to a very significant increase in the quantity of available digital content.

[0005] One particularly significant example is the development of digital photography, in particular due to the development of online photo posting and sharing sites. Thus, one of the leaders among these types of sites has exceeded 5 billion photos put online and is continuing to put thousands more online each day.

[0006] These digital objects are generally inventoried in databases combined with keywords and/or other technical descriptors (name, location, size, resolution, etc.). These keywords and descriptors make it possible to perform searches in the database and return the objects whose keywords correspond to the search criteria entered by the user in a search field.

[0007] However, currently, most search engines are primarily designed to look for text within webpages or files, and in particular in associated descriptive texts.

[0008] In the case where the stored objects are not textual in nature, for example photos, the associated keywords and descriptors take on considerable importance to make it possible to perform an effective search and return relevant results.

[0009] Many search engines exist to perform such searches, and many algorithms have been developed in order to improve the relevance of the results of the searches.

[0010] Despite improved algorithms, a keyword search has intrinsic limitations, for example in particular due to the existence in human language of synonyms, homonyms, hierarchy within terms, and degrees of precision.

[0011] Due to these limitations, the specific intention of the user's search beyond the first meaning of the keywords used remains unknown to the search engine.

[0012] In order to offset these limitations, most search engines allow users to perform an advanced search, in particular by using several keywords combined with each other by logic operators.

[0013] Such a search method is not, however, particularly easy for users and may, on some search engines, even go so far as to require quasi-programming skills to write a request, while not knowing whether that request may be correctly interpreted by the engine and lead to the desired result.

[0014] Furthermore, the steps necessary for allowing a user to perform complex searches in this context, prove to not be suitable for mobile terminals, and particularly for terminals with a tactile interface. Entering the required data, for example typing keywords and a request based on the appropriate language, often prove to be long and complex, and generally require the use of a keyboard or complex interface elements unsuitable for terminals having a small screen and/or a tactile interface.

[0015] Various systems exist making it possible to facilitate the user's task and desired searches.

[0016] Application WO 2012/127168 thus targets a method for refining search results providing a first response to this problem.

[0017] It should, however, be noted that the method covered by document WO 2012/127168 refines the results of a prior search, i.e., performs a sort, but the initial request step itself is not optimized. This is therefore a lost optimization step.

[0018] Furthermore, the elements eliminated during the initial request step and not returned in the initial results are not taken into account during refining and will not be able to be reintegrated into the results if necessary.

[0019] Finally, document WO 2012/127168 does not describe means for facilitating and improving the use of a search method without beforehand entering an initial request using a keyboard.

[0020] The system developed by Google is for example known for its image search service, which makes it possible to launch a search from a digital image before performing complementary searches by associating one or more keywords with it.

[0021] However, the search system only takes into account a single image that must first be added before any keywords.

[0022] Changing the image restarts the search and erases the keywords previously added.

[0023] Furthermore, adding an image automatically launches the first search based on the image alone. The keywords subsequently added will make it possible to refine the selection.

SUMMARY

[0024] The present disclosure provides a search method, suitable to be implemented by a search engine, in a database containing at least one set of objects each linked to at least one descriptor. The method includes the following steps:

[0025] receiving a first request, emitted by a terminal, and including at least an information pertaining to a selection by a user of at least one theme from among a set of themes, each theme being associated with at least one descriptor;

[0026] searching, within the database, based on the first request, of a first set of objects;

[0027] transmitting, the first set of objects to the terminal;

[0028] receiving a second request, emitted by the terminal, and including an information pertaining to an indication of the relevance or non-relevance of at least one of the objects of the first set of objects;

[0029] searching, in the database and/or in the first set of objects, based on the second request, of a second set of objects; and

[0030] transmitting, the second set of objects to the terminal.

[0031] The search engine may be implemented on a remote device, for example a server including the database and means for performing the processing required for taking into account the requests and searches. The search engine may also be implemented on the terminal, for example a module executing a software program able to access the database and able to perform the processing required for taking into account requests and searches.

[0032] By theme, it meant in particular the subject(s) or idea(s) which the search should focus on. For example a set of non-exhaustive themes may be: Culture, Economy, Politics, Leisure activities, Sports, Science, History, etc. Each theme may be decomposed into a plurality of themes. Thus for the Sports theme, it is possible to decompose it into: Team, Individual, Indoor, Nature, Old, Results, etc. Thus, the first request may include the information pertaining to a selection by the user of several themes from among the set of themes, for example Sports, Tennis, Results. The set of themes may be presented to the user by means of a user interface, and, allowing the latter to choose those which seem close to the search he/she wishes to perform. Said at least one descriptor associated to each theme may be directly relevant to the description thereof, for example "sports" for the sports theme. Other descriptors may be associated to a same theme, for example a list of synonyms or even translations into various languages. For example, for the sports theme, the descriptor "physical activity" may be associated.

[0033] Thus, the present disclosure allows the user to choose from among a predefined set a theme for his/her research, and to be introduced with the first set of objects corresponding to the result. Once, the user having designated, from among the objects thus obtained, one or several objects as neutral, relevant or irrelevant, it is then possible to either perform a new search taking into account this information or to refine the previously obtained results. Each of the steps may also be repeated as much as necessary, until the required results have been obtained. In addition, by means of a suitable user interface, it is possible to perform a complex iterative search without entering any keyword or complex textual request, based on in particular elements represented visually. Indeed, the set of themes may be proposed in the form of a user interface in which the user selects the themes, for example by pointing using his/her index finger a corresponding button. Similarly, the objects of the first set may individually be designated as relevant, irrelevant or neutral by the user, for example by using a user interface in which three buttons allow the user to choose the required relevance indication by simply pressing with a finger.

[0034] Furthermore, the present disclosure advantageously allows the user to proceed with a multilingual search and/or express his/her search preferences by using objects/results obtained in various languages. Indeed, by offering the user the possibility of selecting, for example using a user interface comprising icons, a theme to which one or several descriptors may be associated, the requests thus constituted may include a plurality of descriptors, in several languages, for a same theme. Furthermore, the visual representation of the search results and/or of the themes allows an even easier way for the user to express these choices and preferences, independently of the language.

[0035] For example, the theme Economy may be associated with the descriptors "Economie" in French and "Economy" in English. Thus, without the user having to enter a translation, the request may thus be formulated such as to be relevant in several languages. In addition, even if the user in fine requires obtaining results in French only, throughout the various iterations, the latter may want to indicate as relevant an object of which the content is in Chinese, and represented by an image of a hiking pack. Thus, it will be possible to take into account in the request the desire of the user to perform a search for hiking packs expressed in relation to the object of which the content is in Chinese, but to only show at the end results of objects in relation to hiking packs in French (by taking into account for example a preference file indicating that the user only wishes results in French).

[0036] Particularly, the first request and/or the second request may comprise at least one search parameter comprising a set of at least one search element obtained by freely adding elements to said series by the user. For example, the series comprises elements having a category chosen from among the group of keywords, expression, image, location, date, time, video, sound, multimedia, text. The addition step is able to be repeated multiple times until a search instruction is given.

[0037] Freely adding elements means that the elements are not selected from among a list of predefined elements in a request form, but are outside the request form. More concretely, a selection box (of the <select> type for an HTML form, for example) does not allow the free adding of elements, even when several elements can be selected, the selected elements necessarily having to be chosen from a list of predefined choices.

[0038] Of course, this does not exclude presenting the user with a list of elements outside the form strictly speaking, but the user remains free to select or not select from that list.

[0039] The series of elements may be sent to the search engine using any means. It may in particular be sent within one or more variables in the form of a table or a string of characters whereof the elements (or their identifiers) are separated by a specific character (for example a semicolon ";" or a comma "," as in files of the "comma separated values" (CSV) type). The character or separating means for the elements must be unique and make it possible to discriminate between elements.

[0040] Thus, the space character cannot be considered discriminating and a sentence cannot automatically be considered as a series of words, as it does not make it possible to distinguish whether the user has added a word or group of words as a search element. For example, the words "magic mountain" may be added by the user as two distinct and separate elements or as a general expression, and imply a very different search context.

[0041] Thus, the addition step also refers to a discriminating action by the user validating his addition. A continuous typing of words separated by spaces thus cannot constitute several additions within the meaning of the present disclosure. In such a case, it is then possible for example to provide that the user validates his addition using the enter key.

[0042] Thus, in the example previously provided, the latter may press the enter key after each of the words "magic" and "mountain", or after having entered the complete expression "magic mountain".

[0043] In the case of object elements of the image type, it is possible to consider a drag and drop function, thereby validating the addition of the element into the series.

[0044] Of course, these user entry means pertain to the graphic interface, and a computer designer may choose different presentation modes.

[0045] Thus, by implementing a series of distinct request elements performing a buffer role before sending the information to the search engine, the user can add several distinct elements to his/her request, if applicable from different categories or a same category, which may therefore be preprocessed separately.

[0046] Part of the combination and identification work of the elements, generally done by the search engine (proximity of the words, meaning, groupings, etc.), may thus be given directly over to the user.

[0047] Furthermore, a search engine is generally capable only of analyzing words and sentences in this way.

[0048] Using the method according to the present application, the search engine, instead of receiving a single request string to process, break down and interpret as in the prior art, will receive a series of precut distinct elements according to the search intention of the user.

[0049] By allowing the direct identification of the search elements by the user, it is possible to take other types of elements into account, in particular of a non-textual nature.

[0050] As previously explained, in the case of keyword use, for example, the keywords will no longer be separated from each other by the search engine, but are separated into search elements as of the user request stage.

[0051] A user wishing to perform a search on concepts A and B, for example, will then be able to add those concepts A and B directly either as distinct elements in the series or as a unit AB if that has a meaning, and thus, without using a request language, for example of the Boolean type where the user would be required to include operators between the two concepts.

[0052] Processing is thus facilitated and improved, several interpretation possibilities being able to be eliminated as of the search stage and thus providing results closer to the actual search done by the user.

[0053] An object or element refers to any digital object that may be stored in a database. As previously stated, this may in particular involve photos, as well as audio files, video files, documents, multimedia, text, etc.

[0054] It should be noted that, in accordance with the operating principle of a database, the referenced objects are not necessarily directly contained themselves in a recording of the database and may be referenced using their storage address or URL, for example, or any other indirect means.

[0055] It should also be noted that the descriptor term used is not limited. The descriptor term of course comprises descriptors of the keyword type, but may also involve more technical descriptors referencing textures, materials, color profiles, definition, etc. These may be semantic descriptors established from a thesaurus. The nature of the descriptors is generally not limited, and these may be adapted depending on the objects referenced in the database(s) and searched.

[0056] Advantageously, the series comprises elements having a category chosen from among the group of keywords, expression, image, location, date, time, video, sound, multimedia, text, etc. Of course, any type of category can be considered.

[0057] According to a first form, a category of the element is determined during the addition of the element to said series.

[0058] Advantageously, the category is associated with said element in the series. Thus, it may also be given to the search engine with the corresponding object.

[0059] It is also possible to provide prohibited categories, in particular categories that the search engine cannot take into account.

[0060] In one form, an element belonging to at least one predetermined category considered to be unauthorized is not added to the series.

[0061] Alternatively or additionally, elements of the series may be added but then ignored, or not transmitted if they appear to be irrelevant (for instance conjunctions, articles), or not able to be processed by the engine.

[0062] According to a second form, a category of the element is determined subsequently by the search engine.

[0063] In another form, the series comprises at least two elements having different categories.

[0064] Also advantageously, the series comprises at least two elements having non-textual categories, for example two images.

[0065] In other form, the element is added to the series with at least one corresponding relevance or irrelevance indication. As for the object category, this additional information will be given to the search engine. The user may thus indicate preferences or exclusions without having to build elaborate or complex requests.

[0066] Thus, advantageously, the search engine performs the search according to all or some of the following steps:

[0067] determining, for at least some of the elements of the series, a set of associated descriptors,

[0068] based on the relevance and/or irrelevance indication of the element of the series, assigning at least one weight to all or part of the descriptors of the element,

[0069] calculating a resultant of the weights associated with each descriptor of the set of elements in the list,

[0070] identifying, in the database, objects associated with at least part of the descriptors of the elements of the series,

[0071] initializing a relevance index for at least part of the identified objects,

[0072] comparing each of said selected identified objects with the resultant, and for each descriptor of the compared identified objects, increasing or decreasing the relevance index of the object based on the weight of that descriptor in the resultant,

[0073] returning the list of selected identified objects with their corresponding relevance indexes or in order of relevance.

[0074] Thus, by using a search using the relevance and irrelevance information combined with the descriptors, it is possible to better account for the actual meaning of the search and provide a more satisfactory result. Furthermore, using such a method, it is easy for the user to perform a complex search adding or removing descriptors and keywords, and thus, intuitively and transparently.

[0075] The determination of the descriptors associated with the elements may be done using any means.

[0076] In the case of an element of the keyword type, an obvious descriptor will be the keyword itself. Using a dictionary or other means, it will, however, also be possible to account for synonyms, antonyms, and other variations.

[0077] In the case of an image, the technical descriptors may be obtained from a technical analysis of the image (colorimetry, etc.) or file metadata (date taken, geolocation, etc.).

[0078] An image recognition-type analysis may also make it possible to determine certain non-technical descriptors (shape and object recognition, face recognition, handwriting recognition, etc.).

[0079] Lastly, if the image is known, it is also possible to extract the descriptors from a database in which it is inventoried. This may in particular be the case for photos put online on sharing sites where they are often associated with "tags" and keywords for classification purposes.

[0080] It will also be noted that different weights may be assigned to different descriptors, in particular based on their origin, context, situation relative to all of the other descriptors. Thus, for example, the descriptors coming from a thesaurus, and therefore having a standardized, uniform and structured nature, may have more weight than descriptors of the keyword type that may have been assigned by the users themselves of a photo site.

[0081] In one form, the weights assigned to the descriptors of the elements considered to be irrelevant have a sign opposite that of the weights assigned to the descriptors of the elements considered to be relevant, and more particularly minus and plus signs, respectively.

[0082] In another form, the absolute values of the weights assigned to the descriptors of the elements considered to be relevant and/or irrelevant are equal.

[0083] Alternatively, the weight assigned to the descriptors of the elements considered to be relevant has a different absolute value, and in particular higher, than that of the weight assigned to the descriptors of the elements considered to be irrelevant.

[0084] Advantageously, the values of the weights assigned to the descriptors of the elements considered to be relevant and/or irrelevant may be different from one element of the series to the next.

[0085] According to one particular form, if results already exist from the previous search, the search instruction leads to a refining method for refining the results from among the results previously returned.

[0086] According to a second aspect, the present disclosure relates to a search method, adapted to be implemented by a terminal, in a database containing at least one set of objects each linked to at least one descriptor. The method includes the following steps:

[0087] selecting, by a user, of at least one theme from among a set of themes, each theme being associated with at least one descriptor;

[0088] transmitting, to a search engine, a first request including at least an information relative to said at least one theme selected by the user;

[0089] receiving a first set of objects, transmitted by the search engine in response to the first request;

[0090] entering, by the user, an information relative to an indication of the relevance or the irrelevance of at least one of the objects of the first set of objects;

[0091] transmitting, to the search engine, a second request including the entered information pertaining to an indication of the relevance or the irrelevance of at least one of the objects of the first set of objects; and

[0092] receiving a second set of objects, transmitted by the search engine in response to the second request.

[0093] The search engine may be implemented on a remote device, for example a server including the database and means for performing the processing required for taking into account the requests and for the searches. The search engine may also be implemented on the terminal, for example a module executing a software program able to access the database and able to perform the processing required for taking the requests and searches into account.

[0094] Particularly, the first request and/or the second request may comprise at least one search parameter comprising a series of at least one search element, the series being obtained by freely adding elements to said series by the user. The series may comprise elements having a category chosen from among the group of keywords, expression, image, location, date, time, video, sound, multimedia, text.

[0095] In one form, an element belonging to at least one predetermined category and considered as unauthorized is not added to the series. The series may comprise at least two elements having different categories. The series may include at least two elements having non-textual categories.

[0096] According to a third aspect, the present disclosure relates to a terminal including a search module in a database, said database containing at least one set of objects each linked to at least one descriptor. The terminal includes means configured for:

[0097] allowing a user to select at least one theme from among a set of themes, each theme being associated with at least one descriptor;

[0098] transmitting, a first request including at least an information pertaining to said at least theme selected by the user, to a search engine;

[0099] receiving a first set of objects, transmitted by the search engine in response to the first request;

[0100] allowing typing, by the user, of an information pertaining to an indication of the relevance or irrelevance of at least one of the objects of the first set of objects;

[0101] for transmitting, a second request including the entered information pertaining to an indication of the relevance or irrelevance of at least one of the objects of the first set of objects, to the search engine;

[0102] receiving a second set of objects, transmitted by the search engine in response to the second request.

[0103] The search engine may be implemented on a remote device, for example a server including the database and means for performing the processing required for taking into account requests and for searches. The search engine may also be implemented on the terminal, for example a module executing a software program able to access the database and able to perform the processing required for taking into account the requests and for searches.

[0104] The first request and/or the second request may comprise at least one search parameter comprising a series of at least one search element, the series being obtained by freely adding elements to said series by the user. The series may comprise elements having a category chosen from among the group of keywords, expression, image, location, date, time, video, sound, multimedia, text.

[0105] Particularly, the terminal may include a tactile user interface.

[0106] According to a fourth aspect, the present disclosure relates to a computer program including instructions for executing steps of the method according to the first aspect or the second aspect, when said program is executed by a processor.

[0107] Each of these programs may use any programming language, and be in the form of a source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other required form. Particularly, it is possible to use script languages, such as in particular tcl, javascript, python, perl which allow an "on demand" code generation and do not require any significant overload for their generation or modification.

[0108] According to a fifth aspect, the present disclosure relates to a storage medium readable by a computer on which is stored a computer program comprising instructions for executing steps of the method according to the first or the second aspect.

[0109] The information medium may be any type of entity or any type of device able to store the program. For example, the support may include a storage means, such as a ROM, for example a CD-ROM or a microelectric circuit ROM, or even a magnetic recording means, for example a floppy disk or a hard disk. On the other hand, the information medium may be a transmissible support such as an electric or optical signal, which may be routed by an electric or optical cable by radio or by other means. The program according to the present disclosure may particularly be downloaded onto an Internet or Intranet network. Alternatively, the information medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the executing of the method in question.

[0110] Further areas of applicability will become apparent from the description provided herein. It should be understood that the description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure.

DRAWINGS

[0111] In order that the disclosure may be well understood, there will now be described various forms thereof, given by way of example, reference being made to the accompanying drawings, in which:

[0112] FIG. 1 is a diagrammatic illustration of a search bar of a method according to the present disclosure;

[0113] FIG. 2, is a synoptic of a search method according to an form of the present disclosure; and

[0114] FIGS. 3a to 3e are illustrations of user interfaces according to one form of the present disclosure.

[0115] The drawings described herein are for illustration purposes only and are not intended to limit the scope of the present disclosure in any way.

DETAILED DESCRIPTION

[0116] The following description is merely exemplary in nature and is not intended to limit the present disclosure, application, or uses. It should be understood that throughout the drawings, corresponding reference numerals indicate like or corresponding parts and features.

[0117] As previously stated, the search method of the present application seeks to search for objects in a database containing at least one set of objects each connected to at least one descriptor.

[0118] For example, it will be considered that in the case at hand, this is a database containing photos, each photo being associated with one or more descriptors of that photo.

[0119] The search is done by a search engine from at least one request by a user.

[0120] To that end, before launching the search, the user is presented with a search form including a search bar (or field) 1 intended to collect a search parameter entered by the user and associated with a clickable button 2 making it possible to launch the search by sending the information to the associated search engine.

[0121] In accordance with the method according to the present application, the search parameter entered by the user in the search bar 1 comprises a series of search elements 10, 11, 12, 13 obtained by freely adding 15 elements to said series by the user, the addition step 15 being able to be repeated multiple times (a limited or, unlimited number of times) until a search instruction is given.

[0122] In the case at hand, the search elements 10, 11, 12, 13 entered by the user respectively correspond to a location (the town of Megeve), a date (year), photo, and expression ("snowy mountain").

[0123] Several methods exist for adding these elements to the list.

[0124] First, these elements may be identified upon entry, after each addition step, from a particular format.

[0125] Thus, for example, a location may be identified by its GPS coordinates entered using a suitable format.

[0126] It is also possible to add the location from a database inventorying different towns and locations. When the user validates the word "Megeve", a preprocessing step identifying that word as corresponding to a town and the corresponding geographical element is added to the series (in this case, with an associated icon identifying the category of the added element).

[0127] It is also possible to add such a location through a drag-and-drop operation from a map.

[0128] The same holds true for the date element, which may be recognized from an entry by the user using a defined format or from a calendar presented to the user on the search page.

[0129] This is also valid for photos, which may be added from their Internet address or location (URL), a preprocessing step in charge of recognizing the file format and the photo.

[0130] The photo may also be shown to the user beforehand, for example in a list. To add it to the list of elements, it is possible to use a drag-and-drop operation as for the other elements, or possibly to click on associated selection means.

[0131] It is also possible to show the user a set of themes or characteristics allowing him to initiate a search easily. The selection of such themes may be made using clickable icons. The corresponding theme is then added to the list of elements.

[0132] Of course, the present application is not limited to the types and categories of elements cited as an example, and it is in particular possible to apply the method to video objects, audio objects, texts, etc.

[0133] Of course, additionally, the implementation of selection means associated with an element is possible for any type of element, and not only photos.

[0134] Such selection means also make it possible to associate relevance or irrelevance information corresponding to the element to be added, and the element is added to the series with at least one corresponding relevance or irrelevance indication.

[0135] Thus, each element may be shown to the user in association with a clickable image showing a checkmark 16 and a clickable image showing a prohibition cross 17.

[0136] The corresponding respective relevance or irrelevance information will then be added to the series with the considered element.

[0137] Of course, the images showing a checkmark and a cross are provided as examples, and any equivalent illustration is possible, including clickable text informing the user of the choice he can make.

[0138] The relevance or irrelevance information associated with the added element is reflected in the search bar (check and cross).

[0139] It is also possible to consider allowing the user to modify this indication after adding the element to the series, for example by successively clicking on the element in question added to the search bar, alternatively associated with a relevance or irrelevance indication.

[0140] In the illustrated case, the location, photo and expression elements are elements considered by the user to be relevant. The date element, on the other hand, is considered irrelevant by the user, who wishes to exclude objects from 2007.

[0141] The set of added elements is sent to the search engine when the search button 2 is clicked by the user or by any other triggering means, for example pressing on the enter key if no word has been entered.

[0142] The set of elements may be transmitted by any known means, in particular using one or more variables.

[0143] Thus, in the case where the elements are associated with relevance information, the relevant elements could be transmitted in one variable and the irrelevant elements in another variable.

[0144] In one form, the associated search engine implements the following steps:

[0145] determining, for at least part of the elements of the series, a set of associated descriptors,

[0146] based on the relevance and/or irrelevance indication of the element of the series, assigning at least one weight to all or part of the descriptors of the element,

[0147] calculating a resultant of the weights associated with each descriptor of the set of elements in the list,

[0148] identifying, in the database, objects associated with at least part of the descriptors of the elements of the series,

[0149] initializing a relevance index for at least part of the identified objects,

[0150] comparing each of said selected identified objects with the resultant, and for each descriptor of the compared identified objects, increasing or decreasing the relevance index of the object based on the weight of that descriptor in the resultant,

[0151] returning the list of selected identified objects with their corresponding relevance indexes or in order of relevance.

[0152] Such a search method is similar to the refining method described in application WO 2012/127168.

[0153] However, it is worth noting that the method described in document WO 2012/127168 targeted a method for refining result objects and required a prior search.

[0154] The present search method makes it possible to obtain desired results directly from initial search elements.

[0155] The first step thus consists in determining a set of descriptors for the transmitted search elements.

[0156] The nature of the descriptors may depend on the category of the search element.

[0157] Thus, for keywords or sentences and expressions, the descriptors may be loaded from a dictionary or thesaurus in particular made up of plural descriptors, and may consist of homonyms, synonyms, antonyms, expressions, words with close meanings, images, sounds, videos, geographical coordinates, etc.

[0158] In the case of themes or characteristics presented to and added by the user, such a dictionary will make it possible to link said themes to a set of associated descriptors covered by that theme. The themes may thus constitute the entries of a thesaurus of the database.

[0159] The locations may lead to descriptors of distance type, neighboring locations, etc.

[0160] Regarding images, the descriptors may be both of a technical nature (colorimetric distribution, resolution, etc.) and be obtained using an image analysis method, or of a textual nature describing said image. The textual descriptors may be obtained by image analysis (object recognition method, for example), but also through a photo library, containing the loaded photo associated with such descriptors. This is of course also applicable to audio files, etc., or sounds, voice, via microphone, images via webcam, etc.

[0161] The photo library may be the search database, for example.

[0162] Thus, the mountain photo given as an example, if it is known by the database or another database (for example, an external site on which the photos are associated with "tags" or keywords), will be associated with a set of descriptors that will be recovered by the search engine.

[0163] The following steps are similar to those described in document WO 2012/127168.

[0164] First, based on the relevance and/or irrelevance indication of the element in the series, a weight is assigned to all or part of the descriptors of the considered element.

[0165] It will in particular advantageously be possible to modulate the assigned weight (negative or positive) based on the number of times the user selects the element.

[0166] Thus, in the provided example, the descriptors associated with the date will be given a negative weight, for example -P (this element having been considered irrelevant by the user).

[0167] However, the other elements having been defined as relevant by the user, their descriptors will be given a positive weight, for example +P.

[0168] An absolute value of the weights may be different for the relevant elements and for the irrelevant elements.

[0169] Likewise, the values of the assigned weights may be different depending on the descriptors, and in particular decrease depending on the location of the descriptor in the list.

[0170] A resultant of the weights assigned to each descriptor is then calculated.

[0171] The objects in the database associated with at least one pair of search descriptors are then identified.

[0172] A relevance index for these objects is thus initialized, for example at the value zero. Each identified object therefore has the same priority and relevance.

[0173] A subsequent step makes it possible to compare each identified object with the resultant of the weights of the descriptors.

[0174] To that end, each descriptor of the identified object is compared with the resultant, and the relevance indicator is increased or decreased by the weight of that descriptor in said list.

[0175] The identified objects are then reorganized based on their final relevance index, in particular from most relevant to least relevant. The identified objects may also be sorted based on the largest relevant object diversity within the perimeter of the search.

[0176] Of course, the user may then continue his/her search, and in particular add new elements to the search list or remove elements from it, in particular from among the identified relevant objects presented to him.

[0177] Thus, depending on whether results already exist from a previous search, the search instruction may lead to a refining method of the results from among the results previously returned, as described in document WO 2012/127168, or lead to a new search method, a complete search requiring more system resources.

[0178] Although the present disclosure has been described with one particular example form, it is obvious that it is in no way limited thereto and encompasses all technical equivalents of the described means as well as the combinations thereof should these enter within the scope of the present disclosure.

[0179] It is in particular possible to provide additional relevant signaling means, for example a "neutral" button, in addition to means making it possible to indicate the relevance and/or irrelevance.

[0180] It is also possible to provide means for resetting the relevance weights and index in case of user error, or if the user wishes to restart refining based on other criteria.

[0181] Furthermore, although the present disclosure has been described essentially with respect to photos, it is of course not limited thereto, and any other type of digital file with which descriptors can be associated may be used for the implementation thereof. It is in particular possible to implement the method in the same way with audio files, in particular associated with descriptors regarding their musical style, type of sound, instruments, etc., as well as with video files, animated images, documents, text files, in particular old scanned books, etc.

[0182] Furthermore, different functionalities may benefit from a first search and be implemented.

[0183] For example, after a first search, the engine may automatically propose part of the descriptors and elements resulting from said search so as to subsequently be able to choose the discriminating descriptors more quickly.

[0184] FIG. 2 is a synoptic of a search method according to one form of the present disclosure. The method is adapted to be implemented by a terminal 100, for example a mobile terminal provided with a tactile user interface and a search engine 200, for example a computer system comprising servers and databases. The search engine 200 thus comprises a database containing at least one set of objects each linked to at least one descriptor. The terminal 100 and the search engine 200 are for example coupled such as to be able to exchange information. Typically, the terminal 100 and the search engine communicate by means of Internet. The terminal 100 is typically configured to allow a user to browse the Internet, either by using an HTML browser, or by means of an application. The terminal 100 comprises means for implementing a user interface such as that illustrated on FIGS. 3a to 3e. In the example illustrated by FIGS. 3a to 3e, the objects and interfaces have been represented by boxes including typed inscriptions, for the sake of clarity and visibility.

[0185] However, the elements may advantageously be replaced and/or completed, by visual representations of photograph type or schematic illustrations for example. Thus, the representation of the object 1 illustrated on FIG. 3b by an inscription OBJ 1 may be replaced by a visual representation of said object, for example the photograph of a football player. Similarly, the representation of the NATURE theme on FIG. 3a by the inscription NAT may be replaced by a visual representation of said theme, for example a drawing of a tree and a mountain.

[0186] The method includes a step of selecting 110, by the user, at least one theme from among a set of themes, each theme being associated to at least one descriptor. FIG. 3a shows a user interface allowing the user to choose said theme. In this example, the user is presented with buttons on which an icon represents one of the proposed themes: Nature, Science, Education, Leisure activities, Economy, Travel. The user may thus, select the one which best corresponds to his/her search intention by activating the corresponding button, in the present case, Leisure activities. The user may further enter an optional request in the corresponding field, as detailed before in the description.

[0187] A first request R1 including an information pertaining to said at least one theme selected by the user--in the example, Leisure activities--as well as the optional request are transmitted, during a step 120, to the search engine 200, and received by the latter during a step 210. The search engine, will then search, during a step 220, in the database, according to the first request R1, of a first set E1 of objects. In our example, the search engine will thus search the objects of the base associated with terms Leisure activities.

[0188] When the results are numerous, the search engine may select a sub-assembly only of objects corresponding to the first request, according to a certain number of criteria, particularly, by privileging the diversity of the results. In the previous example, the first set E1 may comprise objects relating to swimming, plastic arts, football, board games, hiking, etc. During a step 220, the first set E1 is then transmitted, to the terminal 100, and received by the latter during a step 130. FIG. 3b shows a user interface in which the first set E1 is presented to the user, as well as a new selection of themes. More particularly, the user having chosen the theme Leisure activities during the step 110, new associated themes are proposed for selection, namely, hiking, swimming, painting, drawing, video games, games, cinema/theater.

[0189] The user may thus select a theme again, in our hiking example, as illustrated on FIG. 3c. During a step 140, the user enters at least an information pertaining to an indication of the relevance or irrelevance of at least one of the objects of the first set of objects. As illustrated on FIG. 3d, a user interface is thus proposed to the user to allow him/her to identify from among the first set E1 which objects seem relevant in the context of his/her search. In this example, three buttons for each object are presented to the user on which an icon relative to an indication of the relevance or irrelevance is represented: irrelevant (represented on FIGS. 3b to 3e by a black cross), neutral (represented on FIGS. 3b to 3e by a white tick), relevant (represented on FIGS. 3b to 3e by a black tick).

[0190] The user may thus choose the degree of relevance for one or several objects thus presented by activating the corresponding button. In the present case, the user may identify as relevant the object pertaining to a photograph showing two hikers equipped with a pack. The user may designate several objects as relevant and/or irrelevant and/or neutral. During the step 150, a second request R2 including the entered information pertaining to an indication of relevance, neutrality or irrelevance of at least one of the objects of the first set of objects is transmitted to the search engine, which receives it in a step 230. In the example of FIG. 3e, the second request R2 includes an information pertaining to the relevance of the photograph showing two hikers equipped with a pack, an information pertaining to a photograph showing a green pack, an information pertaining to the irrelevance of a photograph showing a red pack.

[0191] The second request R2 may further include other information, particularly a new theme selected by the user--in the example, Hikes and hiking equipment as well as another optional request, for example another keyword and/or a location. The search engine, will then search, during a step 240, in the database or in the first set E1 of objects, based on the second request R2, of a second set of E2 objects. When the results are numerous, the search engine may select a sub-assembly only of objects corresponding to the second request, according to a certain number of criteria, particularly, by privileging the diversity of the results During a step 240, the second set E2 is then transmitted, to the terminal 100, and received by the latter during a step 260. FIG. 3e shows a user interface in which the second set E2 is presented to the user, in our example, a set of objects pertaining to green hiking packs. The aforementioned steps may thus be repeated as many times as necessary, such that the user may refine/enter the required search and obtain the expected results.

* * * * *


uspto.report is an independent third-party trademark research tool that is not affiliated, endorsed, or sponsored by the United States Patent and Trademark Office (USPTO) or any other governmental organization. The information provided by uspto.report is based on publicly available data at the time of writing and is intended for informational purposes only.

While we strive to provide accurate and up-to-date information, we do not guarantee the accuracy, completeness, reliability, or suitability of the information displayed on this site. The use of this site is at your own risk. Any reliance you place on such information is therefore strictly at your own risk.

All official trademark data, including owner information, should be verified by visiting the official USPTO website at www.uspto.gov. This site is not intended to replace professional legal advice and should not be used as a substitute for consulting with a legal professional who is knowledgeable about trademark law.

© 2024 USPTO.report | Privacy Policy | Resources | RSS Feed of Trademarks | Trademark Filings Twitter Feed