Image processing system
First Claim
1. An interblock distortion removal filter used in a process of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page, said filter comprising;
a first memory for storing first video data of M lines decoded along a predetermined direction of an image;
a second memory for storing second video data of another M lines adjacent to said first video data, said first and second memory having a combined memory capacity that is less than what is required for storing an image of the entire screen page; and
a computing element for reading out video data of a first line in said second memory or said first memory while reading out video data of a last line in said first memory or said second memory and executing a predetermined filtering process between said video data of the first line and said video data of the last line.
0 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides an image decoding and reconstruction system for successively reading out and decoding compression video data constituting one screen page and reconstructing an image with a memory of a small capacity. The system of the invention divides an image of one screen page into 8x8-pixel blocks, compresses video data by discrete cosine transform, successively reads data in the unit of a 2×2 matrix of the 8×8-pixel blocks, and stores the video data along horizontal scanning lines in one of two memories while reading other video data previously stored along the scanning lines out of the other memory. The invention also provides an interblock distortion removal filter for eliminating interblock distortions due to orthogonal transform. The filter eliminates interblock distortions generated on the boundary between vertically adjacent blocks in each 16-line data area before writing video data in the memory, and eliminates distortions between horizontally adjacent blocks in the data area when reading video data out of the memory. The filter also eliminates interblock distortions on the boundary between adjacent 16-line data areas by reading last line data of a first block out of one memory while reading first line data of a second block out of the other memory.
-
Citations
11 Claims
-
1. An interblock distortion removal filter used in a process of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page, said filter comprising;
a first memory for storing first video data of M lines decoded along a predetermined direction of an image;
a second memory for storing second video data of another M lines adjacent to said first video data, said first and second memory having a combined memory capacity that is less than what is required for storing an image of the entire screen page; and
a computing element for reading out video data of a first line in said second memory or said first memory while reading out video data of a last line in said first memory or said second memory and executing a predetermined filtering process between said video data of the first line and said video data of the last line.
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page, said filter comprising;
-
2. An interblock distortion removal filter used in a process of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page;
decoded video data being treated in a standard unit of m blocks along a predetermined direction of an image by at least two lines, m representing an integer equal to or greater than one;
said filter comprising;
reading means for reading said video data by each block where a columnar direction perpendicular to said predetermined direction is determined as a preferential reading direction;
last line data memory means for, while said reading means reading video data corresponding to a certain block and a next block adjacent to each other along said columnar direction, storing data of a last line of said certain block; and
a computing element for, while said reading means reading data of a first line of said next block, executing a predetermined filter operation in a pixel unit between said data of the first line of said next block and said data of the last line of said certain block stored in said last line data memory means. - View Dependent Claims (6, 7)
terminal data memory means for, while reading video data of each line successively out of said first memory or said second memory, storing terminal data of each line of N pixels within each of said M×
N-pixel blocks in a direction of said m blocks; and
a third computing element for, while reading video data of each line successively out of said first memory or said second memory, reading start data of each line of N pixels within each of said M×
N-pixel blocks of data in a direction of said m blocks, executing a predetermined filter operation between said start data and said terminal data stored in said terminal data memory means.
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page;
-
7. An interblock distortion removal filter in accordance with claim 2, wherein m is equal to one.
-
3. An interblock distortion removal filter used in a process of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page;
decoded video data being treated in a standard unit of m blocks along a predetermined direction of an image by at least two lines, m representing an integer equal to or greater than one;
said filter comprising;
reading means for reading said video data by each block where a columnar direction perpendicular to said predetermined direction is determined as a preferential reading direction;
last line data memory means for, while said reading means reading video data corresponding to a certain block and a next block adjacent to each other along said columnar direction, storing data of a last line of said certain block; and
a computing element for, while said reading means reading data of a first line of said next block, executing a predetermined filter operation in a pixel unit between said data of the first line of said next block and said data of the last line of said certain block stored in said last line data memory means;
said filter further comprising;
a first memory for storing first video data of at least 2×
M lines generated by repeating the process by said reading means, said last line data memory means, and said first computing element in the direction of alignment of said m blocks in said standard unit of at least 2 lines×
m blocks;
a second memory for storing second video data of next at least 2×
M lines adjacent to said first video data; and
a second computing element for reading out video data of a first line in said second memory or said first memory while reading out data of a last line in said first memory or second memory, and executing a predetermined filtering process between said video data of the first line and said video data of the last line. - View Dependent Claims (4, 8, 9)
terminal data memory means for, while reading video data of each line successively out of said first memory or said second memory, storing terminal data of each line of N pixels within each of said M×
N-pixel blocks in a direction of said m blocks; and
a third computing element for, while reading video data of each line successively out of said first memory or said second memory, reading start data of each line of N pixels within each of said M×
N-pixel blocks of data in a direction of said m blocks, executing a predetermined filter operation between said start data and said terminal data stored in said terminal data memory means.
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page;
-
8. An interblock distortion removal filter in accordance with claim 3, wherein m is equal to one.
-
9. An interblock distortion removal filter in accordance with claim 4, wherein m is equal to one.
-
5. A method of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, said method comprising the steps of;
reading decoded video data of at least two consecutive blocks in a direction different from an image scanning direction;
executing a filter process for removing an interblock distortion generated on a boundary between said two consecutive blocks;
storing video data after said filter process successively in said image scanning direction; and
executing a filter process for removing an interblock distortion generated on a boundary between blocks adjacent to each other in said image scanning direction while reading out said video data stored in the previous step.
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, said method comprising the steps of;
-
10. An interblock distortion removal filter used in a process of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page, said filter comprising;
a first memory for storing first video data of M lines decoded along a predetermined direction of an image;
a second memory for storing second video data of another M lines adjacent to said first video data, said first and second memory having a combined capacity that is less than what is required for storing an image of the entire screen page;
means for storing said first video data read from the decoded image data into said first memory if a counter is zero, said counter representing an integer equal to a number of units of M lines that have previously been written to either the first or second memory;
means for reading all except a last line of said first video data from said first memory while simultaneously storing said second video data into said second memory if the counter is odd and less than a predetermined number;
means for reading all except a last line of said second video data from said second memory while simultaneously storing said first video data in said first memory if the counter is even, greater than zero, and less than the predetermined number;
means for reading said first video data from said first memory when the counter is equal to the predetermined number and the predetermined number is odd;
means for reading said second video data from said second memory when the counter is equal to the predetermined number and the predetermined number is even; and
a computing element for reading out video data of a first line in said second memory or said first memory while reading out video data of a last line in said first memory or said second memory and executing a predetermined filtering process between said video data of the first line and said video data of the last line.
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater than one but less than the number of pixels along the least pixel dimension of said screen page, said filter comprising;
-
11. A method for removing interblock distortion in a process of decoding compression data to video data, said compression data being generated by dividing original video data constituting one screen page into a plurality of M×
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater that one but less than the number of pixels along the least pixel dimension of said screen page, said method comprising the steps of;
storing first video data of M lines decoded along a predetermined direction of an image into a first memory if a counter is zero, said counter representing an integer equal to a number of units of M lines that have previously been written to either said first memory or a second memory, said first and second memory having a combined capacity that is less than what is required for storing an image of the entire screen page;
reading all except the last line of said first video data from said first memory while simultaneously storing a second video data, said second video data being video data of another M lines adjacent to said first video data, into a second memory if the counter is odd and less than a predetermined number;
reading all except the last line of said second video data from said second memory while simultaneously storing said first video data in said first memory if counter is even, greater than zero, and less than the predetermined number;
reading said first video data from said first memory if counter is equal to the predetermined number and the predetermined number is odd;
reading said second video data from said second memory if counter is equal to the predetermined number and the predetermined number is even; and
reading out video data of a first line in said second memory or said first memory while reading out video data of a last line in said first memory or said second memory and executing a predetermined filtering process between said video data of the first line and said video data of the last line.
- N-pixel blocks and coding said video data by each block according to an irreversible coding method, M and N representing integers greater that one but less than the number of pixels along the least pixel dimension of said screen page, said method comprising the steps of;
Specification