Image evaluation

文档序号:1963812 发布日期:2021-12-14 浏览:11次 中文

阅读说明:本技术 图像评估 (Image evaluation ) 是由 鲁宾逊·皮拉姆苏 邸韡 维格里希·贾格迪希 伊丽莎白·邱吉尔 阿努拉格·巴德瓦耶 于 2015-04-02 设计创作,主要内容包括:一种机器可以配置为执行描述销售物品的图像的图像评估,并且提供改进描述物品的图像的建议以增加图像中描述的物品的销量。例如,所述机器访问用户行为分析的结果。所述机器从用户设备接收物品的图像。所述机器基于所接收图像的分析以及用户行为分析的结果,执行所接收图像的图像评估。执行图像评估可以包括确定用户参与所接收图像有关的所需用户行为的可能性。然后,所述机器基于所接收图像的评估来产生输出,所述输出参考所接收图像,并且对用户参与所需行为的可能性加以表示。(A machine may be configured to perform an image evaluation of an image depicting an item for sale and provide a suggestion to improve the image depicting the item to increase the sales of the item depicted in the image. For example, the machine accesses results of user behavior analysis. The machine receives an image of an item from a user device. The machine performs an image evaluation of the received image based on the analysis of the received image and the results of the user behavior analysis. Performing the image evaluation may include determining a likelihood of the user engaging in a desired user behavior with respect to the received image. The machine then generates an output based on the evaluation of the received images, the output referencing the received images and representing a likelihood of the user engaging in the desired behavior.)

1. A system for image evaluation, comprising:

a memory storing a database comprising one or more analysis results of user behavior data related to a plurality of test images;

one or more hardware processors;

a receiver module implemented by the one or more processors and configured to:

accessing one or more analysis results of the user behavior data; and

receiving an image of an item from a user device;

an image analysis module implemented by the one or more processors and configured to perform an evaluation of the received image based on one or more analysis results of the user behavior data, the performing the evaluation comprising:

calculating a score value for the received image based on the one or more analysis results of the user behavior data and the values of one or more image attributes of the received image, an

Determining a likelihood of a user engaging in a desired user behavior related to the received image based on the score value for the received image; and

an output module implemented by the one or more processors and configured to:

based on the evaluation of the received image, an output is generated for the user device that references the received image and indicates a likelihood of the user engaging in a desired user behavior related to the received image.

2. The system of claim 1, wherein the score value for the received image is a first score value, and

wherein the image analysis module is further configured to:

comparing the received image with another image of another similar item based on the first score value and a second score value corresponding to the other image, and

generating a ranking of the received image in relation to the other images of other similar items.

3. The system of claim 2, wherein the output for the user device further indicates a ranking of the received image relative to other images.

4. The system of claim 2, wherein the image analysis module is further configured to classify the received image into an image class based on values of one or more image attributes of the received image, the image class including the other images, and

wherein the received image and the other images are ranked within the image category.

5. The system of claim 2, wherein the image analysis module is further configured to:

accessing values of one or more image attributes of the other image; and

calculating a second score value corresponding to the other image based on the values of the one or more image attributes of the other image.

6. The system of claim 1, further comprising:

a communication module configured to transmit a communication message to the user device, the communication message including an output generated with reference to the received image.

7. The system of claim 1, wherein the image analysis module is further configured to:

extracting one or more visual features from the received image, an

Identifying values of one or more attributes of the received image based on the analysis of the one or more visual features.

8. The system of claim 1, wherein the one or more attributes of the received image include a display type of displaying the item within the received image, and

wherein the calculating a score value for the received image is based on the value of the display type.

9. The system of claim 1, further comprising a behavior analysis module configured to:

accessing the user behavior data;

analyzing the user behavior data;

generating one or more analysis results of the user behavior data; and

storing one or more analysis results of the user behavior data in a database.

10. A computer-implemented method for image evaluation, comprising:

accessing one or more analysis results of user behavior data associated with a plurality of test images;

receiving an image of an item from a user device;

performing an evaluation of the received image based on one or more analysis results of the user behavior data, the performing the evaluation comprising:

calculating a score value for the received image based on the one or more analysis results of the user behavior data and the values of one or more image attributes of the received image, an

Determining a likelihood of a user engaging in a desired user behavior related to the received image based on the score value for the received image; and

based on the evaluation of the received image, an output is generated for the user device that references the received image and indicates a likelihood of the user engaging in a desired user behavior related to the received image.

11. The computer-implemented method of claim 10, further comprising:

the received image is classified into an image class based on values of one or more image attributes of the received image, the image class including other images.

12. The computer-implemented method of claim 11, wherein the score value for the received image is further based on a trust score value for the received image that measures a confidence level of classifying the received image as a category to which the received image belongs.

13. The computer-implemented method of claim 11, wherein the received image and the other images are classified in the category based on an identified value of a display type attribute of the received image and the other images.

14. The computer-implemented method of claim 13, wherein the score value for the received image is further based on a combination of a trust score value for the received image that measures a classification of the received image into a category corresponding to a value of a display type attribute of the received image and a low level quality score value for the received image that measures a quality of the received image based on another value of another image attribute of the received image.

15. The computer-implemented method of claim 10, wherein performing an evaluation of the received image comprises determining that the received image is better than a different image.

16. The computer-implemented method of claim 15, wherein determining that the received image is better than the different image is based on the received image being of a human display type.

17. The computer-implemented method of claim 15, wherein determining that the received image is better than the different image is based on the received image being of a mannequin display type.

18. The computer-implemented method of claim 15, wherein determining that the received image is better than the different image is based on the received image being of a flat display type.

19. The computer-implemented method of claim 15, wherein determining that the received image is better than the different image is based on the received image having a higher rank value than the different image.

20. A machine-readable medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

accessing one or more analysis results of user behavior data associated with a plurality of test images;

receiving an image of an item from a user device;

performing an evaluation of the received image based on one or more analysis results of the user behavior data, the performing the evaluation comprising:

calculating a score value for the received image based on the one or more analysis results of the user behavior data and the values of one or more image attributes of the received image, an

Determining a likelihood of a user engaging in a desired user behavior related to the received image based on the score value for the received image; and

based on the evaluation of the received image, an output is generated for the user device that references the received image and indicates a likelihood of the user engaging in a desired user behavior related to the received image.

21. A machine-readable medium carrying instructions which, when executed by one or more processors of a machine, cause the machine to carry out the method of any one of claims 10 to 19.

Technical Field

The subject matter disclosed herein relates generally to data processing. In particular, the present disclosure relates to systems and methods that facilitate image evaluation.

Background

An image depicting a sales item may be used to visually convey information related to the item to a potential buyer. For example, an online clothing store may use images to illustrate one or more items of merchandise that may be available for purchase at the online clothing store. The image may show an article of clothing made by a person displayed on the model or a displayed planar figure (e.g., without either a human model or a human phantom).

Drawings

Some embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings.

FIG. 1 is a network diagram depicting a client-server system in which some example embodiments may be deployed.

Fig. 2 is a block diagram illustrating a marketplace and payment application provided as part of the application server 118 in a networked system in some example embodiments.

FIG. 3 is a network diagram illustrating a network environment suitable for image evaluation, according to some example embodiments.

Fig. 4 is a functional diagram of an example image evaluation machine, according to some example embodiments.

FIG. 5 is a block diagram illustrating components of an image evaluation machine according to some example embodiments.

6-14 are flowcharts illustrating operations of an image evaluation machine in performing a method of evaluating one or more images, according to some example embodiments.

Fig. 15 is a block diagram illustrating a mobile device according to some example embodiments.

Fig. 16 is a block diagram illustrating components of a machine capable of reading instructions from a machine-readable medium and performing any one or more of the methodologies discussed herein, according to some example embodiments.

Detailed Description

An evaluation method and system for images depicting online sales of items is provided to improve sales volume of items. Examples merely typify possible variations. Unless explicitly stated otherwise, components and functions are optional and may be combined or subdivided, and operations may vary in sequence or be combined or subdivided. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the example embodiments. However, it will be apparent to those skilled in the art that: the present subject matter may be practiced without these specific details.

Fashion clothing (e.g., clothing) is a rapidly growing type in online stores. Because users who shop online may not have the same perceived experience as when shopping in a physical store, the use of images that describe items for sale (e.g., goods or services) is very important. The images of items, especially clothing items whose appearance is important to the buyer, play a key role in conveying key information about items whose text is difficult to convey. Whether the user selects (e.g., clicks on) the image to visually inspect the item shown in the image may affect whether the user purchases the item.

Because a visual presentation of a sales item (e.g., an article of clothing) can significantly affect a user's selection of a particular item (e.g., an initial search, a decision to review an image showing the item, a decision to tag an image for future reference, or a purchase decision), it may be beneficial for a seller to obtain an assessment of the relative effectiveness of different types of images when presenting the sales item. Evaluation of an image depicting an online sale of an item may facilitate presentation of the item in the image in an optimal manner such that the image serves as a convincing tool to assist a seller of the item in selling the item. In addition, the evaluation of images depicting items for sale may assist sellers in avoiding possible false conclusions for a portion of potential buyers that consider an item of poor quality based simply on an image of the item of poor quality.

In some example embodiments, an image evaluation system may facilitate image evaluation of images describing items for sale. In some example embodiments, the image evaluation of the image may be based on image analysis of the image and on analysis of user behavior related to (e.g., related to) the image. According to some example embodiments, the evaluation of the images may include examining the images based on a variety of image attributes (e.g., display type of the item, professional photography, lighting, ambience, image quality, and suitable combinations thereof), classifying the images into one or more categories based on one or more image attributes, comparing the images to other images submitted by other sellers, and/or determining a likelihood of obtaining a desired response from a user viewing the images (e.g., a potential buyer of the item). Such evaluation may be based on comparing the image to other similar items in similar categories, as well as to images provided by other vendors.

