WO2017131744A1 - Radial histogram verification - Google Patents

Radial histogram verification Download PDF

Info

Publication number
WO2017131744A1
WO2017131744A1 PCT/US2016/015654 US2016015654W WO2017131744A1 WO 2017131744 A1 WO2017131744 A1 WO 2017131744A1 US 2016015654 W US2016015654 W US 2016015654W WO 2017131744 A1 WO2017131744 A1 WO 2017131744A1
Authority
WO
Grant status
Application
Patent type
Prior art keywords
line segment
circular area
digital image
radial histogram
checksum
Prior art date
Application number
PCT/US2016/015654
Other languages
French (fr)
Inventor
Joseph Miller
Original Assignee
Hewlett Packard Enterprise Development Lp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06KRECOGNITION OF DATA; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K9/00Methods or arrangements for reading or recognising printed or written characters or for recognising patterns, e.g. fingerprints
    • G06K9/36Image preprocessing, i.e. processing the image information without deciding about the identity of the image
    • G06K9/46Extraction of features or characteristics of the image
    • G06K9/4642Extraction of features or characteristics of the image by performing operations within image blocks or by using histograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06KRECOGNITION OF DATA; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K9/00Methods or arrangements for reading or recognising printed or written characters or for recognising patterns, e.g. fingerprints
    • G06K9/36Image preprocessing, i.e. processing the image information without deciding about the identity of the image
    • G06K9/54Combinations of preprocessing functions
    • G06K9/56Combinations of preprocessing functions using a local operator, i.e. means to operate on an elementary image point in terms of the immediate surroundings of this point

Abstract

A device to verify accuracy of a radial histogram for an input digital image via comparison of a first checksum associated with the radial histogram and a second checksum determined according to an orientation orthogonal to an orientation of the radial histogram.

Description

RADIAL HISTOGRAM VERIFICATION

Background

[0001] Automated image recognition may enhance numerous tasks, whether they occur in a commercial or consumer setting. In some instances, such image recognition aids human decision-making and/or facilitates further automated processes.

Brief Description of the Drawings

[0002] Figure 1 is a block diagram schematically representing a verification arrangement, according to one example of the present disclosure.

[0003] Figure 2 is a block diagram schematically representing a checksum verification arrangement, according to one example of the present disclosure.

[0004] Figure 3 is a block diagram schematically representing an orthogonal histogram, according to one example of the present disclosure.

[0005] Figure 4 is a diagram of a digital image processing environment including a processing tool, according to one example of the present disclosure.

[0006] Figure 5 is a block diagram schematically representing a verification device, according to one example of the present disclosure.

[0007] Figure 6 is a block diagram schematically representing a line segment determination engine, according to one example of the present disclosure.

[0008] Figure 7 is a diagram schematically representing a series of line segments overlaid relative to a circular area of a radial histogram measurement tool, according to one example of the present disclosure.

[0009] Figure 8 is a diagram schematically representing a plurality of sectors associated with a target radial histogram, according to one example of the present disclosure.

[0010] Figure 9 is a diagram schematically representing a plurality of elements of a target radial histogram, according to one example of the present disclosure. [0011] Figure 10 is a block diagram schematically representing a checksum generation engine, according to one example of the present disclosure.

[0012] Figure 1 1 is diagram of scanning a circular area of a radial histogram measurement tool over an object such as a tire tread, according to one example of the present disclosure.

[0013] Figure 12 is a block diagram schematically representing a line segment type selector, according to one example of the present disclosure.

[0014] Figure 13 is a diagram schematically representing sample line segments overlaid relative to a circular area associated with a radial histogram measurement tool, according to one example of the present disclosure.

[0015] Figure 14 is a diagram schematically representing an array of different shaped line segments, according to one example of the present disclosure.

[0016] Figure 15 is a block diagram schematically representing a control portion and a user interface, according to one example of the present disclosure.

[0017] Figure 16 is a flow diagram schematically representing a verification method, according to one example of the present disclosure.

[0018] Figure 17 is a flow diagram schematically representing a verification method, according to one example of the present disclosure.

Detailed Description

[ 0 0 1 9 ] In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific examples in which the disclosure may be practiced. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. The following detailed description, therefore, is not to be taken in a limiting sense. It is to be understood that features of the various examples described herein may be combined, in part or whole, with each other, unless specifically noted otherwise.

[ 0 0 2 0 ] At least some examples of the present disclosure are directed to verifying accuracy of a radial histogram, and further in some examples, verifying accuracy in matching operations involving the radial histogram. In some examples, such verification can play a role in accurate comparison of two images, such as an input digital image and a baseline digital image.

[0021] Automatically aligning an input digital image with a baseline digital image before comparing the two images can improve the accuracy of the comparison. For instance, the input digital image and the baseline digital image (to which the input digital image may be compared) may be images of substantially the same object or pattern in the world, but the images may be rotated, translated or out of scale with respect to each other. For example, a picture (e.g., the input digital image) taken of a tire tread pattern on a tire of a car may be rotated relative to the baseline digital image of the same tire tread pattern. Additionally, the picture may be translated relative to the baseline digital image of the same tire tread pattern. Finally, if the picture taken of the tire tread pattern on the tire of the car is taken either closer or farther away relative to the baseline digital image of the tire's tread, the scales of the two images may be different. These factors tend to impair successful pattern matching between digital images of the same object (e.g., a tire tread pattern).

[0022] Accordingly, in some examples a variety of pre-comparison alignment processes may sometimes be performed. For instance, in some examples alignment can be performed by rotating one digital image with respect to the other digital image, translating one digital image in 2-dimensions (e.g., in an x- axis direction and in a y-axis direction) with respect to the other digital image, or both rotating and translating one digital image with reference to the other digital image. In some examples, another digital image processing operation that may be performed before comparing two images is to adapt the scale of the two images so that the two images are compared according to a common scale. A variety of practical applications may involve this kind of pre-comparison alignment processing and scale processing.

