Methods and systems for detecting one or more infrared (IR) security marks embedded in a document include receiving a document including one or more regions of interest (ROIs), wherein the ROIs correspond to pre-defined locations in the document. Thereafter, the ROIs are processed to generate a plurality of arrays of counters corresponding to each ROI. Once generated, the plurality of arrays of counters are analyzed to identify a plurality of transition points corresponding to each ROI including the IR security mark. Thereafter, the transition points are used to calculated the size of the one or more IR security marks. Then, the calculated size is compared with the one or more IR security marks with a pre-defined size and, based on the comparison, the one or more IR security mark embedded in the document are detected for further analysis.
Legal claims defining the scope of protection, as filed with the USPTO.
. A method for detecting a mark embedded in a document, the method comprising:
. The method of, wherein the mark comprises:
. The method of, wherein the mark comprises:
. The method of, wherein the ROI location comprises:
. The method of, further comprising:
. The method of, wherein the ROI comprises:
. The method of, wherein the data collection region comprises:
. The method of, wherein generating the array of counters comprises:
. The method of, wherein identifying, based on the array of counters, the transition point comprises:
. The method of, further comprising:
. The method of, further comprising:
. The method of, further comprising:
. The method of, further comprising:
. A computer system for detecting a mark embedded in a document, the computer system comprising:
. The computer system of, wherein the mark comprises:
. The computer system of, wherein the mark comprises:
. The computer system of, wherein the ROI location comprises:
. The computer system of, wherein the operations further comprise:
. The system of, wherein the operations further comprise:
. A computer program product for detecting a mark embedded in a document, the computer program product comprising a computer-readable storage medium having program instructions embodied therewith, the program instructions executable by a computing device to cause the computing device to perform operations comprising:
Complete technical specification and implementation details from the patent document.
The present disclosure relates to the field of document security. More specifically, the disclosure relates to methods and systems for detecting infrared security marks embedded in a document.
Ensuring the security of confidential documents such as legal documents, research documents, contract documents, invoices, identity documents, or the like, is a big concern. And, organizations are deploying various techniques such as using watermarks, barcodes, QR codes, IR security marks, and so on, to protect confidential documents from copying, forging, and counterfeiting. Of these, protecting documents using IR security marks can offer security because the mark is invisible to the naked eye and difficult to decode and counterfeit. In other words, embedding IR security marks within the documents can help prevent counterfeiting, illegal alteration, and/or duplication of the documents.
In general, to read such security marks, devices such as IR scanners, IR cameras, or light sources are used. The use of such devices can add a level of security and may increase the overall cost, add dependency in the system, and so on. For example, if an IR scanner is not functioning due to various reasons, then there is no way to detect/read IR marks in the documents. Moreover, using the IR scanner to detect such marks in the documents can be a manual process.
In this light, there is a need for improved methods and systems to detect security marks.
According to aspects illustrated herein, a method for detecting one or more infrared (IR) security marks embedded in a document is disclosed. The method includes receiving a document including one or more regions of interest (ROIs), wherein the ROIs correspond to pre-defined locations in the document. Thereafter, the one or more ROIs are processed to generate a plurality of arrays of counters corresponding to each ROI of the one or more ROIs. Once generated, the plurality of arrays of counters is analyzed to identify a plurality of transition points corresponding to a ROI including the IR security mark. Thereafter, the transition points are used to calculate the size of the one or more IR security marks. Then, the calculated size of the one or more IR security marks is compared with a pre-defined size, and based on the comparison the one or more IR security marks embedded in the document are detected for further analysis.
According to aspects illustrated herein, a multi-function device for detecting one or more infrared (IR) security marks embedded in a document is disclosed. The multi-function device includes a controller for receiving a document including one or more regions of interest (ROIs), wherein the ROIs correspond to pre-defined locations in the document. Further, the multi-function device includes a security mark detection module for: processing the one or more ROIs to generate a plurality of arrays of counters corresponding to each ROI; analyzing the plurality of arrays of counters to identify a plurality of transition points corresponding to a ROI including the IR security mark; calculating, using the transition points, size of one or more IR security marks; comparing the calculated size of the one or more IR security marks with a pre-defined size; and based on the comparison, detecting the one or more IR security mark embedded in the document for further analysis.
According to additional aspects illustrated herein, a method for detecting one or more infrared (IR) security marks embedded in a document is disclosed. The method includes receiving a document including one or more regions of interest (ROIs), wherein the ROIs correspond to pre-defined locations in the document; segmenting the received document into a plurality of tiles; assigning one or more worker threads to process one or more tiles of the plurality of tiles; upon processing, generating a plurality of arrays of counters corresponding to a ROI of the one or more ROIs; analyzing the plurality of arrays of counters to identify a plurality of transition points corresponding to a ROI including the IR security mark; identifying, using the transition points, coordinates of one or more IR security marks present in the document; calculating size of the one or more IR security mark using the coordinates of one or more IR security marks; comparing the calculated size of the one or more IR security marks with a pre-defined size; and based on the comparison, confirming the location of the one or more IR security marks in the document for detecting the one or more IR security mark embedded in the document.
A system of one or more computers can be configured to perform particular operations or actions by virtue of having software, firmware, hardware, or a combination of them installed on the system that in operation causes or cause the system to perform the actions. One or more computer programs can be configured to perform particular operations or actions by virtue of including instructions that, when executed by data processing apparatus, cause the apparatus to perform the actions. One general aspect includes a method for detecting a mark embedded in a document. The method includes receiving the document may include a region of interest (ROI), where the ROI corresponds to a location in the document. The method also includes generating an array of counters corresponding to the ROI, identifying, based on the array of counters, a transition point corresponding to the ROI including the mark, and calculating, using the transition point, a size of the mark. The method also includes comparing the calculated size with a pre-defined size, and, based on the comparison, detecting the mark in the document. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.
Implementations may include one or more of the following features. The mark may include an infrared (IR) mark and/or a security mark. The ROI location may include a pre-defined location. The method may include determining the location automatically or manually. The ROI may include a data collection region, and the data collection region may include at least one of a long-line, a short-line-1 and a short-line-2. Generating the array of counters may include selecting a plurality of sample pixels from a plurality of rows of pixels in the data collection region, comparing values of the selected plurality of sample pixels with neighboring pixels, and updating, based on the comparison, a counter value associated with a row or a column including the plurality of sample pixels. Identifying, based on the array of counters, the transition point may include selecting a set of data elements from the array of counters, where the set may include at least four data elements, and calculating, from the set, at least one of a sum_of_4_low value and a sum_of_4_high. The method may include comparing the calculated sum_of_4_low value with a pre-defined white-count value to determine at least one of a black-to-white transition point or a point corresponding to a white portion. The method may include comparing the calculated sum_of_4_high value for the set with a pre-defined black-count value to determine at least one of a white-to-black transition point or a point corresponding to a black portion. The method may include segmenting the received document into a plurality of tiles, and processing the plurality of tiles in parallel. Implementations of the described techniques may include hardware, a method or process, or computer software on a computer-accessible medium.
One general aspect includes a computer system for detecting a mark embedded in a document. The computer system includes a hardware processor, and a non-volatile storage medium storing instructions that when executed by the hardware processor perform operations that may include receiving the document may include a region of interest (ROI), where the ROI corresponds to a ROI location in the document, generating an array of counters corresponding to the ROI, identifying, based on the array of counters, a transition point corresponding to the ROI including the mark, identifying, using the transition point, coordinates of the mark, calculating a size of the mark based on the coordinates, comparing the calculated size with a pre-defined size, and based on the comparison, detecting the mark in the document. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.
Implementations may include one or more of the following features. The mark may include an infrared (IR) mark and/or a security mark. The ROI location may include a pre-defined location. The operations may include segmenting the received document into a plurality of tiles, and assigning one or more worker threads to process one or more tiles of the plurality of tiles. The operations may include analyzing one or more portions of the ROI covered by one or more data collection regions, where the one or more data collection regions includes at least one of a long-line, a short-line-1 and a short-line-2, selecting a plurality of sample pixels from a plurality of rows of pixels covered by the one or more data collection regions, comparing color values of the selected sample pixels with neighboring pixels, and based on the comparison, updating a counter value associated with a row or a column including the sample pixel. Analyzing the plurality of arrays of counters includes selecting a plurality of sets from each array of counters, where each set may include four data elements, calculating a sum_of_4_low value and a sum_of_4_high value for each set, comparing the calculated sum_of_4_low value for each set with a pre-defined white-count value to determine at least one of a black-to-white transition point or a point corresponding to a white portion, and comparing the calculated sum_of_4_high value for each set with a pre-defined black-count value to determine at least one of a white-to-black transition point or a point corresponding to a black portion. Implementations of the described techniques may include hardware, a method or process, or computer software on a computer-accessible medium.
One general aspect includes a computer program product for detecting a mark embedded in a document, the computer program product comprising a computer-readable storage medium having program instructions embodied therewith, the program instructions executable by a computing device to cause the computing device to perform operations including receiving the document may include a ROI, where the ROI corresponds to a location in the document. The operations include generating an array of counters corresponding to the ROI, identifying, based on the array of counters, a transition point corresponding to the ROI including the mark, calculating, using the transition point, a size of the mark, comparing the calculated size with a pre-defined size, and, based on the comparison, detecting the mark in the document. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.
Other and further aspects and features of the disclosure will be evident from reading the following detailed description of the embodiments, which are intended to illustrate, not limit, the present disclosure.
Configurations in accordance with embodiments of the present disclosure are explained in detail herein with reference to the various drawings. The configurations are described to illustrate the disclosed subject matter, not to limit its scope, which is defined by the claims. Those of ordinary skill in the art will recognize a number of equivalent variations of the various features provided in the description herein.
Definitions of one or more terms that are used in the document are provided herein. It is understood that the definitions are provided for clarity and are intended to cover further configurations in addition to the configurations described herein.
The term “multi-function device” is a single device or a combination of multiple devices, to perform one or more functions such as, but not limited to, printing, scanning, imaging, or the like. Further, the term “multi-function device” also refers to include stand-alone scanners, single-function scanners, and the like. The multi-function device may include software, hardware, firmware, or a combination thereof. In the context of the current disclosure, the multi-function device detects one or more infrared (IR) security marks embedded in a document for various purposes, such as but not limited to verifying the genuineness/authenticity/originality/confidentiality of the document.
The term “document” refers to any document having confidential information or otherwise confidential for individual users, organizations, nations, or the like. Various examples of such confidential documents may be, but not limited to, cheques, legal documents, bank bonds, research data, contract documents, prescriptions, coupons, tickets, invoices, or disclosure documents. The document may include content in the form of text, images, graphics, or a combination thereof. The document can be in physical form such as printed on paper or can be in digital form.
The term “security mark” refers to a mark added/printed/embedded in the document for various purposes, its such as but not limited to ensuring authenticity/genuineness/originality/confidentiality. One such example is an IR security mark which is added to secure the document. The IR security mark includes hidden marks which can be in the form of texts, images, signs, or the like. Further, the IR security mark includes a pattern that surrounds the hidden marks such that the user cannot see the hidden marks with the naked eye. The pattern can be a dot pattern, and the pattern together with the hidden marks forms the IR security mark and can also be referred as an IR security patch or just the security mark. Further, the IR security mark can be of, for example, but not limited to, a horizontal security mark or a vertical security mark. In the horizontal security mark, the hidden marks, i.e., embedded texts/images are horizontally aligned and in the vertical security mark, the hidden marks are vertically aligned. Other configurations are contemplated by this disclosure.
The term “tile” refers to a portion of the document. In the context of the disclosure, a received document or scanned data generated post-scanning is segmented into multiple tiles such that the width of the tile (i.e., span of the tile in the horizontal direction) is same as (or close to) the width of the scanned data (i.e., span of the scanned data in the horizontal direction). And, a tile can include one or more rows of pixels.
The term “pre-defined locations” in the context of the security mark, refers to one or more locations in the document where the IR security mark can be located. For example, the document can include eight pre-defined locations, i.e., the IR security mark/patch can be located at one or more locations of the eight pre-defined locations. Here, the eight pre-defined locations include, for example, but not limited to, the top right corner, the bottom right corner, the top left corner, and the bottom left corner corresponding to both the horizontal security mark and the vertical security mark.
The term “Region of interest” refers to a region or portion on a page of the document corresponding to the pre-defined locations where the IR security marks are expected to be present. In configurations in which documents include eight pre-defined locations that include the corners corresponding to the horizontal security mark and the vertical security mark. The regions of the scanned data or received document corresponding to pre-defined locations are referred to herein as regions of interest (ROI), the regions corresponding to the pre-defined locations of horizontal security mark are referred as horizontal ROI and the regions corresponding to the pre-defined locations of vertical security mark are referred as vertical ROI. In some configurations, a document can include eight ROIs.
The term “array of counters” refers to an array or collection of multiple data elements which are counters. A counter is assigned to a row/column including a sample pixel, and values of the counters are initially set as ‘0’. Based on the analysis of the pixels, the counters or counter values are updated.
The term “transition point” with reference to the array of counters refers to a data element of the array after which the value of subsequent data elements change significantly. For example, in an array of counters {24, 23, 25, 24, 26, 24, 23, 6, 9, 7, 8, 9 . . . }, the seventh data element (which is ‘23’) of the array can be considered as the transition point, as the values of the subsequent data elements change significantly. For the identification of the transition points, a data element of the array is analyzed and compared with a threshold value. Further, the transition points are used to identify points on the document at which the transition from a non-security mark portion to a security mark portion occurs and points on the document at which the transition from the security mark portion to the non-security mark portion occurs. The point at which the transition occurs from the non-security mark portion to the security mark portion is referred as “white-to-black” transition point and the point at which the transition occurs from the security mark portion to the non-security mark portion is referred as “black-to-white” transition point.
The term “size” in the context of the IR security mark refers to the size or dimension of the IR security mark, specifically, the IR security mark present in a ROI.
The term “pre-defined size” refers to a size value stored/defined in advance by, for example, but not limited to, a user such as an admin user. The pre-defined size indicates the size of an IR security mark that is expected to be present in a document, therefore, the pre-defined size is used to verify the presence of the IR security mark in the document.
The term “user” includes an entity that submits the document at the multi-function device. This user knows/understands information, e.g., the size of the IR security mark, relevant for implementing the present disclosure.
In the present disclosure, methods and systems for detecting infrared (IR) security marks embedded in documents are described. Specifically, the disclosure relates to methods and systems to identify and confirm the location of the IR security mark in the document to extract and ascertain the authenticity/genuineness of the IR security mark for various purposes, such as but not limited to, detecting the authenticity/genuineness/originality/confidentiality of the document. According to the disclosure, a scanning/printing device, such as a multi-function device analyzes a received document, specifically, regions of interest (ROIs) or pre-defined locations in the received document to identify and confirm the location of the IR security mark in the document. The document can include one or more ROIs, for example, but not limited to, eight ROIs that may include the IR security mark. Based on the analysis of the ROIs in the document, the multi-function device identifies the ROI that includes the IR security mark. Once identified, the multi-function device extracts the IR security mark and verifies the authenticity/genuineness of the IR security mark. Based on the detection of the IR security mark, the multi-function device may take a desired action. In some configurations, the multi-function device may notify an owner of the document or an admin user. In some configurations, the multi-function device may abort the processing of the document if the document including the IR security mark is submitted for printing/scanning/copying.
shows an environmentin which various configurations of the present disclosure can be practiced. The environmentincludes a multi-function devicethat provides one or more functionalities such as printing, scanning, imaging, and so on. The multi-function deviceis an example of the environmentthat may include scanners or any devices with scanning and/or printing functionality. The multi-function devicedetects the location of an Infrared (IR) security mark embedded in a document for various purposes, such as but not limited to, extracting and ascertaining the authenticity/genuineness/originality/confidentiality of the document.
In general, users/individuals and organizations deal with different documents such as cheques, legal documents, bank bonds, research data, contract documents, prescriptions, coupons, tickets, invoices, disclosure documents, and the like. These documents include different types of content including texts, images, graphics, etc. Further, such documents include different security marks such as barcodes, watermarks, QR codes, or the like, to prevent the documents from any malicious activity, such as counterfeiting, duplication, and the like. The document can include one or more IR security marks. The IR security mark includes hidden marks which can be in the form of texts, images, signs, or a combination thereof. And, the hidden marks are surrounded or hidden by a pattern such that the user cannot see it with the naked eye. The pattern and the hidden marks together form the security mark and are collectively referred as an IR security mark/patch or security mark. Further, the IR security mark or the IR patch can be located at pre-defined locations in the document. And, ROIs corresponding to pre-defined locations on a document are submitted at the multi-function device.
Operationally, a document including an IR security mark is received at the multi-function device. The document can be in a physical form, such as printed on paper, or can be in a digital form. The digital form/version can be submitted from a computing device (not shown), and the physical form/version can be submitted directly at the multi-function device. In some configurations, a user submits the document for scanning in physical form. The multi-function deviceprocesses the received document, specifically the ROIs in the document and identifies the ROI/pre-defined location that includes the IR security mark. The multi-function deviceprocesses the one or more ROIs parallelly. The multi-function devicesegments the received document into multiple tiles and assigns one or more worker threads to process the one or more tiles. While processing, the multi-function device, specifically, the assigned worker threads analyze different portions, i.e., the pixels, of the ROIs in the document. Based on the analysis, the multi-function deviceidentifies the ROI that includes the IR security mark. Once identified, the multi-function deviceextracts the IR security mark and analyzes the extracted IR security mark to confirm the authenticity/genuineness of the IR security mark. In some configurations, the multi-function deviceanalyzes the IR security mark to determine the authenticity/genuineness/originality/confidentiality of the document including the IR security mark.
is a block diagram illustrating various components of a multi-function devicefor implementing the present disclosure. As shown, the multi-function deviceincludes a document receiver, a scanner, a user interface, a controller, a memory, and a security mark detection module. Although, the security mark detection moduleis shown as an independent module. The security mark detection modulecan be a component of the controller, and the functionalities of the security mark detection modulecan be performed by the controllerwithin the scope of the present disclosure. The components-are electronically coupled and communicate electronically. The multi-function devicemay further include additional component(s).
The multi-function devicereceives a document for processing. The document includes confidential content and one or more infrared (IR) security marks. The document can be a multi-page document and may include the IR security mark on one or more pages of the confidential document. The IR security mark includes hidden marks which can be in the form of texts, images, signs, or a combination thereof. And, the hidden marks are surrounded or hidden by a pattern such that the user cannot see it with the naked eye. The pattern can be a dot pattern and collectively, the pattern and the hidden marks can be referred to as a security mark or IR security mark/patch. A snapshot of a documentis shown in. The documentincludes content such as text, images, etc. The documentalso includes an IR security markwhich further includes one or more hidden marks in the form of text, images, etc. (not visible). Further, the IR security mark can be, for example, but not limited to, a horizontal security mark or a vertical security mark. In the horizontal security mark, the hidden marks, i.e., embedded texts/images are horizontally aligned and in the vertical security mark, the hidden marks are vertically aligned. Furthermore, on a particular page of a document, the IR security mark can be located at one or more pre-defined locations. The type of security mark can be positioned at a pre-defined location, for example, top right, bottom right, top left, and bottom left of the document. The IR security mark can be located at a pre-defined location.illustrates a snapshots of a documentshowing eight possible locations, where the IR security mark or security mark can be present in the document, based on the type of the security mark. Accordingly, four possible locations where the horizontal security mark can be present are shown as,,, or. Similarly, four possible locations where the vertical security mark can be present are shown as,,, or
The document is received at the multi-function deviceby placing the document at the document receiversuch as a platen or an automatic document handler (ADH). Thereafter, the user interfaceof the multi-function devicecan display one or more options such as scan, print, workflow, copy, fax, and so on. The user interfacedisplays an option “security mark detection workflow,” and the user interfacecan receive the selection of the option or can execute a default selection of the option. The option enables scanning of the document and detection of the presence of the infrared security mark in the document. The controllertriggers the scannerto scan the document.
The scannerscans the document and generates a scanned image. The scanned image can be, for example, but not limited to, a raster image, i.e., grid of pixels. The scanned image can include color values of the pixels in a color space format, for example, but not limited to an RGB (Red-Green-Blue) color space. Once generated, the controllerforwards the scanned image to the security mark detection modulefor further processing.
The security mark detection moduleprocesses the received scanned data, specifically, regions of the scanned data corresponding to the pre-defined locations, to identify the location of the security mark. The regions of the scanned data (or received document) corresponding to pre-defined locations are referred as regions ROIs. Therefore, the document includes one or more ROIs and the security mark detection moduleanalyzes the ROIs in the scanned data to identify one or more ROIs that include the IR security mark.
While processing the ROIs, the security mark detection moduleanalyzes different portions of the ROIs, specifically the security mark detection moduleanalyzes color values of different pixels/portions of the ROIs. For this, the security mark detection moduleuses one or more sample windows which can be referred as data collection regions. And, while processing the ROI, the security mark detection moduleanalyzes the color values of portions/pixels covered by the different data collection regions. Here, the security mark detection moduleuses a data collection region of a first length and other short data collection regions of a second length. The sizes of the data collection regions depend upon the size of the security mark that may be present in the document. And, the size of the data collection region can be pre-defined. In some configurations, the first size can be 1040 pixels*560 lines/rows of pixels for 600 dpi scan. In some configurations, the second length can be 256 pixels*288 lines/rows of pixels for 600 dpi scans. The first length data collection region is referred herein as long-line and the second length data collection regions are referred as short-line-1 and short-line-2. The security mark detection moduleuses the long-line (long data collection region) to process the central portion of the ROI and the other two data collection regions, i.e., the short-line-1 and short-line-2 to process the two ends of the ROI.illustrates a snapshotof different data collection regions labeled as,andwhich cover different portions of an IR security mark/ROI. The data collection regioncovers the central portion of the IR security mark/ROIand the data collection regionsandcover the two ends of the IR security mark/ROI. The data collection regionis referred as long-line and the data collection regionsandare referred as short-line-1 and short-line-2, respectively.
While processing the portions/pixels covered by the different data collection regions (i.e., the longline, short-line-1 and short-line-2), the security mark detection moduleselects one or more sample pixels from the rows of pixels covered by the data collection regions, and compares the selected sample pixels with neighboring pixels for further analysis. The security mark detection moduleselects the sample pixels after a gap of a pre-defined number of rows. Therefore, the security mark detection moduleselects the sample pixels from the plurality of rows of pixels, such that there is a gap of a pre-defined number of rows between the two rows including the sample pixels. In some configurations, the gap is selected based on the type of ROI (i.e., horizontal ROI or vertical ROI), type of data collection region (short-line or long-line), etc. Further, for a row including the sample pixel, the security mark detection moduleselects multiple sample pixels. The gap between the adjacent sample pixels can be, for example, but not limited to, pre-defined. In some configurations, the gap is selected based on the type of ROI (i.e., horizontal ROI or vertical ROI), type of data collection region (short-line or long-line), etc.
The security mark detection modulecompares the selected sample pixels with neighboring pixels. The neighboring pixels are pixels that are in the same row as the sample pixel and are at a distance from the sample pixel in a direction, where the distance and the direction can be, but are not limited to being, pre-defined. In some configurations, the distance/gap between the sample pixel and the neighboring pixel is selected based on the type of ROI (i.e., horizontal ROI or vertical ROI), type of data collection region (short-line or long-line), etc. Further, the pre-defined direction can depend upon the location of the ROI. For example, for a ROI located at top left and bottom left, the pre-defined direction is towards right from the sample pixel, i.e., the security mark detection moduleselects the neighboring pixel towards the right from the sample pixel. Similarly, for ROI located at the top right and bottom right, the pre-defined direction is towards the left from the sample pixel. This way, the security mark detection moduleselects various sample pixels and compares the selected sample pixels with the neighboring pixels.
While comparing, the security mark detection modulecompares the color value of the sample pixels with the neighboring pixels. In some configurations, if the color values are represented in RGB color space, then the differences for three color channels are calculated. Based on the comparison, the security mark detection moduleincrements a counter value associated with the row or column including the sample pixel. For example, if the difference between the color value of the sample pixel and the neighboring pixel is greater than a threshold, which may be, but is not limited to being, pre-defined, the security mark detection moduleincrements the counter value associated with the row or column including the sample pixel. To accomplish this, the security mark detection moduleassigns a counter value corresponding to the row or column including the sample pixel. For example, to analyze the horizontal ROIs, for the long-line, the security mark detection moduleassigns counter values corresponding to a row including the sample pixels. And for the short-lines (short-line-1 and short-line-2), the security mark detection moduleassigns counter values corresponding to a column including the sample pixels. Further, to analyze the vertical ROIs, for the long-line, the security mark detection moduleassigns counter values corresponding to a column including the sample pixels. And for the short-lines, the security mark detection moduleassigns counter values corresponding to a row including the sample pixels. The counter values are stored in dedicated memory locations associated with a data collection region of the ROIs, and the counter values are initially set as ‘0’. This way, the security mark detection moduleanalyzes different portions of the ROIs and based on the analysis, generates one or more arrays of counters/counter values corresponding to the different portions of ROIs. Additional details regarding the processing of different ROIs are discussed below one by one with respect to different types of ROIs and different data collection regions associated with respective ROIs.
While processing the horizontal ROI located on the top right, the security mark detection moduleanalyzes the portions/pixels covered by different data collection regions, i.e., the long-line, short-line-1 and short-line-2. Here, the security mark detection moduleprocesses the long-line to determine the height of the ROI, (i.e., span in the vertical direction), specifically, to determine the height of an IR security mark included in the ROI. Further, the security mark detection moduleprocesses the short-line-1 and short-line-2 to determine the width of the ROI (i.e., span in the horizontal direction), specifically width of the IR security mark included in the ROI.illustrates a snapshotof a long-line data collection region labeled aswhich covers a central portion of the security mark/ROIlocated on the top right of the scanned data. To process the central portion of the security mark/ROI, the security mark detection moduleanalyzes the pixels/portions covered by the long-line. Similarly,illustrates a snapshotof data collection regions short-line-1and short-line-2covering the two ends of the security mark/ROIlocated on the top right of the scanned data. To process the two ends of the security mark/ROI, the security mark detection moduleanalyzes the pixels/portions covered by short-line-1and short-line-2
While processing the pixels covered by the long-line, as discussed earlier, the security mark detection moduleselects multiple sample pixels and compares them with neighboring pixels which are located at a distance (e.g. 8 pixels). The security mark detection moduleselects the neighboring pixels towards the left, as the ROI is located on the top right. While comparing, the security mark detection modulecalculates the difference between color values of the sample pixels and neighboring pixels, and if the difference is greater than a threshold, then the security mark detection moduleincrements the counter value associated with the row including the sample pixel. Similarly, the security mark detection moduleanalyzes the other sample pixels. The distance between the adjacent sample pixels is, for example, but not limited to, 14 pixels. In some configurations, the distance between the two adjacent sample pixels is greater than the distance between the sample pixel and the neighboring pixel. The distance between the two rows including the sample pixels is, for example, but not limited to, 4 rows. The security mark detection moduleselects one or more sample pixels from the rows of pixels covered by the long-line and compares them with neighboring pixels. Based on the comparison, the security mark detection moduleupdates the counter values associated with the row including the sample pixels, and generates an array of counters. The security mark detection moduleanalyzes the pixels covered by the long-line data collection region in other horizontal ROIs.
While processing the pixels covered by short-line-1 and short-line-2, the security mark detection moduleselects the sample pixels and compares them with neighboring pixels which are located at, for example, but not limited to, 8 pixels towards left, as the ROI is located on the top right. Further, the distance between the two adjacent sample pixels is, for example, but not limited to, 4 pixels. In some configurations, the distance between the adjacent sample pixels is smaller than the distance between the sample pixel and the neighboring pixel. Furthermore, the distance between the two rows including the sample pixels is, for example, but not limited to, 10 rows. In some configurations, the distance between the rows including the sample pixels for the short-line-1 and short-line-2 is greater than the distance between the rows including the sample pixels for the long-line. Based on the comparison, the security mark detection moduleupdates the counter values associated with the column including the sample pixels. For example, if the difference between the color values of the sample pixel and the neighboring pixel is greater than a threshold, the security mark detection moduleincrements the counter value associated with the column including the sample pixel. The security mark detection moduleselects the sample pixels from the rows of pixels covered by short-line-1 and short-line-2 and compares them with neighboring pixels. Based on the comparison, the security mark detection moduleupdates the counter values associated with a column including the sample pixels, and generates an array of counters. The security mark detection moduleanalyzes the pixels covered by short-line-1 and short-line-2 in other horizontal ROIs.
While processing the vertical ROIs located on the top right, the security mark detection moduleanalyzes the pixels covered by different data collection regions. For the vertical ROI, the security mark detection moduleprocesses the long-line to determine the width of the ROI, (i.e., span in the horizontal direction), specifically the width of the IR security mark included in the ROI. The security mark detection moduleprocesses the short-line 1 and short-line 2 to determine the height of the ROI, i.e., span in the vertical direction, specifically height of the IR security mark included in the ROI.illustrates snapshotof a long-line data collection regionwhich covers a central portion of the security mark or the ROIlocated on the top right of the scanned data. To process the central portion of the security mark or the ROI, the security mark detection moduleanalyzes the pixels/portions covered by the long-line.illustrates a snapshotof data collection regions short-line-1and short-line-2covering the two ends of the security mark or the ROIlocated on the top right of the scanned data. To process the two ends of the security mark or the ROI, the security mark detection moduleanalyzes the pixels/portions covered by short-line-1and short-line-2
While processing the pixels covered by the long-line, the security mark detection moduleselects the sample pixels and compares them with neighboring pixels which are located at, for example, but not limited to, 8 pixels towards the left, as the ROI is located on the top right. Further, the distance between the two adjacent sample pixels is, for example, but not limited to, 4 pixels. In some configurations, the distance between the adjacent sample pixels is smaller than the distance between the sample pixel and the neighboring pixel. The distance between the two rows including the sample pixels is, for example, but not limited to, 14 rows. In some configurations, the distance between the rows including the sample pixels for the long-line of the vertical ROI is greater than the distance between the rows including the sample pixels for the long-line of the horizontal ROI. Based on the comparison, the security mark detection moduleupdates counter values associated with the column including the sample pixel (instead of the row as in the case of long-line for the horizontal ROI). For example, if the difference is greater than a threshold, the security mark detection moduleincrements the counter value associated with the column including the sample pixel. The security mark detection moduleselects the sample pixels from the plurality of rows of pixels covered by the long-line and compares them with neighboring pixels. Based on the comparison, the security mark detection moduleupdates the counter values associated with the column including the sample pixels, and generates an array of counters. The security mark detection moduleanalyzes the pixels covered by the long-line in other vertical ROIs, i.e., ROIs located at top left, bottom left, and bottom right.
While processing the pixels covered by the short-line-1 and short-line-2, the security mark detection moduleselects the sample pixels and compares them with neighboring pixels which are located at the distance of, for example, but not limited to, 8 pixels towards the left, as the ROI is located on the top right. Further, the distance between the two adjacent sample pixels is, for example, but not limited to, 10 pixels. In some configurations, the distance between the adjacent sample pixels is greater than the distance between the sample pixel and the neighboring pixel. Furthermore, the distance between the two rows including the sample pixels is, for example, but not limited to, 4 rows. In some configurations, the distance between the rows including the sample pixels for the short-line-1 and short-line-2 is smaller than the distance between the rows including the sample pixels for the long-line. While comparing, the security mark detection modulecalculates the difference between color values of the sample pixels and neighboring pixels and, if the difference is greater than a threshold, the security mark detection moduleincrements the counter value associated with the row including the sample pixel (instead of the column as in the case of long-line). The security mark detection moduleselects the sample pixels from the plurality of rows of pixels covered by the short-line-1 and short-line-2 and compares them with neighboring pixels. Based on the comparison, the security mark detection moduleupdates the counter values associated with the row including the sample pixels, and generates an array of counters. Similarly, the security mark detection moduleanalyzes the pixels covered by the short-line-1 and short-line-2 in other vertical ROIs. The security mark detection moduleanalyzes the ROIs, specifically, portions of the ROIs covered by data collection regions, and generates one or more arrays of counters corresponding to a data collection region.
Further, the security mark detection moduleprocesses the one or more ROIs parallelly. To accomplish this, upon receiving the scanned document post-scanning, the security mark detection modulesegments the received scanned data into one or more tiles and processes the document on a tile-by-tile basis. The tile includes a portion or a strip of the image (scanned data) such that the width of a tile (i.e., span in the horizontal direction) is same as (or close to) the width of the image. The tile includes multiple rows of pixels which is the height (i.e., span in the vertical direction) of the tile. In some configurations, the tile includes 64 rows of pixels, therefore the height of the tile is 64 rows.illustrates snapshotof scanned data. The scanned datais segmented into multiple tiles which are labeled as,,,and so on. The height of the tile can be smaller or greater than the height of the ROI. In some configurations, the height of the tile is smaller than the height of the ROI. In some configurations, the height of the tile is greater than the height of the ROI. To process a ROI, the security mark detection moduleanalyzes the tiles covering the ROI. A tile may partially cover multiple ROIs as the width of the tile can be equal to the width of the document, and the portion of the document that the tile covers may include portions of different ROIs. While processing the one or more tiles the security mark detection moduleprocesses and collects data corresponding to different portions of the ROIs covered by the tiles. For example, if a tile, for example, tile 8, partially coversROIs (i.e
. . . , horizontal and vertical ROIs located on the top left and top right), upon processing tile 8, the security mark detection modulegenerates data for the ROIs. The security mark detection modulesegments the received scanned data or scanned document into multiple tiles and processes the document on a tile-by-tile basis. The security mark detection moduleprocesses the tile, and while processing, data related to the portions (portions covered by the long-line, short-line-1 and short-line-2) of the ROIs covered by tile are collected.
To process the ROIs and their portions parallelly, the security mark detection moduleassigns a worker thread to process the one or more tiles and thus the portions of the one or more ROIs covered by the tiles. For example, the security mark detection moduleassigns worker thread 1 to process 8 tiles, for example, tile 1 to tile 8. To process the subsequent 8 tiles, for example, tiles 9 to 16, the security mark detection moduleassigns worker thread 3. While processing the tiles, the assigned worker threads collect data related to the portions of different ROIs covered by the processed tiles. For example, if the tiles 1-8 cover portions of horizontal ROI located at top right and top left, and the worker thread 1 is assigned to process the tiles 1-8. Then, upon processing, the worker thread 1 generates data for different portions, i.e., long-line, short-line-1 and short-line-2 for both the ROIs (i.e., horizontal ROI located at top right and top left). Similarly, if the worker thread 3 is assigned to process the tiles 8-16, and the tiles 8-16 cover one or more portions of the horizontal ROI located at top left and top right and vertical ROI located at top left and top right, upon processing, the worker thread 3 generates data corresponding to different portions of the ROIs (i.e., horizontal and vertical ROIs located at top left and top right). This way, the worker threads process the assigned one or more tiles parallelly and independently. The security mark detection moduleprocesses the portions of the document that may include the security mark or the ROIs. Therefore, the assigned worker threads process the tiles that cover portions of at least one or more ROIs. To accomplish this, while processing the tiles, the assigned worker threads check for the start and end position of the tile against possible ROIs to see if the tile contains any portions of the ROIs. If the tile includes a portion of any of the ROI, the worker thread proceeds forward with further processing, i.e., sampling, pixel value analysis, etc., otherwise, further processing is skipped. The security mark detection moduleassigns different worker threads to process the document parallelly on a tile-by-tile basis.
The security mark detection moduleassigns/allocates a chunk of memory locations to a worker thread to store data collected from multiple tiles. Specifically, corresponding to the portion (i.e., long-line, short-line-1 and short-line-2) of the ROI, the worker thread is assigned a chunk of memory to store data, for example, but not limited to, counter values. In other words, if a document includes 8 ROIs, a worker thread is assigned a chunk of memory corresponding to a data collection region (i.e., long-line, short-line-1 and short-line-2) for the ROIs, i.e., 8 ROIs. In some configurations, the starting location for storing data related to long-line of horizontal ROI located at top left, top right, bottom left, and bottom right are localMem+0, localMem+256, localMem+512 and localMem+768, respectively. In some configurations, starting location for storing data related to short-line-1 of horizontal ROI located at top left, top right, bottom left, and bottom right are localMem+2560, localMem+2688, localMem+2816, localMem+2944, respectively. Similarly, starting location for storing data related to short-line-2 of horizontal ROI located at top left, top right, bottom left, and bottom right are localMem+3584, localMem+3712, localMem+3840, at localMem+3968, respectively. This way, the security mark detection moduleassigns/allocates a chunk of memory locations to a worker thread to store data collected from multiple tiles.
Upon processing the one or more tiles covering portions of one or more ROIs, the assigned worker thread stores the collected data in the allocated respective memory locations. For example, if the worker thread 1 is assigned to process the tiles 1-8 which partially cover portions of horizontal ROIs located at top right and top left. Then, upon processing, for the top left horizontal ROI, the worker thread 1 stores the collected data in the memory location associated with the top left horizontal ROI. And, for the top right horizontal ROI, worker thread 1 stores the collected data related in the memory location associated with the top right horizontal ROI. Here, for a particular worker thread, some of the assigned memory may remain empty at the end of the processing, as the tiles processed by the worker thread may not include portions/pixels of a particular ROI. Continuing with the previous example, as the worker thread 1 is assigned to process the tiles 1-8, which covers the horizontal ROI located at top left and top right. Therefore, the memory assigned to the worker thread 1 associated with other ROIs, i.e., horizontal ROIs located at the bottom (left and right) and vertical ROIs located at the bottom left, bottom right, top left, and top right, remain empty. This way, the security mark detection moduleassigns worker threads to process the one or more tiles and collects data related to the one or more portions of the ROIs covered by the tiles. And, stores the data, i.e., the counter values, in the memory locations associated with the ROI. Thus, upon processing, the assigned worker threads generate arrays of counters corresponding to one or more portions of the ROIs covered by the processed tiles.
Unknown
March 3, 2026
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.