IP Library Granted Patent US 9,552,527
Granted Patent B1
US 9,552,527 · App. 14/837,766 · Granted Jan 24, 2017

Apparatus, method, and computer-readable storage medium for determining a rotation angle of text

Inventors: Moe Daher (Charlotte, NC); Waseem Shadid (Charlotte, NC)
Assignee: LEAD TECHNOLOGIES, INC.
G06K9/3283G06K9/18G06K9/3208G06K9/348
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,552,527
App. No.
14/837,766
Granted
Jan 24, 2017
Kind
B1
Abstract

An apparatus, method, and computer-readable storage medium for determining a rotation angle of text. The method includes computing, for each object of a plurality of objects included in text within an image, a distance to a closest neighboring object, computing an average distance of the distances to the closest neighboring objects, determining a ratio between the average distance and an average font stroke width, the average font stroke width being an average of a font stroke width of each of the plurality of objects, and determining a rotation angle of the text by comparing the ratio to a threshold value.

Claims (60)

1. An apparatus for determining a rotation angle of text within an image, the apparatus comprising:

circuitry configured to

compute, for each object of a plurality of objects included in the text, a distance to a closest neighboring object,

compute an average distance of the distances to the closest neighboring objects,

determine a ratio between the average distance and an average font stroke width, the average font stroke width being an average of a font stroke width of each of the plurality of objects, and

determine the rotation angle of the text by comparing the ratio to a threshold value.

2. The apparatus of claim 1 , wherein

the circuitry is further configured to determine a bounding rectangle for each object, the bounding rectangle surrounding the respective object and contacting outer-most portions of the respective object, and

the circuitry computes the distance to the closest neighboring object by calculating the distance of the respective bounding rectangle to a closest neighboring bounding rectangle.

3. The apparatus of claim 1 , wherein the circuitry is further configured to

determine, for each object, an object area that corresponds to an entire printed area of the respective object within the image,

determine, for each object, an object perimeter that corresponds to a perimeter of the respective object, and

compute the font stroke width for each object by dividing the object area by the object perimeter and multiplying by 2.

4. The apparatus of claim 3 , wherein the circuitry is further configured to compute the average font stroke width by dividing a sum of the font stroke widths of the plurality of objects by the total number of the plurality of objects.

5. The apparatus of claim 1 , wherein the circuitry is further configured to, prior to computing the distance to the closest neighboring object for each object,

determine one or more text blocks of the text within the image, each text block including a plurality of objects,

determine, for each text block, whether the text block has a vertical orientation or a horizontal orientation, and

compute the distance to the closest neighboring object for each object in a text block, in response to determining that the text block has a vertical orientation.

6. A method comprising:

computing, for each object of a plurality of objects included in text within an image, a distance to a closest neighboring object;

computing an average distance of the distances to the closest neighboring objects;

determining a ratio between the average distance and an average font stroke width, the average font stroke width being an average of a font stroke width of each of the plurality of objects; and

determining a rotation angle of the text by comparing the ratio to a threshold value.

7. The method of claim 6 , further comprising:

determining a bounding rectangle for each object, the bounding rectangle surrounding the respective object and contacting outer-most portions of the respective object, wherein

the computing of the distance to the closest neighboring object is performed by calculating the distance of the respective bounding rectangle to a closest neighboring bounding rectangle.

8. The method of claim 6 , further comprising:

determining, for each object, an object area that corresponds to an entire printed area of the respective object within the image;

determining, for each object, an object perimeter that corresponds to a perimeter of the respective object; and

computing the font stroke width for each object by dividing the object area by the object perimeter and multiplying by 2.

9. The method of claim 8 , further comprising:

computing the average font stroke width by dividing a sum of the font stroke widths of the plurality of objects by the total number of the plurality of objects.

10. The method of claim 6 , further comprising:

prior to the computing of the distance to the closest neighboring object for each object,

determining one or more text blocks of the text within the image, each text block including a plurality of objects;

determining, for each text block, whether the text block has a vertical orientation or a horizontal orientation; and

computing the distance to the closest neighboring object for each object in a text block, in response to determining that the text block has a vertical orientation.

11. The method of claim 6 , further comprising:

performing optical character recognition (OCR) on the text after the determining of the rotation angle of the text.

12. A non-transitory computer-readable storage medium including computer executable instructions, wherein the instructions, when executed by a computer, cause the computer to perform a method, the method comprising:

computing, for each object of a plurality of objects included in text within an image, a distance to a closest neighboring object;

computing an average distance of the distances to the closest neighboring objects;

determining a ratio between the average distance and an average font stroke width, the average font stroke width being an average of a font stroke width of each of the plurality of objects; and

determining a rotation angle of the text by comparing the ratio to a threshold value.

13. The non-transitory computer-readable storage medium of claim 12 , further comprising:

determining a bounding rectangle for each object, the bounding rectangle surrounding the respective object and contacting outer-most portions of the respective object, wherein

the computing of the distance to the closest neighboring object is performed by calculating the distance of the respective bounding rectangle to a closest neighboring bounding rectangle.

14. The non-transitory computer-readable storage medium of claim 12 , further comprising:

determining, for each object, an object area that corresponds to an entire printed area of the respective object within the image;

determining, for each object, an object perimeter that corresponds to a perimeter of the respective object; and

computing the font stroke width for each object by dividing the object area by the object perimeter and multiplying by 2.

15. The non-transitory computer-readable storage medium of claim 14 , further comprising:

computing the average font stroke width by dividing a sum of the font stroke widths of the plurality of objects by the total number of the plurality of objects.

16. The non-transitory computer-readable storage medium of claim 12 , further comprising:

prior to the computing computing the distance to the closest neighboring object for each object,

determining one or more text blocks of the text within the image, each text block including a plurality of objects;

determining, for each text block, whether the text block has a vertical orientation or a horizontal orientation; and

computing the distance to the closest neighboring object for each object in a text block, in response to determining that the text block has a vertical orientation.

17. The non-transitory computer-readable storage medium of claim 12 , further comprising:

performing optical character recognition (OCR) on the text after the determining of the rotation angle of the text.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Jun 27, 2025
From: MS PRIVATE CREDIT ADMINISTRATIVE SERVICES LLC, AS COLLATERAL AGENT
To: APRYSE SOFTWARE CORP.
Reel/Frame 071549/0611 →
SECURITY INTEREST Recorded Jun 26, 2025
From: APRYSE SOFTWARE CORP.
To: MS PRIVATE CREDIT ADMINISTRATIVE SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 071528/0138 →
MERGER Recorded Jan 10, 2025
From: LEAD TECHNOLOGIES, INC.
To: APRYSE SOFTWARE CORP.
Reel/Frame 069821/0641 →
SECURITY INTEREST Recorded Mar 13, 2024
From: LEAD TECHNOLOGIES, INC.
To: MS PRIVATE CREDIT ADMINISTRATIVE SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 066752/0778 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2015
From: DAHER, MOE; SHADID, WASEEM
To: LEAD TECHNOLOGIES, INC.
Reel/Frame 036444/0995 →