The image evaluation may be used to provide feedback or suggestions to a provider of the image (e.g., a seller selling the item) relative to the image in order to increase the sales volume of the item depicted in the image (e.g., improve the sales rate). The feedback may include statements such as: "your item image is 80% better than the images uploaded by other vendors of the object"; "your item image is 40% better than the image provided by the seller of this type of item"; "if you use the model to display the item described in the image, your item image will be improved"; "use better lighting"; "use higher contrast in the image"; or "use different color filters".

According to various embodiments, recommendations may address improving images to obtain a desired response from a user (e.g., increasing click-through rates of images, or increasing sales of items). In some example embodiments, the image evaluation of the image submitted by (e.g., received from) the seller of the item described in the image is based on the analysis results of the image submitted by the seller and the data analysis results of the user behavior related to the image of the item (e.g., the same term clothing category) similar to the item described in the image received from the seller. The data describing the user behavior associated with the images may include a representation of an action taken by the user (e.g., a buyer) in response to seeing the plurality of images displayed to the user. Data describing user behavior associated with an image (also referred to as "user behavior data" or "user behavior representation") may be based on one or more user interactions with numerous images including multiple display types and varying image qualities (e.g., lighting, professional photography, and suitable combinations thereof).

In some example embodiments, large-scale user behavior data from e-commerce platforms around the world may be used to evaluate the effect of different display types on a user's shopping behavior. Generally, in the context of online clothing sales, clothing can be displayed in three ways: on a human model, on a mannequin, or flat (e.g., i.e., without a mannequin and without a human model). Analysis of behavioral and transactional data (e.g., clicking, viewing, tagging, or purchasing) reveals that users are more likely to be attracted by clothing fashioned from human models than on mannequins or clothing displayed in tablet mode, even when other factors (e.g., price or buyer details) are considered. In some example embodiments, the image evaluation system predicts a user's level of attention to an image depicting an item (e.g., an item of clothing) based on modeling user preferences. The image evaluation system may also determine a likelihood of purchasing the item based on an item presentation (e.g., one or more images depicting the picture) being checked by a seller of the item. In some cases, the image evaluation system may suggest that the buyer use a display type that is more efficient in drawing the buyer's attention to the item and may increase the item sale rate.

FIG. 1 is a network diagram depicting a client-server system 100 in which an example embodiment may be deployed. A networked system 102, in the example form of a network-based marketplace or publication system, provides server-side functionality to one or more clients via a network 104, such as the internet or a Wide Area Network (WAN). For example, fig. 1 shows a web client 106 (e.g., a browser, such as the Internet Explorer browser developed by microsoft corporation of redmond, washington) and a programming client 108 executing on various devices 110 and 112.

An Application Program Interface (API) server 114 and a web server 116 are coupled to one or more application servers 118 and provide programming and network interfaces to the one or more application servers, respectively. The application server 118 hosts (host) one or more marketplace applications 120 and payment applications 122. The application server 118 is shown in turn coupled to one or more database servers 124 that facilitate access to one or more databases 126.

The marketplace applications 120 may provide a number of marketplace functions and services to users that access the networked system 102. In various example embodiments, the marketplace application 120 may include an image evaluator 132. In some example embodiments, the image evaluator 132 may facilitate image evaluation of an image depicting an item for sale and determination of a likelihood of obtaining a desired response from a user (e.g., a potential buyer of the item) viewing the image.