[0023] A radial histogram is based on a digital image. Each pixel of a digital image is identified that has a pixel value that satisfies a pre-defined value threshold (e.g., has a value equal to or greater than 90 in a pixel value range from 0 to 255). Such pixels satisfying this condition are deemed on and may be referred to as on pixels. In some instances, on pixels also may be referred to as set pixels while in some instances, off pixels may be referred to as clear pixels. In some instances, such on pixels also may be referred to as set pixels. Meanwhile, in some instances, a clear pixel is one that is clear upon observation or deemed clear (or cleared) by inference when not set or not on. Such clear pixels also may sometimes be referred to as off pixels.

[0024] A circular area of the digital image is selected and analyzed to produce a radial histogram, for example using machine instructions executed by a processing resource to automatically select and analyze on pixels within the circular area of the digital image. The radial histogram comprises elements that correspond to sectors of the circular area. In some examples, the radial histograms have 360 sectors, each sector subtending 1 degree. In some examples, the radial histograms have fewer sectors, such as 12 sectors with each sector subtending 30 degrees. Of course, a radial histogram can be implemented via a number of sectors other than 360 or 30.

[0025] Every on pixel that is located in a sector is counted and the count is assigned as the value of the corresponding element of the radial histogram. Each pixel may be counted just once in at least some implementations, which may enhance the accuracy of the histogram and the process of scaling of digital images. In some examples, during the process of generating the radial histogram of a digital image, the maximum count of on pixels in any element, the minimum count of on pixels in any element, and the difference between the maximum count of on pixels and the minimum count of on pixels are determined. In some exam ples, the difference between the maximum count of on pixels and the minimum count of on pixels may sometimes be referred to as the range of the histogram. In some examples, the range may be used to scale between two different radial histograms being compared.

[0026] With at least these aspects of a radial histogram in mind, a comparison of two radial histograms can be used to determine if there is a match between the respective digital images from which each respective radial histogram was determined. However, in some instances, false positives can arise in relation to an orientation of the radial histograms, which can affect the accuracy of the radial histograms. In one aspect, inaccuracies in radial histograms can arise because they are summations of sampled data and the manner, such an orientation, in which the sampled data is collected impacts their accuracy.

[0027] Accordingly, in addition to implementing at least some of the various previously described alignment modalities, at least some examples of the present disclosure employ a verification arrangement to verify an accuracy of a radial histogram, and further in some examples to verify an accuracy in matching operations involving the radial histogram. Accordingly, in some examples, such verification can play a role in accurate comparison of two images, such as an input digital image and a baseline digital image.

[0028] In some examples, a verification arrangement includes comparing a first checksum associated with a target radial histogram for an input digital image with orthogonal reference information, such as a second checksum. In one aspect, the second checksum is associated with a second histogram (e.g. an orthogonal histogram) constructed via a measurement orientation orthogonal to the measurement orientation by which the target radial histogram was constructed. Upon a match between the respective first and second checksums, the verification arrangement can confirm accuracy of the target radial histogram and/or of matching operations involving the target radial histogram. In some examples in which it is determined that a match is not present between the respective first and second checksums, further observations can be made regarding the input digital image and/or baseline digital image involved in the matching operations.

[0029] In some examples, the verification arrangement may enhance accuracy because the second histogram (i.e. orthogonal histogram) reads the field of pixels from a different perspective (e.g. orthogonal) than the radial perspective of the target radial histogram but while still being orientated to the data which is the subject of the target radial histogram. In one aspect, because of its orthogonal perspective relative to the target radial histogram, the second checksum and second histogram (i.e. orthogonal histogram) provides a function independent of the target radial histogram. In some instances, the second histogram may sometimes be referred to as an orthogonal histogram.

[0030] In some instances, at least some of the histograms constructed according at least some examples of the present disclosure count each pixel just once, thereby increasing accuracy by maintaining a correlation between a number of pixels counted and a number of pixels actually available to be counted (i.e. the total pixel quantity). This arrangement avoids duplicative counting, which can arise in commercially available histogram techniques which do not limit the potential number of pixels counted relative by the number of pixels available for counting.

[0031] At least these examples, and other examples, are further described below in association with at least Figures 1 -17.

[0032] Figure 1 is a block diagram schematically representing a verification 10 arrangement, according to one example of the present disclosure. As shown in Figure 1 , in some examples the verification arrangement 10 provides for verifying accuracy regarding a target radial histogram via comparison with orthogonal reference information 14. As further described throughout at least some examples of the present disclosure, the orthogonal reference information 14 can take different forms, such as a checksum, histogram, and/or other modalities. In one aspect, data about pixels (i.e. pixel data) within an area of interest is captured via the target radial histogram with respect to an orientation. The orthogonal reference information verifies the accuracy of the captured pixel information via examining the same pixel information from a perspective that is orthogonal to the radial orientation by which the target radial histogram captures the pixel information. Stated differently, while the target radial histogram may view pixel data from a first perspective, the orthogonal reference information can view the same pixel data (at the same time) from a second perspective orthogonal (i.e. perpendicular) to the first perspective. In this way, the accuracy of the target radial histogram may be verified via orthogonal reference information 14 while using the same pixel information.

[0033] Figure 2 is a block diagram schematically representing a checksum verification arrangement 30, according to one example of the present disclosure. In some examples, checksum arrangement 30 comprises one example of the verification arrangement 10. As shown in Figure 2, in checksum arrangement 30, a first checksum 32 is compared to a second checksum 34. The first checksum 32 is based on a target radial histogram 12 and is referred to, in some instances, as a radial-based first checksum 32. Meanwhile, the second checksum 34 is based on an orthogonal reference and is one example of the orthogonal reference information 14 in the verification arrangement of Figure 1.

