IP Library › Granted Patent US 9,842,251
Granted Patent B2
US 9,842,251 · App. 15/011,220 · Granted Dec 12, 2017

Bulleted lists

Inventor: Jason James Grams (Westminster, CO)
Assignee: Konica Minolta Laboratory U.S.A., Inc.
G06K9/00463G06K9/4604G06T7/0081G06T7/0085G06K2009/4666G06T2207/20148G06T2207/30176
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,842,251
App. No.
15/011,220
Filed
Jan 29, 2016
Granted
Dec 12, 2017
Kind
B2
Art Unit
2665
USPC
382/199
Abstract

A method for image processing by: obtaining an original image including a bulleted list; determining a list bounding box enclosing the bulleted list; determining line bounding boxes nested within the list bounding box enclosing lines of the bulleted list; identifying bullets based on the line bounding boxes; identifying indentations based on the bullets; and generating a bulleted list object for the bulleted list in the original image based on the indentations.

Claims (80)

1. A method for image processing, comprising:

obtaining an original image comprising a bulleted list;

determining a list bounding box enclosing the bulleted list by:

generating a first binary image based on the original image;

generating a first transformed image by applying a first dilate and erode (DE) operation comprising a first structuring element to the first binary image;

identifying a first plurality of contours in the first transformed image; and

identifying a region in the transformed image comprising a first cardinality of contours that exceeds a first contour threshold;

determining a plurality of line bounding boxes nested within the list bounding box enclosing a plurality of lines of the bulleted list;

identifying a plurality of bullets based on the plurality of line bounding boxes;

identifying a plurality of indentations based on the plurality of bullets; and

generating a bulleted list object for the bulleted list in the original image based on the plurality of indentations.

2. The method of claim 1 , wherein generating the first binary image comprises:

generating a gradient image for the original image; and

applying a thresholding operation to the gradient image.

3. The method of claim 1 , wherein determining the plurality of line bounding boxes comprises:

generating a second transformed image by applying a second dilate and erode (DE) operation comprising a second structuring element to the first binary image, wherein the second structuring element is smaller than the first structuring element;

identifying a second plurality of contours in a region of the second transformed image corresponding to the list bounding box; and

identifying an area in the region of the second transformed image comprising a second cardinality of contours that exceeds a second contour threshold.

4. The method of claim 1 , wherein identifying the plurality of bullets comprises:

generating a transformed image by applying a dilate and erode (DE) operation comprising a number of dilate iterations and a number of erode iterations to at least one selected from a group consisting of the first binary image and a second binary image generated from the original image, wherein the number of dilate iterations exceeds the number of erode operations;

selecting a line bounding box of the plurality of line bounding boxes;

identifying a starting intra-line bounding box and an intermediate intra-line bounding box for the line bounding box; and

designating content within the starting intra-line bounding box as a bullet based on a comparison comprising a dimension of the starting intra-line bounding box.

5. The method of claim 4 , wherein the dimension is a height of the starting intra-line bounding box, and wherein the comparison is between the dimension and half the height of the line bounding box.

6. The method of claim 4 , wherein the dimension is half of the width of the starting intra-line bounding box, and wherein the comparison is between the dimension and a spacing between the starting intra-line bounding box and the intermediate intra-line bounding box.

7. The method of claim 1 , wherein identifying the plurality of indentations comprises:

obtaining a plurality of starting intra-line bounding boxes comprising a plurality of horizontal positions;

determining a subset of the plurality of horizontal positions are within a predetermined distance of each other; and

consolidating the subset of the plurality of horizontal positions.

8. A non-transitory computer readable medium (CRM) storing computer readable program code embodied therein that:

obtains an original image comprising a bulleted list;

determines a list bounding box enclosing the bulleted list by:

generating a first binary image based on the original image;

generating a first transformed image by applying a first dilate and erode (DE) operation comprising a first structuring element to the first binary image;

identifying a first plurality of contours in the first transformed image; and

identifying a region in the transformed image comprising a first cardinality of contours that exceeds a first contour threshold;

determines a plurality of line bounding boxes nested within the list bounding box enclosing a plurality of lines of the bulleted list;

identifies a plurality of bullets based on the plurality of line bounding boxes;

identifies a plurality of indentations based on the plurality of bullets; and