The payment application 122 may similarly provide a number of payment services and functions to the user. The payment application 122 may allow a user to accumulate value (e.g., a currency (such as U.S. dollars) or a proprietary currency (such as "points") in an account and then exchange the accumulated value for a product (e.g., a good or service) that may be purchased through the marketplace application 120. While it is shown in fig. 1 that the marketplace and payment applications 120, 122 both form part of the networked system 102, it will be understood that in alternative embodiments, the payment application 122 may form part of a payment service that is separate and remote from the networked system 102.

Furthermore, although the system 100 shown in fig. 1 employs a client-server architecture, of course, the embodiments are not limited to such an architecture, but may equally well be applied in, for example, a distributed, or peer-to-peer architecture system. The various marketplace and payment applications 120, 122 may also be implemented as stand-alone software programs, which do not necessarily have networking capabilities.

The web client 106 accesses the various marketplace and payment applications 120, 122 through a web interface supported by the web server 116. Similarly, the programmatic client 108 accesses the various services and functions provided by the marketplace and payment applications 120, 122 through the programmatic interface provided by the API server 114. For example, the programming client 108 may be a vendor application (e.g., a TurboLister application developed by eBay inc. of san jose, california) for enabling vendors to author and manage listings on the networked system 102 in an offline manner and perform batch mode communications between the programming client 108 and the networked system 102.

Fig. 1 also shows a third party application 128 executing on a third party server machine 130, the third party application 1043 capable of programmatically accessing the networked system 102 via the programmatic interface provided by the API server 114. For example, the third-party application 128 may utilize information obtained from the networked system 102 to support one or more features or functions on a website hosted by the third-party. For example, the third-party website may provide one or more promotional, marketplace or payment functions that are supported by the relevant applications of the networked system 102.

FIG. 2 is a block diagram illustrating a marketplace application 120 and a payment application 122 provided as part of the application server 118 in the networked system 102 in an example embodiment. Applications 120 and 122 may reside on dedicated or shared server machines (not shown) that are communicatively coupled to enable communication between the server machines. The applications 120 and 122 themselves are communicatively coupled (e.g., via appropriate interfaces) to each other and to various data sources, thereby allowing information to be passed between the applications 120 and 122, or thereby allowing the applications 120 and 122 to share and access common data. Applications 120 and 122 may also access one or more databases 126 via database server 124.

The networked system 102 may provide numerous publishing, listing, and price setting mechanisms in which sellers may list goods or services for sale (or publish information about the goods or services), buyers may express interests or intentions to purchase such goods or services, and prices may be set for transactions about the goods or services. To this end, the marketplace and payment applications 120, 122 are shown to include at least one publication application 200 and one or more auction applications 202 that support auction-format listing and price setting mechanisms (e.g., english, dutch, next highest bid, chinese, double, reverse, etc.). The various auction applications 202 may also provide a number of functions in support of such auction-format listings, such as reserve-price functions (whereby a seller may specify a reserve-price associated with a listing) and proxy-bidding functions (whereby a bidder may invoke automated proxy bidding).

The plurality of fixed price applications 204 support fixed price listing formats (e.g., traditional classified ad listings or catalog listings) as well as buy-off listings. In particular, a buy-off list (e.g., including the buy now (BIN) technology developed by eBay inc. of san jose, california) may be provided in conjunction with an auction-format list, and allow a user to purchase goods or services that are also sold by auction at a fixed price that is typically higher than the initial price of the auction.

The store application 206 allows sellers to group listings in a "virtual" store that may be branded by or personalized by sellers. Such virtual stores may also provide promotions, incentives, and specialized functionality personalized by the relevant seller.

Reputation applications 208 allow trading users to utilize the networked system 102 to set up, establish, and maintain reputations, which can be published and made available to potential trading partners. Given circumstances such as the networked system 102 supporting person-to-person transactions, a user may not otherwise have a history or other reference information that can assess the trustworthiness and credibility of potential transaction partners. Reputation applications 208 allow users (e.g., through feedback provided by other transaction partners) to establish reputations in the networked system 102 over time. Other potential trading partners may then refer to such reputation to assess credit and trustworthiness.

The personalization application 210 allows users of the networked system 102 to personalize various aspects of their interactions with the networked system 102. For example, a user may create a personalized reference page using a suitable personalization application 210, wherein information about transactions that the user is (or has been) a party may be viewed. Further, the personalization application 210 may enable users to personalize lists and other aspects of their interactions with the networked system 102 and other parties.

The networked system 102 may support multiple marketplaces that are customized, for example, for a particular geographic area. One version of the networked system 102 may be customized for the united kingdom, while another version of the networked system 102 may be customized for the united states. Each of these versions may operate as an independent marketplace or may be a customized (or internationalized) presentation of a common underlying marketplace. The networked system 102 may thus include a plurality of internationalized applications 212, the internationalized applications 212 customizing the information (and/or the presentation of the information by the networked system 102) according to predetermined criteria (e.g., geographic, demographic, or market criteria). For example, the internationalized application 212 may be used to support customization of information for multiple regional websites operated by the networked system 102 and accessible through various web servers 116.

Navigation of the networked system 102 may be implemented by one or more navigation applications 214. For example, a search application (as an example of the navigation application 214) may implement a keyword search of listings published via the networked system 102. The browsing application may allow a user to browse various category, catalog, or inventory data structures from which listings may be sorted in the networked system 102. Various other navigation applications 214 may be provided to supplement the search and browse application.

To enable the list available via the networked system 102 to be as intuitive and compelling as possible, the applications 120 and 122 may include one or more imaging applications 216 with which a user may upload images for inclusion within the list. The imaging application 216 also operates to merge images in a viewing list. The imaging application 216 may also support one or more promotional functions, such as a gallery that is presented to potential buyers. For example, the seller may pay a premium to include the image in a gallery of promotional items.

The listing creation application 218 allows buyers to conveniently create listings relating to goods or services that they wish to transact over the networked system 102, and the listing management application 220 allows sellers to manage these listings. In particular, managing such listings may be a challenge where a particular seller has created and/or published a large number of listings. The listing management application 220 provides a number of functions (e.g., automatic re-listing, inventory level monitoring, etc.) for assisting the seller in managing these listings. One or more post-listing management applications 222 also assist sellers with a number of activities that typically occur after listings. For example, upon completion of an auction facilitated by one or more auction applications 202, a seller may wish to leave feedback regarding a particular buyer. To this end, the post-listing management application 222 may provide an interface to one or more reputation applications 208, allowing sellers conveniently to provide feedback to the reputation applications 208 regarding multiple buyers.

The dispute resolution application 224 provides a mechanism by which disputes that arise between parties to a transaction may be resolved. For example, the dispute resolution application 224 may provide a guided flow that guides transaction parties through multiple steps to attempt and resolve disputes. If disputes cannot be resolved via the boot process, the dispute may be handed up to a third party intermediary or arbitration.

The plurality of anti-fraud applications 226 implement fraud detection and prevention mechanisms to reduce fraud occurring in the networked system 102.

The messaging application 228 is responsible for generating and transmitting messages to users of the networked system 102 (e.g., notifying users of messages related to the status of listings on the networked system 102 (e.g., providing a notification to bidders that a bid is above others during an auction, or providing promotional and promotional information to users)). Each messaging application 228 may deliver messages to users using any of a number of messaging networks and platforms. For example, the messaging application 228 may communicate electronic mail (e-mail), Instant Messaging (IM), Short Message Service (SMS), text, fax, or voice (e.g., voice over IP (VoIP)) messages via a wired network (e.g., internet), Plain Old Telephone Service (POTS), or wireless (e.g., mobile, cellular, WiFi, WiMAX) network 104.

The merchandising applications 230 support various merchandising functions available to sellers to enable sellers to increase the amount of sales through the networked system 102. The merchandising applications 230 also operate various merchandising functions that may be invoked by sellers and may monitor and track the success of merchandising strategies employed by sellers.

The networked system 102 itself, or one or more parties transacting through the networked system 102, may operate loyalty programs supported by one or more loyalty/promotions applications 232. For example, a buyer may earn loyalty or promotions points for each transaction established and/or completed with a particular seller, and may earn rewards by redeeming accumulated loyalty points.

Fig. 3 is a network diagram illustrating a network environment 300 suitable for image evaluation, according to some example embodiments. Network environment 300 includes an image evaluator 310 (e.g., image evaluator 132), databases 126 and 330 and 350, all communicatively coupled to each other via a network 390. Image evaluation machine 310, which may or may not include database 126, may form part or all of network-based system 305 (e.g., a cloud server-based system configured to provide one or more image processing services, image evaluation services, or both to devices 330 and 350). One or both of the devices 330 and 350 may include a camera that allows images (e.g., images of items for sale) to be taken. One or both of devices 330 and 350 may facilitate transmission of the image (e.g., submitted to database 126) to image evaluation machine 310. As described below with reference to fig. 16, image evaluation machine 310, devices 330 and 350 may be implemented in whole or in part in a computer system, respectively.

Also shown in fig. 3 are users 332 and 352. One or both of users 332 and 352 may be human users (e.g., humans), machine users (e.g., computers configured by software programs to interact with device 330), or any suitable combination thereof (e.g., machine-assisted humans or human-supervised machines). The user 332 is not part of the network environment 300, but is associated with the device 330 and may be a user of the device 330. For example, the device 330 may be a desktop computer, an on-board computer, a tablet computer, a navigation device, a portable media device, a smart phone, or a wearable device (e.g., a smart watch or smart glasses) belonging to the user 332. Likewise, user 352 is not part of network environment 300, but is associated with device 350. As an example, device 350 may be a desktop computer, an on-board computer, a tablet computer, a navigation device, a portable media device, a smart phone, or a wearable device (e.g., a smart watch or smart glasses) belonging to user 352.

Any of the machines, databases, or devices illustrated in fig. 3 may be implemented with a general-purpose computer modified by software (e.g., one or more software modules) to be a special-purpose computer to perform the functions described herein for that machine, database, or device. For example, a computer system capable of implementing any one or more of the methods described herein is discussed below with reference to fig. 16. As used herein, a "database" is a data storage resource and may store data structured as text files, tables, spreadsheets, relational databases (e.g., object relational databases), triple stores, integrated data stores, or any suitable combination thereof. Further, it is shown in fig. 3 that any two or more of the machines, databases, or devices may be combined into a single machine, and the functionality described herein for any single machine, database, or device may be subdivided among multiple machines, databases, or devices.

The network 390 may be any network that supports communication between machines, databases, and devices (e.g., the server 310 and the device 330). Thus, the network 390 may be a wired network, a wireless network (e.g., a mobile or cellular network), or any suitable combination thereof. The network 390 may include one or more portions that constitute a private network, a public network (e.g., the internet), or any suitable combination thereof. Thus, the network 390 may include a network that incorporates a Local Area Network (LAN), a Wide Area Network (WAN), the Internet, a mobile telephone network (e.g., a cellular network), a wired telephone network (e.g., a Plain Old Telephone System (POTS) network), a wireless data network (e.g., a WiFi network or a WiMax network), or any suitable combination. Any one or more of the networks 390 may communicate information via a transmission medium. As used herein, a "transmission medium" refers to any intangible (e.g., transitory) instruction capable of transmitting (e.g., transmitting) instructions for execution by a machine (e.g., by one or more processors of such a machine), and includes digital or analog communications signals or other transitory media to facilitate transmission of such software.

Fig. 4 is a functional diagram of an example image evaluation machine 310, according to some example embodiments. In some example embodiments, image evaluation machine 310 is included in network-based system 400. As described in more detail below, image evaluation machine 310 may receive image 410 (e.g., an image of an article of clothing). The received image 410 (also referred to as "image 410") may be received from a device 330 associated with the user 332.

In response to receiving the image 410, the image evaluator 310 analyzes the image (e.g., performs an image analysis 420 of the image) using at least one computer processor. In some example embodiments, to perform image analysis 420, image evaluation machine 310 extracts one or more visual features from received image 410. The image evaluation machine 310 may also identify values for one or more image attributes of the received image 410 based on the extracted one or more features of the received image 410 and the image attribute data 430 (e.g., data identifying or describing image attributes and values that the image attributes may take). Image evaluation machine 310 may also classify received image 410 into one or more categories based on the values of the one or more image attributes 430.

For example, the one or more visual features extracted from the received image 410 may include data representing a display type (e.g., human, mannequin, or flat display) for displaying the article of clothing described in the received image 410. The image attribute data 430 may include a variety of image attributes such as display type, background, contrast, or illumination. Each image attribute 430 may be associated with (e.g., captured or have a corresponding value) one or more values. For example, the display type attribute may take one of three values: (1) a human, (2) a human phantom, or (3) a flat panel display. Based on the one or more visual features extracted from the received image 410 and the display-type attribute, the image attribute evaluation machine 310 may identify a value of a display attribute of the received image 410 (e.g., a human). The image evaluation machine 310 may classify the received image 410 into a particular display type category (e.g., a human category, a human model category, or a flat display category) based on the identified value of the display type attribute of the received image 410.

In some example embodiments, instead of or in addition to classifying the received image 410 into categories based on the display-type attribute value of the received image 410, the image evaluation machine 310 assigns (e.g., ascribes) a label (e.g., a tag) to the received image 410 that identifies the display type for displaying the item described in the image. The image evaluator 310 may also calculate a confidence score value for the received image 410 to represent a confidence level for a proper determination of the display type of the received image 410. The indicia or the trust score value, or both, may be stored in a record of a database (e.g., database 126) in association with the received image 410 and may be used for future image evaluation of the received image 410.

According to some example embodiments, one or more image attributes and their values (e.g., one or more attribute-value pairs) are used as a basis for calculating an image score value for an image. For example, for a specific image of a black dress, the value of the attribute "display type" is recognized as "human", the value of the attribute "lighting" is determined as "good", and the value of the attribute "background" is determined as "white". Based on these pairs of attribute values, an image score value may be determined for a particular image of the black dress. Other attributes such as contrast, sharpness, arrangement, composition or balance, or suitable combinations of these attributes, may also be used as a basis for calculating an image score value for an image describing an article.

In some example embodiments, the image score value for the image may be based on the trust score value for the image and the low-level quality score value for the image. The image evaluation machine 310 may determine a trust score attributed to (e.g., used for, belonging to, or assigned to) the received image 410 that measures a confidence level that classifies the received image 410 as belonging to a category to which the received image 410 belongs (e.g., an image using a "human" display type belongs to a human category). In some example embodiments, the trust score value for the received image 410 takes a value between 0 and 1. The higher the confidence score value, the higher the confidence level that the image evaluator 310 correctly determines that the received image 410 is classified as a category. For example, image evaluator 310 determines that image A is a "mannequin" display type having a.8 confidence score value. This may mean that the display type of image a is correctly determined by the image evaluator 310 with an 80% confidence. Image evaluation machine 310 may determine a low-level quality score value attributed (e.g., used for, attributed to, or assigned to) received image 410 based on one or more other image attributes (e.g., lighting, sharpness, or professional production) of received image 410. In some example embodiments, the trust score value for the received image 410 and the low-level quality score value for the received image 410 are combined to produce an image score value for the received image 410.

In some examples, the trust score value for the received image 410 and the low-level quality score value for the received image 410 may be combined based on a product of the trust score value for the received image 410 and the low-level quality score value for the received image 410 to calculate the image score value for the received image 410. In other examples, the trust score value for the received image 410 and the low-level quality score value for the received image 410 may be specifically assigned weights according to a weight assignment rule to produce a weighted trust score value for the received image 410 and a weighted low-level quality score value for the received image 410. The weighted confidence score value for the received image 410 and the weighted low level quality score value for the received image 410 may be added together to calculate an image score value for the received image 410. In some example embodiments, the specific weighting may be selected at the user behavior analysis 450 of the user behavior data 440 that represents how a user seeing multiple images that describe similar items and have different image attribute values behaves in relation to a specific image.

In some example embodiments, the image evaluation machine 310 ranks images included in a particular category of images (e.g., images depicting clothing in a human category) or a sub-category of the particular category of images (e.g., images depicting black dress in a task category). The ranking may be based on a confidence score value of an image, a low level quality score value of the image, or an image score value combining the confidence score value and the low level quality score value of the respective image. For example, image evaluation machine 310 identifies images included in a human category that describes images of an article of clothing displayed using a human. The image evaluator 310 determines a confidence score value and a low-level quality score value for the respective images in the human category. For each image in the human category, image evaluator 310 may combine the confidence score value and the low-level quality score value corresponding to the particular image to produce an image score value corresponding to the particular image. In calculating image score values for images in a human category, image evaluator 310 may rank the images within the human category based on their respective image score values. In some example embodiments, the images are presented to the user (e.g., buyer) according to their image score values.

According to various example embodiments, the image evaluation machine 310 collects (e.g., captures, acquires, or receives) user behavior data 440 (e.g., indications of actions taken by potential buyers, actual buyers, or a combination thereof in relation to a plurality of images describing a particular type of article of clothing). In some example embodiments, the user behavior data 440 represents the behavior of one or more users searching for items and reacting (e.g., selecting or not selecting, viewing or not viewing) to one or more images that describe the searched items and that are displayed to the one or more users. In some example embodiments, the user behavior data 440 is collected over a period of time. In other example embodiments, user behavior data 440 is collected at a certain time.

The image evaluation machine 310 may perform user behavior analysis 450 based on the user behavior data 440 to learn (e.g., determine) what images the user (e.g., buyer) prefers. In particular, image evaluation machine 310 may determine which image attribute-value pairs may correlate to a desired user behavior (e.g., clicking on an image or purchasing an item depicted in an image). For example, user behavior data 440 may be collected from an e-commerce platform (e.g., an online marketplace, an online store, or a website). An e-commerce platform may enable users to search for items for sale using text queries entered on a website. In each search session, a user may enter a query to find an item, and a search engine may return a number of search results that mention the item (e.g., images that describe the item). Searching can be a very personalized task with great variations in terms of search purposes and product attributes. To focus on only apparel items and limit images to similar content (e.g., products of the same category), image evaluation machine 310 may display a range of collected user behavior data.

In some example embodiments, image evaluation machine 310 may be configured to be a query-dependent machine. As a query-dependent machine, the image evaluation machine 310 may be configured to collect only descriptions of query dialogs (e.g., data describing the query dialogs) that use particular keywords. For example, the image evaluation machine 310 may be configured to collect only descriptions of query dialogs using the keyword "black dress". In another example, the image evaluation machine 310 may be configured to collect only descriptions of query dialogs using the keyword "black dress". By configuring image evaluation machine 310 as a query-dependent machine, image evaluation machine 310 may display a range of user behavior data collected based on a particular query.

Image evaluator 310 may rank the retrieved results of the item (e.g., an image depicting a black dress) based on the item's relevance relationship to a particular keyword. In some example embodiments, when collecting user behavior data 440, image evaluation machine 310 may only collect data describing user behavior related to high relevance items. The high-relevance item may be an item described in an image displayed on the first search result page in response to a query input by a user.

Therefore, the images that are part of the retrieval result are likely to have the same content (e.g., black dress). The images may simply differ in their appearance (e.g., image attributes). For example, the images may differ in the display type of the black dress: on a human model, on a human phantom or simply flat. It is beneficial for the vendor to know how user behavior relates to images with similar content but different image attributes.

The performance of user behavior analysis 450 may represent how user behavior is manifested when presented with multiple images having different image properties. In some examples, performance of the user behavior analysis 450 may facilitate determining whether an image is pleasing to a buyer, whether the image may help sell an item shown in the image, or whether the image may be ignored by potential buyers of an item depicted in the image. In some example embodiments, the performance of the user behavior analysis 450 may include: a particular user action of one or more users is identified in relation to an item of clothing (e.g., a black dress) and one or more images that show one or more user interests in the image or the item depicted in the image. In some examples, user interest in a particular image or an item described in a particular image may be implied based on user interaction with the particular image. The specific user action may include, for example, selecting (e.g., clicking on) a specific image from a plurality of images displayed to the user, tagging the specific image for subsequent reference, e-mailing the image, printing the image, viewing the image for a time exceeding a threshold period of time, or purchasing an item described in the image within another threshold period of time after viewing the image. The performance of user behavior analysis 450 may also include identifying one or more attributes of one or more images depicting the article of clothing, and determining whether the one or more attributes associate one or more users increased interest-manifesting activity with the one or more images.

In some example embodiments, the user behavior analysis 450 may focus on answering the following questions with respect to display type attributes: (1) is the likelihood of these three styles (e.g., human, manikin, or flat display) clicking on the search results page different? (2) Is these three styles different in stimulating the user to mark or "watch" an item? (3) Is these three styles different in increasing sales? (4) For these three genres, how much difference in number exists between the user's preferences? Other or additional questions may be used when examining the impact of other image attributes on user purchasing behavior.

For a successful transaction, it may be crucial to attract the attention of the potential consumer. User interests may be shown at different stages during the course of online shopping (e.g., browsing, clicking actions, or purchasing). A user selection model (also referred to as a "PMF-user selection model" or "PMF model") for quantifying user preferences between humans, mannequins, and flat display styles may facilitate understanding and quantifying of user responses at three different stages during an online shopping cycle: (a) a "click" action at a search results page in which a plurality of related terms may be displayed in accordance with a search query; (B) a "view" action at the view item page, where the buyer can evaluate the item in more detail and can make a decision to suspend the item (e.g., by viewing), continue browsing, or purchase the item; or (c) a "buy" action, in which the user makes a final decision on the product.

Type (B) Displayed article Click on article Non-clicked item
Flat panel display 40.87% 39.21% 40.99%
Human body model 34.49% 33.26% 34.57%
Human being 24.65% 27.53% 24.44%

Table 1. Distribution offsets for displayed, clicked and unchecked items. For the item clicked, the ratio of P type increases and the ratio of M type and F type decreases, indicating that the user prefers P type over M type or F type.

Given the plurality of related items displayed on the search results page, a user click response at the search results page may be identified (e.g., by image evaluation machine 310). Table 1 above shows a significant distribution shift from the originally displayed search results to the content clicked on by the user by classifying the image content as a PMF type. The proportion of human type (also referred to as "P type") is only 24.65% for the displayed item, but increases to 27.53% for the clicked item. For the clicked item, the proportions of the mannequin type (also referred to as "M type") and the plane type (also referred to as "F type") are both reduced. This distribution indicates that the user prefers the P-type display over the M-type or F-type. Buyers show a stronger tendency for items displayed by type P even for different price segments or seller types.

Assuming that the P-type attracts greater attention on the search results page, image evaluation machine 310 may browse the user's actions on the item page. The browse items page may be a page in which the user may obtain details about the items depicted in the image, and may engage in other interest-revealing actions that represent more immediate shopping intent (e.g., marking the items for more careful evaluation). Image evaluator 310 may calculate an average number of views for each PMF type and for each vendor group. The results shown in Table 2 below suggest a positive correlation of "view actions" with top-level vendors and P-type product displays. For items sold by casual or top-level sellers, P-type images help increase the chances of viewing. The proportion of P-type images rises for items viewed more frequently when compared to less frequently viewed items.

Table 2. The average "number of views" for each display type relative to the vendor type. The results suggest cross-correlating P-types with higher average viewability for both temporary and top-ranked sellers.

Sales rate may be a limit evaluation metric against prior listings. Table 3 lists the conversion rates for each display type by the click action grouping observed in the collected session data. Clicked items show a higher conversion rate than un-clicked items, as the user shows interest in the items by clicking on the image showing the items, which is desirable, resulting in a higher chance of purchase. Comparison of the three display types (e.g., human, mannequin, and flat) may show that items displayed in P-type demonstrate a better sales rate for both clicked and unchecked items.

Table 3. Three display types of conversion rates for clicked and unchecked items in the collected session data, with items displayed by P type showing better sales rates.

Image evaluator 310 may also use a PMF-user selection model to determine the differences between preferences for each display style and quantitatively compare them. In the PMF-user selection model,m, p may represent a preference level for each type,m, p may be the proportion of each type in the original set of retrieved itemsIn which F isf+Fm+Fp1, andm, p may be the proportion of each type in the item clicked. The smaller the ratio Fi, the more difficult it is to show in the search result and to be selected by the user. Preference WiThe higher this given type is, the more likely it is to be selected. Thus, PiIs affected by two factors: from FiDistribution bias of representation and preference bias Wi

There may be different ways of combining these two factors to obtain a reasonable prediction of the user preference level. In some example embodiments, only two selections are weighted, and it may be assumed that the difficulty in selecting a given type is inversely proportional to the proportion of their post-click distribution, where by Fi and WiBoth model the difficulty. Equal preference (e.g., W) may also be assumedf=Wm=Wp) There should be no significant offset between the pre-click distribution and the post-click distribution. In other words, F can be expectedi=Pi. Based on this idea, the PMF user selection model one (C1) may be suggested as;