[0034] In some examples, first checksum 32 comprises a summation of "on" pixels within an area from which target radial histogram is determined. More particularly, to the extent that a radial histogram represents data about a circular area defined by a radial histogram measurement tool, the first checksum 32 comprises a summation of the number of on pixels within that circular area as represented by the target radial histogram.

[0035] In some examples, the orthogonal-based second checksum 34 comprises a summation of on pixels within the same area from which the target radial histogram is determined, except with the on pixels being identified or counted from a perspective orthogonal to the perspective by which the target radial histogram was determined.

[0036] Upon comparison, a match between the radial-based first checksum 32 and the orthogonal-based second checksum 34 may indicate accuracy of the target radial histogram 14. In some examples, the determination of a match is made according to a range. For instance, in some examples, the first checksum 32 is expressed as a range between a minimum value and a maximum value such that any second checksum 34 falling within that range may be considered a match. Moreover, in some examples, the second checksum 34 also can be expressed as a range between a minimum value and a maximum value, in which an overlap of the range associated with the first checksum 32 and the range associated with the second checksum 34 may considered a match.

[0037] Figure 3 is a block diagram schematically representing an orthogonal reference histogram 40, according to one example of the present disclosure. [0038] In some examples, the orthogonal reference information 14 may be expressed in terms of a histogram, such as orthogonal reference histogram 40 in which an on pixel count for a given area of interest (such as that from which target radial histogram 12 was determined) may be expressed in a plurality of elements of histogram 40 defined according to an orthogonal perspective. In one aspect, a summation of the on pixels within the plurality of elements of the orthogonal reference histogram 40 may equal the second checksum 34 in the arrangement 30 of Figure 2. In some examples, each element of the orthogonal reference histogram 40 corresponds to an on pixel count of each of several locations of a line segment overlaid over a circular area and along a diameter of the circular area, as further described later in association with at least Figure 8.

[0039] In some examples, prior to comparing the first checksum 32 to a second checksum, a number of elements (i.e. cardinality) of each set of on pixels for two different instances of the first checksum 32 are compared. In one aspect, this comparison can result in a determination of a degree of similarity for the volume (i.e. the total size of the compared data). Upon a sufficient degree of similarity, then comparison of the first checksum 32 with the second checksum 34 may be made to determine if the two images have a different shape or features at different locations.

[0040] In some examples, upon a determination of a match between a target radial histogram and a baseline radial histogram (to which the target radial histogram is compared) but a mismatch between the first checksum 32 and second checksum 34, it may be concluded that a modified shape is present.

[0041] To more fully appreciate a role of the verification arrangements 10, 30, Figure 4 provides a diagram schematically representing a digital image processing environment 50 in which a target radial histogram is produced and may be employed for digital image processing, according to one example of the present disclosure. In some examples, at least some of the components within environment 50 may comprise a system 51.

[0042] As shown in environment 50 of Figure 4, an imager 52 such as a digital camera obtains an input digital image 54 of an object 56, such as a portion of a tire 58. However, the object 56 is not limited to a tire, and can be any physical object. In some examples, the object 56 is three-dimensional. In some examples, the object 56 is two-dimensional, such as a media bearing a graphic representation (e.g. logo), textual representation, and/or image.

[0043] As further shown in Figure 4, the input digital image 54 may be communicated directly or via network 60 to a database 65 external to imager 52 and/or to a processing tool 70. In some examples, the network 60 may comprise a public network, a private network, or a combination of networks. In some examples, network 60 includes or is part of the internet, World Wide Web, peer-to-peer arrangements, related communication channels, and/or related communication protocols, etc. The i m age r 52 may be linked to the network through other nodes (not shown). For example, the imager 52 may download the input digital image 54 to a desktop computer or a laptop computer, and the computer may transmit the input digital image 54 via wired and/or wireless links to the network 60 and thence to the processing tool 70. In some examples, imager 52 may be embedded in a mobile communication device such as smart phone, tablet, phablet, etc.

[0044] In some examples, in order to receive input digital image 52 and/or to perform other operations, the processing tool 70 may be incorporated into or in communication with a control portion 800, as further described later in association with at least Figure 16. In particular, at least some aspects of processing tool 70 may be embodied as or form part of manager 805 in control portion 800. With further reference to Figure 4, the database 65 may store digital images, such as the input digital image 54, as well as, a baseline digital image 80 to which the input digital image 54 may be compared to determine if a match exists. In some examples, the database 65 also stores radial histograms 82, 84 associated with the baseline digital image 80, among other image processing information. In some examples, the database 65 also may store target radial histogram 12 once it is received by processing tool 70 or is generated by processing tool 70 or via other resources.

[0045] In some examples, the processing tool 70 provides for image processing operations, such as performing matching operations via a comparison of the input digital image 54 with the baseline digital image 80. In some examples, such matching operations are implemented via a comparison of a target radial histogram 12 constructed from the input digital image 54 with an initial radial histogram 82 constructed from the baseline digital image 80.

[0046] In some examples, such matching operations further include the processing tool 70 performing verification regarding an accuracy of the target radial histogram 12 and/or matching operations involving the target radial histogram 12. In one aspect, such matching operations via processing tool 70 include the use of orthogonal reference information 14 (Fig. 1 ) to perform skew detection, among other operations.

[0047] However, in some examples, prior to performing accuracy verification or matching operations, the processing tool 70 may perform alignment of target radial histogram 12 relative to the initial radial histogram 82. Automatically aligning an input digital image 54 with a baseline digital image 80 before comparing the two images can improve the accuracy of the comparison. Alignment can be performed by rotating one digital image with respect to the other digital image, translating one digital image in two dimensions (e.g., in an x- axis direction and in a y-axis direction) with respect to the other digital image, or both rotating and translating one digital image with reference to the other digital image. Another digital image processing operation that may be performed before comparing two images is to adapt the scale of the two images so that the two images are compared according to a common scale. A variety of practical applications may involve this kind of pre-comparison alignment processing and scale processing.

