SlideShare una empresa de Scribd logo
1 de 31
29/08/2019 Search and Enquiry/ eAlert
https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 1/6
Terms and Conditions Contact Feedback SiteMap FAQ
Within IPOS Website
SearchSearch
Fast Search Simple Search Boolean Search
For Information on Pop-Up Blockers, please click here.
Disclaimer [More Information]
Search Type
IP
Journals
Trade Marks Classification of Goods or Services
Trade Marks Similar Mark
Patents Abstract and Specification
Design International Registrations
Search Category
Designs Patents/Patents Open Dossier Trade Marks Geographical Indications
Application No.
Filing Date From
To
(dd/mm/yyyy)
Public Search and Enquiry/eAlert
29/08/2019 Search and Enquiry/ eAlert
https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 2/6
Applicant / Proprietor
Name
alibaba
Agent Name
Case No.
Additional Information for Patent
Publication No.
Title
Inventor
International Patent
Classification
Application Status
Click here for Glossary of IP
Status and Case Status.
All Status
Abandoned
Abandoned (Extension of Time Pending)
Abandoned (Extension of Time Possible)
Expired
Lapsed
Lapsed (Late Renewal Possible)
Lapsed (Restoration Pending)
Lapsed (Restoration Possible)
Patent In Force
Pending (Not Published)
Pending (Published)
Refused
Refused (Extension of Time Pending)
Refused (Extension of Time Possible)
Revoked
Surrendered
Withdrawn
Earliest Claimed Priority
Date From
To
(dd/mm/yyyy)
Lodgement Date From
To
(dd/mm/yyyy)
Publication Date From
To
(dd/mm/yyyy)
29/08/2019 Search and Enquiry/ eAlert
https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 3/6
Expiry Date From
To
(dd/mm/yyyy)
Priority Claim Date
From
To
(dd/mm/yyyy)
Journal Date From
To
(dd/mm/yyyy)
Sole Proprietor /
Partnership Name
Optional Fields Inventor(s)
Earliest Claimed Priority Date
International Patent Classification
Application Type
PCT Application Number
Journal Number / Date
Publication Number
Captcha*
What is BotDetect .NET CAPTCHA Control?
- Valid Captcha Text
Clear SearchSearch
Search Result
S/No Application
No.
App
Status
Filing
Date
Lodgement
Date
Applicant/Proprietor
Name
Title Agen
1 10201605129Q Patent
In
Force
20/06/2014 22/06/2016 1) ALIBABA GROUP
HOLDING LIMITED
TWO FACTOR
AUTHENTICATION
1) D
NAPI
2) RO
2 10201802635Q Patent
In
Force
29/08/2014 29/03/2018 1) ALIBABA GROUP
HOLDING LIMITED
DATA PROCESSING
BASED ON TWO-
DIMENSIONAL
CODE
1) D
NAPI
2) H
LLP
3 10201905273V Patent
In
Force
10/06/2019 10/06/2019 1) Alibaba Group
Holding Limited
METHOD AND
SYSTEM FOR
EVALUATING AN
OBJECT
DETECTION MODEL
1) SP
& FE
(ASI
LTD
4 11201510054Y Patent
In
Force
20/06/2014 08/12/2015 1) ALIBABA GROUP
HOLDING LIMITED
TWO FACTOR
AUTHENTICATION
1) D
NAPI
2) RO
29/08/2019 Search and Enquiry/ eAlert
https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 4/6
5 11201510055X Patent
In
Force
10/07/2014 08/12/2015 1) ALIBABA GROUP
HOLDING LIMITED
PROVIDING
HISTORY-BASED
DATA PROCESSING
1) D
NAPI
2) RO
6 11201510058R Patent
In
Force
25/07/2014 08/12/2015 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
SYSTEM FOR
PROVIDING
RECOMMENDED
TERMS
1) D
NAPI
2) RO
7 11201510059V Patent
In
Force
18/08/2014 08/12/2015 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
SYSTEM FOR
RECOMMENDING
ONLINE PRODUCTS
1) D
NAPI
2) RO
8 11201601233Q Patent
In
Force
29/08/2014 19/02/2016 1) ALIBABA GROUP
HOLDING LIMITED
DATA PROCESSING
BASED ON TWO-
DIMENSIONAL
CODE
1) D
NAPI
2) H
LLP
9 11201601572U Patent
In
Force
11/09/2014 02/03/2016 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
APPARATUS OF
DOWNLOADING
AND INSTALLING A
CLIENT
1) D
NAPI
2) H
LLP
10 11201608721S Patent
In
Force
15/04/2015 18/10/2016 1) ALIBABA GROUP
HOLDING LIMITED
METHOD, PUBLIC
ACCOUNT SERVER,
AND MOBILE
TERMINAL FOR
SENDING AND
GENERATING
CARDS
1) D
NAPI
2) YU
AUD
11 11201609418T Patent
In
Force
09/06/2015 10/11/2016 1) Alibaba Group
Holding Limited
VOICE DISPLAYING 1) M
CLER
SING
LLP
12 11201610289R Patent
In
Force
08/06/2015 08/12/2016 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
SYSTEM FOR
INFORMATION
AUTHENTICATION
1)
MCLA
IP PT
13 11201610292W Patent
In
Force
14/07/2015 08/12/2016 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
SYSTEM FOR
MANAGING
RESIDUAL VALUE
IN DISTRIBUTED
PROCESSING OF
TRANSACTIONS
1) D
NAPI
2)
MCLA
IP PT
14 11201610765W Patent
In
Force
30/06/2015 22/12/2016 1) Alibaba Group
Holding Limited
PROMPTING LOGIN
ACCOUNT
1) D
NAPI
2) M
CLER
SING
LLP
15 11201700639P Patent
In
Force
17/07/2015 25/01/2017 1) Alibaba Group
Holding Limited
INFORMATION
PUSHING METHOD,
SERVER, SHARER
CLIENT AND
THIRD-PARTY
CLIENT
1) D
NAPI
2) M
CLER
SING
LLP
29/08/2019 Search and Enquiry/ eAlert
https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 5/6
16 11201701997U Patent
In
Force
14/10/2015 13/03/2017 1) ALIBABA GROUP
HOLDING LIMITED
COMPRESSION OF
CASCADING STYLE
SHEET FILES
1)
MCLA
IP PT
17 11201702002T Patent
In
Force
15/10/2015 13/03/2017 1) ALIBABA GROUP
HOLDING LIMITED
REORGANIZING
AND PRESENTING
DATA FIELDS WITH
ERRONEOUS
INPUTS
1)
MCLA
IP PT
18 11201703418P Patent
In
Force
30/11/2015 26/04/2017 1) ALIBABA GROUP
HOLDING LIMITED
SYSTEM AND
METHOD FOR
SECURE ACCOUNT
TRANSFER
1)
MCLA
IP PT
19 11201704603W Patent
In
Force
15/01/2016 06/06/2017 1) ALIBABA GROUP
HOLDING LIMITED
SYSTEM FOR
EFFICIENT
PROCESSING OF
TRANSACTION
REQUESTS
RELATED TO AN
ACCOUNT IN A
DATABASE
1)
MCLA
IP PT
20 11201706026S Patent
In
Force
11/03/2016 24/07/2017 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
SYSTEM FOR
PROVIDING
PRIVATE CHAT
WITHIN A GROUP
CHAT
1)
MCLA
IP PT
21 11201707475W Patent
In
Force
08/03/2016 13/09/2017 1) ALIBABA GROUP
HOLDING LIMITED
THREE-
DIMENSIONAL
MODELING
METHOD AND
APPARATUS
1) PI
PTE.
22 11201707774P Patent
In
Force
15/03/2016 21/09/2017 1) ALIBABA GROUP
HOLDING LIMITED
REMOTE DATA
SYNCHRONIZATION
METHOD AND
APPARATUS FOR
DATABASE
1) PI
PTE.
23 11201707783V Patent
In
Force
22/03/2016 21/09/2017 1) ALIBABA GROUP
HOLDING LIMITED
METHOD AND
APPARATUS FOR
GENERATING A
SYNTHESIZED
PICTURE
1) PI
PTE.
24 11201707791X Patent
In
Force
22/03/2016 21/09/2017 1) ALIBABA GROUP
HOLDING LIMITED
PICTURE
SYNTHESIS
METHOD AND
APPARATUS
1) PI
PTE.
25 11201707803P Patent
In
Force
15/03/2016 22/09/2017 1) ALIBABA GROUP
HOLDING LIMITED
DATA HANDLING
METHOD AND
APPARATUS
1) PI
PTE.
Page 1 / 2 of 38 record(s) 1 2 Rows pe
21
METHOD AND SYSTEM FOR EVALUATING AN OBJECT DETECTION MODEL
ABSTRACT
A method for evaluating performance of an object detection model includes
generating a predicted bounding box representing an object based on the object
detection model. The object is positioned proximate to one or more adjacent
objects. The method also includes determining an area of intersection between the
predicted bounding box and a groundtruth bounding box of the object, and
determining a modified area of union between the predicted bounding box and the
groundtruth bounding box of the object. Determining the modified area of union
includes determining a weighted area of union between the predicted and
groundtruth bounding boxes based on one or more weights, and adding to the
weighted area of union an area of intersection between the predicted bounding box
and at least one groundtruth bounding box of the one or more adjacent objects.
The method further includes determining a score equal to the area of intersection
between the predicted bounding box and the groundtruth bounding box of the
object divided by the modified area of union. The score represents the
performance of the object detection model.
FIG. 1
1 / 5
generating a predicted bounding box representing an
object based on the object detection model
determining a modified area of union between the
predicted bounding box and the groundtruth bounding
box of the object
determining an area of intersection between the
predicted bounding box and a groundtruth bounding
box of the object
108
106
104
102
determining a score equal to the area of intersection
between the predicted bounding box and the
groundtruth bounding box of the object divided by the
modified area of union
Figure 1
100
2 / 5
A
B
A1
B1
Figure 2a
9XYZ0
Text123
C
D
A
Figure 2b
3 / 5
evaluating each of the object detection models with
validation data to identify the object detection model
having the highest score
receiving unlabeled actual data and a plurality of object
detection models
306
304
302
detecting an object in the unlabeled actual data based
on the identified object detection model
Figure 3
300
4 / 5
Figure 4
Receiver
module 402
Object
detection
module
406
Evaluation
module
408
Apparatus 404
400
Validation
data 410
Secondarymemory510
Processor
504
Mainmemory
508
Display
interface502
Audio
interface532
Display530Speaker(s)534
Interface520
Removablestoragedrive514
Harddiskdrive512
Communication
interface524
Communicationinfrastructure506
Removable
storageunit518
Removable
storageunit522
Communicationpath526
500
Figure5
5 / 5
1
METHOD AND SYSTEM FOR EVALUATING AN OBJECT
DETECTION MODEL
FIELD OF INVENTION
[0001] The present invention relates broadly, but not exclusively, to methods and
systems for evaluating an object detection model, and to object detection method
and devices.
BACKGROUND
[0002] Optical character recognition (OCR) is the mechanical or electronic
conversion of images of typed, handwritten or printed text into machine-encoded
text, whether from a scanned document, a photo of a document, a scene-photo or
from subtitle text superimposed on an image, etc. To recognise the text, the first
step is to detect bounding boxes of each text segment. Algorithms for detection of
text belong to a field named object detection in computer vision.
[0003] In object detection, intersection over union (IoU) is a common standard
metric used to evaluate the accuracy of a detector and model selection. The
traditional IoU formula is defined as “area of intersection between predicted
bounding box and groundtruth bounding box divided by area of union between
predicted bounding box and groundtruth bounding box”. This formula works well for
most cases. However, in the case of text detection, the traditional IoU may fail to
select the best models/parameters and thus using the traditional IoU may
significantly reduce the final accuracy of text recognition.
[0004] For example, the traditional IoU formula fails to consider at least two
conditions, namely, (1) both a smaller intersection and a greater union lead to a
similarly smaller IoU; however, for text detection a smaller intersection is worse
than a greater union because it may cause some regions of text to be lost and
affect the following OCR result, and (2) the traditional IoU does not consider the
intersection between a predicted textbox and other groundtruth textboxes. Without
2
considering these two conditions, a higher IoU value may not necessarily indicate a
better model.
[0005] A need therefore exists to provide methods and devices that can improve
the evaluation of object detection models for text detection.
SUMMARY
[0006] A first aspect of the present disclosure provides a method for evaluating
performance of an object detection model. The method includes generating a
predicted bounding box representing an object based on the object detection
model, wherein the object is positioned proximate to one or more adjacent objects;
determining an area of intersection between the predicted bounding box and a
groundtruth bounding box of the object; and determining a modified area of union
between the predicted bounding box and the groundtruth bounding box of the
object. Determining the modified area of union includes determining a weighted
area of union between the predicted and groundtruth bounding boxes based on
one or more weights; and adding to the weighted area of union an area of
intersection between the predicted bounding box and at least one groundtruth
bounding box of the one or more adjacent objects. The method further includes
determining a score equal to the area of intersection between the predicted
bounding box and the groundtruth bounding box of the object divided by the
modified area of union. The score represents the performance of the object
detection model.
[0007] A second aspect of the present disclosure provides an object detection
method. The method includes receiving unlabeled actual data and a plurality of
object detection models, wherein the object detection models are generated by a
neural network based on labeled training data; evaluating each of the object
detection models with validation data using the method as defined in the first
aspect to identify the object detection model having the highest score; and
detecting an object in the unlabeled actual data based on the identified object
detection model.
[0008] A third aspect of the present disclosure provides a system for evaluating an
object detection model. The system includes a processor, and a computer-
3
readable memory coupled to the processor and having instructions stored thereon.
The instructions are executable by the processor to generate a predicted bounding
box representing an object based on the object detection model, wherein the object
is positioned proximate to one or more adjacent objects; determine an area of
intersection between the predicted bounding box and a groundtruth bounding box
of the object; and determine a modified area of union between the predicted
bounding box and the groundtruth bounding box of the object. The modified area of
union is a sum of a weighted area of union between the predicted and groundtruth
bounding boxes based on one or more weights; and an area of intersection
between the predicted bounding box and at least one groundtruth bounding box of
the one or more adjacent objects. The instructions are also executable by the
processor to determine a score equal to the area of intersection between the
predicted bounding box and the groundtruth bounding box of the object divided by
the modified area of union. The score represents the performance of the object
detection model.
[0009] A fourth aspect of the present disclosure provides an apparatus comprising
an object detection module configured to generate a predicted bounding box
representing an object based on an object detection model, wherein the object is
positioned proximate to one or more adjacent objects, and an evaluation module.
The evaluation module is configured to determine an area of intersection between
the predicted bounding box and a groundtruth bounding box of the object; and
determine a modified area of union between the predicted bounding box and the
groundtruth bounding box of the object. The modified are of union is a sum of a
weighted area of union between the predicted and groundtruth bounding boxes
based on one or more weights; and an area of intersection between the predicted
bounding box and at least one groundtruth bounding box of the one or more
adjacent objects. The evaluation module is further configured to determine a score
equal to the area of intersection between the predicted bounding box and the
groundtruth bounding box of the object divided by the modified area of union; and
evaluate a performance of the object detection model based on the score.
[0010] A fifth aspect of the present disclosure provides an object detector. The
object detector includes a receiver module configured to receive unlabeled actual
data and a plurality of object detection models. The object detection models are
generated by a neural network based on labeled training data. The object detector
4
also includes the apparatus as defined in the fourth aspect coupled to the receiver
module and configured to evaluate each of the object detection models with
validation data to identify the object detection model having the highest score. The
object detection module is further configured to detect an object in the unlabeled
actual data based on the identified object detection model.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Embodiments of the invention will be better understood and readily
apparent to one of ordinary skill in the art from the following written description, by
way of example only, and in conjunction with the drawings, in which:
[0012] Figure 1 shows a flow chart illustrating a method for evaluating an object
detection model according to an embodiment.
[0013] Figures 2a and 2b show schematic diagrams illustrating an implementation
to determine the modified area of union in the method of Figure 1.
[0014] Figure 3 shows a flow chart illustrating an object detection method
according to an embodiment.
[0015] Figure 4 shows a schematic diagram illustrating an object detector
according to an embodiment.
[0016] Figure 5 shows a schematic diagram illustrating a computer system suitable
in implementing the methods of Figures 1 and 3 and the object detector of Figure
4.
[0017] Skilled artisans will appreciate that elements in the figures are illustrated for
simplicity and clarity and have not necessarily been depicted to scale. For example,
the dimensions of some of the elements in the illustrations, block diagrams or
flowcharts may be exaggerated in respect to other elements to help to improve
understanding of the present embodiments.
5
DETAILED DESCRIPTION
[0018] The present disclosure provides methods and devices in which an object
detection model is evaluated based on an improved IoU formula that takes into
account the considerations that (1) for text detection, a smaller intersection is
worse than a greater union because it may cause some regions of text to be lost
and affect the following OCR result, and (2) for text detection, the intersection
between a predicted textbox and other groundtruth textboxes may also adversely
affect the following OCR result. As described in more details below, the evaluation
is based on a score that not only penalizes a smaller intersection and greater union
combination (which the traditional IoU formula does), but also penalizes more on a
smaller intersection than on a greater union. In addition, it penalizes an intersection
between a predicted textbox and other groundtruth textboxes. Accordingly, given a
number of different object detection models, it is possible to identify or select the
model that is most suitable for text detection.
[0019] Embodiments will be described, by way of example only, with reference to the
drawings. Like reference numerals and characters in the drawings refer to like
elements or equivalents.
[0020] Some portions of the description herein are explicitly or implicitly presented in
terms of algorithms and functional or symbolic representations of operations on data
within a computer memory. These algorithmic descriptions and functional or symbolic
representations are the means used by those skilled in the data processing arts to
convey most effectively the substance of their work to others skilled in the art. An
algorithm is here, and generally, conceived to be a self-consistent sequence of steps
leading to a desired result. The steps are those requiring physical manipulations of
physical quantities, such as electrical, magnetic or optical signals capable of being
stored, transferred, combined, compared, and otherwise manipulated.
[0021] Unless specifically stated otherwise, and as apparent from the following, it will
be appreciated that throughout the present specification, discussions utilizing terms
such as “scanning”, “receiving”, “calculating”, “detecting”, “determining”, “replacing”,
“generating”, “initializing”, “outputting”, “evaluating”, or the like, refer to the action and
processes of a computer system, or similar electronic device, that manipulates and
transforms data represented as physical quantities within the computer system into
6
other data similarly represented as physical quantities within the computer system or
other information storage, transmission or display devices.
[0022] The present specification also discloses apparatus for performing the
operations of the methods. Such apparatus may be specially constructed for the
required purposes, or may comprise a computer or other device selectively activated or
reconfigured by a computer program stored in the computer. The algorithms and
displays presented herein are not inherently related to any particular computer or other
apparatus. Various machines may be used with programs in accordance with the
teachings herein. Alternatively, the construction of more specialized apparatus to
perform the required method steps may be appropriate. The structure of a computer
suitable for executing the various methods / processes described herein will appear
from the description herein.
[0023] In addition, the present specification also implicitly discloses a computer
program, in that it would be apparent to the person skilled in the art that the individual
steps of the method described herein may be put into effect by computer code. The
computer program is not intended to be limited to any particular programming language
and implementation thereof. It will be appreciated that a variety of programming
languages and coding thereof may be used to implement the teachings of the
disclosure contained herein. Moreover, the computer program is not intended to be
limited to any particular control flow. There are many other variants of the computer
program, which can use different control flows without departing from the spirit or
scope of the invention.
[0024] Furthermore, one or more of the steps of the computer program may be
performed in parallel rather than sequentially. Such a computer program may be stored
on any computer readable medium. The computer readable medium may include
storage devices such as magnetic or optical disks, memory chips, or other storage
devices suitable for interfacing with a computer. The computer readable medium may
also include a hard-wired medium such as exemplified in the Internet system, or
wireless medium such as exemplified in the GSM, GPRS, 3G or 4G mobile telephone
systems, as well as other wireless systems such as Bluetooth, ZigBee, Wi-Fi. The
computer program when loaded and executed on such a computer effectively results in
an apparatus that implements the steps of the preferred method.
7
[0025] The present invention may also be implemented as hardware modules. More
particularly, in the hardware sense, a module is a functional hardware unit designed for
use with other components or modules. For example, a module may be implemented
using discrete electronic components, or it can form a portion of an entire electronic
circuit such as an Application Specific Integrated Circuit (ASIC) or Field Programmable
Gate Array (FPGA). Numerous other possibilities exist. Those skilled in the art will
appreciate that the system can also be implemented as a combination of hardware and
software modules.
[0026] According to various embodiments, a "circuit" may be understood as any
kind of a logic implementing entity, which may be special purpose circuitry or a
processor executing software stored in a memory, firmware, or any combination
thereof. Thus, in an embodiment, a "circuit" may be a hard-wired logic circuit or a
programmable logic circuit such as a programmable processor, e.g. a
microprocessor (e.g. a Complex Instruction Set Computer (CISC) processor or a
Reduced Instruction Set Computer (RISC) processor). A "circuit" may also be a
processor executing software, e.g. any kind of computer program, e.g. a computer
program using a virtual machine code such as e.g. Java. Any other kind of
implementation of the respective functions which may be described in more detail
herein may also be understood as a "circuit" in accordance with an alternative
embodiment.
[0027] Figure 1 shows a flow chart 100 illustrating a method for evaluating
performance of an object detection model according to an embodiment.
[0028] At step 102, a predicted bounding box representing an object is generated
based on the object detection model. The object is typically positioned proximate to
one or more adjacent objects. For example, the object may be a text string (e.g. a
word or phrase) that is proximate to other text strings (e.g. other words and
phrases within a sentence or paragraph). Parameters such as size and position of
the predicted bounding box may vary from one object detection model to another.
The performance of the object detection model is therefore dependent on the
predicted bounding box.
[0029] At step 104, an area of intersection between the predicted bounding box
and a groundtruth bounding box of the object is determined. Typically, a greater
area of intersection between the predicted bounding box and the groundtruth
8
bounding box of the object indicates a greater degree of overlap between the
bounding boxes and may be more desirable than a smaller area.
[0030] At step 106, a modified area of union between the predicted bounding box
and the groundtruth bounding box of the object is determined by (1) determining a
weighted area of union between the predicted and groundtruth bounding boxes
based on one or more weights and (2) adding, to the weighted area of union, an
area of intersection between the predicted bounding box and at least one
groundtruth bounding box of one or more adjacent objects.
[0031] As further illustrated below with reference to Figure 2a, since the area of
union between two objects is a sum of the area of their intersection and the areas
of non-intersection, in the present examples, the weighted area of union between
the predicted and groundtruth bounding boxes may be determined by assigning
appropriate weights to respective constituent areas, including the areas of non-
intersection between the predicted bounding box and the groundtruth bounding box
of the object.
[0032] The area of intersection between the predicted bounding box and at least
one groundtruth bounding box of the one or more adjacent objects is further
illustrated with reference to Figure 2b.
[0033] The net result of step 106 is a modified area of union that is greater if the
predicted bounding box does not overlap well with the groundtruth bounding box of
the object and/or overlaps with the groundtruth bounding box(es) of adjacent
object(s). Typically, a greater modified area of union is less desirable than a
smaller area.
[0034] At step 108, a score equal to the area of intersection between the predicted
bounding box and the groundtruth bounding box of the object divided by the
modified area of union is determined. The score represents the performance of the
object detection model. For example, if the object detection model gives rise to a
greater modified area of union, the score is lower. On the other hand, if the object
detection model gives rise to a smaller modified area of union, the score is higher.
A score closer to 1 indicates a greater object detection accuracy.
[0035] Figures 2a and 2b show schematic diagrams illustrating an implementation
to determine the modified area of union in the method of Figure 1. In this
9
implementation, the object and the adjacent objects are text strings containing
characters and numerals, and the bounding boxes are interchangeably referred to
textboxes. However, it will be appreciated by a person skilled in the art that text
detection is just an example, and that the method can be applied to other types of
object detection.
[0036] With reference to Figures 2a-2b, the predicted bounding box can be labeled
as set A, the groundtruth bounding box of the object can be labeled as set B, and
the groundtruth bounding boxes of adjacent objects can be labeled as sets C and
D respectively. Given labeled validation data, the sizes and positions of B, C and D
are known, while the size and position of A can vary based on the detection model
used. While the bounding boxes of two adjacent objects are shown in this example,
it will be appreciated that the calculation can be applied to a greater number of
adjacent objects.
[0037] The modified area of union !"#$%$&#'( ) *+ in step 106 of Figure 1 can be
represented as:
!"#$%$&#'( ) *+ , -&$./0&#'( ) *+ 1 ( 2 3 1 ( 2 4 (I)
where -&$./0&#'( ) *+ represents the weighted area of union
between sets A and B, ( 2 3 represents the intersection between
sets A and C, and ( 2 4 represents the intersection between sets A
and D. The areas corresponding to ( 2 3 and ( 2 4 are shown in
Figure 2b.
[0038] Referring to Figure 2a, while the standard area of union is the sum of the
area of intersection (( 2 *) and the areas of non-intersection (A1 and B1), the
value of -&$./0&#'( ) *+ in equation (I) is determined by taking into the
consideration that, a greater B1 means a smaller intersection with the groundtruth
bounding box, whereas a greater A1 leads to greater union. Therefore, in the
present embodiments, B1 is penalized more than A1.
[0039] For example, -&$./0&#'( ) *+ can be expressed as:
-&$./0&#'( ) *+ , -5(5 1 -6*5 1 '( 2 *+ (II)
In equation (II), weights -5 and -6 are used to adjust penalties for A1 and B1.
Greater B1 leads to smaller intersection, whereas greater A1 leads to greater
10
union. Therefore, B1 should be penalized more, which means -5 < -6. The exact
value of -5 and -6 may be selected based on e.g. practical data and may vary
depending on the situation. In one non-limiting example, -5 + -6= 2. The areas
corresponding to A1, B1 and ( 2 *7are shown in Figure 2a.
[0040] By combining the above two equations (I) and (II):
!"#$%$&#'( ) *+ , -5(5 1 -6*5 1 '( 2 *+ 1 ( 2 3 1 ( 2 4 (III)
[0041] Referring to step 108 of Figure 1, the score can be calculated as:
89":& ,
;2<
=>? ! "?';)<+
,
;2<
#$;$%#&<$%';2<+%;2'%;2(
(IV)
In equations (III) and (IV), -5 < -6 and in one non-limiting example, -5 + -6= 2.
[0042] As can be seen from the above equation (IV), while the numerator is the
same as that used to determine the tradition IoU, the denominator is adapted to
penalize (1) more on a small intersection between sets A and B and less on a
greater union between sets A and B (as -5 < -6), and (2) any intersection between
sets A and C or between sets A and D (as the components ( 2 3 and7( 2 4 are
non-zero). In other words, the score is lower if either or both of conditions (1) and
(2), which are indicative of a low performance by the object detection model,
happen. Conversely, if there is a large intersection between sets A and B, and no
intersection between sets A and C or between sets A and D, the score is high. A
higher score (i.e. closer to 1) represents a better accuracy of the object detection
model.
[0043] The evaluation method as described above can be used for object detection
by first identifying the appropriate model for the detection task before using that
model for the actual data to be analysed. Figure 3 shows a flow chart 300
illustrating an object detection method according to an embodiment.
[0044] At step 302, unlabeled actual data and a plurality of object detection models
are received. The object detection models may be generated by a neural network,
e.g. a convolutional neural network, based on labeled training data. The unlabeled
actual data may be in the form of image data of an optical image of the object. For
example, the optical image may be a scanned document or a photograph of a
11
document uploaded by a customer which contains textual information that the
customer wishes to provide.
[0045] At step 304, given labeled validation data, each of the object detection
models is evaluated using the method as described above with reference to
Figures 1 and 2a-2b, to identify the object detection model having the highest
score. At step 306, the identified object detection model is used to detect an object
in the unlabeled actual data.
[0046] In an embodiment of the object detection method of Figure 3, the object
detection models in step 302 may have associated hyperparameters, and the
object detection model with the associated hyperparameters having the highest
score is identified in step 306. The identified model and associated
hyperparameters are then used to detect the object in the unlabeled actual data.
[0047] Figure 4 shows a schematic diagram illustrating an object detector 400
according to an embodiment. The object detector includes a receiver module 402
coupled to an apparatus 404. The apparatus 404 includes an object detection
module 406 and an evaluation module 408. Typically, the evaluation module 408 is
provided with a set of labeled validation data 410. The receiver module 402 is
configured to receive unlabeled actual data and a plurality of object detection
models. The object detection models are generated by a neural network based on
labeled training data. The apparatus 404 can evaluate each of the object detection
models based on the validation data to identify the object detection model having
the highest score.
[0048] In an example, the object detection module 406 is configured to generate a
predicted bounding box representing an object based on an object detection
model. The object is positioned proximate to one or more adjacent objects. The
evaluation module 408 is configured to determine an area of intersection between
the predicted bounding box and a groundtruth bounding box of the object, and
determine a modified area of union between the predicted bounding box and the
groundtruth bounding box of the object. The modified area of union is a sum of a
weighted area of union between the predicted and groundtruth bounding boxes
based on one or more weights and an area of intersection between the predicted
bounding box and at least one groundtruth bounding box of the one or more
adjacent objects. The evaluation module 408 is further configured to determine a
score equal to the area of intersection between the predicted bounding box and the
12
groundtruth bounding box of the object divided by the modified area of union, and
evaluate a performance of the object detection model based on the score. The
steps are performed for each of the object detection models to identify the object
detection model having the highest score.
[0049] The object detection module 406 is can then detect an object in the
unlabeled actual data based on the identified object detection model.
[0050] The methods, systems and devices as described when applied to text
detection can improve the performance of model selection in textbox detection and
increase the final accuracy of OCR. A detection model that provides a small
intersection between the predicted textbox and the groundtruth textbox of the
target text string outputs data that may be incomplete or truncated. Likewise, a
detection model that provides some degree of intersection between the predicted
textbox and groundtruth textboxes of adjacent text strings outputs data that may be
noisy or inaccurate. According to the present embodiments, such detection models
have low evaluation scores and will not be selected. Instead, a model that provides
a large intersection between the predicted textbox and the groundtruth textbox of
the target text string, and no intersection between the predicted textbox and
groundtruth textboxes of adjacent text strings, has a high evaluation score and will
be selected. When used to detect textboxes in a real/actual optical image, the
selected model can output accurate data which can help to improve the accuracy
of subsequent OCR steps.
[0051] Figure 5 depicts an exemplary computing device 500, hereinafter
interchangeably referred to as a computer system 500, where one or more such
computing devices 500 may be used for the object detector 400 of Figure 4, or for
implementing some or all steps of the methods of Figures 1 and 3. The following
description of the computing device 500 is provided by way of example only and is not
intended to be limiting.
[0052] As shown in Figure 5, the example computing device 500 includes a processor
504 for executing software routines. Although a single processor is shown for the sake
of clarity, the computing device 500 may also include a multi-processor system. The
processor 504 is connected to a communication infrastructure 506 for communication
with other components of the computing device 500. The communication infrastructure
506 may include, for example, a communications bus, cross-bar, or network.
13
[0053] The computing device 500 further includes a main memory 508, such as a
random access memory (RAM), and a secondary memory 510. The secondary
memory 510 may include, for example, a hard disk drive 512 and/or a removable
storage drive 514, which may include a floppy disk drive, a magnetic tape drive, an
optical disk drive, or the like. The removable storage drive 514 reads from and/or writes
to a removable storage unit 518 in a well-known manner. The removable storage unit
518 may include a floppy disk, magnetic tape, optical disk, or the like, which is read by
and written to by removable storage drive 514. As will be appreciated by persons
skilled in the relevant art(s), the removable storage unit 518 includes a computer
readable storage medium having stored therein computer executable program code
instructions and/or data.
[0054] In an alternative implementation, the secondary memory 510 may additionally
or alternatively include other similar means for allowing computer programs or other
instructions to be loaded into the computing device 500. Such means can include, for
example, a removable storage unit 522 and an interface 520. Examples of a removable
storage unit 522 and interface 520 include a program cartridge and cartridge interface
(such as that found in video game console devices), a removable memory chip (such
as an EPROM or PROM) and associated socket, and other removable storage units
522 and interfaces 520 which allow software and data to be transferred from the
removable storage unit 522 to the computer system 500.
[0055] The computing device 500 also includes at least one communication interface
524. The communication interface 524 allows software and data to be transferred
between computing device 500 and external devices via a communication path 526. In
various embodiments of the inventions, the communication interface 524 permits data
to be transferred between the computing device 500 and a data communication
network, such as a public data or private data communication network. The
communication interface 524 may be used to exchange data between different
computing devices 500 which such computing devices 500 form part an interconnected
computer network. Examples of a communication interface 524 can include a modem,
a network interface (such as an Ethernet card), a communication port, an antenna with
associated circuitry and the like. The communication interface 524 may be wired or
may be wireless. Software and data transferred via the communication interface 524
are in the form of signals which can be electronic, electromagnetic, optical or other
signals capable of being received by communication interface 524. These signals are
provided to the communication interface via the communication path 526.
14
[0056] As shown in Figure 5, the computing device 500 further includes a display
interface 502 which performs operations for rendering images to an associated display
530 and an audio interface 532 for performing operations for playing audio content via
associated speaker(s) 534.
[0057] As used herein, the term "computer program product" may refer, in part, to
removable storage unit 518, removable storage unit 522, a hard disk installed in hard
disk drive 512, or a carrier wave carrying software over communication path 526
(wireless link or cable) to communication interface 524. Computer readable storage
media refers to any non-transitory tangible storage medium that provides recorded
instructions and/or data to the computing device 500 for execution and/or processing.
Examples of such storage media include floppy disks, magnetic tape, CD-ROM, DVD,
Blu-rayTM
Disc, a hard disk drive, a ROM or integrated circuit, USB memory, a
magneto-optical disk, or a computer readable card such as a PCMCIA card and the
like, whether or not such devices are internal or external of the computing device 500.
Examples of transitory or non-tangible computer readable transmission media that may
also participate in the provision of software, application programs, instructions and/or
data to the computing device 500 include radio or infra-red transmission channels as
well as a network connection to another computer or networked device, and the
Internet or Intranets including e-mail transmissions and information recorded on
Websites and the like.
[0058] The computer programs (also called computer program code) are stored in
main memory 508 and/or secondary memory 510. Computer programs can also be
received via the communication interface 524. Such computer programs, when
executed, enable the computing device 500 to perform one or more features of
embodiments discussed herein. In various embodiments, the computer programs,
when executed, enable the processor 504 to perform features of the above-described
embodiments. Accordingly, such computer programs represent controllers of the
computer system 500.
[0059] Software may be stored in a computer program product and loaded into the
computing device 500 using the removable storage drive 514, the hard disk drive 512,
or the interface 520. Alternatively, the computer program product may be downloaded
to the computer system 500 over the communications path 526. The software, when
15
executed by the processor 504, causes the computing device 500 to perform functions
of embodiments described herein.
[0060] It is to be understood that the embodiment of Figure 5 is presented merely by
way of example. Therefore, in some embodiments one or more features of the
computing device 500 may be omitted. Also, in some embodiments, one or more
features of the computing device 500 may be combined together. Additionally, in some
embodiments, one or more features of the computing device 500 may be split into one
or more component parts.
[0061] It will be appreciated that the elements illustrated in Figure 5 function to provide
means for performing the various functions and operations of the servers as described
in the above embodiments.
[0062] In an implementation, a server may be generally described as a physical device
comprising at least one processor and at least one memory including computer
program code. The at least one memory and the computer program code are
configured to, with the at least one processor, cause the physical device to perform the
requisite operations.
[0063] It will be appreciated by a person skilled in the art that numerous variations
and/or modifications may be made to the present invention as shown in the specific
embodiments without departing from the spirit or scope of the invention as broadly
described. For example, methods, systems and devices as described can be suitably
adapted for different types of object detection, e.g. facial detection or vehicle detection.
The present embodiments are, therefore, to be considered in all respects to be
illustrative and not restrictive.
16
CLAIMS
1. A method for evaluating performance of an object detection model, the
method comprising the steps of:
generating a predicted bounding box representing an object based on the
object detection model, wherein the object is positioned proximate to one or more
adjacent objects;
determining an area of intersection between the predicted bounding box
and a groundtruth bounding box of the object;
determining a modified area of union between the predicted bounding box
and the groundtruth bounding box of the object, wherein determining the modified
area of union comprises:
determining a weighted area of union between the predicted and
groundtruth bounding boxes based on one or more weights; and
adding to the weighted area of union an area of intersection between
the predicted bounding box and at least one groundtruth bounding box of
the one or more adjacent objects; and
determining a score equal to the area of intersection between the predicted
bounding box and the groundtruth bounding box of the object divided by the
modified area of union, wherein the score represents the performance of the object
detection model.
2. The method as claimed in claim 1, wherein the object comprises a text
string, and wherein the adjacent objects comprise adjacent text strings.
3. The method as claimed in claim 1 or 2, wherein the one or more weights
comprise:
a predetermined first weight associated with a portion of the predicted
bounding box not intersecting with the groundtruth bounding box of the object,
a predetermined second weight associated with a portion of the groundtruth
bounding box of the object not intersecting with the predicted bounding box; and
wherein the first weight is less than the second weight.
4. The method as claimed in claim 3, wherein determining the weighted area
of union comprises assigning the first and second weights to the associated
17
portions and summing weighted areas of said portions with the area of intersection
between the predicted bounding box and groundtruth bounding box of the object.
5. The method as claimed in any one of the preceding claims, wherein a score
closer to 1 represents a higher accuracy of the object detection model.
6. An object detection method comprising:
receiving unlabeled actual data and a plurality of object detection models,
wherein the object detection models are generated by a neural network based on
labeled training data;
evaluating each of the object detection models with validation data using the
method as claimed in any one of the preceding claims to identify the object
detection model having the highest score; and
detecting an object in the unlabeled actual data based on the identified
object detection model.
7. The method as claimed in claim 6, wherein receiving the object detection
models comprises receiving hyperparameters associated with the respective
models, and wherein the object detection model together with the associated one
or more hyperparameters having the highest score is identified.
8. The method as claimed in claim 6 or 7, wherein detecting the object in the
unlabeled actual data comprises detecting a text string in image data of an optical
image of the object.
9. A system for evaluating an object detection model, comprising:
a processor; and
a computer-readable memory coupled to the processor and having
instructions stored thereon that are executable by the processor to:
generate a predicted bounding box representing an object based on
the object detection model, wherein the object is positioned proximate to
one or more adjacent objects;
determine an area of intersection between the predicted bounding
box and a groundtruth bounding box of the object;
18
determine a modified area of union between the predicted bounding
box and the groundtruth bounding box of the object, wherein the modified
area of union comprises a sum of:
a weighted area of union between the predicted and
groundtruth bounding boxes based on one or more weights; and
an area of intersection between the predicted bounding box
and at least one groundtruth bounding box of the one or more
adjacent objects; and
determine a score equal to the area of intersection between the
predicted bounding box and the groundtruth bounding box of the object
divided by the modified area of union, wherein the score represents the
performance of the object detection model.
10. The system as claimed in claim 9, wherein the object comprises a text
string, and wherein the adjacent objects comprise adjacent text strings.
11. The system as claimed in claim 9 or 10, wherein the one or more weights
comprise:
a predetermined first weight associated with a portion of the predicted
bounding box not intersecting with the groundtruth bounding box of the object,
a predetermined second weight associated with a portion of the groundtruth
bounding box of the object not intersecting with the predicted bounding box; and
wherein the first weight is less than the second weight.
12. The system as claimed in claim 11, wherein the instructions are executable
by the processor to assign the first and second weights to the associated portions
and sum weighted areas of said portions with the area of intersection between the
predicted bounding box and the groundtruth bounding box of the object to
determine the weighted area of union.
13. The system as claimed in any one claims 9 to 12, wherein a score closer to
1 represents a higher accuracy of the object detection model.
14. An apparatus comprising:
19
an object detection module configured to generate a predicted bounding
box representing an object based on an object detection model, wherein the object
is positioned proximate to one or more adjacent objects; and
an evaluation module configured to:
determine an area of intersection between the predicted bounding
box and a groundtruth bounding box of the object;
determine a modified area of union between the predicted bounding
box and the groundtruth bounding box of the object, wherein the modified
are of union comprises a sum of:
a weighted area of union between the predicted and
groundtruth bounding boxes based on one or more weights; and
an area of intersection between the predicted bounding box
and at least one groundtruth bounding box of the one or more
adjacent objects;
determine a score equal to the area of intersection between the
predicted bounding box and the groundtruth bounding box of the object
divided by the modified area of union; and
evaluate a performance of the object detection model based on the
score.
15. An object detector comprising:
a receiver module configured to receive unlabeled actual data and a
plurality of object detection models, wherein the object detection models are
generated by a neural network based on labeled training data; and
the apparatus as claimed in claim 14 coupled to the receiver module and
configured to evaluate each of the object detection models with validation data to
identify the object detection model having the highest score;
wherein the object detection module is further configured to detect an object
in the unlabeled actual data based on the identified object detection model.
16. The object detector as claimed in claim 15, wherein the input module is
further configured to receive hyperparameters associated with the respective
object detection models, and wherein the object detection model together with the
associated one or more hyperparameters having the highest score is identified.
20
17. The object detector as claimed in claim 15 or 16, wherein the object
comprises a text string, and the unlabeled actual data comprises image data of an
optical image of the object.

Más contenido relacionado

Similar a Alibaba Bags Patent in Singapore in Three Months for Computational AI Innovation #AIpatent

Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022
Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022
Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022Cheryl Brown
 
Solution to Help Companies Patent their Inventions, License Technologies, and...
Solution to Help Companies Patent their Inventions, License Technologies, and...Solution to Help Companies Patent their Inventions, License Technologies, and...
Solution to Help Companies Patent their Inventions, License Technologies, and...Dr. Haxel Consult
 
IRJET- Data Analysis and Solution Prediction using Elasticsearch in Healt...
IRJET-  	  Data Analysis and Solution Prediction using Elasticsearch in Healt...IRJET-  	  Data Analysis and Solution Prediction using Elasticsearch in Healt...
IRJET- Data Analysis and Solution Prediction using Elasticsearch in Healt...IRJET Journal
 
IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...
IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...
IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...IRJET Journal
 
Content-aware dynamic network resource allocation
Content-aware dynamic network resource allocationContent-aware dynamic network resource allocation
Content-aware dynamic network resource allocationTal Lavian Ph.D.
 
Real-Time Automated Overspeeding Detection and Identification System
Real-Time Automated Overspeeding Detection and Identification SystemReal-Time Automated Overspeeding Detection and Identification System
Real-Time Automated Overspeeding Detection and Identification SystemIRJET Journal
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Codemotion
 
Multilayer Collection Selection and Search of Topically Organized Patents
Multilayer Collection Selection and Search of Topically Organized PatentsMultilayer Collection Selection and Search of Topically Organized Patents
Multilayer Collection Selection and Search of Topically Organized PatentsMike Salampasis
 
Interfacing BLE with android based device
Interfacing BLE with android based device  Interfacing BLE with android based device
Interfacing BLE with android based device IEI GSC
 
IRJET- A Survey on Systems using Beacon Technology
IRJET- A Survey on Systems using Beacon TechnologyIRJET- A Survey on Systems using Beacon Technology
IRJET- A Survey on Systems using Beacon TechnologyIRJET Journal
 
IRJET - Virtual Data Auditing at Overcast Environment
IRJET - Virtual Data Auditing at Overcast EnvironmentIRJET - Virtual Data Auditing at Overcast Environment
IRJET - Virtual Data Auditing at Overcast EnvironmentIRJET Journal
 
Reto2.011 APEX API
Reto2.011 APEX APIReto2.011 APEX API
Reto2.011 APEX APIreto20
 
Serving Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataServing Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataChristophe Debruyne
 
Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...
Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...
Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...Eswar Publications
 
IRJET - Precise and Efficient Processing of Data in Permissioned Blockchain
IRJET - Precise and Efficient Processing of Data in Permissioned BlockchainIRJET - Precise and Efficient Processing of Data in Permissioned Blockchain
IRJET - Precise and Efficient Processing of Data in Permissioned BlockchainIRJET Journal
 
BioIT Europe 2010 - BioCatalogue
BioIT Europe 2010 - BioCatalogueBioIT Europe 2010 - BioCatalogue
BioIT Europe 2010 - BioCatalogueBioCatalogue
 

Similar a Alibaba Bags Patent in Singapore in Three Months for Computational AI Innovation #AIpatent (20)

Kiran_Patent
Kiran_PatentKiran_Patent
Kiran_Patent
 
OCRE webinar - April 14 - Dave Heyns.pdf
OCRE webinar - April 14 - Dave Heyns.pdfOCRE webinar - April 14 - Dave Heyns.pdf
OCRE webinar - April 14 - Dave Heyns.pdf
 
Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022
Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022
Associative Relevancy USPTO Patent 11263535 Granted On 3-1-2022
 
Solution to Help Companies Patent their Inventions, License Technologies, and...
Solution to Help Companies Patent their Inventions, License Technologies, and...Solution to Help Companies Patent their Inventions, License Technologies, and...
Solution to Help Companies Patent their Inventions, License Technologies, and...
 
IRJET- Data Analysis and Solution Prediction using Elasticsearch in Healt...
IRJET-  	  Data Analysis and Solution Prediction using Elasticsearch in Healt...IRJET-  	  Data Analysis and Solution Prediction using Elasticsearch in Healt...
IRJET- Data Analysis and Solution Prediction using Elasticsearch in Healt...
 
Us8448146
Us8448146Us8448146
Us8448146
 
IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...
IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...
IRJET - Traffic Density Estimation by Counting Vehicles using Aggregate Chann...
 
Content-aware dynamic network resource allocation
Content-aware dynamic network resource allocationContent-aware dynamic network resource allocation
Content-aware dynamic network resource allocation
 
Real-Time Automated Overspeeding Detection and Identification System
Real-Time Automated Overspeeding Detection and Identification SystemReal-Time Automated Overspeeding Detection and Identification System
Real-Time Automated Overspeeding Detection and Identification System
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
 
Multilayer Collection Selection and Search of Topically Organized Patents
Multilayer Collection Selection and Search of Topically Organized PatentsMultilayer Collection Selection and Search of Topically Organized Patents
Multilayer Collection Selection and Search of Topically Organized Patents
 
Interfacing BLE with android based device
Interfacing BLE with android based device  Interfacing BLE with android based device
Interfacing BLE with android based device
 
IRJET- A Survey on Systems using Beacon Technology
IRJET- A Survey on Systems using Beacon TechnologyIRJET- A Survey on Systems using Beacon Technology
IRJET- A Survey on Systems using Beacon Technology
 
IRJET - Virtual Data Auditing at Overcast Environment
IRJET - Virtual Data Auditing at Overcast EnvironmentIRJET - Virtual Data Auditing at Overcast Environment
IRJET - Virtual Data Auditing at Overcast Environment
 
Reto2.011 APEX API
Reto2.011 APEX APIReto2.011 APEX API
Reto2.011 APEX API
 
Serving Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked DataServing Ireland's Geospatial Information as Linked Data
Serving Ireland's Geospatial Information as Linked Data
 
Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...
Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...
Outlier Detection in Secure Shell Honeypot using Particle Swarm Optimization ...
 
Asset register
Asset registerAsset register
Asset register
 
IRJET - Precise and Efficient Processing of Data in Permissioned Blockchain
IRJET - Precise and Efficient Processing of Data in Permissioned BlockchainIRJET - Precise and Efficient Processing of Data in Permissioned Blockchain
IRJET - Precise and Efficient Processing of Data in Permissioned Blockchain
 
BioIT Europe 2010 - BioCatalogue
BioIT Europe 2010 - BioCatalogueBioIT Europe 2010 - BioCatalogue
BioIT Europe 2010 - BioCatalogue
 

Más de Prity Khastgir IPR Strategic India Patent Attorney Amplify Innovation

Más de Prity Khastgir IPR Strategic India Patent Attorney Amplify Innovation (20)

Oracle Database is a trademark of Oracle Corporation #CloudServerforIP
Oracle Database is a trademark of Oracle Corporation #CloudServerforIPOracle Database is a trademark of Oracle Corporation #CloudServerforIP
Oracle Database is a trademark of Oracle Corporation #CloudServerforIP
 
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
 
FSSAI-regulations_by Food Lawyer_Prity_khastgir.pdf
FSSAI-regulations_by Food Lawyer_Prity_khastgir.pdfFSSAI-regulations_by Food Lawyer_Prity_khastgir.pdf
FSSAI-regulations_by Food Lawyer_Prity_khastgir.pdf
 
IP Career Prospects in India – Club SciWri.pdf
IP Career Prospects in India – Club SciWri.pdfIP Career Prospects in India – Club SciWri.pdf
IP Career Prospects in India – Club SciWri.pdf
 
https-::www.akgec.ac.in:wp-content:uploads:2021:08:6-Prity_Khastgir.pdf
https-::www.akgec.ac.in:wp-content:uploads:2021:08:6-Prity_Khastgir.pdfhttps-::www.akgec.ac.in:wp-content:uploads:2021:08:6-Prity_Khastgir.pdf
https-::www.akgec.ac.in:wp-content:uploads:2021:08:6-Prity_Khastgir.pdf
 
GB2590167-20230418-Letter Notification of grant (1).pdf
GB2590167-20230418-Letter  Notification of grant (1).pdfGB2590167-20230418-Letter  Notification of grant (1).pdf
GB2590167-20230418-Letter Notification of grant (1).pdf
 
Goods & Services Tax (GST) _ Services.pdf
Goods & Services Tax (GST) _ Services.pdfGoods & Services Tax (GST) _ Services.pdf
Goods & Services Tax (GST) _ Services.pdf
 
PCTIN2023050082-other-000029-en.pdf
PCTIN2023050082-other-000029-en.pdfPCTIN2023050082-other-000029-en.pdf
PCTIN2023050082-other-000029-en.pdf
 
Goods & Service Tax (GST) _ User Welcome _ Welcome.pdf
Goods & Service Tax (GST) _ User Welcome _ Welcome.pdfGoods & Service Tax (GST) _ User Welcome _ Welcome.pdf
Goods & Service Tax (GST) _ User Welcome _ Welcome.pdf
 
PCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX (1).pdf
PCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX (1).pdfPCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX (1).pdf
PCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX (1).pdf
 
PCTIN2023050082-wosa-000027-en-IN-XXXXXXXX-XXXXXXXX.pdf
PCTIN2023050082-wosa-000027-en-IN-XXXXXXXX-XXXXXXXX.pdfPCTIN2023050082-wosa-000027-en-IN-XXXXXXXX-XXXXXXXX.pdf
PCTIN2023050082-wosa-000027-en-IN-XXXXXXXX-XXXXXXXX.pdf
 
PCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX.pdf
PCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX.pdfPCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX.pdf
PCTIN2022051037-wosa-000025-en-IN-XXXXXXXX-XXXXXXXX.pdf
 
PCTIN2022051037-isre-000023-en-IN-XXXXXXXX.pdf
PCTIN2022051037-isre-000023-en-IN-XXXXXXXX.pdfPCTIN2022051037-isre-000023-en-IN-XXXXXXXX.pdf
PCTIN2022051037-isre-000023-en-IN-XXXXXXXX.pdf
 
Sudharmendra's Resume_02.pdf
Sudharmendra's Resume_02.pdfSudharmendra's Resume_02.pdf
Sudharmendra's Resume_02.pdf
 
5746977_TM.pdf
5746977_TM.pdf5746977_TM.pdf
5746977_TM.pdf
 
Intellectual Property India 411898 .pdf
Intellectual Property India 411898 .pdfIntellectual Property India 411898 .pdf
Intellectual Property India 411898 .pdf
 
Gmail - Fw_ SHARK TANK INDIA 2 - PITCH MEETING CONFIRMATION MAIL.pdf
Gmail - Fw_ SHARK TANK INDIA 2 - PITCH MEETING CONFIRMATION MAIL.pdfGmail - Fw_ SHARK TANK INDIA 2 - PITCH MEETING CONFIRMATION MAIL.pdf
Gmail - Fw_ SHARK TANK INDIA 2 - PITCH MEETING CONFIRMATION MAIL.pdf
 
GB2016511.4 represented by Advocate Prity Khastgir International AI BLOCKCHAI...
GB2016511.4 represented by Advocate Prity Khastgir International AI BLOCKCHAI...GB2016511.4 represented by Advocate Prity Khastgir International AI BLOCKCHAI...
GB2016511.4 represented by Advocate Prity Khastgir International AI BLOCKCHAI...
 
WASTE MANAGEMENT in Patent Claims.pdf
WASTE MANAGEMENT in Patent Claims.pdfWASTE MANAGEMENT in Patent Claims.pdf
WASTE MANAGEMENT in Patent Claims.pdf
 
#Covid19SmartCity: A concrete Guide to drive Citizens' engagement for #Innova...
#Covid19SmartCity: A concrete Guide to drive Citizens' engagement for #Innova...#Covid19SmartCity: A concrete Guide to drive Citizens' engagement for #Innova...
#Covid19SmartCity: A concrete Guide to drive Citizens' engagement for #Innova...
 

Último

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 

Último (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 

Alibaba Bags Patent in Singapore in Three Months for Computational AI Innovation #AIpatent

  • 1. 29/08/2019 Search and Enquiry/ eAlert https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 1/6 Terms and Conditions Contact Feedback SiteMap FAQ Within IPOS Website SearchSearch Fast Search Simple Search Boolean Search For Information on Pop-Up Blockers, please click here. Disclaimer [More Information] Search Type IP Journals Trade Marks Classification of Goods or Services Trade Marks Similar Mark Patents Abstract and Specification Design International Registrations Search Category Designs Patents/Patents Open Dossier Trade Marks Geographical Indications Application No. Filing Date From To (dd/mm/yyyy) Public Search and Enquiry/eAlert
  • 2. 29/08/2019 Search and Enquiry/ eAlert https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 2/6 Applicant / Proprietor Name alibaba Agent Name Case No. Additional Information for Patent Publication No. Title Inventor International Patent Classification Application Status Click here for Glossary of IP Status and Case Status. All Status Abandoned Abandoned (Extension of Time Pending) Abandoned (Extension of Time Possible) Expired Lapsed Lapsed (Late Renewal Possible) Lapsed (Restoration Pending) Lapsed (Restoration Possible) Patent In Force Pending (Not Published) Pending (Published) Refused Refused (Extension of Time Pending) Refused (Extension of Time Possible) Revoked Surrendered Withdrawn Earliest Claimed Priority Date From To (dd/mm/yyyy) Lodgement Date From To (dd/mm/yyyy) Publication Date From To (dd/mm/yyyy)
  • 3. 29/08/2019 Search and Enquiry/ eAlert https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 3/6 Expiry Date From To (dd/mm/yyyy) Priority Claim Date From To (dd/mm/yyyy) Journal Date From To (dd/mm/yyyy) Sole Proprietor / Partnership Name Optional Fields Inventor(s) Earliest Claimed Priority Date International Patent Classification Application Type PCT Application Number Journal Number / Date Publication Number Captcha* What is BotDetect .NET CAPTCHA Control? - Valid Captcha Text Clear SearchSearch Search Result S/No Application No. App Status Filing Date Lodgement Date Applicant/Proprietor Name Title Agen 1 10201605129Q Patent In Force 20/06/2014 22/06/2016 1) ALIBABA GROUP HOLDING LIMITED TWO FACTOR AUTHENTICATION 1) D NAPI 2) RO 2 10201802635Q Patent In Force 29/08/2014 29/03/2018 1) ALIBABA GROUP HOLDING LIMITED DATA PROCESSING BASED ON TWO- DIMENSIONAL CODE 1) D NAPI 2) H LLP 3 10201905273V Patent In Force 10/06/2019 10/06/2019 1) Alibaba Group Holding Limited METHOD AND SYSTEM FOR EVALUATING AN OBJECT DETECTION MODEL 1) SP & FE (ASI LTD 4 11201510054Y Patent In Force 20/06/2014 08/12/2015 1) ALIBABA GROUP HOLDING LIMITED TWO FACTOR AUTHENTICATION 1) D NAPI 2) RO
  • 4. 29/08/2019 Search and Enquiry/ eAlert https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 4/6 5 11201510055X Patent In Force 10/07/2014 08/12/2015 1) ALIBABA GROUP HOLDING LIMITED PROVIDING HISTORY-BASED DATA PROCESSING 1) D NAPI 2) RO 6 11201510058R Patent In Force 25/07/2014 08/12/2015 1) ALIBABA GROUP HOLDING LIMITED METHOD AND SYSTEM FOR PROVIDING RECOMMENDED TERMS 1) D NAPI 2) RO 7 11201510059V Patent In Force 18/08/2014 08/12/2015 1) ALIBABA GROUP HOLDING LIMITED METHOD AND SYSTEM FOR RECOMMENDING ONLINE PRODUCTS 1) D NAPI 2) RO 8 11201601233Q Patent In Force 29/08/2014 19/02/2016 1) ALIBABA GROUP HOLDING LIMITED DATA PROCESSING BASED ON TWO- DIMENSIONAL CODE 1) D NAPI 2) H LLP 9 11201601572U Patent In Force 11/09/2014 02/03/2016 1) ALIBABA GROUP HOLDING LIMITED METHOD AND APPARATUS OF DOWNLOADING AND INSTALLING A CLIENT 1) D NAPI 2) H LLP 10 11201608721S Patent In Force 15/04/2015 18/10/2016 1) ALIBABA GROUP HOLDING LIMITED METHOD, PUBLIC ACCOUNT SERVER, AND MOBILE TERMINAL FOR SENDING AND GENERATING CARDS 1) D NAPI 2) YU AUD 11 11201609418T Patent In Force 09/06/2015 10/11/2016 1) Alibaba Group Holding Limited VOICE DISPLAYING 1) M CLER SING LLP 12 11201610289R Patent In Force 08/06/2015 08/12/2016 1) ALIBABA GROUP HOLDING LIMITED METHOD AND SYSTEM FOR INFORMATION AUTHENTICATION 1) MCLA IP PT 13 11201610292W Patent In Force 14/07/2015 08/12/2016 1) ALIBABA GROUP HOLDING LIMITED METHOD AND SYSTEM FOR MANAGING RESIDUAL VALUE IN DISTRIBUTED PROCESSING OF TRANSACTIONS 1) D NAPI 2) MCLA IP PT 14 11201610765W Patent In Force 30/06/2015 22/12/2016 1) Alibaba Group Holding Limited PROMPTING LOGIN ACCOUNT 1) D NAPI 2) M CLER SING LLP 15 11201700639P Patent In Force 17/07/2015 25/01/2017 1) Alibaba Group Holding Limited INFORMATION PUSHING METHOD, SERVER, SHARER CLIENT AND THIRD-PARTY CLIENT 1) D NAPI 2) M CLER SING LLP
  • 5. 29/08/2019 Search and Enquiry/ eAlert https://www.ip2.sg/RPS/WP/CM/SearchSimpleP.aspx?SearchCategory=PT 5/6 16 11201701997U Patent In Force 14/10/2015 13/03/2017 1) ALIBABA GROUP HOLDING LIMITED COMPRESSION OF CASCADING STYLE SHEET FILES 1) MCLA IP PT 17 11201702002T Patent In Force 15/10/2015 13/03/2017 1) ALIBABA GROUP HOLDING LIMITED REORGANIZING AND PRESENTING DATA FIELDS WITH ERRONEOUS INPUTS 1) MCLA IP PT 18 11201703418P Patent In Force 30/11/2015 26/04/2017 1) ALIBABA GROUP HOLDING LIMITED SYSTEM AND METHOD FOR SECURE ACCOUNT TRANSFER 1) MCLA IP PT 19 11201704603W Patent In Force 15/01/2016 06/06/2017 1) ALIBABA GROUP HOLDING LIMITED SYSTEM FOR EFFICIENT PROCESSING OF TRANSACTION REQUESTS RELATED TO AN ACCOUNT IN A DATABASE 1) MCLA IP PT 20 11201706026S Patent In Force 11/03/2016 24/07/2017 1) ALIBABA GROUP HOLDING LIMITED METHOD AND SYSTEM FOR PROVIDING PRIVATE CHAT WITHIN A GROUP CHAT 1) MCLA IP PT 21 11201707475W Patent In Force 08/03/2016 13/09/2017 1) ALIBABA GROUP HOLDING LIMITED THREE- DIMENSIONAL MODELING METHOD AND APPARATUS 1) PI PTE. 22 11201707774P Patent In Force 15/03/2016 21/09/2017 1) ALIBABA GROUP HOLDING LIMITED REMOTE DATA SYNCHRONIZATION METHOD AND APPARATUS FOR DATABASE 1) PI PTE. 23 11201707783V Patent In Force 22/03/2016 21/09/2017 1) ALIBABA GROUP HOLDING LIMITED METHOD AND APPARATUS FOR GENERATING A SYNTHESIZED PICTURE 1) PI PTE. 24 11201707791X Patent In Force 22/03/2016 21/09/2017 1) ALIBABA GROUP HOLDING LIMITED PICTURE SYNTHESIS METHOD AND APPARATUS 1) PI PTE. 25 11201707803P Patent In Force 15/03/2016 22/09/2017 1) ALIBABA GROUP HOLDING LIMITED DATA HANDLING METHOD AND APPARATUS 1) PI PTE. Page 1 / 2 of 38 record(s) 1 2 Rows pe
  • 6. 21 METHOD AND SYSTEM FOR EVALUATING AN OBJECT DETECTION MODEL ABSTRACT A method for evaluating performance of an object detection model includes generating a predicted bounding box representing an object based on the object detection model. The object is positioned proximate to one or more adjacent objects. The method also includes determining an area of intersection between the predicted bounding box and a groundtruth bounding box of the object, and determining a modified area of union between the predicted bounding box and the groundtruth bounding box of the object. Determining the modified area of union includes determining a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights, and adding to the weighted area of union an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects. The method further includes determining a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union. The score represents the performance of the object detection model. FIG. 1
  • 7. 1 / 5 generating a predicted bounding box representing an object based on the object detection model determining a modified area of union between the predicted bounding box and the groundtruth bounding box of the object determining an area of intersection between the predicted bounding box and a groundtruth bounding box of the object 108 106 104 102 determining a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union Figure 1 100
  • 8. 2 / 5 A B A1 B1 Figure 2a 9XYZ0 Text123 C D A Figure 2b
  • 9. 3 / 5 evaluating each of the object detection models with validation data to identify the object detection model having the highest score receiving unlabeled actual data and a plurality of object detection models 306 304 302 detecting an object in the unlabeled actual data based on the identified object detection model Figure 3 300
  • 10. 4 / 5 Figure 4 Receiver module 402 Object detection module 406 Evaluation module 408 Apparatus 404 400 Validation data 410
  • 12. 1 METHOD AND SYSTEM FOR EVALUATING AN OBJECT DETECTION MODEL FIELD OF INVENTION [0001] The present invention relates broadly, but not exclusively, to methods and systems for evaluating an object detection model, and to object detection method and devices. BACKGROUND [0002] Optical character recognition (OCR) is the mechanical or electronic conversion of images of typed, handwritten or printed text into machine-encoded text, whether from a scanned document, a photo of a document, a scene-photo or from subtitle text superimposed on an image, etc. To recognise the text, the first step is to detect bounding boxes of each text segment. Algorithms for detection of text belong to a field named object detection in computer vision. [0003] In object detection, intersection over union (IoU) is a common standard metric used to evaluate the accuracy of a detector and model selection. The traditional IoU formula is defined as “area of intersection between predicted bounding box and groundtruth bounding box divided by area of union between predicted bounding box and groundtruth bounding box”. This formula works well for most cases. However, in the case of text detection, the traditional IoU may fail to select the best models/parameters and thus using the traditional IoU may significantly reduce the final accuracy of text recognition. [0004] For example, the traditional IoU formula fails to consider at least two conditions, namely, (1) both a smaller intersection and a greater union lead to a similarly smaller IoU; however, for text detection a smaller intersection is worse than a greater union because it may cause some regions of text to be lost and affect the following OCR result, and (2) the traditional IoU does not consider the intersection between a predicted textbox and other groundtruth textboxes. Without
  • 13. 2 considering these two conditions, a higher IoU value may not necessarily indicate a better model. [0005] A need therefore exists to provide methods and devices that can improve the evaluation of object detection models for text detection. SUMMARY [0006] A first aspect of the present disclosure provides a method for evaluating performance of an object detection model. The method includes generating a predicted bounding box representing an object based on the object detection model, wherein the object is positioned proximate to one or more adjacent objects; determining an area of intersection between the predicted bounding box and a groundtruth bounding box of the object; and determining a modified area of union between the predicted bounding box and the groundtruth bounding box of the object. Determining the modified area of union includes determining a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights; and adding to the weighted area of union an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects. The method further includes determining a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union. The score represents the performance of the object detection model. [0007] A second aspect of the present disclosure provides an object detection method. The method includes receiving unlabeled actual data and a plurality of object detection models, wherein the object detection models are generated by a neural network based on labeled training data; evaluating each of the object detection models with validation data using the method as defined in the first aspect to identify the object detection model having the highest score; and detecting an object in the unlabeled actual data based on the identified object detection model. [0008] A third aspect of the present disclosure provides a system for evaluating an object detection model. The system includes a processor, and a computer-
  • 14. 3 readable memory coupled to the processor and having instructions stored thereon. The instructions are executable by the processor to generate a predicted bounding box representing an object based on the object detection model, wherein the object is positioned proximate to one or more adjacent objects; determine an area of intersection between the predicted bounding box and a groundtruth bounding box of the object; and determine a modified area of union between the predicted bounding box and the groundtruth bounding box of the object. The modified area of union is a sum of a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights; and an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects. The instructions are also executable by the processor to determine a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union. The score represents the performance of the object detection model. [0009] A fourth aspect of the present disclosure provides an apparatus comprising an object detection module configured to generate a predicted bounding box representing an object based on an object detection model, wherein the object is positioned proximate to one or more adjacent objects, and an evaluation module. The evaluation module is configured to determine an area of intersection between the predicted bounding box and a groundtruth bounding box of the object; and determine a modified area of union between the predicted bounding box and the groundtruth bounding box of the object. The modified are of union is a sum of a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights; and an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects. The evaluation module is further configured to determine a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union; and evaluate a performance of the object detection model based on the score. [0010] A fifth aspect of the present disclosure provides an object detector. The object detector includes a receiver module configured to receive unlabeled actual data and a plurality of object detection models. The object detection models are generated by a neural network based on labeled training data. The object detector
  • 15. 4 also includes the apparatus as defined in the fourth aspect coupled to the receiver module and configured to evaluate each of the object detection models with validation data to identify the object detection model having the highest score. The object detection module is further configured to detect an object in the unlabeled actual data based on the identified object detection model. BRIEF DESCRIPTION OF THE DRAWINGS [0011] Embodiments of the invention will be better understood and readily apparent to one of ordinary skill in the art from the following written description, by way of example only, and in conjunction with the drawings, in which: [0012] Figure 1 shows a flow chart illustrating a method for evaluating an object detection model according to an embodiment. [0013] Figures 2a and 2b show schematic diagrams illustrating an implementation to determine the modified area of union in the method of Figure 1. [0014] Figure 3 shows a flow chart illustrating an object detection method according to an embodiment. [0015] Figure 4 shows a schematic diagram illustrating an object detector according to an embodiment. [0016] Figure 5 shows a schematic diagram illustrating a computer system suitable in implementing the methods of Figures 1 and 3 and the object detector of Figure 4. [0017] Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been depicted to scale. For example, the dimensions of some of the elements in the illustrations, block diagrams or flowcharts may be exaggerated in respect to other elements to help to improve understanding of the present embodiments.
  • 16. 5 DETAILED DESCRIPTION [0018] The present disclosure provides methods and devices in which an object detection model is evaluated based on an improved IoU formula that takes into account the considerations that (1) for text detection, a smaller intersection is worse than a greater union because it may cause some regions of text to be lost and affect the following OCR result, and (2) for text detection, the intersection between a predicted textbox and other groundtruth textboxes may also adversely affect the following OCR result. As described in more details below, the evaluation is based on a score that not only penalizes a smaller intersection and greater union combination (which the traditional IoU formula does), but also penalizes more on a smaller intersection than on a greater union. In addition, it penalizes an intersection between a predicted textbox and other groundtruth textboxes. Accordingly, given a number of different object detection models, it is possible to identify or select the model that is most suitable for text detection. [0019] Embodiments will be described, by way of example only, with reference to the drawings. Like reference numerals and characters in the drawings refer to like elements or equivalents. [0020] Some portions of the description herein are explicitly or implicitly presented in terms of algorithms and functional or symbolic representations of operations on data within a computer memory. These algorithmic descriptions and functional or symbolic representations are the means used by those skilled in the data processing arts to convey most effectively the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities, such as electrical, magnetic or optical signals capable of being stored, transferred, combined, compared, and otherwise manipulated. [0021] Unless specifically stated otherwise, and as apparent from the following, it will be appreciated that throughout the present specification, discussions utilizing terms such as “scanning”, “receiving”, “calculating”, “detecting”, “determining”, “replacing”, “generating”, “initializing”, “outputting”, “evaluating”, or the like, refer to the action and processes of a computer system, or similar electronic device, that manipulates and transforms data represented as physical quantities within the computer system into
  • 17. 6 other data similarly represented as physical quantities within the computer system or other information storage, transmission or display devices. [0022] The present specification also discloses apparatus for performing the operations of the methods. Such apparatus may be specially constructed for the required purposes, or may comprise a computer or other device selectively activated or reconfigured by a computer program stored in the computer. The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various machines may be used with programs in accordance with the teachings herein. Alternatively, the construction of more specialized apparatus to perform the required method steps may be appropriate. The structure of a computer suitable for executing the various methods / processes described herein will appear from the description herein. [0023] In addition, the present specification also implicitly discloses a computer program, in that it would be apparent to the person skilled in the art that the individual steps of the method described herein may be put into effect by computer code. The computer program is not intended to be limited to any particular programming language and implementation thereof. It will be appreciated that a variety of programming languages and coding thereof may be used to implement the teachings of the disclosure contained herein. Moreover, the computer program is not intended to be limited to any particular control flow. There are many other variants of the computer program, which can use different control flows without departing from the spirit or scope of the invention. [0024] Furthermore, one or more of the steps of the computer program may be performed in parallel rather than sequentially. Such a computer program may be stored on any computer readable medium. The computer readable medium may include storage devices such as magnetic or optical disks, memory chips, or other storage devices suitable for interfacing with a computer. The computer readable medium may also include a hard-wired medium such as exemplified in the Internet system, or wireless medium such as exemplified in the GSM, GPRS, 3G or 4G mobile telephone systems, as well as other wireless systems such as Bluetooth, ZigBee, Wi-Fi. The computer program when loaded and executed on such a computer effectively results in an apparatus that implements the steps of the preferred method.
  • 18. 7 [0025] The present invention may also be implemented as hardware modules. More particularly, in the hardware sense, a module is a functional hardware unit designed for use with other components or modules. For example, a module may be implemented using discrete electronic components, or it can form a portion of an entire electronic circuit such as an Application Specific Integrated Circuit (ASIC) or Field Programmable Gate Array (FPGA). Numerous other possibilities exist. Those skilled in the art will appreciate that the system can also be implemented as a combination of hardware and software modules. [0026] According to various embodiments, a "circuit" may be understood as any kind of a logic implementing entity, which may be special purpose circuitry or a processor executing software stored in a memory, firmware, or any combination thereof. Thus, in an embodiment, a "circuit" may be a hard-wired logic circuit or a programmable logic circuit such as a programmable processor, e.g. a microprocessor (e.g. a Complex Instruction Set Computer (CISC) processor or a Reduced Instruction Set Computer (RISC) processor). A "circuit" may also be a processor executing software, e.g. any kind of computer program, e.g. a computer program using a virtual machine code such as e.g. Java. Any other kind of implementation of the respective functions which may be described in more detail herein may also be understood as a "circuit" in accordance with an alternative embodiment. [0027] Figure 1 shows a flow chart 100 illustrating a method for evaluating performance of an object detection model according to an embodiment. [0028] At step 102, a predicted bounding box representing an object is generated based on the object detection model. The object is typically positioned proximate to one or more adjacent objects. For example, the object may be a text string (e.g. a word or phrase) that is proximate to other text strings (e.g. other words and phrases within a sentence or paragraph). Parameters such as size and position of the predicted bounding box may vary from one object detection model to another. The performance of the object detection model is therefore dependent on the predicted bounding box. [0029] At step 104, an area of intersection between the predicted bounding box and a groundtruth bounding box of the object is determined. Typically, a greater area of intersection between the predicted bounding box and the groundtruth
  • 19. 8 bounding box of the object indicates a greater degree of overlap between the bounding boxes and may be more desirable than a smaller area. [0030] At step 106, a modified area of union between the predicted bounding box and the groundtruth bounding box of the object is determined by (1) determining a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights and (2) adding, to the weighted area of union, an area of intersection between the predicted bounding box and at least one groundtruth bounding box of one or more adjacent objects. [0031] As further illustrated below with reference to Figure 2a, since the area of union between two objects is a sum of the area of their intersection and the areas of non-intersection, in the present examples, the weighted area of union between the predicted and groundtruth bounding boxes may be determined by assigning appropriate weights to respective constituent areas, including the areas of non- intersection between the predicted bounding box and the groundtruth bounding box of the object. [0032] The area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects is further illustrated with reference to Figure 2b. [0033] The net result of step 106 is a modified area of union that is greater if the predicted bounding box does not overlap well with the groundtruth bounding box of the object and/or overlaps with the groundtruth bounding box(es) of adjacent object(s). Typically, a greater modified area of union is less desirable than a smaller area. [0034] At step 108, a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union is determined. The score represents the performance of the object detection model. For example, if the object detection model gives rise to a greater modified area of union, the score is lower. On the other hand, if the object detection model gives rise to a smaller modified area of union, the score is higher. A score closer to 1 indicates a greater object detection accuracy. [0035] Figures 2a and 2b show schematic diagrams illustrating an implementation to determine the modified area of union in the method of Figure 1. In this
  • 20. 9 implementation, the object and the adjacent objects are text strings containing characters and numerals, and the bounding boxes are interchangeably referred to textboxes. However, it will be appreciated by a person skilled in the art that text detection is just an example, and that the method can be applied to other types of object detection. [0036] With reference to Figures 2a-2b, the predicted bounding box can be labeled as set A, the groundtruth bounding box of the object can be labeled as set B, and the groundtruth bounding boxes of adjacent objects can be labeled as sets C and D respectively. Given labeled validation data, the sizes and positions of B, C and D are known, while the size and position of A can vary based on the detection model used. While the bounding boxes of two adjacent objects are shown in this example, it will be appreciated that the calculation can be applied to a greater number of adjacent objects. [0037] The modified area of union !"#$%$&#'( ) *+ in step 106 of Figure 1 can be represented as: !"#$%$&#'( ) *+ , -&$./0&#'( ) *+ 1 ( 2 3 1 ( 2 4 (I) where -&$./0&#'( ) *+ represents the weighted area of union between sets A and B, ( 2 3 represents the intersection between sets A and C, and ( 2 4 represents the intersection between sets A and D. The areas corresponding to ( 2 3 and ( 2 4 are shown in Figure 2b. [0038] Referring to Figure 2a, while the standard area of union is the sum of the area of intersection (( 2 *) and the areas of non-intersection (A1 and B1), the value of -&$./0&#'( ) *+ in equation (I) is determined by taking into the consideration that, a greater B1 means a smaller intersection with the groundtruth bounding box, whereas a greater A1 leads to greater union. Therefore, in the present embodiments, B1 is penalized more than A1. [0039] For example, -&$./0&#'( ) *+ can be expressed as: -&$./0&#'( ) *+ , -5(5 1 -6*5 1 '( 2 *+ (II) In equation (II), weights -5 and -6 are used to adjust penalties for A1 and B1. Greater B1 leads to smaller intersection, whereas greater A1 leads to greater
  • 21. 10 union. Therefore, B1 should be penalized more, which means -5 < -6. The exact value of -5 and -6 may be selected based on e.g. practical data and may vary depending on the situation. In one non-limiting example, -5 + -6= 2. The areas corresponding to A1, B1 and ( 2 *7are shown in Figure 2a. [0040] By combining the above two equations (I) and (II): !"#$%$&#'( ) *+ , -5(5 1 -6*5 1 '( 2 *+ 1 ( 2 3 1 ( 2 4 (III) [0041] Referring to step 108 of Figure 1, the score can be calculated as: 89":& , ;2< =>? ! "?';)<+ , ;2< #$;$%#&<$%';2<+%;2'%;2( (IV) In equations (III) and (IV), -5 < -6 and in one non-limiting example, -5 + -6= 2. [0042] As can be seen from the above equation (IV), while the numerator is the same as that used to determine the tradition IoU, the denominator is adapted to penalize (1) more on a small intersection between sets A and B and less on a greater union between sets A and B (as -5 < -6), and (2) any intersection between sets A and C or between sets A and D (as the components ( 2 3 and7( 2 4 are non-zero). In other words, the score is lower if either or both of conditions (1) and (2), which are indicative of a low performance by the object detection model, happen. Conversely, if there is a large intersection between sets A and B, and no intersection between sets A and C or between sets A and D, the score is high. A higher score (i.e. closer to 1) represents a better accuracy of the object detection model. [0043] The evaluation method as described above can be used for object detection by first identifying the appropriate model for the detection task before using that model for the actual data to be analysed. Figure 3 shows a flow chart 300 illustrating an object detection method according to an embodiment. [0044] At step 302, unlabeled actual data and a plurality of object detection models are received. The object detection models may be generated by a neural network, e.g. a convolutional neural network, based on labeled training data. The unlabeled actual data may be in the form of image data of an optical image of the object. For example, the optical image may be a scanned document or a photograph of a
  • 22. 11 document uploaded by a customer which contains textual information that the customer wishes to provide. [0045] At step 304, given labeled validation data, each of the object detection models is evaluated using the method as described above with reference to Figures 1 and 2a-2b, to identify the object detection model having the highest score. At step 306, the identified object detection model is used to detect an object in the unlabeled actual data. [0046] In an embodiment of the object detection method of Figure 3, the object detection models in step 302 may have associated hyperparameters, and the object detection model with the associated hyperparameters having the highest score is identified in step 306. The identified model and associated hyperparameters are then used to detect the object in the unlabeled actual data. [0047] Figure 4 shows a schematic diagram illustrating an object detector 400 according to an embodiment. The object detector includes a receiver module 402 coupled to an apparatus 404. The apparatus 404 includes an object detection module 406 and an evaluation module 408. Typically, the evaluation module 408 is provided with a set of labeled validation data 410. The receiver module 402 is configured to receive unlabeled actual data and a plurality of object detection models. The object detection models are generated by a neural network based on labeled training data. The apparatus 404 can evaluate each of the object detection models based on the validation data to identify the object detection model having the highest score. [0048] In an example, the object detection module 406 is configured to generate a predicted bounding box representing an object based on an object detection model. The object is positioned proximate to one or more adjacent objects. The evaluation module 408 is configured to determine an area of intersection between the predicted bounding box and a groundtruth bounding box of the object, and determine a modified area of union between the predicted bounding box and the groundtruth bounding box of the object. The modified area of union is a sum of a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights and an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects. The evaluation module 408 is further configured to determine a score equal to the area of intersection between the predicted bounding box and the
  • 23. 12 groundtruth bounding box of the object divided by the modified area of union, and evaluate a performance of the object detection model based on the score. The steps are performed for each of the object detection models to identify the object detection model having the highest score. [0049] The object detection module 406 is can then detect an object in the unlabeled actual data based on the identified object detection model. [0050] The methods, systems and devices as described when applied to text detection can improve the performance of model selection in textbox detection and increase the final accuracy of OCR. A detection model that provides a small intersection between the predicted textbox and the groundtruth textbox of the target text string outputs data that may be incomplete or truncated. Likewise, a detection model that provides some degree of intersection between the predicted textbox and groundtruth textboxes of adjacent text strings outputs data that may be noisy or inaccurate. According to the present embodiments, such detection models have low evaluation scores and will not be selected. Instead, a model that provides a large intersection between the predicted textbox and the groundtruth textbox of the target text string, and no intersection between the predicted textbox and groundtruth textboxes of adjacent text strings, has a high evaluation score and will be selected. When used to detect textboxes in a real/actual optical image, the selected model can output accurate data which can help to improve the accuracy of subsequent OCR steps. [0051] Figure 5 depicts an exemplary computing device 500, hereinafter interchangeably referred to as a computer system 500, where one or more such computing devices 500 may be used for the object detector 400 of Figure 4, or for implementing some or all steps of the methods of Figures 1 and 3. The following description of the computing device 500 is provided by way of example only and is not intended to be limiting. [0052] As shown in Figure 5, the example computing device 500 includes a processor 504 for executing software routines. Although a single processor is shown for the sake of clarity, the computing device 500 may also include a multi-processor system. The processor 504 is connected to a communication infrastructure 506 for communication with other components of the computing device 500. The communication infrastructure 506 may include, for example, a communications bus, cross-bar, or network.
  • 24. 13 [0053] The computing device 500 further includes a main memory 508, such as a random access memory (RAM), and a secondary memory 510. The secondary memory 510 may include, for example, a hard disk drive 512 and/or a removable storage drive 514, which may include a floppy disk drive, a magnetic tape drive, an optical disk drive, or the like. The removable storage drive 514 reads from and/or writes to a removable storage unit 518 in a well-known manner. The removable storage unit 518 may include a floppy disk, magnetic tape, optical disk, or the like, which is read by and written to by removable storage drive 514. As will be appreciated by persons skilled in the relevant art(s), the removable storage unit 518 includes a computer readable storage medium having stored therein computer executable program code instructions and/or data. [0054] In an alternative implementation, the secondary memory 510 may additionally or alternatively include other similar means for allowing computer programs or other instructions to be loaded into the computing device 500. Such means can include, for example, a removable storage unit 522 and an interface 520. Examples of a removable storage unit 522 and interface 520 include a program cartridge and cartridge interface (such as that found in video game console devices), a removable memory chip (such as an EPROM or PROM) and associated socket, and other removable storage units 522 and interfaces 520 which allow software and data to be transferred from the removable storage unit 522 to the computer system 500. [0055] The computing device 500 also includes at least one communication interface 524. The communication interface 524 allows software and data to be transferred between computing device 500 and external devices via a communication path 526. In various embodiments of the inventions, the communication interface 524 permits data to be transferred between the computing device 500 and a data communication network, such as a public data or private data communication network. The communication interface 524 may be used to exchange data between different computing devices 500 which such computing devices 500 form part an interconnected computer network. Examples of a communication interface 524 can include a modem, a network interface (such as an Ethernet card), a communication port, an antenna with associated circuitry and the like. The communication interface 524 may be wired or may be wireless. Software and data transferred via the communication interface 524 are in the form of signals which can be electronic, electromagnetic, optical or other signals capable of being received by communication interface 524. These signals are provided to the communication interface via the communication path 526.
  • 25. 14 [0056] As shown in Figure 5, the computing device 500 further includes a display interface 502 which performs operations for rendering images to an associated display 530 and an audio interface 532 for performing operations for playing audio content via associated speaker(s) 534. [0057] As used herein, the term "computer program product" may refer, in part, to removable storage unit 518, removable storage unit 522, a hard disk installed in hard disk drive 512, or a carrier wave carrying software over communication path 526 (wireless link or cable) to communication interface 524. Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computing device 500 for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, CD-ROM, DVD, Blu-rayTM Disc, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computing device 500. Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computing device 500 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like. [0058] The computer programs (also called computer program code) are stored in main memory 508 and/or secondary memory 510. Computer programs can also be received via the communication interface 524. Such computer programs, when executed, enable the computing device 500 to perform one or more features of embodiments discussed herein. In various embodiments, the computer programs, when executed, enable the processor 504 to perform features of the above-described embodiments. Accordingly, such computer programs represent controllers of the computer system 500. [0059] Software may be stored in a computer program product and loaded into the computing device 500 using the removable storage drive 514, the hard disk drive 512, or the interface 520. Alternatively, the computer program product may be downloaded to the computer system 500 over the communications path 526. The software, when
  • 26. 15 executed by the processor 504, causes the computing device 500 to perform functions of embodiments described herein. [0060] It is to be understood that the embodiment of Figure 5 is presented merely by way of example. Therefore, in some embodiments one or more features of the computing device 500 may be omitted. Also, in some embodiments, one or more features of the computing device 500 may be combined together. Additionally, in some embodiments, one or more features of the computing device 500 may be split into one or more component parts. [0061] It will be appreciated that the elements illustrated in Figure 5 function to provide means for performing the various functions and operations of the servers as described in the above embodiments. [0062] In an implementation, a server may be generally described as a physical device comprising at least one processor and at least one memory including computer program code. The at least one memory and the computer program code are configured to, with the at least one processor, cause the physical device to perform the requisite operations. [0063] It will be appreciated by a person skilled in the art that numerous variations and/or modifications may be made to the present invention as shown in the specific embodiments without departing from the spirit or scope of the invention as broadly described. For example, methods, systems and devices as described can be suitably adapted for different types of object detection, e.g. facial detection or vehicle detection. The present embodiments are, therefore, to be considered in all respects to be illustrative and not restrictive.
  • 27. 16 CLAIMS 1. A method for evaluating performance of an object detection model, the method comprising the steps of: generating a predicted bounding box representing an object based on the object detection model, wherein the object is positioned proximate to one or more adjacent objects; determining an area of intersection between the predicted bounding box and a groundtruth bounding box of the object; determining a modified area of union between the predicted bounding box and the groundtruth bounding box of the object, wherein determining the modified area of union comprises: determining a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights; and adding to the weighted area of union an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects; and determining a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union, wherein the score represents the performance of the object detection model. 2. The method as claimed in claim 1, wherein the object comprises a text string, and wherein the adjacent objects comprise adjacent text strings. 3. The method as claimed in claim 1 or 2, wherein the one or more weights comprise: a predetermined first weight associated with a portion of the predicted bounding box not intersecting with the groundtruth bounding box of the object, a predetermined second weight associated with a portion of the groundtruth bounding box of the object not intersecting with the predicted bounding box; and wherein the first weight is less than the second weight. 4. The method as claimed in claim 3, wherein determining the weighted area of union comprises assigning the first and second weights to the associated
  • 28. 17 portions and summing weighted areas of said portions with the area of intersection between the predicted bounding box and groundtruth bounding box of the object. 5. The method as claimed in any one of the preceding claims, wherein a score closer to 1 represents a higher accuracy of the object detection model. 6. An object detection method comprising: receiving unlabeled actual data and a plurality of object detection models, wherein the object detection models are generated by a neural network based on labeled training data; evaluating each of the object detection models with validation data using the method as claimed in any one of the preceding claims to identify the object detection model having the highest score; and detecting an object in the unlabeled actual data based on the identified object detection model. 7. The method as claimed in claim 6, wherein receiving the object detection models comprises receiving hyperparameters associated with the respective models, and wherein the object detection model together with the associated one or more hyperparameters having the highest score is identified. 8. The method as claimed in claim 6 or 7, wherein detecting the object in the unlabeled actual data comprises detecting a text string in image data of an optical image of the object. 9. A system for evaluating an object detection model, comprising: a processor; and a computer-readable memory coupled to the processor and having instructions stored thereon that are executable by the processor to: generate a predicted bounding box representing an object based on the object detection model, wherein the object is positioned proximate to one or more adjacent objects; determine an area of intersection between the predicted bounding box and a groundtruth bounding box of the object;
  • 29. 18 determine a modified area of union between the predicted bounding box and the groundtruth bounding box of the object, wherein the modified area of union comprises a sum of: a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights; and an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects; and determine a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union, wherein the score represents the performance of the object detection model. 10. The system as claimed in claim 9, wherein the object comprises a text string, and wherein the adjacent objects comprise adjacent text strings. 11. The system as claimed in claim 9 or 10, wherein the one or more weights comprise: a predetermined first weight associated with a portion of the predicted bounding box not intersecting with the groundtruth bounding box of the object, a predetermined second weight associated with a portion of the groundtruth bounding box of the object not intersecting with the predicted bounding box; and wherein the first weight is less than the second weight. 12. The system as claimed in claim 11, wherein the instructions are executable by the processor to assign the first and second weights to the associated portions and sum weighted areas of said portions with the area of intersection between the predicted bounding box and the groundtruth bounding box of the object to determine the weighted area of union. 13. The system as claimed in any one claims 9 to 12, wherein a score closer to 1 represents a higher accuracy of the object detection model. 14. An apparatus comprising:
  • 30. 19 an object detection module configured to generate a predicted bounding box representing an object based on an object detection model, wherein the object is positioned proximate to one or more adjacent objects; and an evaluation module configured to: determine an area of intersection between the predicted bounding box and a groundtruth bounding box of the object; determine a modified area of union between the predicted bounding box and the groundtruth bounding box of the object, wherein the modified are of union comprises a sum of: a weighted area of union between the predicted and groundtruth bounding boxes based on one or more weights; and an area of intersection between the predicted bounding box and at least one groundtruth bounding box of the one or more adjacent objects; determine a score equal to the area of intersection between the predicted bounding box and the groundtruth bounding box of the object divided by the modified area of union; and evaluate a performance of the object detection model based on the score. 15. An object detector comprising: a receiver module configured to receive unlabeled actual data and a plurality of object detection models, wherein the object detection models are generated by a neural network based on labeled training data; and the apparatus as claimed in claim 14 coupled to the receiver module and configured to evaluate each of the object detection models with validation data to identify the object detection model having the highest score; wherein the object detection module is further configured to detect an object in the unlabeled actual data based on the identified object detection model. 16. The object detector as claimed in claim 15, wherein the input module is further configured to receive hyperparameters associated with the respective object detection models, and wherein the object detection model together with the associated one or more hyperparameters having the highest score is identified.
  • 31. 20 17. The object detector as claimed in claim 15 or 16, wherein the object comprises a text string, and the unlabeled actual data comprises image data of an optical image of the object.