where when all three types of levels are the same,resulting in the same PMF distribution for both pre-click and post-click data. Given the same constraints, another model may instead use multiplication, resulting in model two (C2):

the solution to these two models is a set of paired relationships between preference levels, whichIn the middle offAnd WmParameterized as WpAs a function of (c). By using the inputs of Table 1, i.e. assigning Ff=0.4087,Fm0.3449 and Fp0.2465 as a pre-click distribution, and assign Pf=0.3921,Pm0.3326 and PpModel C1 yields, as a post-click distribution, 0.2753:

the results of model C2 directly show that the preference for M-type is approximately 86.3% of the preference for P-type:

table 4 lists the predicted priority levels from both models and a sum of one, according to an example embodiment. The P type gets the highest priority, while no significant difference between the M type and the F type is found. There are two possible reasons. First, the flat category includes many non-clothing items that a user retrieves when using a query like "black dress shoes". Electronic shoppers may prefer to click on those items because they explore or search for similar items (e.g., shoes or belts) that match well with the black dress. Second, because the mannequin is an inanimate human-shaped figure, it cannot be comfortably seen as a real human by a viewer.

Type (B) C1 C2
Flat panel display 0.3147 0.3155
Human body model 0.3133 0.3171
Human being 0.3740 0.3673

Table 4. Preference level of each PFM type estimated by two proposed PMF user selection models, where M type or F type is about 86% of P type.

The results of user behavior analysis 450, as described above, may show that in some example embodiments, the P-type display of clothing in an image is the most effective product display in three display types, and may help maximize the attention of the user and increase the rate of sales. The results of the user behavior analysis 450 may be used to a variety of audiences, for example, to select a better presentation strategy for clothing retailers, or to design a higher search or offer recommendation system for e-commerce operators to improve click-through rates. Additionally, in some example embodiments, the user behavior analysis 450 may be used to evaluate images describing an item to determine the likelihood that the item will elicit a desired response by a potential buyer of the item.