[0048] Figure 5 is a block diagram schematically representing a verification device 100, according to one example of the present disclosure. In some examples, verification device 100 provides one example implementation of at least a part of processing tool 70 in Figure 4. Accordingly, verification device 100 may be used to implement one of the arrangements 10, 30 as previously described in association with Figs. 1 -2.

[0049] As shown in Figure 5, in some examples verification device 100 includes a receiver engine 102, a line segment determination engine 104, a checksum generation engine 106 and a comparison engine 108. In some examples, the receiver engine 102 receives a first radial histogram 12 (Fig. 1 ) and a first checksum 32 (Fig. 2) of set pixels for a circular area from which the first radial histogram 12 was determined. The first checksum 32 is determined by a summation of values of the elements of the target radial histogram 12, and may be generated via the resource which generates the target radial histogram. In some examples, this resource may be the processing tool 70 in Figure 4.

[0050] In some examples, the line segment determination engine 104 determines a line segment to extend across a circular area associated with the first radial histogram 12, with a midpoint of the line segment to intersect with a diameter of the circular area and end points of the line segment to be located external to the circular area. At least some of these aspects of line segment determination engine 104 are further described in association with at least Figs. 6-10 and/or Figs. 12-14.

[0051] In some examples, the checksum generation engine 106 generates the second checksum 34 and/or orthogonal reference histogram 40. In some examples, the checksum generation engine 106 overlies the line segment consecutively in different locations along a length of the diameter, and at each respective location, count on pixels within the circular area along the respective line segment until all on pixels have been counted for all locations of the line segment to generate a second checksum. In some examples, each on pixel is counted just one time for the circular area. At least some of these aspects of checksum generation engine 106 are further described in association with at least Figs. 6-10 and/or Figs. 12-14.

[0052] In some examples, the comparison engine 108 can determine whether a match exists between the respective first and second checksums 32, 34 (Fig. 2). As previously noted, in some examples determination of a match may be made according to range of values (e.g. minimum to maximum) for each respective first and second checksum 32, 34. In some examples, a match determination can be made via comparison engine 108 by comparing information regarding target radial histogram 12 other than first checksum 32 and information regarding an orthogonal histogram 40 other than second checksum 34 (Fig. 2). [0053] By comparing the first checksum 32 to the second checksum 34, which expresses at least one attribute of orthogonal reference information 14, a verification device (e.g. 100 in Fig. 4) can determine the accuracy of the target radial histogram and therefore the accuracy of a match of the target radial histogram relative to a baseline radial histogram.

[0054] In some examples, device 100 may include at least engines 102, 104, 106, and/or 108, which may be any combination of hardware and programming to implement the functionalities of the engines described herein. In examples described herein, such combinations of hardware and programming may be implemented in a number of different ways. For example, the programming for the engines may be processor executable instructions stored on at least one non-transitory machine-readable storage medium and the hardware for the engines may include at least one processing resource to execute those instructions. In some examples, the hardware may also include other electronic circuitry to at least partially implement at least one engine of device 100. In some examples, the at least one machine-readable storage medium may store instructions that, when executed by the at least one processing resource, at least partially implement some or all engines of device 100. In such examples, device 100 may include the at least one machine-readable storage medium storing the instructions and the at least one processing resource to execute the instructions. In some examples, the functionalities of any engines of device 100 may be at least partially implemented in the form of electronic circuitry.

[0055] In some examples, the operation and/or functionality of engines 102, 104, 106 and/or 108 are implemented via and/or controllable via at least some aspects of control portion 800 (including manager 805) as later described in association with at least Figure 15.

[0056] Figure 6 is a block diagram schematically representing a line segment determination engine 200, according to one example of the present disclosure. In some examples, line segment determination engine 200 comprises one example of the line segment determination engine 104, and as such comprises at least some of substantially the same features and attributes as line segment determination engine 104 in Figure 4. [0057] As shown in Figure 6, in some examples line segment determination engine 200 comprises a line segment function 210 and a radial histogram measurement tool function 220. In some examples, the line segment function 210 comprises a midpoint parameter 212 and endpoints parameter 214. In some examples, the radial histogram measurement tool function 220 comprises a circular area parameter 222 and a diameter parameter 224.

[0058] At least these features and attributes of line segment determination engine 200 will be further described in association with at least Figure 7, which is a diagram 250 schematically representing a line segment 270 overlaid in series relative to a circular area 262 associated with a radial histogram measurement tool 267, according to one example of the present disclosure

[0059] As shown by the diagram 250 of Figure 7, radial histogram measurement tool 267 includes a circular area 262 circumscribed by a circle 260 having a diameter 266 and outer edge 263, with circle 260 defined according to radius 265 having an origin 264. The circular area 262 and diameter 266 are selectable via circular area parameter 222 and diameter parameter 224 of radial histogram measurement tool function 220 (Fig. 6).

[0060] Via function 220 in Figure 6, the radius 265 and circular area 262 define at least part of the radial histogram measurement tool 267, which builds a target radial histogram (12 in Fig. 1 ), such as target radial histogram 31 having a plurality 315 of elements 317 (shown in Fig. 9) with each element 317 corresponding to a value of counted pixels for a corresponding sector 312 overlying circular area 262, as further shown in Figure 8. As noted in more detail later, each sector 312 (marked 1 -12) has the same size and shape, is defined by radius 265 (Fig. 7) and a selected degree of sweep. As shown in the example of Figure 8, each sector 312 subtends 30 degrees, yielding 12 sectors 312, and consequently 12 elements 317 of target radial histogram 12 shown in Fig. 9. Each element 317 represents a quantity or value of pixels in each respective sector 312. It will be further understood that the value of elements in Figure 9 is merely for illustrative purposes and may not necessarily correspond to the features of an object shown in Figure 8. [0061] With this arrangement of a target radial histogram 12 in mind, as further shown in Figure 7 in some examples orthogonal reference information 14 (Fig. 1 ) is determined by overlaying line segment 270 in different locations 270A- 270n (where n represents a nth line segment) across the circular area 262 from one side 261 A to the opposite second side 261 B, as represented by directional arrow A. As further shown in Figure 7, in each instance in which line segment 270 is overlaid on circular area 262, a midpoint 272 of the line segment 270 intersects diameter 266 and endpoints 273A, 273B for the line segment 270 are located external to circular area 262. While not shown in Figure 7, in some examples the endpoints of a line segment may coincide with outer edge 263 of circle 260.