generates a bulleted list object for the bulleted list in the original image based on the plurality of indentations.

9. The non-transitory CRM of claim 8 , wherein determining the plurality of line bounding boxes comprises:

generating a second transformed image by applying a second dilate and erode (DE) operation comprising a second structuring element to the first binary image, wherein the second structuring element is smaller than the first structuring element;

identifying a second plurality of contours in a region of the second transformed image corresponding to the list bounding box; and

identifying an area in the region of the second transformed image comprising a second cardinality of contours that exceeds a second contour threshold.

10. The non-transitory CRM of claim 8 , wherein identifying the plurality of bullets comprises:

generating a transformed image by applying a dilate and erode (DE) operation comprising a number of dilate iterations and a number of erode iterations to at least one selected from a group consisting of the first binary image and a second binary image generated from the original image, wherein the number of dilate iterations exceeds the number of erode operations;

selecting a line bounding box of the plurality of line bounding boxes;

identifying a starting intra-line bounding box and an intermediate intra-line bounding box for the line bounding box; and

designating content within the starting intra-line bounding box as a bullet based on a comparison comprising a dimension of the starting intra-line bounding box.

11. The non-transitory CRM of claim 10 , wherein the dimension is a height of the starting intra-line bounding box, and wherein the comparison is between the dimension and half the height of the line bounding box.

12. The non-transitory CRM of claim 10 , wherein the dimension is half of the width of the starting intra-line bounding box, and wherein the comparison is between the dimension and a spacing between the starting intra-line bounding box and the intermediate intra-line bounding box.

13. The non-transitory CRM of claim 8 , wherein identifying the plurality of indentations comprises:

obtaining a plurality of starting intra-line bounding boxes comprising a plurality of horizontal positions;

determining a subset of the plurality of horizontal positions are within a predetermined distance of each other; and

consolidating the subset of the plurality of horizontal positions.

14. A system for image processing, comprising:

a memory; and

a computer processor connected to the memory that:

determines a list bounding box enclosing the bulleted list by:

generating a first binary image based on the original image;

generating a first transformed image by applying a first dilate and erode (DE) operation comprising a first structuring element to the first binary image;

identifying a first plurality of contours in the first transformed image; and

identifying a region in the transformed image comprising a first cardinality of contours that exceeds a first contour threshold;

determines a plurality of line bounding boxes nested within the list bounding box enclosing a plurality of lines of the bulleted list;

identifies a plurality of bullets based on the plurality of line bounding boxes;

identifies a plurality of indentations based on the plurality of bullets; and

generates a bulleted list object for the bulleted list in the original image based on the plurality of indentations.

15. The system of claim 14 , wherein the bounding box generator determines determining the plurality of line bounding boxes comprises:

generating a second transformed image by applying a second dilate and erode (DE) operation comprising a second structuring element to the first binary image, wherein the second structuring element is smaller than the first structuring element;

identifying a second plurality of contours in a region of the second transformed image corresponding to the list bounding box; and

identifying an area in the region of the second transformed image comprising a second cardinality of contours that exceeds a second contour threshold.

16. The system of claim 14 , wherein identifying the plurality of bullets comprises:

generating a transformed image by applying a dilate and erode (DE) operation comprising a number of dilate iterations and a number of erode iterations to at least one selected from a group consisting of the first binary image and a second binary image generated from the original image, wherein the number of dilate iterations exceeds the number of erode operations;

selecting a line bounding box of the plurality of line bounding boxes;

identifying a starting intra-line bounding box and an intermediate intra-line bounding box for the line bounding box; and

designating content within the starting intra-line bounding box as a bullet based on a comparison comprising a dimension of the starting intra-line bounding box.

17. The system of claim 14 , wherein identifying the plurality of indentations comprises:

obtaining a plurality of starting intra-line bounding boxes comprising a plurality of horizontal positions;

determining a subset of the plurality of horizontal positions are within a predetermined distance of each other; and

consolidating the subset of the plurality of horizontal positions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2016
From: GRAMS, JASON JAMES
To: KONICA MINOLTA LABORATORY U.S.A., INC.
Reel/Frame 037658/0598 →
Continuity (1)
Related Publication 20170220859A1 · Aug 3, 2017