For example, user behavior analysis 450 and image analysis 420 may be used to perform image evaluation 460 of received images 410 received from devices 130 of users 132 (e.g., vendors). In some example embodiments, the image evaluation machine 310 may calculate an average likelihood that the buyer is engaged in the performance action of interest related to (e.g., related to) the received image 410 or the item depicted in the received image 410 based on the results of the image analysis 420 and the results of the user behavior analysis 450. An example of a performance action of interest in relation to the received image 410 or an item depicted in the received image 410 is selecting (e.g., clicking on) the received image 410 depicting the item or purchasing the item while viewing the received image 410. According to certain example embodiments, the image evaluation machine 310 determines an image score value for the received image 410 that may represent to the user 132 how the average buyer responds to the received image 410 (e.g., how likely the buyer is to click on the received image 410 or how likely the buyer is to purchase an item shown in the image).

According to some example embodiments, in performing image evaluation 460, image evaluation machine 310 may generate output 470 that may be transmitted to user 132 via device 130. Examples of output 470 include results of image evaluation 460 fed back based on the results of image evaluation 460, or suggestions of how to improve presentation (e.g., display) of an item included in received image 410. In some examples, the output 470 may include an image score value for the received image 410, a rating of the received image 410 compared to other images provided by other sellers (e.g., within or independent of the category of the image), or an indication of a likelihood of selling the item shown in the received image 410 if the received image 410 is used as a presentation on an item e-commerce website.

In some example embodiments, the output 470 includes a suggestion of how to select a cost-effective display type based on the results of the image analysis 420, the image evaluation 460, or both. For example, the output 470 may include an image score value for the received image 410 or a rating of the received image 410 compared to other images provided by other vendors (e.g., within or independent of a category of the image), and may provide one or more options to improve display of the item using the image describing the item based on the image score value, the rating value (e.g., location, order, or score), or both. In some examples, one of the options may be to select a different type of display (e.g., select M type instead of F type, or select P type instead of M type) in which a change in display type is cost effective. In other examples where it is costly to change the display type, the suggested selection may be to improve other properties of the image (e.g., lighting, professional photography, or a plain or white background).

FIG. 5 is a block diagram illustrating components of image evaluation machine 310, according to some example embodiments. Image evaluator 310 is shown to include a receiver module 510, an image analysis module 520, a behavior analysis module 530, an output module 540, and a communication module 550, all configured to communicate with each other (e.g., via a bus, shared memory, or switch).

Any one or more of the modules described herein may be implemented using hardware (e.g., one or more processors of a machine) or a combination of hardware and software. For example, any of the modules described herein may configure a processor (of one or more processors of a machine) to perform the operations described herein for that module. Further, any two or more of these modules may be combined into a single module, and the functionality described herein for a single module may be subdivided among multiple modules. Further, according to various example embodiments, modules described herein as being implemented in a single machine, database, or device may be distributed among multiple machines, databases, or devices.

6-14 are flowcharts illustrating operations of image evaluation machine 310 in performing method 600 of evaluating one or more images, according to some example embodiments. The operations in method 600 may be performed using the modules described above with reference to fig. 5. As shown in fig. 6, method 600 may include one or more of operations 610, 620, 630, and 640.

Image evaluation by image evaluation machine 310 may begin at method operation 610, where receiver module 510 accesses one or more results of user behavior analysis. The results of the user behavior analysis may be generated by the behavior analysis module 530 based on the analysis of the user behavior data 440. The user behavior data 440 may relate to a plurality of test images. User behavior data 440 may be collected based on user behavior of one or more users (e.g., potential buyers or actual buyers) associated with the plurality of test images. The analysis of the user behavior data 440 may include determining user preferences of one or more users for particular values of one or more image attributes of a plurality of images (e.g., images included in a library of test images) displayed to the plurality of users.

In method operation 620, the receiver module 510 receives an image of the item. The image may be received from a user device (e.g., a smartphone) of a user (e.g., a vendor). In some example embodiments, the image may describe an article of clothing.

At method operation 630, the image analysis module 520 performs image analysis of the image using one or more processors. Performing image evaluation of the image may include performing image analysis of the image and evaluating the image based on the image analysis of the image. The evaluation of the image may be based on the results of the image analysis and the results of the user behavior analysis accessed by the receiver module 510. In some example embodiments, the evaluation of the image includes determining a likelihood that a desired response may be obtained from one or more buyers to which the image is displayed.

At method operation 640, the output module 540 generates an output that references (e.g., includes a reference, is identified using an Identifier (ID), etc.) the image. The output may be generated based on an evaluation of the image. Generating an output for a user device in response to receiving an image of the item from the user device.

In some example embodiments, the method 600 may further include transmitting (e.g., via the communication module 550) a communication to a device of the seller. The communication may include an output generated with reference to the image. Further details of method operations relative to method 600 are described below with reference to fig. 6A-14.

As shown in fig. 6A, according to some example embodiments, method 600 may include one or more of operations 631, 632, and 633. Method operation 631 may be performed as part of method operation 630 (e.g., a predecessor task, a subtask, or a portion), where output module 540 produces an output that references the image. At method operation 631, the image analysis module 520 calculates a score value for the received image. The calculation of the score value for the image may be based on values of one or more image properties of the image.

Method operation 632 may be performed after method operation 631. At method operation 632, the image analysis module 520 determines the likelihood that a different user (e.g., buyer) is engaged in the desired user behavior with respect to (involving) the received image. Examples of desired user behavior related to the received image are selecting, clicking on, or marking future references for the received image; purchasing an item described in the received image or placing the corresponding item in a wish list; and so on. In some examples, the received image may be received from a seller of an item described in the received image, from an agent of the seller, or from a user device of the seller or the agent of the seller. In some example embodiments, determining the likelihood of different users engaging in the desired user behavior with respect to the received image may be based on a score value of the received image. In various example embodiments, determining the likelihood of different users engaging in the desired user behavior with respect to the received image may be based on one or more results of the user behavior data analysis. In some example embodiments, determining the likelihood of a different user engaging in a desired user behavior with respect to the received image may be based on both the score value of the received image and one or more results of the user behavior data analysis.

Method operation 633 may be performed as part of method operation 640 (e.g., a precursor task, a sub-task, or a portion), where output module 540 produces an output that references the image. At method operation 633, the output module 540 may generate an output that references the image and represents the likelihood of the user engaging in the desired user behavior associated with the received image.

As shown in fig. 6B, according to some example embodiments, method 600 may include one or more of operations 634, 636, and 637. Method operations 634 may be performed after method operations 632, where the image analysis module 520 determines a likelihood that a user (e.g., a general buyer, a particular buyer, etc.) is engaged in a desired user behavior related to the received image. At method operation 634, the image analysis module 520 accesses one or more image attribute values of another (e.g., second) image of another similar item. The item depicted in the image and other similar items depicted in other images may have similar features, such as style, color, pattern, and the like. For example, the article and the other type of article may be small black dresses.

Method operation 635 may be performed after method operation 634. At method operation 635, the image analysis module 520 calculates second score values corresponding to the other images. The calculation of the second score value may be based on the values of one or more image attributes of the other images.

Method operation 636 may be performed after method operation 635. At method operation 636, the image analysis module 520 compares the image with other images based on a score value (e.g., a first score value) corresponding to the image and a second score value corresponding to the other images.

Method operation 637 may be performed after method operation 636. At method operation 637, the image analysis module 520 generates a ranking of the images relative to other images of other similar items.

As shown in fig. 7, according to some example embodiments, method 600 may include one or more of operations 701, 702, 703, and 704. Method operation 701 may be performed prior to method operation 610, where the receiver module 510 accesses one or more results of the user behavior analysis. At method operation 701, the behavior analysis module 530 accesses (e.g., receives) user behavior data. The user behavior data may be an indication of an action taken by a user (e.g., an actual or potential buyer) in response to receiving a description of one or more similar items, an indication for no action to be taken, or a combination thereof.

Method operation 702 may be performed prior to method operation 610, where the receiver module 510 accesses one or more results of the user behavior analysis. At method operation 702, the behavior analysis module 530 analyzes the user behavior data as described above with reference to FIG. 2.

Method operation 703 may be performed prior to method operation 610, where the receiver module 510 accesses one or more results of the user behavior analysis. At method operation 703, the behavior analysis module 530 generates one or more results of the analysis of the user behavior data. In some example embodiments, the one or more results of the analysis of the user data comprise one or more indications of user preferences for particular images for particular image attributes. For example, the indication of user preferences represents that the user (e.g., a clothing purchaser) generally prefers to display an item of clothing using a task display-type image. According to another example, the indication of user preference uses an image of a human body model to indicate that most users prefer images with a white background. User preferences for particular images may be implied based on user actions toward particular images, such as selecting (e.g., clicking) a particular image or tagging an image for future reference. In some examples, a user's preference for a particular image may be implied based on the user purchasing an item described in the particular image.

Method operation 704 may be performed prior to method operation 610, where the receiver module 510 accesses one or more results of the user behavior analysis. At method operation 704, the behavior analysis module 530 stores the analysis results of the user behavior data in a database (e.g., database 126).

As shown in fig. 8, according to some example embodiments, method 600 may include one or more of operations 801, 802, and 803. Method operation 801 may be performed as part of method operation 630 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 performs image evaluation of the image. At method operation 801, the image analysis module 520 extracts one or more visual features from an image received from a vendor.

Method operation 802 may be performed after method operation 801. At method operation 802, the image analysis module 520 identifies values of one or more image attributes of the image (e.g., values of a display type for displaying an item within the image). Identifying a display type for displaying the item within the image may be based on one or more visual features extracted from the image received from the vendor. In some example embodiments, the method operations 801 and 802 are performed as part of the image analysis 420 described above with reference to fig. 4.