[0062] Accordingly, the scheme schematically represented in at least Figures 6- 9 schematically represents at least some aspects by which a processing tool 70 or verification device 100 may gather orthogonal reference information 14 for use in verifying the accuracy of target radial histogram 12. Accordingly, further aspects of verification device 100 are described below.

[0063] Figure 10 is a block diagram schematically representing a checksum generation engine 350, according to one example of the present disclosure. In some examples, checksum generation engine 350 comprises one example of the checksum generation engine 106 of verification device 100 in Figure 5. In some examples, checksum generation engine 350 comprises at least some of substantially the same features and attributes as checksum generation engine 106 (Fig. 5).

[0064] As shown in Figure 10, in some examples checksum generation engine 350 comprises an overlay function 352, a location function 354, and/or a count function 360.

[0065] In some examples, the overlay function 352 directs the overlaying of a line segment 270 in a series of locations across circular area 262, with a midpoint 272 of line segment 270 intersecting with diameter 266 of circular area 262, as previously illustrated in association with at least Figure 7.

[0066] In some examples, the location function 354 comprises a spacing parameter 356 and a number parameter 358. The location function 354 can determine locations at which the line segment is overlaid relative the diameter of the circular area 262. In a complementary manner, via spacing parameter 356, the spacing between adjacent locations (e.g. 270A-270n) of line segment 270 can be selected and via number parameter 358, the number of locations (e.g. 270A-270n) can be selected. In some examples, the number can be selected to entirely cover the circular area 252 while spacing is selected to provide uniform spacing among adjacent locations (e.g. 270A-270n) of line segment 270.

[0067] As shown in Figure 10, in some examples the count element 360 of checksum generation engine 350 comprises a per-line segment parameter 362 and a total parameter 364. Via per line segment parameter 362, the count function 360 tracks the number of on pixels (present within circular area 262) which are counted along the line segment at each respective location 270A- 270n. Via total parameter 364, the count function 360 determines a summation of all on pixels counted for all locations (270A-270n) at which line segment 270 has been overlaid.

[0068] In some examples, the total count determined via the total parameter 364 corresponds to the second checksum (e.g. 34 in Fig. 2) associated with an orthogonal reference (information). In some examples, the total count can be expressed as a range including a minimum value and a maximum value.

[0069] Figure 1 1 is a diagram 380 schematically representing some aspects of digital image processing of a digital image 381 from which a target radial histogram may be determined, according to one example of the present disclosure. As shown in Figure 1 1 , a circular area 262 is logically positioned over the extent of the larger input digital image 381 , and the digital image in the area covered by the circular area 262 is processed according to a digital image processing operation to create a radial histogram, such as target radial histogram (12 in Fig. 1 ; 315 in Fig. 9). In one aspect, all the pixels of the input digital image 381 that are determined to be located within the circular area 262 are processed or analyzed according to a digital image processing operation to create the target radial histogram (e.g. 12 in Fig. 1 ; 315 in Fig. 9). The circular area 262 may be defined by a pixel that serves as an origin or center of the circular area 262 and by a maximum radius. In some examples, the maximum radius may be designated in numbers of pixels.

[0070] In some examples, the input digital image 381 may be processed by an abstract shape defined to cover a portion of the digital image with that shape being different than circular area 262. For example, a circular structuring element (SE) may be defined by a center, a maximum radius (PRmax), and a minimum radius (PRmin).

[0071] In some examples, the center of the circular area 262 (and therefore origin of radius) can be logically positioned over every pixel of the input digital image 381 sequentially and a target radial histogram generated for each positioning. In some examples, some optimizations may be employed. For instance, the generation of radial histograms may be done locating the center circular area 262 so the whole circular area is within the input digital image 381 , for example at least a radius of the circle inside a perimeter of the input digital image 381. In some examples, the center of the circular area 262 may be offset each sequential time by two pixels, by three pixels, by four pixels, or some other number of pixels, whereby the number of radial histograms generated may be reduced. In some instances, this process can be referred to as scanning, for example scanning in an x-axis 384 as represented by series 385 of circular areas 262 and scanning in a y-axis 386 as represented by series 387 of circular areas 262.

[0072] Figure 12 is a block diagram schematically representing a line segment type selector 600, according to one example of the present disclosure. In some examples, line segment type selector 600 enables selection of a type of line segment, such as line segment 270 (Fig. 7) which is overlaid relative to the circular area 262. As shown in Figure 12, line segment type selector 600 comprises a straight function 602, a single curve function 604, and a multiple curved function 610. In some examples, the straight function 602 determines that line segment 270 (Fig. 7) would be a straight line instead of a curved line shown in Fig. 7. One example of a straight line segment is shown as 672 in Figure 14. While a straight line segment can be used for counting on pixels on a circular area, a straight line segment may be used for counting on pixels on a non-circular area. In some instances, the non-circular area can be a rectangle.

