System and method of specifying image document layout definition
Summary by NHIP
Image layout definition system
The system receives region and visible area definitions to generate an image layout definition. The visible area definition automatically expands to fully enclose all defined regions while maintaining specified margins around the image.
Claim Score by NHIP
Abstract
A system and method of processing an image comprises receiving a definition of at least one region in the image, where the region definition has a location specification and a type specification. The method further comprises displaying the boundaries of the at least one defined region according to its type specification, receiving a definition of a visible area in the image, the visible area definition having a specification of margins around the image, generating an image layout definition comprising the region definition and the visible area definition, and saving the image layout definition. The image layout definition may also be used as a template to conform image documents to a specified layout.

Term
Term ended
Expired 29 October 2024, 1.9 years ago.
- Priority and filed
- Granted
- Expired
- Today
38 claims: 2 independent, 36 dependent
- 1Broadest claimClaim Score 62, broad(NHIP)A method of processing an image, comprising:receiving a definition of at least one region within an image, the region definition having a location specification of the at least one defined region and a type specification of the at least one defined region;displaying boundaries of the at least one defined region according to the type specification of the at least one defined region;receiving a user-specified definition of a visible area of the image, the visible area definition being automatically expanded to fully enclose all defined regions of the image and having a specification of margins around the image;and generating an image layout definition based on the region definition of the at least one defined region of the image and the user-specified visible area definition of the image.
- 22A system for processing an image, comprising:a graphical user interface operable to display the image, and receive a definition of at least one region within the image, the region definition having a location specification of the at least one defined region and a type specification of the at least one defined region, the graphical user interface further operable to display boundaries of the at least one defined region according to the type specification of the at least one defined region, the graphical user interface further operable to receive a user-specified definition of a visible area having a specification of margins around the image, the visible area definition being automatically expanded to fully enclose all defined regions of the image;and a processor generating an image layout definition based on the region definition of the at least one defined region of the image and the user-specified visible area definition of the image.
Independent claims2
43 paragraphs in 5 sections, as filed
TECHNICAL FIELD OF THE INVENTION
0001The present invention relates generally to the field of computers and computer applications, and in particular to a system and method of specifying document layout definition.
BACKGROUND OF THE INVENTION
0002Computers are increasingly used to handle and process documents, including documents that are composites of text, photographs, drawings, and graphic layout elements. Forms, templates, specialized scanning adapters, and specific re-purposing applications all require a very high degree of accuracy in the layout definition of these layout elements. such very accurate layout definition of a digital document is commonly termed ground truth. The ground truth definition of a document should specify the type, location, size, resolution, and/or special treatment of these layout elements. Existing systems and methods require the user to be very hands-on in every step of the ground truth process. Further, existing systems and methods do not provide an output that is applicable to other image processing applications such as print-on-demand, document re-purposing, document classification and clustering, etc.
SUMMARY OF THE INVENTION
0003In accordance with an embodiment of the present invention, a method of processing an image comprises receiving a definition of at least one region in the image, where the region definition has a location specification and a type specification. The method further comprises displaying the boundaries of the at least one defined region according to its type specification, receiving a definition of a visible area in the image, the visible area definition having a specification of margins around the image, generating an image layout definition comprising the region definition and the visible area definition, and saving the image layout definition.
0004In accordance with yet another embodiment of the invention, a method of processing an image comprises determining a definition of at least one region in the image, the region definition having a location specification and a type specification. The method further comprises generating an image layout definition comprising the region definition, searching for an image layout definition template that best matches the generated image layout definition, and conforming the generated image layout definition to the best-matched image layout definition template.
0005In accordance with yet another embodiment of the invention, a system for processing an image comprises a graphical user interface operable to display the image and receive a definition of at least one region in the image, the region definition having a location specification and a type specification, the graphical user interface further operable to display the boundaries of the at least one defined region according to its type specification. The system further comprises a processor generating an image layout definition comprising the region definition.
BRIEF DESCRIPTION OF THE DRAWINGS
0006For a more complete understanding of the present invention, the objects and advantages thereof, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:
0007<figref idref="DRAWINGS">FIG. 1</figref> is a simplified block diagram of an embodiment of a system and method of specifying image layout definition or ground truthing according to the present invention;
0008<figref idref="DRAWINGS">FIG. 2</figref> is a flowchart of an embodiment of a method of specifying image layout definition or ground truthing according to the present invention;
0009<figref idref="DRAWINGS">FIG. 3</figref> is a flowchart of a polygonal region definition process according to an embodiment of the present invention;
0010<figref idref="DRAWINGS">FIG. 4</figref> is a flowchart of a rectangular region definition process according to an embodiment of the present invention;
0011<figref idref="DRAWINGS">FIG. 5</figref> is a flowchart of a visible area definition process according to an embodiment of the present invention;
0012<figref idref="DRAWINGS">FIG. 6</figref> is a flowchart of an open image file process according to an embodiment of the present invention;
0013<figref idref="DRAWINGS">FIG. 7</figref> is a flowchart of a display image file process according to of the present invention;
0014<figref idref="DRAWINGS">FIG. 8</figref> is a flowchart of a snap-to-template process according to an the present invention;
0015<figref idref="DRAWINGS">FIG. 9</figref> is an exemplary image document that may be processed by method of specifying image layout definition;
0016<figref idref="DRAWINGS">FIG. 10</figref> is an exemplary image document used to illustrate the of the system and method of specifying image layout definition according to of the present invention; and
0017<figref idref="DRAWINGS">FIG. 11</figref> is an exemplary image document used to illustrate the of a snap-to-template process according to an embodiment of the present
DETAILED DESCRIPTION OF THE DRAWINGS
0018The preferred embodiment of the present invention and its advantages are best understood by referring to <figref idref="DRAWINGS">FIGS. 1 through 11</figref> of the drawings, like numerals being used for like and corresponding parts of the various drawings.
0019<figref idref="DRAWINGS">FIG. 1</figref> is a simplified block diagram of an embodiment of a system and method of specifying image layout definition <b>10</b> according to the present invention. Image ground truth is another common term used to refer to a highly accurate specification of an image document. The image document layout definition may include a number of specifications such as region segmentation, region classification, region clustering, region layout, and region modality. Region segmentation refers to the actual boundaries or outline of a region. Region classification refers to what type of data is in the region, such as text, drawing, photograph, etc. Region classification may be used for clustering, such as clustering lines of text into columns. Region layout is the specification of the relative and absolute physical location of the regions in the image document. Region modality refers to the treatment of the region as a black-and-white, gray scale, or color layout element, which also specifies the bit depth of the region. The term “layout definition” will be used to refer to a collective specification of the regions in an image document. A high degree of accuracy in the layout definition is often required in processing image documents such as re-purposing documents, providing document templates, specialized scanning, creating document templates, and other processes.
0020According to an embodiment of image ground truth system <b>10</b> operating on a computer platform <b>12</b>, an image document <b>14</b> is provided as input thereto. Computer platform <b>12</b> may be any device with a display and a processor. Computer platform <b>12</b> may be a portable device or a desktop device and typically comprise a pointing device such as a mouse, touch pad, touch screen, or a writing stylus. Image document <b>14</b> is preferably a scanned image of a document in a media file type such as Tag(ged) Image File Format (.TIF), Bit Map (.BMP), Graphic Interchange Format (.GIF), Portable Document Format (.PDF), Joint Photographic Experts Group (.JPEG), etc. or an electronic document in a word processing format such as WORD (.DOC), Hypertext Markup Language (HTML), or another suitable document type. Image ground truth system <b>10</b> is operable to automatically analyze document <b>14</b> and detect zones in which the document layout elements are present. The document layout elements may include text, graphics, photographs, drawings, and other visible components in the document. Alternatively, system <b>10</b> permits the user to specify, using a graphic user interface <b>18</b>, the various regions occupied by these layout elements. system <b>10</b> is operable to output a specification of the image document layout definition <b>16</b> in a specified format such as eXtensible Markup Language (XML). system <b>10</b> may also output the image document layout definition as a layout template to a template database <b>19</b>. Template database <b>19</b> is a repository for templates that define the layout of image documents. A template comprises a definition of the region type, modality and other properties, visible area, and other specifications of the image document. Using predefined image document templates, new image documents can be quickly put together with new text, photograph, and graphic layout elements. Furthermore, predefined templates may be used to conform image documents to correct inadvertent shifts during document scanning, for example, so that they follow a predefined format. An example of this process is shown in <figref idref="DRAWINGS">FIG. 10</figref> and described in more detail below.
0021Image layout definition <b>16</b> can serve as input to a variety of systems and applications. For example, image layout definition <b>16</b> may be used for document comparison and clustering/classification purposes. Further, image layout definition <b>16</b> may be used as a template for processing information. For example, image layout definition <b>16</b> may define a template with six photographic regions arranged in a certain layout. This template may be used to arrange and layout photographs in a folder, for example. Image layout definition <b>16</b> may be easily compared with other templates or layout definition files to find the most suitable arrangement or layout of the photographs. The use of image layout definition <b>16</b> as a template also enables scanned document images that may have been slightly skewed or shifted to be corrected according to the layout specification in the template. In addition, image layout definition <b>16</b> may be used as input to a print-on-demand (POD) system that uses it to proof the layout of the documents as a measure for quality assurance. Image layout definition <b>16</b> may also be used to ensure proper rendering of a complex scanned document.
0022<figref idref="DRAWINGS">FIG. 2</figref> is a flowchart of an embodiment of a method <b>20</b> of specifying image layout definition or ground truthing according to the present invention. In blocks <b>22</b> and <b>23</b>, a source of an image document <b>14</b> such as a stored file, a video frame, the output from a scanner, is opened and displayed, respectively. Optionally, the user may specify to resize the image file and/or to display the image file so that the entire image is shown in the available display screen. Details on these processes are described below and shown in <figref idref="DRAWINGS">FIGS. 6 and 7</figref>. As shown in <figref idref="DRAWINGS">FIG. 9</figref>, the image file is displayed in a graphical window <b>23</b> in graphical user interface <b>18</b>. Graphical user interface <b>18</b> may include a menu bar <b>24</b> comprising a plurality of menu selections <b>26</b>. <figref idref="DRAWINGS">FIG. 9</figref> further shows a help pop-up window <b>28</b> that contains text describing the functionalities associated with the file menu selection. Returning to the flowchart in <figref idref="DRAWINGS">FIG. 2</figref>, the user may instruct system <b>10</b> to generate region definitions by inputting the region boundaries or vertices (block <b>30</b>), by a region click-and-select process (block <b>32</b>), or by an automatic region analysis process (block <b>34</b>).
0023Region click-and-select process shown in block <b>32</b> enables a user to use a pointing device to indicate on the graphical user interface the location of points within regions of interest for classification and segmentation. For example, if the user clicks on a point on the image document displayed on the graphical user interface, the region containing the identified point is analyzed and the boundaries of the region are derived. The data type of the region containing the identified point is also determined. Therefore, the user may define the regions of the image document by successively clicking on a point within each region.
0024Automatic region analysis process shown in block <b>34</b> is a process that performs zoning analysis on the image document to form all of its regions using a segmentation process, and determine the region characteristics using a classification process. Various techniques are well-known in the art for performing segmentation analysis, which fall into three broad categories: top-down strategy (model-driven), bottom-up strategy (data-driven),and a hybrid of these two strategies. Examples of these strategies are described in Theo Pavlidis and Jiangying Zhou, <i>Page segmentation and Classification</i>, published in <i>Document Image Analysis</i>, pp 226-238, 1996, and Anil K. Jain and Bin Yu, <i>Documentation Representation and Its Application to Page Decomposition</i>, published in <i>Pattern Analysis and Machine Intelligence</i>, pp 294-308, Vol. 20, No. 3, March 1998. Various techniques are well-known in the art for performing classification analysis, which are also described in the above references. Further, a suitable automatic zoning analysis process is implemented in the PrecisionScan software used in the image capture devices such as the ScanJet 5300C manufactured by Hewlett-Packard Company of Palo Alto, Calif.
0025Process <b>20</b> further provides a third method of defining the regions in the image document, as shown in block <b>30</b>. The process in block <b>30</b> enables the user to define a polygonal region, a rectangular region, and a visible area in the image document. This process is described in more detail below with reference to <figref idref="DRAWINGS">FIGS. 3-5</figref>.
0026In block <b>36</b>, the defined regions in document <b>14</b> are displayed in graphical user interface <b>18</b> and an example of which is shown in <figref idref="DRAWINGS">FIG. 10</figref>. As shown in <figref idref="DRAWINGS">FIG. 10</figref>, the boundaries of each region is outlined by color-coded lines (indicated by different lines in the figure). For example, a text region (regions <b>50</b>-<b>56</b>) may be outlined in green, a color graphic region (regions <b>57</b>) may be outlined in purple, a black and white graphic region (region <b>58</b>) may be outlined in blue, a photographic region (region <b>59</b>) may be outlined in yellow, etc. Further as shown in block <b>38</b>, a user may provide or modify the layout definition of selected regions in the document. For example as shown in <figref idref="DRAWINGS">FIG. 10</figref>, the user may select region <b>59</b>, which is a region containing a photographic element. The user may do so by right-clicking on the selected region, which causes a pop-up submenu <b>60</b> to appear over region <b>59</b> that displays a number of region layout definitions that the user may modify. For example, the user may change the current region type setting of region <b>59</b> from “photo” to another region type. The user may also verify or modify the layout specification by inputting the region modality (such as black and white, gray scale or color), highlighting a specific region, and deleting a region using the same pop-up submenu. The pop-up submenu <b>60</b> is displayed in such way to indicate a current setting of the region, such as by highlighting or deactivating the “photo” and “color” selections for the region type and modality settings, respectively. By specifying the modality of a region, the bit-depth of the region is effectively changed. For example, a black-and-white setting may equate to a 1-bit bit-depth, a gray scale setting may equate to a 8-bit bit-depth, and a color setting may equate to a 24-bit bit-depth. Therefore, by giving the user the ability to change the modality and type of each region, the same image document can be modified to be used for another purpose, which is commonly known as re-purposing.
0027In block <b>40</b> of <figref idref="DRAWINGS">FIG. 2</figref>, if desired, the user may also update the boundaries of the defined regions by selecting the region and then drag the outline of the region boundaries to enlarge or contract the region by a process such as “rubberband boxing.” The user may also modify or specify the margins of the image document by selecting menu items associated with the visible area function, as shown in block <b>42</b>. The visible area of an image document defaults to the entire image, but the user may make the visible area smaller than the entire document image. If the visible area specified by the user is too small to fully enclose any one region in the document, it is automatically expanded to include the full boundaries of all the regions in the document. A click-and-drag method can also be used to modify the visible area of the image document. The user can iteratively and selectively perform the above optional functions and save the document layout definitions, as shown in block <b>44</b>. The process ends in block <b>46</b>.
0028<figref idref="DRAWINGS">FIGS. 3-5</figref> provide additional details on the processes of defining polygonal regions, rectangular regions, and visible areas in the document. <figref idref="DRAWINGS">FIG. 3</figref> is a flowchart of a polygonal region definition process <b>70</b> according to an embodiment of the present invention. Polygonal region definition process <b>70</b> provides a user the ability to generate polygonal region outlines around layout elements in the document. Generally, polygonal regions are regions with non-rectangular boundaries or regions with more complex boundaries. To create a polygonal region, the user may select a create polygon function, and then the user may indicate the vertices of the polygon around the document layout element by successive clicks of the pointing device or mouse on the displayed document in graphic user interface <b>18</b>, as shown in block <b>72</b>. The displayed image of the document is updated continually on the screen to provide a visual feedback of the resulting lines and vertices of the polygonal region. Process <b>70</b> may automatically close the polygonal region, in other words connect the first user-indicated vertex and the last user-indicated vertex, as shown in block <b>74</b>. The user may indicate the completion of the vertices by selecting an appropriate function or by double-clicking when inputting the last vertex. The polygonal region is thus entered by the user.
0029At block <b>76</b>, the boundaries of the generated region are verified to ensure that the enclosed region does not overlap another region in the document and that the boundary lines of the region do not cross each other, for example. A separate and independent region manager <b>77</b> may be selected to enforce the adherence to a region enforcement model. For example, one region enforcement model may specify that no regions may have overlapping boundaries, another region enforcement model may specify that a text region may be overlaid over a background region and that the text is contained completely within the background region, or another region enforcement model may specify a permissible ordering of overlapping regions and what type of layout elements those overlapping regions may contain (commonly termed “multiple z-ordering”), etc. If region irregularities have been detected, an pop-up window containing an error message is displayed. Process <b>70</b> may automatically delete the irregular region(s) or crop or shift regions so that the enforcement models are followed.
0030In block <b>78</b>, the region type and modality and/or other definitions associated with the polygonal region are set to the default values. The default values may be determined a priori by the user or they may be system-wide defaults. A newly-created polygonal region may default to text and black-and-white type and modality values, respectively. These default values can be easily modified by the user to other values, such as described above and shown in <figref idref="DRAWINGS">FIG. 2</figref>. A specification of the polygon region definition is generated, as shown in block <b>80</b>. However, the generation of the polygonal region definition in a particular format, such as eXtensible Markup Language, may be performed when the entire document layout has been completed. The polygonal region can be saved along with the other document layout definitions of the document, as shown in block <b>82</b>. The process ends in block <b>84</b>.
0031<figref idref="DRAWINGS">FIG. 4</figref> is a flowchart of a rectangular region definition process <b>90</b> according to an embodiment of the present invention. A rectangular region is, by definition, a four-sided area with 90° corners. The user may first select a create a rectangular region function, and then indicate, using the pointing device on the graphical user interface, the first corner of the rectangle, as shown in block <b>92</b>. A rubberband box is displayed on the graphical user interface which enables the user to drag or move the opposing corner of the rectangular region in blocks <b>94</b> and <b>96</b>. The boundaries of the resulting rectangular region is displayed in block <b>98</b>. The boundaries of the generated rectangular region is verified by using a region manager to ensure that the resultant regions comply with a region enforcement model <b>101</b>. For example, the region may not be permitted to overlap another region in the document and that the boundary lines of the region should not cross each other in block <b>100</b>. Other examples of region enforcement models comprise a specification that no regions may have overlapping boundaries, a specification that a text region may be overlaid over a background region and that the text is contained completely within the background region, or a specification of permissible ordering of overlapping regions and what type of layout elements those overlapping regions may contain (commonly termed “multiple z-ordering”), etc. If region irregularities have been detected, an pop-up window containing an error message is displayed. Process <b>90</b> may automatically delete the irregular region(s) or crop or shift regions so that the enforcement models are followed. If such irregularities have been detected, an pop-up window containing an error message is displayed.
0032The default characteristics of the newly-created rectangular region may be set to the default values of text and black-and-white type and modality values, respectively, as shown in block <b>102</b>. The newly-created rectangular region definition or the location of the rectangular region is generated and saved, along with other layout definitions of the document, as shown in block <b>104</b>. The process ends in block <b>106</b>.
0033<figref idref="DRAWINGS">FIG. 5</figref> is a flowchart of a visible area definition process <b>110</b> according to an embodiment of the present invention. As described above, the visible area definition specifies the outer boundaries around the edge of the document. In block <b>112</b>, the user invokes the visible area functionality by selecting the create visible area function and indicates the first corner of the visible area. A rubberband box is then displayed in the graphical user interface to enable the user to manipulate the size (width and length) of the visible area, as shown in block <b>114</b>. The user then indicates the location of the opposite corner of the visible area using the pointing device, as shown in block <b>116</b>. The resulting visible area boundaries are displayed, as shown in block <b>118</b>. The visible area so specified is verified, as shown in block <b>120</b>. If the visible area boundaries is too small to fully enclose any one region in the document, its boundaries are automatically expanded to enclose the boundaries of all the regions in the document. The visible area definitions are generated and saved along with other document layout element layout definitions, as shown in block <b>122</b>. The process ends in block <b>124</b>. The visible area layout specification is particularly important in electronic publication applications as it enables the user to specify the margins on the image, and thus the amount of white space around the boundaries of the page.
0034An example of a model for the layout definition specification output of process <b>20</b> is:
0035<tables id="TABLE-US-00001" num="00001"><table frame="none" colsep="0" rowsep="0" pgwide="1"><tgroup align="left" colsep="0" rowsep="0" cols="1"><colspec colname="1" colwidth="266pt" align="left" /><thead><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry><!ELEMENT GroundTruthing (name, version, n_regions, GroundTruthingRegion+, xres,</entry></row><row><entry>yres, width, height)></entry></row><row><entry> <!ELEMENT name (#PCDATA)></entry></row><row><entry> <!ELEMENT version (#PCDATA)></entry></row><row><entry> <!ELEMENT n_regions (#PCDATA)></entry></row><row><entry> <!ELEMENT xres (#PCDATA)></entry></row><row><entry> <!ELEMENT yres (#PCDATA)></entry></row><row><entry> <!ELEMENT width (#PCDATA)></entry></row><row><entry> <!ELEMENT height (#PCDATA)></entry></row><row><entry> <!ELEMENT VisibleArea (left, right, top, bottom)></entry></row><row><entry> <!ELEMENT left (#PCDATA)></entry></row><row><entry> <!ELEMENT right (#PCDATA)></entry></row><row><entry> <!ELEMENT top (#PCDATA)></entry></row><row><entry> <!ELEMENT bottom (#PCDATA)></entry></row><row><entry> </entry></row><row><entry> <!ELEMENT GroundTruthingRegion (bbox, polygon, region_type,</entry></row><row><entry>region_modality)></entry></row><row><entry> <!ELEMENT region_type (#PCDATA)></entry></row><row><entry> </entry></row><row><entry> <!ELEMENT region_modality (#PCDATA)></entry></row><row><entry> </entry></row><row><entry> </entry></row><row><entry> <!ELEMENT bbox (xmin, xmax, ymin, ymax)></entry></row><row><entry> <!ELEMENT xmin (#PCDATA)></entry></row><row><entry> <!ELEMENT xmax (#PCDATA)></entry></row><row><entry> <!ELEMENT ymin (#PCDATA)></entry></row><row><entry> <!ELEMENT ymax (#PCDATA)></entry></row><row><entry> <!ELEMENT polygon (n_vertices, vertex+)></entry></row><row><entry> <!ELEMENT n_vertices (#PCDATA)></entry></row><row><entry> <!ELEMENT vertex (xcoord, ycoord)></entry></row><row><entry> <!ELEMENT xcoord (#PCDATA)></entry></row><row><entry> <!ELEMENT ycoord (#PCDATA)></entry></row><row><entry namest="1" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables><br /> The above represents a model for the ground truthing metadata produced for each image document. The data is represented as integers (int), floating point (double) and enumerated types or strings. The rectangular boundaries are represented as “xmin,” “xmax,” “ymin,” and “ymax,” and the vertices as “vertex(xcoord,ycoord).” The region type and region modality are specified by “region_type” and “region_modality.” The notation “#PCDATA” is replaced by actual data obtained by document analysis. An example of a partial layout definition specification of the exemplary image document shown in <figref idref="DRAWINGS">FIGS. 9 and 10</figref> is shown below:
0036<tables id="TABLE-US-00002" num="00002"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="28pt" align="left" /><colspec colname="1" colwidth="189pt" align="left" /><thead><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry><GroundTruthing></entry></row><row><entry /><entry> <name>Ground Truthing Engine in JAVA</name></entry></row><row><entry /><entry> <version>1.0</version></entry></row><row><entry /><entry> <n_regions>1</n_regions></entry></row><row><entry /><entry> <xres>75</xres></entry></row><row><entry /><entry> <yres>75</yres></entry></row><row><entry /><entry> <width>638</width></entry></row><row><entry /><entry> <height>875</height></entry></row><row><entry /><entry> <VisibleArea></entry></row><row><entry /><entry> <left>0</left></entry></row><row><entry /><entry> <right>638</right></entry></row><row><entry /><entry> <top>0</top></entry></row><row><entry /><entry> <bottom>825</bottom></entry></row><row><entry /><entry> </VisibleArea></entry></row><row><entry /><entry> <GroundTruthingRegion></entry></row><row><entry /><entry> <region_type>PHOTO</region_type></entry></row><row><entry /><entry> <region_modality>BW</region_modality></entry></row><row><entry /><entry> <bbox></entry></row><row><entry /><entry> <xmin>329</xmin></entry></row><row><entry /><entry> <xmax>593</xmax></entry></row><row><entry /><entry> <ymin>45</ymin></entry></row><row><entry /><entry> <ymax>412</ymax></entry></row><row><entry /><entry> </bbox></entry></row><row><entry /><entry> <polygon></entry></row><row><entry /><entry> <n_vertices>5</n_vertices></entry></row><row><entry /><entry> <vertex></entry></row><row><entry /><entry> <xcoord>329</xcoord></entry></row><row><entry /><entry> <ycoord>412</ycoord></entry></row><row><entry /><entry> </vertex></entry></row><row><entry /><entry> <vertex></entry></row><row><entry /><entry> <xcoord>593</xcoord></entry></row><row><entry /><entry> <ycoord>412</ycoord></entry></row><row><entry /><entry> </vertex></entry></row><row><entry /><entry> <vertex></entry></row><row><entry /><entry> <xcoord>593</xcoord></entry></row><row><entry /><entry> <ycoord>45</ycoord></entry></row><row><entry /><entry> </vertex></entry></row><row><entry /><entry> <vertex></entry></row><row><entry /><entry> <xcoord>329</xcoord></entry></row><row><entry /><entry> <ycoord>45</ycoord></entry></row><row><entry /><entry> </vertex></entry></row><row><entry /><entry> <vertex></entry></row><row><entry /><entry> <xcoord>329</xcoord></entry></row><row><entry /><entry> <ycoord>412</ycoord></entry></row><row><entry /><entry> </vertex></entry></row><row><entry /><entry> </polygon></entry></row><row><entry /><entry> </GroundTruthingRegion></entry></row><row><entry /><entry>. . .</entry></row><row><entry /><entry></GroundTruthing></entry></row><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables><br /> It may be seen that one specified region is a region containing a photograph layout element that is to be treated as a black-and-white layout element. Its boundaries and vertices have been defined in X and Y coordinates. Further, the visible area boundaries is also defined in terms of left, right, top and bottom margins. The use of a format such as XML for the layout definition yields many advantages. Image documents may be compared with one another, classified and clustered using the layout definition specification. The layout definition specification may also be provided as input to a print-on-demand system that uses the specification to “proof” its layout and to maintain print quality.
0037There are instances in which a user may desire to specify the size of the image file to limit the amount of memory needed to load the image file or limit the bandwidth needed to transmit the image file over a network to a remote ground truth system. Process <b>140</b> enables the user to specify a smaller size (and thus lower resolution) of the image to use for ground truthing, as shown in <figref idref="DRAWINGS">FIG. 6</figref>. In block <b>142</b>, the user provides the desired image size. For example, the user may specify 1 MB as the desired file size of the image. In block <b>144</b>, the bit depth or the number of bits used to scan or store data of each pixel of the image is determined. The bit depth information may be extracted from the file header of the image file, for example. The image size is then determined, as shown in block <b>146</b>. The image size may be stated in terms of the two dimensions, width and height, of the document in inches for example, and may also be extracted from the file header. The X and Y resolution of the image, in response to the user-specified image size are determined, as shown in block <b>148</b>, by using the following equations:
0038<tables id="TABLE-US-00003" num="00003"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="35pt" align="left" /><colspec colname="1" colwidth="182pt" align="left" /><thead><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>X<sub>RESOLUTION </sub>* Y<sub>RESOLUTION </sub>= IMAGE_SIZE /</entry></row><row><entry /><entry>(BIT_DEPTH * WIDTH * HEIGHT)</entry></row><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables><br /> With all variables to the right of the equal-to sign known, and if the resolution is the same in the X and the Y axes, the X and Y resolution can be computed. The computed resolution may be used to open the image file as well as to transmit the image file across network links to limit the memory size or bandwidth needed to process the image file. The process ends in block <b>150</b>.
0039<figref idref="DRAWINGS">FIG. 7</figref> is a flowchart of a display image file process <b>160</b> according to an embodiment of the invention. Process <b>160</b> may be used so that the entire image document is simultaneously displayed on the screen without requiring the user to scroll or manipulate the display to see all the pixels. In block <b>162</b>, the resolution of the display screen is determined. For example, the display screen resolution may be set to 1024 pixels×768 pixels. The number of pixels occupied by the frame, menu bar, and other layout elements of graphical user interface <b>18</b> (<figref idref="DRAWINGS">FIG. 1</figref>) is determined so that the available space to display the image document is computed in block <b>164</b>. For example, the window frame, tool bars, menu bars and other graphical user interface components may reduce the amount of space available to display the image to 974×668 pixels. The viewed image size is then determined, as shown in block <b>166</b>. The image size may be stated in terms of the two dimensions, width and height, of the document in inches for example, and may also be extracted from the file header. For example, the viewed image size may be 8.5 inches by 11 inches. The maximum resolution available in the X- and Y-axes for viewing the image on the display screen is then computed, and the smaller resolution of the two is selected as the viewing resolution, as shown in block <b>168</b>. The process ends in block <b>170</b>.
0040In the 1024×768 display screen resolution example above, if the space available to display the image after accounting for the graphical user interface is 978×668 pixels, and the size of the image is 8.5 in.×11 in., then the maximum resolution in the Y-axis is 668/11, which equals to 60.7 pixels per inch (PPI). In the X-axis, the maximum resolution is 974/8.5, which equals to 114.6 pixels per inch. Therefore, 60 pixels per inch is the selected resolution to display the image so that it can be viewed on the screen in its entirety. Because the region boundaries are defined in pixels that are easily scaled up or down in resolution, and that a user can choose integer divisor values of the original resolution to scale the boundaries, region boundary information is maintained without blurring.
0041<figref idref="DRAWINGS">FIG. 8</figref> is a flowchart of a snap-to-template process <b>180</b> according to an embodiment of the present invention. snap-to-template process <b>180</b> may be used to conform scanned images to a previously defined image document template in template database <b>19</b> (<figref idref="DRAWINGS">FIG. 1</figref>), which is accessible by system <b>10</b>. Referring to <figref idref="DRAWINGS">FIG. 8</figref>, after the image document has been loaded into random memory accessible by system <b>10</b>, and its layout definitions specified using process <b>20</b> shown in <figref idref="DRAWINGS">FIG. 2</figref> and described above, a search is made in the template database for the closest matching template, as shown in block <b>182</b>. The search results is displayed to the user on the graphical user interface for the user's approval, as shown in block <b>184</b>. If the search yields more than one match, then a list of matches is shown to enable the user to select one to be used in block <b>186</b>. The selected template is then loaded in random memory accessible by system <b>10</b> and its regional definitions may be displayed in the graphical user interface, as shown in block <b>88</b>. As shown in <figref idref="DRAWINGS">FIG. 11</figref>, image document <b>14</b> comprises several text and other graphical layout elements <b>200</b>-<b>206</b>. The best-match template comprises several defined regions <b>210</b>-<b>216</b> that specify the location, type, modality and other properties of the defined regions. It may be seen that because of scanning or other processing, the layout elements of image document <b>14</b> are shifted slightly as compared with the specifications of the best-match template. In block <b>190</b>, the image document elements are “snapped” or conformed to the layout definition specified in the template, cropping, scaling and/or de-skewing the layout elements or document as appropriate. Where the relative or absolute location of the layout elements and/or visible area is offset from the region layout in the template, the location of the layout elements are revised. Where the region type or modality does not match that of the template, it is corrected. The modified image document now has layout elements that conform with the defined regions of the template and the modified image document is saved in memory in block <b>192</b>. The process ends in block <b>194</b>.
0042It may be seen that by using process <b>180</b>, image documents can be standardized in format with very accurate region layout definitions that conform to the standard set forth in a template. The quality of the image documents so processed can be assured so that offset or skewed images can be detected and corrected. Furthermore, the treatment and processing of defined regions may be standardized according to the template.
0043Forms, templates, specialized scanning adapters, and specific re-purposing applications require a high degree of accuracy in layout definition. Embodiments of the present invention are operable to provide a highly accurate layout definition of an image document which specifies the location of layout elements in the image document, and their respective types and modalities. The present invention is operable to accept user input of region specification as well as using automatic segmentation and classification analysis. The user may input the boundaries of the regions easily by clicking on a region or by defining the boundaries of the region using the graphical user interface. The layout definition output in eXtensible Markup Language format can be easily manipulated, processed, or used by other applications. The layout definition output may also be used as a image document template that can be used to conform subsequent image documents as to the location of the regions and visible areas as well as the region type and modality. The use of a region management models also enables a user to conform the image document regions to the selected model. Further, the present invention enables a user to process a lower-resolution version of the image document to save on memory usage, processing resources and/or transmission bandwidth.
Contents5
8 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2007168859A1 | Cited by | United States of America | Pre-grant |
| US7787158B2 | Cited by | United States of America | Search report |
| US7707495B2 | Cited by | United States of America | Search report |
| US2011064304A1 | Cited by | United States of America | Pre-grant |
| US8300952B2 | Cited by | United States of America | Search report |
| US9092745B2 | Cited by | United States of America | Applicant |
| US7941008B2 | Cited by | United States of America | Search report |
| US8878874B2 | Cited by | United States of America | Search report |
| US8682075B2 | Cited by | United States of America | Applicant |
| US12045244B1 | Cited by | United States of America | Applicant |
| US2005232493A1 | Cited by | United States of America | Pre-grant |
| US9413477B2 | Cited by | United States of America | Applicant |
| US2007256010A1 | Cited by | United States of America | Pre-grant |
| US10861104B1 | Cited by | United States of America | Applicant |
| US9477853B2 | Cited by | United States of America | Search report |
| US2006156227A1 | Cited by | United States of America | Pre-grant |
| US9367523B2 | Cited by | United States of America | Search report |
| US2008144970A1 | Cited by | United States of America | Pre-grant |
| US8693070B2 | Cited by | United States of America | Search report |
| US2012008821A1 | Cited by | United States of America | Pre-grant |
| US9563830B2 | Cited by | United States of America | Applicant |
| US11238118B2 | Cited by | United States of America | Applicant |
| US8538941B2 | Cited by | United States of America | Applicant |
| US10229209B2 | Cited by | United States of America | Applicant |
| US2013128321A1 | Cited by | United States of America | Pre-grant |
| US7756333B2 | Cited by | United States of America | Search report |
| US7770109B2 | Cited by | United States of America | Search report |
| US9613327B2 | Cited by | United States of America | Applicant |
| US10049410B2 | Cited by | United States of America | Applicant |
| US8542398B2 | Cited by | United States of America | Applicant |
| US2012281919A1 | Cited by | United States of America | Pre-grant |
| US9311708B2 | Cited by | United States of America | Applicant |
| US11004158B2 | Cited by | United States of America | Applicant |
| US8351069B2 | Cited by | United States of America | Applicant |
| US2006170984A1 | Cited by | United States of America | Pre-grant |
| US9508011B2 | Cited by | United States of America | Search report |
| US10453151B2 | Cited by | United States of America | Applicant |
| US8023768B2 | Cited by | United States of America | Applicant |
| US8904284B2 | Cited by | United States of America | Applicant |
| US9165391B2 | Cited by | United States of America | Applicant |
| US2011148925A1 | Cited by | United States of America | Pre-grant |
| US2013124968A1 | Cited by | United States of America | Pre-grant |
| US2010225941A1 | Cited by | United States of America | Pre-grant |
| US12591584B1 | Cited by | United States of America | Applicant |
| US9734132B1 | Cited by | United States of America | Search report |
| US10089388B2 | Cited by | United States of America | Search report |
| US2014191027A1 | Cited by | United States of America | Pre-grant |
| US10318582B2 | Cited by | United States of America | Applicant |
| US8406566B1 | Cited by | United States of America | Applicant |
| US7831108B2 | Cited by | United States of America | Search report |
| US10204143B1 | Cited by | United States of America | Applicant |
| US2002152245A1 | Cites | United States of America | Search report |
| US2003103071A1 | Cites | United States of America | Search report |
| US2004013302A1 | Cites | United States of America | Search report |
| US4823395A | Cites | United States of America | Search report |
| US5123062A | Cites | United States of America | Search report |
| US5159667A | Cites | United States of America | Search report |
| US5296939A | Cites | United States of America | Search report |
| US5317680A | Cites | United States of America | Applicant |
| US5416849A | Cites | United States of America | Search report |
| US5465304A | Cites | United States of America | Search report |
| US5555362A | Cites | United States of America | Search report |
| US5592576A | Cites | United States of America | Search report |
| US5596655A | Cites | United States of America | Applicant |
| US5682540A | Cites | United States of America | Search report |
| US5764866A | Cites | United States of America | Search report |
| US5767978A | Cites | United States of America | Search report |
| US5768333A | Cites | United States of America | Search report |
| US5815595A | Cites | United States of America | Search report |
| US5818976A | Cites | United States of America | Search report |
| US5822454A | Cites | United States of America | Search report |
| US5848184A | Cites | United States of America | Search report |
| US5887082A | Cites | United States of America | Search report |
| US5893127A | Cites | United States of America | Search report |
| US5901253A | Cites | United States of America | Search report |
| US5978519A | Cites | United States of America | Search report |
| US5999664A | Cites | United States of America | Search report |
| US6047251A | Cites | United States of America | Search report |
| US6078697A | Cites | United States of America | Search report |
| US6151426A | Cites | United States of America | Applicant |
| US6163623A | Cites | United States of America | Search report |
| US6252677B1 | Cites | United States of America | Search report |
| US6252985B1 | Cites | United States of America | Search report |
| US6263122B1 | Cites | United States of America | Search report |
| US6377703B1 | Cites | United States of America | Search report |
| US6385351B1 | Cites | United States of America | Search report |
| US6400845B1 | Cites | United States of America | Search report |
| US6446099B1 | Cites | United States of America | Search report |
| US6459499B1 | Cites | United States of America | Search report |
| US6466954B1 | Cites | United States of America | Search report |
| US6594030B1 | Cites | United States of America | Search report |
| US6674901B1 | Cites | United States of America | Search report |
| US6683984B1 | Cites | United States of America | Search report |
| US6735740B2 | Cites | United States of America | Search report |
| US6751780B1 | Cites | United States of America | Search report |
| US6768816B2 | Cites | United States of America | Search report |
| US6778703B1 | Cites | United States of America | Search report |
| US6865576B1 | Cites | United States of America | Search report |
| US6957384B2 | Cites | United States of America | Search report |
| US7054509B2 | Cites | United States of America | Search report |
5 members in 3 offices
Members5
| Document | Office | Kind | |
|---|---|---|---|
| GB0421543D0 | United Kingdom | D0 | |
| GB2406674A | United Kingdom | A | |
| US2005076295A1 | United States of America | A1 | |
| DE102004028155A1 | Germany | A1 | |
| US7424672B2This record | United States of America | B2 |
66 transactions on the USPTO file
Allowed after 3 non-final rejections, 2 final rejections and 1 RCE.
- Non-final rejections
- 3
- Final rejections
- 2
- RCEs
- 1
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Expire PatentEXP. | EXP. | |
| Maintenance Fee Reminder MailedREM. | REM. | |
| Correspondence Address ChangeC.ADB | C.ADB | |
| Post Issue Communication - Certificate of CorrectionN423 | N423 | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Supplemental Papers - Oath or DeclarationC600 | C600 | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Final ActionA.NE | A.NE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Miscellaneous Incoming LetterLET. | LET. | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Correspondence Address ChangeC.ADB | C.ADB | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Return from OIPEWROIPE | WROIPE | |
| Application Return TO OIPEROIPE | ROIPE | |
| Application Is Now CompleteCOMP | COMP | |
| Application Is Now CompleteCOMP | COMP | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Cleared by OIPE CSRL194 | L194 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
9 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Lapsed due to failure to pay maintenance feeLapsedFP | FP | |
| Lapse for failure to pay maintenance feesLapsedPATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYLAPS | LAPS | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Fee payment procedureMAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| Fee paymentFPAY | FPAY | |
| Fee paymentFPAY | FPAY | |
| Certificate of correctionCC | CC | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS |
Numbers
- Publication
- 7424672
- Application
- 10679154
Titles
- English
- System and method of specifying image document layout definition
Patent term adjustment
- A delay
- +474 daysthe office missed an examination deadline
- Applicant delay
- −82 days
- Net adjustment
- 392 days
Classification
- CPC, 4
- G06T11/60
- G06V30/40
- G06V30/10
- G06V30/1444
- IPC, 6
- G06F17 00
- G06F17 21
- G06F17 30
- G06T11 60
- G06V30 10
- G06V30 40