Method operation 803 may be performed after method operation 802. At method operation 803, the image analysis module 520 determines a likelihood that a user (e.g., a buyer) viewing the image is involved in an interest-presentation action related to the image (e.g., clicking on the image or purchasing an item shown in the image). Determining a likelihood of a user viewing the image participating in an interest-exhibiting action related to the image may be based on image analysis (or results of image analysis, e.g., values of one or more image properties of the image, e.g., values of a display type of the identified image) and user behavior data (e.g., results of user behavior analysis). According to some example embodiments, the user behavior data comprises data identifying interactions of potential buyers of the item with respect to one or more images showing the item. In various example embodiments, the buyer behavior data may represent preferences of a potential buyer in selecting images of a particular display type of a plurality of display types. Examples of the interaction of the interest exhibiting action with the image are selecting or clicking on the image, browsing the image, placing an item shown in the image in a wishlist, locking the image, or purchasing an item shown in the image.

As shown in fig. 9, according to some example embodiments, method 600 may include one or more of operations 801, 802, 901, and 902. Method operations 801 as described with reference to fig. 8 may be performed as part of method operations 630 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 performs image evaluation of the image. At method operation 801, the image analysis module 520 extracts one or more visual features from an image received from a vendor.

Method operation 802 as described with reference to fig. 8 may be performed after method operation 801. At method operation 802, the image analysis module 520 identifies a display type for displaying the item within the image. Identifying a display type for displaying the item within the image may be based on one or more visual features extracted from the image received from the vendor. In some example embodiments, the method operations 801 and 802 are performed as part of the image analysis 420 described above with reference to fig. 4.

Method operation 901 may be performed after method operation 802. In method operation 901, the image analysis module 520 determines an image score value for the received image. An image score value for an image may be determined based on a display type used to display an item within the image.

Method operation 902 may be performed after method operation 901. At method operation 902, the image analysis module 520 determines a likelihood that a buyer viewing the image is involved in an interest-showing action (e.g., a click) related to the image. Determining the likelihood of a buyer viewing the image participating in an interest-exhibiting action related to the image may be based on image analysis (or results of image analysis, such as image score values of the image) and user behavior data (e.g., results of user behavior analysis).

As shown in fig. 10, the network node 600 may comprise method operations 1001. Method operations 1001 may be performed as part of method operations 630 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 performs image evaluation of the image. In method operation 1001, the image analysis module 520 determines that the image is better than a different image. Determining that the image is better than a different image may be based on a comparison between the image (e.g., a first image received from a first vendor) and the different image (e.g., a second image received from the first vendor or a second image received from a different vendor).

In certain example embodiments, to compare the image to a different image, the image analysis module 520 performs a comparison of one or more image attribute-value pairs of the image and one or more corresponding image attribute-value pairs of the different image using one or more attribute comparison rules. For example, the image analysis module 520 may identify corresponding values of the "sharpness" attribute of the first image and the second image. Based on applying an attribute comparison rule that specifies that the attribute value corresponding to the "sharpness" attribute is ranked higher, image analysis module 520 may determine which of the first image and the second image has a very high ranking value for the "sharpness" attribute. Accordingly, the image analysis module 520 may identify images with higher ranking values for the "sharpness" attribute as better images.

According to various examples, the image analysis module 520 may identify respective values of the "display type" attribute for the first image and the second image. Based on applying an attribute comparison rule that specifies that the attribute value corresponding to the "display type" attribute is ranked higher, image analysis module 520 may determine which of the first image and the second image has a very high ranking value for the "display type" attribute. An attribute comparison rule may be generated during analysis of the user behavior data that specifies that attribute values corresponding to the "display type" attribute (e.g., "human," "mannequin," or "flat display") are ranked higher (e.g., "human" is ranked higher than "mannequin," or "mannequin" is ranked higher than "flat display"). Accordingly, the image analysis module 520 may identify images with higher ranking values for the "display type" attribute as better images.

As shown in fig. 11, according to some example embodiments, method 600 may include one or more of operations 1101, 1102, and 1103. Method operation 1101 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. In method operation 1101, the image analysis module 520 determines that the image is better than a different image based on the image being of a human display type (e.g., using a real person model to display an item shown in the image).

Method operation 1102 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. At method operation 1102, the image analysis module 520 determines that the image is better than a different image based on the image being of a mannequin display type (e.g., using a mannequin to display an item shown in the image).

Method operation 1103 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. At method operation 1103, the image analysis module 520 determines that the image is better than a different image based on the image being of a flat display type (e.g., not using a real-person model or a mannequin to flat display an item shown in the image).

As shown in fig. 12, network node 600 may include method operations 1201. Method operation 1201 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. In method operation 1201, the image analysis module 520 determines that the image is better than a different image based on the image having a higher ranking value than the different image. The image analysis module 520 may rank the plurality of images received from the user (e.g., vendor) according to one or more ranking rules. The result of the ranking may identify a specific order of the images.

In some example embodiments, the image and the different image may be ranked within a category to which they belong based on values of the respective display types as described above with reference to fig. 4. For example, if the image and the different image both use a human display type to display an item shown in the image, the image and the different image may be ranked within a human image category. In some example embodiments, images within a particular category may be ranked based on their image score value within the category.

In some example embodiments, the image and the different image may be globally ranked based on an image request score value (e.g., ranked independent of a category to which the image belongs). In some example embodiments, the image analysis module 520 uses a specific formula to determine the image request score value for an image based on the classification of the image.

For example, the user preferences for each PMF are P, M and F (corresponding to the values of 0.37, 0.31 in table 4 above). The trust score value is C. If the image is classified as P, the formula is:

P x C+M x(1-C)/2+F x(1-C)/2。

similarly, if an image is classified as M, the formula is:

P x(1-C)/2+M x C+F x(1-C)/2。

similarly, if an image is classified as F, the formula is:

P x(1-C)/2+M x(1-C)/2+F x C。

for example, based on analysis of user behavior data, the reference score values for images of different display types may be as follows: p is 0.37, M is 0.31 and F is 0.31. If a given image A is classified as a P-type with a trust score value of 0.7, then the image request score value for image A is equal to:

P x C+M x(1-C)/2+F x(1-C)/2=0.37x 0.7+0.31x(1-0.7)/2+0.31x(1-0.7)/2。

the image request score value of image a may be further combined with the low-level quality score value of image a to calculate a final score value. In some example embodiments, the final score value is used to determine a global ranking of the plurality of images.

In some examples, the combining of the image request score value and the low-level quality score value may include multiplying the image request score value of image a and the low-level quality score value of image a to calculate a final score value for image a. In some examples, the combination of the image request score value for image a and the low-level quality score value for image a may include assigning a particular weighting to the image request score value for image a and the low-level quality score value for image a to produce a weighted image request score value for image a and a weighted low-level quality score value for image a. The combining further includes adding the weighted image request score value for image a and the weighted low-level quality score value for image a to calculate a final score value for image a. In some example embodiments, the specific weighting may be selected during analysis of the user behavior data. Some or all of the score values attributed to the image (e.g., trust score value, image score value, or final score value) may be stored in one or more records of a database (e.g., database 126).

As shown in fig. 13, according to some example embodiments, method 600 may include one or more of operations 1301, 1302, and 1303. Method operation 1301 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. At method operation 1301, image analysis module 520 determines that the image is better than a different image based on the image having a higher ranking value than the different image, the image and the different image being of a human display type.

Method operation 1302 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. In method operation 1302, the image analysis module 520 determines that the image is better than a different image based on the image having a higher ranking value than the different image, the image and the different image being of a mannequin display type.

Method operation 1303 may be performed as part of method operation 1001 (e.g., a predecessor task, a subtask, or a portion), where image analysis module 520 determines that the image is better than a different image. At method operation 1303, the image analysis module 520 determines that the image is better than a different image based on the image having a higher ranking value than the different image, the image and the different image being of a flat display type.

As shown in fig. 14, according to some example embodiments, method 600 may include one or more of operations 1401, 1402, and 1403. Method operation 1401 may be performed as part of method operation 640 (e.g., a predecessor task, sub-task, or portion), where output module 540 produces an output that references the image. In method operation 1401, the output module 540 generates feedback that references the image. The feedback may include an image evaluation of the image (e.g., evaluating the image to determine a likelihood of a user viewing the image participating in an interest-exhibiting action associated with the image or the item), an interpretation of the image evaluation, a report of the image evaluation, a comparison of multiple images received from the seller, a comparison of images submitted by the seller and images submitted by other sellers (e.g., based on an image score value or an image score value of the respective image), examples of good images and bad images, or a suitable combination thereof.

Method operation 1402 may be performed as part of method operation 640 (e.g., a predecessor task, a subtask, or a portion), where output module 540 produces an output that references the image. In method operation 1402, the output module 540 generates a recommendation to reference the image. The suggestion may include a suggestion for an improved image of the item. The improved image of the item may increase the likelihood of obtaining a desired result from a user (e.g., a potential buyer), such as the likelihood of participating in an interest display activity (e.g., clicking on an image or purchasing the item) with the image or the item shown in the image. In some examples, the suggestion may include a description of changes made to various features (e.g., image attributes) of the image received from the seller.

The recommendations may include image evaluation results for the image (e.g., evaluating the image to determine a likelihood that a user viewing the image is involved in an interest-exhibiting action related to the image or the item), interpretation of the image evaluation results, comparison of multiple images received from the seller, reports of image evaluations, comparison of images submitted by the seller and images submitted by other sellers (e.g., based on image or image score values for the respective images), recommendations to select a more efficient display type to display the item in the image, recommendations of values of one or more other image attributes after modification (e.g., better lighting, white background, professional photography, showing fewer items in the image, or better image composition), a set of guidelines to assist the seller in how to improve the image showing the item (e.g., cost-benefit analysis of different image improvement options), a set of guidelines for how to improve the image showing the item (e.g., cost-benefit analysis of different image improvement options), a method of evaluating the image evaluation results, and a method of evaluating the image evaluation results, Examples of good images and bad images, or suitable combinations thereof.