[0073] In some examples, the single curve function 604 determines that a line segment 270 will define a single curved shape, such as that shown in Figure 7. Per radius parameter 608, a radius of curvature of the line segment can be selected provided that the radius of curvature is not smaller than the radius 265 which defines the circular area 262. As shown in Figure 13, if a line segment 657 were selected having a radius of curvature smaller than the radius 265, then the endpoints 658A, 658B of that line segment 657 would become positioned within the circular area 262, and thereby would no longer be operative as external observation points to provide as orthogonal reference information 14. Moreover, with endpoints 658A, 658B within circular area 262, a length of the line segment 657 would not fully cover or extend over a portion of the circular area 262 of interest, resulting in poor coverage for counting.

[0074] On the other hand, as further shown in Figure 13, the selection of a line segment 652 having a radius of curvature at least as large as the radius 265 would have its endpoints 654A, 654B at least on the outer edge 263 of circular area 262, and would be capable of building orthogonal reference information 14 in the manner described in association with at least Figures 6-1 1 .

[0075] Figure 14 is a diagram 665 schematically representing an array 670 of differently shaped line segments, according to one example of the present disclosure. Diagram 665 illustrates a continuum of eligible single curve line segments, each having a radius of curvature no smaller than radius 265 of circular area 262. However, the continuum does includes one straight line segment 672 interposed between the curved line segments. Some line segments 652 exhibit concavity facing in one orientation while some line segments 674 exhibit a concavity facing in an opposite orientation. In some examples, any one of the line segments in array 670 can be selected by line segment type selector 600 in Figure 12.

[0076] In some examples, orthogonal measurements may be considered the most accurate when the line segment (e.g. 270) corresponds to or represents the curvature shape of at least one feature of the item which the subject of the target radial histogram. However, it will be understood that because the at least one feature may not define the whole item, the selected line segment (e.g. 270) does not necessarily correspond to all the features of the whole item. Nevertheless, a line segment can be selected with a curvature that corresponds to the shape and size of at least one feature of greatest interest, and thereby may enhance the accuracy of radial histogram matching according to at least some examples of the present disclosure.

[0077] With further reference to Figure 13, the multiple curve function 610 determines that the line segment (e.g. 270 in Fig. 8) will have a number of multiple curved portions per number parameter 612, and with each curved portion having a different radius of curvature, per radii parameter 614. In one aspect, such multiply curved line segments may enhance effectiveness of an orthogonal histogram 40 (and therefore second checksum 34) because the multiply curved line segment may better approximate underlying shape of a feature or multiple features within image being analyzed.

[0078] In some examples, line segment type selector 600 can make a selection or recommend selection of a type of line segment according to which type of line segment produces a highest value for the summation of the elements of an orthogonal histogram 40, and hence the highest value for second checksum 34.

[0079] Figure 15 is a block diagram schematically representing a control portion 800, according to one example of the present disclosure. In some examples, control portion 800 includes a controller 802 and a memory 804. In some examples, control portion 800 provides one example implementation of at least some aspects of processing tool 70 in Figure 4 and/or verification device 100 in Figure 5.

[0080] Controller 802 of control portion 800 can comprise at least one processor 803 and associated memories that are in communication with memory 805 to generate control signals, and/or provide storage, to direct operation of at least some components of the tools, devices, systems, components, engines, functions, and/or parameters described throughout the present disclosure. In some examples, these generated control signals include, but are not limited to, employing processing tool 70, verification device 100 and/or manager 805 to perform skew detection 806, which may include or support determination of orthogonal reference information, verifying target radial histogram accuracy, and associated elements and activities described in at least some examples of the present disclosure in the manner previously described in association with at least Figures 1 -14.

[0081] In response to or based upon commands received via a user interface 810 and/or via machine readable instructions, controller 802 generates control signals to implement at least timing and sequence of the operation of the various aspects of in a verification method and/or verification device in accordance with at least some examples of the present disclosure. In some examples, controller 802 is embodied in a general purpose computer while in other examples, controller 802 is embodied in an imager 52 (Fig. 4) described herein generally, or incorporated into or associated with at least some of the components described throughout the present disclosure, such as but not limited to processing tool 70 (Figure 4) or verification device 100 (Figure 5). In some examples, controller 802 comprises a server computer.

[0082] For purposes of this application, in reference to the controller 802, the term processor shall mean a presently developed or future developed processor (or processing resource) that executes sequences of machine readable instructions contained in a memory. In some examples, execution of the sequences of machine readable instructions, such as those provided via memory 804 associable with control portion 800 to cause the processor to perform actions, such as operating controller 802 to implement at least determination of orthogonal reference information and/or other related functions, as generally described in (or consistent with) at least some examples of the present disclosure. The machine readable instructions may be loaded in a random access memory (RAM) for execution by the processor from their stored location in a read only memory (ROM), a mass storage device, or some other persistent storage, as represented by memory 804. In some examples, memory 804 comprises a volatile memory. In some examples, memory 804 comprises a non-volatile memory. In some examples, memory 804 comprises a computer readable tangible medium providing non-transitory storage of the machine readable instructions executable by a process of controller 802. In other examples, hard wired circuitry may be used in place of or in combination with machine readable instructions to implement the functions described. For example, controller 802 may be embodied as part of at least one application- specific integrated circuit (ASIC). In at least some examples, the controller 802 is not limited to any specific combination of hardware circuitry and machine readable instructions, nor limited to any particular source for the machine readable instructions executed by the controller 802.

[0083] In some examples, user interface 810 provides for the simultaneous display, activation, and/or operation of at least some of the various tools, devices, methods, components, engines, functions, parameters, features, and attributes of processing tool 70, verification device 100, manager 805, and/or control portion 800 and/or of at least the various aspects of determining orthogonal reference information regarding a target radial histogram and/or related functions, as described throughout the present disclosure. In some examples, at least some portions or aspects of the user interface 810 are provided via a graphical user interface (GUI). As shown in Figure 15, in some examples user interface 810 includes an input 812 and a display 814, which may or may not be combined in a single element, such as a touch screen display. In some examples, user interface 810 is provided via a desktop computer, a terminal associated with a server, a laptop computer, a tablet, phablet, mobile phone, smart watch, and the like.

