IP Library Granted Patent US 12664604
Granted Patent B2
US 12664604 · App. 18/251,687 · Granted Jun 23, 2026

System and method for high-throughput image processing

Inventors: Lucas Santos Ferreira (Lund, SE); Patrik Persson (Lund, SE); Steffen Malkowsky (Lund, SE); Liang Liu (Södra Sandby, SE); Karl Åström (Lund, SE)
Assignees: Lucas Santos Ferreira; Patrik Persson; Steffen Malkowsky; Liang Liu; Karl Åström
G06T1/60G06F12/0207G06F2212/1024
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 12664604
App. No.
18/251,687
Granted
Jun 23, 2026
Kind
B2
Abstract

An image processing method including allocating a plurality of memory banks. Each memory bank includes a plurality of memory bank rows. The image is divided into a plurality of tags, wherein each tag has tag rows, each tag row has a plurality of pixels, and each tag row is consecutively distributed over different memory banks such that each tag row of the tag is accessible to be read out from the memory banks simultaneously. The consecutive distribution of the tag rows is performed by distributing the tag rows (r) in order starting from a first tag row (r) and to the memory banks (b) in order starting at the first memory bank (b), until all tag rows (r) have been distributed.

Claims (19)

1 . An image processing method, the method comprising:

allocating (S 1010 ) a plurality of memory banks (b), wherein each memory bank (b) comprises a plurality of memory bank rows (d);

dividing (S 1020 ) an image into a plurality of tags (t), such that a width of the image is divided into several of the tags (t), wherein each tag (t) comprises tag rows (r), and each tag row (r) comprises a plurality of pixels (p);

consecutively distributing (S 1030 ) each tag row (r) over different memory banks (b) such that each tag row (r) of the tag (t) is accessible to be read out from the memory banks (b) simultaneously;

wherein the consecutive distribution of the tag rows is performed by distributing the tag rows (r) in order starting from a first tag row (r) and to the memory banks (b) in order starting at a first memory bank (b), until all tag rows (r) have been distributed; and

performing a readout (S 2010 ) of the image 100 by sorting out specified pixel information in a requested reading pattern ( 201 ) of the tag (t) stored in the different memory banks (b), wherein the requested reading pattern comprises a geometric arrangement of a subset of the pixels.

2 . The image processing method according to claim 1 , wherein each memory bank row (d) comprises a tag index T(t,r), tag row offset, and a byte offset.

3 . The image processing method according to claim 1 , wherein the step of performing a readout (S 2010 ) comprises accessing the memory banks (b) by at least one port (q) connected to the memory banks (b) such that at least one memory bank row (d) can be read out simultaneously.

4 . The image processing method according to claim 1 , wherein the geometric arrangement comprises a binary robust independent elementary features (BRIEF) access pattern.

5 . The image processing method according to claim 1 , wherein the geometric arrangement comprises a Bresenham circle.

6 . A system for processing an image ( 300 ), comprising:

a plurality of memory banks (b), wherein each memory bank (b) comprises memory bank rows (d);

an image controller ( 400 ) configured to divide an image into a plurality of tags (t), such that a width of the image is divided into several of the tags (t), wherein each tag (t) comprises tag rows (r), and each tag row (r) comprises a plurality of pixels (p), and consecutively distributing each tag row (r) over different memory banks (b) such that each tag row (r) of the tag (t) is accessible to be read out from the memory banks (b) simultaneously;

wherein the image controller ( 400 ) is further configured to distribute the tag rows (r) in order starting from a first tag row (r) and to the memory banks (b) in order starting at a first memory bank (b), until all tag rows (r) have been distributed; and

a shuffling network ( 320 ) configured to readout specified pixel information in a requested reading pattern ( 201 ) of the tag (t) stored in the different memory banks (b), wherein the requested reading pattern comprises a geometric arrangement of a subset of the pixels.

7 . The system according to claim 6 , the system further comprising an address generation unit ( 310 ) configured to assign each memory bank row (d) a tag index T(t,r), a tag row offset and a byte offset.

8 . The system according to claim 6 , the system further comprising at least one port connected to each memory bank such that at least one memory bank row (d) can be read out simultaneously.

9 . The system according to claim 6 , wherein the geometric arrangement comprises a binary robust independent elementary features (BRIEF) access pattern.

10 . The system according to claim 6 , wherein the geometric arrangement comprises a Bresenham circle.