Method operation 1403 may be performed as part of method operation 640 (e.g., a predecessor task, sub-task, or part), where output module 540 produces an output that references the image. At method operation 1403, the module 540 is shown generating a set of guidelines that assist the seller in selecting images that may result in a desired response from the buyer. In some example embodiments, the set of intelligence may describe how to generate or select a high quality image that facilitates increasing sales of items described in the image. The guide may be provided to (e.g., displayed) the seller of the item, such as at an e-commerce website where the seller may mark or sell their item. In some examples, the guide may be provided to the seller before the seller transmits (e.g., uploads) the image to an e-commerce website. In some examples, the guide may be provided to the seller after the seller transmits (e.g., uploads) the image to an e-commerce website. The set of guidelines may be customized for a particular vendor based on image evaluation results received from the particular vendor. For example, upon the image analysis module 520 completing an image evaluation of the image received from the seller and determining that the image may require improvement, the output module 540 generates a customized set of guidelines that assist the seller in selecting an image that may result in a desired response from the buyer. The communication module 550 may display the set of guidelines to the seller via the seller's device.

In some example embodiments, the output module 540 may determine which type of output to generate based on an image score value of an image received from a vendor. For example, the image analysis module 520 may determine that the image utilizes a P-type display to describe the article of clothing based on visual features of the extracted image. Based on the image displayed with P-type, the image analysis module 520 may assign a higher image score value to the image (compared to other images with M-type or F-type). The output module 540 may determine, based on the image score value for the image, that the output referencing the image may include feedback referencing the image (e.g., feedback with respect to how the image is compared (e.g., proactively) with other images submitted by other sellers), but may not include suggestions to improve the image based on images already having a higher image score value.

According to various example embodiments, one or more methods described herein may facilitate evaluation of images describing an item at the time of online sales. Further, one or more of the methods described herein may facilitate providing an image that improves the description of an online sales item. Accordingly, one or more of the methods described herein may facilitate improving the sale of an item depicted in an image.

When these effects are considered in general, one or more of the methods described herein may eliminate the need for certain workloads or resources that would otherwise involve evaluating images of online sales items. The effort of the provider of the images (e.g., the vendor) in evaluating the images may be reduced by one or more of the methods described herein. Computing resources used by one or more machines, databases, or devices (e.g., in network environment 300) may similarly be reduced. Examples of such computing resources include processor cycles, network traffic, memory usage, data storage capacity, power consumption, and cooling capacity.

Example Mobile device

FIG. 15 is a block diagram illustrating a mobile device 1500 according to an example embodiment. The mobile device 1500 may include a processor 1502. The processor 1502 may be any of a variety of different types of commercially available processors 1502 suitable for use in the mobile device 1500 (e.g., an XScale architecture microprocessor, a microprocessor without interlocked pipeline stages (MIPS) architecture processor, or another type of processor 1502). A memory 1504, such as Random Access Memory (RAM), flash memory, or other types of memory, is typically accessible to the processor 1502. The memory 1504 may be adapted to store an Operating System (OS)1506 and application programs 1508, such as a mobile location-enabled application that may provide LBS to a user. The processor 1502 may be connected to a display 1510, either directly or via suitable intermediate hardware, and to one or more input/output (I/O) devices 1512, such as a keyboard, touchpad sensor, microphone, and the like. Similarly, in some embodiments, the processor 1502 may be connected to a transceiver 1514 that interacts with an antenna 1516. Depending on the nature of the mobile device 1500, the transceiver 1514 may be configured to transmit and receive cellular network signals, wireless data signals, or other types of signals via the antenna 1516. Further, in some configurations, GPS receiver 1518 may also utilize antenna 1516 to receive GPS signals.

Module, component, and logic

Certain embodiments are described herein as comprising logic or multiple components, modules, or mechanisms. The modules may constitute software modules (e.g., (1) code embodied on a non-transitory machine-readable medium, or (2) code embodied in a transmission signal) or hardware-implemented modules. A hardware-implemented module is a tangible unit that is capable of performing certain operations and may be configured or arranged in a particular physical manner. In an example embodiment, one or more computer systems (e.g., a standalone computer system, a client computer system, or a server computer system) or one or more processors 1502 may be configured by software (e.g., an application or application portion) as hardware modules that operate to perform certain operations described herein.

In various embodiments, a hardware-implemented module may be implemented mechanically or electronically. For example, a hardware-implemented module may comprise dedicated circuitry or logic that is permanently configured to perform certain operations (e.g., a hardware-implemented module may be a special-purpose processor, such as a Field Programmable Gate Array (FPGA) or an application-specific integrated circuit (ASIC)). A hardware-implemented module may also include programmable logic or circuitry that is temporarily configured by software to perform certain operations (e.g., programmable logic or circuitry contained in the general-purpose processor 1502 or other programmable processor 1502). It will be clear that: the decision to implement a hardware-implemented module mechanically, in a dedicated and permanently configured circuit, or in a temporarily configured circuit (e.g., configured by software) may be driven by cost and time considerations.

Thus, the phrase "hardware-implemented module" should be understood to encompass a tangible entity, be it a physically-constructed, permanently-configured (e.g., hardwired), or temporarily or transiently-configured (e.g., programmed) entity to operate in a specific manner to perform the specific operations described herein. In view of the embodiments in which the hardware-implemented modules are temporarily configured (e.g., programmed), each hardware-implemented module need not be configured or instantiated at any time. For example, where the hardware-implemented modules include a general-purpose processor 1502 configured using software, the general-purpose processor 1502 may be configured at different times as corresponding different hardware-implemented modules. Software may configure the processor 1502 to, for example, constitute certain hardware-implemented modules at one time and different hardware-implemented modules at different times.

A hardware-implemented module may provide information to, and receive information from, other hardware-implemented modules. Accordingly, the described hardware-implemented modules may be considered to be communicatively coupled. Where a plurality of such hardware-implemented modules are present at the same time, communication may be effected by signal transmission (e.g., over appropriate circuitry and buses connecting the hardware-implemented modules). In embodiments where multiple hardware-implemented modules are configured or instantiated at different times, communication between such hardware-implemented modules may be achieved, for example, through the storage and retrieval of information in memory structures accessible to the multiple hardware-implemented modules. For example, a hardware-implemented module may perform an operation and store the output of the operation in a storage device communicatively coupled to the hardware-implemented module. Another hardware-implemented module may then access the storage device at a later time to retrieve and process the stored output. A hardware-implemented module may also initiate communication with an input or output device and may be capable of performing operations on a resource (e.g., a collection of information).

Various operations of the example methods described herein may be performed, at least in part, by one or more processors 1502 that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such a processor 1502 may constitute a processor-implemented module that operates to perform one or more operations or functions. In some example embodiments, "module" as used herein includes a processor-implemented module.

Similarly, the methods described herein may be implemented at least in part by a processor. For example, at least some of the operations of the method may be performed by one or more processors 1502 or processor-implemented modules. Execution of certain operations may be distributed among one or more processors 1502 or processor-implemented modules, and not merely reside in a single machine, but are arranged in multiple machines. In some example embodiments, one or more processors 1502 or processor-implemented modules may be located at a single site (e.g., in a home environment, an office environment, or a server farm), while in other embodiments one or more processors 1502 or processor-implemented modules may be distributed across multiple sites.

The one or more processors 1502 may also be operable to support the execution of related operations in a "cloud computing environment" or as a "software as a service" (SaaS). For example, at least some of the operations may be performed by a group of computers (e.g., machines including processors) that are accessible via a network (e.g., the internet) and via one or more appropriate interfaces (e.g., Application Program Interfaces (APIs)).

Electronic device and system

Example embodiments may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Example embodiments may be implemented using a computer program product, such as a computer program tangibly embodied in an information carrier, such as a machine-readable medium for execution by, or to control the operation of, data processing apparatus, such as a programmable processor 1502, a computer, or multiple computers.

The computer program may be written in any form of programming language, including: a compiled or interpreted language, and the computer program can be deployed in any form, including as a stand-alone program or as a module, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.

In an example embodiment, operations may be performed by one or more programmable processors 1502 executing a computer program to perform functions by operating on input data and generating output. Method operations may also be performed by, and apparatus of an example embodiment may be implemented as, special purpose logic circuitry, e.g., a Field Programmable Gate Array (FPGA) or an application-specific integrated circuit (ASIC).

The computing system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In embodiments using a programmable computing system, it will be clear that both hardware and software architectures need to be considered. In particular, it will be appreciated that implementing particular functions in permanently configured hardware (e.g., an ASIC), in temporarily configured hardware (e.g., a combination of software and the programmable processor 1502), or in a combination of permanently configured and temporarily configured hardware may be a design choice. The following is a hardware architecture (e.g., machine) and software architecture that may be deployed in various example embodiments.

Example machine architecture and machine-readable media

Fig. 16 illustrates a component of a machine 1600 that can read instructions 1624 from a machine-readable medium 1622 (e.g., a non-transitory machine-readable mechanism, a machine-readable storage medium, a computer-readable storage medium, or any suitable combination thereof) and execute, in whole or in part, any one or more of the methodologies discussed herein, according to some example embodiments. In particular, fig. 16 illustrates machine 1600 in the example form of a computer system (e.g., a computer) within which instructions 1624 (e.g., software, a program, an application, an applet, an app, or other executable code) for causing the machine 1600 to perform any one or more of the methodologies discussed herein may be executed, in whole or in part.

In alternative embodiments, the machine 1600 operates as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine 1600 may operate in the capacity of a server machine or a client machine in server-client network environment, or as a peer machine in a distributed (e.g., peer-to-peer) network environment. The machine 1600 may be a server computer, a client computer, a Personal Computer (PC), a tablet computer, a laptop computer, a netbook, a cellular telephone, a smart phone, a set-top box (STB), a Personal Digital Assistant (PDA), a web appliance, a network router, a network switch, a network bridge, or any machine capable of executing instructions 1624 that specify actions to be taken by that machine, sequentially or otherwise. Further, while only a single machine is illustrated, the term "machine" shall also be taken to include both the individual and joint execution of instructions 1624 to perform all or a portion of any one or more of the methodologies discussed herein.