[0084] Figure 16 is a flow diagram 900 schematically representing a method 901 , according to an example of the present disclosure. In some examples, method 901 is performed via at least some of the tools, devices, systems, engines, functions, parameters, components, elements, etc. as previously described in association with at least Figures 1 -15. In some examples, method 901 is performed via at least some of the tools, devices, systems, engines, functions, parameters, components, elements, etc. other than previously described in association with at least Figures 1 -15.

[0085] In some examples, method 901 may be employed to verify an accuracy of a target radial histogram and/or matching operations involving the target radial histogram. In one aspect, method 901 may enhance verifying an orientation of the target radial histogram.

[0086] As shown at 902 in Figure 16, in some examples method 901 includes receiving a target radial histogram for an input digital image and an associated first checksum of on pixels for a circular area from which the target radial histogram was determined. As shown at 904, a line segment is determined to extend across the circular area, with a midpoint of the line segment to intersect with a diameter of the circular area and endpoints of the line segment to be located external to the circular area.

[0087] As shown at 906, in some examples method 901 includes iteratively overlaying the line segment in a series of locations along a length of the diameter, and at each respective location, counting on pixels within the circular area along the line segment.

[0088] As shown at 908 in Figure 16, in some examples method 901 includes determining a second checksum, which is a summation of all the counted on pixels. In some examples, this determination is implemented as a summation of the values of the respective of elements of a histogram constructed via the on pixels counted for the different locations of the line segment.

[0089] As shown at 910 in Figure 16, in some examples, method 901 includes comparing the first checksum and the second checksum to verify accuracy of the target radial histogram.

[0090] Figure 17 is a flow diagram 950 schematically representing a method 951 , according to an example of the present disclosure. In some examples, method 951 is performed via at least some of the tools, devices, systems, engines, functions, parameters, components, elements, etc. as previously described in association with at least Figures 1 -15. In some examples, method 951 is performed via at least some of the tools, devices, systems, engines, functions, parameters, components, elements, etc. other than previously described in association with at least Figures 1 -15.

[0091] In some examples, method 951 may be employed to verify an accuracy of shape matching for a feature of an object (within an input digital image), which is the subject of a target radial histogram. [0092] In some examples, at 952 method 951 includes receiving a target radial histogram for an input digital image and an associated first checksum of on pixels for a circular area from which the target radial histogram was determined. At 954, method 951 includes comparing the target radial histogram to a baseline radial histogram stored in a database to verify volume similarity upon a volume associated with the target radial histogram falling within a range of volume associated with the stored baseline radial histogram. At 956, method 951 includes upon the comparison identifying a volume similarity, generating a second checksum according to an orthogonal histogram having a measurement orientation orthogonal to a measurement orientation of the target radial histogram. In some examples, this second checksum is generated in a manner similar to method 901 at 904, 906, and 908 in Figure 18. At 958 in Figure 19, method 951 includes comparing the first checksum to the second checksum to verify an accuracy of the shape of the feature(s) which is the subject of the target radial histogram.

[0093] At least some examples of the present disclosure provide for verifying an accuracy of a radial histogram of a digital image. Such verification may enhance accuracy of image processing operations, including matching the radial histogram with other histograms, such as a baseline radial histogram for a baseline digital image.

[0094] Although specific examples have been illustrated and described herein, a variety of alternate and/or equivalent implementations may be substituted for the specific examples shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the specific examples discussed herein.

Claims

1 . A device including a processing resource to execute machine-readable instructions, stored in a non-transitory medium, to:
receive a radial histogram for a digital image and an associated first checksum;
generate an orthogonal histogram having a measurement orientation orthogonal to a measurement orientation of the radial histogram and having elements based on a line segment overlaid in different locations along a diameter of a circular area from which the first radial histogram was determined, and at each respective location, counting on pixels within the circular area along the line segment to yield the respective element of the orthogonal histogram; and
determine a second checksum via a summation of the elements; and compare the second checksum with the first checksum to verify accuracy of the radial histogram.
2. The device of claim 1 , the instructions to:
determine the line segment to extend across the circular area associated with the radial histogram, with a midpoint of the line segment to intersect with a diameter of the circular area at each different locations and with end points of the line segment to be located external to circular area.
3. The device of claim 1 , the instructions to determine the line segment to have an arcuate shape having a single radius of curvature not less than a radius of curvature of the circular area.
4. The device of claim 1 , the instructions to determine the line segment to have an arcuate shape having more than one radius of curvature.
5. The device of claim 1 , the instructions to:
select a type of the line segment from a plurality of different types of line segments including at least one of:
a straight line segment;
a curved line segment having a single radius of curvature; and a line segment including different curved portions with each having a different radius of curvature,
wherein the radius of curvature of the respective curved portions and of the curved line segment is no smaller than a radius of curvature of the circular area.
6. The device of claim 5, the instructions to make the selection according to which type of line segment produces a highest value for the summation of the elements.
7. The device of claim 1 , wherein the radial histogram comprises a first radial histogram and the digital image comprises an input digital image, the instructions to:
perform, upon a positive verification, a comparison between the first radial histogram for the input digital image and a baseline radial histogram of a baseline digital image to determine if the input digital image matches the baseline digital image.
8. The device of claim 7 and further comprising a system including an imager to obtain the digital image and to communicate the digital image to the device.
9. A server computer comprising:
a processor to execute machine readable instructions stored in a non- transitory medium, the instructions to implement an image processing tool including: a receiver engine to receive a radial histogram for an input digital image and a first checksum of set pixels for a circular area from which the radial histogram was determined;
a determination engine to determine a line segment to extend across a circular area associated with the radial histogram, with a midpoint of the line segment to intersect with a diameter of the circular area and end points of the line segment to be located external to the circular area;
a checksum generation engine to overlay the line segment consecutively in different locations along a length of the diameter, and at each respective location, count set pixels within the circular area along the respective line segment until all set pixels have been counted for all the locations to generate a second checksum, wherein each set pixel is counted one time for the circular area; and
a comparison engine to determine whether a match exists between the respective first and second checksums to verify accuracy of the radial histogram.
10. The device of claim 9, wherein the determination engine is to determine the line segment via one end point of the line segment defining an observation point orthogonal to the diameter of the circular area.
1 1 . The device of claim 10, wherein the determination engine comprises: a line segment type selector to select a type of the line segment from a plurality of different types of line segments including at least one of:
a straight line segment;
a curved line segment having a single radius of curvature; and a line segment including different curved portions with each having a different radius of curvature,
wherein the radius of curvature of the respective curved portions and of the curved line segment is no smaller than a radius of curvature of the circular area.
12. The server computer of claim 9 comprising:
an imager to obtain the input digital image and in communication with the server computer to transmit the input digital image to the image processing tool.
13. A method comprising:
receiving a target radial histogram for an input digital image and an associated first checksum of on pixels for a circular area from which the target radial histogram was determined;
determining a line segment to extend across the circular area, with a midpoint of the line segment to intersect with a diameter of the circular area and end points of the line segment to be located external to circular area;
iteratively overlaying the line segment in a series of locations along a length of the diameter, and at each respective location, count on pixels within the circular area along the line segment;
determining a second checksum including all the counted on pixels; and
comparing the first checksum and the second checksum to verify accuracy of the target radial histogram.
14. The method of claim 13, comprising:
determining the line segment via one end point of the line segment defining an observation point orthogonal to the diameter of the circular area.
15. The method of claim 14, comprising:
receiving an initial radial histogram for a baseline digital image; and performing, upon a positive verification of the accuracy of the target radial histogram, a comparison between the target radial histogram and the initial radial histogram to determine if the input digital image matches the baseline digital image.
PCT/US2016/015654 2016-01-29 2016-01-29 Radial histogram verification WO2017131744A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2016/015654 WO2017131744A1 (en) 2016-01-29 2016-01-29 Radial histogram verification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2016/015654 WO2017131744A1 (en) 2016-01-29 2016-01-29 Radial histogram verification

