IP Library Granted Patent US 10,264,267
Granted Patent B2
US 10,264,267 · App. 15/485,315 · Granted Apr 16, 2019

Method for compressing image data and image data compressing system

Inventors: Yi-Chin Huang (Hsinchu Hsien, TW); Yi-Shin Tung (Hsinchu Hsien, TW)
Assignee: MSTAR SEMICONDUCTOR, INC.
H04N19/146H04N19/132H04N19/15H04N19/176H04N19/184
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 10,264,267
App. No.
15/485,315
Granted
Apr 16, 2019
Kind
B2
Abstract

A method for compressing image data is provided. The image data includes a file to be compressed, which includes N blocks to be compressed. The method includes: setting a target data increment of each of the N blocks of the file according to a 0 th accumulated target data size and an N th accumulated target data size; before compressing an n th block, calculating an (n−1) th accumulated target data size of an (n−1) th block according to the 0 th accumulated target data size and the target data increment; when a difference between an (n−1) th accumulated compressed data size and the (n−1) th accumulated target data size is smaller than a predetermined threshold, removing X least significant bit(s) of a plurality of sets of data in the n th block to generate an updated n th block; and compressing the updated n th block to generate a compressed n th block.

Claims (35)

1. A method for compressing image data, comprising:

setting a target data increment of each of N blocks that need to be compressed of an image to be compressed according to a 0 th accumulated target data size and an N th accumulated target data size;

before compressing an n th block among the N blocks, calculating an (n−1) th accumulated compressed data size of an (n−1) th block among the N blocks;

calculating an (n−1) th accumulated target data size of the (n−1) th block according to the 0th accumulated target data size and the target data increment;

removing X least significant bit(s) of a plurality of sets of data in the n th block when a difference between the (n−1) th accumulated compressed data size and the (n−1) th accumulated target data size is smaller than a first predetermined threshold to generate an updated n th block; and

compressing the updated n th block to generate a compressed n th block;

wherein, N and X are finite positive integers, and n is a finite positive integer not greater than N.

2. The method according to claim 1 , further comprising:

before an m th block among the N blocks is compressed, calculating an (m−1) th accumulated compressed data size of an (m−1) th block among the N blocks;

calculating an (m−1) th accumulated target data size of the (m−1) th block according to the 0 th accumulated target data size and the target data increment;

removing Y least significant bit(s) of a plurality of sets of data in the m th block when a difference between the (m−1) th accumulated compressed data size and the (m−1) th accumulated target data size is greater than the first threshold but smaller than a second threshold to generate an updated m th block; and

compressing the updated m th block to generate a compressed m th block;

wherein, the second predetermined threshold is greater than the first predetermined threshold, Y is a finite positive integer smaller than X, and m is a finite positive integer not greater than N and different from n.

3. The method according to claim 2 , wherein X is 2 and Y is 1.

4. The method according to claim 1 , wherein 0 th accumulated target data size is greater than the first predetermined threshold.

5. The method according to claim 1 , further comprising updating the 0 th accumulated target data size according to compression archives of each of the blocks that needs to be compressed.

6. The method according to claim 1 , wherein the N th accumulated target data size is a total data size divided by a target compression rate.

7. An image data compressing system, comprising:

a compressor, compressing an image to be compressed according to a predetermined compression algorithm, wherein data of the image comprises N blocks that need to be compressed; and

a compression rate control circuit, coupled to the compressing module, comprising:

a compressed data accumulator, calculating an (n−1) th accumulated compressed data size of an (n−1) th block among the N blocks before an n th block among the N blocks is compressed according to a block compressed data size that the compressing module generates after compressing the (n−1) th block;

a target data accumulator, calculating an (n−1) th accumulated target data size of the (n−1) th block according to a 0 th accumulated target data size and a target data increment of each of the blocks; and

a comparator, outputting a first compression control signal to the compressing module when a difference between the (n−1) th accumulated compressed data size and the (n−1) th accumulated target data size is smaller than a first predetermined threshold;

wherein, the compressing module further removes X least significant bit(s) of a plurality of sets of data in the n th block to generate an updated n th block when receiving the first compression control signal, and compresses the updated n th block to generate a compressed n th block; and

N and X are finite positive integers, and n is a finite positive integer not greater than N.

8. The image data compressing system according to claim 7 , wherein:

the compressed data accumulator further calculates an (m−1) th accumulated compressed data size of an (m−1) th block among the N blocks before an m th block among the N blocks is compressed;

the target data accumulator further calculates an (m−1) th accumulated target data size of the (m−1) th block according to the 0 th accumulated target data size and the target data increment;

the comparator further outputs a second compression control signal to the compressing module when a difference between the (m−1) th accumulated compressed data size and the (m−1) th accumulated target data size is greater than the first threshold but smaller than a second threshold;

the compressor further removes Y least significant bit(s) of a plurality of sets of data in the m th block when the second compression control signal is received to generate an updated m th block, and compresses the updated m th block to generate an compressed m th block; and

the second predetermined threshold is greater than the first predetermined threshold, m is a finite positive integer not greater than N and different from n, and Y is a finite positive integer smaller than X.

9. The image data compressing system according to claim 8 , wherein X is 2 and Y is 1.

10. The image data compressing system according to claim 7 , wherein 0 th accumulated target data size is greater than the first predetermined threshold.

11. The image data compressing system according to claim 7 , wherein the compression rate control circuit further updates the 0 th accumulated target data size according to compression archives of each of the blocks that needs to be compressed.

12. The image data compressing system according to claim 7 , wherein the N th accumulated target data size is a total data size divided by a target compression rate.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2021
From: MEDIATEK INC.
To: XUESHAN TECHNOLOGIES INC.
Reel/Frame 056593/0167 →
MERGER Recorded Oct 8, 2019
From: MSTAR SEMICONDUCTOR, INC.
To: MEDIATEK INC.
Reel/Frame 050665/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2017
From: HUANG, YI-CHIN; TUNG, YI-SHIN
To: MSTAR SEMICONDUCTOR, INC.
Reel/Frame 041982/0937 →
Priority Claims (1)
TW 105117731 A · Jun 4, 2016 · national
Continuity (1)
Related Publication 20170353728A1 · Dec 7, 2017