The machine 1600 includes a processor 1602 (e.g., a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Radio Frequency Integrated Circuit (RFIC), or any suitable combination thereof), a main memory 1604 and a static memory 1606, which are configured to communicate with each other via a bus 1608. Processor 1602 may include microcircuits that are temporarily or permanently configured by some or all of instructions 1624 such that processor 1602 may be configured to perform, in whole or in part, any one or more of the methodologies described herein. For example, a set of one or more microcircuits of the processor 1602 can be configured to execute one or more modules (e.g., software modules) described herein.

The machine 1600 may also include a graphics display 1610 (e.g., a Plasma Display Panel (PDP), a Light Emitting Diode (LED) display, a Liquid Crystal Display (LCD), a projector, a Cathode Ray Tube (CRT), or any other display capable of displaying graphics or video). The machine 1600 may also include an alphanumeric input device 1612 (e.g., a keyboard or keypad), a cursor control device 1614 (e.g., a mouse, touchpad, trackball, joystick, motion sensor, eye-tracking device, or other pointing instrument), a storage unit 1616, an audio generation device 1618 (e.g., a sound card, amplifier, speaker, headphone jack, or any suitable combination thereof), and a network interface device 1620.

The storage unit 1616 includes a machine-readable medium 1622 (e.g., a tangible and non-transitory machine-readable storage medium) having instructions 1624 stored therein, the instructions 2124 implementing any one or more of the methodologies or functions described herein. The instructions 1624 may also reside, completely or at least partially, within the main memory 1604, within the processor 1602 (e.g., within a processor's cache memory), or both, before or during execution thereof by the machine 1600. Thus, the main memory 1604 and the processor 1602 may be considered machine-readable media (e.g., tangible and non-transitory machine-readable media). The instructions 1624 may be transmitted or received over a network 1626 via the network interface device 1620. For example, the network interface device 1620 may transmit the instructions 1624 using any one or more transport protocols, such as the hypertext transport protocol (HTTP).

In some example embodiments, the machine 1600 may be a portable computing device (such as a smartphone or tablet computer) and have one or more additional input components 1630 (e.g., sensors or meters). Examples of such input components 1630 include an image input component (e.g., one or more cameras), an automatic input component (e.g., a microphone), a directional input component (e.g., a compass), a location input component (e.g., a Global Positioning System (GPS) receiver), an orientation component (e.g., one or more accelerometers), an altitude detection component (e.g., an altimeter), and a gas detection component (e.g., a gas sensor). The input obtained by any one or more of these input components is accessible and available for use by any of the modules described herein.

As used herein, the term "memory" refers to a machine-readable medium that can store data either temporarily or permanently, and can be viewed as including without limitation Random Access Memory (RAM), Read Only Memory (ROM), cache memory, flash memory, and cache memory. While the machine-readable medium 1622 is shown in an example embodiment to be a single medium, the term "machine-readable medium" should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) that are capable of storing the instructions. The term "machine-readable medium" shall also be taken to include any medium, or combination of multiple media, that is capable of storing instructions 1624 for execution by machine 1600, such that when instructions 1624 are executed by one or more processors (e.g., processor 1602) of machine 1600, they cause machine 1600 to perform, in whole or in part, any one or more of the methodologies described herein. Thus, "machine-readable medium" refers to a single storage apparatus or device, as well as a cloud-based storage system or a storage network comprising a plurality of storage apparatuses or devices. The term "machine-readable mechanism" shall accordingly be taken to include, but not be limited to, one or more tangible (e.g., non-transitory) data stores of solid-state memory, optical media, magnetic media, or any suitable combination thereof. A machine-readable medium may also include a transitory medium such as a signal or a boat media such as an electromagnetic, electrical, optical or acoustical signal that carries the machine-readable instructions.

In this specification, plural instances may implement the components, operations, or structures described as singular instances. Although the individual operations of one or more methods are illustrated and described as separate operations, one or more of the individual operations may be performed concurrently and nothing requires that the operations be performed in the order illustrated. Structures and functionality presented as separate components in the example configurations may be implemented as a combined structure or component. Similarly, structures and functionality illustrated as separate components may be implemented as separate components. These and other variations, modifications, additions, and improvements fall within the scope of the subject matter herein.

Certain embodiments are described herein as comprising logic or multiple components, modules, or mechanisms. The modules may include software modules (e.g., code stored or implemented on a machine-readable medium or in a transmission medium), hardware modules, or any suitable combination thereof. A "hardware module" is a tangible (e.g., non-transitory) unit capable of performing certain operations and may be configured or arranged in some physical manner. In various example embodiments, one or more computer systems (e.g., a standalone computer system, a client computer system, or a server computer system) or one or more hardware modules (e.g., processors or groups of processors) of a computer system may be configured by an element (e.g., an application or application portion) as a hardware module that operates to perform certain operations described herein.

In some embodiments, the hardware modules may be implemented mechanically, electronically, or any suitable combination thereof. For example, a hardware module may comprise dedicated circuitry or logic that is permanently configured to perform certain operations. For example, the hardware module may be a special purpose processor, such as a Field Programmable Gate Array (FPGA) or ASIC. A hardware module may also comprise programmable logic or circuitry that is temporarily configured by software to perform certain operations. For example, the hardware modules may include software contained in a general purpose processor or other programmable processor. It should be understood that: the decision to mechanically, to configure the circuit in a dedicated and permanent way, or to configure the circuit in a disadvantageous way (e.g. by software) may be in consideration of cost and time.

Thus, the phrase "hardware module" should be understood to encompass a tangible entity, and such that a tangible entity is one that is physically constructed, permanently configured (e.g., hardwired), or temporarily configured (e.g., programmed) to operate in a particular manner or to perform a particular operation described herein. As used herein, "hardware-implemented module" refers to a hardware module. Considering embodiments of temporarily configured (e.g., programmed) hardware modules, it is no longer necessary to configure or instantiate each of the hardware modules at any one time. For example, if the hardware modules comprise general-purpose processors configured as special-purpose processors by software, the general-purpose processors may be configured as respectively different special-purpose processors (e.g., comprising different hardware modules) at different times. Thus, software (e.g., software modules) may configure one or more processors to constitute, for example, a particular hardware module at one time and a different hardware module at another time.

A hardware module may provide information to and receive information from other hardware modules. Thus, the described hardware modules may be viewed as communicatively coupled. If multiple hardware modules are present at the same time, communication may be achieved by signal transmission (e.g., over appropriate circuitry and buses) between two or more hardware modules. In embodiments where multiple hardware modules are configured or instantiated at different times, communication between such hardware modules may be accomplished, for example, by storing and retrieving information in a memory structure accessible to the multiple hardware modules. For example, one hardware module may perform an operation and store the output of the operation in a storage device to which it is communicatively coupled. Another hardware module may then later access the memory device to retrieve and process the stored output. The hardware modules may also initiate communication with input or output devices and may be capable of operating on resources (e.g., collections of information).

Various operations of the example methods described herein may be performed, at least in part, by one or more processors that are temporarily configured (e.g., via software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors constitute processor-implemented modules that operate to perform one or more operations or functions described herein. As used herein, "processor-implemented module" refers to a hardware module implemented using one or more processors.

Similarly, the methods described herein may be implemented, at least in part, by a processor, which is an example of hardware. For example, at least some of the operations of a method may be performed by one or more processors or processor-implemented modules. As used herein, "processor-implemented module" refers to a hardware module in which the hardware includes a processor. Further, the one or more processors may be further operable to perform related operations in a "cloud computing" environment or as a "software as a service" (SaaS). For example, at least some of the operations may be performed by a group of computers (as an example of a machine including a processor), which may be accessed via a network (e.g., the internet) and via one or more appropriate interfaces (e.g., Application Program Interfaces (APIs)).

The execution of particular operations may be distributed among one or more processors, which may be located not only on a single machine, but may be deployed across multiple machines. In some example embodiments, one or more processors or processor-implemented modules may be located in a single geographic location (e.g., in a home environment, an office environment, or a server farm). In other example embodiments, one or more processors or processor-implemented modules may be distributed across multiple geographic locations.

Some portions of the subject matter discussed herein may be presented in terms of algorithms or symbolic representations of operations on data stored as bits or binary digital signals within a machine memory, such as a computer memory. Such algorithms or symbolic representations are examples of techniques used by those of ordinary skill in the data processing arts to convey the substance of their work to others of ordinary skill in the art. An "algorithm," as the term is used herein, is a self-consistent sequence of operations or similar processing that results in a desired result. In this context, algorithms and operations involve physical manipulations of physical quantities. Usually, though not necessarily, such quantities may take the form of electrical, magnetic, or optical signals capable of being stored, accessed, transferred, combined, compared, and otherwise manipulated by a machine. It is convenient at times, principally for reasons of common usage, to refer to such signals as "data," "content," "bits," "values," "elements," "symbols," "characters," "terms," "numbers," "numerals," or the like. However, these terms are merely convenient labels and should be associated with appropriate physical quantities.

Unless specifically stated otherwise, discussions herein using terms such as "processing," "computing," "calculating," "determining," "presenting," "displaying," or the like, may refer to the action or processes of a machine (e.g., a computer) that manipulates or transforms data represented as physical (e.g., electronic, magnetic, or optical) quantities within one or more memories (e.g., volatile memory, non-volatile memory, or any combination thereof), registers, or other machine components that receive, store, transmit, or display information. Furthermore, unless specifically stated otherwise, the terms "a" or "an" herein are used to include one or more instances, as is common in patent documents. Finally, as used herein, the conjunction "or" refers to a non-exclusive "or" unless otherwise specified.

Industrial applicability

The invention disclosed herein has broad industrial applicability, such as image analysis, data processing, and human-computer interaction.

46页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于知识引导深度注意力网络的场景文字视觉问答方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!