Publications (1)

Publication Number Publication Date
WO2017131744A1 true true WO2017131744A1 (en) 2017-08-03

Family

ID=59398529

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2016/015654 WO2017131744A1 (en) 2016-01-29 2016-01-29 Radial histogram verification

Country Status (1)

Country Link
WO (1) WO2017131744A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110286627A1 (en) * 2009-11-19 2011-11-24 Stanford University Method and apparatus for tracking and recognition with rotation invariant feature descriptors
US8447107B1 (en) * 2010-09-30 2013-05-21 A9.Com, Inc. Processing and comparing images
US8682071B1 (en) * 2010-09-30 2014-03-25 A9.Com, Inc. Contour detection and image classification
US8744196B2 (en) * 2010-11-26 2014-06-03 Hewlett-Packard Development Company, L.P. Automatic recognition of images
WO2015171815A1 (en) * 2014-05-06 2015-11-12 Nant Holdings Ip, Llc Image-based feature detection using edge vectors

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110286627A1 (en) * 2009-11-19 2011-11-24 Stanford University Method and apparatus for tracking and recognition with rotation invariant feature descriptors
US8447107B1 (en) * 2010-09-30 2013-05-21 A9.Com, Inc. Processing and comparing images
US8682071B1 (en) * 2010-09-30 2014-03-25 A9.Com, Inc. Contour detection and image classification
US8744196B2 (en) * 2010-11-26 2014-06-03 Hewlett-Packard Development Company, L.P. Automatic recognition of images
WO2015171815A1 (en) * 2014-05-06 2015-11-12 Nant Holdings Ip, Llc Image-based feature detection using edge vectors

Similar Documents

Publication Publication Date Title
US8311296B2 (en) Voting in mammography processing
Aldoma et al. A global hypotheses verification method for 3d object recognition
Dellinger et al. SAR-SIFT: a SIFT-like algorithm for SAR images
Tombari et al. A combined texture-shape descriptor for enhanced 3D feature matching
US20120163672A1 (en) Depth Estimate Determination, Systems and Methods
US20110142299A1 (en) Recognition of faces using prior behavior
Dominio et al. Combining multiple depth-based descriptors for hand gesture recognition
Saukh et al. On boundary recognition without location information in wireless sensor networks
Guo et al. An improved Hough transform voting scheme utilizing surround suppression
Margolin et al. How to evaluate foreground maps?
US20100194679A1 (en) Gesture recognition system and method thereof
Gudmundsson et al. Football analysis using spatio-temporal tools
Kakar et al. Exposing digital image forgeries by detecting discrepancies in motion blur
Choi et al. Attentional Correlation Filter Network for Adaptive Visual Tracking.
Le Meur et al. Saccadic model of eye movements for free-viewing condition
Krogslund et al. Fuzzy sets on shaky ground: parameter sensitivity and confirmation bias in fsQCA
Fornaciari et al. A fast and effective ellipse detector for embedded vision applications
US9418319B2 (en) Object detection using cascaded convolutional neural networks
Song et al. Remote sensing image registration approach based on a retrofitted SIFT algorithm and Lissajous-curve trajectories
US9361507B1 (en) Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices
CN102945378A (en) Method for detecting potential target regions of remote sensing image on basis of monitoring method
Tanner et al. Overhead imagery research data set—An annotated data library & tools to aid in the development of computer vision algorithms
US20140072208A1 (en) System and method for automated object detection in an image
Kondra et al. Multi-scale kernel operators for reflection and rotation symmetry: further achievements
Zhang et al. Adaptive local movement modeling for robust object tracking

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16888473

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase in:

Ref country code: DE